} if ($_REQUEST['task'] == 'display_access_cell' && Loader::helper("validation/token")->validate('display_access_cell')) { $pk = PermissionKey::getByID($_REQUEST['pkID']); $pk->setPermissionObject($c); $pa = PermissionAccess::getByID($_REQUEST['paID'], $pk); Loader::element('permission/labels', array('pk' => $pk, 'pa' => $pa)); } if ($_REQUEST['task'] == 'save_permission_assignments' && Loader::helper("validation/token")->validate('save_permission_assignments')) { $u = new User(); $permissions = PermissionKey::getList('page'); $deferred = false; foreach ($pages as $c) { $pkr = new ChangePagePermissionsPageWorkflowRequest(); $pkr->setRequestedPage($c); $ps = new PermissionSet(); $ps->setPermissionKeyCategory('page'); foreach ($permissions as $pk) { $paID = $_POST['pkID'][$pk->getPermissionKeyID()]; $ps->addPermissionAssignment($pk->getPermissionKeyID(), $paID); } $pkr->setPagePermissionSet($ps); $pkr->setRequesterUserID($u->getUserID()); $u->unloadCollectionEdit($c); $response = $pkr->trigger(); if (!$response instanceof WorkflowProgressResponse) { $deferred = true; } } $obj = new stdClass(); $obj->deferred = $deferred; print Loader::helper('json')->encode($obj);
<?php defined('C5_EXECUTE') or die("Access Denied."); if ($_REQUEST['task'] == 'copy_permission_set' && Loader::helper("validation/token")->validate('copy_permission_set')) { $ps = new PermissionSet(); $ps->setPermissionKeyCategory($_POST['pkCategoryHandle']); foreach ($_POST['pkID'] as $pkID => $paID) { $ps->addPermissionAssignment($pkID, $paID); } $ps->saveToSession(); $r = new stdClass(); $r->success = 1; print Loader::helper('json')->encode($r); } if ($_REQUEST['task'] == 'paste_permission_set' && Loader::helper("validation/token")->validate('paste_permission_set')) { $ps = PermissionSet::getSavedPermissionSetFromSession(); $r = array(); if (is_object($ps) && $ps->getPermissionKeyCategory() == $_POST['pkCategoryHandle']) { $permissions = $ps->getPermissionAssignments(); foreach ($permissions as $pkID => $paID) { $obj = new stdClass(); $obj->pkID = $pkID; $obj->paID = $paID; $pk = PermissionKey::getByID($pkID); $pa = PermissionAccess::getByID($paID, $pk); ob_start(); Loader::element('permission/labels', array('pk' => $pk, 'pa' => $pa)); $html = ob_get_contents(); ob_end_clean(); $obj->html = $html; $r[] = $obj;