forgeos_blog 1.9.0

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.
Files changed (48) hide show
  1. data/COPYING +339 -0
  2. data/COPYING.LESSER +165 -0
  3. data/LICENSE +2 -0
  4. data/README.textile +75 -0
  5. data/app/assets/javascripts/admin/functions/forgeos_blog/comments.js +11 -0
  6. data/app/assets/javascripts/admin/inits/forgeos_blog/comments.js +57 -0
  7. data/app/assets/javascripts/admin/inits/forgeos_blog/trees.js +7 -0
  8. data/app/controllers/admin/categories_controller.rb +4 -0
  9. data/app/controllers/admin/import_controller.rb +14 -0
  10. data/app/controllers/admin/papers_controller.rb +135 -0
  11. data/app/controllers/blog/comments_controller.rb +21 -0
  12. data/app/controllers/blog/papers_controller.rb +60 -0
  13. data/app/controllers/blog/tags_controller.rb +35 -0
  14. data/app/helpers/application_helper.rb +3 -0
  15. data/app/helpers/blog_helper.rb +22 -0
  16. data/app/helpers/routes_helper.rb +23 -0
  17. data/app/models/comment.rb +34 -0
  18. data/app/models/paper.rb +57 -0
  19. data/app/models/paper_category.rb +7 -0
  20. data/app/models/paper_sweeper.rb +44 -0
  21. data/app/models/paper_viewed_counter.rb +2 -0
  22. data/app/views/admin/blocks/_tabs.html.haml +8 -0
  23. data/app/views/admin/menus/_tabs.html.haml +5 -0
  24. data/app/views/admin/pages/_tabs.html.haml +5 -0
  25. data/app/views/admin/papers/_comment.html.haml +31 -0
  26. data/app/views/admin/papers/_comments.html.haml +3 -0
  27. data/app/views/admin/papers/_form.html.haml +20 -0
  28. data/app/views/admin/papers/_general.html.haml +42 -0
  29. data/app/views/admin/papers/_seo.html.haml +31 -0
  30. data/app/views/admin/papers/_tabs.html.haml +5 -0
  31. data/app/views/admin/papers/destroy.js.erb +1 -0
  32. data/app/views/admin/papers/edit.html.haml +1 -0
  33. data/app/views/admin/papers/index.html.haml +12 -0
  34. data/app/views/admin/papers/index.json.erb +26 -0
  35. data/app/views/admin/papers/new.html.haml +1 -0
  36. data/app/views/admin/papers/show.html.haml +11 -0
  37. data/app/views/admin/widgets/_tabs.html.haml +8 -0
  38. data/config/locales/blog/en.yml +23 -0
  39. data/config/locales/blog/fr.yml +23 -0
  40. data/config/routes.rb +17 -0
  41. data/db/migrate/20100309201348_create_paper.rb +17 -0
  42. data/db/migrate/20100310000756_add_rakismet_attributes_to_comments.rb +19 -0
  43. data/lib/forgeos/blog/engine.rb +9 -0
  44. data/lib/forgeos/blog.rb +6 -0
  45. data/lib/forgeos_blog.rb +1 -0
  46. data/lib/tasks/install.rake +7 -0
  47. data/recipes/deploy.rb +9 -0
  48. metadata +160 -0
@@ -0,0 +1,26 @@
1
+ <%
2
+ states_for_select = Paper.aasm_states.collect{ |state| [t(state.name, :scope => [:paper,:states]),state.name.to_s] }
3
+ output = {
4
+ :sEcho => params[:sEcho],
5
+ :iTotalRecords => @papers.total_entries || 0,
6
+ :iTotalDisplayRecords => @papers.size,
7
+ :aaData => @papers.collect do |paper|
8
+ link_id = "paper_#{paper.id}"
9
+ [
10
+ content_tag(:div, content_tag(:div, '', :class=>"handler") + content_tag(:div, '', :class=>"small-icons paper"), :id => link_id, :class => 'handler_container'),
11
+ content_tag(:div, link_to(paper.name, [forgeos_blog, :admin, paper]), :class => 'product-name'),
12
+ paper.author ? paper.author.fullname : '-',
13
+ select_tag(:status, options_for_select(states_for_select,paper.state), :class => 'published'),
14
+ paper.published_at ? paper.published_at.to_s(:db) : '-',
15
+ link_to('', [forgeos_blog, :edit, :admin, paper], :class => 'small-icons edit-link') +
16
+ link_to('', [forgeos_blog, :admin, paper],
17
+ :remote => true,
18
+ :method => :delete,
19
+ :confirm => t('paper.destroy.confirm').capitalize,
20
+ :class => 'small-icons destroy-link', :id => "destroy_#{link_id}"
21
+ )
22
+ ]
23
+ end
24
+ }
25
+ -%>
26
+ <%= raw output.to_json -%>
@@ -0,0 +1 @@
1
+ = render :partial => 'form', :locals => { :paper => @paper }
@@ -0,0 +1,11 @@
1
+ = render :partial => 'tabs'
2
+ #wrap
3
+ .backgrounds.big-header
4
+ %h1= @paper.name
5
+ .interact-links
6
+ = link_to t('paper.update.action').capitalize, [:edit, :admin, @paper ], :class => 'backgrounds interact-button'
7
+ = t('or')
8
+ = link_to t('paper.back').capitalize, admin_papers_path, :class => 'back-link'
9
+
10
+ #content.grid_16.alpha.omega
11
+ .clear
@@ -0,0 +1,8 @@
1
+ %ul.ui-tabs-nav.ui-helper-reset.ui-helper-clearfix.ui-widget-header.ui-corner-all
2
+ %li.ui-state-default.ui-corner-top= link_to t('page', :count => 2).capitalize, [forgeos_cms, :admin, :pages]
3
+ %li.ui-state-default.ui-corner-top.ui-tabs-selected.ui-state-active= link_to t('block', :count => 2).capitalize, '#content'
4
+ %li.ui-state-default.ui-corner-top= link_to t('navigation').capitalize, [forgeos_cms, :admin, :menus]
5
+ %li.ui-state-default.ui-corner-top= link_to t(:paper, :count => 2).capitalize, [forgeos_blog, :admin, :papers]
6
+ #blocks-header.backgrounds
7
+ = link_to t('static_content_block', :count => 1).capitalize, [forgeos_cms, :admin, :static_content_blocks]
8
+ = link_to t('widget', :count => 2).capitalize, '#', :class => 'selected'
@@ -0,0 +1,23 @@
1
+ en:
2
+ back_office:
3
+ menu:
4
+ papers: blog posts
5
+ paper:
6
+ one: blog post
7
+ other: blog posts
8
+ all: All blog posts
9
+ author: author
10
+ states:
11
+ draft: draft
12
+ published: published
13
+ create:
14
+ action: create a paper
15
+ published_at: published at
16
+ picture:
17
+ name: Picture
18
+ change: Modify the picture
19
+ add: Add a picture
20
+ destroy:
21
+ confirm: Are your sure to destroy this paper ?
22
+ comment:
23
+ author_email: email
@@ -0,0 +1,23 @@
1
+ fr:
2
+ back_office:
3
+ menu:
4
+ papers: articles de blog
5
+ paper:
6
+ one: article de blog
7
+ other: articles de blog
8
+ all: Tous les articles
9
+ author: auteur
10
+ states:
11
+ draft: brouillon
12
+ published: publié
13
+ create:
14
+ action: créer un article
15
+ published_at: publié le
16
+ picture:
17
+ name: Visuel
18
+ change: Changer le visuel
19
+ add: Ajouter un visuel
20
+ destroy:
21
+ confirm: Êtes vous sûre de vouloir supprimer cet article ?
22
+ comment:
23
+ author_email: courriel
data/config/routes.rb ADDED
@@ -0,0 +1,17 @@
1
+ Forgeos::Blog::Engine.routes.draw do
2
+ namespace :blog do
3
+ root :to => 'papers#index'
4
+ resources :papers, :only => [:show,:index], :path => 'posts' do
5
+ resources :comments
6
+ end
7
+ match 'tags/:tag_name' => 'tags#index', :as => :tags
8
+ match 'categories/:blog_category_id' => 'papers#index', :as => :paper_category
9
+ end
10
+
11
+ namespace :admin do
12
+ resources :papers do
13
+ resources :comments
14
+ end
15
+ resources :paper_categories, :controller => 'categories', :type => 'paper_category'
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ class CreatePaper < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :papers do |t|
4
+ t.belongs_to :person, :picture
5
+ t.string :state
6
+ t.timestamp :published_at
7
+
8
+ t.timestamps
9
+ end
10
+ Paper.create_translation_table!(:name=>:string,:content=>:text,:url=>:string,:description=>:text)
11
+ end
12
+
13
+ def self.down
14
+ Paper.drop_translation_table!
15
+ drop_table :papers
16
+ end
17
+ end
@@ -0,0 +1,19 @@
1
+ class AddRakismetAttributesToComments < ActiveRecord::Migration
2
+ def self.up
3
+ add_column :comments, :author_name, :string
4
+ add_column :comments, :author_url, :string
5
+ add_column :comments, :author_email, :string
6
+ add_column :comments, :user_ip, :string
7
+ add_column :comments, :user_agent, :string
8
+ add_column :comments, :referrer, :string
9
+ end
10
+
11
+ def self.down
12
+ remove_column :comments, :referrer
13
+ remove_column :comments, :user_agent
14
+ remove_column :comments, :user_ip
15
+ remove_column :comments, :author_email
16
+ remove_column :comments, :author_url
17
+ remove_column :comments, :author_name
18
+ end
19
+ end
@@ -0,0 +1,9 @@
1
+ require 'forgeos/core'
2
+ require 'forgeos/cms'
3
+ module Forgeos
4
+ module Blog
5
+ class Engine < Rails::Engine
6
+ paths['config/locales'] << 'config/locales/**'
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,6 @@
1
+ module Forgeos
2
+ module Blog
3
+ end
4
+ end
5
+
6
+ require 'forgeos/blog/engine'
@@ -0,0 +1 @@
1
+ require 'forgeos/blog'
@@ -0,0 +1,7 @@
1
+ namespace :forgeos do
2
+ namespace :blog do
3
+ task :install => ['forgeos:cms:install'] do
4
+ Rake::Task['forgeos:core:generate:acl'].invoke(Gem.loaded_specs['forgeos_blog'].full_gem_path)
5
+ end
6
+ end
7
+ end
data/recipes/deploy.rb ADDED
@@ -0,0 +1,9 @@
1
+ namespace :forgeos do
2
+ namespace :blog do
3
+ task :generate_acl, :roles => [:web, :app] do
4
+ run "cd #{current_path}; rake forgeos:core:generate:acl[vendor/plugins/forgeos_blog] RAILS_ENV=production"
5
+ end
6
+ end
7
+ end
8
+
9
+ after 'forgeos:generate_acl', 'forgeos:blog:generate_acl'
metadata ADDED
@@ -0,0 +1,160 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: forgeos_blog
3
+ version: !ruby/object:Gem::Version
4
+ hash: 51
5
+ prerelease:
6
+ segments:
7
+ - 1
8
+ - 9
9
+ - 0
10
+ version: 1.9.0
11
+ platform: ruby
12
+ authors:
13
+ - Cyril LEPAGNOT
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-08-04 00:00:00 +02:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: forgeos_cms
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 49
30
+ segments:
31
+ - 1
32
+ - 9
33
+ - 1
34
+ version: 1.9.1
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: aasm
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 7
46
+ segments:
47
+ - 2
48
+ - 2
49
+ - 0
50
+ version: 2.2.0
51
+ type: :runtime
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: rakismet
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ hash: 19
62
+ segments:
63
+ - 1
64
+ - 1
65
+ - 0
66
+ version: 1.1.0
67
+ type: :runtime
68
+ version_requirements: *id003
69
+ description: Forgeos Blog provide papers (blog posts), comments and tags management
70
+ email: dev@webpulser.com
71
+ executables: []
72
+
73
+ extensions: []
74
+
75
+ extra_rdoc_files: []
76
+
77
+ files:
78
+ - app/views/admin/papers/index.json.erb
79
+ - app/views/admin/papers/destroy.js.erb
80
+ - app/views/admin/papers/_form.html.haml
81
+ - app/views/admin/papers/_tabs.html.haml
82
+ - app/views/admin/papers/_general.html.haml
83
+ - app/views/admin/papers/new.html.haml
84
+ - app/views/admin/papers/show.html.haml
85
+ - app/views/admin/papers/index.html.haml
86
+ - app/views/admin/papers/_seo.html.haml
87
+ - app/views/admin/papers/_comments.html.haml
88
+ - app/views/admin/papers/edit.html.haml
89
+ - app/views/admin/papers/_comment.html.haml
90
+ - app/views/admin/menus/_tabs.html.haml
91
+ - app/views/admin/pages/_tabs.html.haml
92
+ - app/views/admin/widgets/_tabs.html.haml
93
+ - app/views/admin/blocks/_tabs.html.haml
94
+ - app/models/paper_viewed_counter.rb
95
+ - app/models/paper_category.rb
96
+ - app/models/paper.rb
97
+ - app/models/paper_sweeper.rb
98
+ - app/models/comment.rb
99
+ - app/helpers/routes_helper.rb
100
+ - app/helpers/application_helper.rb
101
+ - app/helpers/blog_helper.rb
102
+ - app/controllers/admin/papers_controller.rb
103
+ - app/controllers/admin/categories_controller.rb
104
+ - app/controllers/admin/import_controller.rb
105
+ - app/controllers/blog/tags_controller.rb
106
+ - app/controllers/blog/papers_controller.rb
107
+ - app/controllers/blog/comments_controller.rb
108
+ - app/assets/javascripts/admin/functions/forgeos_blog/comments.js
109
+ - app/assets/javascripts/admin/inits/forgeos_blog/trees.js
110
+ - app/assets/javascripts/admin/inits/forgeos_blog/comments.js
111
+ - lib/forgeos/blog.rb
112
+ - lib/forgeos/blog/engine.rb
113
+ - lib/forgeos_blog.rb
114
+ - lib/tasks/install.rake
115
+ - config/locales/blog/en.yml
116
+ - config/locales/blog/fr.yml
117
+ - config/routes.rb
118
+ - db/migrate/20100309201348_create_paper.rb
119
+ - db/migrate/20100310000756_add_rakismet_attributes_to_comments.rb
120
+ - recipes/deploy.rb
121
+ - README.textile
122
+ - LICENSE
123
+ - COPYING.LESSER
124
+ - COPYING
125
+ has_rdoc: true
126
+ homepage: http://github.com/webpulser/forgeos_blog
127
+ licenses: []
128
+
129
+ post_install_message:
130
+ rdoc_options: []
131
+
132
+ require_paths:
133
+ - lib
134
+ required_ruby_version: !ruby/object:Gem::Requirement
135
+ none: false
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ hash: 3
140
+ segments:
141
+ - 0
142
+ version: "0"
143
+ required_rubygems_version: !ruby/object:Gem::Requirement
144
+ none: false
145
+ requirements:
146
+ - - ">="
147
+ - !ruby/object:Gem::Version
148
+ hash: 3
149
+ segments:
150
+ - 0
151
+ version: "0"
152
+ requirements: []
153
+
154
+ rubyforge_project:
155
+ rubygems_version: 1.6.2
156
+ signing_key:
157
+ specification_version: 3
158
+ summary: Blog engine of Forgeos plugins suite
159
+ test_files: []
160
+