publify_core 9.0.0.pre6 → 9.0.0

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.

Files changed (176) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +44 -0
  3. data/README.md +9 -0
  4. data/app/controllers/admin/base_controller.rb +0 -6
  5. data/app/controllers/admin/content_controller.rb +34 -15
  6. data/app/controllers/admin/dashboard_controller.rb +4 -9
  7. data/app/controllers/admin/feedback_controller.rb +1 -0
  8. data/app/controllers/admin/notes_controller.rb +1 -1
  9. data/app/controllers/admin/pages_controller.rb +3 -7
  10. data/app/controllers/admin/sidebar_controller.rb +1 -0
  11. data/app/controllers/admin/tags_controller.rb +1 -0
  12. data/app/controllers/articles_controller.rb +50 -55
  13. data/app/controllers/comments_controller.rb +2 -3
  14. data/app/controllers/content_controller.rb +8 -17
  15. data/app/controllers/feedback_controller.rb +5 -39
  16. data/app/controllers/notes_controller.rb +1 -3
  17. data/app/controllers/setup_controller.rb +14 -18
  18. data/app/controllers/tags_controller.rb +13 -15
  19. data/app/controllers/theme_controller.rb +7 -5
  20. data/app/controllers/xml_controller.rb +11 -59
  21. data/app/helpers/authors_helper.rb +2 -2
  22. data/app/helpers/base_helper.rb +11 -4
  23. data/app/helpers/xml_helper.rb +2 -2
  24. data/app/jobs/application_job.rb +2 -0
  25. data/app/models/archives_sidebar.rb +8 -11
  26. data/app/models/article.rb +53 -72
  27. data/app/models/article/factory.rb +1 -1
  28. data/app/models/blog.rb +17 -40
  29. data/app/models/comment.rb +4 -3
  30. data/app/models/content.rb +18 -21
  31. data/app/models/content_base.rb +0 -5
  32. data/app/models/feedback.rb +76 -54
  33. data/app/models/meta_sidebar.rb +1 -0
  34. data/app/models/note.rb +7 -0
  35. data/app/models/page.rb +10 -5
  36. data/app/models/ping.rb +0 -113
  37. data/app/models/post_type.rb +1 -0
  38. data/app/models/redirect.rb +1 -1
  39. data/app/models/resource.rb +1 -19
  40. data/app/models/sidebar.rb +1 -1
  41. data/app/models/static_sidebar.rb +1 -0
  42. data/app/models/tag.rb +13 -9
  43. data/app/models/tag_sidebar.rb +4 -4
  44. data/app/models/trackback.rb +1 -8
  45. data/app/models/trigger.rb +1 -15
  46. data/app/models/user.rb +2 -9
  47. data/app/uploaders/resource_uploader.rb +33 -2
  48. data/app/views/accounts/confirm.html.erb +0 -1
  49. data/app/views/admin/content/_article_list.html.erb +1 -1
  50. data/app/views/admin/content/_form.html.erb +3 -7
  51. data/app/views/admin/pages/_form.html.erb +2 -2
  52. data/app/views/admin/seo/_general.html.erb +33 -28
  53. data/app/views/admin/seo/_permalinks.html.erb +2 -2
  54. data/app/views/admin/seo/_titles.html.erb +36 -36
  55. data/app/views/admin/settings/display.html.erb +20 -27
  56. data/app/views/admin/settings/feedback.html.erb +44 -51
  57. data/app/views/admin/settings/index.html.erb +14 -14
  58. data/app/views/admin/settings/write.html.erb +12 -30
  59. data/app/views/admin/tags/_index_and_form.html.erb +1 -1
  60. data/app/views/articles/_archives_article.html.erb +9 -0
  61. data/app/views/articles/_article.html.erb +8 -6
  62. data/app/views/articles/_article_collection.html.erb +1 -1
  63. data/app/views/articles/_article_excerpt.html.erb +10 -8
  64. data/app/views/articles/_article_links.html.erb +4 -2
  65. data/app/views/articles/_comment_list.html.erb +5 -5
  66. data/app/views/articles/_full_article_content.html.erb +4 -2
  67. data/app/views/articles/archives.html.erb +10 -20
  68. data/app/views/articles/feedback_atom_feed.atom.builder +5 -5
  69. data/app/views/articles/feedback_rss_feed.rss.builder +12 -13
  70. data/app/views/articles/index_atom_feed.atom.builder +3 -4
  71. data/app/views/articles/index_rss_feed.rss.builder +9 -10
  72. data/app/views/articles/read.html.erb +5 -31
  73. data/app/views/articles/search.html.erb +1 -1
  74. data/app/views/articles/trackback.xml.builder +1 -1
  75. data/app/views/authors/show.html.erb +11 -21
  76. data/app/views/authors/show_atom_feed.atom.builder +3 -4
  77. data/app/views/authors/show_rss_feed.rss.builder +9 -10
  78. data/app/views/comments/_comment.html.erb +17 -16
  79. data/app/views/feedback/index.atom.builder +7 -0
  80. data/app/views/feedback/index.rss.builder +19 -0
  81. data/app/views/notes/_note.html.erb +16 -15
  82. data/app/views/notes/index.html.erb +1 -1
  83. data/app/views/notification_mailer/_mail_footer.html.erb +0 -2
  84. data/app/views/notification_mailer/_mail_header.html.erb +2 -0
  85. data/app/views/notification_mailer/article.html.erb +4 -3
  86. data/app/views/notification_mailer/comment.html.erb +7 -6
  87. data/app/views/notification_mailer/notif_user.html.erb +3 -8
  88. data/app/views/setup/index.html.erb +4 -0
  89. data/app/views/shared/_atom_header.atom.builder +3 -3
  90. data/app/views/shared/_atom_item_article.atom.builder +26 -19
  91. data/app/views/shared/_atom_item_comment.atom.builder +3 -5
  92. data/app/views/shared/_atom_item_trackback.atom.builder +3 -4
  93. data/app/views/shared/_page_header.html.erb +1 -1
  94. data/app/views/shared/_rss_item_article.rss.builder +10 -15
  95. data/app/views/shared/_rss_item_comment.rss.builder +1 -2
  96. data/app/views/shared/_rss_item_trackback.rss.builder +1 -1
  97. data/app/views/tags/index.html.erb +2 -2
  98. data/app/views/xml/sitemap.googlesitemap.builder +7 -0
  99. data/config/initializers/mime_types.rb +0 -1
  100. data/config/locales/da.yml +8 -37
  101. data/config/locales/de.yml +7 -36
  102. data/config/locales/en.yml +7 -36
  103. data/config/locales/es-MX.yml +8 -37
  104. data/config/locales/fr.yml +7 -36
  105. data/config/locales/he.yml +4 -33
  106. data/config/locales/it.yml +7 -36
  107. data/config/locales/ja.yml +5 -34
  108. data/config/locales/lt.yml +7 -36
  109. data/config/locales/nb-NO.yml +7 -36
  110. data/config/locales/nl.yml +9 -38
  111. data/config/locales/pl.yml +8 -37
  112. data/config/locales/pt-BR.yml +8 -37
  113. data/config/locales/ro.yml +9 -38
  114. data/config/locales/ru.yml +7 -36
  115. data/config/locales/zh-CN.yml +6 -35
  116. data/config/locales/zh-TW.yml +7 -36
  117. data/config/routes.rb +6 -28
  118. data/db/migrate/113_initial_schema.rb +191 -191
  119. data/db/migrate/114_fixes_buggy_articles_and_notes.rb +6 -7
  120. data/db/migrate/115_drops_categories_for_tags.rb +3 -3
  121. data/db/migrate/20150207131657_add_missing_indexes.rb +1 -1
  122. data/db/migrate/20150807134129_simplify_redirect_relations.rb +1 -1
  123. data/db/migrate/20150808052637_add_blog_ids.rb +3 -5
  124. data/db/migrate/20150808191127_add_blog_id_to_redirects.rb +1 -1
  125. data/db/migrate/20150810094754_add_blog_id_to_tags.rb +1 -1
  126. data/db/migrate/20160108111120_add_devise_to_users.rb +3 -3
  127. data/db/migrate/20160108184201_move_last_connection_to_last_sign_in_at.rb +1 -1
  128. data/db/migrate/20160110094906_remove_profiles_rights.rb +1 -1
  129. data/db/migrate/20160605103918_replace_profile_id_with_string.rb +1 -3
  130. data/db/migrate/20160605154632_remove_profiles.rb +2 -2
  131. data/db/migrate/20160701061851_demand_blog_id_on_contents.rb +1 -1
  132. data/db/migrate/20160701062604_add_blog_id_to_resources.rb +1 -1
  133. data/db/migrate/20170528093024_move_resources_to_content.rb +5 -0
  134. data/db/migrate/20170528094923_move_tags_to_content.rb +6 -0
  135. data/db/migrate/20170528201606_remove_separate_published_flag.rb +5 -0
  136. data/db/migrate/20170605071626_remove_extra_state_columns_from_feedback.rb +6 -0
  137. data/db/migrate/20170702105201_remove_published_at_from_feedback.rb +5 -0
  138. data/db/seeds.rb +1 -1
  139. data/lib/publify_core.rb +0 -1
  140. data/lib/publify_core/version.rb +1 -1
  141. data/lib/publify_guid.rb +1 -1
  142. data/lib/publify_time.rb +2 -2
  143. data/lib/sidebar_field.rb +19 -12
  144. data/lib/transforms.rb +1 -0
  145. metadata +102 -66
  146. data/.gitignore +0 -13
  147. data/.rspec +0 -2
  148. data/.rubocop.yml +0 -84
  149. data/.rubocop_todo.yml +0 -148
  150. data/.travis.yml +0 -27
  151. data/Gemfile +0 -17
  152. data/README.rdoc +0 -3
  153. data/Rakefile +0 -35
  154. data/app/assets/stylesheets/publify_core/.keep +0 -0
  155. data/app/controllers/.keep +0 -0
  156. data/app/controllers/admin/migrations_controller.rb +0 -19
  157. data/app/controllers/concerns/.keep +0 -0
  158. data/app/controllers/trackbacks_controller.rb +0 -36
  159. data/app/helpers/.keep +0 -0
  160. data/app/mailers/.keep +0 -0
  161. data/app/models/.keep +0 -0
  162. data/app/models/article/states.rb +0 -179
  163. data/app/models/concerns/.keep +0 -0
  164. data/app/models/feedback/states.rb +0 -256
  165. data/app/services/migrator.rb +0 -25
  166. data/app/views/.keep +0 -0
  167. data/app/views/comments/index.html.erb +0 -1
  168. data/app/views/comments/index_atom_feed.atom.builder +0 -8
  169. data/app/views/comments/index_rss_feed.rss.builder +0 -20
  170. data/app/views/trackbacks/index_atom_feed.atom.builder +0 -7
  171. data/app/views/trackbacks/index_rss_feed.rss.builder +0 -20
  172. data/app/views/trackbacks/trackback.xml.builder +0 -4
  173. data/app/views/xml/feed.googlesitemap.builder +0 -7
  174. data/app/views/xml/rsd.rsd.builder +0 -8
  175. data/lib/stateful.rb +0 -106
  176. data/publify_core.gemspec +0 -54
@@ -1,4 +1,5 @@
1
- <p class="meta">
1
+ <% cache article do %>
2
+ <p class="meta">
2
3
  <% if article.tags.any? %>
3
4
  <%= t(".tags") %>
4
5
  <%= tag_links article %>
@@ -7,4 +8,5 @@
7
8
  <%= link_to(t('.comments', count: article.published_comments.size), article.permalink_url('comments', true)) if article.allow_comments? %>
8
9
 
9
10
  <%= link_to(t('.trackbacks', count: article.published_trackbacks.size), article.permalink_url('trackbacks', true)) if article.allow_pings? %>
10
- </p>
11
+ </p>
12
+ <% end %>
@@ -1,5 +1,5 @@
1
- <ol id="commentList" class="comments">
2
- <% if @article.published_comments.any? %>
3
- <%= render @article.published_comments %>
4
- <% end %>
5
- </ol>
1
+ <% cache @article do %>
2
+ <ol id="commentList" class="comments">
3
+ <%= render @article.published_comments, partial: 'articles/comment' %>
4
+ </ol>
5
+ <% end %>
@@ -1,2 +1,4 @@
1
- <%= raw article.html(:body) %>
2
- <%= raw article.html(:extended) %>
1
+ <% cache article do %>
2
+ <%= raw article.html(:body) %>
3
+ <%= raw article.html(:extended) %>
4
+ <% end %>
@@ -1,25 +1,15 @@
1
1
  <% if @articles.empty? %>
2
- <div class="post">
2
+ <div class="post">
3
3
  <p><%= t(".no_articles_found")%></p>
4
4
  </div>
5
- <% else
6
- currentmonth = 0
7
- currentyear = 0
8
- for article in @articles
9
- if (article.published_at.month != currentmonth || article.published_at.year != currentyear)
10
- currentmonth = article.published_at.month
11
- currentyear = article.published_at.year %>
12
- <h3 class="archivemonth">
13
- <%= l(article.published_at, format: :letters_month_with_year) %>
14
- </h3>
15
- <% end %>
16
- <div class="archivepost">
17
- <%= article.published_at.mday %> -
18
- <%= link_to_permalink(article,h(article.title)) %>
19
- <% if !article.tags.empty? %> <%= t(".posted_in") %>
20
- <%= safe_join(article.tags.collect {|t| link_to_permalink t,t.display_name }, ", ") %>
5
+ <% else %>
6
+ <%= cache [@articles, params[:page]] do %>
7
+ <% @articles.group_by(&:publication_month).each do |_month, articles| %>
8
+ <h3 class="archivemonth">
9
+ <%= l(articles.first.published_at, format: :letters_month_with_year) %>
10
+ </h3>
11
+ <%= render partial: 'archives_article', collection: articles, as: :article %>
21
12
  <% end %>
22
- </div>
23
- <% end %>
24
13
  <% end %>
25
- +<%= paginate @articles, next_label: "#{t("pagination.next_page")} &raquo;", previous_label: "&laquo; #{t('pagination.previous_page')}" %>
14
+ <% end %>
15
+ <%= paginate @articles %>
@@ -1,8 +1,8 @@
1
- atom_feed do |feed|
2
- render "shared/atom_header", {:feed => feed, :items => @feedback}
1
+ atom_feed root_url: @article.permalink_url do |feed|
2
+ feedback = @article.published_feedback
3
+ render 'shared/atom_header', feed: feed, items: feedback
3
4
 
4
- @feedback.each do |item|
5
- render "shared/atom_item_#{item.type.downcase}", {:feed => feed, :item => item}
5
+ feedback.each do |item|
6
+ render "shared/atom_item_#{item.type.downcase}", feed: feed, item: item
6
7
  end
7
8
  end
8
-
@@ -1,21 +1,20 @@
1
- xml.instruct! :xml, :version=>"1.0", :encoding=>"UTF-8"
2
- xml.instruct! 'xml-stylesheet', :type=>"text/css", :href => url_for("/stylesheets/rss.css")
1
+ xml.instruct! :xml, version: '1.0', encoding: 'UTF-8'
2
+ xml.instruct! 'xml-stylesheet', type: 'text/css', href: url_for('/stylesheets/rss.css')
3
3
 
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
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
7
7
  xml.channel do
8
8
  xml.title feed_title
9
- xml.link this_blog.base_url
10
- xml.atom :link, :href => request.url, :rel => 'self', :type => 'application/rss+xml'
11
- xml.language this_blog.lang.gsub("_", "-").downcase
12
- xml.ttl "40"
9
+ xml.link @article.permalink_url
10
+ xml.atom :link, href: request.url, rel: 'self', type: 'application/rss+xml'
11
+ xml.language this_blog.lang.tr('_', '-').downcase
12
+ xml.ttl '40'
13
13
  xml.description this_blog.blog_subtitle
14
14
 
15
- @feedback.each do |item|
16
- render "shared/rss_item_#{item.type.downcase}", {:feed => xml, :item => item}
15
+ feedback = @article.published_feedback
16
+ feedback.each do |item|
17
+ render "shared/rss_item_#{item.type.downcase}", feed: xml, item: item
17
18
  end
18
19
  end
19
20
  end
20
-
21
-
@@ -1,8 +1,7 @@
1
- atom_feed(:language => this_blog.lang.split("_").first) do |feed|
2
- render "shared/atom_header", {:feed => feed, :items => @articles}
1
+ atom_feed(language: this_blog.lang.split('_').first, root_url: this_blog.base_url) do |feed|
2
+ render 'shared/atom_header', feed: feed, items: @articles
3
3
 
4
4
  @articles.each do |item|
5
- render "shared/atom_item_article", {:feed => feed, :item => item}
5
+ render 'shared/atom_item_article', feed: feed, item: item
6
6
  end
7
7
  end
8
-
@@ -1,20 +1,19 @@
1
- xml.instruct! :xml, :version=>"1.0", :encoding=>"UTF-8"
2
- xml.instruct! 'xml-stylesheet', :type=>"text/css", :href => url_for("/stylesheets/rss.css")
1
+ xml.instruct! :xml, version: '1.0', encoding: 'UTF-8'
2
+ xml.instruct! 'xml-stylesheet', type: 'text/css', href: url_for('/stylesheets/rss.css')
3
3
 
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
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
7
7
  xml.channel do
8
8
  xml.title feed_title
9
9
  xml.link this_blog.base_url
10
- xml.atom :link, :href => request.url, :rel => 'self', :type => 'application/rss+xml'
11
- xml.language this_blog.lang.gsub("_", "-").downcase
12
- xml.ttl "40"
10
+ xml.atom :link, href: request.url, rel: 'self', type: 'application/rss+xml'
11
+ xml.language this_blog.lang.tr('_', '-').downcase
12
+ xml.ttl '40'
13
13
  xml.description this_blog.blog_subtitle
14
14
 
15
15
  @articles.each do |item|
16
- render "shared/rss_item_article", {:xm => xml, :item => item}
16
+ render 'shared/rss_item_article', xm: xml, item: item
17
17
  end
18
18
  end
19
19
  end
20
-
@@ -1,20 +1,3 @@
1
- <!--
2
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
3
- xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"
4
- xmlns:dc="http://purl.org/dc/elements/1.1/">
5
- <rdf:Description
6
- rdf:about=""
7
- <% if @article.allow_pings? %>
8
- trackback:ping="<%= @article.trackback_url %>"
9
- <% end %>
10
- dc:title="<%=h @article.title.gsub(/-+/, '-') %>"
11
- dc:identifier="<%= @article.permalink_url %>"
12
- dc:description="<%=h (html(@article).strip_html[0..255]).gsub(/-+/, '-') %>"
13
- dc:creator="<%= h @article.author %>"
14
- dc:date="<%= @article.updated_at.xmlschema %>">
15
- </rdf:RDF>
16
- -->
17
-
18
1
  <div class="post"<%= onhover_show_admin_tools(:article) %>>
19
2
  <%= link_to(t(".edit"), { controller: "admin/content", action: "edit", id: @article.id }, class: "admintools", style: "display: none", id: "admin_article") %>
20
3
  <%= render @article %>
@@ -26,31 +9,22 @@
26
9
  <a name="comments"></a><h4 class="blueblk"><%= t('.comments') %></h4>
27
10
  <% unless @article.comments_closed? %>
28
11
  <p class="postmetadata alt">
29
- <small><a href="#respond"><%= t(".leave_a_response")%></a></small>
12
+ <small><a href="#respond"><%= t(".leave_a_response")%></a></small>
30
13
  </p>
31
14
  <% end %>
32
15
  <%= render "articles/comment_list" %>
33
16
  <% end %>
34
17
 
35
- <% if @article.allow_pings? %>
18
+ <% if @article.published_trackbacks.any? %>
36
19
  <a name="trackbacks"></a><h4 class="blueblk"><%= t(".trackbacks")%></h4>
37
- <p>
38
- <%= t(".use_the_following_link_to_trackback")%>:<br>
39
- <span class="light-bg"><%= @article.trackback_url %></span>
40
- </p>
41
- <% unless @article.published_trackbacks.blank? %>
42
- <ol id="trackbackList" class="trackback-list">
43
- <%= render(partial: "trackback", collection: @article.published_trackbacks) %>
44
- </ol>
45
- <% end %>
20
+ <ol id="trackbackList" class="trackback-list">
21
+ <%= render(partial: "trackback", collection: @article.published_trackbacks) %>
22
+ </ol>
46
23
  <% end %>
47
24
 
48
25
  <p class="postmetadata alt">
49
26
  <small>
50
27
  <a href="<%= @article.feed_url('rss') %>" title="RSS Feed"><%= t(".rss_feed")%></a>
51
- <% if @article.allow_pings? %>
52
- <a href="<%= @article.trackback_url %>" ><%= t(".trackback_uri")%></a>
53
- <% end %>
54
28
  </small>
55
29
  </p>
56
30
 
@@ -5,4 +5,4 @@
5
5
  </div>
6
6
  <% end %>
7
7
 
8
- <%= paginate @articles, :next_label => "#{t(".next_page")} &raquo;", :previous_label => "&laquo; #{t('.previous_page')}" %>
8
+ <%= paginate @articles %>
@@ -1,4 +1,4 @@
1
- xml.instruct! :xml, :version=>"1.0", :encoding=>"iso-8859-1"
1
+ xml.instruct! :xml, version: '1.0', encoding: 'iso-8859-1'
2
2
  xml.response do
3
3
  xml.error(@error_message.blank? ? 0 : 1)
4
4
  xml.message(@error_message) if @error_message
@@ -1,9 +1,7 @@
1
1
  <div class="post">
2
2
  <h2><%= @author.nickname %></h2>
3
3
  <%= display_user_avatar(@author, 'thumb', 'alignright') %>
4
-
5
4
  <%= author_description @author %>
6
-
7
5
  <h2><%= t(".contact_information") %></h2>
8
6
  <ul>
9
7
  <%= display_profile_item @author.url, t(".web_site") %>
@@ -17,24 +15,16 @@
17
15
 
18
16
  <% if @articles.empty? %>
19
17
  <div class="post">
20
- <p><%= t(".this_author_has_not_published_any_article_yet")%></p>
21
- </div>
22
- <% else
23
- currentmonth = 0
24
- currentyear = 0
25
- for article in @articles
26
- if (article.published_at.month != currentmonth || article.published_at.year != currentyear)
27
- currentmonth = article.published_at.month
28
- currentyear = article.published_at.year %>
29
- <h3 class="archivemonth"><%= l(article.published_at, format: :letters_month_with_year) %></h3>
30
- <% end %>
31
- <div class="archivepost">
32
- <%= article.published_at.mday %> -
33
- <%= link_to_permalink(article,h(article.title)) %>
34
- <% if !article.tags.empty? %> <%= t(".posted_in") %>
35
- <%= article.tags.collect {|c| link_to_permalink c,c.name }.join(", ") %>
18
+ <p><%= t(".this_author_has_not_published_any_article_yet")%></p>
19
+ </div>
20
+ <% else %>
21
+ <%= cache [@articles, params[:page]] do %>
22
+ <% @articles.group_by(&:publication_month).each do |_month, articles| %>
23
+ <h3 class="archivemonth">
24
+ <%= l(articles.first.published_at, format: :letters_month_with_year) %>
25
+ </h3>
26
+ <%= render partial: 'articles/archives_article', collection: articles, as: :article %>
36
27
  <% end %>
37
- </div>
38
28
  <% end %>
39
- <%= paginate @articles, :next_label => "#{t(".next_page")} &raquo;", :previous_label => "&laquo; #{t('.previous_page')}" %>
40
- <% end %>
29
+ <%= paginate @articles %>
30
+ <% end %>
@@ -1,8 +1,7 @@
1
- atom_feed do |feed|
2
- render "shared/atom_header", {:feed => feed, :items => @articles}
1
+ atom_feed root_url: author_url(@author) do |feed|
2
+ render 'shared/atom_header', feed: feed, items: @articles
3
3
 
4
4
  @articles.each do |item|
5
- render "shared/atom_item_article", {:feed => feed, :item => item}
5
+ render 'shared/atom_item_article', feed: feed, item: item
6
6
  end
7
7
  end
8
-
@@ -1,20 +1,19 @@
1
- xml.instruct! :xml, :version=>"1.0", :encoding=>"UTF-8"
2
- xml.instruct! 'xml-stylesheet', :type=>"text/css", :href => url_for("/stylesheets/rss.css")
1
+ xml.instruct! :xml, version: '1.0', encoding: 'UTF-8'
2
+ xml.instruct! 'xml-stylesheet', type: 'text/css', href: url_for('/stylesheets/rss.css')
3
3
 
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
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
7
7
  xml.channel do
8
8
  xml.title feed_title
9
9
  xml.link this_blog.base_url
10
- xml.atom :link, :href => request.url, :rel => 'self', :type => 'application/rss+xml'
11
- xml.language this_blog.lang.gsub("_", "-").downcase
12
- xml.ttl "40"
10
+ xml.atom :link, href: request.url, rel: 'self', type: 'application/rss+xml'
11
+ xml.language this_blog.lang.tr('_', '-').downcase
12
+ xml.ttl '40'
13
13
  xml.description this_blog.blog_subtitle
14
14
 
15
15
  @articles.each do |item|
16
- render "shared/rss_item_article", {:xm => xml, :item => item}
16
+ render 'shared/rss_item_article', xm: xml, item: item
17
17
  end
18
18
  end
19
19
  end
20
-
@@ -1,16 +1,17 @@
1
- <li id="comment-<%= comment.id %>" <%= 'class="author_comment"' if comment.user %> <%= onhover_show_admin_tools(:comment, comment.id) %>>
2
- <p class="author">
3
- <%= avatar_tag(:email => comment.email, :url => comment.url) %>
4
- <cite><strong><%= link_to_unless(comment.url.blank?, h(comment.author), comment.url) %></strong></cite>
5
- <%= t(".said")%> <%= display_date_and_time comment.created_at %>:
6
- </p>
7
- <div class="content">
8
- <%= raw nofollowify_links comment.generate_html(:body) %>
9
- <% unless comment.published %>
10
- <div class="spamwarning">
11
- <%= t(".this_comment_has_been_flagged_for_moderator_approval")%>
12
- </div>
13
- <% end %>
14
- </div>
15
- </li>
16
-
1
+ <% cache comment do %>
2
+ <li id="comment-<%= comment.id %>" <%= 'class="author_comment"' if comment.user %> <%= onhover_show_admin_tools(:comment, comment.id) %>>
3
+ <p class="author">
4
+ <%= avatar_tag(:email => comment.email, :url => comment.url) %>
5
+ <cite><strong><%= link_to_unless(comment.url.blank?, h(comment.author), comment.url) %></strong></cite>
6
+ <%= t(".said")%> <%= display_date_and_time comment.created_at %>:
7
+ </p>
8
+ <div class="content">
9
+ <%= raw nofollowify_links comment.generate_html(:body) %>
10
+ <% unless comment.published? %>
11
+ <div class="spamwarning">
12
+ <%= t(".this_comment_has_been_flagged_for_moderator_approval")%>
13
+ </div>
14
+ <% end %>
15
+ </div>
16
+ </li>
17
+ <% end %>
@@ -0,0 +1,7 @@
1
+ atom_feed root_url: this_blog.base_url do |feed|
2
+ render 'shared/atom_header', feed: feed, items: @feedback
3
+
4
+ @feedback.each do |item|
5
+ render "shared/atom_item_#{item.type.downcase}", feed: feed, item: item
6
+ end
7
+ end
@@ -0,0 +1,19 @@
1
+ xml.instruct! :xml, version: '1.0', encoding: 'UTF-8'
2
+ xml.instruct! 'xml-stylesheet', type: 'text/css', href: url_for('/stylesheets/rss.css')
3
+
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
7
+ xml.channel do
8
+ xml.title feed_title
9
+ xml.link this_blog.base_url
10
+ xml.atom :link, href: request.url, rel: 'self', type: 'application/rss+xml'
11
+ xml.language this_blog.lang.tr('_', '-').downcase
12
+ xml.ttl '40'
13
+ xml.description this_blog.blog_subtitle
14
+
15
+ @feedback.each do |item|
16
+ render "shared/rss_item_#{item.type.downcase}", feed: xml, item: item
17
+ end
18
+ end
19
+ end
@@ -1,15 +1,16 @@
1
- <article class='status'>
2
- <%= author_picture note %>
3
- <div class='p-name entry-title e-content entry-content article'><%= raw note.html(:body) %></div>
4
- <footer>
5
- <small>
6
- <%= link_to_permalink(note, display_date_and_time(note.published_at)) %> |
7
- <%= link_to note.redirect.from_url, note.redirect.from_url %> |
8
- <%= author_link note %>
9
- <% unless note.twitter_id.blank? %>
10
- <%= " | #{link_to(t(".view_on_twitter"), note.twitter_url, {class: 'u-syndication', rel: 'syndication'})}" %>
11
- <% end %>
12
- </small>
13
- </footer>
14
- </article>
15
-
1
+ <% cache [note, note.user] do %>
2
+ <article class='status'>
3
+ <%= author_picture note %>
4
+ <div class='p-name entry-title e-content entry-content article'><%= raw note.html(:body) %></div>
5
+ <footer>
6
+ <small>
7
+ <%= link_to_permalink(note, display_date_and_time(note.published_at)) %> |
8
+ <%= link_to note.redirect.from_url, note.redirect.from_url %> |
9
+ <%= author_link note %>
10
+ <% unless note.twitter_id.blank? %>
11
+ <%= " | #{link_to(t(".view_on_twitter"), note.twitter_url, {class: 'u-syndication', rel: 'syndication'})}" %>
12
+ <% end %>
13
+ </small>
14
+ </footer>
15
+ </article>
16
+ <% end %>
@@ -12,4 +12,4 @@
12
12
  <% end %>
13
13
  </div>
14
14
 
15
- <%= paginate @notes, :next_label => "#{t(".next_page")} &raquo;", :previous_label => "&laquo; #{t('.previous_page')}" %>
15
+ <%= paginate @notes %>
@@ -1,5 +1,3 @@
1
- </div>
2
-
3
1
  <p><em>This is being sent to <%=h @user.name %> because you asked to be notified via email whenever
4
2
  new content is posted to <a href="<%= @blog.base_url%>"><%= @blog.blog_name %></a>
5
3
  To unsubscribe, go to
@@ -1 +1,3 @@
1
1
  <div style="margin:1em;padding:4px;background:#eee;border:1px solid black">
2
+ <%= yield %>
3
+ </div>