X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=includes%2Fui%2Fui_lists.inc;h=bfb5c6eb3b23beadfcd58d7e1723debc09f79c68;hb=19dce8c7be29e4cc8e7be92d044259348373d456;hp=596144e174809e4bc8b7b55ffb7dd160c18e779e;hpb=14175bfc95a7ffb1303494f7915931c9096a6898;p=fa-stable.git diff --git a/includes/ui/ui_lists.inc b/includes/ui/ui_lists.inc index 596144e1..bfb5c6eb 100644 --- a/includes/ui/ui_lists.inc +++ b/includes/ui/ui_lists.inc @@ -13,13 +13,11 @@ include_once($path_to_root . "/includes/banking.inc"); include_once($path_to_root . "/includes/types.inc"); include_once($path_to_root . "/includes/current_user.inc"); -$_search_button = " "; +define('SEARCH_BUTTON', " "); -$_select_button = " "; - -$all_items = ALL_TEXT; +define('SELECT_BUTTON', " "); //---------------------------------------------------------------------------- // Universal sql combo generator @@ -214,11 +212,15 @@ $opts = array( // default options } $cat = $contact_row[$opts['category']]; if ($opts['category'] !== false && $cat != $lastcat){ + if ($lastcat!==null) + $selector .= ""; $selector .= "\n"; $lastcat = $cat; } $selector .= "\n"; } + if ($lastcat!==null) + $selector .= ""; db_free_result($result); } @@ -266,9 +268,8 @@ $opts = array( // default options // if selectable or editable list is used - add select button if ($select_submit != false || $search_button) { - global $_select_button; // button class selects form reload/ajax selector update - $selector .= sprintf($_select_button, $disabled, user_theme(), + $selector .= sprintf(SELECT_BUTTON, $disabled, user_theme(), (fallback_mode() ? '' : 'display:none;'), '_'.$name.'_update')."\n"; } @@ -282,8 +283,7 @@ $opts = array( // default options .(!fallback_mode() && !$by_id ? " style=display:none;":'') .">\n"; if ($search_submit != false || $opts['editable']) { - global $_search_button; - $edit_entry .= sprintf($_search_button, $disabled, user_theme(), + $edit_entry .= sprintf(SEARCH_BUTTON, $disabled, user_theme(), (fallback_mode() ? '' : 'display:none;'), $search_submit ? $search_submit : "_{$name}_button")."\n"; } @@ -368,7 +368,6 @@ $opts = array( // default options if ($first_id!==false) { $sel = ($found===$first_id) || ($found===false && ($spec_option===false)) ? "selected='selected'" : ''; - $selector = sprintf($first_opt, $sel).$selector; } // Prepend special option. if ($spec_option !== false) { // if special option used - add it @@ -394,8 +393,7 @@ $opts = array( // default options $selector = "".$selector."\n"; if ($select_submit != false) { // if submit on change is used - add select button - global $_select_button; - $selector .= sprintf($_select_button, $disabled, user_theme(), + $selector .= sprintf(SELECT_BUTTON, $disabled, user_theme(), (fallback_mode() ? '' : 'display:none;'), '_'.$name.'_update')."\n"; } @@ -419,9 +417,9 @@ function _format_add_curr($row) function add_edit_combo($type) { - global $path_to_root, $popup_editors, $use_icon_for_editkey; + global $path_to_root, $popup_editors, $SysPrefs; - if (!isset($use_icon_for_editkey) || $use_icon_for_editkey==0) + if (!isset($SysPrefs->use_icon_for_editkey) || $SysPrefs->use_icon_for_editkey==0) return ""; // Derive theme path $theme_path = $path_to_root . '/themes/' . user_theme(); @@ -435,7 +433,6 @@ function add_edit_combo($type) function supplier_list($name, $selected_id=null, $spec_option=false, $submit_on_change=false, $all=false, $editkey = false) { - global $all_items; $sql = "SELECT supplier_id, supp_ref, curr_code, inactive FROM ".TB_PREF."suppliers "; @@ -443,15 +440,16 @@ function supplier_list($name, $selected_id=null, $spec_option=false, $submit_on_ if ($editkey) set_editor('supplier', $name, $editkey); - + $ret = combo_input($name, $selected_id, $sql, 'supplier_id', 'supp_name', array( 'format' => '_format_add_curr', 'order' => array('supp_ref'), 'search_box' => $mode!=0, 'type' => 1, + 'search' => array("supp_ref","supp_name","gst_no"), 'spec_option' => $spec_option === true ? _("All Suppliers") : $spec_option, - 'spec_id' => $all_items, + 'spec_id' => ALL_TEXT, 'select_submit'=> $submit_on_change, 'async' => false, 'sel_hint' => $mode ? _('Press Space tab to filter by name fragment') : @@ -486,7 +484,6 @@ function supplier_list_row($label, $name, $selected_id=null, $all_option = false function customer_list($name, $selected_id=null, $spec_option=false, $submit_on_change=false, $show_inactive=false, $editkey = false) { - global $all_items; $sql = "SELECT debtor_no, debtor_ref, curr_code, inactive FROM ".TB_PREF."debtors_master "; @@ -502,8 +499,9 @@ function customer_list($name, $selected_id=null, $spec_option=false, $submit_on_ 'search_box' => $mode!=0, 'type' => 1, 'size' => 20, + 'search' => array("debtor_ref","name","tax_id"), 'spec_option' => $spec_option === true ? _("All Customers") : $spec_option, - 'spec_id' => $all_items, + 'spec_id' => ALL_TEXT, 'select_submit'=> $submit_on_change, 'async' => false, 'sel_hint' => $mode ? _('Press Space tab to filter by name fragment; F2 - entry new customer') : @@ -529,7 +527,6 @@ function customer_list_cells($label, $name, $selected_id=null, $all_option=false function customer_list_row($label, $name, $selected_id=null, $all_option = false, $submit_on_change=false, $show_inactive=false, $editkey = false) { - global $path_to_root; echo "$label"; echo customer_list($name, $selected_id, $all_option, $submit_on_change, @@ -542,7 +539,6 @@ function customer_list_row($label, $name, $selected_id=null, $all_option = false function customer_branches_list($customer_id, $name, $selected_id=null, $spec_option = true, $enabled=true, $submit_on_change=false, $editkey = false) { - global $all_items; $sql = "SELECT branch_code, branch_ref FROM ".TB_PREF."cust_branch WHERE debtor_no=" . db_escape($customer_id)." "; @@ -550,20 +546,20 @@ function customer_branches_list($customer_id, $name, $selected_id=null, if ($editkey) set_editor('branch', $name, $editkey); - $where = $enabled ? array("disable_trans = 0") : array(); + $where = $enabled ? array("inactive = 0") : array(); $ret = combo_input($name, $selected_id, $sql, 'branch_code', 'branch_ref', array( 'where' => $where, 'order' => array('branch_ref'), 'spec_option' => $spec_option === true ? _('All branches') : $spec_option, - 'spec_id' => $all_items, + 'spec_id' => ALL_TEXT, 'select_submit'=> $submit_on_change, 'sel_hint' => _('Select customer branch') ) ); if ($editkey) { $ret .= add_edit_combo('branch'); - } + } return $ret; } //------------------------------------------------------------------------------------------------ @@ -592,14 +588,13 @@ function customer_branches_list_row($label, $customer_id, $name, $selected_id=nu function locations_list($name, $selected_id=null, $all_option=false, $submit_on_change=false) { - global $all_items; $sql = "SELECT loc_code, location_name, inactive FROM ".TB_PREF."locations"; return combo_input($name, $selected_id, $sql, 'loc_code', 'location_name', array( 'spec_option' => $all_option === true ? _("All Locations") : $all_option, - 'spec_id' => $all_items, + 'spec_id' => ALL_TEXT, 'select_submit'=> $submit_on_change ) ); } @@ -738,7 +733,6 @@ function dimensions_list_row($label, $name, $selected_id=null, $no_option=false, function stock_items_list($name, $selected_id=null, $all_option=false, $submit_on_change=false, $opts=array(), $editkey = false) { - global $all_items; $sql = "SELECT stock_id, s.description, c.description, s.inactive, s.editable FROM ".TB_PREF."stock_master s,".TB_PREF."stock_category c WHERE s.category_id=c.category_id"; @@ -751,7 +745,7 @@ function stock_items_list($name, $selected_id=null, $all_option=false, array( 'format' => '_format_stock_items', 'spec_option' => $all_option===true ? _("All Items") : $all_option, - 'spec_id' => $all_items, + 'spec_id' => ALL_TEXT, 'search_box' => true, 'search' => array("stock_id", "c.description","s.description"), 'search_submit' => get_company_pref('no_item_list')!=0, @@ -761,9 +755,8 @@ function stock_items_list($name, $selected_id=null, $all_option=false, 'order' => array('c.description','stock_id') ), $opts) ); if ($editkey) - $ret .= add_edit_combo('item'); + $ret .= add_edit_combo('item'); return $ret; - } function _format_stock_items($row) @@ -794,7 +787,6 @@ function stock_items_list_row($label, $name, $selected_id=null, $all_option=fals function sales_items_list($name, $selected_id=null, $all_option=false, $submit_on_change=false, $type='', $opts=array()) { - global $all_items; // all sales codes $sql = "SELECT i.item_code, i.description, c.description, count(*)>1 as kit, i.inactive, if(count(*)>1, '0', s.editable) as editable @@ -820,7 +812,7 @@ function sales_items_list($name, $selected_id=null, $all_option=false, array( 'format' => '_format_stock_items', 'spec_option' => $all_option===true ? _("All Items") : $all_option, - 'spec_id' => $all_items, + 'spec_id' => ALL_TEXT, 'search_box' => true, 'search' => array("i.item_code", "c.description", "i.description"), 'search_submit' => get_company_pref('no_item_list')!=0, @@ -833,8 +825,11 @@ function sales_items_list($name, $selected_id=null, $all_option=false, ), $opts) ); } -function sales_items_list_cells($label, $name, $selected_id=null, $all_option=false, $submit_on_change=false) +function sales_items_list_cells($label, $name, $selected_id=null, $all_option=false, $submit_on_change=false, $editkey=false) { + if ($editkey) + set_editor('item', $name, $editkey); + if ($label != null) echo "$label\n"; echo sales_items_list($name, $selected_id, $all_option, $submit_on_change, @@ -924,7 +919,7 @@ function stock_purchasable_items_list($name, $selected_id=null, $all_option=false, $submit_on_change=false, $all=false, $editkey=false) { return stock_items_list($name, $selected_id, $all_option, $submit_on_change, - array('where'=>array("mb_flag!= 'M'"), + array('where'=>array("NOT no_purchase"), 'show_inactive'=>$all), $editkey); } // @@ -936,7 +931,7 @@ function stock_purchasable_items_list_cells($label, $name, $selected_id=null, if ($label != null) echo "$label\n"; echo stock_items_list($name, $selected_id, $all_option, $submit_on_change, - array('where'=>array("mb_flag!= 'M'"), + array('where'=>array("NOT no_purchase"), 'editable' => 30, 'cells'=>true), $editkey); } @@ -1317,29 +1312,6 @@ function sales_types_list_row($label, $name, $selected_id=null, $submit_on_chang //----------------------------------------------------------------------------------------------- -function movement_types_list($name, $selected_id=null) -{ - $sql = "SELECT id, name FROM ".TB_PREF."movement_types"; - return combo_input($name, $selected_id, $sql, 'id', 'name', array()); -} - -function movement_types_list_cells($label, $name, $selected_id=null) -{ - if ($label != null) - echo "$label\n"; - echo ""; - echo movement_types_list($name, $selected_id); - echo "\n"; -} - -function movement_types_list_row($label, $name, $selected_id=null) -{ - echo "$label"; - movement_types_list_cells(null, $name, $selected_id); - echo "\n"; -} - -//----------------------------------------------------------------------------------------------- function _format_date($row) { return sql2date($row['reconciled']); @@ -1379,14 +1351,13 @@ function bank_reconciliation_list_row($label, $account, $name, $selected_id=null function workcenter_list($name, $selected_id=null, $all_option=false) { - global $all_items; $sql = "SELECT id, name, inactive FROM ".TB_PREF."workcentres"; return combo_input($name, $selected_id, $sql, 'id', 'name', array( 'spec_option' =>$all_option===true ? _("All Suppliers") : $all_option, - 'spec_id' => $all_items, + 'spec_id' => ALL_TEXT, ) ); } @@ -1409,7 +1380,7 @@ function workcenter_list_row($label, $name, $selected_id=null, $all_option=false //----------------------------------------------------------------------------------------------- -function bank_accounts_list($name, $selected_id=null, $submit_on_change=false, $spec_option=false, $submit_on_change=false) +function bank_accounts_list($name, $selected_id=null, $submit_on_change=false, $spec_option=false) { $sql = "SELECT ".TB_PREF."bank_accounts.id, bank_account_name, bank_curr_code, inactive FROM ".TB_PREF."bank_accounts"; @@ -1441,8 +1412,9 @@ function bank_accounts_list_row($label, $name, $selected_id=null, $submit_on_cha } //----------------------------------------------------------------------------------------------- -function cash_accounts_list_row($label, $name, $selected_id=null, $submit_on_change=false) +function cash_accounts_list_row($label, $name, $selected_id=null, $submit_on_change=false, $all_option=false) { + $sql = "SELECT ".TB_PREF."bank_accounts.id, bank_account_name, bank_curr_code, inactive FROM ".TB_PREF."bank_accounts WHERE ".TB_PREF."bank_accounts.account_type=".BT_CASH; @@ -1452,6 +1424,8 @@ function cash_accounts_list_row($label, $name, $selected_id=null, $submit_on_cha echo ""; echo combo_input($name, $selected_id, $sql, 'id', 'bank_account_name', array( + 'spec_option' => $all_option, + 'spec_id' => ALL_TEXT, 'format' => '_format_add_curr', 'select_submit'=> $submit_on_change, 'async' => true @@ -1484,14 +1458,16 @@ function pos_list_row($label, $name, $selected_id=null, $spec_option=false, $sub //----------------------------------------------------------------------------------------------- // Payment type selector for current user. // -function sale_payment_list($name, $category, $selected_id=null, $submit_on_change=true) +function sale_payment_list($name, $category, $selected_id=null, $submit_on_change=true, $prepayments=true) { $sql = "SELECT terms_indicator, terms, inactive FROM ".TB_PREF."payment_terms"; - + if ($category == PM_CASH) // only cash $sql .= " WHERE days_before_due=0 AND day_in_following_month=0"; - if ($category == PM_CREDIT) // only delayed payments - $sql .= " WHERE days_before_due!=0 OR day_in_following_month!=0"; + elseif ($category == PM_CREDIT) // only delayed payments + $sql .= " WHERE days_before_due".($prepayments ? '!=': '>')."0 OR day_in_following_month!=0"; + elseif (!$prepayments) + $sql .= " WHERE days_before_due>=0"; return combo_input($name, $selected_id, $sql, 'terms_indicator', 'terms', array( @@ -1501,13 +1477,13 @@ function sale_payment_list($name, $category, $selected_id=null, $submit_on_chang } -function sale_payment_list_cells($label, $name, $category, $selected_id=null, $submit_on_change=true) +function sale_payment_list_cells($label, $name, $category, $selected_id=null, $submit_on_change=true, $prepayments=true) { if ($label != null) echo "$label\n"; echo ""; - echo sale_payment_list($name, $category, $selected_id, $submit_on_change); + echo sale_payment_list($name, $category, $selected_id, $submit_on_change, $prepayments); echo "\n"; } @@ -1574,7 +1550,6 @@ function stock_categories_list_row($label, $name, $selected_id=null, $spec_opt=f function gl_account_types_list($name, $selected_id=null, $all_option=false, $all=true) { - global $all_items; $sql = "SELECT id, name FROM ".TB_PREF."chart_types"; @@ -1583,7 +1558,7 @@ function gl_account_types_list($name, $selected_id=null, $all_option=false, $all 'format' => '_format_account', 'order' => array('class_id', 'id', 'parent'), 'spec_option' =>$all_option, - 'spec_id' => $all_items + 'spec_id' => ALL_TEXT ) ); } @@ -1801,37 +1776,37 @@ function wo_types_list_row($label, $name, $selected_id=null) function dateformats_list_row($label, $name, $value=null) { - global $dateformats; + global $SysPrefs; echo "$label\n"; - echo array_selector( $name, $value, $dateformats ); + echo array_selector( $name, $value, $SysPrefs->dateformats ); echo "\n"; } function dateseps_list_row($label, $name, $value=null) { - global $dateseps; + global $SysPrefs; echo "$label\n"; - echo array_selector( $name, $value, $dateseps ); + echo array_selector( $name, $value, $SysPrefs->dateseps ); echo "\n"; } function thoseps_list_row($label, $name, $value=null) { - global $thoseps; + global $SysPrefs; echo "$label\n"; - echo array_selector( $name, $value, $thoseps ); + echo array_selector( $name, $value, $SysPrefs->thoseps ); echo "\n"; } function decseps_list_row($label, $name, $value=null) { - global $decseps; + global $SysPrefs; echo "$label\n"; - echo array_selector( $name, $value, $decseps ); + echo array_selector( $name, $value, $SysPrefs->decseps ); echo "\n"; } @@ -1858,10 +1833,10 @@ function themes_list_row($label, $name, $value=null) function pagesizes_list_row($label, $name, $value=null) { - global $pagesizes; + global $SysPrefs; $items = array(); - foreach ($pagesizes as $pz) + foreach ($SysPrefs->pagesizes as $pz) $items[$pz] = $pz; echo "$label\n"; @@ -1912,8 +1887,7 @@ function journal_types_list_cells($label, $name, $value=null, $submit_on_change= $items = $systypes_array; // exclude quotes, orders and dimensions - foreach (array(ST_PURCHORDER, ST_WORKORDER, ST_SALESORDER, ST_DIMENSION, - ST_SALESQUOTE, ST_LOCTRANSFER) as $excl) + foreach (array(ST_PURCHORDER, ST_SALESORDER, ST_DIMENSION, ST_SALESQUOTE, ST_LOCTRANSFER) as $excl) unset($items[$excl]); echo array_selector($name, $value, $items, @@ -1929,13 +1903,12 @@ function journal_types_list_cells($label, $name, $value=null, $submit_on_change= function cust_allocations_list_cells($label, $name, $selected=null) { - global $all_items; if ($label != null) label_cell($label); echo "\n"; $allocs = array( - $all_items=>_("All Types"), + ALL_TEXT=>_("All Types"), '1'=> _("Sales Invoices"), '2'=> _("Overdue Invoices"), '3' => _("Payments"), @@ -1948,11 +1921,10 @@ function cust_allocations_list_cells($label, $name, $selected=null) function supp_allocations_list_cell($name, $selected=null) { - global $all_items; echo "\n"; $allocs = array( - $all_items=>_("All Types"), + ALL_TEXT=>_("All Types"), '1'=> _("Invoices"), '2'=> _("Overdue Invoices"), '3' => _("Payments"), @@ -1965,11 +1937,10 @@ function supp_allocations_list_cell($name, $selected=null) function supp_transactions_list_cell($name, $selected=null) { - global $all_items; echo "\n"; $allocs = array( - $all_items=>_("All Types"), + ALL_TEXT=>_("All Types"), '6'=>_("GRNs"), '1'=> _("Invoices"), '2'=> _("Overdue Invoices"), @@ -2171,7 +2142,6 @@ function class_types_list_row($label, $name, $selected_id=null, $submit_on_chang function security_roles_list($name, $selected_id=null, $new_item=false, $submit_on_change=false, $show_inactive = false) { - global $all_items; $sql = "SELECT id, role, inactive FROM ".TB_PREF."security_roles"; @@ -2368,4 +2338,157 @@ function payment_services($name) )); } -?> +function tax_algorithm_list($name, $value=null, $submit_on_change = false) +{ + global $tax_algorithms; + + return array_selector($name, $value, $tax_algorithms, + array( + 'select_submit'=> $submit_on_change, + 'async' => true, + ) + ); +} + +function tax_algorithm_list_cells($label, $name, $value=null, $submit_on_change=false) +{ + if ($label != null) + echo "$label\n"; + echo ""; + echo tax_algorithm_list($name, $value, $submit_on_change); + echo "\n"; +} + +function tax_algorithm_list_row($label, $name, $value=null, $submit_on_change=false) +{ + echo "$label"; + tax_algorithm_list_cells(null, $name, $value, $submit_on_change); + echo "\n"; +} + +function refline_list($name, $type, $value=null, $spec_option=false) +{ + $sql = "SELECT id, prefix, inactive FROM ".TB_PREF."reflines"; + + $where = array(); + + if (isset($type)) + $where = array('`trans_type`='.db_escape($type)); + + return combo_input($name, $value, $sql, 'id', 'prefix', + array( + 'order'=>array('prefix'), + 'spec_option' => $spec_option, + 'spec_id' => '', + 'type' => 2, + 'where' => $where, + 'select_submit' => true, + ) + ); +} + +function refline_list_row($label, $name, $type, $selected_id=null, $spec_option=false) +{ + echo ""; + if ($label != null) + echo "$label\n"; + echo ""; + + echo refline_list($name, $type, $selected_id, $spec_option); + echo "\n"; +} + + +//---------------------------------------------------------------------------------------------- + +function subledger_list($name, $account, $selected_id=null) +{ + + $type = is_subledger_account($account); + if (!$type) + return ''; + + if($type > 0) + $sql = "SELECT DISTINCT d.debtor_no as id, debtor_ref as name + FROM " + .TB_PREF."debtors_master d," + .TB_PREF."cust_branch c + WHERE d.debtor_no=c.debtor_no AND c.receivables_account=".db_escape($account); + else + $sql = "SELECT supplier_id as id, supp_ref as name + FROM " + .TB_PREF."suppliers s + WHERE s.payable_account=".db_escape($account); + + $mode = get_company_pref('no_customer_list'); + + return combo_input($name, $selected_id, $sql, 'id', 'name', + array( + 'type' => 1, + 'size' => 20, + 'async' => false, + ) ); +} + +function subledger_list_cells($label, $name, $account, $selected_id=null) +{ + if ($label != null) + echo "$label\n"; + echo ""; + echo subledger_list($name, $account, $selected_id); + echo "\n"; +} + +function subledger_list_row($label, $name, $selected_id=null, $all_option = false, + $submit_on_change=false, $show_inactive=false, $editkey = false) +{ + echo "$label"; + echo subledger_list($name, $account, $selected_id); + echo "\n\n"; +} + +function accounts_type_list_row($label, $name, $selected_id=null) +{ + echo ""; + if ($label != null) + echo "$label\n"; + echo ""; + $sel = array(_("Numeric"), _("Alpha Numeric"), _("ALPHA NUMERIC")); + echo array_selector($name, $selected_id, $sel); + echo "\n"; +} + +function users_list_cells($label, $name, $selected_id=null, $submit_on_change=false, $spec_opt=true) +{ + $where = false; + $sql = " SELECT user_id, real_name FROM ".TB_PREF."users"; + + if ($label != null) + echo "$label\n"; + echo ""; + + echo combo_input($name, $selected_id, $sql, 'user_id', 'real_name', + array( + 'spec_option' => $spec_opt===true ?_("All users") : $spec_opt, + 'spec_id' => '', + 'order' => 'real_name', + 'select_submit'=> $submit_on_change, + 'async' => false + ) ); + echo ""; + +} + +function collations_list_row($label, $name, $selected_id=null) +{ + global $supported_collations; + + echo ""; + if ($label != null) + echo "$label\n"; + echo ""; + + echo array_selector($name, $selected_id, $supported_collations, + array('select_submit'=> false) ); + echo "\n"; +}