AntonLV 6 лет назад
Родитель
Сommit
b085e6d4f7

+ 4 - 9
modules/boonex/reminders/classes/BxRemindersConfig.php

@@ -51,11 +51,6 @@ class BxRemindersConfig extends BxBaseModGeneralConfig
             'OBJECT_CONNECTIONS_FRD' => 'sys_profiles_friends',
             'OBJECT_CONNECTIONS_SBN' => 'sys_profiles_subscriptions',
 
-            // modules
-            'MODULE' => $this->getName(),
-            'MODULE_PROFILES' => 'bx_organizations',
-            'MODULE_CUSTOMS' => 'bx_abundantmods',
-
             // some language keys
             'T' => array (
                 'txt_sample_single' => '_bx_reminders_txt_sample_single',
@@ -75,15 +70,15 @@ class BxRemindersConfig extends BxBaseModGeneralConfig
         $this->_aHtmlIds = array(
             'main' => $sPrefix . '-main',
         );
-
-        $this->_iSystemProfileId = 2;
     }
 
     public function init(&$oDb) 
     {
         $this->_oDb = &$oDb;
 
-        $this->_iSystemProfileId = (int)$this->_oDb->getParam($this->CNF['PARAM_DELETE_SYSTEM_PROFILE_ID']);
+        $this->_iSystemProfileId = (int)getParam($this->CNF['PARAM_DELETE_SYSTEM_PROFILE_ID']);
+        if(empty($this->_iSystemProfileId))
+            $this->_iSystemProfileId = (int)getParam('sys_profile_bot');
     }
 
     public function getHtmlIds($sKey = '')
@@ -93,7 +88,7 @@ class BxRemindersConfig extends BxBaseModGeneralConfig
 
         return isset($this->_aHtmlIds[$sKey]) ? $this->_aHtmlIds[$sKey] : '';
     }
-    
+
     public function getSystemProfileId()
     {
         return $this->_iSystemProfileId;

+ 26 - 32
modules/boonex/reminders/classes/BxRemindersCron.php

@@ -90,12 +90,21 @@ class BxRemindersCron extends BxDolCron
         }
 
         /**
-         * Get all profiles from specified profile based module
+         * Get all profiles from profile based modules
          * and start to show reminders and/or notify about them.
          */
-        $aProfiles = $this->_oModule->_oDb->getProfiles($CNF['MODULE_PROFILES']);
+        $aProfileModules = array();
+        $aModules = BxDolModuleQuery::getInstance()->getModulesBy(array('type' => 'modules', 'active' => 1));
+        foreach($aModules as $aModule)
+            if(BxDolRequest::serviceExists($aModule['name'], 'act_as_profile') && bx_srv($aModule['name'], 'act_as_profile'))
+                $aProfileModules[] = $aModule['name'];        
+
+        $aProfiles = $this->_oModule->_oDb->getProfiles($aProfileModules);
         foreach($aProfiles as $aProfile) {
             $iProfileId = (int)$aProfile['id'];
+            $oProfile = BxDolProfile::getInstance($iProfileId);
+            if(!$oProfile)
+                continue;
 
             //--- Process personal(related to followed friends) reminders.
             if($bTypesPersonal) {
@@ -105,7 +114,7 @@ class BxRemindersCron extends BxDolCron
                     if(!$oFriend)
                         continue;
 
-                    $aFriend = BxDolService::call($CNF['MODULE_PROFILES'], 'get_content_info_by_id', array($oFriend->getContentId()));
+                    $aFriend = BxDolService::call($oFriend->getModule(), 'get_content_info_by_id', array($oFriend->getContentId()));
                     if(empty($aFriend) || !is_array($aFriend))
                         continue;
 
@@ -184,7 +193,7 @@ class BxRemindersCron extends BxDolCron
                                 if($bNotified && array_key_exists($iExpired, $aEntry['notified']) && in_array($iDays, $aEntry['notified'][$iExpired]))
                                     continue;
 
-                                bx_alert($CNF['MODULE'], 'added', $iEntry, $iFriendId, array(
+                                bx_alert($this->_oModule->getName(), 'added', $iEntry, $iFriendId, array(
                                     'object_author_id' => $iProfileId,
                                     'privacy_view' => BX_DOL_PG_ALL
                                 ));
@@ -255,7 +264,7 @@ class BxRemindersCron extends BxDolCron
                         if($bNotified && array_key_exists($iExpired, $aEntry['notified']) && in_array($iDays, $aEntry['notified'][$iExpired]))
                             continue;
 
-                        bx_alert($CNF['MODULE'], 'added', $iEntry, $iSystemProfileId, array(
+                        bx_alert($this->_oModule->getName(), 'added', $iEntry, $iSystemProfileId, array(
                             'object_author_id' => $iProfileId,
                             'privacy_view' => BX_DOL_PG_ALL
                         ));
@@ -274,33 +283,30 @@ class BxRemindersCron extends BxDolCron
 
     protected function _checkDateBeginBirthday(&$oProfile, &$aProfile, $iDays, $iNowYear, $iNowMonth, $iNowDay)
     {
-        if(!isset($aProfile['date_of_birth']))
+        if(!isset($aProfile['birthday']))
             return false;
 
-        $mResult = $this->_checkDate($oProfile, $aProfile['date_of_birth'], $iDays, $iNowYear, $iNowMonth, $iNowDay);
+        $mResult = $this->_checkDate($oProfile, $aProfile['birthday'], $iDays, $iNowYear, $iNowMonth, $iNowDay);
         if(!$mResult)
             return $mResult;
         
         return array($mResult);
     }
 
-    protected function _checkDateBeginMarriage(&$oProfile, &$aProfile, $iDays, $iNowYear, $iNowMonth, $iNowDay)
-    {
-        if(!isset($aProfile['marriage_date']))
-            return false;
-
-        $mResult = $this->_checkDate($oProfile, $aProfile['marriage_date'], $iDays, $iNowYear, $iNowMonth, $iNowDay);
-        if(!$mResult)
-            return $mResult;
-
-        return array($mResult);
-    }
-
     protected function _checkDateBeginAnniversary(&$oProfile, &$aProfile, $iDays, $iNowYear, $iNowMonth, $iNowDay)
     {
         $CNF = &$this->_oModule->_oConfig->CNF;
 
-        $aDates = BxDolService::call($CNF['MODULE_CUSTOMS'], 'get_important_dates', array($oProfile->id()));
+        $aDates = array();
+        bx_alert($this->_oModule->getName(), 'get_important_dates', 0, 0, array(
+            'profile_id' => $oProfile->id(),
+            'profile_content_info' => $aProfile,
+            'days' => $iDays, 
+            'now_year' => $iNowYear, 
+            'now_month' => $iNowMonth,
+            'now_day' => $iNowDay,
+            'override_result' => &$aDates
+        ));
         if(empty($aDates) || !is_array($aDates))
             return false;
 
@@ -315,18 +321,6 @@ class BxRemindersCron extends BxDolCron
         return $aResults;
     }
 
-    protected function _checkDateBeginDeath(&$oProfile, &$aProfile, $iDays, $iNowYear, $iNowMonth, $iNowDay)
-    {
-        if(!isset($aProfile['date_of_death']))
-            return false;
-
-        $mResult = $this->_checkDate($oProfile, $aProfile['date_of_death'], $iDays, $iNowYear, $iNowMonth, $iNowDay);
-        if(!$mResult)
-            return $mResult;
-
-        return array($mResult);
-    }
-
     protected function _checkDate(&$oProfile, $sDate, $iDays, $iNowYear, $iNowMonth, $iNowDay)
     {
         $bResult = $this->_checkDateBegin($sDate, $iDays, $iNowMonth, $iNowDay);

+ 5 - 4
modules/boonex/reminders/classes/BxRemindersDb.php

@@ -19,11 +19,12 @@ class BxRemindersDb extends BxBaseModGeneralDb
         parent::__construct($oConfig);
     }
 
-    public function getProfiles($sProfileType)
+    public function getProfiles($mixedProfileType)
     {
-        return $this->getAll("SELECT `id`, `content_id` FROM `sys_profiles` WHERE `type`=:type", array(
-            'type' => $sProfileType
-        ));
+        if(!is_array($mixedProfileType))
+            $mixedProfileType = array($mixedProfileType);
+
+        return $this->getAll("SELECT `id`, `content_id` FROM `sys_profiles` WHERE `type` IN (" . $this->implode_escape($mixedProfileType) . ")");
     }
 
     public function getType($aParams)

+ 17 - 3
modules/boonex/reminders/classes/BxRemindersModule.php

@@ -107,12 +107,22 @@ class BxRemindersModule extends BxBaseModGeneralModule
     /**
      * Permissions methods
      */
-    public function isAllowedView($iUserId, $bPerform = false)
+    protected function _serviceCheckAllowedViewForProfile ($aDataEntry, $isPerformAction, $iProfileId)
     {
-        if(isAdmin())
+        if(!$iProfileId)
+            $iProfileId = $this->_iProfileId;
+
+        if(empty($aDataEntry) || !is_array($aDataEntry))
+            return _t('_sys_txt_not_found');
+
+        $oProfile = BxDolProfile::getInstance($iProfileId);
+        if(!$oProfile)
+            return _t('_sys_txt_not_found');
+
+        if(isAdmin($oProfile->getAccountId()))
             return CHECK_ACTION_RESULT_ALLOWED;
 
-        $aCheckResult = checkActionModule($iUserId, 'view', $this->getName(), $bPerform);
+        $aCheckResult = checkActionModule($iProfileId, 'view', $this->getName(), $isPerformAction);
         if($aCheckResult[CHECK_ACTION_RESULT] !== CHECK_ACTION_RESULT_ALLOWED)
             return $aCheckResult[CHECK_ACTION_MESSAGE];
      
@@ -124,6 +134,10 @@ class BxRemindersModule extends BxBaseModGeneralModule
         return _t('_sys_txt_access_denied');
     }
 
+    public function checkAllowedEditAnyEntryForProfile ($isPerformAction = false, $iProfileId = false)
+    {
+        return _t('_sys_txt_access_denied');
+    }
 
     /**
      * Auxiliary methods

+ 0 - 3
modules/boonex/reminders/classes/BxRemindersTemplate.php

@@ -9,9 +9,6 @@
  * @{
  */
 
-/*
- * Module representation.
- */
 class BxRemindersTemplate extends BxBaseModGeneralTemplate
 {
     function __construct(&$oConfig, &$oDb)

+ 2 - 2
modules/boonex/reminders/install/config.php

@@ -18,12 +18,12 @@ $aConfig = array(
     'name' => 'bx_reminders',
     'title' => 'Reminders',
     'note' => 'Reminders module.',
-    'version' => '9.0.0',
+    'version' => '11.0.0',
     'vendor' => 'BoonEx',
     'help_url' => 'http://feed.una.io/?section={module_name}',
 
     'compatible_with' => array(
-        '9.0.x'
+        '11.0.x'
     ),
 
     /**

+ 4 - 30
modules/boonex/reminders/install/langs/en.xml

@@ -14,49 +14,23 @@
 
     <!-- Different -->
     <string name="_bx_reminders_type_title_birthday"><![CDATA[Birthdays]]></string>
-    <string name="_bx_reminders_type_text_birthday"><![CDATA[<b>{profile_name}</b> birthday is on <b>{date}</b>. Make a Legacy Post for them.]]></string>
-    <string name="_bx_reminders_type_title_marriage"><![CDATA[Marriage]]></string>
-    <string name="_bx_reminders_type_text_marriage"><![CDATA[<b>{profile_name}</b> was married on <b>{date}</b>. Send them a Legacy Question.]]></string>
+    <string name="_bx_reminders_type_text_birthday"><![CDATA[<b>{profile_name}</b> birthday is on <b>{date}</b>. Don't forget to wish a happy birthday.]]></string>
     <string name="_bx_reminders_type_title_anniversary"><![CDATA[Anniversaries]]></string>
-    <string name="_bx_reminders_type_text_anniversary"><![CDATA[<b>{profile_name}</b> celebrates <b>{title}</b> on <b>{date}</b>. Send them a Legacy Question.]]></string>
-    <string name="_bx_reminders_type_title_death"><![CDATA[Date of Passing]]></string>
-    <string name="_bx_reminders_type_text_death"><![CDATA[Make a Post to Remember <b>{profile_name}</b>]]></string>
+    <string name="_bx_reminders_type_text_anniversary"><![CDATA[<b>{profile_name}</b> celebrates <b>{title}</b> on <b>{date}</b>. Don't forget to congratulate on the anniversary.]]></string>
 
     <string name="_bx_reminders_type_title_new_year"><![CDATA[New Year]]></string>
     <string name="_bx_reminders_type_text_new_year"><![CDATA[What do you want to do differently this year?]]></string>
-    <string name="_bx_reminders_type_title_mlk_day"><![CDATA[Martin Luther King Jr. Day]]></string>
-    <string name="_bx_reminders_type_text_mlk_day"><![CDATA[When was a time you were challenged to think about race and poverty?]]></string>
     <string name="_bx_reminders_type_title_valentine_day"><![CDATA[Valentine's Day]]></string>
     <string name="_bx_reminders_type_text_valentine_day"><![CDATA[When was the first time you fell in love?]]></string>
-    <string name="_bx_reminders_type_title_start_of_spring"><![CDATA[Start of Spring]]></string>
-    <string name="_bx_reminders_type_text_start_of_spring"><![CDATA[Who do you see growing around you?]]></string>
     <string name="_bx_reminders_type_title_easter"><![CDATA[Easter]]></string>
     <string name="_bx_reminders_type_text_easter"><![CDATA[What role has Jesus played in your life?]]></string>
-    <string name="_bx_reminders_type_title_memorial_day"><![CDATA[Memorial Day]]></string>
-    <string name="_bx_reminders_type_text_memorial_day"><![CDATA[Tell a story from your or your family member sacrifice themselves for someone else's benefit]]></string>
-    <string name="_bx_reminders_type_title_start_of_summer"><![CDATA[Start of Summer]]></string>
-    <string name="_bx_reminders_type_text_start_of_summer"><![CDATA[Make a Legacy Post about your most important vacation]]></string>
-    <string name="_bx_reminders_type_title_4th_july"><![CDATA[July 4th]]></string>
-    <string name="_bx_reminders_type_text_4th_july"><![CDATA[What are the most important virtues in your family?]]></string>
-    <string name="_bx_reminders_type_title_labor_day"><![CDATA[Labor Day]]></string>
-    <string name="_bx_reminders_type_text_labor_day"><![CDATA[Who has the best work ethic in your family and where did they get it?]]></string>
-    <string name="_bx_reminders_type_title_start_of_fall"><![CDATA[Start of Fall]]></string>
-    <string name="_bx_reminders_type_text_start_of_fall"><![CDATA[Who has influenced you and what did they teach you?]]></string>
     <string name="_bx_reminders_type_title_halloween"><![CDATA[Halloween]]></string>
     <string name="_bx_reminders_type_text_halloween"><![CDATA[What is your favorite holiday to celebrate and why?]]></string>
-    <string name="_bx_reminders_type_title_veterans_day"><![CDATA[Veterans Day]]></string>
-    <string name="_bx_reminders_type_text_veterans_day"><![CDATA[Honor a service member by thanking them with Legacy]]></string>
     <string name="_bx_reminders_type_title_thanksgiving"><![CDATA[Thanksgiving]]></string>
-    <string name="_bx_reminders_type_text_thanksgiving"><![CDATA[Who influence are you thankful for?]]></string>
-    <string name="_bx_reminders_type_title_start_of_winter"><![CDATA[Start of Winter]]></string>
-    <string name="_bx_reminders_type_text_start_of_winter"><![CDATA[What is the most important Legacy Post you can do before the end of the year?]]></string>
+    <string name="_bx_reminders_type_text_thanksgiving"><![CDATA[Whose influence are you thankful for?]]></string>
     <string name="_bx_reminders_type_title_christmas"><![CDATA[Christmas]]></string>
-    <string name="_bx_reminders_type_text_christmas"><![CDATA[What is a favorite family tradition and why?]]></string>
+    <string name="_bx_reminders_type_text_christmas"><![CDATA[What is your favorite family tradition and why?]]></string>
 
     <string name="_bx_reminders_txt_sample_single"><![CDATA[reminder]]></string>
     <string name="_bx_reminders_txt_sample_single_with_article"><![CDATA[a reminder]]></string>
-
-    <string name=""><![CDATA[]]></string>
-    <string name=""><![CDATA[]]></string>
-    <string name=""><![CDATA[]]></string>
 </resources>

+ 6 - 17
modules/boonex/reminders/install/sql/install.sql

@@ -35,25 +35,14 @@ CREATE TABLE IF NOT EXISTS `bx_reminders_types` (
 
 INSERT INTO `bx_reminders_types`(`author`, `added`, `changed`, `name`, `title`, `text`, `link`, `when`, `show`, `notify`, `personal`, `active`, `order`) VALUES
 (0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'birthday', '_bx_reminders_type_title_birthday', '_bx_reminders_type_text_birthday', '', '', 7, '14,7,3', 1, 1, 1),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'marriage', '_bx_reminders_type_title_marriage', '_bx_reminders_type_text_marriage', '', '', 7, '14,7,3', 1, 1, 2),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'anniversary', '_bx_reminders_type_title_anniversary', '_bx_reminders_type_text_anniversary', '', '', 7, '14,7,3', 1, 1, 3),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'death', '_bx_reminders_type_title_death', '_bx_reminders_type_text_death', '', '', 14, '14,7,3', 1, 1, 4),
+(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'anniversary', '_bx_reminders_type_title_anniversary', '_bx_reminders_type_text_anniversary', '', '', 7, '14,7,3', 1, 1, 2),
 
 (0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'new_year', '_bx_reminders_type_title_new_year', '_bx_reminders_type_text_new_year', '', '12-31', 7, '14,7,3', 0, 1, 10),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'mlk_day', '_bx_reminders_type_title_mlk_day', '_bx_reminders_type_text_mlk_day', '', '01-21', 7, '14,7,3', 0, 1, 11),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'valentine_day', '_bx_reminders_type_title_valentine_day', '_bx_reminders_type_text_valentine_day', '', '02-14', 7, '14,7,3', 0, 1, 12),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'start_of_spring', '_bx_reminders_type_title_start_of_spring', '_bx_reminders_type_text_start_of_spring', '', '03-21', 7, '14,7,3', 0, 1, 13),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'easter', '_bx_reminders_type_title_easter', '_bx_reminders_type_text_easter', '', '04-21', 7, '14,7,3', 0, 1, 14),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'memorial_day', '_bx_reminders_type_title_memorial_day', '_bx_reminders_type_text_memorial_day', '', '05-27', 7, '14,7,3', 0, 1, 15),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'start_of_summer', '_bx_reminders_type_title_start_of_summer', '_bx_reminders_type_text_start_of_summer', '', '06-21', 7, '14,7,3', 0, 1, 16),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), '4th_july', '_bx_reminders_type_title_4th_july', '_bx_reminders_type_text_4th_july', '', '07-04', 7, '14,7,3', 0, 1, 17),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'labor_day', '_bx_reminders_type_title_labor_day', '_bx_reminders_type_text_labor_day', '', '09-02', 7, '14,7,3', 0, 1, 18),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'start_of_fall', '_bx_reminders_type_title_start_of_fall', '_bx_reminders_type_text_start_of_fall', '', '09-21', 7, '14,7,3', 0, 1, 19),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'halloween', '_bx_reminders_type_title_halloween', '_bx_reminders_type_text_halloween', '', '10-31', 7, '14,7,3', 0, 1, 20),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'veterans_day', '_bx_reminders_type_title_veterans_day', '_bx_reminders_type_text_veterans_day', '', '11-11', 7, '14,7,3', 0, 1, 21),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'thanksgiving', '_bx_reminders_type_title_thanksgiving', '_bx_reminders_type_text_thanksgiving', '', '11-28', 7, '14,7,3', 0, 1, 22),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'start_of_winter', '_bx_reminders_type_title_start_of_winter', '_bx_reminders_type_text_start_of_winter', '', '12-21', 7, '14,7,3', 0, 1, 23),
-(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'christmas', '_bx_reminders_type_title_christmas', '_bx_reminders_type_text_christmas', '', '12-25', 7, '14,7,3', 0, 1, 24);
+(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'valentine_day', '_bx_reminders_type_title_valentine_day', '_bx_reminders_type_text_valentine_day', '', '02-14', 7, '14,7,3', 0, 1, 11),
+(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'easter', '_bx_reminders_type_title_easter', '_bx_reminders_type_text_easter', '', '04-21', 7, '14,7,3', 0, 1, 12),
+(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'halloween', '_bx_reminders_type_title_halloween', '_bx_reminders_type_text_halloween', '', '10-31', 7, '14,7,3', 0, 1, 13),
+(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'thanksgiving', '_bx_reminders_type_title_thanksgiving', '_bx_reminders_type_text_thanksgiving', '', '11-28', 7, '14,7,3', 0, 1, 14),
+(0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), 'christmas', '_bx_reminders_type_title_christmas', '_bx_reminders_type_text_christmas', '', '12-25', 7, '14,7,3', 0, 1, 15);
 
 
 -- STUDIO: page & widget

+ 36 - 0
modules/boonex/russian/data/langs/bx_reminders/ru.xml

@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources name="ru" flag="ru" title="Russian">
+    <string name="_bx_reminders"><![CDATA[Памятки]]></string>
+
+    <!-- Options -->
+    <string name="_bx_reminders_option_delete_after"><![CDATA[Удалять устаревшие памятки после (в днях, используйте -1 для отключения)]]></string>
+    <string name="_bx_reminders_option_system_profile_id"><![CDATA[Системный профиль, от чьего имени будут отправляться оповещения]]></string>
+
+
+    <!-- Pages -->
+    <string name="_bx_reminders_page_block_title_sys_view"><![CDATA[Памятки]]></string>
+    <string name="_bx_reminders_page_block_title_view"><![CDATA[Памятки]]></string>
+
+
+    <!-- Different -->
+    <string name="_bx_reminders_type_title_birthday"><![CDATA[День рождения]]></string>
+    <string name="_bx_reminders_type_text_birthday"><![CDATA[День рождения пользователя <b>{profile_name}</b> будет <b>{date}</b>. Не забудьте поздравить.]]></string>
+    <string name="_bx_reminders_type_title_anniversary"><![CDATA[Годовщина]]></string>
+    <string name="_bx_reminders_type_text_anniversary"><![CDATA[Пользователь <b>{profile_name}</b> празднует <b>{title}</b> <b>{date}</b>. Не забудьте поздравить.]]></string>
+
+    <string name="_bx_reminders_type_title_new_year"><![CDATA[Новый Год]]></string>
+    <string name="_bx_reminders_type_text_new_year"><![CDATA[Что бы Вы хотели изменить в этом году?]]></string>
+    <string name="_bx_reminders_type_title_valentine_day"><![CDATA[День Святого Валентина]]></string>
+    <string name="_bx_reminders_type_text_valentine_day"><![CDATA[Когда Вы впервые влюбились?]]></string>
+    <string name="_bx_reminders_type_title_easter"><![CDATA[Пасха]]></string>
+    <string name="_bx_reminders_type_text_easter"><![CDATA[Какую роль Иисус сыграл в вашей жизни?]]></string>
+    <string name="_bx_reminders_type_title_halloween"><![CDATA[Хэллоуин]]></string>
+    <string name="_bx_reminders_type_text_halloween"><![CDATA[Какой праздник вам больше всего нравится отмечать и почему?]]></string>
+    <string name="_bx_reminders_type_title_thanksgiving"><![CDATA[День Благодарения]]></string>
+    <string name="_bx_reminders_type_text_thanksgiving"><![CDATA[За чье влияние Вы благодарны?]]></string>
+    <string name="_bx_reminders_type_title_christmas"><![CDATA[Рождество]]></string>
+    <string name="_bx_reminders_type_text_christmas"><![CDATA[Какая у вас любимая семейная традиция и почему?]]></string>
+
+    <string name="_bx_reminders_txt_sample_single"><![CDATA[памятка]]></string>
+    <string name="_bx_reminders_txt_sample_single_with_article"><![CDATA[памятка]]></string>
+</resources>