Stock item types moved to types.inc
[fa-stable.git] / includes / ui / ui_lists.inc
index 9c8cb2d6f22d48a6605063fd152e925cb967dd19..a44a115eafd7826f325196f52e583b82542d9692 100644 (file)
@@ -1,5 +1,14 @@
 <?php
-
+/**********************************************************************
+    Copyright (C) FrontAccounting, LLC.
+       Released under the terms of the GNU General Public License, GPL, 
+       as published by the Free Software Foundation, either version 3 
+       of the License, or (at your option) any later version.
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
+    See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
+***********************************************************************/
 include_once($path_to_root . "/includes/banking.inc");
 include_once($path_to_root . "/includes/reserved.inc");
 include_once($path_to_root . "/includes/types.inc");
@@ -133,7 +142,9 @@ $opts = array(              // default options
                }
        }
        if ($opts['order'] != false) {
-               $sql .= ' ORDER BY '.$opts['order'];
+               if (!is_array($opts['order']))
+                       $opts['order'] = array($opts['order']);
+               $sql .= ' ORDER BY '.implode(',',$opts['order']);
        }
 
        $sql .= $limit;
@@ -640,7 +651,8 @@ function stock_items_list($name, $selected_id=null, $all_option=false, $submit_o
                'search_submit' => get_company_pref('no_item_list')!=0,
                'size'=>10,
                'select_submit'=> $submit_on_change,
-               'category' => 2
+               'category' => 2,
+               'order' => array('c.description','stock_id')
          ), $opts) );
 }
 
@@ -683,10 +695,9 @@ function sales_items_list($name, $selected_id=null, $all_option=false,
                        ON i.category_id=c.category_id";
 
        if ($type == 'local')   { // exclude foreign codes
-               $sql .= " WHERE NOT i.is_foreign"; 
+               $sql .= " WHERE !i.is_foreign"; 
        } elseif ($type == 'kits') { // sales kits
-               $sql .= " WHERE NOT i.is_foreign 
-                       AND NOT i.item_code=i.stock_id";
+               $sql .= " WHERE !i.is_foreign AND i.item_code!=i.stock_id";
        }
                                
        $sql .= " GROUP BY i.item_code";
@@ -702,8 +713,8 @@ function sales_items_list($name, $selected_id=null, $all_option=false,
                'search_submit' => get_company_pref('no_item_list')!=0,
                'size'=>15,
                'select_submit'=> $submit_on_change,
-               'order' => 'i.item_code',
-               'category' => 2
+               'category' => 2,
+               'order' => array('c.description','i.item_code')
          ), $opts) );
 }
 
@@ -886,18 +897,14 @@ function stock_purchasable_items_list_row($label, $name, $selected_id=null,
 
 function stock_item_types_list_row($label, $name, $selected_id=null, $enabled=true)
 {
-       $types = array(
-               'M' => _("Manufactured"),
-               'B' => _("Purchased"),
-               'D' => _("Service")
-       );
+       global $stock_types;
 
        echo "<tr>";
        if ($label != null)
                echo "<td>$label</td>\n";
        echo "<td>";
 
-       array_selector($name, $selected_id, $types, 
+       array_selector($name, $selected_id, $stock_types, 
                array( 
                        'select_submit'=> true, 
                        'disabled' => !$enabled) );
@@ -1281,26 +1288,38 @@ function movement_types_list_row($label, $name, $selected_id=null)
 }
 
 //-----------------------------------------------------------------------------------------------
-/*
-function bank_trans_types_list($name, $selected_id=null)
+function _format_date($row)
 {
-       $sql = "SELECT id, name FROM ".TB_PREF."bank_trans_types";
-       combo_input($name, $selected_id, $sql, 'id', 'name', array());
+       return sql2date($row['reconciled']);
 }
 
-function bank_trans_types_list_cells($label, $name, $selected_id=null)
+function bank_reconciliation_list($account, $name, $selected_id=null, $submit_on_change=false, $special_option=false)
+{
+       $sql = "SELECT reconciled, reconciled FROM ".TB_PREF."bank_trans
+               WHERE bank_act=".db_escape($account)." AND reconciled IS NOT NULL
+               GROUP BY reconciled";
+       combo_input($name, $selected_id, $sql, 'id', 'reconciled',
+       array(
+               'spec_option' => $special_option,
+               'format' => '_format_date',
+               'spec_id' => '',
+               'select_submit'=> $submit_on_change
+       ) );
+}
+
+function bank_reconciliation_list_cells($label,$account, $name, $selected_id=null, $submit_on_change=false, $special_option=false)
 {
        if ($label != null)
                echo "<td>$label</td>\n";
        echo "<td>";
-       bank_trans_types_list($name, $selected_id);
+       bank_reconciliation_list($account, $name, $selected_id, $submit_on_change, $special_option);
        echo "</td>\n";
 }
-
-function bank_trans_types_list_row($label, $name, $selected_id=null)
+/*
+function bank_reconciliation_list_row($label, $account, $name, $selected_id=null, $submit_on_change=false, $special_option=false)
 {
        echo "<tr>\n";
-       bank_trans_types_list_cells($label, $name, $selected_id);
+       bank_reconciliation_list_cells($label, $account, $name, $selected_id, $submit_on_change, $special_option);
        echo "</tr>\n";
 }
 */
@@ -1458,26 +1477,29 @@ function class_list_row($label, $name, $selected_id=null, $submit_on_change=fals
 
 //-----------------------------------------------------------------------------------------------
 
-function stock_categories_list($name, $selected_id=null)
+function stock_categories_list($name, $selected_id=null, $submit_on_change=false)
 {
        $sql = "SELECT category_id, description FROM ".TB_PREF."stock_category";
        combo_input($name, $selected_id, $sql, 'category_id', 'description',
-       array('order'=>'category_id'));
+       array('order'=>'category_id',
+               'select_submit'=> $submit_on_change,
+               'async' => true
+       ));
 }
 
-function stock_categories_list_cells($label, $name, $selected_id=null)
+function stock_categories_list_cells($label, $name, $selected_id=null, $submit_on_change=false)
 {
        if ($label != null)
                echo "<td>$label</td>\n";
        echo "<td>";
-       stock_categories_list($name, $selected_id);
+       stock_categories_list($name, $selected_id, $submit_on_change);
        echo "</td>\n";
 }
 
-function stock_categories_list_row($label, $name, $selected_id=null)
+function stock_categories_list_row($label, $name, $selected_id=null, $submit_on_change=false)
 {
        echo "<tr>\n";
-       stock_categories_list_cells($label, $name, $selected_id);
+       stock_categories_list_cells($label, $name, $selected_id, $submit_on_change);
        echo "</tr>\n";
 }
 
@@ -1518,7 +1540,7 @@ function gl_account_types_list_row($label, $name, $selected_id=null, $all_option
 
 //-----------------------------------------------------------------------------------------------
 function gl_all_accounts_list($name, $selected_id=null, $skip_bank_accounts=false,
-       $show_group=true, $cells=false, $all_option=false, $submit_on_change=false)
+       $cells=false, $all_option=false, $submit_on_change=false)
 {
        if ($skip_bank_accounts)
                $sql = "SELECT chart.account_code, chart.account_name, type.name
@@ -1537,7 +1559,7 @@ function gl_all_accounts_list($name, $selected_id=null, $skip_bank_accounts=fals
                'format' => '_format_account',
                'spec_option' => $all_option===true ?  _("Use Item Sales Accounts") : $all_option,
                'spec_id' => '',
-               'order' => 'account_code',
+               'order' => array('name','account_code'),
                'search_box' => $cells,
                        'search_submit' => false,
                        'size' => 12,
@@ -1545,7 +1567,7 @@ function gl_all_accounts_list($name, $selected_id=null, $skip_bank_accounts=fals
                        'cells' => true,
                'select_submit'=> $submit_on_change,
                'async' => false,
-               'category' => ($show_group ? 2 : false)
+               'category' => 2
        ) );
 
 }
@@ -1555,22 +1577,23 @@ function _format_account($row)
                return $row[0] .  "&nbsp;&nbsp;&nbsp;&nbsp;" . $row[1];
 }
 
-function gl_all_accounts_list_cells($label, $name, $selected_id=null, $skip_bank_accounts=false,
-       $show_group=false, $cells=false, $all_option=false)
+function gl_all_accounts_list_cells($label, $name, $selected_id=null, 
+       $skip_bank_accounts=false, $cells=false, $all_option=false)
 {
        if ($label != null)
                echo "<td>$label</td>\n";
        echo "<td>";
-       gl_all_accounts_list($name, $selected_id, $skip_bank_accounts, $show_group, $cells, $all_option);
+       gl_all_accounts_list($name, $selected_id, 
+               $skip_bank_accounts, $cells, $all_option);
        echo "</td>\n";
 }
 
-function gl_all_accounts_list_row($label, $name, $selected_id=null, $skip_bank_accounts=false,
-       $show_group=false, $cells=false, $all_option=false)
+function gl_all_accounts_list_row($label, $name, $selected_id=null, 
+       $skip_bank_accounts=false, $cells=false, $all_option=false)
 {
        echo "<tr>\n";
-       gl_all_accounts_list_cells($label, $name, $selected_id, $skip_bank_accounts,
-               $show_group, $cells, $all_option);
+       gl_all_accounts_list_cells($label, $name, $selected_id, 
+               $skip_bank_accounts, $cells, $all_option);
        echo "</tr>\n";
 }
 
@@ -1700,49 +1723,6 @@ function payment_person_types_list_row($label, $name, $selected_id=null, $relate
        return $str;
 }
 
-//------------------------------------------------------------------------------------------------
-
-function quick_entries_list($name, $selected_id=null, $expense=-1, $bank_only=-1, $submit_on_change=false)
-{
-       $where = false;
-       $sql = "SELECT id, description FROM ".TB_PREF."quick_entries";
-       if ($expense != -1)
-       {
-               $sql .= " WHERE deposit=$expense";
-               $where = true;
-       }       
-       if ($bank_only != -1)
-       {
-               if ($where)
-                       $sql .= " AND bank_only=$bank_only";
-               else    
-                       $sql .= " WHERE bank_only=$bank_only";
-       }
-       combo_input($name, $selected_id, $sql, 'id', 'description',
-               array(
-                       'spec_id' => '',
-                       'order' => 'description',
-                       'select_submit'=> $submit_on_change,
-                       'async' => false
-               ) );
-
-}
-
-function quick_entries_list_cells($label, $name, $selected_id=null, $expense=-1, $bank_only=-1, $submit_on_change=false)
-{
-       echo "<td>$label</td><td>\n";
-       quick_entries_list($name, $selected_id, $expense, $bank_only, $submit_on_change);
-       echo "</td>";
-}
-
-function quick_entries_list_row($label, $name, $selected_id=null, $expense=-1, $bank_only=-1, $submit_on_change=false)
-{
-       echo "<tr>\n";
-       quick_entries_list_cells($label, $name, $selected_id, $expense, $bank_only, $submit_on_change);
-       echo "</tr>\n";
-}
-
-
 //------------------------------------------------------------------------------------------------
 
 function wo_types_list($name, $selected_id=null)
@@ -2025,5 +2005,63 @@ function printers_list($name, $selected_id=null, $spec_opt=false, $submit_on_cha
                 ));
 }
 
+//------------------------------------------------------------------------------------------------
+
+function quick_entries_list($name, $selected_id=null, $type=null, $submit_on_change=false)
+{
+       $where = false;
+       $sql = "SELECT id, description FROM ".TB_PREF."quick_entries";
+       if ($type != null)
+               $sql .= " WHERE type=$type";
+
+       combo_input($name, $selected_id, $sql, 'id', 'description',
+               array(
+                       'spec_id' => '',
+                       'order' => 'description',
+                       'select_submit'=> $submit_on_change,
+                       'async' => false
+               ) );
+
+}
+
+function quick_entries_list_cells($label, $name, $selected_id=null, $type, $submit_on_change=false)
+{
+       echo "<td>$label</td><td>\n";
+       quick_entries_list($name, $selected_id, $type, $submit_on_change);
+       echo "</td>";
+}
+
+function quick_entries_list_row($label, $name, $selected_id=null, $type, $submit_on_change=false)
+{
+       echo "<tr>\n";
+       quick_entries_list_cells($label, $name, $selected_id, $type, $submit_on_change);
+       echo "</tr>\n";
+}
+
+
+function quick_actions_list_row($label, $name, $selected_id=null, $submit_on_change=false)
+{
+       global $quick_actions;
+       
+       echo "<tr><td>$label</td><td>";
+       array_selector($name, $selected_id, $quick_actions, 
+               array( 
+                       'select_submit'=> $submit_on_change
+               ) );
+       echo "</td></tr>\n";
+}
+
+function quick_entry_types_list_row($label, $name, $selected_id=null, $submit_on_change=false)
+{
+       global $quick_entry_types;
+               
+       echo "<tr><td>$label</td><td>";
+       array_selector($name, $selected_id, $quick_entry_types, 
+               array( 
+                       'select_submit'=> $submit_on_change
+                       ) );
+       echo "</td></tr>\n";
+}
+
 
 ?>
\ No newline at end of file