Commit 37835fb9cc4700a293c1f52f9d3f12566b8efdda
1 parent
e3f170d0
Exists in
theme-brasil-digital-from-staging
and in
9 other branches
#community_dashboard - fixes
Showing
4 changed files
with
35 additions
and
30 deletions
Show diff stats
plugins/community_hub/controllers/public/community_hub_plugin_public_controller.rb
... | ... | @@ -50,14 +50,12 @@ class CommunityHubPluginPublicController < PublicController |
50 | 50 | mediation_data = {} |
51 | 51 | mediation_data.merge!(params[:article]) if params[:article] |
52 | 52 | |
53 | - mediation = TinyMceArticle.new(mediation_data) | |
53 | + mediation = CommunityHubPlugin::Mediation.new(mediation_data) | |
54 | + mediation.name = CommunityHubPlugin::Mediation.timestamp | |
54 | 55 | mediation.profile = profile |
55 | 56 | mediation.last_changed_by = user |
56 | - mediation.name = mediation_timestamp | |
57 | - mediation.notify_comments = false | |
58 | - mediation.type = 'TinyMceArticle' | |
59 | - mediation.advertise = false | |
60 | 57 | mediation.created_by_id = user.id |
58 | + mediation.source = 'local' | |
61 | 59 | |
62 | 60 | if mediation && mediation.save |
63 | 61 | render :text => {'ok' => true}.to_json, :content_type => 'application/json' |
... | ... | @@ -113,7 +111,7 @@ class CommunityHubPluginPublicController < PublicController |
113 | 111 | def newer_articles |
114 | 112 | latest_post = params[:latest_post] |
115 | 113 | hub = Article.find(params[:hub]) |
116 | - posts = Article.find(:all, :order => "id desc", :conditions => ["id > :id and type = :type and parent_id = :hub", { :id => latest_post, :type => 'TinyMceArticle', :hub => hub.id }]) | |
114 | + posts = CommunityHubPlugin::Mediation.find(:all, :order => "id desc", :conditions => ["id > :id and parent_id = :hub", { :id => latest_post, :hub => hub.id }]) | |
117 | 115 | |
118 | 116 | if !posts.empty? |
119 | 117 | oldest_post = posts.last.id |
... | ... | @@ -158,11 +156,13 @@ class CommunityHubPluginPublicController < PublicController |
158 | 156 | def pin_message |
159 | 157 | if logged_in? |
160 | 158 | if (!params[:hub].blank? && !params[:message].blank?) |
159 | + | |
161 | 160 | begin |
162 | 161 | hub = Article.find(params[:hub]) |
163 | 162 | rescue |
164 | 163 | hub = nil |
165 | 164 | end |
165 | + | |
166 | 166 | if hub && hub.mediator?(user) |
167 | 167 | begin |
168 | 168 | message = Comment.find(params[:message]) |
... | ... | @@ -171,42 +171,37 @@ class CommunityHubPluginPublicController < PublicController |
171 | 171 | end |
172 | 172 | |
173 | 173 | if message |
174 | - mediation = TinyMceArticle.new | |
175 | - mediation.profile = hub.profile | |
176 | - mediation.parent = hub | |
177 | - | |
178 | 174 | author = message.author.blank? ? user : message.author |
179 | 175 | |
176 | + mediation = CommunityHubPlugin::Mediation.new | |
177 | + mediation.name = CommunityHubPlugin::Mediation.timestamp | |
178 | + | |
179 | + mediation.profile = hub.profile | |
180 | 180 | mediation.last_changed_by = author |
181 | 181 | mediation.created_by_id = author.id |
182 | - | |
183 | - mediation.name = mediation_timestamp | |
184 | 182 | mediation.body = message.body |
185 | - mediation.notify_comments = false | |
186 | - mediation.type = 'TinyMceArticle' | |
187 | - mediation.advertise = false | |
183 | + mediation.parent_id = hub.id | |
188 | 184 | mediation.source = 'local' |
189 | 185 | |
190 | - if mediation.save | |
186 | + if mediation && mediation.save | |
191 | 187 | |
192 | 188 | if ( message.title == 'hub-message-twitter' ) |
193 | 189 | mediation.source = 'twitter' |
194 | 190 | mediation.author_name = message.name |
195 | - mediation.external_link = message.profile_picture | |
196 | - elsif ( message.title == 'hub-message-facebook' ) | |
197 | - mediation.source = 'facebook' | |
198 | - mediation.author_name = message.name | |
191 | + mediation.profile_picture = message.profile_picture | |
192 | + mediation.save | |
199 | 193 | end |
200 | 194 | |
201 | - mediation.save | |
202 | - | |
203 | 195 | hub.pinned_messages += [message.id] unless hub.pinned_messages.include?(message.id) |
204 | 196 | hub.pinned_mediations += [mediation.id] unless hub.pinned_mediations.include?(mediation.id) |
205 | - if hub.save | |
197 | + | |
198 | + if hub && hub.save | |
206 | 199 | render :text => {'ok' => true}.to_json, :content_type => 'application/json' |
207 | 200 | return true |
208 | 201 | end |
202 | + | |
209 | 203 | end |
204 | + | |
210 | 205 | end |
211 | 206 | end |
212 | 207 | end |
... | ... | @@ -217,11 +212,6 @@ class CommunityHubPluginPublicController < PublicController |
217 | 212 | |
218 | 213 | protected |
219 | 214 | |
220 | - def mediation_timestamp | |
221 | - "hub-mediation-#{(Time.now.to_f * 1000).to_i}" | |
222 | - end | |
223 | - | |
224 | - | |
225 | 215 | def message_timestamp |
226 | 216 | "hub-message-#{(Time.now.to_f * 1000).to_i}" |
227 | 217 | end | ... | ... |
plugins/community_hub/lib/community_hub_plugin/mediation.rb
0 → 100644
... | ... | @@ -0,0 +1,15 @@ |
1 | +class CommunityHubPlugin::Mediation < Article | |
2 | + | |
3 | + before_save do |mediation| | |
4 | + mediation.advertise = false | |
5 | + mediation.notify_comments = false | |
6 | + nil | |
7 | + end | |
8 | + | |
9 | + settings_items :profile_picture, :type => :string, :default => "" | |
10 | + | |
11 | + def self.timestamp | |
12 | + "hub-mediation-#{(Time.now.to_f * 1000).to_i}" | |
13 | + end | |
14 | + | |
15 | +end | ... | ... |
plugins/community_hub/views/community_hub_plugin_public/_mediation.rhtml
... | ... | @@ -7,7 +7,7 @@ |
7 | 7 | |
8 | 8 | <li class="avatar"> |
9 | 9 | <% if mediation.source == 'twitter' %> |
10 | - <%= image_tag(mediation.external_link, :alt => "Twitter") %> | |
10 | + <%= image_tag(mediation.profile_picture, :alt => "Twitter") %> | |
11 | 11 | <% elsif mediation.source == 'facebook' %> |
12 | 12 | <%= image_tag('/plugins/community_hub/icons/logo_facebook_50x50.png', :alt => "Facebook") %> |
13 | 13 | <% else %> | ... | ... |
plugins/community_hub/views/community_hub_plugin_public/_post.rhtml
... | ... | @@ -14,7 +14,7 @@ |
14 | 14 | </li> |
15 | 15 | <li class="message"><span class="author"><%= post.author_name %>:</span> <%= post.body %></li> |
16 | 16 | |
17 | - <% if mediator?(hub) %> | |
17 | + <% if mediator?(hub) && post.title != 'hub-message-facebook' %> | |
18 | 18 | <li class="mediation-bar"> |
19 | 19 | <ul> |
20 | 20 | <li class="pin"> | ... | ... |