X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=includes%2Fdata_checks.inc;h=84552e402cba8b72ad99842dd0d7846b6235c795;hb=96f82e64b766fa59a3ebc3176e4efd17736f6878;hp=cfb87a61e5c4d9c89c396431eab442b359dfa018;hpb=7e830126b96477e969fe3b48d9fc0e78f6c1fe00;p=fa-stable.git diff --git a/includes/data_checks.inc b/includes/data_checks.inc index cfb87a61..84552e40 100644 --- a/includes/data_checks.inc +++ b/includes/data_checks.inc @@ -488,15 +488,14 @@ function check_num($postname, $min=null, $max=null, $dflt=0) { function check_is_closed($type, $type_no, $msg=null) { global $systypes_array; - + if (($type_no > 0) && is_closed_trans($type, $type_no)) { if (!$msg) $msg = sprintf(_("%s #%s is closed for further edition."), $systypes_array[$type], $type_no); - display_error($msg, true); - end_page(); - exit; - } + display_error($msg, true); + display_footer_exit(); + } } function check_deferred_income_act($msg) @@ -506,7 +505,25 @@ function check_deferred_income_act($msg) if (!get_company_pref('deferred_income_act')) { display_error($msg, true); - end_page(); - exit; + display_footer_exit(); } } + +function check_is_editable($trans_type, $trans_no, $msg=null) +{ + if (!$_SESSION['wa_current_user']->can_access('SA_EDITOTHERSTRANS')) + { + $audit = get_audit_trail_last($trans_type, $trans_no); + + if ($_SESSION['wa_current_user']->user != $audit['user']) + { + if (!$msg) + $msg = ''._("You have no edit access to transactions created by other users.").''; + display_note($msg); + display_footer_exit(); + } + } + if (!in_array($trans_type, array(ST_SALESORDER, ST_SALESQUOTE, ST_PURCHORDER, ST_WORKORDER))) + check_is_closed($trans_type, $trans_no, $msg); +} +