diff --git a/cron/SendReminder.service b/cron/SendReminder.service index c922f898de085d61c3b4c145a94a188a222f7fc3..0f8562d7b4f3bcb767e1c26f0219267b3f15de54 100644 --- a/cron/SendReminder.service +++ b/cron/SendReminder.service @@ -189,6 +189,9 @@ if($adb->num_rows($result) >= 1) $contents = getMergedDescription($list, $activity_id, 'Events',true); $subject = vtranslate('Reminder', 'Calendar').': '.$result_set['subject'] . " @ $dateTimeInOwnerFormat"; } + + $recordModel = Vtiger_Record_Model::getInstanceById($activity_id, 'Calendar'); + $recordDetailViewLink = $recordModel->getDetailViewUrl(); $contents = $contents."<br/> ".vtranslate('LBL_CLICK_HERE_TO_VIEW', 'Calendar')." <a href=$site_URL/$recordDetailViewLink>".vtranslate('LBL_RECORD', 'Calendar')."</a>"; if(count($to_addr) >=1) { diff --git a/modules/Migration/schema/660_to_700.php b/modules/Migration/schema/660_to_700.php index 2bf469cc24b0f8b105474033b9ef46c6bbf8668b..be6c22d2d4dacaa146a85a5146e8ed8c68440fdd 100644 --- a/modules/Migration/schema/660_to_700.php +++ b/modules/Migration/schema/660_to_700.php @@ -26,21 +26,6 @@ if(defined('VTIGER_UPGRADE')) { $db->pquery('ALTER TABLE vtiger_crmentity ADD COLUMN smgroupid INT(19)', array()); } - $moduleName = 'Calendar'; - $reminderTemplateResult = $db->pquery('SELECT 1 FROM vtiger_emailtemplates WHERE subject=? AND systemtemplate=?', array('Reminder', '1')); - if (!$db->num_rows($reminderTemplateResult)) { - $body = '<p>'.vtranslate('LBL_REMINDER_NOTIFICATION', $moduleName).'<br/>' . - vtranslate('LBL_DETAILS_STRING', $moduleName).' :<br/> - '.vtranslate('Subject', $moduleName).' : $events-subject$<br/> - '.vtranslate('Start Date & Time', $moduleName).' : $events-date_start$<br/> - '.vtranslate('End Date & Time', $moduleName).' : $events-due_date$<br/> - '.vtranslate('LBL_STATUS', $moduleName).' : $events-eventstatus$<br/> - '.vtranslate('Location', $moduleName).' : $events-location$<br/> - '.vtranslate('LBL_APP_DESCRIPTION', $moduleName).' : $events-description$<br/><br/> - <p/>'; - $db->pquery('INSERT INTO vtiger_emailtemplates(foldername,templatename,subject,description,body,systemtemplate,templateid) values(?,?,?,?,?,?,?)', array('Public', 'Activity Reminder', 'Reminder', 'Reminder', $body, '1', $db->getUniqueID('vtiger_emailtemplates'))); - } - $db->pquery('UPDATE vtiger_field SET presence=0 WHERE columnname=? AND fieldname=?', array('emailoptout', 'emailoptout')); $db->pquery('UPDATE vtiger_settings_field SET name=? WHERE name=?', array('Configuration Editor', 'LBL_CONFIG_EDITOR')); $db->pquery('UPDATE vtiger_links SET linktype=? WHERE linklabel=?', array('DETAILVIEW', 'LBL_SHOW_ACCOUNT_HIERARCHY')); @@ -389,6 +374,53 @@ if(defined('VTIGER_UPGRADE')) { $db->pquery('UPDATE vtiger_emailtemplates SET module=? WHERE module IS NULL', array('Contacts')); $moduleName = 'Calendar'; + $reminderTemplateResult = $db->pquery('SELECT 1 FROM vtiger_emailtemplates WHERE subject=? AND systemtemplate=?', array('Reminder', '1')); + if (!$db->num_rows($reminderTemplateResult)) { + $body = '<p>'.vtranslate('LBL_REMINDER_NOTIFICATION', $moduleName).'<br/>' . + vtranslate('LBL_DETAILS_STRING', $moduleName).' :<br/> + '.vtranslate('Subject', $moduleName).' : $events-subject$<br/> + '.vtranslate('Start Date & Time', $moduleName).' : $events-date_start$<br/> + '.vtranslate('End Date & Time', $moduleName).' : $events-due_date$<br/> + '.vtranslate('LBL_STATUS', $moduleName).' : $events-eventstatus$<br/> + '.vtranslate('Location', $moduleName).' : $events-location$<br/> + '.vtranslate('LBL_APP_DESCRIPTION', $moduleName).' : $events-description$<br/><br/> + <p/>'; + $db->pquery('INSERT INTO vtiger_emailtemplates(foldername,templatename,subject,description,body,systemtemplate,templateid) values(?,?,?,?,?,?,?)', array('Public', 'Activity Reminder', 'Reminder', 'Reminder', $body, '1', $db->getUniqueID('vtiger_emailtemplates'))); + } + + //Creating new reminder block in calendar todo + $calendarInstance = Vtiger_Module_Model::getInstance($moduleName); + $tabId = $calendarInstance->getId(); + + //Updates sequence of blocks available in users module. + Vtiger_Block_Model::pushDown('1', $tabId); + + if (!Vtiger_Block_Model::checkDuplicate('LBL_REMINDER_INFORMATION', $tabId)) { + $reminderBlock = new Vtiger_Block(); + $reminderBlock->label = 'LBL_REMINDER_INFORMATION'; + $reminderBlock->sequence = 2; + $calendarInstance->addBlock($reminderBlock); + } + + //updating block and displaytype for send reminder field + $reminderBlockInstance = Vtiger_Block_Model::getInstance('LBL_REMINDER_INFORMATION', $calendarInstance); + $db->pquery('UPDATE vtiger_field SET block=?, displaytype=? WHERE tabid=? AND fieldname=?', array($reminderBlockInstance->id, '1', $tabId, 'reminder_time')); + + //adding new reminder template for todo + $reminderTemplate = $db->pquery('SELECT 1 FROM vtiger_emailtemplates WHERE subject=? AND systemtemplate=?', array('Activity Reminder', '1')); + if (!$db->num_rows($reminderTemplate)) { + $body = '<p>'.vtranslate('LBL_REMINDER_NOTIFICATION', $moduleName).'<br/>' . + vtranslate('LBL_DETAILS_STRING', $moduleName).' :<br/> + '.vtranslate('Subject', $moduleName).' : $calendar-subject$<br/> + '.vtranslate('Start Date & Time', $moduleName).' : $calendar-date_start$<br/> + '.vtranslate('Due Date', $moduleName).' : $calendar-due_date$<br/> + '.vtranslate('LBL_STATUS', $moduleName).' : $calendar-status$<br/> + '.vtranslate('Location', $moduleName).' : $calendar-location$<br/> + '.vtranslate('LBL_APP_DESCRIPTION', $moduleName).' : $calendar-description$<br/><br/> + <p/>'; + $db->pquery('INSERT INTO vtiger_emailtemplates(foldername,templatename,subject,description,body,systemtemplate,templateid) values(?,?,?,?,?,?,?)', array('Public', 'ToDo Reminder', 'Activity Reminder', 'Reminder', $body, '1', $db->getUniqueID('vtiger_emailtemplates'))); + } + $inviteUsersTemplate = $db->pquery('SELECT 1 FROM vtiger_emailtemplates WHERE subject=?', array('Invitation')); if (!$db->num_rows($inviteUsersTemplate)) { $body = '<p>$invitee_name$,<br/><br/>' . @@ -828,40 +860,6 @@ if(defined('VTIGER_UPGRADE')) { $fieldInstance->save(); } - //Creating new reminder block in calendar todo - $moduleName = 'Calendar'; - $calendarInstance = Vtiger_Module_Model::getInstance($moduleName); - $tabId = $calendarInstance->getId(); - - //Updates sequence of blocks available in users module. - Vtiger_Block_Model::pushDown('1', $tabId); - - if (!Vtiger_Block_Model::checkDuplicate('LBL_REMINDER_INFORMATION', $tabId)) { - $reminderBlock = new Vtiger_Block(); - $reminderBlock->label = 'LBL_REMINDER_INFORMATION'; - $reminderBlock->sequence = 2; - $calendarInstance->addBlock($reminderBlock); - } - - //updating block and displaytype for send reminder field - $reminderBlockInstance = Vtiger_Block_Model::getInstance('LBL_REMINDER_INFORMATION', $calendarInstance); - $db->pquery('UPDATE vtiger_field SET block=?, displaytype=? WHERE tabid=? AND fieldname=?', array($reminderBlockInstance->id, '1', $tabId, 'reminder_time')); - - //adding new reminder template for todo - $reminderTemplate = $db->pquery('SELECT 1 FROM vtiger_emailtemplates WHERE subject=? AND systemtemplate=?', array('Activity Reminder', '1')); - if (!$db->num_rows($reminderTemplate)) { - $body = '<p>'.vtranslate('LBL_REMINDER_NOTIFICATION', $moduleName).'<br/>' . - vtranslate('LBL_DETAILS_STRING', $moduleName).' :<br/> - '.vtranslate('Subject', $moduleName).' : $calendar-subject$<br/> - '.vtranslate('Start Date & Time', $moduleName).' : $calendar-date_start$<br/> - '.vtranslate('Due Date', $moduleName).' : $calendar-due_date$<br/> - '.vtranslate('LBL_STATUS', $moduleName).' : $calendar-status$<br/> - '.vtranslate('Location', $moduleName).' : $calendar-location$<br/> - '.vtranslate('LBL_APP_DESCRIPTION', $moduleName).' : $calendar-description$<br/><br/> - <p/>'; - $db->pquery('INSERT INTO vtiger_emailtemplates(foldername,templatename,subject,description,body,systemtemplate,templateid) values(?,?,?,?,?,?,?)', array('Public', 'ToDo Reminder', 'Activity Reminder', 'Reminder', $body, '1', $db->getUniqueID('vtiger_emailtemplates'))); - } - $db->pquery('ALTER TABLE vtiger_webforms_field MODIFY COLUMN defaultvalue TEXT', array()); //Rollup Comments Settings table