if (!form) return;
- for (var i=0; i<form.children.length; i++)
- if (form.children[i].tagName.toLowerCase() == 'input'
- && form.children[i].type.toLowerCase() == 'password')
- form.children[i].value = '';
+ for (var i=0; i < form.childNodes.length; i++)
+ if (form.childNodes[i].nodeName.toLowerCase() == 'input'
+ && form.childNodes[i].type.toLowerCase() == 'password')
+ form.childNodes[i].value = '';
}
+function select_update(id, options, empty)
+{
+ var obj = document.getElementById(id);
+ if (!obj) return;
+
+ if (typeof empty == 'undefined') empty = 0;
+
+ obj.options.length = empty;
+
+ for (var i=0; i < options.length; i++)
+ obj.options[empty+i] = new Option(options[i].text,options[i].id,false,false);
+}
+
+var pre_save = false;
+var pre_insert = false;
+var post_save = function() { grid_update(grid); }
+var post_delete = function() { grid_update(grid); }
+
function save_callback(data)
{
info('Datensatz gespeichert');
- grid_update(grid);
+
+ if (typeof post_save == 'function')
+ post_save();
}
function delete_callback(data)
{
info('Datensatz gelöscht');
- grid_update(grid);
+
+ if (typeof post_delete == 'function')
+ post_delete();
}
function form_save(obj)
return form_insert(obj);
info('');
+
+ if (typeof pre_save == 'function')
+ if (!pre_save())
+ return false;
+
+
ajax_request('save', Form.serialize(obj.form), save_callback);
return false;
}
function form_insert(obj)
{
info('');
+
+ if (typeof pre_insert == 'function')
+ if (!pre_insert())
+ return false;
+
ajax_request('insert', Form.serialize(obj.form), save_callback);
return false;
}
{
var id = document.getElementById('edit_id');
- if (!id.value.length) return;
+ if (!id.value.length) return false;
var source = document.getElementById('edit_source');
info('');
if (!cell) return;
var value = cell.innerHTML;
+ if (!value.length || value == ' ') return;
+
if (document.getElementById('details')) {
var params = 'source=' + grid.tableId.substr(5) + '&id=' + value;
ajax_request('details', params, details_callback);
}
}
+function gridOnScroll(grid, offset)
+{
+ var max = Math.min(offset+grid.pageSize, grid.buffer.totalRows);
+ var info = document.getElementById('grid_info')
+ info.innerHTML = 'Datensatz ' + (offset+1) + ' - ' + max + ' von ' + grid.buffer.totalRows;
+}
+
/* Update an existing grid
*
* grid is a live grid
var fmt = grid.columns[c].format;
if (typeof fmt.filterUI != 'string') continue;
if (fmt.filterUI != 's') continue;
+
+ if (grid.columns[c]._getdesc) continue;
+
$(grid.filterId(c)).options.length = 1;
var options = {};