publify_core 9.0.0 → 9.0.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of publify_core might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1f81670a189d8b1a57d349dc688c93340d586128
4
- data.tar.gz: 5fd4da9990342b133e045b7a797564407dbf915d
3
+ metadata.gz: 1a1cf89cac6e217d23be79402f8ea4fab3ef6d88
4
+ data.tar.gz: 1c7a95fab11db0e9c95a10b21094f59d959b7d8b
5
5
  SHA512:
6
- metadata.gz: a69c04c575796c90ac2df1c7d7de537c328f6633e93e94833896efb27c355239c8a5d211bd9b3fb4938c45d847cf38323fca36ed4a1b17a96ec082bb2b6415a2
7
- data.tar.gz: 0f4331c8fdb2fdc2c1bc2f1b61ed7cc0918bf195a1afe1f794adbb1f8d40e18b5cc077ef4e19a534702ea66448b6bda267629c4ea8f7939b72005bca7ff0b84f
6
+ metadata.gz: f41c5ddd206410b9c6fbe1a9849a811e0fc074c9092924c1725e0a03f498807eb84e2c43b4f52d527497901d58bbda91b3293d5c492b6cd7077c2bc3aef18f82
7
+ data.tar.gz: a56f839f4b1cff29318ffcd76fe6c1f4e680474534bd54d9ae184e28b4c1fe7e24400f2ce2ec46010cd382dfeae22080a5ddb0324dca648fcca5a8b9fcba654d
data/CHANGELOG.md CHANGED
@@ -1,70 +1,79 @@
1
1
  # Changelog
2
2
 
3
+ ## 9.0.1
4
+
5
+ * Remove link_to_author setting: author email is no longer shown. Whoever
6
+ really wants to have it shown should create a new theme (mvz)
7
+ * Update dependencies (mvz)
8
+ * Make Devise use the correct layout (mvz)
9
+ * Ensure email parameter is processed correctly on sign up (mvz)
10
+ * Correctly serve js files from themes (cantin)
11
+
3
12
  ## 9.0.0
4
13
 
5
- * Replace page caching with fragment caching
6
- * Replace home-grown state machine with aasm
7
- * Remove automigration. Users should run db:migrate themselves
8
- * Let first-run users pick their own password instead of generating one
14
+ * Replace page caching with fragment caching (mvz)
15
+ * Replace home-grown state machine with aasm (mvz)
16
+ * Remove automigration. Users should run db:migrate themselves (mvz)
17
+ * Let first-run users pick their own password instead of generating one (mvz)
9
18
 
10
19
  * Dependencies
11
- - Update dependencies
12
- - Drop support for Ruby 2.1
20
+ - Update dependencies (mvz)
21
+ - Drop support for Ruby 2.1 (mvz)
13
22
 
14
23
  * Removing of old/outdated functionality
15
- - Remove support for feedburner
16
- - Drop old redirects
17
- - Remove RSD end point
24
+ - Remove support for feedburner (mvz)
25
+ - Drop old redirects (mvz)
26
+ - Remove RSD end point (mvz)
18
27
 
19
28
  * Feedback
20
- - Stop sending trackbacks and pingbacks
21
- - Stop accepting trackbacks
29
+ - Stop sending trackbacks and pingbacks (mvz)
30
+ - Stop accepting trackbacks (mvz)
22
31
 
23
32
  * Improve Atom/RSS feeds
24
- - Fix URLs used for resources
25
- - Fix URL/alternate links to not just point to the site root
26
- - Unify comment and trackback feeds into feedback feed
27
- - Add caching for feeds
28
- - Fix atom entry publication date
29
- - Fix ordering of feedback feed by using created_at
33
+ - Fix URLs used for resources (mvz)
34
+ - Fix URL/alternate links to not just point to the site root (mvz)
35
+ - Unify comment and trackback feeds into feedback feed (mvz)
36
+ - Add caching for feeds (mvz)
37
+ - Fix atom entry publication date (mvz)
38
+ - Fix ordering of feedback feed by using created_at (mvz)
30
39
 
31
40
  * Bug fixes
32
- - Fix user resource image display when using Fog
33
- - Fix sending of welcome email
34
- - Fix Tag page description
35
- - Handle setting published_at to blank
36
- - Handle preview of articles without publication date
37
- - Include CSRF meta tag so remote forms work
38
- - Fix sidebar field rendering in admin
39
- - Fix formatting of settings forms in admin
41
+ - Fix user resource image display when using Fog (mvz)
42
+ - Fix sending of welcome email (mvz)
43
+ - Fix Tag page description (mvz)
44
+ - Handle setting published_at to blank (mvz)
45
+ - Handle preview of articles without publication date (mvz)
46
+ - Include CSRF meta tag so remote forms work (mvz)
47
+ - Fix sidebar field rendering in admin (mvz)
48
+ - Fix formatting of settings forms in admin (mvz)
40
49
 
41
50
  * Code improvements
42
- - Performance improvements
43
- - Improve tags controller
44
- - Clean up archives and authors page code
45
- - Unify content models more to improve performance when mixing models
51
+ - Performance improvements (mvz)
52
+ - Improve tags controller (mvz)
53
+ - Clean up archives and authors page code (mvz)
54
+ - Unify content models more to improve performance when mixing models (mvz)
46
55
 
47
56
  ## 9.0.0.pre6 / 2016-12-23
48
57
 
49
- * Remove now-broken caching of theme assets
50
- * Remove cache invalidation support code from content
58
+ * Remove now-broken caching of theme assets (mvz)
59
+ * Remove cache invalidation support code from content (mvz)
51
60
 
52
61
  ## 9.0.0.pre5 / 2016-12-17
53
62
 
54
- * Update dependencies
63
+ * Update dependencies (mvz)
55
64
  * Remove activerecord-session_store. The main application should decide on the
56
- store to use.
57
- * Remove unused translations
65
+ store to use (mvz)
66
+ * Remove unused translations (mvz)
58
67
 
59
68
  ## 9.0.0.pre4
60
69
 
61
- * Ensure theme files are part of the gem.
70
+ * Ensure theme files are part of the gem (mvz)
62
71
 
63
72
  ## 9.0.0.pre3
64
73
 
65
- * Update to Rails 5.0
74
+ * Update to Rails 5.0 (mvz)
66
75
  * Remove page caching since the released version of actionpack-page_caching is
67
- incompatible with Rails 5.
76
+ incompatible with Rails 5 (mvz)
68
77
 
69
78
  ## 9.0.0.pre2
70
79
 
@@ -2,15 +2,9 @@ require 'cancancan'
2
2
 
3
3
  class BaseController < ApplicationController
4
4
  before_action :fire_triggers, :load_lang, :set_paths
5
- before_action :configure_permitted_parameters, if: :devise_controller?
6
5
 
7
6
  private
8
7
 
9
- def configure_permitted_parameters
10
- # TODO: Check if this is still needed
11
- devise_parameter_sanitizer.permit(:sign_up, keys: [:email])
12
- end
13
-
14
8
  def login_required
15
9
  authenticate_user! && authorize!(params[:action], params[:controller])
16
10
  end
@@ -1,10 +1,13 @@
1
1
  class ThemeController < ContentController
2
+ # Allow javascripts via Get request
3
+ skip_before_action :verify_authenticity_token, only: :javascripts
4
+
2
5
  def stylesheets
3
6
  render_theme_item(:stylesheets, params[:filename], 'text/css; charset=utf-8')
4
7
  end
5
8
 
6
- def javascript
7
- render_theme_item(:javascript, params[:filename], 'text/javascript; charset=utf-8')
9
+ def javascripts
10
+ render_theme_item(:javascripts, params[:filename], 'text/javascript; charset=utf-8')
8
11
  end
9
12
 
10
13
  def images
@@ -22,18 +22,6 @@ module AuthorsHelper
22
22
  end
23
23
 
24
24
  def author_link(article)
25
- return h(article.author) if just_author?(article.user)
26
- return h(article.user.name) if just_name?(article.user)
27
- content_tag(:a, href: "mailto:#{h article.user.email}") { h(article.user.name) }
28
- end
29
-
30
- private
31
-
32
- def just_author?(author)
33
- author.nil? || author.name.blank?
34
- end
35
-
36
- def just_name?(author)
37
- author.present? && !this_blog.link_to_author
25
+ h(article.author_name)
38
26
  end
39
27
  end
@@ -31,6 +31,11 @@ module BaseHelper
31
31
  stylesheet_link_tag "/stylesheets/theme/#{name}.css" if File.exist? src
32
32
  end
33
33
 
34
+ def themeable_javascript_include_tag(name)
35
+ src = this_blog.current_theme.path + "/javascripts/#{name}.js"
36
+ javascript_include_tag "/javascripts/theme/#{name}.js" if File.exist? src
37
+ end
38
+
34
39
  def render_to_string(*args, &block)
35
40
  controller.send(:render_to_string, *args, &block)
36
41
  end
data/app/models/blog.rb CHANGED
@@ -54,7 +54,6 @@ class Blog < ActiveRecord::Base
54
54
  setting :default_allow_pings, :boolean, false
55
55
  setting :default_allow_comments, :boolean, true
56
56
  setting :default_moderate_comments, :boolean, false
57
- setting :link_to_author, :boolean, false
58
57
  setting :show_extended_on_rss, :boolean, true # deprecated but still needed for backward compatibility
59
58
  setting :hide_extended_on_rss, :boolean, false
60
59
  setting :theme, :string, 'plain'
@@ -45,6 +45,14 @@ class Content < ActiveRecord::Base
45
45
  end
46
46
  end
47
47
 
48
+ def author_name
49
+ if user.present? && user.name.present?
50
+ user.name
51
+ else
52
+ author
53
+ end
54
+ end
55
+
48
56
  # Set the text filter for this object.
49
57
  # NOTE: Due to how Rails injects association methods, this cannot be put in ContentBase
50
58
  # TODO: Allowing assignment of a string here is not very clean.
@@ -109,16 +117,11 @@ class Content < ActiveRecord::Base
109
117
  self[:whiteboard] ||= {}
110
118
  end
111
119
 
112
- def link_to_author?
113
- user.email.present? && blog.link_to_author
114
- end
115
-
116
120
  def get_rss_description
117
121
  return '' unless blog.rss_description
118
- return '' unless respond_to?(:user) && user && user.name
119
122
 
120
123
  rss_desc = blog.rss_description_text
121
- rss_desc.gsub!('%author%', user.name)
124
+ rss_desc.gsub!('%author%', author_name)
122
125
  rss_desc.gsub!('%blog_url%', blog.base_url)
123
126
  rss_desc.gsub!('%blog_name%', blog.blog_name)
124
127
  rss_desc.gsub!('%permalink_url%', permalink_url)
@@ -2,8 +2,7 @@ xml.instruct! :xml, version: '1.0', encoding: 'UTF-8'
2
2
  xml.instruct! 'xml-stylesheet', type: 'text/css', href: url_for('/stylesheets/rss.css')
3
3
 
4
4
  xml.rss 'version' => '2.0', 'xmlns:dc' => 'http://purl.org/dc/elements/1.1/',
5
- 'xmlns:atom' => 'http://www.w3.org/2005/Atom',
6
- 'xmlns:trackback' => 'http://madskills.com/public/xml/rss/module/trackback/' do
5
+ 'xmlns:atom' => 'http://www.w3.org/2005/Atom' do
7
6
  xml.channel do
8
7
  xml.title feed_title
9
8
  xml.link @article.permalink_url
@@ -2,8 +2,7 @@ xml.instruct! :xml, version: '1.0', encoding: 'UTF-8'
2
2
  xml.instruct! 'xml-stylesheet', type: 'text/css', href: url_for('/stylesheets/rss.css')
3
3
 
4
4
  xml.rss 'version' => '2.0', 'xmlns:dc' => 'http://purl.org/dc/elements/1.1/',
5
- 'xmlns:atom' => 'http://www.w3.org/2005/Atom',
6
- 'xmlns:trackback' => 'http://madskills.com/public/xml/rss/module/trackback/' do
5
+ 'xmlns:atom' => 'http://www.w3.org/2005/Atom' do
7
6
  xml.channel do
8
7
  xml.title feed_title
9
8
  xml.link this_blog.base_url
@@ -2,8 +2,7 @@ xml.instruct! :xml, version: '1.0', encoding: 'UTF-8'
2
2
  xml.instruct! 'xml-stylesheet', type: 'text/css', href: url_for('/stylesheets/rss.css')
3
3
 
4
4
  xml.rss 'version' => '2.0', 'xmlns:dc' => 'http://purl.org/dc/elements/1.1/',
5
- 'xmlns:atom' => 'http://www.w3.org/2005/Atom',
6
- 'xmlns:trackback' => 'http://madskills.com/public/xml/rss/module/trackback/' do
5
+ 'xmlns:atom' => 'http://www.w3.org/2005/Atom' do
7
6
  xml.channel do
8
7
  xml.title feed_title
9
8
  xml.link this_blog.base_url
@@ -2,8 +2,7 @@ xml.instruct! :xml, version: '1.0', encoding: 'UTF-8'
2
2
  xml.instruct! 'xml-stylesheet', type: 'text/css', href: url_for('/stylesheets/rss.css')
3
3
 
4
4
  xml.rss 'version' => '2.0', 'xmlns:dc' => 'http://purl.org/dc/elements/1.1/',
5
- 'xmlns:atom' => 'http://www.w3.org/2005/Atom',
6
- 'xmlns:trackback' => 'http://madskills.com/public/xml/rss/module/trackback/' do
5
+ 'xmlns:atom' => 'http://www.w3.org/2005/Atom' do
7
6
  xml.channel do
8
7
  xml.title feed_title
9
8
  xml.link this_blog.base_url
@@ -3,6 +3,7 @@
3
3
  <head>
4
4
  <%= render 'shared/page_header' %>
5
5
  <%= themeable_stylesheet_link_tag :theme %>
6
+ <%= themeable_javascript_include_tag :theme %>
6
7
  <meta name="viewport" content="width=device-width, initial-scale=1">
7
8
  <title><%=h page_title %></title>
8
9
  </head>
@@ -1,17 +1,6 @@
1
1
  feed.entry item, id: "urn:uuid:#{item.guid}", published: item.published_at, url: item.permalink_url do |entry|
2
2
  entry.author do
3
- name = begin
4
- item.user.name
5
- rescue
6
- item.author
7
- end
8
- email = begin
9
- item.user.email
10
- rescue
11
- nil
12
- end
13
- entry.name name
14
- entry.email email unless email.blank? || !this_blog.link_to_author
3
+ entry.name item.author_name
15
4
  end
16
5
 
17
6
  if item.is_a?(Note)
@@ -8,7 +8,7 @@ xm.item do
8
8
  xm.description content_html + item.get_rss_description
9
9
  xm.pubDate item.published_at.rfc822
10
10
  xm.guid "urn:uuid:#{item.guid}", 'isPermaLink' => 'false'
11
- xm.author "#{item.user.email} (#{item.user.name})" if item.link_to_author?
11
+ xm.dc :creator, item.author_name
12
12
 
13
13
  if item.is_a?(Article)
14
14
  xm.comments(item.permalink_url('comments'))
data/config/routes.rb CHANGED
@@ -48,7 +48,7 @@ Rails.application.routes.draw do
48
48
  # ThemeController
49
49
  scope controller: 'theme', filename: /.*/ do
50
50
  get 'stylesheets/theme/:filename', action: 'stylesheets', format: false
51
- get 'javascripts/theme/:filename', action: 'javascript', format: false
51
+ get 'javascripts/theme/:filename', action: 'javascripts', format: false
52
52
  get 'images/theme/:filename', action: 'images', format: false
53
53
  get 'fonts/theme/:filename', action: 'fonts', format: false
54
54
  end
@@ -5,6 +5,11 @@ module PublifyCore
5
5
  generators.fixture_replacement :factory_girl, dir: 'spec/factories'
6
6
  end
7
7
 
8
+ config.to_prepare do
9
+ DeviseController.layout 'accounts'
10
+ DeviseController.before_action { devise_parameter_sanitizer.permit(:sign_up, keys: [:email]) }
11
+ end
12
+
8
13
  initializer 'publify_core.assets.precompile' do |app|
9
14
  app.config.assets.precompile += %w(
10
15
  publify.js
@@ -1,3 +1,3 @@
1
1
  module PublifyCore
2
- VERSION = '9.0.0'
2
+ VERSION = '9.0.1'
3
3
  end
File without changes
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: publify_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.0.0
4
+ version: 9.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matijs van Zuijlen
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2017-07-29 00:00:00.000000000 Z
14
+ date: 2017-08-31 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rails
@@ -145,14 +145,14 @@ dependencies:
145
145
  requirements:
146
146
  - - "~>"
147
147
  - !ruby/object:Gem::Version
148
- version: 1.1.0
148
+ version: 1.2.0
149
149
  type: :runtime
150
150
  prerelease: false
151
151
  version_requirements: !ruby/object:Gem::Requirement
152
152
  requirements:
153
153
  - - "~>"
154
154
  - !ruby/object:Gem::Version
155
- version: 1.1.0
155
+ version: 1.2.0
156
156
  - !ruby/object:Gem::Dependency
157
157
  name: dynamic_form
158
158
  requirement: !ruby/object:Gem::Requirement
@@ -187,14 +187,14 @@ dependencies:
187
187
  requirements:
188
188
  - - "~>"
189
189
  - !ruby/object:Gem::Version
190
- version: 1.3.0
190
+ version: 1.4.0
191
191
  type: :runtime
192
192
  prerelease: false
193
193
  version_requirements: !ruby/object:Gem::Requirement
194
194
  requirements:
195
195
  - - "~>"
196
196
  - !ruby/object:Gem::Version
197
- version: 1.3.0
197
+ version: 1.4.0
198
198
  - !ruby/object:Gem::Dependency
199
199
  name: jquery-rails
200
200
  requirement: !ruby/object:Gem::Requirement
@@ -859,6 +859,7 @@ files:
859
859
  - lib/theme.rb
860
860
  - lib/transforms.rb
861
861
  - themes/plain/about.markdown
862
+ - themes/plain/javascripts/theme.js
862
863
  - themes/plain/preview.png
863
864
  - themes/plain/stylesheets/theme.css
864
865
  homepage: https://publify.co
@@ -881,7 +882,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
881
882
  version: '0'
882
883
  requirements: []
883
884
  rubyforge_project:
884
- rubygems_version: 2.6.12
885
+ rubygems_version: 2.6.11
885
886
  signing_key:
886
887
  specification_version: 4
887
888
  summary: Core engine for the Publify blogging system.