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
*/
function submit($name, $value, $echo=true, $title=false, $atype=false, $icon=false)
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;
echo "</tr>\n";
}
-function submit_return($name, $value, $title=false, $async=false)
+function submit_return($name, $value, $title=false)
{
- if (count($_SESSION['Context'])) {
- submit($name, $value, true, $title, $async);
+ if (@$_REQUEST['popup']) {
+ submit($name, $value, true, $title, 'selector');
}
}
+
+function submit_js_confirm($name, $msg) {
+ add_js_source(
+ "_validate.$name=function(){ return confirm('$msg');};");
+};
//-----------------------------------------------------------------------------------
function set_icon($icon, $title=false)
return "<img src='$path_to_root/themes/".user_theme()."/images/$icon' width='14' height='14' border='0'".($title ? " title='$title'" : "")." />\n";
}
-function button($name, $value, $title=false, $icon=false)
+function button($name, $value, $title=false, $icon=false, $aspect='')
{
// php silently changes dots,spaces,'[' and characters 128-159
// to underscore in POST names, to maintain compatibility with register_globals
+ $rel = '';
+ if ($aspect == 'selector') {
+ $rel = " rel='$value'";
+ $value = _("Select");
+ }
if (user_graphic_links() && $icon)
{
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'")." />".set_icon($icon)."\n";
+ "' value='1'" . ($title ? " title='$title'":" title='$value'")
+ . ($aspect ? " aspect='$aspect'" : '')
+ . $rel
+ ." />".set_icon($icon)."\n";
}
else
return "<input type='submit' class='editbutton' name='"
.htmlentities(strtr($name, array('.'=>'=2E',' '=>'=20','='=>'=3D','['=>'=5B')))
."' value='$value'"
- .($title ? " title='$title'":'')." />\n";
+ .($title ? " title='$title'":'')
+ . ($aspect ? " aspect='$aspect'" : '')
+ . $rel
+ ." />\n";
}
-function button_cell($name, $value, $title=false, $icon=false)
+function button_cell($name, $value, $title=false, $icon=false, $aspect='')
{
- echo "<td>";
- echo button($name, $value, $title, $icon);
+ echo "<td align='center'>";
+ echo button($name, $value, $title, $icon, $aspect);
echo "</td>";
}
{
button_cell($name, $value, $title, ICON_EDIT);
}
+
+function select_button_cell($name, $value, $title=false)
+{
+ button_cell($name, $value, $title, ICON_ADD, 'selector');
+}
//-----------------------------------------------------------------------------------
function check_value($name)
echo checkbox($label, $name, $value, $submit_on_change, $title);
}
-function check_cells($label, $name, $value, $submit_on_change=false, $title=false)
+function check_cells($label, $name, $value, $submit_on_change=false, $title=false,
+ $params='')
{
if ($label != null)
echo "<td>$label</td>\n";
- echo "<td align='center'>";
+ echo "<td $params>";
echo check(null, $name, $value, $submit_on_change, $title);
echo "</td>";
}
// displays value of inactive field as checkbox cell.
// Also updates database record after status change.
//
-function inactive_status_cell($id, $value, $table, $key)
+function inactive_control_cell($id, $value, $table, $key)
{
global $Ajax;
get_post('Update')) && (check_value('Inactive'.$id) != $value)) {
update_record_status($id, !$value, $table, $key);
}
- echo '<td align="center">'. checkbox(null, $name, $value, true, '')
+ echo '<td align="center">'. checkbox(null, $name, $value, true, '', "align='center'")
. hidden("LInact[$id]", $value, false) . '</td>';
}
}
//
// Displays controls for optional display of inactive records
//
-function show_inactive_row($th) {
+function inactive_control_row($th) {
echo "<tr><td colspan=".(count($th)).">"
."<div style='float:left;'>"
. checkbox(null, 'show_inactive', null, true). _("Show also Inactive")
. submit('Update', _('Update'), false, '', null)
."</div></td></tr>";
}
-
+//
+// Inserts additional column header when display of inactive records is on.
+//
+function inactive_control_column(&$th) {
+ global $Ajax;
+
+ if (check_value('show_inactive'))
+ array_insert($th, count($th)-2 , _("Inactive"));
+ if (get_post('_show_inactive_update')) {
+ $Ajax->activate('_page_body');
+ }
+}
?>
\ No newline at end of file