diff --git a/layouts/v7/modules/Vtiger/RecentActivities.tpl b/layouts/v7/modules/Vtiger/RecentActivities.tpl index 1aaf9ecc49c3ef7a23cf8d42737c6b8ce73278e2..ab22c6e86948a99bc4cd3dffa7d2caffa21f61db 100644 --- a/layouts/v7/modules/Vtiger/RecentActivities.tpl +++ b/layouts/v7/modules/Vtiger/RecentActivities.tpl @@ -79,6 +79,23 @@ </h5> </div> {foreach item=FIELDMODEL from=$RECENT_ACTIVITY->getFieldInstances()} + + {assign var=FIELD_NAME value=$FIELDMODEL->getFieldInstance()->getName()} + {assign var=FIELD_DATA_TYPE value=$FIELDMODEL->getFieldInstance()->getFieldDataType()} + {assign var=PRE_DISPLAY_VALUE value=$FIELDMODEL->getDisplayValue(decode_html($FIELDMODEL->get('prevalue')))} + {assign var=POST_DISPLAY_VALUE value=$FIELDMODEL->getDisplayValue(decode_html($FIELDMODEL->get('postvalue')))} + + {if in_array($FIELD_NAME,array('time_start','time_end')) && in_array($MODULE_NAME,array('Events','Calendar'))} + {assign var=CALENDAR_RECORD_MODEL value =Vtiger_Record_Model::getInstanceById($RECORD_ID)} + {assign var=TIME_PRE_DISPLAY_VALUE value={Calendar_Time_UIType::getModTrackerDisplayValue($FIELD_NAME,$FIELDMODEL->get('prevalue'),$CALENDAR_RECORD_MODEL)}} + {assign var=TIME_POST_DISPLAY_VALUE value={Calendar_Time_UIType::getModTrackerDisplayValue($FIELD_NAME,$FIELDMODEL->get('postvalue'),$CALENDAR_RECORD_MODEL)}} + {assign var=PRE_DISPLAY_VALUE value=$TIME_PRE_DISPLAY_VALUE} + {assign var=POST_DISPLAY_VALUE value=$TIME_POST_DISPLAY_VALUE} + {/if} + + {assign var=PRE_DISPLAY_TITLE value=$TIME_PRE_DISPLAY_VALUE} + + {if $FIELDMODEL && $FIELDMODEL->getFieldInstance() && $FIELDMODEL->getFieldInstance()->isViewable() && $FIELDMODEL->getFieldInstance()->getDisplayType() neq '5'} <div class='font-x-small updateInfoContainer textOverflowEllipsis'> <div class='update-name'><span class="field-name">{vtranslate($FIELDMODEL->getName(),$MODULE_NAME)}</span> @@ -86,17 +103,17 @@ <span> {vtranslate('LBL_CHANGED')}</span> </div> <div class='update-from'><span class="field-name">{vtranslate('LBL_FROM')}</span> - <em style="white-space:pre-line;" title="{strip_tags({Vtiger_Util_Helper::toVtiger6SafeHTML($FIELDMODEL->getDisplayValue(decode_html($FIELDMODEL->get('prevalue'))))})}">{Vtiger_Util_Helper::toVtiger6SafeHTML($FIELDMODEL->getDisplayValue(decode_html($FIELDMODEL->get('prevalue'))))}</em> + <em style="white-space:pre-line;" title="{strip_tags({Vtiger_Util_Helper::toVtiger6SafeHTML($PRE_DISPLAY_TITLE)})}">{Vtiger_Util_Helper::toVtiger6SafeHTML($PRE_DISPLAY_VALUE)}</em> </div> {else if $FIELDMODEL->get('postvalue') eq '' || ($FIELDMODEL->getFieldInstance()->getFieldDataType() eq 'reference' && $FIELDMODEL->get('postvalue') eq '0')} - (<del>{Vtiger_Util_Helper::toVtiger6SafeHTML($FIELDMODEL->getDisplayValue(decode_html($FIELDMODEL->get('prevalue'))))}</del> ) {vtranslate('LBL_IS_REMOVED')}</div> + (<del>{Vtiger_Util_Helper::toVtiger6SafeHTML($PRE_DISPLAY_VALUE)})</del> ) {vtranslate('LBL_IS_REMOVED')}</div> {else if $FIELDMODEL->get('postvalue') neq '' && !($FIELDMODEL->getFieldInstance()->getFieldDataType() eq 'reference' && $FIELDMODEL->get('postvalue') eq '0')} {vtranslate('LBL_UPDATED')}</div> {else} {vtranslate('LBL_CHANGED')}</div> {/if} {if $FIELDMODEL->get('postvalue') neq '' && !($FIELDMODEL->getFieldInstance()->getFieldDataType() eq 'reference' && $FIELDMODEL->get('postvalue') eq '0')} - <div class="update-to"><span class="field-name">{vtranslate('LBL_TO')}</span> <em style="white-space:pre-line;">{Vtiger_Util_Helper::toVtiger6SafeHTML($FIELDMODEL->getDisplayValue(decode_html($FIELDMODEL->get('postvalue'))))}</em> + <div class="update-to"><span class="field-name">{vtranslate('LBL_TO')}</span> <em style="white-space:pre-line;">{Vtiger_Util_Helper::toVtiger6SafeHTML($POST_DISPLAY_VALUE)}</em> </div> {/if} </div> diff --git a/modules/Calendar/uitypes/Datetime.php b/modules/Calendar/uitypes/Datetime.php index 8c72c809eff2fdc38d0248bb1e880a6215cac4d0..49536638a32feded25374cbe8cee36eb6a66488d 100644 --- a/modules/Calendar/uitypes/Datetime.php +++ b/modules/Calendar/uitypes/Datetime.php @@ -13,8 +13,15 @@ class Calendar_Datetime_UIType extends Vtiger_Datetime_UIType { public function getDisplayValue($value, $record=false, $recordInstance=false) { //Since date_start and due_date fields of calendar can have time appended or removed if($this->hasTimeComponent($value)) { - return parent::getDisplayValue($value); - }else{ + $fieldInstance = $this->get('field')->getWebserviceFieldObject(); + $moduleName = $this->get('field')->getModule()->getName(); + $fieldName = $fieldInstance->getFieldName(); + if($fieldName == 'date_start' || $fieldName == 'due_date') { + return self::getDisplayDateTimeValue($value); + } else { + return parent::getDisplayValue($value); + } + } else { return $this->getDisplayDateValue($value); } } diff --git a/modules/Calendar/uitypes/Time.php b/modules/Calendar/uitypes/Time.php index 7635e0d40f02193a898d6b161317eeff8310e0d0..afd349279abeefb3e597e7d9ee1d354f061a88da 100644 --- a/modules/Calendar/uitypes/Time.php +++ b/modules/Calendar/uitypes/Time.php @@ -59,5 +59,40 @@ class Calendar_Time_UIType extends Vtiger_Time_UIType { $value = $dateTimeField->getDisplayTime(); return $value; } + + /** + * Function to get the ModtrackerDisplay Value, for the current field type with given DB Insert Value + * @param <Object> $fieldName + * @param <Object> $value + * @param <Object> $recordModel + * @return $value + */ + public static function getModTrackerDisplayValue($fieldName,$value,$recordModel) { + $userModel = Users_Privileges_Model::getCurrentUserModel(); + if(empty($value)){ + return ''; + } + if($recordModel){ + $startDate = $recordModel->get('date_start'); + $endDate = $recordModel->get('due_date'); + if($fieldName == 'time_start') { + //Added this check to show start time according to start date of calendar record + //to avoid day light saving issue for -(UTC London) => UTC+1:00 + $dateTime = new DateTimeField($startDate.' '.$value); + $value = $dateTime->getDisplayTime(); + } + if($fieldName == 'time_end'){ + //Added this check to show end time according to end date of calendar record + //to avoid day light saving issue for -(UTC London) => UTC+1:00 + $dateTime = new DateTimeField($endDate.' '.$value); + $value = $dateTime->getDisplayTime(); + + } + } + if($userModel->get('hour_format') == '12'){ + return Vtiger_Time_UIType::getTimeValueInAMorPM($value); + } + return $value; + } } \ No newline at end of file diff --git a/modules/Calendar/views/TaskManagement.php b/modules/Calendar/views/TaskManagement.php index 8081ef89312cfaea53675ed1bef99dd7cb2ae142..0ce8227307d238121df3cb0e74cfd037aeba5f01 100644 --- a/modules/Calendar/views/TaskManagement.php +++ b/modules/Calendar/views/TaskManagement.php @@ -118,7 +118,8 @@ class Calendar_TaskManagement_View extends Vtiger_Index_View { } } if($color=='#ffffff' || empty($color)) { - $color = '#'.dechex(rand(0x000000, 0xFFFFFF)); + $color = '#' . str_pad(dechex(rand(0, 50)), 2, '0') . str_pad(dechex(rand(0, 50)), 2, '0') . str_pad(dechex(rand(0, 50)), 2, '0'); + } return $color; } diff --git a/modules/Vtiger/views/Detail.php b/modules/Vtiger/views/Detail.php index 7def95531b5eab0c1290cff6a460fa46fd7ffba3..421a79e5ade372180a1385708ce7db28635a5241 100644 --- a/modules/Vtiger/views/Detail.php +++ b/modules/Vtiger/views/Detail.php @@ -439,7 +439,6 @@ class Vtiger_Detail_View extends Vtiger_Index_View { $recordModel = Vtiger_Record_Model::getInstanceById($parentRecordId); $viewer = $this->getViewer($request); $viewer->assign('SOURCE',$recordModel->get('source')); - $recentActivities = ModTracker_Record_Model::getUpdates($parentRecordId, $pagingModel,$moduleName); $totalCount = ModTracker_Record_Model::getTotalRecordCount($parentRecordId); $pageLimit = $pagingModel->getPageLimit(); diff --git a/modules/Vtiger/views/RecordQuickPreview.php b/modules/Vtiger/views/RecordQuickPreview.php index 7f869135ed5d777fd8d6afa5313327c95dd57b01..0f07610d22a1f80ee8f4e1fa5202cf8a168af07e 100644 --- a/modules/Vtiger/views/RecordQuickPreview.php +++ b/modules/Vtiger/views/RecordQuickPreview.php @@ -72,6 +72,7 @@ class Vtiger_RecordQuickPreview_View extends Vtiger_Index_View { } $viewer->assign('PAGING_MODEL', $pagingModel); $viewer->assign('RECENT_ACTIVITIES', $recentActivities); + $viewer->assign('RECORD_ID', $recordId); $viewer->view('ListViewQuickPreview.tpl', $moduleName); }