Example #1
0
 public function addUserAction()
 {
     global $CC_CONFIG;
     $request = $this->getRequest();
     $baseUrl = $request->getBaseUrl();
     $js_files = array('/js/datatables/js/jquery.dataTables.js?', '/js/datatables/plugin/dataTables.pluginAPI.js?', '/js/airtime/user/user.js?');
     foreach ($js_files as $js) {
         $this->view->headScript()->appendFile($baseUrl . $js . $CC_CONFIG['airtime_version'], 'text/javascript');
     }
     $this->view->headLink()->appendStylesheet($baseUrl . '/css/users.css?' . $CC_CONFIG['airtime_version']);
     $form = new Application_Form_AddUser();
     $this->view->successMessage = "";
     if ($request->isPost()) {
         if ($form->isValid($request->getPost())) {
             $formdata = $form->getValues();
             if (isset($CC_CONFIG['demo']) && $CC_CONFIG['demo'] == 1 && $formdata['login'] == 'admin' && $formdata['user_id'] != 0) {
                 $this->view->successMessage = "<div class='errors'>Specific action is not allowed in demo version!</div>";
             } elseif ($form->validateLogin($formdata)) {
                 $user = new Application_Model_User($formdata['user_id']);
                 $user->setFirstName($formdata['first_name']);
                 $user->setLastName($formdata['last_name']);
                 $user->setLogin($formdata['login']);
                 // We don't allow 6 x's as a password.
                 // The reason is because we that as a password placeholder
                 // on the client side.
                 if ($formdata['password'] != "xxxxxx") {
                     $user->setPassword($formdata['password']);
                 }
                 $user->setType($formdata['type']);
                 $user->setEmail($formdata['email']);
                 $user->setCellPhone($formdata['cell_phone']);
                 $user->setSkype($formdata['skype']);
                 $user->setJabber($formdata['jabber']);
                 $user->save();
                 $form->reset();
                 if (strlen($formdata['user_id']) == 0) {
                     $this->view->successMessage = "<div class='success'>User added successfully!</div>";
                 } else {
                     $this->view->successMessage = "<div class='success'>User updated successfully!</div>";
                 }
             }
         }
     }
     $this->view->form = $form;
 }
 public function editUserAction()
 {
     $request = $this->getRequest();
     $form = new Application_Form_EditUser();
     if ($request->isPost()) {
         $formData = $request->getPost();
         if ($form->isValid($formData) && $form->validateLogin($formData['cu_login'], $formData['cu_user_id'])) {
             $user = new Application_Model_User($formData['cu_user_id']);
             $user->setFirstName($formData['cu_first_name']);
             $user->setLastName($formData['cu_last_name']);
             // We don't allow 6 x's as a password.
             // The reason is because we use that as a password placeholder
             // on the client side.
             if ($formData['cu_password'] != "xxxxxx") {
                 $user->setPassword($formData['cu_password']);
             }
             $user->setEmail($formData['cu_email']);
             $user->setCellPhone($formData['cu_cell_phone']);
             $user->setSkype($formData['cu_skype']);
             $user->setJabber($formData['cu_jabber']);
             $user->save();
             Application_Model_Preference::SetUserLocale($formData['cu_locale']);
             Application_Model_Preference::SetUserTimezone($formData['cu_timezone']);
             //configure localization with new locale setting
             Application_Model_Locale::configureLocalization($formData['cu_locale']);
             //reinitialize form so language gets translated
             $form = new Application_Form_EditUser();
             $this->view->successMessage = "<div class='success'>" . _("Settings updated successfully!") . "</div>";
         }
         $this->view->form = $form;
         $this->view->html = $this->view->render('user/edit-user.phtml');
     }
     $this->view->form = $form;
     $this->view->html = $this->view->render('user/edit-user.phtml');
 }