Rewritten extensions system to enable per company module/plugin
[fa-stable.git] / includes / access_levels.inc
index f1ccc7f697b4b011ef149f867ae2f9ae3098c6f7..3c60a0922a83a308498896ac2fc63b4cf2314ded 100644 (file)
@@ -154,6 +154,7 @@ $security_areas =array(
        'SA_PURCHASEORDER' => array(SS_PURCH|3, _("Purchase order entry")),
        'SA_GRN' => array(SS_PURCH|4, _("Purchase receive")),
        'SA_SUPPLIERINVOICE' => array(SS_PURCH|5, _("Supplier invoices")),
+       'SA_GRNDELETE' => array(SS_PURCH|9, _("Deleting GRN items during invoice entry")),
        'SA_SUPPLIERCREDIT' => array(SS_PURCH|6, _("Supplier credit notes")),
        'SA_SUPPLIERPAYMNT' => array(SS_PURCH|7, _("Supplier payments")),
        'SA_SUPPLIERALLOC' => array(SS_PURCH|8, _("Supplier payments allocations")),
@@ -225,6 +226,7 @@ $security_areas =array(
        'SA_BANKTRANSFER' => array(SS_GL|6, _("Bank account transfers")),
        'SA_RECONCILE' => array(SS_GL|7, _("Bank reconciliation")),
        'SA_JOURNALENTRY' => array(SS_GL|8, _("Manual journal entries")),
+       'SA_BANKJOURNAL' => array(SS_GL|11, _("Journal entries to bank related accounts")),
        'SA_BUDGETENTRY' => array(SS_GL|9, _("Budget edition")),
        'SA_STANDARDCOST' => array(SS_GL|10, _("Item standard costs")),
 
@@ -233,4 +235,21 @@ $security_areas =array(
        'SA_BANKREP' => array(SS_GL_A|3, _("Bank reports and inquiries")),
        'SA_GLREP' => array(SS_GL_A|4, _("GL reports and inquiries")),
 );
+/*
+       This function should be called whenever we want to extend core access level system
+       with new security areas and/or sections i.e.: 
+       . on any page with non-standard security areas
+       . in security roles editor
+*/
+function add_access_extensions()
+{
+       global $path_to_root, $security_areas, $security_sections;
+       
+       // Add extension private access levels
+       include($path_to_root.'/installed_extensions.php');
+       foreach($installed_extensions as $ext) {
+               if (isset($ext['acc_file']))
+                       include_once($path_to_root.($ext['type'] == 'plugin' ? '/modules/':'/').$ext['path'].'/'.$ext['acc_file']);
+       }
+}
 ?>
\ No newline at end of file