[open-ils-commits] r13368 - branches/rel_1_4_0/Open-ILS/src/perlmods/OpenILS/Application (erickson)

svn at svn.open-ils.org svn at svn.open-ils.org
Thu Jun 11 09:50:41 EDT 2009


Author: erickson
Date: 2009-06-11 09:50:39 -0400 (Thu, 11 Jun 2009)
New Revision: 13368

Modified:
   branches/rel_1_4_0/Open-ILS/src/perlmods/OpenILS/Application/Actor.pm
Log:
backporting 12264 : added support for the global UPDATE_ORG_UNIT_SETTING_ALL permission, which overrides individual org-setting perms

Modified: branches/rel_1_4_0/Open-ILS/src/perlmods/OpenILS/Application/Actor.pm
===================================================================
--- branches/rel_1_4_0/Open-ILS/src/perlmods/OpenILS/Application/Actor.pm	2009-06-10 19:41:09 UTC (rev 13367)
+++ branches/rel_1_4_0/Open-ILS/src/perlmods/OpenILS/Application/Actor.pm	2009-06-11 13:50:39 UTC (rev 13368)
@@ -100,11 +100,15 @@
     my $e = new_editor(authtoken => $auth, xact => 1);
     return $e->die_event unless $e->checkauth;
 
+    my $all_allowed = $e->allowed("UPDATE_ORG_UNIT_SETTING_ALL", $org_id);
+
 	for my $name (keys %$settings) {
         my $val = $$settings{$name};
         my $set = $e->search_actor_org_unit_setting({org_unit => $org_id, name => $name})->[0];
 
-        return $e->die_event unless $e->allowed("UPDATE_ORG_UNIT_SETTING.$name", $org_id);
+        unless($all_allowed) {
+            return $e->die_event unless $e->allowed("UPDATE_ORG_UNIT_SETTING.$name", $org_id);
+        }
 
         if(defined $val) {
             $val = OpenSRF::Utils::JSON->perl2JSON($val);



More information about the open-ils-commits mailing list