/* * Small AJAX framework */ function ajax_request_callback(req) { if (req.readyState == 4 && req.status == 200) { var data = json_parse(req.responseText); if (req.oncomplete) req.oncomplete(data); } } function ajax_request(func,params,oncomplete) { var req = new XMLHttpRequest(); if (!req) return; var params = 'func=' + func + '&' + params; req.open ("POST", 'ajax/ajax.php'); req.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); req.setRequestHeader("Content-length", params.length); req.setRequestHeader("Connection", "close"); if (typeof oncomplete == 'function') { req.onreadystatechange = function() { ajax_request_callback(req); } req.oncomplete = oncomplete; } req.send(params); } /* * Form functions */ function form_save(obj) { return false; } /* * Rico functions */ function gridDrillDown(e) { if (e.originalTarget && e.originalTarget.target && e.originalTarget.target == '_top') return; var id = 0; // Column 0 contains ID var row = grid.edit.drillDown(e,0,0); var cell = grid.columns[id].cell(row); if (!cell) return; var value = cell.innerHTML; if (document.getElementById('form_edit')) { var params = 'mask=' + grid.tableId.substr(5) + '&id=' + value; ajax_request('fetch', params, false); } }