-function update_company_gl_setup($debtors_act, $pyt_discount_act, $creditors_act,
- $freight_act,
- $default_sales_act,
- $default_sales_discount_act,
- $default_prompt_payment_act,
- $default_inventory_act,
- $default_cogs_act,
- $default_adj_act,
- $default_inv_sales_act,
- $default_assembly_act,
- $allow_negative_stock,
- $po_over_receive,
- $po_over_charge,
- $past_due_days,
- $default_credit_limit,
- $default_workorder_required,
- $default_dim_required)
-{
- $sql = "UPDATE ".TB_PREF."company SET
- debtors_act=".db_escape($debtors_act).", pyt_discount_act=".db_escape($pyt_discount_act).",
- creditors_act=".db_escape($creditors_act).",
- freight_act=".db_escape($freight_act).",
- default_sales_act=".db_escape($default_sales_act).",
- default_sales_discount_act=".db_escape($default_sales_discount_act).",
- default_prompt_payment_act=".db_escape($default_prompt_payment_act).",
- default_inventory_act=".db_escape($default_inventory_act).",
- default_cogs_act=".db_escape($default_cogs_act).",
- default_adj_act=".db_escape($default_adj_act).",
- default_inv_sales_act=".db_escape($default_inv_sales_act).",
- default_assembly_act=".db_escape($default_assembly_act).",
- allow_negative_stock=$allow_negative_stock,
- po_over_receive=$po_over_receive,
- po_over_charge=$po_over_charge,
- past_due_days=$past_due_days,
- default_credit_limit=$default_credit_limit,
- default_workorder_required=$default_workorder_required,
- default_dim_required=$default_dim_required
- WHERE coy_code=1";
-
- db_query($sql, "The company gl setup could not be updated ");
+ if (!isset($tbpref))
+ $tbpref = TB_PREF;
+
+ $sql = "SELECT name, value FROM {$tbpref}sys_prefs";
+ $result = @db_query($sql); // supress errors before 2.3 db structure upgrade
+
+ if(!$result)
+ return null;
+
+ while($pref = db_fetch_assoc($result)) {
+ $_SESSION['SysPrefs']->prefs[$pref['name']] = $pref['value'];
+ }
+
+ $SysPrefs = &$_SESSION['SysPrefs'];
+
+ // update current db status for info in log file
+ $SysPrefs->db_ok = $SysPrefs->prefs['version_id'] == $db_version;
+ $cached = true;
+ }
+
+ $all = $_SESSION['SysPrefs']->prefs;
+
+ if (!$prefs)
+ return $all;
+ elseif (is_string($prefs))
+ return @$all[$prefs];
+
+ $ret = array();
+ foreach($prefs as $name)
+ $ret[$name] = $all[$name];
+
+ return $ret;