diff --git a/app/views/wiki/rename.html.erb b/app/views/wiki/rename.html.erb index 377e1717c..f75aaa13c 100644 --- a/app/views/wiki/rename.html.erb +++ b/app/views/wiki/rename.html.erb @@ -13,6 +13,9 @@

<%= f.check_box :is_start_page, :label => :field_start_page, :disabled => @page.is_start_page %>

<% end %>

<%= f.check_box :redirect_existing_links %>

+<% if @page.safe_attribute? 'wiki_id' %> +

<%= f.select :wiki_id, wiki_page_wiki_options_for_select(@page), :label => :label_project %>

+<% end %>

<%= f.select :parent_id, content_tag('option', '', :value => '') + wiki_page_options_for_select( @@ -20,10 +23,16 @@ @page.parent), :label => :field_parent_title %>

-<% if @page.safe_attribute? 'wiki_id' %> -

<%= f.select :wiki_id, wiki_page_wiki_options_for_select(@page), :label => :label_project %>

-<% end %> - <%= submit_tag l(:button_rename) %> <% end %> + +<%= javascript_tag do %> +$('#wiki_page_wiki_id').change(function() { + $.ajax({ + url: '<%= rename_project_wiki_page_path(@wiki, :format => 'js') %>', + type: 'get', + data: { 'wiki_page[wiki_id]': $('#wiki_page_wiki_id').val() } + }); +}); +<% end %> \ No newline at end of file diff --git a/app/views/wiki/rename.js.erb b/app/views/wiki/rename.js.erb new file mode 100644 index 000000000..c3768fbf6 --- /dev/null +++ b/app/views/wiki/rename.js.erb @@ -0,0 +1,2 @@ +<% select = select_tag('wiki_page[parent_id]', (content_tag('option', '', :value => '') + wiki_page_options_for_select(@page.wiki.pages.includes(:parent).to_a - @page.self_and_descendants, @page.parent)), :label => :field_parent_title) %> +$('#wiki_page_parent_id').replaceWith('<%= escape_javascript(select) %>'); \ No newline at end of file