예제 #1
0
파일: Users.php 프로젝트: rizkioa/etak6
 /**
  * Create checkboxes for updating user
  * @param int $userID
  * @return array
  */
 private function _createCheckboxesForUpdatingUser($userID)
 {
     $roleCheckboxes = array();
     // get role array
     $roleModel = new Admin_Model_Role();
     $roleArray = $roleModel->getRoleArray();
     // get customer role ID
     $customerRoleID = $roleModel->getCustomerRoleID();
     // get roles of the user
     $userModel = new Admin_Model_Users();
     $rolesOfUser = $userModel->getRolesOfUser($userID);
     // extract role_id of $roleOfUser array
     $roleIDs = array();
     foreach ($rolesOfUser as $role) {
         $roleIDs[] = $role['role_id'];
     }
     // create role checkboxes
     foreach ($roleArray as $index => $role) {
         if (in_array($role['role_id'], $roleIDs)) {
             $roleCheckbox = $this->createElement('checkbox', (string) $role['role_id'], array('checked' => 'checked'));
         } else {
             $roleCheckbox = $this->createElement('checkbox', (string) $role['role_id'], array());
         }
         // check if the role is customer
         if ($role['role_id'] == $customerRoleID) {
             $roleCheckbox->setAttrib('disabled', 'disabled');
         }
         $roleCheckbox->setLabel($role['role_name']);
         $this->_customizeRoleCheckBox($roleCheckbox);
         $roleCheckboxes[] = $roleCheckbox;
     }
     return $roleCheckboxes;
 }