当前位置: 首页>>代码示例>>PHP>>正文


PHP vCal::setCacheUpdateEnabled方法代码示例

本文整理汇总了PHP中vCal::setCacheUpdateEnabled方法的典型用法代码示例。如果您正苦于以下问题:PHP vCal::setCacheUpdateEnabled方法的具体用法?PHP vCal::setCacheUpdateEnabled怎么用?PHP vCal::setCacheUpdateEnabled使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在vCal的用法示例。


在下文中一共展示了vCal::setCacheUpdateEnabled方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: deleteRecordAndRecurrences

 /**
  * Deletes the parent and associated child events in a series.
  * @param $api
  * @param $args
  * @return array
  */
 public function deleteRecordAndRecurrences($api, $args)
 {
     $bean = $this->loadBean($api, $args, 'delete');
     if (!empty($bean->repeat_parent_id)) {
         $parentArgs = array_merge($args, array('record' => $bean->repeat_parent_id));
         $bean = $this->loadBean($api, $parentArgs, 'delete');
     }
     // Turn off The Cache Updates while deleting the multiple recurrences.
     // The current Cache Enabled status is returned so it can be appropriately
     // restored when all the recurrences have been deleted.
     $cacheEnabled = vCal::setCacheUpdateEnabled(false);
     $this->deleteRecurrences($bean);
     $bean->mark_deleted($bean->id);
     // Restore the Cache Enabled status to its previous state
     vCal::setCacheUpdateEnabled($cacheEnabled);
     $this->getCalendarEvents()->rebuildFreeBusyCache($GLOBALS['current_user']);
     return array('id' => $bean->id);
 }
开发者ID:jglaine,项目名称:sugar761-ent,代码行数:24,代码来源:CalendarEventsApi.php

示例2: saveRecurringEvents

 /**
  * @param SugarBean $parentBean
  * @return array events saved
  * @throws SugarException
  */
 public function saveRecurringEvents(SugarBean $parentBean)
 {
     global $timedate;
     if (!$this->isEventRecurring($parentBean)) {
         $logmsg = 'SaveRecurringEvents() : Event is not a Recurring Event';
         $GLOBALS['log']->error($logmsg);
         throw new SugarException('LBL_CALENDAR_EVENT_NOT_A_RECURRING_EVENT', array($parentBean->object_name));
     }
     if (!empty($parentBean->repeat_parent_id)) {
         $logmsg = 'SaveRecurringEvents() : Event received is not the Parent Occcurrence';
         $GLOBALS['log']->error($logmsg);
         throw new SugarException('LBL_CALENDAR_EVENT_IS_NOT_A_PARENT_OCCURRENCE', array($parentBean->object_name));
     }
     $dateStart = $this->formatDateTime('datetime', $parentBean->date_start, 'user');
     $params = array();
     $params['type'] = $parentBean->repeat_type;
     $params['interval'] = $parentBean->repeat_interval;
     $params['count'] = $parentBean->repeat_count;
     $params['until'] = $this->formatDateTime('date', $parentBean->repeat_until, 'user');
     $params['dow'] = $parentBean->repeat_dow;
     $repeatDateTimeArray = $this->buildRecurringSequence($dateStart, $params);
     $limit = $this->getRecurringLimit();
     if (count($repeatDateTimeArray) > $limit - 1) {
         $logMessage = sprintf('Calendar Events (%d) exceed Event Limit: (%d)', count($repeatDateTimeArray), $limit);
         $GLOBALS['log']->warning($logMessage);
     }
     // Turn off The Cache Updates while deleting the multiple recurrences.
     // The current Cache Enabled status is returned so it can be appropriately
     // restored when all the recurrences have been deleted.
     $cacheEnabled = vCal::setCacheUpdateEnabled(false);
     $this->markRepeatDeleted($parentBean);
     // Restore the Cache Enabled status to its previous state
     vCal::setCacheUpdateEnabled($cacheEnabled);
     return $this->saveRecurring($parentBean, $repeatDateTimeArray);
 }
开发者ID:jglaine,项目名称:sugar761-ent,代码行数:40,代码来源:CalendarEvents.php


注:本文中的vCal::setCacheUpdateEnabled方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。