//
// Read numeric value from user formatted input
//
-function input_num($postname=null, $dflt=null)
+function input_num($postname=null, $dflt=0)
{
if (!isset($_POST[$postname]) || $_POST[$postname] == "")
return $dflt;
null - button visible only in fallback mode; optional icon
Ajax submit:
true - standard button; optional icon
- 'process' - displays progress bar during call; optional icon
+
'default' - default form submit on Ctrl-Enter press; dflt ICON_OK icon
'selector' - ditto with closing current popup editor window
'cancel' - cancel form entry on Escape press; dflt ICON_CANCEL
+ 'process' - displays progress bar during call; optional icon
+
+ $atype can contain also multiply type selectors separated by space,
+ however make sense only combination of 'process' and one of defualt/selector/cancel
*/
function submit($name, $value, $echo=true, $title=false, $atype=false, $icon=false)
{
global $path_to_root;
$aspect='';
- if (!is_bool($atype)) // necessary: switch uses '=='
- switch($atype) {
- case 'process':
- $aspect = " aspect='process'"; break;
- case 'selector':
- $aspect = " aspect='selector' rel = '$value'";
- $value = _("Select");
- if ($icon===false) $icon=ICON_SUBMIT; break;
- case 'default':
- $aspect = " aspect='default'";
- if ($icon===false) $icon=ICON_SUBMIT; break;
- case 'cancel':
- $aspect = " aspect='cancel'";
- if ($icon===false) $icon=ICON_ESCAPE; break;
- case null:
- $aspect = fallback_mode() ?
- " aspect='fallback'" : " style='display:none;'"; break;
- }
+ if ($atype === null) {
+ $aspect = fallback_mode() ? " aspect='fallback'" : " style='display:none;'";
+
+ } elseif (!is_bool($atype)) { // necessary: switch uses '=='
+
+ $aspect = "aspect='$atype' ";
+ $types = explode(' ', $atype);
+
+ foreach ($types as $type) {
+ switch($type) {
+ case 'selector':
+ $aspect = " aspect='selector' rel = '$value'";
+ $value = _("Select");
+ if ($icon===false) $icon=ICON_SUBMIT; break;
+ case 'default':
+ if ($icon===false) $icon=ICON_SUBMIT; break;
+
+ case 'cancel':
+ if ($icon===false) $icon=ICON_ESCAPE; break;
+ }
+ }
+ }
$submit_str = "<button class=\""
.($atype ? 'ajaxsubmit' : 'inputsubmit')
."\" type=\"submit\""
}
}
-function submit_js_confirm($name, $msg) {
- add_js_source(
- "_validate.$name=function(){ return confirm('"
- . strtr($msg, array("\n"=>'\\n')) . "');};");
-};
+function submit_js_confirm($name, $msg, $set = true) {
+ global $Ajax;
+ $js = "_validate.$name=".($set ? "function(){ return confirm('"
+ . strtr($msg, array("\n"=>'\\n')) . "');};"
+ : 'null;');
+ if (in_ajax()) {
+ $Ajax->addScript(true, $js);
+ } else
+ add_js_source($js);
+}
//-----------------------------------------------------------------------------------
function set_icon($icon, $title=false)
{
global $path_to_root;
- return "<img src='$path_to_root/themes/".user_theme()."/images/$icon' width='12' height='12' border='0'".($title ? " title='$title'" : "")." />\n";
+ if (basename($icon) === $icon) // standard icons does not contain path separator
+ $icon = "$path_to_root/themes/".user_theme()."/images/$icon";
+ return "<img src='$icon' width='12' height='12' border='0'".($title ? " title='$title'" : "")." />\n";
}
function button($name, $value, $title=false, $icon=false, $aspect='')
{
if ($value == _("Delete")) // Helper during implementation
$icon = ICON_DELETE;
- return "<button type='submit' class='editbutton' name='".
- htmlentities(strtr($name, array('.'=>'=2E',' '=>'=20','='=>'=3D','['=>'=5B'))).
- "' value='1'" . ($title ? " title='$title'":" title='$value'")
+ return "<button type='submit' class='editbutton' name='"
+ .htmlentities(strtr($name, array('.'=>'=2E', '='=>'=3D',// ' '=>'=20','['=>'=5B'
+ )))
+ ."' value='1'" . ($title ? " title='$title'":" title='$value'")
. ($aspect ? " aspect='$aspect'" : '')
. $rel
- ." />".set_icon($icon)."\n";
+ ." />".set_icon($icon)."</button>\n";
}
else
return "<input type='submit' class='editbutton' name='"
- .htmlentities(strtr($name, array('.'=>'=2E',' '=>'=20','='=>'=3D','['=>'=5B')))
+ .htmlentities(strtr($name, array('.'=>'=2E', '='=>'=3D',// ' '=>'=20','['=>'=5B'
+ )))
."' value='$value'"
.($title ? " title='$title'":'')
. ($aspect ? " aspect='$aspect'" : '')
function check_row($label, $name, $value=null, $submit_on_change=false, $title=false)
{
- echo "<tr>";
- echo check_cells($label, $name, $value, $submit_on_change, $title);
+ echo "<tr><td class='label'>$label</td>";
+ echo check_cells(NULL, $name, $value, $submit_on_change, $title);
echo "</tr>\n";
}
//-----------------------------------------------------------------------------------
+function radio($label, $name, $value, $selected, $submit_on_change=false) {
+
+ if ($submit_on_change === true)
+ $submit_on_change =
+ "JsHttpRequest.request(\"_{$name}_update\", this.form);";
+
+ return "<input type='radio' name=$name value='$value' ".($selected ? "checked":'')
+ .($submit_on_change ? " onclick='$submit_on_change'" : '')
+ .">".($label ? $label : '');
+}
+//-----------------------------------------------------------------------------------
function labelheader_cell($label, $params="")
{
echo "<td class='tableheader' $params>$label</td>\n";
function label_row($label, $value, $params="", $params2="", $leftfill=0, $id='')
{
echo "<tr>";
+ if ($params == "")
+ {
+ echo "<td class='label'>$label</td>";
+ $label = null;
+ }
label_cells($label, $value, $params, $params2, $id);
if ($leftfill!=0)
echo "<td colspan=$leftfill></td>";
function text_row($label, $name, $value, $size, $max, $title=null, $params="", $post_label="")
{
- echo "<tr>";
-
- text_cells($label, $name, $value, $size, $max, $title, $params, $post_label);
+ echo "<tr><td class='label'>$label</td>";
+ text_cells(null, $name, $value, $size, $max, $title, $params, $post_label);
echo "</tr>\n";
}
function text_row_ex($label, $name, $size, $max=null, $title=null, $value=null, $params=null, $post_label=null)
{
- echo "<tr>";
-
- text_cells_ex($label, $name, $size, $max, $value, $title, $params, $post_label);
+ echo "<tr><td class='label'>$label</td>";
+ text_cells_ex(null, $name, $size, $max, $value, $title, $params, $post_label);
echo "</tr>\n";
}
function date_row($label, $name, $title=null, $check=null, $inc_days=0, $inc_months=0,
$inc_years=0, $params=null, $submit_on_change=false)
{
- echo "<tr>";
- date_cells($label, $name, $title, $check, $inc_days, $inc_months,
+ echo "<tr><td class='label'>$label</td>";
+ date_cells(null, $name, $title, $check, $inc_days, $inc_months,
$inc_years, $params, $submit_on_change);
echo "</tr>\n";
}
+//-----------------------------------------------------------------------------------
+function password_row($label, $name, $value)
+{
+ echo "<tr><td class='label'>$label</td>";
+ label_cell("<input type='password' name='$name' size=20 maxlength=20 value='$value' />");
+ echo "</tr>\n";
+}
+
+//-----------------------------------------------------------------------------------
+function file_cells($label, $name, $id="")
+{
+ if ($id != "")
+ $id = "id='$id'";
+ label_cells($label, "<input type='file' name='$name' $id />");
+}
+function file_row($label, $name, $id = "")
+{
+ echo "<tr><td class='label'>$label</td>";
+ file_cells(null, $name, $id);
+ echo "</tr>\n";
+}
+
//-----------------------------------------------------------------------------------
function ref_cells($label, $name, $title=null, $init=null, $params=null, $submit_on_change=false)
function ref_row($label, $name, $title=null, $init=null, $submit_on_change=false)
{
- echo "<tr>";
- ref_cells($label, $name, $title, $init, null, $submit_on_change);
+ echo "<tr><td class='label'>$label</td>";
+ ref_cells(null, $name, $title, $init, null, $submit_on_change);
echo "</tr>\n";
}
$_POST[$name] = '';
}
if ($label != null)
+ {
+ if ($params == null)
+ $params = "class='label'";
label_cell($label, $params);
-
+ }
if (!isset($max))
$max = $size;
function textarea_row($label, $name, $value, $cols, $rows, $title=null, $params="")
{
- echo "<tr>";
- textarea_cells($label, $name, $value, $cols, $rows, $title, $params);
+ echo "<tr><td class='label'>$label</td>";
+ textarea_cells(null, $name, $value, $cols, $rows, $title, $params);
echo "</tr>\n";
}
$Ajax->activate('_page_body');
}
}
+
+function customer_credit_row($customer, $credit, $parms='')
+{
+ global $path_to_root;
+
+ label_row( _("Current Credit:"),
+ "<a target='_blank' " . ($credit<0 ? 'class="redfg"' : '')
+ ."href='$path_to_root/sales/inquiry/customer_inquiry.php?customer_id=".$customer."'"
+ ." onclick=\"javascript:openWindow(this.href,this.target); return false;\" >"
+ . price_format($credit)
+ ."</a>", $parms);
+}
+
+function supplier_credit_row($supplier, $credit, $parms='')
+{
+ global $path_to_root;
+
+ label_row( _("Current Credit:"),
+ "<a target='_blank' " . ($credit<0 ? 'class="redfg"' : '')
+ ."href='$path_to_root/purchasing/inquiry/supplier_inquiry.php?supplier_id=".$supplier."'"
+ ." onclick=\"javascript:openWindow(this.href,this.target); return false;\" >"
+ . price_format($credit)
+ ."</a>", $parms);
+}
+
?>
\ No newline at end of file