'SA_BACKUP' => array(SS_SPEC|2, _("Database backup/restore")),
'SA_VIEWPRINTTRANSACTION' => array(SS_SPEC|3, _("Common view/print transactions interface")),
'SA_ATTACHDOCUMENT' => array(SS_SPEC|4, _("Attaching documents")),
- 'SA_SETUPDISPLAY' => array(SS_SPEC|5, _("Display preferences")), //???
- 'SA_CHGPASSWD' => array(SS_SPEC|6, _("Password changes")), //???
-
+ 'SA_SETUPDISPLAY' => array(SS_SPEC|5, _("Display preferences")),
+ 'SA_CHGPASSWD' => array(SS_SPEC|6, _("Password changes")),
+ 'SA_EDITOTHERSTRANS' => array(SS_SPEC|7, _("Edit other users transactions")),
//
// Sales related functionality
//
'SA_GLREP' => array(SS_GL_A|4, _("GL reports and inquiries")),
);
-if (!@$allow_gl_reopen)
+if (!@$SysPrefs->allow_gl_reopen)
unset($security_areas['SA_GLREOPEN']);
/*
This function should be called whenever we want to extend core access level system
return array($security_areas, $security_sections);
}
*/
-?>
\ No newline at end of file
+
+function check_edit_access($name)
+{
+ global $input_security;
+
+ $access = @$input_security[$name];
+
+ if (!$access)
+ $access = @$input_security['']; // default access level
+
+ if (!$access)
+ return true; // if constraint is not defined edit access is allowed
+
+ return user_check_access($access);
+}
+/*
+ Returns POST value or null if edit access to $name control is forbidden.
+*/
+function access_post($name, $dflt=null)
+{
+ if (!check_edit_access($name))
+ return $dflt;
+ else
+ return get_post($name, $dflt);
+}
+
+/*
+ Returns numeric input value or null if edit access to $name control is forbidden.
+*/
+function access_num($name, $dflt=null)
+{
+ if (!check_edit_access($name))
+ return $dflt;
+ else
+ return input_num($name, $dflt);
+}