Skip to content
Snippets Groups Projects
Select Git revision
  • 79b71848a48dedfbc010cf08818ed9c09628c8a3
  • master default
  • disable-new-requests
  • fix-bulletin-view-missing-notes-error
  • add-missing-queue-managers
  • projects-task-53
  • projects-task-51
  • projects-task-43
  • projects-task-24
  • projects-task-31
  • projects-task-32
  • projects-task-8
  • project-setup-docs
  • projects-task-28
  • projects-task-27
  • projects-task-9
  • projects-task-7
  • mass-update-course-codes-in-sections
  • wdn-four
  • learning-outcomes
  • additional-bulletin-pages
  • svn-redesign
  • svn-popups
  • svn-trunk
  • svn-performance
  • svn-tim
26 results

UseradminController.php

Blame
  • UseradminController.php 5.25 KiB
    <?php
    
    class UserAdminController extends Nmc_Controller_Action
    {
    
        public function init()
        {
            $this->_registerPlugin(new Nmc_Controller_Action_Plugin_Authorize());
        }
    
        public function indexAction()
        {
            $out = new Application_View();
    
            $groups = Groups::getInstance()->fetchAllWithoutPrimaries();
    
            $out->title = 'Group Administration';
            $out->page = 'user_admin';
            $out->groups = $groups;
            $out->clearSidebarModules();
            echo $out->render('unlModernWrapper.xhtml');
        }
    
        public function editUserAction()
        {
            $in = $this->getRequest();
            $userId = Zend_Filter_Int::filter($in->getParam(0));
    
            if($in->getPost('Submit') == 'Submit') {
                return $this->editUserActionPost();
            }
    
            $out = new Application_View();
    
            $out->title = 'Group Administration';
            $out->page = 'user_admin';
    
            if($userId < 0) {
                $out->user = People::getInstance()->fetchNew();
            } else {
                $out->user = People::getInstance()->findByUserId($userId);
            }
            $out->groups = Groups::getInstance()->fetchAllWithoutPrimaries();
    
            $out->clearSidebarModules();
            echo $out->render('unlModernWrapper.xhtml');
        }
    
        protected function editUserActionPost()
        {
            $in = $this->getRequest();
            $userId = Zend_Filter_Int::filter($in->getParam(0));
            if(!$userId) {
                $user = People::getInstance()->fetchNew();
            } else {
                $user = People::getInstance()->findOne($userId);
            }
    
            if($in->getPost('delete') == '1') {
                $user->delete();
            } else {
                $user->firstName = Zend_Filter_Alnum::filter($in->getPost('firstName'));
                $user->lastName = Zend_Filter_Alnum::filter($in->getPost('lastName'));
                $user->save();
            }
    
            $selectedGroups = Groups::getInstance()->findAll($in->getPost('groups'));
            $currentGroups = $user->getGroups(false);
    
            $removedGroups = $currentGroups->getRowsNotInCommonWith($selectedGroups);