/** * If a scheduled conference in a conference is specified, display it. * If no scheduled conference is specified, display a list of scheduled conferences. * If no conference is specified, display list of conferences. */ function index($args) { $this->validate(); $this->setupTemplate(); $conference =& Request::getConference(); $schedConf =& Request::getSchedConf(); if ($schedConf && $conference) { // A scheduled conference was specified; display it. import('pages.schedConf.SchedConfHandler'); SchedConfHandler::index($args); } elseif ($conference) { $redirect = $conference->getSetting('schedConfRedirect'); if (!empty($redirect)) { $schedConfDao =& DAORegistry::getDAO('SchedConfDAO'); $redirectSchedConf =& $schedConfDao->getSchedConf($redirect, $conference->getId()); if ($redirectSchedConf) { Request::redirect($conference->getPath(), $redirectSchedConf->getPath()); } } // A scheduled conference was specified; display it. import('pages.conference.ConferenceHandler'); ConferenceHandler::index($args); } else { // Otherwise, display a list of conferences to choose from. $templateMgr =& TemplateManager::getManager(); $conferenceDao =& DAORegistry::getDAO('ConferenceDAO'); $templateMgr->assign('helpTopicId', 'user.home'); // If the site specifies that we should redirect to a specific conference // by default, do it. $siteDao =& DAORegistry::getDAO('SiteDAO'); $site =& $siteDao->getSite(); $conference = $conferenceDao->getConference($site->getRedirect()); if ($site->getRedirect() && $conference) { Request::redirect($conference->getPath()); } // Otherwise, show a list of hosted conferences. $templateMgr->assign('intro', $site->getLocalizedIntro()); $conferences =& $conferenceDao->getEnabledConferences(); $templateMgr->assign_by_ref('conferences', $conferences); $templateMgr->setCacheability(CACHEABILITY_PUBLIC); $templateMgr->display('index/site.tpl'); } }
/** * Display the presentations */ function presentations() { $this->validate(); $conference =& Request::getConference(); $schedConf =& Request::getSchedConf(); import('schedConf.SchedConfAction'); $mayViewProceedings = SchedConfAction::mayViewProceedings($schedConf); $mayViewPapers = SchedConfAction::mayViewPapers($schedConf, $conference); $templateMgr =& TemplateManager::getManager(); SchedConfHandler::setupTemplate($conference, $schedConf); AppLocale::requireComponents(array(LOCALE_COMPONENT_OCS_DIRECTOR)); // FIXME: director.allTracks $templateMgr->assign('pageHierarchy', array(array(Request::url(null, 'index', 'index'), $conference->getConferenceTitle(), true), array(Request::url(null, null, 'index'), $schedConf->getSchedConfTitle(), true))); $templateMgr->assign('helpTopicId', 'editorial.trackDirectorsRole.presentations'); $templateMgr->assign_by_ref('schedConf', $schedConf); $templateMgr->assign('mayViewProceedings', $mayViewProceedings); $templateMgr->assign('mayViewPapers', $mayViewPapers); if ($mayViewProceedings) { $publishedPaperDao =& DAORegistry::getDAO('PublishedPaperDAO'); $trackDao =& DAORegistry::getDAO('TrackDAO'); $tracks =& $trackDao->getTrackTitles($schedConf->getId()); // Get the user's search conditions, if any $searchField = Request::getUserVar('searchField'); $searchMatch = Request::getUserVar('searchMatch'); $search = Request::getUserVar('search'); $searchInitial = Request::getUserVar('searchInitial'); if (!empty($searchInitial)) { $searchField = SUBMISSION_FIELD_AUTHOR; $searchMatch = 'initial'; $search = $searchInitial; } $templateMgr->assign('fieldOptions', array(SUBMISSION_FIELD_TITLE => 'paper.title', SUBMISSION_FIELD_AUTHOR => 'user.role.author')); $previewAbstracts = $schedConf->getSetting('reviewMode') == REVIEW_MODE_BOTH_SEQUENTIAL && $schedConf->getSetting('previewAbstracts'); $publishedPapers =& $publishedPaperDao->getPublishedPapersInTracks($schedConf->getId(), Request::getUserVar('track'), $searchField, $searchMatch, $search, $previewAbstracts); // Set search parameters $duplicateParameters = array('searchField', 'searchMatch', 'search', 'searchInitial', 'track'); foreach ($duplicateParameters as $param) { $templateMgr->assign($param, Request::getUserVar($param)); } $templateMgr->assign('alphaList', explode(' ', __('common.alphaList'))); $templateMgr->assign('trackOptions', array(0 => AppLocale::Translate('director.allTracks')) + $tracks); $templateMgr->assign_by_ref('publishedPapers', $publishedPapers); } $templateMgr->display('schedConf/papers.tpl'); }