X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=taxes%2Fdb%2Ftax_types_db.inc;h=f42470eff9b5b3134a02d70e9520ad44e211510f;hb=8638cffdf5eb106d2c9a6f8ee68b9f91427ace2f;hp=897bad7cae858cd85138c6f1b2d56d8b6d95c03c;hpb=0b253e5e0d23400838d3bfb4f27fb3fb2637b3ab;p=fa-stable.git diff --git a/taxes/db/tax_types_db.inc b/taxes/db/tax_types_db.inc index 897bad7c..f42470ef 100644 --- a/taxes/db/tax_types_db.inc +++ b/taxes/db/tax_types_db.inc @@ -24,7 +24,7 @@ function update_tax_type($type_id, $name, $sales_gl_code, $purchasing_gl_code, $ sales_gl_code=".db_escape($sales_gl_code).", purchasing_gl_code=".db_escape($purchasing_gl_code).", rate=$rate - WHERE id=$type_id"; + WHERE id=".db_escape($type_id); db_query($sql, "could not update tax type"); } @@ -58,16 +58,15 @@ function get_tax_type($type_id) FROM ".TB_PREF."tax_types, ".TB_PREF."chart_master AS Chart1, ".TB_PREF."chart_master AS Chart2 WHERE ".TB_PREF."tax_types.sales_gl_code = Chart1.account_code - AND ".TB_PREF."tax_types.purchasing_gl_code = Chart2.account_code AND id=$type_id"; + AND ".TB_PREF."tax_types.purchasing_gl_code = Chart2.account_code AND id=".db_escape($type_id); $result = db_query($sql, "could not get tax type"); - return db_fetch($result); } function get_tax_type_default_rate($type_id) { - $sql = "SELECT rate FROM ".TB_PREF."tax_types WHERE id=$type_id"; + $sql = "SELECT rate FROM ".TB_PREF."tax_types WHERE id=".db_escape($type_id); $result = db_query($sql, "could not get tax type rate"); @@ -79,7 +78,7 @@ function delete_tax_type($type_id) { begin_transaction(); - $sql = "DELETE FROM ".TB_PREF."tax_types WHERE id=$type_id"; + $sql = "DELETE FROM ".TB_PREF."tax_types WHERE id=".db_escape($type_id); db_query($sql, "could not delete tax type"); @@ -91,4 +90,41 @@ function delete_tax_type($type_id) commit_transaction(); } +/* + Check if gl_code is used by more than 2 tax types, + or check if the two gl codes are not used by any other + than selected tax type. + Necessary for pre-2.2 installations. +*/ +function is_tax_gl_unique($gl_code, $gl_code2=-1, $selected_id=-1) { + + $purch_code = $gl_code2== -1 ? $gl_code : $gl_code2; + + $sql = "SELECT count(*) FROM " + .TB_PREF."tax_types + WHERE (sales_gl_code=" .db_escape($gl_code) + ." OR purchasing_gl_code=" .db_escape($purch_code). ")"; + + if ($selected_id != -1) + $sql .= " AND id!=".db_escape($selected_id); + + $res = db_query($sql, "could not query gl account uniqueness"); + $row = db_fetch($res); + + return $gl_code2 == -1 ? ($row[0] <= 1) : ($row[0] == 0); +} + +function is_tax_account($account_code) +{ + $sql= "SELECT id FROM ".TB_PREF."tax_types WHERE + sales_gl_code=".db_escape($account_code)." OR purchasing_gl_code=".db_escape($account_code); + $result = db_query($sql, "checking account is tax account"); + if (db_num_rows($result) > 0) { + $acct = db_fetch($result); + return $acct['id']; + } else + return false; +} + + ?> \ No newline at end of file