public function process(Vtiger_Request $request) { PDFMaker_Debugger_Model::GetInstance()->Init(); $adb = PearDatabase::getInstance(); $PDFMaker = new PDFMaker_PDFMaker_Model(); //Debugger::GetInstance()->Init(); $viewer = $this->getViewer($request); $permissions = $PDFMaker->GetProfilesPermissions(); $profilesActions = $PDFMaker->GetProfilesActions(); $actionEDIT = getActionid($profilesActions["EDIT"]); $actionDETAIL = getActionid($profilesActions["DETAIL"]); $actionDELETE = getActionid($profilesActions["DELETE"]); $actionEXPORT_RTF = getActionid($profilesActions["EXPORT_RTF"]); $mode = $request->get('mode'); $viewer->assign("MODE", $mode); $permissionNames = array(); foreach ($permissions as $profileid => $subArr) { $permissionNames[$profileid] = array(); $profileName = $this->getProfileName($profileid); foreach ($subArr as $actionid => $perm) { $permStr = $perm == "0" ? 'checked="checked"' : ""; switch ($actionid) { case $actionEDIT: $permissionNames[$profileid][$profileName]["EDIT"]["name"] = 'priv_chk_' . $profileid . '_' . $actionEDIT; $permissionNames[$profileid][$profileName]["EDIT"]["checked"] = $permStr; break; case $actionDETAIL: $permissionNames[$profileid][$profileName]["DETAIL"]["name"] = 'priv_chk_' . $profileid . '_' . $actionDETAIL; $permissionNames[$profileid][$profileName]["DETAIL"]["checked"] = $permStr; break; case $actionDELETE: $permissionNames[$profileid][$profileName]["DELETE"]["name"] = 'priv_chk_' . $profileid . '_' . $actionDELETE; $permissionNames[$profileid][$profileName]["DELETE"]["checked"] = $permStr; break; case $actionEXPORT_RTF: $permissionNames[$profileid][$profileName]["EXPORT_RTF"]["name"] = 'priv_chk_' . $profileid . '_' . $actionEXPORT_RTF; $permissionNames[$profileid][$profileName]["EXPORT_RTF"]["checked"] = $permStr; break; } } } $viewer->assign("PERMISSIONS", $permissionNames); $viewer->view('ProfilesPrivilegies.tpl', 'PDFMaker'); }
public function process(Vtiger_Request $request) { $PDFMaker = new PDFMaker_PDFMaker_Model(); $adb = PearDatabase::getInstance(); $permissions = $PDFMaker->GetProfilesPermissions(); foreach ($permissions as $profileid => $subArr) { foreach ($subArr as $actionid => $perm) { $sql = "DELETE FROM vtiger_pdfmaker_profilespermissions WHERE profileid = ? AND operation = ?"; $adb->pquery($sql, array($profileid, $actionid)); $priv_chk = $request->get("priv_chk_" . $profileid . "_" . $actionid); if ($priv_chk == "on") { $params = array($profileid, $actionid, "0"); } else { $params = array($profileid, $actionid, "1"); } $sql = "INSERT INTO vtiger_pdfmaker_profilespermissions (profileid, operation, permissions) VALUES(?, ?, ?)"; $adb->pquery($sql, $params); } } header("Location:index.php?module=PDFMaker&view=ProfilesPrivilegies"); }