effective_posts 1.1.6 → 1.1.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a8e22a8b5820e9247c7706dc4b865b5594716a77735287df3db5c9b024d84548
4
- data.tar.gz: 22015e1dff80275f1b947856491906ce49b86f394492ff4c864ae67f5c8f1fd9
3
+ metadata.gz: 15619ebf6addfa716f58d0fb7869856a7767d3ce2b330e215965f2597d6dc2d2
4
+ data.tar.gz: a9b86d1453132f0aa42a14118f7f6b8c2d20efe2ea9bb7a216422329cde031e2
5
5
  SHA512:
6
- metadata.gz: 11170221b45aff9ce7760151ae2c8acd5fc66ac96e9d9ad569b7681b9fc141679918d46c934346d2e5f1c8263def85c5c04256f541293fd54d2f2de5176adabc
7
- data.tar.gz: 22e3ab7afd761b286364594ef05556b0df0e895520f9495deff680b883a37a0e8b887d83fa2e4d4e6016027d500292a8502ee9661c6c334ea702d7be7f4f4f8d
6
+ metadata.gz: 4f8cef5af970f766636881e7e2ac17ff6d41e23b11b97e24695dd0dab6311c427e1247cb9712dbf1acca7b273a1ec73ab7c9abacdc91ae162078076aa654e4e0
7
+ data.tar.gz: 18f8c7ec44d83352c57486ff6f33d6b68288dff8ab27fb1e6cb1322129cb74e76ac9ee808468d9e97499e4a6385650797c21fc035497770725ff5ef7bfd72330
@@ -25,21 +25,14 @@ module Effective
25
25
 
26
26
  EffectivePosts.authorize!(self, :index, Effective::Post)
27
27
 
28
- if params[:page]
29
- @page_title ||= ((params[:category].presence || 'Blog').titleize + " - Page #{params[:page].to_s}")
30
- @canonical_url ||= effective_posts.posts_url(page: params[:page])
31
- else
32
- @page_title ||= (params[:category].presence || 'Blog').titleize
33
- @canonical_url ||= effective_posts.posts_url
34
- end
35
-
28
+ @page_title ||= [(params[:category] || 'Blog').to_s.titleize, (" - Page #{params[:page]}" if params[:page])].compact.join
29
+ @canonical_url ||= helpers.effective_post_category_url(params[:category], page: params[:page])
36
30
  end
37
31
 
38
32
  def show
39
33
  @posts ||= Effective::Post.posts(user: current_user, category: params[:category], unpublished: EffectivePosts.authorized?(self, :admin, :effective_posts))
40
34
  @post = @posts.find(params[:id])
41
35
 
42
-
43
36
  if @post.respond_to?(:roles_permit?)
44
37
  raise Effective::AccessDenied.new('Access Denied', :show, @post) unless @post.roles_permit?(current_user)
45
38
  end
@@ -51,7 +44,7 @@ module Effective
51
44
  'Hi Admin!',
52
45
  ('You are viewing a hidden post.' unless @post.published?),
53
46
  'Click here to',
54
- ("<a href='#{effective_regions.edit_path(effective_posts.post_path(@post, exit: effective_posts.post_path(@post)))}' class='alert-link'>edit post content</a> or" unless admin_edit?),
47
+ ("<a href='#{effective_regions.edit_path(effective_posts.post_path(@post, exit: effective_posts.post_path(@post)))}' class='alert-link' data-no-turbolink='true' data-turbolinks='false'>edit post content</a> or" unless admin_edit?),
55
48
  ("<a href='#{effective_posts.edit_admin_post_path(@post)}' class='alert-link'>edit post settings</a>.")
56
49
  ].compact.join(' ')
57
50
  end
@@ -29,20 +29,25 @@ module EffectivePostsHelper
29
29
  end
30
30
 
31
31
  def effective_post_category_path(category, opts = nil)
32
- return effective_posts.posts_path unless category.present?
32
+ return effective_posts.posts_path(opts || {}) unless category.present?
33
33
 
34
34
  category = category.to_s.downcase
35
- opts ||= {}
35
+ opts = (opts || {}).compact
36
+ query = ('?' + opts.to_query) if opts.present?
36
37
 
37
38
  if EffectivePosts.use_blog_routes
38
- "/blog/category/#{category}"
39
+ "/blog/category/#{category}#{query}"
39
40
  elsif EffectivePosts.use_category_routes
40
- "/#{category}"
41
+ "/#{category}#{query}"
41
42
  else
42
- effective_posts.posts_path(opts.merge(category: category))
43
+ effective_posts.posts_path(opts.merge(category: category.presence).compact)
43
44
  end
44
45
  end
45
46
 
47
+ def effective_post_category_url(category, opts = nil)
48
+ root_url.to_s.chomp('/') + effective_post_category_path(category, opts)
49
+ end
50
+
46
51
  def link_to_post_category(category, options = {})
47
52
  category = category.to_s.downcase
48
53
  link_to(category.to_s.titleize, effective_post_category_path(category), title: category.to_s.titleize)
@@ -13,7 +13,7 @@ module Effective
13
13
 
14
14
  self.table_name = EffectivePosts.posts_table_name.to_s
15
15
 
16
- belongs_to :user
16
+ belongs_to :user, optional: true
17
17
 
18
18
  # Attributes
19
19
  # title :string
@@ -5,7 +5,7 @@
5
5
 
6
6
  = dropdown_link_to 'Edit', effective_posts.edit_admin_post_path(post)
7
7
  - if EffectivePosts.use_fullscreen_editor
8
- = dropdown_link_to 'Edit Content', effective_post_path(post, edit: true), title: 'Edit Content', 'data-no-turbolink': true, target: '_blank'
8
+ = dropdown_link_to 'Edit Content', effective_post_path(post, edit: true), title: 'Edit Content', 'data-no-turbolink': true, 'data-turbolinks': false, target: '_blank'
9
9
 
10
10
  = dropdown_link_to 'View', effective_post_path(post), target: '_blank'
11
11
 
@@ -1,5 +1,2 @@
1
1
  .effective-posts-recent-posts
2
- - posts.each do |post|
3
- .effective-post
4
- %p= link_to post, effective_post_path(post)
5
-
2
+ = render(posts)
@@ -1,3 +1,3 @@
1
1
  module EffectivePosts
2
- VERSION = '1.1.6'.freeze
2
+ VERSION = '1.1.11'.freeze
3
3
  end
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: 1.1.6
4
+ version: 1.1.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-08-13 00:00:00.000000000 Z
11
+ date: 2020-09-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -143,7 +143,6 @@ files:
143
143
  - app/helpers/effective_truncate_html_helper.rb
144
144
  - app/mailers/effective/posts_mailer.rb
145
145
  - app/models/effective/access_denied.rb
146
- - app/models/effective/datatables/posts.rb
147
146
  - app/models/effective/post.rb
148
147
  - app/models/effective/snippets/read_more_divider.rb
149
148
  - app/views/admin/posts/_actions.html.haml
@@ -183,7 +182,7 @@ homepage: https://github.com/code-and-effect/effective_posts
183
182
  licenses:
184
183
  - MIT
185
184
  metadata: {}
186
- post_install_message:
185
+ post_install_message:
187
186
  rdoc_options: []
188
187
  require_paths:
189
188
  - lib
@@ -198,8 +197,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
198
197
  - !ruby/object:Gem::Version
199
198
  version: '0'
200
199
  requirements: []
201
- rubygems_version: 3.0.3
202
- signing_key:
200
+ rubygems_version: 3.1.2
201
+ signing_key:
203
202
  specification_version: 4
204
203
  summary: A blog implementation with WYSIWYG content editing, post scheduling, pagination
205
204
  and optional top level routes for each post category.
@@ -1,40 +0,0 @@
1
- if Gem::Version.new(EffectiveDatatables::VERSION) < Gem::Version.new('3.0')
2
- module Effective
3
- module Datatables
4
- class Posts < Effective::Datatable
5
- datatable do
6
- default_order :published_at, :desc
7
-
8
- table_column :published_at
9
- table_column :id, visible: false
10
-
11
- table_column :title
12
- col :slug, visible: false
13
- table_column :category, filter: { type: :select, values: EffectivePosts.categories }
14
-
15
- if EffectivePosts.submissions_enabled
16
- table_column :approved, column: 'NOT(draft)', as: :boolean do |post|
17
- post.draft ? 'No' : 'Yes'
18
- end
19
-
20
- table_column :draft, visible: false
21
- else
22
- table_column :draft
23
- end
24
-
25
- table_column :start_at
26
- table_column :end_at, visible: false
27
- table_column :location, visible: false
28
-
29
- table_column :created_at, label: 'Submitted at', visible: false
30
-
31
- table_column :actions, sortable: false, filter: false, partial: '/admin/posts/actions'
32
- end
33
-
34
- def collection
35
- Effective::Post.all
36
- end
37
- end
38
- end
39
- end
40
- end