}
}
+function db_has_currency_rates($currency, $date_, $msg=false)
+{
+ $date = date2sql($date_);
+
+ if (is_company_currency($currency))
+ return 1;
+ $ret = check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."exchange_rates WHERE curr_code = '$currency' && date_ <= '$date'");
+ if ($ret == 0 && $msg)
+ display_error(sprintf(_("Cannot retrieve exchange rate for currency %s as of %s. Please add exchange rate manually on Exchange Rates page."),
+ $currency, $date_), true);
+ return $ret;
+}
+
function db_has_sales_types()
{
return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."sales_types");
function db_customer_has_branches($customer_id)
{
return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."cust_branch "
- ."WHERE debtor_no='$customer_id'");
+ ."WHERE debtor_no=".db_escape($customer_id));
}
function db_has_customer_branches()
function db_has_tags($type)
{
- return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."tags WHERE type=$type");
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."tags WHERE type=".db_escape($type));
}
function check_db_has_tags($type, $msg)
$result = db_query($sql, "could not do check empty query");
$myrow = db_fetch_row($result);
- return $myrow[0] > 0;
+ return $myrow[0] > 0;
}
//
// Integer input check
return 1;
}
+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);
+ display_footer_exit();
+ }
+}
+
+function check_deferred_income_act($msg)
+{
+ global $path_to_root;
+
+ if (!get_company_pref('deferred_income_act'))
+ {
+ display_error($msg, true);
+ 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 = '<b>'._("You have no edit access to transactions created by other users.").'</b>';
+ 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);
+}
-?>
\ No newline at end of file