kit_cms 2.3.16 → 2.3.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. data/app/assets/images/kit/toolbar/bold.png +0 -0
  2. data/app/assets/images/kit/toolbar/formatted.png +0 -0
  3. data/app/assets/images/kit/toolbar/image.png +0 -0
  4. data/app/assets/images/kit/toolbar/link.png +0 -0
  5. data/app/assets/images/kit/toolbar/list.png +0 -0
  6. data/app/assets/images/kit/toolbar/numbered_list.png +0 -0
  7. data/app/assets/images/kit/toolbar/preview.png +0 -0
  8. data/app/assets/images/kit/toolbar/quote.png +0 -0
  9. data/app/assets/images/kit/toolbar/redo.png +0 -0
  10. data/app/assets/images/kit/toolbar/underline.png +0 -0
  11. data/app/assets/images/kit/toolbar/undo.png +0 -0
  12. data/app/assets/images/kit/toolbar/video.png +0 -0
  13. data/app/assets/javascripts/codemirror/editor.js +183 -0
  14. data/app/assets/javascripts/codemirror/markdown.js +475 -0
  15. data/app/assets/javascripts/jquery.contextmenu.js +7 -7
  16. data/app/assets/javascripts/kit/kit.js +0 -1
  17. data/app/assets/javascripts/kit/markdown.js +1 -37
  18. data/app/assets/javascripts/kit/tree.js +18 -10
  19. data/app/assets/javascripts/kit/utilities.js +1 -1
  20. data/app/assets/stylesheets/codemirror/editor.css +3 -3
  21. data/app/assets/stylesheets/codemirror/theme.css +76 -1
  22. data/app/assets/stylesheets/kit/calendar.css +58 -97
  23. data/app/assets/stylesheets/kit/cms/cms.css +19 -0
  24. data/app/assets/stylesheets/kit/cms/dsc_tree.css +4 -0
  25. data/app/assets/stylesheets/kit/forums.css +30 -0
  26. data/app/assets/stylesheets/kit/kit.css +0 -1
  27. data/app/controllers/admin/dashboard_controller.rb +11 -2
  28. data/app/controllers/admin/page_templates_controller.rb +14 -1
  29. data/app/controllers/admin/user_controller.rb +2 -3
  30. data/app/controllers/category_controller.rb +5 -6
  31. data/app/controllers/form_controller.rb +1 -1
  32. data/app/controllers/forum_controller.rb +2 -2
  33. data/app/controllers/kit_controller.rb +2 -2
  34. data/app/controllers/pages_controller.rb +24 -0
  35. data/app/controllers/user/passwords_controller.rb +2 -0
  36. data/app/controllers/user/registrations_controller.rb +1 -4
  37. data/app/controllers/user/sessions_controller.rb +2 -0
  38. data/app/controllers/user/unlocks_controller.rb +2 -0
  39. data/app/controllers/user_controller.rb +1 -1
  40. data/app/helpers/calendar_helper.rb +4 -1
  41. data/app/helpers/kit_helper.rb +3 -3
  42. data/app/mailers/notification.rb +3 -3
  43. data/app/models/activity.rb +5 -2
  44. data/app/models/calendar.rb +1 -1
  45. data/app/models/category.rb +18 -4
  46. data/app/models/experiment.rb +2 -0
  47. data/app/models/form_submission.rb +2 -2
  48. data/app/models/html_asset.rb +3 -0
  49. data/app/models/mapping.rb +1 -0
  50. data/app/models/user.rb +1 -1
  51. data/app/views/admin/blocks/_form.html.haml +1 -1
  52. data/app/views/admin/dashboard/user_comments.html.haml +19 -8
  53. data/app/views/admin/experiments/show.html.haml +1 -1
  54. data/app/views/admin/form/_form.html.haml +8 -0
  55. data/app/views/admin/page_templates/_form.html.haml +1 -1
  56. data/app/views/admin/views/_form.html.haml +4 -4
  57. data/app/views/calendar/_calendar_scripts.js.erb +2 -2
  58. data/app/views/calendar/_month.html.haml +58 -27
  59. data/app/views/category/_select_options.html.erb +1 -1
  60. data/app/views/form/_show.html.haml +9 -1
  61. data/app/views/forum/_add_post.html.haml +3 -2
  62. data/app/views/forum/_mod_thread.js.erb +2 -2
  63. data/app/views/forum/_post_scripts.js.erb +1 -2
  64. data/app/views/forum/thread.html.haml +4 -0
  65. data/app/views/layouts/_application.html.erb +1 -0
  66. data/app/views/layouts/minimal.html.erb +2 -2
  67. data/app/views/notification/form_submission.text.erb +2 -0
  68. data/app/views/pages/_form.html.haml +7 -8
  69. data/app/views/pages/_page_scripts.js.erb +1 -3
  70. data/app/views/pages/_page_template_script.js.erb +28 -0
  71. data/app/views/pages/cookie_text.html.haml +1 -1
  72. data/app/views/pages/info.html.erb +2 -2
  73. data/app/views/pages/page_template.html.haml +40 -0
  74. data/app/views/utility/_cm_editor.html.erb +34 -5
  75. data/app/views/utility/_cm_toolbar_markdown.html.haml +49 -0
  76. data/config/initializers/devise_extender.rb +9 -0
  77. data/config/initializers/html_assets.rb +4 -0
  78. data/config/initializers/quiet_asserts.rb +1 -1
  79. data/config/routes.rb +2 -0
  80. metadata +21 -3
@@ -35,6 +35,9 @@ class HtmlAsset < ActiveRecord::Base
35
35
  end
36
36
 
37
37
  def write_to_file
38
+ parent = File.join(Rails.root, "public", "kit", self.file_type)
39
+ FileUtils.mkdir_p(parent) unless File.exists?(parent)
40
+
38
41
  path = File.join(Rails.root, "public", "kit", self.file_type, self.kit_name)
39
42
  dir = File.join(Rails.root, "public", "kit", self.file_type)
40
43
  found = false
@@ -1,3 +1,4 @@
1
1
  class Mapping < ActiveRecord::Base
2
+ attr_accessible :source_url, :target_url, :is_asset, :user_id, :status_code, :is_active, :params_url, :is_page, :system_id, :is_asset, :hidden
2
3
  belongs_to :user
3
4
  end
@@ -117,7 +117,7 @@ class User < KitIndexed
117
117
 
118
118
  after_create :welcome_message
119
119
 
120
- validates :display_name, :uniqueness=>{:scope=>:system_id}
120
+ validates :display_name, :uniqueness=>{:scope=>:system_id}, :allow_blank => true
121
121
  validates :email, :presence=>true, :uniqueness=>{:scope=>:system_id}
122
122
  validates :password, :presence=>true, :confirmation=>true, :on=>:create
123
123
  validates_confirmation_of :password, :on=>:create
@@ -24,7 +24,7 @@
24
24
  %a(name='editor')
25
25
  %p
26
26
  = f.label :body
27
- = cm_editor('html', :block, :body, f)
27
+ = cm_editor('xml', :block, :body, f)
28
28
  %p
29
29
  = kit_submit "Save"
30
30
  = kit_submit "Save And Edit Again"
@@ -1,7 +1,6 @@
1
1
  - content_for :page_scripts do
2
2
 
3
3
  function updated(id, moderated, visible) {
4
- console.debug(moderated + " " + visible);
5
4
  var mod;
6
5
  var nmod;
7
6
  var vis;
@@ -25,8 +24,6 @@
25
24
  vnmod = 0;
26
25
  }
27
26
 
28
- console.debug(id + ", " + moderated + ", " + visible + ", " + mod + ", " + nmod + "," + vis + ", " + vnmod);
29
-
30
27
  $('#mod_link_' + id + ' a').text(mod).attr('href', '/admin/dashboard/user_comment/' + id + '?comment[is_moderated]='+nmod);
31
28
 
32
29
  $('#vis_link_' + id + ' a').text(vis).attr('href', '/admin/dashboard/user_comment/' + id + '?comment[is_visible]='+vnmod);
@@ -57,18 +54,32 @@
57
54
  %th(width='200') User
58
55
  %th Moderated
59
56
  %th Visible
57
+ %th Delete
60
58
  - @comments.each do |comment|
61
- %tr
59
+ %tr(class="comment_#{comment.id}")
62
60
  %td
63
61
  = link_to comment.url, comment.url
64
62
  %td
65
63
  = link_to_if comment.user_id!=0, comment.user_email, "/admin/user/#{comment.user_id}"
66
64
  %td(id="mod_link_#{comment.id}")
67
- = link_to comment.is_moderated? ? 'Yes' : 'No', "/admin/dashboard/user_comment/#{comment.id}?comment[is_moderated]=#{comment.is_moderated? ? 0 : 1}", :method=>:post, :remote=>true
65
+ = icon_to comment.is_moderated? ? 'Yes' : 'No', "/admin/dashboard/user_comment/#{comment.id}?comment[is_moderated]=#{comment.is_moderated? ? 0 : 1}", false, :method=>:post, :remote=>true
68
66
  %td(id="vis_link_#{comment.id}")
69
- = link_to comment.is_visible? ? 'Yes' : 'No', "/admin/dashboard/user_comment/#{comment.id}?comment[is_visible]=#{comment.is_visible? ? 0 : 1}", :method=>:post, :remote=>true
70
- %tr
71
- %td(colspan="4")
67
+ = icon_to comment.is_visible? ? 'Yes' : 'No', "/admin/dashboard/user_comment/#{comment.id}?comment[is_visible]=#{comment.is_visible? ? 0 : 1}", false, :method=>:post, :remote=>true
68
+ %td(id="delete_link_#{comment.id}")
69
+ = icon_to "Delete", "/admin/dashboard/user_comment/#{comment.id}?delete=1", false, :method=>:post, :remote=>true, :confirm=>"Are you sure?"
70
+ %tr(class="comment_#{comment.id}")
71
+ %td(colspan="5")
72
+ .info
73
+ Name:
74
+ = comment.user_name
75
+ .info
76
+ Email:
77
+ = comment.user_email
78
+ .info
79
+ URL:
80
+ = link_to comment.user_url, comment.user_url
81
+ %br
72
82
  = field_reveal(comment.body, 200)
83
+ %hr
73
84
 
74
85
 
@@ -44,7 +44,7 @@
44
44
 
45
45
  %p
46
46
  %label End Date
47
- = @experiment.end_date.to_s(:short)
47
+ = @experiment.end_date.to_s(:short) rescue ''
48
48
 
49
49
  %p
50
50
  %label Goal
@@ -52,6 +52,14 @@
52
52
  .field_help
53
53
  Include new and updated entries in system activity log
54
54
 
55
+ - if @form.respond_to?(:layout)
56
+ %li.advanced
57
+ = f.label "Layout"
58
+ = f.select :layout, options_from_collection_for_select(Layout.sys(_sid).order(:name).all, 'name', 'name')
59
+
60
+ .field_help
61
+ The layout to use for this form when rendering it as a page.
62
+
55
63
  %li.advanced
56
64
  = f.label "Stylesheets"
57
65
  = f.text_field :stylesheets
@@ -43,7 +43,7 @@
43
43
  If this template has an equivalent version for mobile devices, select it here. As such, practically this is mutually exclusive with the "For mobile devices" option above.
44
44
  %p
45
45
  = f.label :body
46
- = cm_editor('html', :page_template, :body, f)
46
+ = cm_editor('xml', :page_template, :body, f)
47
47
  .field_help
48
48
  The content of the template.
49
49
  %p
@@ -11,17 +11,17 @@
11
11
 
12
12
  %p
13
13
  = f.label :body
14
- = f.text_area :body
14
+ = cm_editor("html", :view, :body, f, nil, :height=>"400px")
15
15
 
16
16
  %p
17
17
  = f.label :header
18
- = f.text_area :header
18
+ = cm_editor("html", :view, :header, f, nil, :height=>"120px")
19
19
  .field_help
20
20
  Optional
21
21
 
22
22
  %p
23
23
  = f.label :footer
24
- = f.text_area :footer
24
+ = cm_editor("html", :view, :footer, f, nil, :height=>"120px")
25
25
  .field_help
26
26
  Optional
27
27
 
@@ -50,7 +50,7 @@
50
50
 
51
51
  %p
52
52
  = f.label :layout_id
53
- = f.select :layout_id, options_from_collection_for_select(Layout.order(:name).all, :id, :name, @view.layout_id)
53
+ = f.select :layout_id, options_from_collection_for_select(Layout.sys(_sid).order(:name).all, :id, :name, @view.layout_id)
54
54
  .field_help
55
55
  Only used if rendering this view as a whole page. Not used if rendering the view in another page
56
56
 
@@ -4,7 +4,7 @@ function month_show_day(day) {
4
4
  $('#day_' + i).hide();
5
5
  }
6
6
  $('#day_' + day).show().find('li').show();
7
- $('li.selected').removeClass('selected');
7
+ $('table td.selected').removeClass('selected');
8
8
  $('#box_' + day).addClass('selected');
9
9
  }
10
10
 
@@ -12,7 +12,7 @@ function month_show_entry(day, entry) {
12
12
  month_show_day(day);
13
13
  $('#day_' + day + " li").hide();
14
14
  $('.entry_' + entry).show();
15
- $('li.selected').removeClass('selected');
15
+ $('table td.selected').removeClass('selected');
16
16
  $('#box_' + day).addClass('selected');
17
17
  }
18
18
 
@@ -75,18 +75,32 @@
75
75
  .next
76
76
  = link_to "&gt;".html_safe, current_path_with_new_params("month=#{next_month}&year=#{next_year}&srid=#{params[:srid]}&etid=#{params[:etid]}")
77
77
 
78
- - if options[:show_days]
79
- .clear
80
- %ol.titles.clearfix
81
- - for day in ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"] do
82
- %li
83
- = day
84
- .clear
85
- %br
86
- %ol.grid.clearfix
78
+
79
+ %table(class="#{mini ? 'mini' : 'full'}")
80
+ %tr.titles
81
+ - if options[:show_days]
82
+ %th.monday Monday
83
+ %th.tuesday Tuesday
84
+ %th.wednesday Wednesday
85
+ %th.thursday Thursday
86
+ %th.friday Friday
87
+ %th.saturday Saturday
88
+ %th.sunday Sunday
89
+
90
+ - row = 1
91
+ - col = 0
92
+
87
93
  - entries.keys.sort.each do |key|
88
94
  - days = entries[key]
89
- %li(id="box_#{key}" rel='#{key}' class="date_box #{date.strftime("%A").downcase if key==1} #{'today' if (date+(key-1).days).to_date==Date.today}")
95
+ - col += 1
96
+ = "<tr>".html_safe if col==1
97
+
98
+ - if col==1 && row==1
99
+ - while col < Date.new(date.year, date.month, 1).wday
100
+ = "<td class='pad'>&nbsp;</td>".html_safe
101
+ - col += 1
102
+
103
+ %td(id="box_#{key}" rel="#{key}" class="date_box #{date.strftime("%A").downcase if key==1} #{'today' if (date+(key-1).days).to_date==Date.today}")
90
104
  - if mini
91
105
  = key
92
106
  - else
@@ -94,23 +108,40 @@
94
108
  - if days.size==0 || mini
95
109
  &nbsp;
96
110
  - else
97
- %div
98
- - cnt = 0
99
- - days.each do |entry|
100
- - cnt += 1
101
- %p
102
- - if cnt>3
103
- - if Preference.get_cached(_sid, 'calendar_show_event_count')=='true'
104
- - cnt = days.size
105
- .event_count
106
- = "#{cnt}"
107
-
108
- = link_to_function "more...", "month_show_day(#{key})"
109
- - break
110
- - else
111
- = "*" unless entry.approved_at
112
- = link_to_function truncate(entry.name, :length=>20), "month_show_entry(#{key}, #{entry.id})"
113
- .clear
111
+ - cnt = 0
112
+ - days.each do |entry|
113
+ - cnt += 1
114
+ %p
115
+ - if cnt>3
116
+ - if Preference.get_cached(_sid, 'calendar_show_event_count')=='true'
117
+ - cnt = days.size
118
+ .event_count
119
+ = "#{cnt}"
120
+
121
+ = link_to_function "more...", "month_show_day(#{key})"
122
+ - break
123
+ - else
124
+ = "*" unless entry.approved_at
125
+ = link_to_function truncate(entry.name, :length=>20), "month_show_entry(#{key}, #{entry.id})"
126
+
127
+
128
+ - if col==7
129
+ = "</tr>".html_safe
130
+ - col = 0
131
+ - row += 1
132
+ - need_close = false
133
+ - if col > 0
134
+ - while col < 7
135
+ = "<td class='pad'>&nbsp;</td>".html_safe
136
+ - col += 1
137
+ - need_close = true
138
+
139
+ = "</tr>".html_safe if need_close
140
+
141
+
142
+
143
+
144
+ .clear
114
145
 
115
146
  - unless mini
116
147
  .details
@@ -1 +1 @@
1
- <% @categories.each do |cat| -%><option value="<%= cat.id %>"><%= cat.path %></option><% end -%>
1
+ <% @categories.each do |cat| -%><option value="<%= cat.id %>"><%= cat.path.strip %></option><% end -%>
@@ -1,12 +1,15 @@
1
+ - first_field = nil
1
2
  - content_for :page_scripts do
2
3
  $(document).ready(function() {
3
4
 
4
5
  - form.form_fields.each do |field|
6
+ - first_field = field
5
7
  - next unless field.form_field_type.html_options.not_blank?
6
8
  - field.form_field_type.html_options.split('|').each do |hh|
7
9
  $('#field_#{field.id}').attr('#{hh.split('=')[0]}', #{hh.split('=')[1]});
8
10
  $('#form_#{form.id}').validate();
9
- $('#field_#{form.form_fields.first.id}').focus();
11
+ - if first_field
12
+ $('#field_#{first_field.id}').focus();
10
13
  });
11
14
 
12
15
  %div(class="#{form.klass}")
@@ -14,6 +17,11 @@
14
17
  .form-title
15
18
  = form.title
16
19
 
20
+ - if first_field == nil && (is_admin? || (current_user && form.user_id==current_user.id) )
21
+ This form has no fields. Go to the
22
+ = link_to "form in the dashboard", "/admin/form/#{form.id}/fields"
23
+ to add some. Normal users will not see this message.
24
+
17
25
  - if show_body
18
26
  .body
19
27
  = form.body.html_safe
@@ -34,7 +34,9 @@
34
34
  #body
35
35
  %label(label_for='post_body')
36
36
  = t "forum.post_body"
37
- = form.text_area :body
37
+ .post_box(style="border: thin #AAA solid; margin-bottom: 10px;")
38
+ = f.text_area :body
39
+ = cm_editor('markdown', :topic_post, :body, form, nil, {:theme=>"neat", :dont_show_mode=>true, :dont_show_line_numbers=>true, :height=>300, :show_toolbar=>true}) if Preference.get_cached(_sid, "use_markdown_editor")=="true"
38
40
 
39
41
  - formatting = kit_snippet('Forum Post Formatting Help')
40
42
  - if formatting.not_blank?
@@ -43,7 +45,6 @@
43
45
 
44
46
  #submit
45
47
  = link_to_function t("forum.submit_post"), "send_this_form();", :class=>"action"
46
- = link_to_function t("forum.preview_post"), "$('#body .markItUpButton9').mouseup();", :class=>"action"
47
48
  .display_name
48
49
  Posting as &quot;
49
50
  = current_user.display_name if current_user && current_user.display_name
@@ -43,8 +43,8 @@ function edit_post(thread_id, post_id) {
43
43
  body.append('<div id="popup_form"></div>');
44
44
  div = $('#popup_form');
45
45
 
46
- div.append('Post: <textarea style="width:95%;" rows="18" id="topic_post_body_mod"></textarea>');
47
- markdown_editor('#topic_post_body_mod');
46
+ div.append('Post: <textarea style="width:95%;" rows="18" id="topic_post_body_mod"></textarea>');
47
+ // TODO: Markdown editor
48
48
  div.append('Comment: <textarea style="width:95%;" rows="6" id="comment"></textarea>');
49
49
  div.append('<br/><input type="button" onClick="save_edit();" value="Save"/>');
50
50
  $('#topic_post_body_mod').load("/forums/post/"+post_id);
@@ -14,7 +14,6 @@ $(document).ready(function() {
14
14
  show_post();
15
15
  <% end %>
16
16
 
17
- markdown_editor('#topic_post_body');
18
17
  });
19
18
 
20
19
  var editing_id = null;
@@ -28,9 +27,9 @@ function user_edit_post(post_id) {
28
27
  div = $('#popup_form');
29
28
 
30
29
  div.append('Post: <textarea style="width:95%;" rows="18" id="topic_post_body_edit"></textarea>');
30
+ // TODO Markdown editor
31
31
  div.append('<br/><input type="button" onClick="user_save_edit();" value="Save"/>');
32
32
  $('#topic_post_body_edit').load("/forums/post/"+post_id);
33
- markdown_editor('#topic_post_body_edit');
34
33
  editing_id = post_id;
35
34
  }
36
35
 
@@ -2,6 +2,10 @@
2
2
  - content_for :page_scripts do
3
3
  = render :partial=>"mod_thread", :formats=>[:js]
4
4
 
5
+ - content_for :head do
6
+ = javascript_include_tag "codemirror/editor"
7
+ = stylesheet_link_tag "codemirror/editor"
8
+
5
9
  #forums
6
10
  = render(:partial=>"introduction")
7
11
  .titles(class='clearfix')
@@ -0,0 +1 @@
1
+ <%= yield %>
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <title><%= yield :title %></title>
5
5
  <!-- layout: minimal -->
6
-
6
+
7
+ <%= stylesheet_link_tag "kit/cms" %>
7
8
  <%= render :partial=>'/layouts/cms-common', :locals=>{:include_menu=>true} %>
8
- <%= stylesheet_link_tag "kit_admin" %>
9
9
 
10
10
  <%= csrf_meta_tag %>
11
11
 
@@ -3,3 +3,5 @@ The following form has been submitted:
3
3
  <% @sub.form_submission_fields.each do |field| %>
4
4
  <%= field.form_field.name %>: <%= field.value %>
5
5
  <% end %>
6
+
7
+ View online: <%= "#{Preference.get_cached(@sid, 'host')}/admin/forms/#{@sub.form_id}/browse?id=#{@sub.id}" %>
@@ -19,7 +19,7 @@
19
19
  = render :partial=>"google_preview"
20
20
 
21
21
  - simple_mode = pref('advanced_mode')!='advanced'
22
-
22
+ - advanced_mode = !simple_mode
23
23
 
24
24
  #pageinfo.cms_form(style="margin-bottom: 10px;")
25
25
  = form_for @page do |f|
@@ -32,15 +32,14 @@
32
32
  = f.hidden_field :copy_of
33
33
 
34
34
  - if @page.new_record?
35
- - category_visible = !simple_mode || @page.category_id==nil || @page.errors[:name]
35
+ - category_visible = advanced_mode || params[:cat_id]==nil || @page.errors[:name].size>0
36
36
  %li(class='select optional more_options' id='article_category_input' style="#{'display: none;' unless category_visible}")
37
37
  %label(for='article_category_id') Category
38
- = text_field_tag "category_filter", '', {"data-focus"=>has_cat ? '':'special'}
39
- - cat_options = page.category_id ? "<option value='#{page.category.id}'>#{page.category.path}</option>" : options_from_collection_for_select(Category.order('name').sys(_sid).all, :id, :name)
40
- = select_tag "page[category_id]", cat_options.html_safe
41
- %br
42
- .field_help
43
- Enter any part of the name of the desired category
38
+ - cat_options = options_from_collection_for_select(Category.order('path').sys(_sid).all, :id, :path, @page.category_id || params[:cat_id])
39
+ = select_tag "page[category_id]", cat_options.html_safe, :style=>"width: 542px;"
40
+ %span.category_filter
41
+ = icon_to_function "Filter Categories", "$('.category_filter input').show().focus(); $('.category_filter a').hide();", false
42
+ = text_field_tag "category_filter", '', {"data-focus"=>has_cat ? '':'special', :style=>"width: 100px; display: none;"}
44
43
  #category_warning
45
44
  - else
46
45
  %script(type='text/javascript')
@@ -29,8 +29,7 @@ $('input#page_title').change(function() {
29
29
  }
30
30
  });
31
31
 
32
- $('#category_filter').bind('keydown', function () {
33
- if ($(this).val().length>0) {
32
+ $('#category_filter').bind('keyup', function () {
34
33
  $('#wait').show();
35
34
  $.ajax({type:"POST",
36
35
  url:"/category/select_options",
@@ -39,7 +38,6 @@ $('#category_filter').bind('keydown', function () {
39
38
  $('#wait').hide();
40
39
  },
41
40
  data:"type=page&search="+$(this).val()});
42
- }
43
41
  });
44
42
 
45
43
  $('#category_filter').focus();
@@ -0,0 +1,28 @@
1
+ var current_page_template_id = <%= current %>;
2
+
3
+ $(document).ready(function() {
4
+ $('#page_page_template_id').on('change', function() {
5
+ $('#error_explanation').hide();
6
+ var template_id = $('#page_page_template_id').val();
7
+ if (template_id == current_page_template_id) {
8
+ return;
9
+ }
10
+ $.get('/admin/page_templates/' + template_id + "/mapping", null, function(data) {
11
+ var options = '<option></option>';
12
+ $.each(data, function(index, value) {
13
+ options = options + "<option value='" + value + "'>";
14
+ options = options + value + "</option>";
15
+ });
16
+
17
+ $('.field_select').html($(options));
18
+ $('.field_select').each(function () {
19
+ var select = $(this);
20
+ var data_name = select.attr('data-name');
21
+ select.find('option').each(function() {
22
+ this.selected = (this.value == data_name);
23
+ });
24
+ });
25
+ $('ul#mapping').show();
26
+ });
27
+ });
28
+ });