tb_cms 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/assets/javascripts/admin/cms/pages.js +43 -23
- data/app/controllers/admin/pages_controller.rb +17 -12
- data/app/views/admin/pages/_form.html.erb +8 -5
- data/app/views/admin/pages/_page_partials_form.html.erb +4 -1
- data/app/views/admin/pages/edit.html.erb +1 -26
- data/app/views/admin/pages/new.html.erb +0 -27
- data/lib/spud_cms/engine.rb +0 -1
- data/lib/spud_cms/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 29ed12dca3e942e4ee2e13842af13957f9ddbd78
|
4
|
+
data.tar.gz: 4437788f0073809f050876e5595e192aabf87e96
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d64be12a48126572e2b31dec5aa5ed13305e11c415d9ea30a1286337a42c76f8d221731dd9b95f5446cde01b18b8b56d60a96c2b84e151b918cc404061187de6
|
7
|
+
data.tar.gz: cc7cf7203a6963802c198ee3869fc3b531a9b2032dedaa933ba32860a72d01e4879cbfab42e0e43e19892ba524e48f225d117e7aca08cf9e5f8900ee802f4935
|
@@ -1,29 +1,49 @@
|
|
1
1
|
spud.admin.cms.pages = {};
|
2
2
|
|
3
3
|
(function(){
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
4
|
+
|
5
|
+
spud.admin.cms.pages = {
|
6
|
+
edit: function(){
|
7
|
+
$(".btn-preview").on('click', clickedPreviewButton);
|
8
|
+
}
|
9
|
+
};
|
10
|
+
|
11
|
+
var clickedPreviewButton = function(e){
|
12
|
+
var button = $(this);
|
13
|
+
var previewInput = $('input#preview');
|
14
|
+
var form = button.parents('form')[0];
|
15
|
+
|
16
|
+
button.button('reset');
|
17
|
+
form.target = '_blank';
|
18
|
+
previewInput.val(1);
|
19
|
+
|
20
|
+
setTimeout(function(){
|
21
|
+
form.target = '';
|
22
|
+
form.onSubmit = null;
|
23
|
+
previewInput.val(0);
|
24
|
+
}, 200);
|
25
|
+
};
|
26
|
+
|
27
|
+
spud.admin.cms.pages.initFormTabs = function(){
|
28
|
+
var tabNames = [];
|
29
|
+
|
30
|
+
$('.formtabs .formtab').each(function(tabind) {
|
31
|
+
if(tabind === 0) {
|
32
|
+
$(this).addClass('active');
|
33
|
+
}
|
34
|
+
this.id = 'tab-' + tabind;
|
35
|
+
tabNames.push($('.tab_name',this).first().val());
|
36
|
+
});
|
37
|
+
|
38
|
+
var tabButtons = $('.formtabs .formtab_buttons').first();
|
39
|
+
for(var x=0;x<tabNames.length;x++)
|
40
|
+
{
|
41
|
+
var tabButton = $('<li><a href="#tab-' + x + '" data-toggle="tab">' + tabNames[x] + '</a></li>');
|
42
|
+
if(x === 0) {
|
43
|
+
tabButton.addClass('active');
|
26
44
|
}
|
45
|
+
tabButtons.append(tabButton);
|
46
|
+
}
|
47
|
+
};
|
27
48
|
|
28
|
-
};
|
29
49
|
})();
|
@@ -68,7 +68,7 @@ class Admin::PagesController < Admin::ApplicationController
|
|
68
68
|
end
|
69
69
|
|
70
70
|
def update
|
71
|
-
@page.
|
71
|
+
@page.assign_attributes(page_params)
|
72
72
|
if params[:preview] && params[:preview].to_i == 1
|
73
73
|
preview
|
74
74
|
return
|
@@ -108,11 +108,19 @@ class Admin::PagesController < Admin::ApplicationController
|
|
108
108
|
template = params[:template] && !params[:template].blank? ? layouts[params[:template]] : nil
|
109
109
|
page = SpudPage.where(:id => params[:page]).includes(:spud_page_partials).first
|
110
110
|
page = SpudPage.new if page.blank?
|
111
|
+
|
111
112
|
old_page_partials = Array.new(page.spud_page_partials)
|
112
113
|
new_page_partials = []
|
114
|
+
|
113
115
|
if !template.blank?
|
114
116
|
template[:partials].each do |page_part|
|
115
|
-
|
117
|
+
old_partial = old_page_partials.find{|pp| page_part.strip == pp.name }
|
118
|
+
if old_partial
|
119
|
+
new_page_partials << old_partial
|
120
|
+
old_page_partials.delete(old_partial)
|
121
|
+
else
|
122
|
+
new_page_partials << page.spud_page_partials.build(:name => page_part.strip)
|
123
|
+
end
|
116
124
|
end
|
117
125
|
else
|
118
126
|
layout, layout_info = layouts.select{|k,v| v[:default]}.flatten
|
@@ -121,17 +129,14 @@ class Admin::PagesController < Admin::ApplicationController
|
|
121
129
|
new_page_partials << page.spud_page_partials.build(:name => part)
|
122
130
|
end
|
123
131
|
end
|
124
|
-
new_page_partials.each do |partial|
|
125
|
-
old_partial = old_page_partials.select {|pp| partial.name.strip.downcase == pp.name.strip.downcase }
|
126
|
-
logger.debug "testing content swap"
|
127
|
-
partial.content = old_partial[0].content if !old_partial.blank?
|
128
|
-
logger.debug partial.content
|
129
|
-
end
|
130
132
|
|
131
133
|
respond_to do |format|
|
132
134
|
format.js {
|
133
135
|
if response.status == 200
|
134
|
-
render(:partial => 'page_partials_form', :locals => {
|
136
|
+
render(:partial => 'page_partials_form', :locals => {
|
137
|
+
:spud_page_partials => new_page_partials,
|
138
|
+
:remove_page_partials => old_page_partials
|
139
|
+
})
|
135
140
|
else
|
136
141
|
render(:text => message)
|
137
142
|
end
|
@@ -145,8 +150,6 @@ class Admin::PagesController < Admin::ApplicationController
|
|
145
150
|
redirect_to admin_pages_url
|
146
151
|
end
|
147
152
|
|
148
|
-
|
149
|
-
|
150
153
|
private
|
151
154
|
def load_page
|
152
155
|
@page = SpudPage.where(:id => params[:id]).includes(:spud_page_partials).first
|
@@ -161,7 +164,9 @@ private
|
|
161
164
|
end
|
162
165
|
|
163
166
|
def page_params
|
164
|
-
params.require(:spud_page).permit(:name, :url_name, :created_by, :updated_by, :layout, :visibility, :spud_page_id,
|
167
|
+
params.require(:spud_page).permit(:name, :url_name, :created_by, :updated_by, :layout, :visibility, :spud_page_id,
|
168
|
+
:publish_at, :format, :meta_description, :meta_keywords, :page_order, :spud_page_partials_attributes, :use_custom_url_name,
|
169
|
+
:published, :notes, :spud_page_partials_attributes => [:id, :name, :content, :format, :_destroy])
|
165
170
|
end
|
166
171
|
|
167
172
|
end
|
@@ -11,12 +11,12 @@
|
|
11
11
|
<div id="page_partials_form" class="formtabs tab-content">
|
12
12
|
<ul class="formtab_buttons nav nav-tabs">
|
13
13
|
</ul>
|
14
|
-
<%=f.fields_for :spud_page_partials do |b
|
14
|
+
<%= f.fields_for :spud_page_partials do |b| %>
|
15
15
|
<div class="formtab tab-pane">
|
16
|
-
<%=b.hidden_field :name,:class => "tab_name"%>
|
17
|
-
<%=b.text_area :content,:class => "tinymce"%>
|
16
|
+
<%= b.hidden_field :name,:class => "tab_name" %>
|
17
|
+
<%= b.text_area :content,:class => "tinymce" %>
|
18
18
|
</div>
|
19
|
-
<%end%>
|
19
|
+
<% end %>
|
20
20
|
</div>
|
21
21
|
<br />
|
22
22
|
<fieldset>
|
@@ -90,6 +90,9 @@
|
|
90
90
|
<span class="help-inline">Have a note to make about this page while you work? Place it here for later.</span>
|
91
91
|
</div>
|
92
92
|
</div>
|
93
|
-
<%=hidden_field_tag "preview"
|
93
|
+
<%= hidden_field_tag "preview", 0 %>
|
94
94
|
</fieldset>
|
95
95
|
|
96
|
+
<script type="text/javascript">
|
97
|
+
$(document).ready(spud.admin.cms.pages.edit);
|
98
|
+
</script>
|
@@ -5,7 +5,10 @@
|
|
5
5
|
<% spud_page_partials.each_with_index do |spud_page_partial, index| %>
|
6
6
|
<div class="formtab tab-pane">
|
7
7
|
<input type="hidden" class="tab_name" name="spud_page[spud_page_partials_attributes][<%= index %>][name]" value="<%= spud_page_partial.name %>" />
|
8
|
-
|
8
|
+
<% if spud_page_partial.id %>
|
9
|
+
<%= hidden_field_tag "spud_page[spud_page_partials_attributes][#{index}][id]", spud_page_partial.id %>
|
10
|
+
<% end %>
|
11
|
+
<textarea class="tinymce" name="spud_page[spud_page_partials_attributes][<%= index %>][content]">
|
9
12
|
<%= spud_page_partial.content %>
|
10
13
|
</textarea>
|
11
14
|
</div>
|
@@ -1,32 +1,7 @@
|
|
1
|
-
<%=form_for @page,:url => admin_page_path(:id => @page.id),:html=>{:class=>"form-horizontal page_form"
|
1
|
+
<%=form_for @page,:url => admin_page_path(:id => @page.id),:html=>{:class=>"form-horizontal page_form"} do |f|%>
|
2
2
|
<%=render :partial => "form",:locals => {:f => f}%>
|
3
3
|
<div class="form-actions">
|
4
4
|
<%=f.submit "Save Page", :class=>"btn btn-primary btn-save" %> <%=f.submit "Preview", :class=>"btn btn-info btn-preview"%> or <%=link_to "cancel",admin_pages_path,:class => "btn"%>
|
5
5
|
</div>
|
6
6
|
<%end%>
|
7
7
|
<br />
|
8
|
-
<script type="text/javascript">
|
9
|
-
$(document).ready(function() {
|
10
|
-
$('input[type=submit].btn-preview').click(function(evt) {
|
11
|
-
|
12
|
-
$(this).button('reset')
|
13
|
-
$('#preview').val(1);
|
14
|
-
var form = $('form.page_form')[0];
|
15
|
-
form.onsubmit = function() {
|
16
|
-
window.open('about:blank','preview_window','width=500,height=400')
|
17
|
-
};
|
18
|
-
form.target = 'preview_window';
|
19
|
-
|
20
|
-
});
|
21
|
-
|
22
|
-
$('input[type=submit].btn-save').click(function(evt) {
|
23
|
-
$('#preview').val(0);
|
24
|
-
var form = $('form.page_form')[0];
|
25
|
-
form.onsubmit = null;
|
26
|
-
form.target = null;
|
27
|
-
});
|
28
|
-
|
29
|
-
});
|
30
|
-
|
31
|
-
</script>
|
32
|
-
|
@@ -5,30 +5,3 @@
|
|
5
5
|
</div>
|
6
6
|
|
7
7
|
<%end%>
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
<script type="text/javascript">
|
12
|
-
$(document).ready(function() {
|
13
|
-
$('input[type=submit].btn-preview').click(function(evt) {
|
14
|
-
|
15
|
-
$(this).button('reset')
|
16
|
-
$('#preview').val(1);
|
17
|
-
var form = $('form.page_form')[0];
|
18
|
-
form.onsubmit = function() {
|
19
|
-
window.open('about:blank','preview_window','width=500,height=400')
|
20
|
-
};
|
21
|
-
form.target = 'preview_window';
|
22
|
-
|
23
|
-
});
|
24
|
-
|
25
|
-
$('input[type=submit].btn-save').click(function(evt) {
|
26
|
-
$('#preview').val(0);
|
27
|
-
var form = $('form.page_form')[0];
|
28
|
-
form.onsubmit = null;
|
29
|
-
form.target = null;
|
30
|
-
});
|
31
|
-
|
32
|
-
});
|
33
|
-
|
34
|
-
</script>
|
data/lib/spud_cms/engine.rb
CHANGED
data/lib/spud_cms/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tb_cms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Westlake Design
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-05-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|