示例#1
0
文件: Events.php 项目: burguin/test02
 /**
  * Sort out protected archives
  *
  * @param array $arrCalendars
  *
  * @return array
  */
 protected function sortOutProtected($arrCalendars)
 {
     if (BE_USER_LOGGED_IN || !is_array($arrCalendars) || empty($arrCalendars)) {
         return $arrCalendars;
     }
     $this->import('FrontendUser', 'User');
     $objCalendar = \CalendarModel::findMultipleByIds($arrCalendars);
     $arrCalendars = array();
     if ($objCalendar !== null) {
         while ($objCalendar->next()) {
             if ($objCalendar->protected) {
                 if (!FE_USER_LOGGED_IN) {
                     continue;
                 }
                 $groups = deserialize($objCalendar->groups);
                 if (!is_array($groups) || empty($groups) || count(array_intersect($groups, $this->User->groups)) < 1) {
                     continue;
                 }
             }
             $arrCalendars[] = $objCalendar->id;
         }
     }
     return $arrCalendars;
 }
示例#2
0
 /**
  * Return the IDs of the allowed calendars as array
  *
  * @return array
  */
 public function getAllowedCalendars()
 {
     if ($this->User->isAdmin) {
         $objCalendar = CalendarModel::findAll();
     } else {
         $objCalendar = CalendarModel::findMultipleByIds($this->User->calendars);
     }
     $return = array();
     if ($objCalendar !== null) {
         while ($objCalendar->next()) {
             $return[$objCalendar->id] = $objCalendar->title;
         }
     }
     return $return;
 }