コード例 #1
0
 public function editAction()
 {
     parent::ajaxEnabled();
     $modelWorkouts = new Model_Workouts();
     $modelUsers = new Model_Users();
     $form = self::getWorkoutsEditForm();
     $form->setUsers($modelUsers->fetchAll()->toArray());
     $workoutId = $this->_getParam('workoutId');
     $workoutId = (int) $workoutId;
     if ($workoutId) {
         $populateData = array();
         $workout = $modelWorkouts->fetch($workoutId);
         if (count($workout) > 0) {
             $populateData = $workout->toArray();
         }
         $form->populate($populateData);
         $form->setHidden($workoutId);
     }
     $request = $this->getRequest();
     if ($request->isPost()) {
         $post = $request->getPost();
         if ($form->isValid($post)) {
             $values = $form->getValues();
             $mode = null;
             if ($workoutId) {
                 $modelWorkouts->update($workoutId, $values);
                 $insertId = $workoutId;
                 $mode = 'edit';
             } else {
                 $insertId = $modelWorkouts->insert($values);
                 $mode = 'add';
             }
             $workoutInfo = $modelWorkouts->fetch($insertId);
             $dateFormat = new vkNgine_View_Helper_Dateformat();
             $newRow = array('mode' => $mode, 'itemId' => $insertId, 'name' => $workoutInfo->name, 'startDate' => $workoutInfo->startDate, 'startDateFormatted' => $dateFormat->dateFormat($workoutInfo->startDate, Zend_Date::DATE_FULL), 'endDate' => $workoutInfo->endDate, 'endDateFormatted' => $dateFormat->dateFormat($workoutInfo->endDate, Zend_Date::DATE_FULL), 'rowId' => 'workout-', 'templateName' => 'workoutsTemplate', 'Save' => $this->t->_('Save'), 'Cancel' => $this->t->_('Cancel'), 'Yes' => $this->t->_('Yes'), 'No' => $this->t->_('No'), 'Never' => $this->t->_('Never'), 'href' => $this->_helper->url('edit', 'workouts'), 'title' => $this->t->_('Workout is being edited'), 'tagTitle' => $this->t->_('Edit this workout'), 'tagTitleDelete' => $this->t->_('Delete this workout'), 'tagTitleAddExercise' => $this->t->_('Add Exercise to this Workout'));
             echo Zend_Json::encode(array('success' => 1, 'newRow' => $newRow, 'dialog' => 'btn-editworkout-dialog', 'row' => true, 'title' => $this->t->_('Success Message'), 'message' => sprintf($this->t->_('%s was successfully added'), $values['name']), 'icon' => 'success'));
             exit;
         } else {
             $error = $form->getErrors();
             echo Zend_Json::encode(array('title' => $this->t->_('Error Message'), 'message' => $this->t->_('Please fill out all required fields'), 'icon' => 'error'));
             exit;
         }
     }
     $this->view->form = $form;
 }
コード例 #2
0
 public function editAction()
 {
     parent::ajaxEnabled();
     $form = self::getUsersEditForm();
     $modelAdminUsers = new Admin_Model_Users();
     $userId = $this->_getParam('userId');
     $userId = (int) $userId;
     if ($userId) {
         $populateData = array();
         $user = $modelAdminUsers->fetch($userId);
         $helper = new vkNgine_View_Helper_PhoneFormat();
         if (count($user) > 0) {
             $populateData = $user->toArray();
             $populateData['password'] = null;
             $populateData['level'] = $user->level;
             $populateData['phone'] = $helper->phoneFormat($user->phone);
         }
         $form->adminMode($user['email']);
         $form->populate($populateData);
         $form->setHidden($userId);
     }
     $request = $this->getRequest();
     if ($request->isPost()) {
         $post = $request->getPost();
         if ($form->isValid($post)) {
             $values = $form->getValues();
             $mode = null;
             if ($userId) {
                 if ($values['password'] == false) {
                     unset($values['password']);
                 }
                 $values['phone'] = str_replace('(', '', $values['phone']);
                 $values['phone'] = str_replace(')', '', $values['phone']);
                 $values['phone'] = str_replace('-', '', $values['phone']);
                 $modelAdminUsers->update($userId, $values);
                 $insertId = $userId;
                 $mode = 'edit';
             } else {
                 $insertId = $modelAdminUsers->insert($values);
                 $mode = 'add';
             }
             if ($values['email'] != $this->user->email) {
                 $href = '/admin/auth/logout';
             } else {
                 $href = '/admin/';
             }
             $userInfo = $modelAdminUsers->fetch($insertId);
             $dateFormat = new vkNgine_View_Helper_Dateformat();
             $newRow = array('mode' => $mode, 'itemId' => $insertId, 'fullName' => $userInfo->firstName . ' ' . $userInfo->lastName, 'email' => $userInfo->email, 'level' => $this->t->_(ucfirst(strtolower($userInfo->level))), 'active' => $this->t->_($userInfo->active), 'lastLogin' => $userInfo->lastLogin != '0000-00-00 00:00:00' ? $dateFormat->dateFormat($userInfo->lastLogin, Zend_Date::DATETIME) : $this->t->_('Never'), 'rowId' => 'user-', 'masterUser' => vkNgine_Config::getSystemConfig()->master->user == $userInfo->userId ? 'yes' : 'no', 'templateName' => 'usersTemplate', 'Save' => $this->t->_('Save'), 'Cancel' => $this->t->_('Cancel'), 'Yes' => $this->t->_('Yes'), 'No' => $this->t->_('No'), 'href' => $this->_helper->url('edit', 'users'), 'title' => $this->t->_('User is being edited'), 'tagTitle' => $this->t->_('Edit this user'), 'tagTitleDelete' => $this->t->_('Delete this user'));
             echo Zend_Json::encode(array('success' => 1, 'newRow' => $newRow, 'dialog' => 'btn-edituser-dialog', 'row' => true, 'title' => $this->t->_('Success Message'), 'message' => sprintf($this->t->_('%s was successfully added'), $values['firstName'] . ' ' . $values['lastName']), 'icon' => 'success'));
             exit;
         } else {
             $error = $form->getErrors();
             if (!empty($error['email'][0]) & @$error['email'][0] == 'Email already registered') {
                 $message = 'Email already registered';
             } else {
                 $message = 'Please fill out all required fields';
             }
             echo Zend_Json::encode(array('title' => $this->t->_('Error Message'), 'message' => $this->t->_($message), 'icon' => 'error'));
             exit;
         }
     }
     $this->view->form = $form;
 }