Example #1
0
 /**
  * Main method.
  *
  * @since 0.1
  *
  * @param string|null $subPage
  */
 public function execute($subPage)
 {
     parent::execute($subPage);
     if ($this->subPage === '') {
         $this->displayNavigation();
         EPOA::displayPager($this->getContext());
     } else {
         $this->getOutput()->redirect(SpecialPage::getTitleFor('OnlineAmbassador', $this->subPage)->getLocalURL());
     }
 }
Example #2
0
 /**
  * Returns the default nav items for @see displayNavigation.
  *
  * @since 0.1
  *
  * @return array
  */
 public static function getDefaultNavigationItems(IContextSource $context)
 {
     $items = array(wfMsg('ep-nav-orgs') => SpecialPage::getTitleFor('Institutions'), wfMsg('ep-nav-courses') => SpecialPage::getTitleFor('Courses'));
     $items[wfMsg('ep-nav-students')] = SpecialPage::getTitleFor('Students');
     $items[wfMsg('ep-nav-oas')] = SpecialPage::getTitleFor('OnlineAmbassadors');
     $items[wfMsg('ep-nav-cas')] = SpecialPage::getTitleFor('CampusAmbassadors');
     $user = $context->getUser();
     if (EPStudent::has(array('user_id' => $user->getId()))) {
         $items[wfMsg('ep-nav-mycourses')] = SpecialPage::getTitleFor('MyCourses');
     }
     if ($user->isAllowed('ep-online') && EPOA::newFromUser($user)->hasCourse()) {
         $items[wfMsg('ep-nav-oaprofile')] = SpecialPage::getTitleFor('OnlineAmbassadorProfile');
     }
     if ($user->isAllowed('ep-campus') && EPCA::newFromUser($user)->hasCourse()) {
         $items[wfMsg('ep-nav-caprofile')] = SpecialPage::getTitleFor('CampusAmbassadorProfile');
     }
     return $items;
 }
Example #3
0
 /**
  * Returns the online ambassadors as a list of EPOA objects.
  *
  * @since 0.1
  *
  * @return array of EPOA
  */
 public function getOnlineAmbassadors()
 {
     if ($this->oas === false) {
         $this->oas = array();
         foreach ($this->getField('online_ambs') as $userId) {
             $this->oas[] = EPOA::newFromUserId($userId);
         }
     }
     return $this->oas;
 }