示例#1
0
文件: userlist.php 项目: ratbird/hope
 /**
  * Saves the given user list to database.
  * 
  * @param String $userlistId user list to save
  */
 public function save_action($userlistId = '')
 {
     CSRFProtection::verifyUnsafeRequest();
     $userlist = new AdmissionUserList($userlistId);
     $userlist->setName(Request::get('name'))->setFactor(Request::float('factor'))->setUsers(Request::getArray('users'))->setOwnerId($GLOBALS['user']->id);
     if ($userlist->store()) {
         PageLayout::postSuccess(_('Die Personenliste wurde gespeichert.'));
     } else {
         PageLayout::postError(_('Die Personenliste konnte nicht gespeichert werden.'));
     }
     $this->redirect('admission/userlist');
 }
示例#2
0
 public function switchdeputy_action($course_id, $newstatus)
 {
     $course = Seminar::getInstance($course_id);
     switch ($newstatus) {
         case 'dozent':
             $dozent = new CourseMember();
             $dozent->seminar_id = $course_id;
             $dozent->user_id = $GLOBALS['user']->id;
             $dozent->status = 'dozent';
             $dozent->comment = '';
             if ($dozent->store()) {
                 deleteDeputy($GLOBALS['user']->id, $course_id);
                 PageLayout::postSuccess(sprintf(_('Sie wurden als %s eingetragen.'), get_title_for_status('dozent', 1)));
             } else {
                 PageLayout::postError(sprintf(_('Sie konnten nicht als %s eingetragen werden.'), get_title_for_status('dozent', 1)));
             }
             break;
         case 'deputy':
             $dozent = Course::find($course_id)->members->findOneBy('user_id', $GLOBALS['user']->id);
             if (addDeputy($GLOBALS['user']->id, $course_id)) {
                 $dozent->delete();
                 PageLayout::postSuccess(_('Sie wurden als Vertretung eingetragen.'));
             } else {
                 PageLayout::postError(_('Sie konnten nicht als Vertretung eingetragen werden.'));
             }
             break;
     }
     $this->flash['open'] = "bd_personal";
     $this->redirect($this->url_for('course/basicdata/view/' . $course_id));
 }
示例#3
0
 /**
  * Remove yourself as default deputy of the given boss.
  * @param $boss_id
  */
 public function delete_boss_action($boss_id)
 {
     if (deleteDeputy($GLOBALS['user']->id, $boss_id)) {
         PageLayout::postSuccess(sprintf(_('Sie wurden als Standardvertretung von %s entfernt.'), User::find($boss_id)->getFullname()));
     } else {
         PageLayout::postError(sprintf(_('Sie konnten nicht als Standardvertretung von %s entfernt werden.'), User::find($boss_id)->getFullname()));
     }
     $this->redirect($this->url_for('my_courses'));
 }
示例#4
0
 /**
  * Configures a datafield
  *
  * @param String $datafield_id Datafield id
  */
 public function config_action($datafield_id)
 {
     $datafield = DataField::find($datafield_id);
     if (Request::get('typeparam')) {
         $datafield->typeparam = Request::get('typeparam');
     }
     if (Request::isPost() && Request::submitted('store')) {
         $datafield->store();
         PageLayout::postSuccess(_('Die Parameter wurden übernommen.'));
         $this->redirect('admin/datafields/index/' . $datafield_id->object_type . '#item_' . $datafield_id);
     }
     $this->struct = $datafield;
     if (Request::submitted('preview')) {
         $this->preview = DataFieldEntry::createDataFieldEntry($datafield);
         $this->render_action('preview');
     }
 }