effective_posts 0.5.2 → 0.5.3
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bcee40dabd2d40c4e60bd0ccab3756febf11c0a2
|
4
|
+
data.tar.gz: 49f930577bf1825eab1e9d4b00f8b26f3bc7c5a9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6237cd9d8c3ae23d41133ce4a4a866cf54f189e90f1cf5de1a2d5ea94129615c24d94db8d59bd2ab5de80a7331b3b628201c3fc02d3e9cc4d0870fb33ff9fdb2
|
7
|
+
data.tar.gz: 9fef710e83c802feae9981b056497109cdccf99ddcd8c9ee6c5eb170c7b66c773d76c2b0daa940d7a69724d7f580a2003ef3d394e162c785ee7c99574964207f
|
@@ -66,6 +66,17 @@ module Admin
|
|
66
66
|
elsif params[:commit] == 'Save and Add New'
|
67
67
|
flash[:success] = 'Successfully updated post'
|
68
68
|
redirect_to effective_posts.new_admin_post_path
|
69
|
+
elsif params[:commit] == 'Save and Duplicate'
|
70
|
+
begin
|
71
|
+
post = @post.duplicate!
|
72
|
+
flash[:success] = 'Successfully saved and duplicated post.'
|
73
|
+
flash[:info] = "You are now editting the duplicated post. This new post has been created as a Draft."
|
74
|
+
rescue => e
|
75
|
+
flash.delete(:success)
|
76
|
+
flash[:danger] = "Unable to duplicate post: #{e.message}"
|
77
|
+
end
|
78
|
+
|
79
|
+
redirect_to effective_posts.edit_admin_post_path(post || @post)
|
69
80
|
else
|
70
81
|
flash[:success] = 'Successfully updated post'
|
71
82
|
redirect_to effective_posts.edit_admin_post_path(@post)
|
@@ -91,6 +91,24 @@ module Effective
|
|
91
91
|
send_email(:post_submitted_to_admin, to_param)
|
92
92
|
end
|
93
93
|
|
94
|
+
# Returns a duplicated post object, or throws an exception
|
95
|
+
def duplicate!
|
96
|
+
Post.new(attributes.except('id', 'updated_at', 'created_at')).tap do |post|
|
97
|
+
post.title = post.title + ' (Copy)'
|
98
|
+
post.draft = true
|
99
|
+
|
100
|
+
if defined?(EffectiveAssets) && image.present?
|
101
|
+
post.add_to_asset_box(:image, image)
|
102
|
+
end
|
103
|
+
|
104
|
+
regions.each do |region|
|
105
|
+
post.regions.build(region.attributes.except('id', 'updated_at', 'created_at'))
|
106
|
+
end
|
107
|
+
|
108
|
+
post.save!
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
94
112
|
private
|
95
113
|
|
96
114
|
def send_email(email, *mailer_args)
|
@@ -32,4 +32,5 @@
|
|
32
32
|
- if defined?(EffectiveRegions)
|
33
33
|
= f.button :submit, 'Save and Edit Content', data: { disable_with: 'Saving...' }
|
34
34
|
= f.button :submit, 'Save and Add New', data: { disable_with: 'Saving...' }
|
35
|
+
= f.button :submit, 'Save and Duplicate', data: { disable_with: 'Saving...' }
|
35
36
|
= link_to 'Cancel', effective_posts.admin_posts_path
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: effective_posts
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Code and Effect
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-04-
|
11
|
+
date: 2017-04-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|