1 // NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE:
3 // This file is generated automatically by the script
4 // "scripts/generate_client_js_actions.pl". See the documentation for
5 // SL/ClientJS.pm for instructions.
7 namespace("kivi", function(ns) {
8 ns.display_flash = function(type, message) {
9 $('#flash_' + type + '_content').text(message);
10 $('#flash_' + type).show();
13 ns.eval_json_result = function(data) {
18 return ns.display_flash('error', data.error);
20 $(['info', 'warning', 'error']).each(function(idx, category) {
21 $('#flash_' + category).hide();
22 $('#flash_' + category + '_content').empty();
25 if ((data.js || '') != '')
28 if (data.eval_actions)
29 $(data.eval_actions).each(function(idx, action) {
30 // console.log("ACTION " + action[0] + " ON " + action[1]);
32 // ## Non-jQuery methods ##
33 if (action[0] == 'flash') kivi.display_flash(action[1], action[2]);
35 // ## jQuery basics ##
38 else if (action[0] == 'hide') $(action[1]).hide();
39 else if (action[0] == 'show') $(action[1]).show();
40 else if (action[0] == 'toggle') $(action[1]).toggle();
42 // DOM insertion, around
43 else if (action[0] == 'unwrap') $(action[1]).unwrap();
44 else if (action[0] == 'wrap') $(action[1]).wrap(action[2]);
45 else if (action[0] == 'wrapAll') $(action[1]).wrapAll(action[2]);
46 else if (action[0] == 'wrapInner') $(action[1]).wrapInner(action[2]);
48 // DOM insertion, inside
49 else if (action[0] == 'append') $(action[1]).append(action[2]);
50 else if (action[0] == 'appendTo') $(action[1]).appendTo(action[2]);
51 else if (action[0] == 'html') $(action[1]).html(action[2]);
52 else if (action[0] == 'prepend') $(action[1]).prepend(action[2]);
53 else if (action[0] == 'prependTo') $(action[1]).prependTo(action[2]);
54 else if (action[0] == 'text') $(action[1]).text(action[2]);
56 // DOM insertion, outside
57 else if (action[0] == 'after') $(action[1]).after(action[2]);
58 else if (action[0] == 'before') $(action[1]).before(action[2]);
59 else if (action[0] == 'insertAfter') $(action[1]).insertAfter(action[2]);
60 else if (action[0] == 'insertBefore') $(action[1]).insertBefore(action[2]);
63 else if (action[0] == 'empty') $(action[1]).empty();
64 else if (action[0] == 'remove') $(action[1]).remove();
67 else if (action[0] == 'replaceAll') $(action[1]).replaceAll(action[2]);
68 else if (action[0] == 'replaceWith') $(action[1]).replaceWith(action[2]);
71 else if (action[0] == 'attr') $(action[1]).attr(action[2], action[3]);
72 else if (action[0] == 'prop') $(action[1]).prop(action[2], action[3]);
73 else if (action[0] == 'removeAttr') $(action[1]).removeAttr(action[2]);
74 else if (action[0] == 'removeProp') $(action[1]).removeProp(action[2]);
75 else if (action[0] == 'val') $(action[1]).val(action[2]);
78 else if (action[0] == 'addClass') $(action[1]).addClass(action[2]);
79 else if (action[0] == 'removeClass') $(action[1]).removeClass(action[2]);
80 else if (action[0] == 'toggleClass') $(action[1]).toggleClass(action[2]);
83 else if (action[0] == 'data') $(action[1]).data(action[2], action[3]);
84 else if (action[0] == 'removeData') $(action[1]).removeData(action[2]);
87 else if (action[0] == 'focus') $(action[1]).focus();
89 // ## jqModal plugin ##
91 // Closing and removing the popup
92 else if (action[0] == 'jqmClose') $(action[1]).jqmClose();
94 // ## jstree plugin ##
96 // Operations on the whole tree
97 else if (action[0] == 'jstree:lock') $.jstree._reference($(action[1])).lock();
98 else if (action[0] == 'jstree:unlock') $.jstree._reference($(action[1])).unlock();
100 // Opening and closing nodes
101 else if (action[0] == 'jstree:open_node') $.jstree._reference($(action[1])).open_node(action[2]);
102 else if (action[0] == 'jstree:open_all') $.jstree._reference($(action[1])).open_all(action[2]);
103 else if (action[0] == 'jstree:close_node') $.jstree._reference($(action[1])).close_node(action[2]);
104 else if (action[0] == 'jstree:close_all') $.jstree._reference($(action[1])).close_all(action[2]);
105 else if (action[0] == 'jstree:toggle_node') $.jstree._reference($(action[1])).toggle_node(action[2]);
106 else if (action[0] == 'jstree:save_opened') $.jstree._reference($(action[1])).save_opened();
107 else if (action[0] == 'jstree:reopen') $.jstree._reference($(action[1])).reopen();
110 else if (action[0] == 'jstree:create_node') $.jstree._reference($(action[1])).create_node(action[2], action[3], action[4]);
111 else if (action[0] == 'jstree:rename_node') $.jstree._reference($(action[1])).rename_node(action[2], action[3]);
112 else if (action[0] == 'jstree:delete_node') $.jstree._reference($(action[1])).delete_node(action[2]);
113 else if (action[0] == 'jstree:move_node') $.jstree._reference($(action[1])).move_node(action[2], action[3], action[4], action[5]);
115 // Selecting nodes (from the 'ui' plugin to jstree)
116 else if (action[0] == 'jstree:select_node') $.jstree._reference($(action[1])).select_node(action[2], true);
117 else if (action[0] == 'jstree:deselect_node') $.jstree._reference($(action[1])).deselect_node(action[2]);
118 else if (action[0] == 'jstree:deselect_all') $.jstree._reference($(action[1])).deselect_all();
121 else if (action[0] == 'redirect_to') window.location.href = action[1];
123 else console.log('Unknown action: ' + action[0]);
127 // console.log("current_content_type " + $('#current_content_type').val() + ' ID ' + $('#current_content_id').val());
130 ns.submit_ajax_form = function(url, form_selector, additional_data) {
131 var separator = /\?/.test(url) ? '&' : '?';
132 $.post(url + separator + $(form_selector).serialize(), additional_data, ns.eval_json_result);