X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=includes%2Fui%2Fui_lists.inc;h=3da4154120587cab4e572549c1c897bd76d7b17a;hb=4e31fd74b18825d8ac35f4a38b96ef33a08c2025;hp=0ce2546a3e8c469c5618a39654aeb67ffe6b1249;hpb=f12dbe7523bb1abc6cd69b009ef8f0be838f5348;p=fa-stable.git
diff --git a/includes/ui/ui_lists.inc b/includes/ui/ui_lists.inc
index 0ce2546a..3da41541 100644
--- a/includes/ui/ui_lists.inc
+++ b/includes/ui/ui_lists.inc
@@ -121,8 +121,15 @@ $opts = array( // default options
}
// sql completion
if (count($opts['where'])) {
- $sql .= strpos($sql, 'WHERE')==false ? ' WHERE ':' AND ';
- $sql .= '('. implode($opts['where'], ' AND ') . ')';
+ $where = strpos($sql, 'WHERE')==false ? ' WHERE ':' AND ';
+ $where .= '('. implode($opts['where'], ' AND ') . ')';
+ $group_pos = strpos($sql, 'GROUP BY');
+ if ($group_pos) {
+ $group = substr($sql, $group_pos);
+ $sql = substr($sql, 0, $group_pos) . $where.' '.$group;
+ } else {
+ $sql .= $where;
+ }
}
if ($opts['order'] != false) {
$sql .= ' ORDER BY '.$opts['order'];
@@ -133,16 +140,13 @@ $opts = array( // default options
$selector = $first_opt = '';
$first_id = false;
$found = false;
-//if($name=='SelectStockFromList') display_error($sql);
+//if($name=='stock_id') display_error($sql);
if($result = db_query($sql)) {
while ($contact_row = db_fetch($result)) {
$value = $contact_row[0];
$descr = $opts['format']==null ? $contact_row[1] :
call_user_func($opts['format'], $contact_row);
$sel = '';
- if (get_post($search_submit) && ($txt === $value)) {
- $selected_id = $value;
- }
if (get_post($search_submit) && ($txt === $value)) {
$selected_id = $value;
}
@@ -191,7 +195,7 @@ $opts = array( // default options
global $_select_button;
// button class selects form reload/ajax selector update
$selector .= sprintf($_select_button, $disabled, user_theme(),
- (in_ajax() ? 'display:none;':''),
+ (fallback_mode() ? '' : 'display:none;'),
$select_submit)."\n";
}
// ------ make combo ----------
@@ -202,12 +206,12 @@ $opts = array( // default options
$opts['size']."' maxlength='".$opts['max'].
"' value='$txt' class='$class' rel='$name' autocomplete='off' title='"
.$opts['box_hint']."'"
- .(in_ajax() && !$by_id ? " style=display:none;":'')
+ .(!fallback_mode() && !$by_id ? " style=display:none;":'')
.">\n";
if ($search_submit != false) {
global $_search_button;
$edit_entry .= sprintf($_search_button, $disabled, user_theme(),
- (in_ajax() ? 'display:none;':''),
+ (fallback_mode() ? '' : 'display:none;'),
$search_submit)."\n";
}
}
@@ -310,7 +314,7 @@ $opts = array( // default options
if ($select_submit != false) { // if submit on change is used - add select button
global $_select_button;
$selector .= sprintf($_select_button, $disabled, user_theme(),
- (in_ajax() ? 'display:none;':''),
+ (fallback_mode() ? '' : 'display:none;'),
$select_submit)."\n";
}
default_focus($name);
@@ -589,22 +593,22 @@ $options = array(
}
function dimensions_list_cells($label, $name, $selected_id=null, $no_option=false, $showname=null,
- $showclosed=false, $showtype=0)
+ $showclosed=false, $showtype=0, $submit_on_change=false)
{
if ($label != null)
echo "
$label | \n";
echo "";
- $str = dimensions_list($name, $selected_id, $no_option, $showname, false, $showclosed, $showtype);
+ $str = dimensions_list($name, $selected_id, $no_option, $showname, $submit_on_change, $showclosed, $showtype);
echo " | \n";
return $str;
}
function dimensions_list_row($label, $name, $selected_id=null, $no_option=false, $showname=null,
- $showclosed=false, $showtype=0)
+ $showclosed=false, $showtype=0, $submit_on_change=false)
{
echo "\n";
$str = dimensions_list_cells($label, $name, $selected_id, $no_option, $showname,
- $showclosed, $showtype);
+ $showclosed, $showtype, $submit_on_change);
echo "
\n";
return $str;
}
@@ -655,6 +659,73 @@ function stock_items_list_row($label, $name, $selected_id=null, $all_option=fals
return $str;
}
*/
+//---------------------------------------------------------------------------------------------------
+//
+// Select item via foreign code.
+//
+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
+ FROM
+ ".TB_PREF."item_codes i
+ LEFT JOIN
+ ".TB_PREF."stock_category c
+ ON i.category_id=c.category_id";
+
+ if ($type == 'local') { // exclude foreign codes
+ $sql .= " WHERE NOT i.is_foreign";
+ } elseif ($type == 'kits') { // sales kits
+ $sql .= " WHERE NOT i.is_foreign
+ AND NOT i.item_code=i.stock_id";
+ }
+
+ $sql .= " GROUP BY i.item_code";
+
+ return combo_input($name, $selected_id, $sql, 'i.item_code', 'c.description',
+ array_merge(
+ array(
+ 'format' => '_format_stock_items',
+ 'spec_option' => $all_option===true ? _("All Items") : $all_option,
+ 'spec_id' => $all_items,
+ 'search_box' => true,
+ 'search' => array("i.item_code", "c.description"),
+ 'search_submit' => get_company_pref('no_item_list')!=0,
+ 'size'=>15,
+ 'select_submit'=> $submit_on_change,
+ 'order' => 'i.item_code'
+ ), $opts) );
+}
+
+function sales_items_list_cells($label, $name, $selected_id=null, $all_option=false, $submit_on_change=false)
+{
+ if ($label != null)
+ echo "$label | \n";
+ $str = sales_items_list($name, $selected_id, $all_option, $submit_on_change,
+ '', array('cells'=>true));
+ return $str;
+}
+
+function sales_kits_list($name, $selected_id=null, $all_option=false, $submit_on_change=false)
+{
+ $str = sales_items_list($name, $selected_id, $all_option, $submit_on_change,
+ 'kits', array('cells'=>false));
+ return $str;
+}
+
+function sales_local_items_list_row($label, $name, $selected_id=null, $all_option=false, $submit_on_change=false)
+{
+ echo "";
+ if ($label != null)
+ echo "$label | \n";
+ echo "";
+ $str = sales_items_list($name, $selected_id, $all_option, $submit_on_change,
+ 'local', array('cells'=>false));
+ echo " |
";
+ return $str;
+}
//------------------------------------------------------------------------------------
function base_stock_items_list($where, $name, $selected_id=null,
@@ -890,26 +961,26 @@ function tax_groups_list($name, $selected_id=null,
array(
'order' => 'id',
'spec_option' => $none_option,
- 'spec_id' => 0,
+ 'spec_id' => reserved_words::get_all_numeric(),
'select_submit'=> $submit_on_change,
'async' => false,
) );
}
-function tax_groups_list_cells($label, $name, $selected_id=null, $submit_on_change=false)
+function tax_groups_list_cells($label, $name, $selected_id=null, $none_option=false, $submit_on_change=false)
{
if ($label != null)
echo "$label | \n";
echo "";
- $str = tax_groups_list($name, $selected_id, false, $submit_on_change);
+ $str = tax_groups_list($name, $selected_id, $none_option, $submit_on_change);
echo " | \n";
return $str;
}
-function tax_groups_list_row($label, $name, $selected_id=null, $submit_on_change=false)
+function tax_groups_list_row($label, $name, $selected_id=null, $none_option=false, $submit_on_change=false)
{
echo "\n";
- $str = tax_groups_list_cells($label, $name, $selected_id, false, $submit_on_change);
+ $str = tax_groups_list_cells($label, $name, $selected_id, $none_option, $submit_on_change);
echo "
\n";
return $str;
}
@@ -1012,6 +1083,68 @@ function sales_areas_list_row($label, $name, $selected_id=null)
//------------------------------------------------------------------------------------
+function sales_groups_list($name, $selected_id=null, $special_option=false)
+{
+ $sql = "SELECT id, description FROM ".TB_PREF."groups";
+ combo_input($name, $selected_id, $sql, 'id', 'description', array(
+ 'spec_option' => $special_option===true ? ' ' : $special_option,
+ 'order' => 'description', 'spec_id' => 0,
+ ));
+}
+
+function sales_groups_list_cells($label, $name, $selected_id=null, $special_option=false)
+{
+ if ($label != null)
+ echo "$label | \n";
+ echo "";
+ sales_groups_list($name, $selected_id, $special_option);
+ echo " | \n";
+}
+
+function sales_groups_list_row($label, $name, $selected_id=null, $special_option=false)
+{
+ echo "\n";
+ sales_groups_list_cells($label, $name, $selected_id, $special_option);
+ echo "
\n";
+}
+
+//------------------------------------------------------------------------------------
+
+function _format_template_items($row)
+{
+ return ($row[0] . " - " . _("Amount") . " ".$row[1]);
+}
+
+function templates_list($name, $selected_id=null, $special_option=false)
+{
+ $sql = "SELECT sorder.order_no, Sum(line.unit_price*line.quantity*(1-line.discount_percent)) AS OrderValue
+ FROM ".TB_PREF."sales_orders as sorder, ".TB_PREF."sales_order_details as line
+ WHERE sorder.order_no = line.order_no AND sorder.type = 1 GROUP BY line.order_no";
+ combo_input($name, $selected_id, $sql, 'order_no', 'OrderValue', array(
+ 'format' => '_format_template_items',
+ 'spec_option' => $special_option===true ? ' ' : $special_option,
+ 'order' => 'order_no', 'spec_id' => 0,
+ ));
+}
+
+function templates_list_cells($label, $name, $selected_id=null, $special_option=false)
+{
+ if ($label != null)
+ echo "$label | \n";
+ echo "";
+ templates_list($name, $selected_id, $special_option);
+ echo " | \n";
+}
+
+function templates_list_row($label, $name, $selected_id=null, $special_option=false)
+{
+ echo "\n";
+ templates_list_cells($label, $name, $selected_id, $special_option);
+ echo "
\n";
+}
+
+//------------------------------------------------------------------------------------
+
function workorders_list($name, $selected_id=null)
{
$sql = "SELECT id, wo_ref FROM ".TB_PREF."workorders WHERE closed=0";
@@ -1140,7 +1273,7 @@ function movement_types_list_row($label, $name, $selected_id=null)
}
//-----------------------------------------------------------------------------------------------
-
+/*
function bank_trans_types_list($name, $selected_id=null)
{
$sql = "SELECT id, name FROM ".TB_PREF."bank_trans_types";
@@ -1162,7 +1295,7 @@ function bank_trans_types_list_row($label, $name, $selected_id=null)
bank_trans_types_list_cells($label, $name, $selected_id);
echo "\n";
}
-
+*/
//-----------------------------------------------------------------------------------------------
function workcenter_list($name, $selected_id=null, $all_option=false)
@@ -1199,11 +1332,12 @@ function workcenter_list_row($label, $name, $selected_id=null, $all_option=false
function bank_accounts_list($name, $selected_id=null, $submit_on_change=false)
{
- $sql = "SELECT ".TB_PREF."bank_accounts.account_code, bank_account_name, bank_curr_code
- FROM ".TB_PREF."bank_accounts, ".TB_PREF."chart_master
- WHERE ".TB_PREF."bank_accounts.account_code=".TB_PREF."chart_master.account_code";
+ $sql = "SELECT ".TB_PREF."bank_accounts.id, bank_account_name, bank_curr_code
+ FROM ".TB_PREF."bank_accounts";
+// , ".TB_PREF."chart_master
+// WHERE ".TB_PREF."bank_accounts.account_code=".TB_PREF."chart_master.account_code";
- return combo_input($name, $selected_id, $sql, 'account_code', 'bank_account_name',
+ return combo_input($name, $selected_id, $sql, 'id', 'bank_account_name',
array(
'format' => '_format_add_curr',
'select_submit'=> $submit_on_change,
@@ -1228,7 +1362,60 @@ function bank_accounts_list_row($label, $name, $selected_id=null, $submit_on_cha
echo "\n";
return $str;
}
+//-----------------------------------------------------------------------------------------------
+
+function cash_accounts_list_row($label, $name, $selected_id=null, $submit_on_change=false)
+{
+ $sql = "SELECT ".TB_PREF."bank_accounts.id, bank_account_name, bank_curr_code
+ FROM ".TB_PREF."bank_accounts
+ WHERE ".TB_PREF."bank_accounts.account_type=3";
+
+ if ($label != null)
+ echo "$label | \n";
+ echo "";
+ $str = combo_input($name, $selected_id, $sql, 'id', 'bank_account_name',
+ array(
+ 'format' => '_format_add_curr',
+ 'select_submit'=> $submit_on_change,
+ 'async' => true
+ ) );
+ echo " |
\n";
+ return $str;
+}
+//-----------------------------------------------------------------------------------------------
+
+function pos_list_row($label, $name, $selected_id=null, $spec_option=false, $submit_on_change=false)
+{
+ $sql = "SELECT id, pos_name FROM ".TB_PREF."sales_pos";
+
+ default_focus($name);
+ echo '';
+ if ($label != null)
+ echo "$label | \n";
+ echo "";
+
+ $str = combo_input($name, $selected_id, $sql, 'id', 'pos_name',
+ array(
+ 'select_submit'=> $submit_on_change,
+ 'async' => true,
+ 'spec_option' =>$spec_option,
+ 'spec_id' => -1,
+ ) );
+ echo " |
\n";
+
+ return $str;
+}
+//-----------------------------------------------------------------------------------------------
+function sale_payment_list_cells($label, $name, $selected_id=null, $submit_on_change=false)
+{
+ if ($label != null)
+ echo "$label | \n";
+ echo "";
+ $str = yesno_list($name, $selected_id, _('Cash'), _('Delayed'), $submit_on_change);
+ echo " | \n";
+ return $str;
+}
//-----------------------------------------------------------------------------------------------
function class_list($name, $selected_id=null, $submit_on_change=false)
@@ -1330,7 +1517,7 @@ function gl_all_accounts_list($name, $selected_id=null, $skip_bank_accounts=fals
FROM (".TB_PREF."chart_master chart,".TB_PREF."chart_types type) "
."LEFT JOIN ".TB_PREF."bank_accounts acc "
."ON chart.account_code=acc.account_code
- WHERE acc.account_code IS NULL
+ WHERE acc.account_code IS NULL
AND chart.account_type=type.id";
else
$sql = "SELECT chart.account_code, chart.account_name, type.name
@@ -1509,6 +1696,49 @@ 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 "$label | \n";
+ quick_entries_list($name, $selected_id, $expense, $bank_only, $submit_on_change);
+ echo " | ";
+}
+
+function quick_entries_list_row($label, $name, $selected_id=null, $expense=-1, $bank_only=-1, $submit_on_change=false)
+{
+ echo "\n";
+ quick_entries_list_cells($label, $name, $selected_id, $expense, $bank_only, $submit_on_change);
+ echo "
\n";
+}
+
+
//------------------------------------------------------------------------------------------------
function wo_types_list($name, $selected_id=null)
@@ -1747,4 +1977,49 @@ function number_list_row($label, $name, $selected, $from, $to, $no_option=false)
echo "\n";
}
+function print_profiles_list_row($label, $name, $selected_id=null, $spec_opt=false,
+ $submit_on_change=true)
+{
+ $sql = "SELECT profile FROM ".TB_PREF."print_profiles"
+ ." GROUP BY profile";
+ $result = db_query($sql, 'cannot get all profile names');
+ $profiles = array();
+ while($myrow=db_fetch($result)) {
+ $profiles[$myrow['profile']] = $myrow['profile'];
+ }
+
+ echo "";
+ if ($label != null)
+ echo "$label | \n";
+ echo "";
+
+ array_selector($name, $selected_id, $profiles,
+ array( 'select_submit'=> $submit_on_change,
+ 'spec_option'=>$spec_opt,
+ 'spec_id' => ''
+ ));
+
+ echo " |
\n";
+}
+
+function printers_list($name, $selected_id=null, $spec_opt=false, $submit_on_change=false)
+{
+ static $printers; // query only once for page display
+
+ if (!$printers) {
+ $sql = "SELECT id, name, description FROM ".TB_PREF."printers";
+ $result = db_query($sql, 'cannot get all printers');
+ $printers = array();
+ while($myrow=db_fetch($result)) {
+ $printers[$myrow['id']] = $myrow['name'].' - '.$myrow['description'];
+ }
+ }
+ array_selector($name, $selected_id, $printers,
+ array( 'select_submit'=> $submit_on_change,
+ 'spec_option'=>$spec_opt,
+ 'spec_id' => ''
+ ));
+}
+
+
?>
\ No newline at end of file