+ else if (action[0] == 'data') $(action[1]).data(action[2], action[3]);
+ else if (action[0] == 'removeData') $(action[1]).removeData(action[2]);
+
+ // ## jstree plugin ##
+
+ // Operations on the whole tree
+ else if (action[0] == 'jstree:lock') $.jstree._reference($(action[1])).lock();
+ else if (action[0] == 'jstree:unlock') $.jstree._reference($(action[1])).unlock();
+
+ // Opening and closing nodes
+ else if (action[0] == 'jstree:open_node') $.jstree._reference($(action[1])).open_node(action[2]);
+ else if (action[0] == 'jstree:open_all') $.jstree._reference($(action[1])).open_all(action[2]);
+ else if (action[0] == 'jstree:close_node') $.jstree._reference($(action[1])).close_node(action[2]);
+ else if (action[0] == 'jstree:close_all') $.jstree._reference($(action[1])).close_all(action[2]);
+ else if (action[0] == 'jstree:toggle_node') $.jstree._reference($(action[1])).toggle_node(action[2]);
+ else if (action[0] == 'jstree:save_opened') $.jstree._reference($(action[1])).save_opened();
+ else if (action[0] == 'jstree:reopen') $.jstree._reference($(action[1])).reopen();
+
+ // Modifying nodes
+ else if (action[0] == 'jstree:rename_node') $.jstree._reference($(action[1])).rename_node(action[2], action[3]);
+ else if (action[0] == 'jstree:delete_node') $.jstree._reference($(action[1])).delete_node(action[2]);
+ else if (action[0] == 'jstree:move_node') $.jstree._reference($(action[1])).move_node(action[2], action[3], action[4], action[5]);
+
+ // Selecting nodes (from the 'ui' plugin to jstree)
+ else if (action[0] == 'jstree:select_node') $.jstree._reference($(action[1])).select_node(action[2], true);
+ 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();
+
+ else console.log('Unknown action: ' + action[0]);