X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=js%2Fclient_js.js;h=0477715a81f895664de10de6e8fd5c5df113b5ef;hb=ccbd47d7a05b02889854bbad8213827fe550de8a;hp=b961f6591a4492cc1235a20c7cabb83b6e9efdb3;hpb=5551a36b8f059aa03a371fb5a851c116d305fccb;p=kivitendo-erp.git diff --git a/js/client_js.js b/js/client_js.js index b961f6591..0477715a8 100644 --- a/js/client_js.js +++ b/js/client_js.js @@ -4,20 +4,23 @@ // "scripts/generate_client_js_actions.pl". See the documentation for // SL/ClientJS.pm for instructions. -function display_flash(type, message) { +namespace("kivi", function(ns) { +ns.display_flash = function(type, message) { $('#flash_' + type + '_content').text(message); $('#flash_' + type).show(); -} +}; -function eval_json_result(data) { +ns.eval_json_result = function(data) { if (!data) return; if (data.error) - return display_flash('error', data.error); + return ns.display_flash('error', data.error); - $('#flash_error').hide(); - $('#flash_error_content').empty(); + $(['info', 'warning', 'error']).each(function(idx, category) { + $('#flash_' + category).hide(); + $('#flash_' + category + '_content').empty(); + }); if ((data.js || '') != '') eval(data.js); @@ -27,7 +30,7 @@ function eval_json_result(data) { // console.log("ACTION " + action[0] + " ON " + action[1]); // ## Non-jQuery methods ## - if (action[0] == 'flash') display_flash(action[1], action[2]); + if (action[0] == 'flash') kivi.display_flash(action[1], action[2]); // ## jQuery basics ## @@ -83,6 +86,11 @@ function eval_json_result(data) { // Form Events else if (action[0] == 'focus') $(action[1]).focus(); + // ## jqModal plugin ## + + // Closing and removing the popup + else if (action[0] == 'jqmClose') $(action[1]).jqmClose(); + // ## jstree plugin ## // Operations on the whole tree @@ -109,12 +117,23 @@ function eval_json_result(data) { else if (action[0] == 'jstree:deselect_node') $.jstree._reference($(action[1])).deselect_node(action[2]); else if (action[0] == 'jstree:deselect_all') $.jstree._reference($(action[1])).deselect_all(); + // ## other stuff ## + else if (action[0] == 'redirect_to') window.location.href = action[1]; + else console.log('Unknown action: ' + action[0]); }); // console.log("current_content_type " + $('#current_content_type').val() + ' ID ' + $('#current_content_id').val()); -} +}; + +ns.submit_ajax_form = function(url, form_selector, additional_data) { + var separator = /\?/.test(url) ? '&' : '?'; + $.post(url + separator + $(form_selector).serialize(), additional_data, ns.eval_json_result); + return true; +}; + +}); // Local Variables: // mode: js