[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

/modules/Calendar/uitypes/ -> Time.php (source)

   1  <?php
   2  /*+***********************************************************************************
   3   * The contents of this file are subject to the vtiger CRM Public License Version 1.0
   4   * ("License"); You may not use this file except in compliance with the License
   5   * The Original Code is:  vtiger CRM Open Source
   6   * The Initial Developer of the Original Code is vtiger.
   7   * Portions created by vtiger are Copyright (C) vtiger.
   8   * All Rights Reserved.
   9   *************************************************************************************/
  10  
  11  class Calendar_Time_UIType extends Vtiger_Time_UIType {
  12  
  13  
  14  	public function getEditViewDisplayValue($value) {
  15          if(!empty($value)) {
  16              return parent::getEditViewDisplayValue($value);
  17          }
  18  
  19          $specialTimeFields = array('time_start', 'time_end');
  20  
  21          $fieldInstance = $this->get('field')->getWebserviceFieldObject();
  22          $fieldName = $fieldInstance->getFieldName();
  23  
  24          if(!in_array($fieldName, $specialTimeFields)){
  25              return parent::getEditViewDisplayValue($value);
  26          }else{
  27              return $this->getDisplayTimeDifferenceValue($fieldName, $value);
  28          }
  29          
  30      }
  31  
  32      /**
  33       * Function to get the calendar event call duration value in hour format
  34       * @param type $fieldName
  35       * @param type $value
  36       * @return <Vtiger_Time_UIType> - getTimeValue 
  37       */
  38  	public function getDisplayTimeDifferenceValue($fieldName, $value){
  39          $userModel = Users_Privileges_Model::getCurrentUserModel();
  40          $date = new DateTime($value);
  41          
  42          //No need to set the time zone as DateTimeField::getDisplayTime API is already doing this
  43          /*if(empty($value)) {
  44              $timeZone = $userModel->get('time_zone');
  45              $targetTimeZone = new DateTimeZone($timeZone);
  46              $date->setTimezone($targetTimeZone);
  47          }*/
  48          
  49          if($fieldName == 'time_end' && empty($value)) {
  50              $defaultCallDuration = $userModel->get('callduration');
  51              $date->modify("+{$defaultCallDuration} minutes");
  52          }
  53          
  54          $dateTimeField = new DateTimeField($date->format('Y-m-d H:i:s'));
  55          $value = $dateTimeField->getDisplayTime();
  56          if($userModel->get('hour_format') == '12'){
  57              return Vtiger_Time_UIType::getTimeValueInAMorPM($value);
  58          }
  59          return $value;
  60      }
  61  
  62  }


Generated: Fri Nov 28 20:08:37 2014 Cross-referenced by PHPXref 0.7.1