Mysqli errors: Trying to access array offset on value of type bool. Fixed. Please...
[fa-stable.git] / inventory / includes / db / items_category_db.inc
index f7d4ed6b5ee86ee5bb8756f2bcd1601ac4889122..2c79d1373f1b45499bf774c917544572c76340ca 100644 (file)
     See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
 function add_item_category($description, $tax_type_id, $sales_account, 
-       $cogs_account, $inventory_account, $adjustment_account, $assembly_account, 
-       $units, $mb_flag, $dim1, $dim2, $no_sale)
+       $cogs_account, $inventory_account, $adjustment_account, $wip_account, 
+       $units, $mb_flag, $dim1, $dim2, $no_sale, $no_purchase)
 {
        $sql = "INSERT INTO ".TB_PREF."stock_category (description, dflt_tax_type,
                        dflt_units, dflt_mb_flag, dflt_sales_act, dflt_cogs_act, 
-                       dflt_inventory_act, dflt_adjustment_act, dflt_assembly_act, 
-                       dflt_dim1, dflt_dim2, dflt_no_sale)
+                       dflt_inventory_act, dflt_adjustment_act, dflt_wip_act, 
+                       dflt_dim1, dflt_dim2, dflt_no_sale, dflt_no_purchase)
                VALUES ("
                .db_escape($description).","
                .db_escape($tax_type_id).","
@@ -26,17 +26,18 @@ function add_item_category($description, $tax_type_id, $sales_account,
                .db_escape($cogs_account).","
                .db_escape($inventory_account).","
                .db_escape($adjustment_account).","
-               .db_escape($assembly_account).","
+               .db_escape($wip_account).","
                .db_escape($dim1).","
                .db_escape($dim2).","
-               .db_escape($no_sale).")";
+               .db_escape($no_sale).","
+               .db_escape($no_purchase).")";
 
        db_query($sql,"an item category could not be added");
 }
 
 function update_item_category($id, $description, $tax_type_id, 
        $sales_account, $cogs_account, $inventory_account, $adjustment_account, 
-       $assembly_account, $units, $mb_flag, $dim1, $dim2, $no_sale)
+       $wip_account, $units, $mb_flag, $dim1, $dim2, $no_sale, $no_purchase)
 
 {
        $sql = "UPDATE ".TB_PREF."stock_category SET "
@@ -48,25 +49,42 @@ function update_item_category($id, $description, $tax_type_id,
                ."dflt_cogs_act = ".db_escape($cogs_account).","
                ."dflt_inventory_act = ".db_escape($inventory_account).","
                ."dflt_adjustment_act = ".db_escape($adjustment_account).","
-               ."dflt_assembly_act = ".db_escape($assembly_account).","
+               ."dflt_wip_act = ".db_escape($wip_account).","
                ."dflt_dim1 = ".db_escape($dim1).","
                ."dflt_dim2 = ".db_escape($dim2).","
-               ."dflt_no_sale = '$no_sale'"
-        ." WHERE category_id = '$id'";
+               ."dflt_no_sale = ".db_escape($no_sale).","
+               ."dflt_no_purchase = ".db_escape($no_purchase)
+        ."WHERE category_id = ".db_escape($id);
 
        db_query($sql,"an item category could not be updated");
 }
 
 function delete_item_category($id)
 {
-       $sql="DELETE FROM ".TB_PREF."stock_category WHERE category_id='$id'";
+       $sql="DELETE FROM ".TB_PREF."stock_category WHERE category_id=".db_escape($id);
 
        db_query($sql,"an item category could not be deleted");
 }
 
+function get_item_categories($show_inactive, $fixed_asset=false)
+{
+       $sql = "SELECT c.*, t.name as tax_name FROM ".TB_PREF."stock_category c, "
+               .TB_PREF."item_tax_types t WHERE c.dflt_tax_type=t.id";
+       if (!$show_inactive)
+               $sql .= " AND !c.inactive";
+       if ($fixed_asset)
+               $sql .= " AND c.dflt_mb_flag='F'";
+       else
+               $sql .= " AND c.dflt_mb_flag!='F'";
+
+       $sql .= " ORDER by description";
+
+       return db_query($sql, "could not get stock categories");
+}
+
 function get_item_category($id)
 {
-       $sql="SELECT * FROM ".TB_PREF."stock_category WHERE category_id='$id'";
+       $sql="SELECT * FROM ".TB_PREF."stock_category WHERE category_id=".db_escape($id);
 
        $result = db_query($sql,"an item category could not be retrieved");
 
@@ -75,12 +93,11 @@ function get_item_category($id)
 
 function get_category_name($id)
 {
-       $sql = "SELECT description FROM ".TB_PREF."stock_category WHERE category_id=$id";
+       $sql = "SELECT description FROM ".TB_PREF."stock_category WHERE category_id=".db_escape($id);
 
        $result = db_query($sql, "could not get sales type");
 
        $row = db_fetch_row($result);
-       return $row[0];
+       return is_array($row) ? $row[0] : false;
 }
 
-?>
\ No newline at end of file