Example #1
0
 public function run()
 {
     $date = new FrankizDateTime();
     $date->setTime(0, 0);
     $date_n = new FrankizDateTime();
     date_add($date_n, date_interval_create_from_date_string('1 day'));
     $date_n->setTime(0, 0);
     $activities = new ActivityInstanceFilter(new PFC_AND(new PFC_Or(new AIFC_User(S::user(), 'restricted'), new AIFC_User(S::user(), 'everybody')), new AIFC_Period($date, $date_n)));
     $c = $activities->get();
     $c->select(ActivityInstanceSelect::all());
     $c->order('hour_begin', false);
     $this->assign('day', new FrankizDateTime());
     $this->assign('date', date("Y-m-d"));
     $this->assign('activities', $c);
 }
Example #2
0
 function handler_ajax_timetable($page, $visibility = 'friends')
 {
     $day = env::t("showdate");
     $type = env::t("viewtype");
     $page->jsonAssign('day', $day);
     $phpTime = strtotime($day);
     switch ($type) {
         case "month":
             $st = mktime(0, 0, 0, date("m", $phpTime), 1, date("Y", $phpTime));
             $et = mktime(0, 0, -1, date("m", $phpTime) + 1, 1, date("Y", $phpTime));
             break;
         case "week":
             $monday = date("d", $phpTime) - date('N', $phpTime) + 1;
             $st = mktime(0, 0, 0, date("m", $phpTime), $monday, date("Y", $phpTime));
             $et = mktime(0, 0, -1, date("m", $phpTime), $monday + 7, date("Y", $phpTime));
             break;
         case "day":
             $st = mktime(0, 0, 0, date("m", $phpTime), date("d", $phpTime), date("Y", $phpTime));
             $et = mktime(0, 0, -1, date("m", $phpTime), date("d", $phpTime) + 1, date("Y", $phpTime));
             break;
     }
     $date = new FrankizDateTime(date('Y-m-d H:i:s', $st));
     $date_n = new FrankizDateTime(date('Y-m-d H:i:s', $et));
     if ($visibility == 'all') {
         $activities = new ActivityInstanceFilter(new PFC_And(new AIFC_CanBeSeen(S::user()), new AIFC_Period($date, $date_n)));
     } else {
         if ($visibility == 'participate') {
             $activities = new ActivityInstanceFilter(new PFC_And(new AIFC_Participants(S::user()), new AIFC_Period($date, $date_n)));
         } else {
             $activities = new ActivityInstanceFilter(new PFC_And(new PFC_Or(new AIFC_User(S::user(), 'restricted'), new AIFC_User(S::user(), 'everybody')), new AIFC_Period($date, $date_n)));
         }
     }
     $c = $activities->get();
     $c->select(ActivityInstanceSelect::all());
     $c->order('hour_begin', false);
     $page->jsonAssign('issort', true);
     $page->jsonAssign('start', date("m/d/Y H:i", $st));
     $page->jsonAssign('end', date("m/d/Y H:i", $et));
     $page->jsonAssign('error', null);
     $events = array();
     foreach ($c as $e) {
         $events[] = array($e->id(), $e->title(), $e->begin()->format("m/d/Y H:i"), $e->end()->format("m/d/Y H:i"), 0, $e->begin()->format("m/d/Y") != $e->end()->format("m/d/Y"), $e->regular(), $e->activity()->origin() == false ? $e->writer()->id() % 15 - 1 : $e->origin()->id() % 15 - 1, 0, $e->description(), '');
     }
     $page->jsonAssign('events', $events);
     return PL_JSON;
 }