// "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);
$(['info', 'warning', 'error']).each(function(idx, category) {
$('#flash_' + category).hide();
// 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 ##
// Form Events
else if (action[0] == 'focus') $(action[1]).focus();
- // ## jqModal plugin ##
+ // Generic Event Handling ##
+ else if (action[0] == 'on') $(action[1]).on(action[2], kivi.get_function_by_name(action[3]));
+ else if (action[0] == 'off') $(action[1]).off(action[2], kivi.get_function_by_name(action[3]));
+ else if (action[0] == 'one') $(action[1]).one(action[2], kivi.get_function_by_name(action[3]));
+
+ // ## jQuery UI dialog plugin ##
// Closing and removing the popup
- else if (action[0] == 'jqmClose') $(action[1]).jqmClose();
+ else if (action[0] == 'dialog:close') $(action[1]).dialog('close');
// ## jstree plugin ##
// ## other stuff ##
else if (action[0] == 'redirect_to') window.location.href = action[1];
+ else if (action[0] == 'reinit_widgets') kivi.reinit_widgets();
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 data = $(form_selector).serialize();
+ if (additional_data) {
+ if (data)
+ data += '&';
+ data += typeof additional_data == "string" ? additional_data : $(additional_data).serialize();
+ }
+
+ $.post(url, data, ns.eval_json_result);
-function submit_ajax_form(url, form_selector, additional_data) {
- var separator = /\?/.test(url) ? '&' : '?';
- $.post(url + separator + $(form_selector).serialize(), additional_data, eval_json_result);
return true;
-}
+};
+
+});
// Local Variables:
// mode: js