Rerun. Update material cost when quantity on hand is zero. @notrinos.
[fa-stable.git] / sales / manage / sales_points.php
index b7f292defb58532065020402efb99fb7bb1faecb..972e3afc6dbbaeda446198dce8d8217de3c61db4 100644 (file)
@@ -9,11 +9,11 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
     See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
-$page_security = 15;
-$path_to_root="../..";
+$page_security = 'SA_POSSETUP';
+$path_to_root = "../..";
 include_once($path_to_root . "/includes/session.inc");
 
-page(_("POS settings"));
+page(_($help_context = "POS settings"));
 
 include_once($path_to_root . "/includes/ui.inc");
 include_once($path_to_root . "/sales/includes/db/sales_points_db.inc");
@@ -29,13 +29,6 @@ function can_process()
                set_focus('pos_name');
                return false;
        }
-       if (!check_value('cash') && !check_value('credit'))
-       {
-               display_error(_("You must allow cash or credit sale."));
-               set_focus('credit');
-               return false;
-       }
-
        return true;
 }
 
@@ -64,25 +57,33 @@ if ($Mode=='UPDATE_ITEM' && can_process())
 
 if ($Mode == 'Delete')
 {
-       delete_sales_point($selected_id);
-       display_notification(_('Selected point of sale has been deleted'));
-       $Mode = 'RESET';
+       if (key_in_foreign_table($selected_id, 'users', 'pos'))
+       {
+               display_error(_("Cannot delete this POS because it is used in users setup."));
+       } else {
+               delete_sales_point($selected_id);
+               display_notification(_('Selected point of sale has been deleted'));
+               $Mode = 'RESET';
+       }
 }
 
 if ($Mode == 'RESET')
 {
        $selected_id = -1;
+       $sav = get_post('show_inactive');
        unset($_POST);
+       $_POST['show_inactive'] = $sav;
 }
 //----------------------------------------------------------------------------------------------------
 
-$result = get_all_sales_points();
+$result = get_all_sales_points(check_value('show_inactive'));
 
 start_form();
-start_table("$table_style");
+start_table(TABLESTYLE);
 
 $th = array (_('POS Name'), _('Credit sale'), _('Cash sale'), _('Location'), _('Default account'), 
         '','');
+inactive_control_column($th);
 table_header($th);
 $k = 0;
 
@@ -94,23 +95,21 @@ while ($myrow = db_fetch($result))
        label_cell($myrow['cash_sale'] ? _('Yes') : _('No'));
        label_cell($myrow["location_name"], "");
        label_cell($myrow["bank_account_name"], "");
+       inactive_control_cell($myrow["id"], $myrow["inactive"], "sales_pos", 'id');
        edit_button_cell("Edit".$myrow['id'], _("Edit"));
        delete_button_cell("Delete".$myrow['id'], _("Delete"));
        end_row();
 }
 
-end_table();
-end_form();
-echo '<br>';
+inactive_control_row($th);
+end_table(1);
 //----------------------------------------------------------------------------------------------------
 
-start_form();
-
 $cash = db_has_cash_accounts();
 
 if (!$cash) display_note(_("To have cash POS first define at least one cash bank account."));
 
-start_table($table_style2);
+start_table(TABLESTYLE2);
 
 if ($selected_id != -1)
 {
@@ -129,12 +128,11 @@ if ($selected_id != -1)
 
 text_row_ex(_("Point of Sale Name").':', 'name', 20, 30);
 if($cash) {
-       check_row(_('Allowed credit sale'), 'credit', check_value('credit_sale'));
-       check_row(_('Allowed cash sale'), 'cash',  check_value('cash_sale'));
+       check_row(_('Allowed credit sale terms selection:'), 'credit', check_value('credit_sale'));
+       check_row(_('Allowed cash sale terms selection:'), 'cash',  check_value('cash_sale'));
        cash_accounts_list_row(_("Default cash account").':', 'account');
 } else {
        hidden('credit', 1);
-       hidden('cash', 0);
        hidden('account', 0);
 }
 
@@ -147,4 +145,3 @@ end_form();
 
 end_page();
 
-?>