コード例 #1
0
ファイル: GenrePage.php プロジェクト: justinlyon/scc
 /**
  * Renders the program summary template
  * 
  * @param bean $model a SummaryPageModel bean
  * @return void
  */
 private function renderSummaryPageModel($model)
 {
     global $logger;
     $logger->debug(get_class($this) . "::renderSummaryPageModel({$model})");
     $tmpl = $this->createPatTemplate();
     $tmpl->readTemplatesFromInput('genre_summary.pat.tpl');
     $i = 0;
     foreach ($model->getList() as $cat) {
         $tmpl->addVars('genre', BeanUtil::beanToArray($cat, true));
         // scalars only
         $tmpl->addVar('genre', 'iter', $i);
         $tmpl->addVar('genre', 'index', $i + 1);
         // publication state
         $pubwidget = $this->getPubControls($cat->getPubState());
         $logger->debug("Publication state of category " . $cat->getName() . ": " . $cat->getPubState());
         $tmpl->addVars('genre', $pubwidget);
         // number of events
         $events = $cat->getEvents();
         $logger->debug("Number of events" . count($events));
         $tmpl->addVar('genre', 'program', count($events));
         $tmpl->parseTemplate('genre', 'a');
         $i++;
     }
     $tmpl->displayParsedTemplate('genre_summary');
 }
コード例 #2
0
ファイル: AnnouncementPage.php プロジェクト: justinlyon/scc
 /**
  * The default render method.  Displays the editor tabs
  * @param bean $model The summary model
  */
 public function render($model)
 {
     global $logger;
     $logger->debug(get_class($this) . '::render()');
     $notice = $model->getList();
     $tmpl = $this->createPatTemplate();
     $tmpl->readTemplatesFromInput('announcement.pat.tpl');
     $tmpl->displayParsedTemplate('announcement_open');
     // Render the Tabs
     $tabs = new mosTabs(0);
     //1 = use cookies to remember selected tab
     $tabs->startPane("links");
     foreach ($notice as $note) {
         $logger->debug("Notice published: " . $note->getPublished());
         $tabs->startTab($note->getScope(), $note->getScope() . "_tab");
         echo "<div style='padding: 20px;'>";
         echo $this->getPublished($note->getScope(), $note->getPublished());
         $conf = $this->getEditorConfig(Editor::SMALL, $note->getScope(), $note->getContent());
         echo $this->setEditor($conf);
         echo "<input type='hidden' name='" . $note->getScope() . "_oid' value='" . $note->getOid() . "'/>";
         echo "</div>";
         $tabs->endTab();
     }
     $tabs->endPane();
     $tmpl->displayParsedTemplate('announcement_close');
 }
コード例 #3
0
ファイル: ArtistPage.php プロジェクト: justinlyon/scc
 /**
  * Renders the person summary template
  * 
  * @param bean $model a SummaryPageModel bean
  * @return void
  */
 private function renderSummaryPageModel($model)
 {
     global $logger;
     $logger->debug(get_class($this) . "::renderSummaryPageModel({$model})");
     $list = $model->getList();
     $tmpl = $this->createPatTemplate();
     //in the MasterPage class
     $tmpl->readTemplatesFromInput('person_summary.pat.tpl');
     $tmpl->addVar('person_summary', 'total', count($list));
     // Add the objects to the nested templates
     for ($i = 0; $i < count($list); $i++) {
         $person = $list[$i];
         $logger->debug("Class of person [Person]: " . get_class($person));
         $tmpl->addVar('person', 'iter', $i);
         $tmpl->addVar('person', 'index', $i + 1);
         $tmpl->addVars('person', BeanUtil::beanToArray($person, true));
         // scalars only
         // Set the publication value
         $pubwidget = array();
         if ($person->getPubState() == PublicationState::PUBLISHED) {
             $pubwidget['pubimg'] = 'publish_g.png';
             $pubwidget['pubalt'] = PublicationState::PUBLISHED;
             $pubwidget['pubtask'] = 'unpublish';
             $pubwidget['pubtoggle'] = PublicationState::UNPUBLISHED;
         } else {
             if ($person->getPubState() == PublicationState::UNPUBLISHED) {
                 $pubwidget['pubimg'] = 'publish_x.png';
                 $pubwidget['pubalt'] = PublicationState::UNPUBLISHED;
                 $pubwidget['pubtask'] = 'publish';
                 $pubwidget['pubtoggle'] = PublicationState::PUBLISHED;
             }
         }
         $tmpl->addVars('person', $pubwidget);
         $tmpl->parseTemplate('person', "a");
     }
     $tmpl->displayParsedTemplate('person_summary');
 }
コード例 #4
0
ファイル: ProgramPage.php プロジェクト: justinlyon/scc
 /**
  * Renders the program summary template
  * 
  * @param bean $model a SummaryPageModel bean
  * @return void
  */
 private function renderSummaryPageModel($model)
 {
     global $logger;
     $logger->debug(get_class($this) . "::renderSummaryPageModel({$model})");
     $list = $model->getList();
     usort($list, array('ProgramPage', 'sort_by_title'));
     $tmpl = $this->createPatTemplate();
     //in the MasterPage class
     $tmpl->readTemplatesFromInput('program_summary.pat.tpl');
     $tmpl->addVar('program_summary', 'total', count($list));
     // Add the objects to the nested templates
     for ($i = 0; $i < count($list); $i++) {
         $prgm = $list[$i];
         $logger->debug("Class of program [Program]: " . get_class($prgm));
         $tmpl->addVar('program', 'iter', $i);
         $tmpl->addVar('program', 'index', $i + 1);
         $tmpl->addVars('program', BeanUtil::beanToArray($prgm, true));
         // scalars only
         $programType = $prgm->getPrimaryGenre();
         if (isset($programType)) {
             $tmpl->addVar('program', 'programtype', $programType->getName());
         }
         $pubwidget = array();
         if ($prgm->getPubState() == PublicationState::PUBLISHED) {
             $pubwidget['pubimg'] = 'publish_g.png';
             $pubwidget['pubalt'] = PublicationState::PUBLISHED;
             $pubwidget['pubtask'] = 'unpublish';
             $pubwidget['pubtoggle'] = PublicationState::UNPUBLISHED;
         } else {
             if ($prgm->getPubState() == PublicationState::UNPUBLISHED) {
                 $pubwidget['pubimg'] = 'publish_x.png';
                 $pubwidget['pubalt'] = PublicationState::UNPUBLISHED;
                 $pubwidget['pubtask'] = 'publish';
                 $pubwidget['pubtoggle'] = PublicationState::PUBLISHED;
             }
         }
         $tmpl->addVars('program', $pubwidget);
         $cats = $prgm->getCategories();
         $ecount = isset($cats['Series']) ? count($cats['Series']) : 0;
         $tmpl->addVar('program', 'series', $ecount);
         $ecount = isset($cats['Genre']) ? count($cats['Genre']) : 0;
         $tmpl->addVar('program', 'genre', $ecount);
         $ecount = isset($cats['Audience']) ? count($cats['Audience']) : 0;
         $tmpl->addVar('program', 'audience', $ecount);
         $exhibitions = $prgm->getExhibitions();
         $ecount = count($exhibitions);
         $courses = $prgm->getCourses();
         $ccount = count($courses);
         $activities = $prgm->getChildren();
         $pcount = count($activities);
         if (!empty($activities)) {
             $startTime = 0;
             $endTime = 0;
             foreach ($activities as $activity) {
                 $schedule = $activity->getSchedule();
                 $startTime = empty($startTime) ? $schedule->getStartTime() : min($startTime, $schedule->getStartTime());
                 $endTime = empty($schedule->endTime) ? max($endTime, $schedule->getStartTime()) : max($endTime, $schedule->getEndTime());
             }
             $tmpl->addVar('program', 'starttime', $startTime);
             $tmpl->addVar('program', 'endtime', $endTime);
         }
         $tmpl->addVar('program', 'exhibition', $ecount);
         $tmpl->addVar('program', 'course', $ccount);
         $tmpl->addVar('program', 'performance', $pcount);
         $tmpl->parseTemplate('program', "a");
     }
     $tmpl->displayParsedTemplate('program_summary');
 }
コード例 #5
0
ファイル: ExhibitionPage.php プロジェクト: justinlyon/scc
 /**
  * Renders the exhibition summary template
  *
  * @param bean $model a SummaryPageModel bean
  * @return void
  */
 private function renderSummaryPageModel($model)
 {
     global $logger;
     $logger->debug(get_class($this) . "::renderSummaryPageModel({$model})");
     $list = $model->getList();
     $tmpl = $this->createPatTemplate();
     //in the MasterPage class
     $tmpl->readTemplatesFromInput('exhibition_summary.pat.tpl');
     $tmpl->addVar('exhibition_summary', 'total', count($list));
     // Add the objects to the nested templates
     for ($i = 0; $i < count($list); $i++) {
         $exbt = $list[$i];
         $logger->debug("Class of exhibition [Exhibition]: " . get_class($exbt));
         $tmpl->addVar('exhibition', 'iter', $i);
         $tmpl->addVar('exhibition', 'index', $i + 1);
         $tmpl->addVars('exhibition', BeanUtil::beanToArray($exbt, true));
         // scalars only
         // set the schedule values
         $tmpl->addVar('exhibition', 'start_display', $this->formatDate($exbt->getSchedule()->getStartTime(), 'fulldate'));
         if ($exbt->getSchedule() && $exbt->getSchedule()->getEndTime() > 0) {
             $tmpl->addVar('exhibition', 'end_display', $this->formatDate($exbt->getSchedule()->getEndTime(), 'fulldate'));
         } else {
             $tmpl->addVar('exhibition', 'end_display', 'Ongoing');
         }
         $first = $i == 0 ? "yes" : "no";
         $last = $i == count($list) - 1 ? "yes" : "no";
         $tmpl->addVar('move_up', 'FIRST', $first);
         $tmpl->addVar('move_down', 'LAST', $last);
         $pubwidget = array();
         if ($exbt->getPubState() == PublicationState::PUBLISHED) {
             $pubwidget['pubimg'] = 'publish_g.png';
             $pubwidget['pubalt'] = PublicationState::PUBLISHED;
             $pubwidget['pubtask'] = 'unpublish';
             $pubwidget['pubtoggle'] = PublicationState::UNPUBLISHED;
         } else {
             if ($exbt->getPubState() == PublicationState::UNPUBLISHED) {
                 $pubwidget['pubimg'] = 'publish_x.png';
                 $pubwidget['pubalt'] = PublicationState::UNPUBLISHED;
                 $pubwidget['pubtask'] = 'publish';
                 $pubwidget['pubtoggle'] = PublicationState::PUBLISHED;
             }
         }
         $tmpl->addVars('exhibition', $pubwidget);
         $eventwidget = array();
         if ($exbt->getEventStatus() == EventStatus::ACTIVE) {
             $eventwidget['statusimg'] = 'publish_g.png';
             $eventwidget['statusalt'] = EventStatus::ACTIVE;
             $eventwidget['statustoggle'] = EventStatus::SOLDOUT;
         } else {
             if ($exbt->getEventStatus() == EventStatus::SOLDOUT) {
                 $eventwidget['statusimg'] = 'publish_y.png';
                 $eventwidget['statusalt'] = EventStatus::SOLDOUT;
                 $eventwidget['statustoggle'] = EventStatus::CANCELLED;
             } else {
                 if ($exbt->getEventStatus() == EventStatus::CANCELLED) {
                     $eventwidget['statusimg'] = 'publish_x.png';
                     $eventwidget['statusalt'] = EventStatus::CANCELLED;
                     $eventwidget['statustoggle'] = EventStatus::ACTIVE;
                 }
             }
         }
         $tmpl->addVars('exhibition', $eventwidget);
         $programs = $exbt->getPrograms();
         $ecount = count($programs);
         $courses = $exbt->getCourses();
         $ccount = count($courses);
         $tmpl->addVar('exhibition', 'program', $ecount);
         $tmpl->addVar('exhibition', 'course', $ccount);
         $rv = $exbt->getVenues();
         $vcount = isset($rv) ? count($rv) : 0;
         $tmpl->addVar('exhibition', 'venue', $vcount);
         $tmpl->parseTemplate('exhibition', "a");
     }
     $tmpl->displayParsedTemplate('exhibition_summary');
 }
コード例 #6
0
ファイル: FrontSeriesPage.php プロジェクト: justinlyon/scc
 /**
  * Displays the series summary
  * @param bean $model The series summary model
  */
 public function summary($model)
 {
     global $logger, $mainframe;
     $logger->debug(get_class($this) . "::summary({$model})");
     $tmpl = $this->createPatTemplate(FRONT_TEMPLATE_DIR);
     $tmpl->readTemplatesFromInput('series_summary.pat.tpl');
     // page title + description
     $pg_title = "Series";
     if ($model->getSeries()) {
         $pg_title = $model->getSeries()->getName();
         $tmpl->addVar('series', 'description', $model->getSeries()->getDescription());
     }
     $mainframe->setPageTitle("Program Series | " . $pg_title);
     $tmpl->addVar('intro', 'title', $pg_title);
     // announcment
     if ($model->getAnnouncement() != null) {
         $tmpl->addVar('intro', 'announcement', $model->getAnnouncement());
     }
     $eventList = $model->getList();
     usort($eventList, array('FrontSeriesPage', 'sort_by_date'));
     foreach ($eventList as $event) {
         // simple attributes
         $tmpl->addVars('program', BeanUtil::beanToArray($event, true));
         // scalars only
         // primary genre
         $pg = $event->getPrimaryGenre();
         if ($pg != null) {
             $tmpl->addVar('program', 'genre', $pg->getName());
         }
         // activity level items
         $acts = $event->getChildren();
         $next_act = $this->getNextActivity($acts);
         $time_display = "";
         if ($next_act != null) {
             $schedule = $next_act->getSchedule();
             if ($schedule != null) {
                 //					$time_display = strftime("%A, %B %d, %I:%M %p ",$schedule->getStartTime());
                 $time_display = date("l, F j, g:i a", $schedule->getStartTime());
             }
             if ($next_act->getActivityStatus() != null) {
                 // get the ticket code
                 $tc = null;
                 if ($next_act->getTicketCode() != null) {
                     $tc = $next_act->getTicketCode();
                 } else {
                     $tc = $event->getTicketUrl();
                 }
                 $ticket = $this->getStatusImage($next_act->getActivityStatus()->getValue(), $tc);
             }
         }
         $tmpl->addVar('program', 'time', $time_display);
         $tmpl->addVar('program', 'status_img', $ticket);
         // audience
         $tmpl->clearTemplate('show_audience');
         $tmpl->clearTemplate('audience');
         $family = false;
         $cats = $event->getCategories();
         if (isset($cats[Category::AUDIENCE])) {
             foreach ($cats[Category::AUDIENCE] as $aud) {
                 if ($aud->getFamily()) {
                     $family = true;
                 }
                 $tmpl->addVar('audience', 'name', $aud->getName());
                 $tmpl->parseTemplate('audience', 'a');
                 $tmpl->setAttribute("show_audience", "visibility", "visible");
             }
         }
         $tmpl->addVar('program', 'family', $family);
         // image
         if ($event->getGallery() != null) {
             $images = $event->getGallery()->getImages();
             $logger->debug('Number of images [1]: ' . count($images));
             $img = $images[0];
             $logger->debug('Class of img [Image]: ' . get_class($img));
             $tmpl->addVar('program', 'imageurl', $img->getUrl());
             $tmpl->addVar('program', 'imagecredit', $img->getAuthor());
         }
         $tmpl->parseTemplate('program', "a");
     }
     $tmpl->displayParsedTemplate('series');
     // set the request for css ids and classes
     $_REQUEST['cce_scope'] = "programs";
     // css file name / body id
     $_REQUEST['cce_page'] = "";
     // body class
     $_REQUEST['cce_cols'] = "3";
     // canvas div id
     $_REQUEST['cce_subtype'] = "general";
     // canvas div class
 }
コード例 #7
0
 /**
  * Renders the summary of given exhibitions (current or upcoming)
  * @param bean $model The exhibition summary model
  */
 private function summary($model)
 {
     global $logger, $mainframe;
     $logger->debug(get_class($this) . '::summary()');
     $list = $model->getList();
     $tmpl = $this->createPatTemplate(FRONT_TEMPLATE_DIR);
     $tmpl->readTemplatesFromInput('exhibition_summary.pat.tpl');
     $mainframe->setPageTitle($model->getViewType() . " Exhibitions");
     $tmpl->addVar('intro', 'view_type', $model->getViewType());
     if ($model->getAnnouncement() != null) {
         $tmpl->addVar('intro', 'announcement', $model->getAnnouncement());
     }
     // Add the objects to the nested templates
     for ($i = 0; $i < count($list); $i++) {
         $event = $list[$i];
         // simple attributes
         $tmpl->addVars('exhibition', BeanUtil::beanToArray($event, true));
         // scalars only
         // Event Status & Tickets
         $tmpl->addVar('exhibition', 'status', $event->getEventStatus());
         if ($event->getTicketUrl() != null) {
             $tmpl->addVar('ticket_link', 'ticketurl', $this->getTicketUrl($event->getTicketUrl()));
         }
         // schedule
         $time_display = "";
         if ($event->getScheduleNote()) {
             $time_display = $event->getScheduleNote();
         } elseif ($event->getSchedule() != null) {
             $st = $event->getSchedule()->getStartTime();
             $et = $event->getSchedule()->getEndTime();
             $time_display = $this->formatDate($st, 'tiny');
             if ($et > $st) {
                 $time_display .= " - " . $this->formatDate($et, 'tiny');
                 $time_display .= date(", Y", $et);
             }
         }
         $tmpl->addVar('exhibition', 'time_display', $time_display);
         // image
         if ($event->getGallery() != null) {
             $images = $event->getGallery()->getImages();
             $logger->debug('Number of images [1]: ' . count($images));
             $img = $images[0];
             $logger->debug('Class of img [Image]: ' . get_class($img));
             $tmpl->addVar('exhibition', 'imageurl', $img->getUrl());
             $tmpl->addVar('exhibition', 'imagecredit', $img->getAuthor());
         }
         // venues
         $logger->debug("Number of venues for event ID " . $event->getOid() . ": " . count($event->getVenues()));
         if ($event->getVenues() != null) {
             $tmpl->clearTemplate('venues');
             $logger->debug("type of venue collection [array]: " . gettype($event->getVenues()));
             foreach ($event->getVenues() as $venue) {
                 $logger->debug("Venue is of class [Venue]: " . get_class($venue));
                 $vlink = $this->getVenueTitleLink($venue);
                 $tmpl->addVar('venues', 'venue_link', $vlink);
                 $tmpl->parseTemplate('venues', "a");
             }
         }
         // related
         $tmpl->clearTemplate('show_related');
         $tmpl->setAttribute("show_related", "visibility", "hidden");
         $tmpl->clearTemplate('related');
         if ($event->getPrograms() != null) {
             $res = $event->getPrograms();
             if (count($res) > 0) {
                 foreach ($res as $prg) {
                     // only show published programs
                     if ($prg->getPubState() == 'Published') {
                         if (count($prg->getChildren()) > 0) {
                             $next = $this->getNextActivity($prg->getChildren());
                             if ($next) {
                                 $tmpl->addVar('related', 'oid', $prg->getOid());
                                 $tmpl->addVar('related', 'title', $prg->getTitle());
                                 $schedule = $next->getSchedule();
                                 $startTime = "(" . $this->formatDate($schedule->getStartTime()) . ")";
                                 $tmpl->addVar('related', 'startTime', $startTime);
                                 $tmpl->parseTemplate('related', "a");
                                 $tmpl->setAttribute("show_related", "visibility", "visible");
                             }
                         }
                     }
                 }
             }
         }
         // audience
         $tmpl->clearTemplate('show_audience');
         $tmpl->setAttribute("show_audience", "visibility", "hidden");
         $tmpl->clearTemplate('audience');
         $family = false;
         $cats = $event->getCategories();
         if (isset($cats[Category::AUDIENCE])) {
             foreach ($cats[Category::AUDIENCE] as $aud) {
                 if ($aud->getFamily()) {
                     $family = true;
                 }
                 $tmpl->addVar('audience', 'name', $aud->getName());
                 $tmpl->parseTemplate('audience', 'a');
                 $tmpl->setAttribute("show_audience", "visibility", "visible");
             }
         }
         $tmpl->addVar('exhibition', 'family', $family);
         $tmpl->parseTemplate('exhibition', "a");
     }
     $tmpl->displayParsedTemplate('exbt_summary');
 }
コード例 #8
0
ファイル: FrontCoursePage.php プロジェクト: justinlyon/scc
 /**
  * Displays the what's on overview (list of published genres)
  * @param bean $model The course summary model
  */
 public function overview($model)
 {
     global $logger, $mainframe;
     $logger->debug(get_class($this) . "::overview({$model})");
     $tmpl = $this->createPatTemplate(FRONT_TEMPLATE_DIR);
     $tmpl->readTemplatesFromInput('course_overview.pat.tpl');
     // page title
     $pg_title = "Learning For Life Overview";
     $mainframe->setPageTitle($pg_title);
     $tmpl->addVar('intro', 'title', $pg_title);
     if ($model->getAnnouncement() != null) {
         $tmpl->addVar('intro', 'announcement', $model->getAnnouncement());
     }
     $eventList = $model->getList();
     // TODO: sort by primary genre\
     $pgs = array();
     foreach ($eventList as $event) {
         $pgs[] = $event->getPrimaryGenre();
     }
     array_multisort($pgs, $eventList);
     // a temporary place to hold a comparison operator for group headings
     $prev_category_name = "";
     $first = true;
     foreach ($eventList as $event) {
         // check group order for series and audience groupings
         $tmpl->setAttribute('group', 'visibility', 'hidden');
         $sort_name = $event->getPrimaryGenre()->getName();
         if ($sort_name != $prev_category_name) {
             $tmpl->addVar('group', 'group_heading', $sort_name);
             $tmpl->setAttribute('group', 'visibility', 'visible');
             $prev_category_name = $sort_name;
             $first = true;
         }
         // simple attributes
         $tmpl->addVars('course', BeanUtil::beanToArray($event, true));
         // scalars only
         $first_class = $first ? ' first' : '';
         $tmpl->addVar('course', 'first_class', $first_class);
         $first = false;
         // detail link
         $dlink = $this->cceventSefUrl("index.php?option=com_ccevents&scope=crse&task=summary&filter=Genre&fid=" . $event->getPrimaryGenre()->getOid(), $event->getOid());
         $tmpl->addVar('course', 'detail_link', $dlink);
         // venue
         $venues = $event->getVenues();
         $dv = isset($venues[0]) ? $venues[0] : null;
         if ($dv != null) {
             $dv_link = $this->getVenueTitleLink($dv);
             // in the MasterPage
             $tmpl->addVar('course', 'venue', $dv_link);
         }
         // date description (Use scheduleNote or next activity time
         $date_desc = '';
         if ($event->getScheduleNote() != null) {
             $date_desc = $event->getScheduleNote();
         } else {
             $next = $this->getNextActivity($event->getChildren());
             if ($next != null && $next->getSchedule() != null) {
                 $date_desc = $this->formatDate($next->getSchedule()->getStartTime());
                 // in the master page class
             }
         }
         $tmpl->addVar('course', 'date_desc', $date_desc);
         // sessions
         if ($event->getChildren() != null) {
             $sessions = count($event->getChildren());
             $ss = ' session';
             if ($sessions > 1) {
                 $ss = ' sessions';
             }
             $tmpl->addVar('course', 'sessions', $sessions . $ss);
         }
         $tmpl->parseTemplate('course', "a");
     }
     $tmpl->displayParsedTemplate('course_overview');
     // set the request for css ids and classes
     $_REQUEST['cce_cols'] = "2";
     // canvas div id
     $_REQUEST['cce_subtype'] = "general";
     // canvas div class
     $_REQUEST['ccmenu'] = isset($_REQUEST['ccmenu']) ? $_REQUEST['ccmenu'] : '';
     // menu
 }
コード例 #9
0
ファイル: FrontProgramPage.php プロジェクト: justinlyon/scc
 /**
  * Displays the what's on overview (list of published genres)
  * @param bean $model The program summary model
  */
 public function overview($model)
 {
     global $logger, $mainframe;
     $logger->debug(get_class($this) . "::summary({$model})");
     $list = $model->getList();
     $tmpl = $this->createPatTemplate(FRONT_TEMPLATE_DIR);
     $tmpl->readTemplatesFromInput('program_overview.pat.tpl');
     // page title
     $pg_title = PRGM_OVERVIEW_TITLE;
     $mainframe->setPageTitle($pg_title);
     $tmpl->addVar('intro', 'title', $pg_title);
     // announcement
     if ($model->getAnnouncement() != null) {
         $tmpl->addVar('intro', 'announcement', $model->getAnnouncement());
     }
     // order the genres alphabetically
     $name = array();
     foreach ($list as $key => $row) {
         $name[$key] = $row->getName();
     }
     array_multisort($name, SORT_ASC, $list);
     // load the genre information
     foreach ($list as $genre) {
         if ($genre->getName() != '') {
             // protects against empty categories
             // simple attributes
             $tmpl->addVars('genre', BeanUtil::beanToArray($genre, true));
             // scalars only
             // image
             $photo_url = $genre->getImage() != '' ? $genre->getImage() : DEFAULT_GENRE_IMAGE_URL;
             $tmpl->addVar('genre', 'photo_url', $photo_url);
             // link
             $link_url = "index.php?option=com_ccevents&scope=prgm&task=summary&filter=Genre&fid=" . $genre->getOid() . "&ccmenu=" . $_REQUEST['ccmenu'];
             $tmpl->addVar('genre', 'link_url', $this->cceventSefUrl($link_url));
             $tmpl->parseTemplate('genre', "a");
         }
     }
     $tmpl->displayParsedTemplate('program_overview');
     // set the request for css ids and classes
     $_REQUEST['cce_scope'] = "whats_on";
     // css file name / body id
     $_REQUEST['cce_page'] = "whats_on_at_the_skirball";
     // body class
     $_REQUEST['cce_cols'] = "2";
     // canvas div id
     $_REQUEST['cce_subtype'] = "overview";
     // canvas div class
     $_REQUEST['ccmenu'] = isset($_REQUEST['ccmenu']) ? $_REQUEST['ccmenu'] : '';
     // menu
 }
コード例 #10
0
ファイル: FrontCalendarPage.php プロジェクト: justinlyon/scc
 /**
  * Renders the flat text view.
  * @param bean $model The calendar summary model
  */
 public function text($model)
 {
     global $logger;
     $logger->debug(get_class($this) . '::text()');
     $this->setRequestFlags('text');
     $list = $model->getList();
     $selected = $model->getSelected();
     $selectedTime = CalendarForm::getMonthStart($selected);
     $tmpl = $this->createPatTemplate(FRONT_TEMPLATE_DIR);
     $tmpl->readTemplatesFromInput('calendar_text.pat.tpl');
     $tmpl->addVar('calendar', 'cal_type', 'text');
     $this->renderControls($tmpl, $model);
     $logger->debug("Nuumber of events in the page:" . count($model->getList()));
     // render the list
     $days = $this->formatEntries($list);
     foreach ($days as $entry) {
         $start = $entry["start"];
         $tmpl->addVar('day', 'day_num', date('j', $start));
         $tmpl->addVar('day', 'day_name', date('l', $start));
         $tmpl->clearTemplate('event');
         foreach ($entry["schedules"] as $sched) {
             // load the event info
             $tmpl->addVars('event', BeanUtil::beanToArray($sched, true));
             // scalars only
             // Format the start time
             $st = date("g:i a", $sched->getStartTime());
             $tmpl->addVar('event', 'formatted_time', $st);
             // figure out the proper url
             if ($sched->getScope() == Event::EXHIBITION) {
                 $tmpl->addVar('event', 'url', 'index.php?option=com_ccevents&scope=exbt&task=detail&oid=' . $sched->getOid());
             } elseif ($sched->getScope() == Event::PROGRAM) {
                 $tmpl->addVar('event', 'url', 'index.php?option=com_ccevents&scope=prgm&task=detail&oid=' . $sched->getOid());
             } elseif ($sched->getScope() == Event::COURSE) {
                 $tmpl->addVar('event', 'url', 'index.php?option=com_ccevents&scope=crse&task=summary&filter=Genre&fid=' . $sched->getFid());
             }
             $tmpl->parseTemplate('event', 'a');
         }
         $tmpl->parseTemplate('day', 'a');
     }
     $cal_link = $this->cceventSefUrl('index.php?option=com_ccevents&scope=cldr&task=month&month=' . $selected->getMonth() . '&year=' . $selected->getYear());
     $tmpl->addVar('calendar', 'cal_view_link', $cal_link);
     $tmpl->displayParsedTemplate('calendar');
 }