fixing issue with layouts not switching

Oleg committed Aug 26, 2011
commit 87e833b23472318f6ae76ca0106e81dbfe8787e8
Showing 3 changed files with 5 additions and 3 deletions
app/assets/javascripts/comfortable_mexican_sofa/application.js +2 -2
@@ @@ -59,9 +59,9 @@ $.CMS = function(){
// Load Page Blocks on layout change
load_page_blocks: function(){
- $('select#cms_page_layout_id').bind('change.cms', function() {
+ $('select#page_layout_id').bind('change.cms', function() {
$.ajax({
- url: ['/' + admin_path_prefix, 'pages', $(this).attr('data-page-id'), 'form_blocks'].join('/'),
+ url: $(this).data('url'),
data: ({
layout_id: $(this).val()
}),
app/views/cms_admin/pages/_form.html.erb +1 -1
@@ @@ -16,7 +16,7 @@
<%= form.text_field :slug, :id => 'slug' %>
<% end %>
<% if (options = Cms::Layout.options_for_select(@site)).present? %>
- <%= form.select :layout_id, options, {}, 'data-page-id' => @page.id.to_i, :label => 'Layout' %>
+ <%= form.select :layout_id, options, {}, 'data-url' => form_blocks_cms_admin_site_page_path(@site, @page.id.to_i), :label => 'Layout' %>
<% end %>
<% if (options = Cms::Page.options_for_select(@site, @page)).present? %>
<%= form.select :parent_id, options %>
test/functional/cms_admin/pages_controller_test.rb +2 -0
@@ @@ -42,6 +42,7 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase
assert_equal cms_layouts(:default), assigns(:page).layout
assert_template :new
assert_select "form[action=/cms-admin/sites/#{site.id}/pages]"
+ assert_select "select[data-url=/cms-admin/sites/#{site.id}/pages/0/form_blocks]"
end
def test_get_new_with_field_datetime
@@ @@ -122,6 +123,7 @@ class CmsAdmin::PagesControllerTest < ActionController::TestCase
assert assigns(:page)
assert_template :edit
assert_select "form[action=/cms-admin/sites/#{page.site.id}/pages/#{page.id}]"
+ assert_select "select[data-url=/cms-admin/sites/#{page.site.id}/pages/#{page.id}/form_blocks]"
end
def test_get_edit_failure