From f7ce8c245fde3f6202103ae614b181c0ba44ed93 Mon Sep 17 00:00:00 2001 From: hukl Date: Wed, 9 Sep 2009 15:19:33 +0200 Subject: added editing of slugs and moving of nodes. to edit a slug or move a node you edit that node, make your changes and save. the slug and parent node changes get staged and are applied once that revision is published --- public/javascripts/admin_interface.js | 1 + public/javascripts/admin_search.js | 51 +++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) (limited to 'public/javascripts') diff --git a/public/javascripts/admin_interface.js b/public/javascripts/admin_interface.js index 95256ee..cf067f0 100644 --- a/public/javascripts/admin_interface.js +++ b/public/javascripts/admin_interface.js @@ -4,6 +4,7 @@ $(document).ready(function () { meta_data.initialize(); menu_item_sorter.initialize(); parent_search.initialize_search(); + move_to_search.initialize_search(); $(".with_editor").tinymce({ script_url : '/javascripts/tiny_mce/tiny_mce.js', diff --git a/public/javascripts/admin_search.js b/public/javascripts/admin_search.js index c08bdf3..6d3ca93 100644 --- a/public/javascripts/admin_search.js +++ b/public/javascripts/admin_search.js @@ -163,3 +163,54 @@ parent_search = { } } + +move_to_search = { + initialize_search : function() { + $("#move_to_search_term").bind("keyup", function() { + if ($(this).attr("value")) { + $.ajax({ + type: "GET", + url: "/admin/menu_search", + data: "search_term=" + $(this).attr("value"), + dataType: "json", + success : function(results) { + move_to_search.show_results(results); + } + }); + } + else { + $('#search_results').slideUp(); + $('#search_results').empty(); + } + }); + }, + + show_results : function(results) { + $("#search_results").empty(); + for (result in results) { + var link = $((""+ results[result].title + "")); + $(link).bind("click", move_to_search.link_closure(results[result])); + + + // Sometimes I don't get jquery; wrap() didn't work *sigh* + // Guess I'll need a book someday or another framework + var wrapper = $("
"); + $(wrapper).append(link) + + $("#search_results").append(wrapper); + + } + }, + + link_closure : function(node) { + var barf = function(){ + $("#move_to_search_term").attr("value", node.title); + $("#node_staged_parent_id").attr("value", node.node_id); + $('#search_results').slideUp(); + $('#search_results').empty(); + return false; + } + + return barf; + } +} \ No newline at end of file -- cgit v1.3