Commit 9ea140875bd255ceae53fbab000af568490473f6
1 parent
c2da9657
Exists in
master
and in
11 other branches
proposals_discussion: small fixes
Showing
6 changed files
with
24 additions
and
24 deletions
Show diff stats
lib/proposals_discussion_plugin/discussion.rb
... | ... | @@ -18,8 +18,9 @@ class ProposalsDiscussionPlugin::Discussion < Folder |
18 | 18 | end |
19 | 19 | |
20 | 20 | def to_html(options = {}) |
21 | + discussion = self | |
21 | 22 | proc do |
22 | - render :file => 'content_viewer/discussion' | |
23 | + render :file => 'content_viewer/discussion', :locals => {:discussion => discussion} | |
23 | 24 | end |
24 | 25 | end |
25 | 26 | ... | ... |
lib/proposals_discussion_plugin/proposal.rb
... | ... | @@ -17,9 +17,10 @@ class ProposalsDiscussionPlugin::Proposal < TinyMceArticle |
17 | 17 | |
18 | 18 | |
19 | 19 | def to_html(options = {}) |
20 | + proposal = self | |
20 | 21 | unless options[:feed] |
21 | 22 | proc do |
22 | - render :file => 'content_viewer/proposal' | |
23 | + render :file => 'content_viewer/proposal', :locals => {:proposal => proposal} | |
23 | 24 | end |
24 | 25 | else |
25 | 26 | body | ... | ... |
lib/proposals_discussion_plugin/topic.rb
... | ... | @@ -23,8 +23,9 @@ class ProposalsDiscussionPlugin::Topic < Folder |
23 | 23 | end |
24 | 24 | |
25 | 25 | def to_html(options = {}) |
26 | + topic = self | |
26 | 27 | proc do |
27 | - render :file => 'content_viewer/topic', :locals => {:topic => @page} | |
28 | + render :file => 'content_viewer/topic', :locals => {:topic => topic} | |
28 | 29 | end |
29 | 30 | end |
30 | 31 | ... | ... |
test/functional/proposals_discussion_plugin_public_controller_test.rb
... | ... | @@ -50,17 +50,14 @@ class ProposalsDiscussionPluginPublicControllerTest < ActionController::TestCase |
50 | 50 | end |
51 | 51 | |
52 | 52 | should 'load proposals with most recent order' do |
53 | - proposal1 = fast_create(ProposalsDiscussionPlugin::Proposal, :name => 'z', :abstract => 'proposal abstract', :profile_id => profile.id, :parent_id => topic.id) | |
54 | - proposal2 = fast_create(ProposalsDiscussionPlugin::Proposal, :name => 'b', :abstract => 'proposal abstract', :profile_id => profile.id, :parent_id => topic.id) | |
55 | - proposal3 = fast_create(ProposalsDiscussionPlugin::Proposal, :name => 'k', :abstract => 'proposal abstract', :profile_id => profile.id, :parent_id => topic.id) | |
53 | + proposal1 = fast_create(ProposalsDiscussionPlugin::Proposal, :name => 'z', :abstract => 'proposal abstract', :profile_id => profile.id, :parent_id => topic.id, :created_at => Date.today - 2.day) | |
54 | + proposal2 = fast_create(ProposalsDiscussionPlugin::Proposal, :name => 'b', :abstract => 'proposal abstract', :profile_id => profile.id, :parent_id => topic.id, :created_at => Date.today - 1.day) | |
55 | + proposal3 = fast_create(ProposalsDiscussionPlugin::Proposal, :name => 'k', :abstract => 'proposal abstract', :profile_id => profile.id, :parent_id => topic.id, :created_at => Date.today) | |
56 | 56 | |
57 | 57 | author = fast_create(Person) |
58 | - Comment.create!(:source => proposal2, :body => 'text', :author => author) | |
59 | - Comment.create!(:source => proposal2, :body => 'text', :author => author) | |
60 | - Comment.create!(:source => proposal3, :body => 'text', :author => author) | |
61 | 58 | |
62 | 59 | get :load_proposals, :profile => profile.identifier, :holder_id => topic.id, :order => 'recent' |
63 | - assert_equal [proposal3, proposal2, proposal1], assigns(:proposals) | |
60 | + assert_equal [proposal3, proposal2, proposal1].map(&:name), assigns(:proposals).map(&:name) | |
64 | 61 | end |
65 | 62 | |
66 | 63 | should 'load proposals with most recently commented order' do | ... | ... |
views/content_viewer/discussion.html.erb
1 | 1 | <%= javascript_include_tag 'plugins/proposals_discussion/proposals_list.js' %> |
2 | 2 | |
3 | -<%= add_rss_feed_to_head(@page.name, @page.feed.url) if @page.feed %> | |
3 | +<%= add_rss_feed_to_head(discussion.name, discussion.feed.url) if discussion.feed %> | |
4 | 4 | |
5 | 5 | <div class="description"> |
6 | - <%= @page.body %> | |
6 | + <%= discussion.body %> | |
7 | 7 | </div> |
8 | 8 | |
9 | -<% if @page.allow_create?(user) %> | |
9 | +<% if discussion.allow_create?(user) %> | |
10 | 10 | <div class="actions"> |
11 | - <%= link_to url_for({:controller => 'cms', :action => 'new', :type => "ProposalsDiscussionPlugin::Topic", :parent_id => @page.id}), :class => 'button with-text icon-add' do %> | |
11 | + <%= link_to url_for({:controller => 'cms', :action => 'new', :type => "ProposalsDiscussionPlugin::Topic", :parent_id => discussion.id}), :class => 'button with-text icon-add' do %> | |
12 | 12 | <strong><%= _("New Topic") %></strong> |
13 | 13 | <% end %> |
14 | 14 | </div> |
... | ... | @@ -17,11 +17,11 @@ |
17 | 17 | <div class="topics js-masonry" data-masonry-options='{ "itemSelector": ".topic-item", "columnWidth": 200 }'> |
18 | 18 | <div class="actions topic-item"> |
19 | 19 | <div class="topic-color"></div> |
20 | - <%= link_to url_for({:controller => 'proposals_discussion_plugin_myprofile', :action => 'select_topic', :parent_id => @page.id}), :class => 'button with-text icon-add' do %> | |
20 | + <%= link_to url_for({:controller => 'proposals_discussion_plugin_myprofile', :action => 'select_topic', :parent_id => discussion.id}), :class => 'button with-text icon-add' do %> | |
21 | 21 | <strong><%= _("Send your proposal!") %></strong> |
22 | 22 | <% end %> |
23 | 23 | </div> |
24 | - <% @page.topics.includes(:profile).each do |topic| %> | |
24 | + <% discussion.topics.includes(:profile).each do |topic| %> | |
25 | 25 | <div class="topic-item" id="topic-<%= topic.id %>"> |
26 | 26 | <%= render :file => 'content_viewer/topic', :locals => {:topic => topic, :list_view => true} %> |
27 | 27 | </div> | ... | ... |
views/content_viewer/proposal.html.erb
1 | 1 | <div class="discussion"> |
2 | - <h5><%= @page.topic.discussion.title %> </h5> | |
2 | + <h5><%= proposal.topic.discussion.title %> </h5> | |
3 | 3 | </div> |
4 | 4 | |
5 | 5 | <% extend ProposalsDiscussionPlugin::TopicHelper %> |
6 | 6 | |
7 | 7 | <div class="topic"> |
8 | - <%= topic_title @page.topic %> | |
8 | + <%= topic_title proposal.topic %> | |
9 | 9 | </div> |
10 | 10 | |
11 | 11 | <div class="title"> |
12 | 12 | <h5><%= _('Title') %></h4> |
13 | - <div class="content"><%= @page.title %></div> | |
13 | + <div class="content"><%= proposal.title %></div> | |
14 | 14 | </div> |
15 | 15 | |
16 | 16 | <div class="abstract"> |
17 | 17 | <h5><%= _('Abstract') %></h4> |
18 | - <div class="content"><%= @page.abstract %></div> | |
18 | + <div class="content"><%= proposal.abstract %></div> | |
19 | 19 | </div> |
20 | 20 | |
21 | 21 | <div class="body"> |
22 | - <h5><%= @page.topic.discussion.custom_body_label %></h4> | |
23 | - <div class="content"><%= @page.body %></div> | |
22 | + <h5><%= proposal.topic.discussion.custom_body_label %></h4> | |
23 | + <div class="content"><%= proposal.body %></div> | |
24 | 24 | </div> |
25 | 25 | |
26 | -<% if @page.created_by == user && !@page.published %> | |
26 | +<% if proposal.created_by == user && !proposal.published %> | |
27 | 27 | <div class="actions"> |
28 | - <%= link_to url_for({:controller => 'proposals_discussion_plugin_myprofile', :action => 'publish_proposal', :proposal_id => @page.id}), :class => 'button with-text icon-suggest' do %> | |
28 | + <%= link_to url_for({:controller => 'proposals_discussion_plugin_myprofile', :action => 'publish_proposal', :proposal_id => proposal.id}), :class => 'button with-text icon-suggest' do %> | |
29 | 29 | <strong><%= _("Publish") %></strong> |
30 | 30 | <% end %> |
31 | 31 | </div> | ... | ... |