G::LoadClass('groups'); $newGroup['GRP_UID'] = ''; $newGroup['GRP_STATUS'] = G::toUpper($_POST['status']); $newGroup['GRP_TITLE'] = trim($_POST['name']); unset($newGroup['GRP_UID']); $group = new Groupwf(); $group->create($newGroup); echo '{success: true}'; break; case 'saveEditGroup': G::LoadClass('groups'); $editGroup['GRP_UID'] = $_POST['grp_uid']; $editGroup['GRP_STATUS'] = G::toUpper($_POST['status']); $editGroup['GRP_TITLE'] = trim($_POST['name']); $group = new Groupwf(); $group->update($editGroup); echo '{success: true}'; break; case 'deleteGroup': G::LoadClass('groups'); $group = new Groupwf(); if (!isset($_POST['GRP_UID'])) { return; } $group->remove(urldecode($_POST['GRP_UID'])); require_once 'classes/model/TaskUser.php'; $oProcess = new TaskUser(); $oCriteria = new Criteria('workflow'); $oCriteria->add(TaskUserPeer::USR_UID, $_POST['GRP_UID']); TaskUserPeer::doDelete($oCriteria); //Delete permissions
G::header('location: ../login/login'); die; break; case -2: G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_SYSTEM', 'error', 'labels'); G::header('location: ../login/login'); die; break; default: G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels'); G::header('location: ../login/login'); die; break; } } if (($RBAC_Response = $RBAC->userCanAccess("PM_USERS")) != 1) { return $RBAC_Response; } G::LoadClass('groups'); $G_MAIN_MENU = 'wf.login'; $G_MENU_SELECTED = ''; $group = new Groupwf(); if ($_POST['form']['GRP_UID'] === '') { $grpRow = $_POST['form']; unset($grpRow['GRP_UID']); $group->create($grpRow); //$_POST['form']['GRP_UID']=$group->getGrpUid(); //$group->update($_POST['form']); } else { $group->update($_POST['form']); }
/** * Update Group * * @param string $groupUid Unique id of Group * @param array $arrayData Data * * return array Return data of the Group updated */ public function update($groupUid, $arrayData) { try { $arrayData = array_change_key_case($arrayData, CASE_UPPER); //Verify data $process = new \ProcessMaker\BusinessModel\Process(); $this->throwExceptionIfNotExistsGroup($groupUid, $this->arrayFieldNameForException["groupUid"]); $process->throwExceptionIfDataNotMetFieldDefinition($arrayData, $this->arrayFieldDefinition, $this->arrayFieldNameForException, false); if (isset($arrayData["GRP_TITLE"])) { $this->throwExceptionIfExistsTitle($arrayData["GRP_TITLE"], $this->arrayFieldNameForException["groupTitle"], $groupUid); } //Update $group = new \Groupwf(); $arrayData["GRP_UID"] = $groupUid; $result = $group->update($arrayData); //Return unset($arrayData["GRP_UID"]); if (!$this->formatFieldNameInUppercase) { $arrayData = array_change_key_case($arrayData, CASE_LOWER); } return $arrayData; } catch (\Exception $e) { throw $e; } }