fixes for #1467 #1479 #1462 #1489
[openemr.git] / acl_upgrade.php
blobce23d17ea82b69f9375e514577f52aca242202dc
1 <?php
2 /**
3 * Upgrade script for access controls.
5 * This script will update the phpGACL database, which include
6 * Access Control Objects(ACO), Groups(ARO), and Access Control
7 * Lists(ACL) to the most recent version.
8 * It will display whether each update already exist
9 * or if it was updated succesfully.
10 * To avoid reversing customizations, upgrade is done in versions,
11 * which are recorded in the database. To add another version of
12 * changes, use the following template:
13 * <pre>// Upgrade for acl_version <acl_version_here>
14 * $upgrade_acl = <acl_version_here>;
15 * if ($acl_version < $upgrade_acl) {
16 * echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
18 * //Collect the ACL ID numbers.
19 * echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
21 * //Add new object Sections
22 * echo "<BR/><B>Adding new object sections</B><BR/>";
24 * //Add new Objects
25 * echo "<BR/><B>Adding new objects</B><BR/>";
27 * //Update already existing Objects
28 * echo "<BR/><B>Upgrading objects</B><BR/>";
30 * //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
31 * // (will also place in the appropriate group and CREATE a new group if needed)
32 * echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
34 * //Update the ACLs
35 * echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
37 * //DONE with upgrading to this version
38 * $acl_version = $upgrade_acl;
39 * }
40 * </pre>
42 * Updates included:
43 * <pre>---VERSION 1 ACL---
44 * 2.8.2
45 * Section "sensitivities" (Sensitivities):
46 * ADD normal Normal (Administrators, Physicians, Clinicians(addonly))
47 * ADD high High (Administrators, Physicians)
48 * Section "admin" (Administration):
49 * ADD super Superuser (Adminstrators)
50 * 2.8.4
51 * Section "admin" (Administration):
52 * ADD drugs Pharmacy Dispensary (Administrators, Physicians, Clinicians(write))
53 * ADD acl ACL Administration (Administrators)
54 * Section "sensitivities" (Sensitivities):
55 * EDIT high High (ensure the order variable is '20')
56 * Section "acct" (Accounting):
57 * ADD disc Price Discounting (Administrators, Physicians, Accounting(write))
58 * 3.0.2
59 * ADD Section "lists" (Lists):
60 * ADD default Default List (write,addonly optional) (Administrators)
61 * ADD state State List (write,addonly optional) (Administrators)
62 * ADD country Country List (write,addonly optional) (Administrators)
63 * ADD language Language List (write,addonly optional) (Administrators)
64 * ADD ethrace Ethnicity-Race List (write,addonly optional) (Administrators)
65 * ADD Section "placeholder" (Placeholder):
66 * ADD filler Placeholder (Maintains empty ACLs)
67 * ACL/Group doc addonly "Physicians" (filler aco)
68 * ACL/Group front addonly "Front Office" (filler aco)
69 * ACL/Group back addonly "Accounting" (filler aco)
70 * 3.3.0
71 * Section "patients" (Patients):
72 * ADD sign Sign Lab Results (Physicians)
73 * ACL/Group breakglass write "Emergency Login" (added all aco's to it)
74 * 4.1.0
75 * Section "nationnotes" (Nation Notes):
76 * ADD nn_configure Nation Notes Configure (Administrators, Emergency Login)
77 * Section "patientportal" (Patient Portal):
78 * ADD portal Patient Portal (Administrators, Emergency Login)
79 * 4.1.1
80 * ACL/Group doc wsome "Physicians" (filler aco)
81 * ACL/Group clin wsome "Clinicians" (filler aco)
82 * ACL/Group front wsome "Front Office" (filler aco)
83 * ACL/Group back wsome "Accounting" (filler aco)
84 * ACL/Group doc view "Physicians" (filler aco)
85 * ACL/Group clin view "Clinicians" (filler aco)
86 * ACL/Group front view "Front Office" (filler aco)
87 * ACL/Group back view "Accounting" (filler aco)
88 * 4.1.3
89 * Section "menus" (Menus):
90 * ADD modle Module (Administrators, Emergency Login)
91 * 5.0.1
92 * Section "patients" (Patients):
93 * ADD reminder Patient Reminders (Physicians,Clinicians(addonly))
94 * ADD alert Clinical Reminders/Alerts (Physicians,Clinicians,Front Office(view),Accounting(view))
95 * ADD disclosure Disclosures (Physicians,Clinicians(addonly))
96 * ADD rx Prescriptions (Physicians,Clinicians(addonly))
97 * ADD amendment Amendments (Physicians,Clinicians(addonly))
98 * ADD lab Lab Results (Physicians,Clinicians(addonly))
99 * Section "admin" (Administration):
100 * ADD multipledb Multipledb (Administrators)
101 * ADD menu Menu (Administrators)
102 * Section "groups" (Groups):
103 * ADD gadd View/Add/Update groups (Administrators)
104 * ADD gcalendar View/Create/Update groups appointment in calendar (Administrators,Physicians,Clinicians)
105 * ADD glog Group encounter log (Administrators,Physicians, Clinicians)
106 * ADD gdlog Group detailed log of appointment in patient record (Administrators)
107 * ADD gm Send message from the permanent group therapist to the personal therapist (Administrators)
108 * </pre>
110 * @package OpenEMR
111 * @link http://www.open-emr.org
112 * @author Brady Miller <brady.g.miller@gmail.com>
113 * @copyright Copyright (c) 2012-2017 Brady Miller <brady.g.miller@gmail.com>
114 * @license https://github.com/openemr/openemr/blob/master/LICENSE GNU General Public License 3
117 // Checks if the server's PHP version is compatible with OpenEMR:
118 require_once(dirname(__FILE__) . "/common/compatibility/Checker.php");
120 use OpenEMR\Common\Checker;
122 $response = Checker::checkPhpVersion();
123 if ($response !== true) {
124 die($response);
127 $ignoreAuth = true; // no login required
129 require_once('interface/globals.php');
130 require_once("$srcdir/acl_upgrade_fx.php");
132 //Ensure that phpGACL has been installed
133 include_once('library/acl.inc');
134 if (isset($phpgacl_location)) {
135 include_once("$phpgacl_location/gacl_api.class.php");
136 $gacl = new gacl_api();
137 } else {
138 die("You must first set up library/acl.inc to use phpGACL!");
141 $acl_version = get_acl_version();
142 if (empty($acl_version)) {
143 $acl_version = 0;
146 // Upgrade for acl_version 1
147 $upgrade_acl = 1;
148 if ($acl_version < $upgrade_acl) {
149 echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
151 //Collect the ACL ID numbers.
152 echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
153 //Get Administrator ACL ID number
154 $admin_write = getAclIdNumber('Administrators', 'write');
155 //Get Doctor ACL ID Number
156 $doc_write = getAclIdNumber('Physicians', 'write');
157 //Get Clinician ACL with write access ID number
158 $clin_write = getAclIdNumber('Clinicians', 'write');
159 //Get Clinician ACL with addonly access ID number
160 $clin_addonly = getAclIdNumber('Clinicians', 'addonly');
161 //Get Receptionist ACL ID number
162 $front_write = getAclIdNumber('Front Office', 'write');
163 //Get Accountant ACL ID number
164 $back_write = getAclIdNumber('Accounting', 'write');
166 //Add new object Sections
167 echo "<BR/><B>Adding new object sections</B><BR/>";
168 //Add 'Sensitivities' object section (added in 2.8.2)
169 addObjectSectionAcl('sensitivities', 'Sensitivities');
170 //Add 'Lists' object section (added in 3.0.2)
171 addObjectSectionAcl('lists', 'Lists');
172 //Add 'Placeholder' object section (added in 3.0.2)
173 addObjectSectionAcl('placeholder', 'Placeholder');
174 //Add 'Nation Notes' object section (added in 4.1.0)
175 addObjectSectionAcl('nationnotes', 'Nation Notes');
176 //Add 'Patient Portal' object section (added in 4.1.0)
177 addObjectSectionAcl('patientportal', 'Patient Portal');
179 //Add new Objects
180 echo "<BR/><B>Adding new objects</B><BR/>";
181 //Add 'Normal' sensitivity object, order variable is default 10 (added in 2.8.2)
182 addObjectAcl('sensitivities', 'Sensitivities', 'normal', 'Normal');
183 //Add 'High' sensitivity object, order variable is set to 20 (added in 2.8.2)
184 addObjectAclWithOrder('sensitivities', 'Sensitivities', 'high', 'High', 20);
185 //Add 'Pharmacy Dispensary' object (added in 2.8.4)
186 addObjectAcl('admin', 'Administration', 'drugs', 'Pharmacy Dispensary');
187 //Add 'ACL Administration' object (added in 2.8.4)
188 addObjectAcl('admin', 'Administration', 'acl', 'ACL Administration');
189 //Add 'Price Discounting' object (added in 2.8.4)
190 addObjectAcl('acct', 'Accounting', 'disc', 'Price Discounting');
191 //Add 'Default List (write,addonly optional)' object (added in 3.0.2)
192 addObjectAcl('lists', 'Lists', 'default', 'Default List (write,addonly optional)');
193 //Add 'State List (write,addonly optional)' object (added in 3.0.2)
194 addObjectAcl('lists', 'Lists', 'state', 'State List (write,addonly optional)');
195 //Add 'Country List (write,addonly optional)' object (added in 3.0.2)
196 addObjectAcl('lists', 'Lists', 'country', 'Country List (write,addonly optional)');
197 //Add 'Language List (write,addonly optional)' object (added in 3.0.2)
198 addObjectAcl('lists', 'Lists', 'language', 'Language List (write,addonly optional)');
199 //Add 'Ethnicity-Race List (write,addonly optional)' object (added in 3.0.2)
200 addObjectAcl('lists', 'Lists', 'ethrace', 'Ethnicity-Race List (write,addonly optional)');
201 //Add 'Placeholder (Maintains empty ACLs)' object (added in 3.0.2)
202 addObjectAcl('placeholder', 'Placeholder', 'filler', 'Placeholder (Maintains empty ACLs)');
203 //Add 'Sign Lab Results (write,addonly optional)' object (added in 3.3.0)
204 addObjectAcl('patients', 'Patients', 'sign', 'Sign Lab Results (write,addonly optional)');
205 //Add 'nationnotes' object (added in 4.1.0)
206 addObjectAcl('nationnotes', 'Nation Notes', 'nn_configure', 'Nation Notes Configure');
207 //Add 'patientportal' object (added in 4.1.0)
208 addObjectAcl('patientportal', 'Patient Portal', 'portal', 'Patient Portal');
210 //Update already existing Objects
211 echo "<BR/><B>Upgrading objects</B><BR/>";
212 //Ensure that 'High' sensitivity object order variable is set to 20
213 editObjectAcl('sensitivities', 'Sensitivities', 'high', 'High', 20);
215 //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
216 // (will also place in the appropriate group and CREATE a new group if needed)
217 echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
218 //Add 'Physicians' ACL with 'addonly' and collect the ID number (added in 3.0.2)
219 $doc_addonly = addNewACL('Physicians', 'doc', 'addonly', 'Things that physicians can read and enter but not modify');
220 //Add 'Front Office' ACL with 'addonly' and collect the ID number (added in 3.0.2)
221 $front_addonly = addNewACL('Front Office', 'front', 'addonly', 'Things that front office can read and enter but not modify');
222 //Add 'Accounting' ACL with 'addonly' and collect the ID number (added in 3.0.2)
223 $back_addonly = addNewACL('Accounting', 'back', 'addonly', 'Things that back office can read and enter but not modify');
224 //Add 'Emergency Login' ACL with 'write' and collect the ID number (added in 3.3.0)
225 $emergency_write = addNewACL('Emergency Login', 'breakglass', 'write', 'Things that can use for emergency login, can read and modify');
227 //Update the ACLs
228 echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
229 //Insert the 'super' object from the 'admin' section into the Administrators group write ACL (added in 2.8.2)
230 updateAcl($admin_write, 'Administrators', 'admin', 'Administration', 'super', 'Superuser', 'write');
231 //Insert the 'high' object from the 'sensitivities' section into the Administrators group write ACL (added in 2.8.2)
232 updateAcl($admin_write, 'Administrators', 'sensitivities', 'Sensitivities', 'high', 'High', 'write');
233 //Insert the 'normal' object from the 'sensitivities' section into the Administrators group write ACL (added in 2.8.2)
234 updateAcl($admin_write, 'Administrators', 'sensitivities', 'Sensitivities', 'normal', 'Normal', 'write');
235 //Insert the 'high' object from the 'sensitivities' section into the Physicians group write ACL (added in 2.8.2)
236 updateAcl($doc_write, 'Physicians', 'sensitivities', 'Sensitivities', 'high', 'High', 'write');
237 //Insert the 'normal' object from the 'sensitivities' section into the Physicians group write ACL (added in 2.8.2)
238 updateAcl($doc_write, 'Physicians', 'sensitivities', 'Sensitivities', 'normal', 'Normal', 'write');
239 //Insert the 'normal' object from the 'sensitivities' section into the Clinicians group addonly ACL (added in 2.8.2)
240 updateAcl($clin_addonly, 'Clinicians', 'sensitivities', 'Sensitivities', 'normal', 'Normal', 'addonly');
241 //Insert the 'drugs' object from the 'admin' section into the Administrators group write ACL (added in 2.8.4)
242 updateAcl($admin_write, 'Administrators', 'admin', 'Administration', 'drugs', 'Pharmacy Dispensary', 'write');
243 //Insert the 'drugs' object from the 'admin' section into the Physicians group write ACL (added in 2.8.4)
244 updateAcl($doc_write, 'Physicians', 'admin', 'Administration', 'drugs', 'Pharmacy Dispensary', 'write');
245 //Insert the 'drugs' object from the 'admin' section into the Clinicians group write ACL (added in 2.8.4)
246 updateAcl($clin_write, 'Clinicians', 'admin', 'Administration', 'drugs', 'Pharmacy Dispensary', 'write');
247 //Insert the 'acl' object from the 'admin' section into the Administrators group write ACL (added in 2.8.4)
248 updateAcl($admin_write, 'Administrators', 'admin', 'Administration', 'acl', 'ACL Administration', 'write');
249 //Insert the 'disc' object from the 'acct' section into the Administrators group write ACL (added in 2.8.4)
250 updateAcl($admin_write, 'Administrators', 'acct', 'Accounting', 'disc', 'Price Discounting', 'write');
251 //Insert the 'disc' object from the 'acct' section into the Accounting group write ACL (added in 2.8.4)
252 updateAcl($back_write, 'Accounting', 'acct', 'Accounting', 'disc', 'Price Discounting', 'write');
253 //Insert the 'disc' object from the 'acct' section into the Physicians group write ACL (added in 2.8.4)
254 updateAcl($doc_write, 'Physicians', 'acct', 'Accounting', 'disc', 'Price Discounting', 'write');
255 //Insert the 'default' object from the 'lists' section into the Administrators group write ACL (added in 3.0.2)
256 updateAcl($admin_write, 'Administrators', 'lists', 'Lists', 'default', 'Default List (write,addonly optional)', 'write');
257 //Insert the 'state' object from the 'lists' section into the Administrators group write ACL (added in 3.0.2)
258 updateAcl($admin_write, 'Administrators', 'lists', 'Lists', 'state', 'State List (write,addonly optional)', 'write');
259 //Insert the 'country' object from the 'lists' section into the Administrators group write ACL (added in 3.0.2)
260 updateAcl($admin_write, 'Administrators', 'lists', 'Lists', 'country', 'Country List (write,addonly optional)', 'write');
261 //Insert the 'language' object from the 'lists' section into the Administrators group write ACL (added in 3.0.2)
262 updateAcl($admin_write, 'Administrators', 'lists', 'Lists', 'language', 'Language List (write,addonly optional)', 'write');
263 //Insert the 'race' object from the 'lists' section into the Administrators group write ACL (added in 3.0.2)
264 updateAcl($admin_write, 'Administrators', 'lists', 'Lists', 'ethrace', 'Ethnicity-Race List (write,addonly optional)', 'write');
265 //Update ACLs for Emergency Login
266 //Insert the 'disc' object from the 'acct' section into the Emergency Login group write ACL (added in 3.3.0)
267 updateAcl($emergency_write, 'Emergency Login', 'acct', 'Accounting', 'disc', 'Price Discounting', 'write');
268 //Insert the 'bill' object from the 'acct' section into the Emergency Login group write ACL (added in 3.3.0)
269 updateAcl($emergency_write, 'Emergency Login', 'acct', 'Accounting', 'bill', 'Billing (write optional)', 'write');
270 //Insert the 'eob' object from the 'acct' section into the Emergency Login group write ACL (added in 3.3.0)
271 updateAcl($emergency_write, 'Emergency Login', 'acct', 'Accounting', 'eob', 'EOB Data Entry', 'write');
272 //Insert the 'rep' object from the 'acct' section into the Emergency Login group write ACL (added in 3.3.0)
273 updateAcl($emergency_write, 'Emergency Login', 'acct', 'Accounting', 'rep', 'Financial Reporting - my encounters', 'write');
274 //Insert the 'rep_a' object from the 'acct' section into the Emergency Login group write ACL (added in 3.3.0)
275 updateAcl($emergency_write, 'Emergency Login', 'acct', 'Accounting', 'rep_a', 'Financial Reporting - anything', 'write');
276 //Insert the 'calendar' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
277 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'calendar', 'Calendar Settings', 'write');
278 //Insert the 'database' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
279 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'database', 'Database Reporting', 'write');
280 //Insert the 'forms' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
281 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'forms', 'Forms Administration', 'write');
282 //Insert the 'practice' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
283 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'practice', 'Practice Settings', 'write');
284 //Insert the 'superbill' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
285 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'superbill', 'Superbill Codes Administration', 'write');
286 //Insert the 'users' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
287 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'users', 'Users/Groups/Logs Administration', 'write');
288 //Insert the 'batchcom' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
289 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'batchcom', 'Batch Communication Tool', 'write');
290 //Insert the 'language' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
291 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'language', 'Language Interface Tool', 'write');
292 //Insert the 'super' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
293 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'super', 'Superuser', 'write');
294 //Insert the 'drugs' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
295 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'drugs', 'Pharmacy Dispensary', 'write');
296 //Insert the 'acl' object from the 'admin' section into the Emergency Login group write ACL (added in 3.3.0)
297 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'acl', 'ACL Administration', 'write');
298 //Insert the 'auth_a' object from the 'encounters' section into the Emergency Login group write ACL (added in 3.3.0)
299 updateAcl($emergency_write, 'Emergency Login', 'encounters', 'Encounters', 'auth_a', 'Authorize - any encounters', 'write');
300 //Insert the 'coding_a' object from the 'encounters' section into the Emergency Login group write ACL (added in 3.3.0)
301 updateAcl($emergency_write, 'Emergency Login', 'encounters', 'Encounters', 'coding_a', 'Coding - any encounters (write,wsome optional)', 'write');
302 //Insert the 'notes_a' object from the 'encounters' section into the Emergency Login group write ACL (added in 3.3.0)
303 updateAcl($emergency_write, 'Emergency Login', 'encounters', 'Encounters', 'notes_a', 'Notes - any encounters (write,addonly optional)', 'write');
304 //Insert the 'date_a' object from the 'encounters' section into the Emergency Login group write ACL (added in 3.3.0)
305 updateAcl($emergency_write, 'Emergency Login', 'encounters', 'Encounters', 'date_a', 'Fix encounter dates - any encounters', 'write');
306 //Insert the 'default' object from the 'lists' section into the Emergency Login group write ACL (added in 3.3.0)
307 updateAcl($emergency_write, 'Emergency Login', 'lists', 'Lists', 'default', 'Default List (write,addonly optional)', 'write');
308 //Insert the 'state' object from the 'lists' section into the Emergency Login group write ACL (added in 3.3.0)
309 updateAcl($emergency_write, 'Emergency Login', 'lists', 'Lists', 'state', 'State List (write,addonly optional)', 'write');
310 //Insert the 'country' object from the 'lists' section into the Emergency Login group write ACL (added in 3.3.0)
311 updateAcl($emergency_write, 'Emergency Login', 'lists', 'Lists', 'country', 'Country List (write,addonly optional)', 'write');
312 //Insert the 'language' object from the 'lists' section into the Emergency Login group write ACL (added in 3.3.0)
313 updateAcl($emergency_write, 'Emergency Login', 'lists', 'Lists', 'language', 'Language List (write,addonly optional)', 'write');
314 //Insert the 'ethrace' object from the 'lists' section into the Emergency Login group write ACL (added in 3.3.0)
315 updateAcl($emergency_write, 'Emergency Login', 'lists', 'Lists', 'ethrace', 'Ethnicity-Race List (write,addonly optional)', 'write');
316 //Insert the 'appt' object from the 'patients' section into the Emergency Login group write ACL (added in 3.3.0)
317 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'appt', 'Appointments (write,wsome optional)', 'write');
318 //Insert the 'demo' object from the 'patients' section into the Emergency Login group write ACL (added in 3.3.0)
319 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'demo', 'Demographics (write,addonly optional)', 'write');
320 //Insert the 'med' object from the 'patients' section into the Emergency Login group write ACL (added in 3.3.0)
321 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'med', 'Medical/History (write,addonly optional)', 'write');
322 //Insert the 'trans' object from the 'patients' section into the Emergency Login group write ACL (added in 3.3.0)
323 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'trans', 'Transactions (write optional)', 'write');
324 //Insert the 'docs' object from the 'patients' section into the Emergency Login group write ACL (added in 3.3.0)
325 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'docs', 'Documents (write,addonly optional)', 'write');
326 //Insert the 'notes' object from the 'patients' section into the Emergency Login group write ACL (added in 3.3.0)
327 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'notes', 'Patient Notes (write,addonly optional)', 'write');
328 //Insert the 'high' object from the 'sensitivities' section into the Emergency Login group write ACL (added in 3.3.0)
329 updateAcl($emergency_write, 'Emergency Login', 'sensitivities', 'Sensitivities', 'high', 'High', 'write');
330 //Insert the 'normal' object from the 'sensitivities' section into the Emergency Login group write ACL (added in 3.3.0)
331 updateAcl($emergency_write, 'Emergency Login', 'sensitivities', 'Sensitivities', 'normal', 'Normal', 'write');
332 //Insert the 'sign' object from the 'patients' section into the Physicians group write ACL (added in 3.3.0)
333 updateAcl($doc_write, 'Physicians', 'patients', 'Patients', 'sign', 'Sign Lab Results (write,addonly optional)', 'write');
334 //Insert the 'sign' object from the 'nationnotes' section into the Administrators group write ACL (added in 3.3.0)
335 updateAcl($admin_write, 'Administrators', 'nationnotes', 'Nation Notes', 'nn_configure', 'Nation Notes Configure', 'write');
336 //Insert the 'sign' object from the 'nationnotes' section into the Emergency Login group write ACL (added in 3.3.0)
337 updateAcl($emergency_write, 'Emergency Login', 'nationnotes', 'Nation Notes', 'nn_configure', 'Nation Notes Configure', 'write');
338 //Insert the 'patientportal' object from the 'patientportal' section into the Administrators group write ACL (added in 4.1.0)
339 updateAcl($admin_write, 'Administrators', 'patientportal', 'Patient Portal', 'portal', 'Patient Portal', 'write');
340 //Insert the 'patientportal' object from the 'patientportal' section into the Emergency Login group write ACL (added in 4.1.0)
341 updateAcl($emergency_write, 'Emergency Login', 'patientportal', 'Patient Portal', 'portal', 'Patient Portal', 'write');
343 //DONE with upgrading to this version
344 $acl_version = $upgrade_acl;
347 // Upgrade for acl_version 2
348 $upgrade_acl = 2;
349 if ($acl_version < $upgrade_acl) {
350 echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
352 //Collect the ACL ID numbers.
353 echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
355 //Add new object Sections
356 echo "<BR/><B>Adding new object sections</B><BR/>";
358 //Add new Objects
359 echo "<BR/><B>Adding new objects</B><BR/>";
361 //Update already existing Objects
362 echo "<BR/><B>Upgrading objects</B><BR/>";
364 //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
365 // (will also place in the appropriate group and CREATE a new group if needed)
366 echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
367 addNewACL('Physicians', 'doc', 'wsome', 'Things that physicians can read and partly modify');
368 addNewACL('Clinicians', 'clin', 'wsome', 'Things that clinicians can read and partly modify');
369 addNewACL('Front Office', 'front', 'wsome', 'Things that front office can read and partly modify');
370 addNewACL('Accounting', 'back', 'wsome', 'Things that back office can read and partly modify');
371 addNewACL('Physicians', 'doc', 'view', 'Things that physicians can only read');
372 addNewACL('Clinicians', 'clin', 'view', 'Things that clinicians can only read');
373 addNewACL('Front Office', 'front', 'view', 'Things that front office can only read');
374 addNewACL('Accounting', 'back', 'view', 'Things that back office can only read');
376 //Update the ACLs
377 echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
379 //DONE with upgrading to this version
380 $acl_version = $upgrade_acl;
383 // Upgrade for acl_version 3
384 $upgrade_acl = 3;
385 if ($acl_version < $upgrade_acl) {
386 echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
388 //Collect the ACL ID numbers.
389 echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
390 //Get Administrator ACL ID number
391 $admin_write = getAclIdNumber('Administrators', 'write');
392 //Get Emergency ACL ID number
393 $emergency_write = getAclIdNumber('Emergency Login', 'write');
395 //Add new object Sections
396 echo "<BR/><B>Adding new object sections</B><BR/>";
397 //Add 'Menus' object section (added in 4.1.3)
398 addObjectSectionAcl('menus', 'Menus');
400 //Add new Objects
401 echo "<BR/><B>Adding new objects</B><BR/>";
402 //Add 'modules' object (added in 4.1.3)
403 addObjectAcl('menus', 'Menus', 'modle', 'Modules');
405 //Update already existing Objects
406 echo "<BR/><B>Upgrading objects</B><BR/>";
408 //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
409 // (will also place in the appropriate group and CREATE a new group if needed)
410 echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
412 //Update the ACLs
413 echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
414 //Insert the 'Modules' object from the 'Menus' section into the Administrators group write ACL (added in 4.1.3)
415 updateAcl($admin_write, 'Administrators', 'menus', 'Menus', 'modle', 'Modules', 'write');
416 //Insert the 'Modules' object from the 'Menus' section into the Emergency Login group write ACL (added in 4.1.3)
417 updateAcl($emergency_write, 'Emergency Login', 'menus', 'Menus', 'modle', 'Modules', 'write');
419 //DONE with upgrading to this version
420 $acl_version = $upgrade_acl;
423 // Upgrade for acl_version 4
424 $upgrade_acl = 4;
425 if ($acl_version < $upgrade_acl) {
426 echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
428 //Collect the ACL ID numbers.
429 echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
430 //Get Administrator ACL ID number
431 $admin_write = getAclIdNumber('Administrators', 'write');
432 //Get Doctor ACL ID Number
433 $doc_write = getAclIdNumber('Physicians', 'write');
434 //Get Clinician ACL with write access ID number
435 $clin_write = getAclIdNumber('Clinicians', 'write');
436 //Get Clinician ACL with addonly access ID number
437 $clin_addonly = getAclIdNumber('Clinicians', 'addonly');
438 //Get Receptionist ACL ID number
439 $front_write = getAclIdNumber('Front Office', 'write');
440 //Get Accountant ACL ID number
441 $back_write = getAclIdNumber('Accounting', 'write');
443 //Add new object Sections
444 // echo "<BR/><B>Adding new object sections</B><BR/>";
446 //Add new Objects
447 echo "<BR/><B>Adding new objects</B><BR/>";
448 // Add 'Patient Reminders (write,addonly optional)' object (added in 5.0.1)
449 addObjectAcl('patients', 'Patients', 'reminder', 'Patient Reminders (write,addonly optional)');
450 // Add 'Clinical Reminders/Alerts (write,addonly optional)' object (added in 5.0.1)
451 addObjectAcl('patients', 'Patients', 'alert', 'Clinical Reminders/Alerts (write,addonly optional)');
452 // Add 'Disclosures (write,addonly optional)' object (added in 5.0.1)
453 addObjectAcl('patients', 'Patients', 'disclosure', 'Disclosures (write,addonly optional)');
454 // Add 'Prescriptions (write,addonly optional)' object (added in 5.0.1)
455 addObjectAcl('patients', 'Patients', 'rx', 'Prescriptions (write,addonly optional)');
456 // Add 'Amendments (write,addonly optional)' object (added in 5.0.1)
457 addObjectAcl('patients', 'Patients', 'amendment', 'Amendments (write,addonly optional)');
458 // Add 'Lab Results (write,addonly optional)' object (added in 5.0.1)
459 addObjectAcl('patients', 'Patients', 'lab', 'Lab Results (write,addonly optional)');
461 //Update already existing Objects
462 // echo "<BR/><B>Upgrading objects</B><BR/>";
464 //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
465 // (will also place in the appropriate group and CREATE a new group if needed)
466 // echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
468 //Update the ACLs
469 echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
470 //Insert the 'reminder' object from the 'patients' section into the Physicians group write ACL (added in 5.0.1)
471 updateAcl($doc_write, 'Physicians', 'patients', 'Patients', 'reminder', 'Patient Reminders (write,addonly optional)', 'write');
472 //Insert the 'alert' object from the 'patients' section into the Physicians group write ACL (added in 5.0.1)
473 updateAcl($doc_write, 'Physicians', 'patients', 'Patients', 'alert', 'Clinical Reminders/Alerts (write,addonly optional)', 'write');
474 //Insert the 'disclosure' object from the 'patients' section into the Physicians group write ACL (added in 5.0.1)
475 updateAcl($doc_write, 'Physicians', 'patients', 'Patients', 'disclosure', 'Disclosures (write,addonly optional)', 'write');
476 //Insert the 'rx' object from the 'patients' section into the Physicians group write ACL (added in 5.0.1)
477 updateAcl($doc_write, 'Physicians', 'patients', 'Patients', 'rx', 'Prescriptions (write,addonly optional)', 'write');
478 //Insert the 'amendment' object from the 'patients' section into the Physicians group write ACL (added in 5.0.1)
479 updateAcl($doc_write, 'Physicians', 'patients', 'Patients', 'amendment', 'Amendments (write,addonly optional)', 'write');
480 //Insert the 'lab' object from the 'patients' section into the Physicians group write ACL (added in 5.0.1)
481 updateAcl($doc_write, 'Physicians', 'patients', 'Patients', 'lab', 'Lab Results (write,addonly optional)', 'write');
482 //DONE with upgrading to this version
483 $acl_version = $upgrade_acl;
486 //This is a template for a new revision, when needed
487 // Upgrade for acl_version 5
488 $upgrade_acl = 5;
489 if ($acl_version < $upgrade_acl) {
490 echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
492 //Collect the ACL ID numbers.
493 echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
494 //Get Accountant ACL ID number
495 $admin_write = getAclIdNumber('Administrators', 'write');
498 //Add new object Sections
499 echo "<BR/><B>Adding new object sections</B><BR/>";
500 // Add 'Groups' object (added in 5.0.1)
501 addObjectSectionAcl('groups', 'Groups');
504 //Add new Objects
505 echo "<BR/><B>Adding new objects</B><BR/>";
506 // Add 'Multipledb' object (added in 5.0.1)
507 addObjectAcl('admin', 'Administration', 'multipledb', 'Multipledb');
508 addObjectAcl('groups', 'Groups', 'gadd', 'View/Add/Update groups');
509 addObjectAcl('groups', 'Groups', 'gcalendar', 'View/Create/Update groups appointment in calendar');
510 addObjectAcl('groups', 'Groups', 'glog', 'Group encounter log');
511 addObjectAcl('groups', 'Groups', 'gdlog', 'Group detailed log of appointment in patient record');
512 addObjectAcl('groups', 'Groups', 'gm', 'Send message from the permanent group therapist to the personal therapist');
513 //Update already existing Objects
514 echo "<BR/><B>Upgrading objects</B><BR/>";
516 //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
517 // (will also place in the appropriate group and CREATE a new group if needed)
518 echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
520 //Update the ACLs
521 echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
522 updateAcl($admin_write, 'Administrators', 'groups', 'Groups', 'gadd', 'View/Add/Update groups', 'write');
523 updateAcl($admin_write, 'Administrators', 'groups', 'Groups', 'gcalendar', 'View/Create/Update groups appointment in calendar', 'write');
524 updateAcl($admin_write, 'Administrators', 'groups', 'Groups', 'glog', 'Group encounter log', 'write');
525 updateAcl($admin_write, 'Administrators', 'groups', 'Groups', 'gdlog', 'Group detailed log of appointment in patient record', 'write');
526 updateAcl($admin_write, 'Administrators', 'groups', 'Groups', 'gm', 'Send message from the permanent group therapist to the personal therapist', 'write');
527 //Insert the 'Multipledb' object from the 'admin' section into the Administrators group write ACL (added in 5.0.1)
528 updateAcl($admin_write, 'Administrators', 'admin', 'Administration', 'multipledb', 'Multipledb', 'write');
529 //DONE with upgrading to this version
530 $acl_version = $upgrade_acl;
533 // Upgrade for acl_version 6
534 $upgrade_acl = 6;
535 if ($acl_version < $upgrade_acl) {
536 echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
538 //Collect the ACL ID numbers.
539 echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
540 $admin_write = getAclIdNumber('Administrators', 'write');
541 $doc_write = getAclIdNumber('Physicians', 'write');
542 $clin_addonly = getAclIdNumber('Clinicians', 'addonly');
543 $clin_write = getAclIdNumber('Clinicians', 'write');
544 $front_view = getAclIdNumber('Front Office', 'view');
545 $front_write = getAclIdNumber('Front Office', 'write');
546 $back_view = getAclIdNumber('Accounting', 'view');
547 $emergency_write = getAclIdNumber('Emergency Login', 'write');
549 //Add new object Sections
550 echo "<BR/><B>Adding new object sections</B><BR/>";
551 addObjectAcl('admin', 'Administration', 'menu', 'Menu');
553 //Add new Objects
554 echo "<BR/><B>Adding new objects</B><BR/>";
556 //Update already existing Objects
557 echo "<BR/><B>Upgrading objects</B><BR/>";
559 //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
560 // (will also place in the appropriate group and CREATE a new group if needed)
561 echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
563 //Update the ACLs
564 echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
565 updateAcl($admin_write, 'Administrators', 'admin', 'Administration', 'menu', 'Menu', 'write');
567 updateAcl($admin_write, 'Administrators', 'encounters', 'Encounters', 'auth', 'Authorize - my encounters', 'write');
568 updateAcl($admin_write, 'Administrators', 'encounters', 'Encounters', 'coding', 'Coding - my encounters (write,wsome optional)', 'write');
569 updateAcl($admin_write, 'Administrators', 'encounters', 'Encounters', 'notes', 'Notes - my encounters (write,addonly optional)', 'write');
570 updateAcl($admin_write, 'Administrators', 'encounters', 'Encounters', 'relaxed', 'Less-private information (write,addonly optional)', 'write');
572 updateAcl($admin_write, 'Administrators', 'patients', 'Patients', 'sign', 'Sign Lab Results (write,addonly optional)', 'write');
573 updateAcl($admin_write, 'Administrators', 'patients', 'Patients', 'reminder', 'Patient Reminders (write,addonly optional)', 'write');
574 updateAcl($admin_write, 'Administrators', 'patients', 'Patients', 'alert', 'Clinical Reminders/Alerts (write,addonly optional)', 'write');
575 updateAcl($admin_write, 'Administrators', 'patients', 'Patients', 'disclosure', 'Disclosures (write,addonly optional)', 'write');
576 updateAcl($admin_write, 'Administrators', 'patients', 'Patients', 'rx', 'Prescriptions (write,addonly optional)', 'write');
577 updateAcl($admin_write, 'Administrators', 'patients', 'Patients', 'amendment', 'Amendments (write,addonly optional)', 'write');
578 updateAcl($admin_write, 'Administrators', 'patients', 'Patients', 'lab', 'Lab Results (write,addonly optional)', 'write');
580 updateAcl($doc_write, 'Physicians', 'encounters', 'Encounters', 'auth', 'Authorize - my encounters', 'write');
581 updateAcl($doc_write, 'Physicians', 'encounters', 'Encounters', 'coding', 'Coding - my encounters (write,wsome optional)', 'write');
582 updateAcl($doc_write, 'Physicians', 'encounters', 'Encounters', 'notes', 'Notes - my encounters (write,addonly optional)', 'write');
583 updateAcl($doc_write, 'Physicians', 'encounters', 'Encounters', 'relaxed', 'Less-private information (write,addonly optional)', 'write');
585 updateAcl($doc_write, 'Physicians', 'groups', 'Groups', 'gcalendar', 'View/Create/Update groups appointment in calendar', 'write');
586 updateAcl($doc_write, 'Physicians', 'groups', 'Groups', 'glog', 'Group encounter log', 'write');
588 updateAcl($clin_addonly, 'Clinicians', 'patients', 'Patients', 'trans', 'Transactions (write optional)', 'addonly');
589 updateAcl($clin_addonly, 'Clinicians', 'patients', 'Patients', 'reminder', 'Patient Reminders (write,addonly optional)', 'addonly');
590 updateAcl($clin_addonly, 'Clinicians', 'patients', 'Patients', 'alert', 'Clinical Reminders/Alerts (write,addonly optional)', 'addonly');
591 updateAcl($clin_addonly, 'Clinicians', 'patients', 'Patients', 'disclosure', 'Disclosures (write,addonly optional)', 'addonly');
592 updateAcl($clin_addonly, 'Clinicians', 'patients', 'Patients', 'rx', 'Prescriptions (write,addonly optional)', 'addonly');
593 updateAcl($clin_addonly, 'Clinicians', 'patients', 'Patients', 'amendment', 'Amendments (write,addonly optional)', 'addonly');
594 updateAcl($clin_addonly, 'Clinicians', 'patients', 'Patients', 'lab', 'Lab Results (write,addonly optional)', 'addonly');
596 updateAcl($clin_write, 'Clinicians', 'groups', 'Groups', 'gcalendar', 'View/Create/Update groups appointment in calendar', 'write');
597 updateAcl($clin_write, 'Clinicians', 'groups', 'Groups', 'glog', 'Group encounter log', 'write');
599 updateAcl($front_view, 'Front Office', 'patients', 'Patients', 'alert', 'Clinical Reminders/Alerts (write,addonly optional)', 'view');
601 updateAcl($front_write, 'Front Office', 'groups', 'Groups', 'gcalendar', 'View/Create/Update groups appointment in calendar', 'write');
603 updateAcl($back_view, 'Accounting', 'patients', 'Patients', 'alert', 'Clinical Reminders/Alerts (write,addonly optional)', 'view');
605 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'multipledb', 'Multipledb', 'write');
606 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'menu', 'Menu', 'write');
607 updateAcl($emergency_write, 'Emergency Login', 'encounters', 'Encounters', 'auth', 'Authorize - my encounters', 'write');
608 updateAcl($emergency_write, 'Emergency Login', 'encounters', 'Encounters', 'coding', 'Coding - my encounters (write,wsome optional)', 'write');
609 updateAcl($emergency_write, 'Emergency Login', 'encounters', 'Encounters', 'notes', 'Notes - my encounters (write,addonly optional)', 'write');
610 updateAcl($emergency_write, 'Emergency Login', 'encounters', 'Encounters', 'relaxed', 'Less-private information (write,addonly optional)', 'write');
611 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'sign', 'Sign Lab Results (write,addonly optional)', 'write');
612 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'reminder', 'Patient Reminders (write,addonly optional)', 'write');
613 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'alert', 'Clinical Reminders/Alerts (write,addonly optional)', 'write');
614 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'disclosure', 'Disclosures (write,addonly optional)', 'write');
615 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'rx', 'Prescriptions (write,addonly optional)', 'write');
616 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'amendment', 'Amendments (write,addonly optional)', 'write');
617 updateAcl($emergency_write, 'Emergency Login', 'patients', 'Patients', 'lab', 'Lab Results (write,addonly optional)', 'write');
618 updateAcl($emergency_write, 'Emergency Login', 'groups', 'Groups', 'gadd', 'View/Add/Update groups', 'write');
619 updateAcl($emergency_write, 'Emergency Login', 'groups', 'Groups', 'gcalendar', 'View/Create/Update groups appointment in calendar', 'write');
620 updateAcl($emergency_write, 'Emergency Login', 'groups', 'Groups', 'glog', 'Group encounter log', 'write');
621 updateAcl($emergency_write, 'Emergency Login', 'groups', 'Groups', 'gdlog', 'Group detailed log of appointment in patient record', 'write');
622 updateAcl($emergency_write, 'Emergency Login', 'groups', 'Groups', 'gm', 'Send message from the permanent group therapist to the personal therapist', 'write');
624 //DONE with upgrading to this version
625 $acl_version = $upgrade_acl;
629 // Upgrade for acl_version 7
630 $upgrade_acl = 7;
631 if ($acl_version < $upgrade_acl) {
632 echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
634 //Collect the ACL ID numbers.
635 echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
636 $admin_write = getAclIdNumber('Administrators', 'write');
637 $emergency_write = getAclIdNumber('Emergency Login', 'write');
639 //Add new object Sections
640 echo "<BR/><B>Adding new object sections</B><BR/>";
641 addObjectAcl('admin', 'Administration', 'manage_modules', 'Manage modules');
643 //Add new Objects
644 echo "<BR/><B>Adding new objects</B><BR/>";
646 //Update already existing Objects
647 echo "<BR/><B>Upgrading objects</B><BR/>";
649 //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
650 // (will also place in the appropriate group and CREATE a new group if needed)
651 echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
652 updateAcl($admin_write, 'Administrators', 'admin', 'Administration', 'manage_modules', 'Manage modules', 'write');
653 updateAcl($emergency_write, 'Emergency Login', 'admin', 'Administration', 'manage_modules', 'Manage modules', 'write');
655 //Update the ACLs
656 echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
658 //DONE with upgrading to this version
659 $acl_version = $upgrade_acl;
663 /* This is a template for a new revision, when needed
664 // Upgrade for acl_version 8
665 $upgrade_acl = 8;
666 if ($acl_version < $upgrade_acl) {
667 echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
669 //Collect the ACL ID numbers.
670 echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
672 //Add new object Sections
673 echo "<BR/><B>Adding new object sections</B><BR/>";
675 //Add new Objects
676 echo "<BR/><B>Adding new objects</B><BR/>";
678 //Update already existing Objects
679 echo "<BR/><B>Upgrading objects</B><BR/>";
681 //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
682 // (will also place in the appropriate group and CREATE a new group if needed)
683 echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
685 //Update the ACLs
686 echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
688 //DONE with upgrading to this version
689 $acl_version = $upgrade_acl;
693 /* This is a template for a new revision, when needed
694 // Upgrade for acl_version 9
695 $upgrade_acl = 9;
696 if ($acl_version < $upgrade_acl) {
697 echo "<B>UPGRADING ACCESS CONTROLS TO VERSION ".$upgrade_acl.":</B></BR>";
699 //Collect the ACL ID numbers.
700 echo "<B>Checking to ensure all the proper ACL(access control list) are present:</B></BR>";
702 //Add new object Sections
703 echo "<BR/><B>Adding new object sections</B><BR/>";
705 //Add new Objects
706 echo "<BR/><B>Adding new objects</B><BR/>";
708 //Update already existing Objects
709 echo "<BR/><B>Upgrading objects</B><BR/>";
711 //Add new ACLs here (will return the ACL ID of newly created or already existant ACL)
712 // (will also place in the appropriate group and CREATE a new group if needed)
713 echo "<BR/><B>Adding ACLs(Access Control Lists) and groups</B><BR/>";
715 //Update the ACLs
716 echo "<BR/><B>Updating the ACLs(Access Control Lists)</B><BR/>";
718 //DONE with upgrading to this version
719 $acl_version = $upgrade_acl;
723 //All done
724 $response = set_acl_version($acl_version);
726 if ($response) {
727 echo "DONE upgrading access controls";
728 } else {
729 echo "ERROR upgrading access control version";