diff --git a/admin/roles/manage.php b/admin/roles/manage.php index 42990014b40..56c46af845f 100755 --- a/admin/roles/manage.php +++ b/admin/roles/manage.php @@ -71,26 +71,18 @@ $localoverride = get_record_sql($SQL); if ($localoverride) { // update current overrides - if ($value == 0) { // inherit = delete - unassign_capability($capname, $roleid, $sitecontext->id); } else { - $localoverride->permission = $value; $localoverride->timemodified = time(); $localoverride->modifierid = $USER->id; update_record('role_capabilities', $localoverride); - } - } else { // insert a record - assign_capability($capname, $value, $roleid, $sitecontext->id); - } - } // update normal role settings @@ -99,18 +91,22 @@ $role->name = $name; $role->description = $description; - update_record('role', $role); + if (!update_record('role', $role)) { + error('Could not update role!'); + } break; case 'delete': if ($confirm) { // deletes a role - echo ('deleting...'); - // check for depedencies + // check for depedencies XXX TODO - // delete all associated role-assignments? - delete_records('role', 'id', $roleid); + // delete all associated role-assignments? XXX TODO + + if (!delete_records('role', 'id', $roleid)) { + error('Could not delete role!'); + } } else { echo ('