Example #1
0
 public function show()
 {
     if (\UserStatus::isGuest()) {
         return '';
     }
     $terms = \Term::getTermsAssoc();
     $current = \Term::getCurrentTerm();
     if (isset($terms[$current])) {
         $terms[$current] .= ' (Current)';
     }
     $form = new \PHPWS_Form('term_selector');
     $cmd = \CommandFactory::getCommand('SelectTerm');
     $cmd->initForm($form);
     $form->addDropBox('term', $terms);
     $tags = $form->getTemplate();
     $currentTerm = \Term::getSelectedTerm();
     $tags['TERM_OPTIONS'] = array();
     foreach ($tags['TERM_VALUE'] as $key => $value) {
         $selected = '';
         if ($key == $currentTerm) {
             $selected = 'selected="selected"';
         }
         $tags['TERM_OPTIONS'][] = array('id' => $key, 'term' => $value, 'selected' => $selected);
     }
     javascript('jquery');
     javascriptMod('hms', 'jqueryCookie');
     javascript('modules/hms/SelectTerm');
     return \PHPWS_Template::process($tags, 'hms', 'admin/SelectTerm.tpl');
 }
Example #2
0
 public function execute(CommandContext $context)
 {
     if (!UserStatus::isAdmin() || !Current_User::allow('hms', 'select_term')) {
         PHPWS_Core::initModClass('hms', 'exception/PermissionException.php');
         throw new PermissionException('You do no have permission to select other terms.');
     }
     if (UserStatus::isGuest()) {
         $context->goBack();
     }
     if (!isset($this->term)) {
         $this->term = $context->get('term');
     }
     Term::setSelectedTerm($this->term);
     $context->goBack();
 }
Example #3
0
 private function addUserStatus()
 {
     // If the user is not logged in, then we have nothing to do here
     if (\UserStatus::isGuest()) {
         return;
     }
     $userTpl = array();
     $userTpl['FULL_NAME'] = \UserStatus::getDisplayName();
     $useDropdown = false;
     if (\UserStatus::isMasquerading() && \UserStatus::isMasqueradingAsSelf()) {
         // User is masquerading as student version of self
         $useDropdown = true;
         $userTpl['FULL_NAME'] = \UserStatus::getDisplayName() . ' (student)';
         $cmd = \CommandFactory::getCommand('RemoveMaskAsSelf');
         $userTpl['STUDENT_SELF_RETURN'] = $cmd->getURI();
         // Link to return to admin version of self
     } else {
         if (\UserStatus::isMasquerading()) {
             // User is masquerading as a student
             $useDropdown = true;
             $cmd = \CommandFactory::getCommand('RemoveMask');
             $userTpl['REMOVE_MASK'] = $cmd->getURI();
             $userTpl['FULL_NAME'] = '<strong class="text-danger">' . \UserStatus::getDisplayName() . '</strong>';
         } else {
             if (\Current_User::allow('hms', 'ra_login_as_self')) {
                 // User is not masquerading, but do have permission to change to student self-view
                 $useDropdown = true;
                 $studentViewCmd = \CommandFactory::getCommand('RaMasqueradeAsSelf');
                 $userTpl['STUDENT_VIEW_URI'] = $studentViewCmd->getURI();
             }
         }
     }
     if ($useDropdown) {
         // Other options available, so we'll render a drop down
         $this->tpl['USER_STATUS_DROPDOWN'] = \PHPWS_Template::process($userTpl, 'hms', 'UserStatus.tpl');
     } else {
         // No other options, so the user status is just the display name
         $this->tpl['DISPLAY_NAME'] = \UserStatus::getDisplayName();
     }
 }