5 include($path_to_root . "/includes/session.inc");
7 page(_("Sales Types"));
9 include($path_to_root . "/includes/ui.inc");
10 include($path_to_root . "/sales/includes/db/sales_types_db.inc");
12 if (isset($_POST['selected_id']))
14 $selected_id = $_POST['selected_id'];
16 elseif (isset($_GET['selected_id']))
18 $selected_id = $_GET['selected_id'];
23 //----------------------------------------------------------------------------------------------------
25 function can_process()
27 if (strlen($_POST['sales_type']) == 0)
29 display_error(_("The sales type description cannot be empty."));
35 //----------------------------------------------------------------------------------------------------
37 if (isset($_POST['ADD_ITEM']) && can_process())
39 add_sales_type($_POST['sales_type'], isset($_POST['tax_included']) ? 1:0,
41 meta_forward($_SERVER['PHP_SELF']);
44 //----------------------------------------------------------------------------------------------------
46 if (isset($_POST['UPDATE_ITEM']) && can_process())
49 update_sales_type($selected_id, $_POST['sales_type'], isset($_POST['tax_included']) ? 1:0,
51 meta_forward($_SERVER['PHP_SELF']);
54 //----------------------------------------------------------------------------------------------------
56 if (isset($_GET['delete']))
58 // PREVENT DELETES IF DEPENDENT RECORDS IN 'debtor_trans'
60 $sql= "SELECT COUNT(*) FROM ".TB_PREF."debtor_trans WHERE tpe='$selected_id'";
61 $result = db_query($sql,"check failed");
62 check_db_error("The number of transactions using this Sales type record could not be retrieved", $sql);
64 $myrow = db_fetch_row($result);
67 display_error(_("Cannot delete this sale type because customer transactions have been created using this sales type."));
73 $sql = "SELECT COUNT(*) FROM ".TB_PREF."debtors_master WHERE sales_type='$selected_id'";
74 $result = db_query($sql,"check failed");
75 check_db_error("The number of customers using this Sales type record could not be retrieved", $sql);
77 $myrow = db_fetch_row($result);
80 display_error(_("Cannot delete this sale type because customers are currently set up to use this sales type."));
84 delete_sales_type($selected_id);
85 meta_forward($_SERVER['PHP_SELF']);
87 } //end if sales type used in debtor transactions or in customers set up
90 //----------------------------------------------------------------------------------------------------
92 $result = get_all_sales_types();
94 start_table("$table_style width=30%");
96 $th = array (_('Type Name'), _('Factor'), _('Tax Incl'), '','');
99 $base_sales = get_base_sales_type();
101 while ($myrow = db_fetch($result))
103 if ($myrow["id"] == $base_sales)
104 start_row("class='overduebg'");
106 alt_table_row_color($k);
107 label_cell($myrow["sales_type"]);
108 $f = number_format2($myrow["factor"],4);
109 if($myrow["id"] == $base_sales) $f = "<I>"._('Base')."</I>";
111 label_cell($myrow["tax_included"] ? _('Yes'):_('No'), 'align=center');
112 edit_link_cell("selected_id=".$myrow["id"]);
113 delete_link_cell("selected_id=".$myrow["id"]."&delete=1");
118 display_note(_("Marked sales type is the company base pricelist for prices calculations."), 0, 0, "class='overduefg'");
120 //----------------------------------------------------------------------------------------------------
122 hyperlink_no_params($_SERVER['PHP_SELF'], _("New Sales type"));
125 if (!isset($_POST['tax_included']))
126 $_POST['tax_included'] = 0;
127 if (!isset($_POST['base']))
130 start_table("$table_style2 width=30%");
132 if ($selected_id != -1)
135 $myrow = get_sales_type($selected_id);
137 $_POST['sales_type'] = $myrow["sales_type"];
138 $_POST['tax_included'] = $myrow["tax_included"];
139 $_POST['factor'] = number_format2($myrow["factor"],4);
141 hidden('selected_id', $selected_id);
144 text_row_ex(_("Sales Type Name").':', 'sales_type', 20);
145 amount_row(_("Calculation factor").':', 'factor');
146 check_row(_("Tax included").':', 'tax_included', $_POST['tax_included']);
150 submit_add_or_update_center($selected_id == -1);