Commit 7ebc63886347583ccf0eaedd1cb5d21dd7219a78
1 parent
e58ae17f
Exists in
theme-brasil-digital-from-staging
and in
9 other branches
#community dashboard - allow pinning of messages from twitter / facebook
Showing
3 changed files
with
36 additions
and
5 deletions
Show diff stats
plugins/community_hub/controllers/public/community_hub_plugin_public_controller.rb
@@ -169,18 +169,36 @@ class CommunityHubPluginPublicController < PublicController | @@ -169,18 +169,36 @@ class CommunityHubPluginPublicController < PublicController | ||
169 | rescue | 169 | rescue |
170 | message = nil | 170 | message = nil |
171 | end | 171 | end |
172 | + | ||
172 | if message | 173 | if message |
173 | mediation = TinyMceArticle.new | 174 | mediation = TinyMceArticle.new |
174 | mediation.profile = hub.profile | 175 | mediation.profile = hub.profile |
175 | mediation.parent = hub | 176 | mediation.parent = hub |
176 | - mediation.last_changed_by = message.author | ||
177 | - mediation.created_by_id = message.author.id | 177 | + |
178 | + author = message.author.blank? ? user : message.author | ||
179 | + | ||
180 | + mediation.last_changed_by = author | ||
181 | + mediation.created_by_id = author.id | ||
182 | + | ||
178 | mediation.name = mediation_timestamp | 183 | mediation.name = mediation_timestamp |
179 | mediation.body = message.body | 184 | mediation.body = message.body |
180 | mediation.notify_comments = false | 185 | mediation.notify_comments = false |
181 | mediation.type = 'TinyMceArticle' | 186 | mediation.type = 'TinyMceArticle' |
182 | mediation.advertise = false | 187 | mediation.advertise = false |
188 | + mediation.source = 'local' | ||
189 | + | ||
183 | if mediation.save | 190 | if mediation.save |
191 | + | ||
192 | + if ( message.title == 'hub-message-twitter' ) | ||
193 | + mediation.source = 'twitter' | ||
194 | + mediation.author_name = message.name | ||
195 | + elsif ( message.title == 'hub-message-facebook' ) | ||
196 | + mediation.source = 'facebook' | ||
197 | + mediation.author_name = message.name | ||
198 | + end | ||
199 | + | ||
200 | + mediation.save | ||
201 | + | ||
184 | hub.pinned_messages += [message.id] unless hub.pinned_messages.include?(message.id) | 202 | hub.pinned_messages += [message.id] unless hub.pinned_messages.include?(message.id) |
185 | hub.pinned_mediations += [mediation.id] unless hub.pinned_mediations.include?(mediation.id) | 203 | hub.pinned_mediations += [mediation.id] unless hub.pinned_mediations.include?(mediation.id) |
186 | if hub.save | 204 | if hub.save |
plugins/community_hub/views/community_hub_plugin_public/_mediation.rhtml
@@ -4,14 +4,25 @@ | @@ -4,14 +4,25 @@ | ||
4 | 4 | ||
5 | <ul> | 5 | <ul> |
6 | <li class="time"><%= post_time(mediation.created_at) %></li> | 6 | <li class="time"><%= post_time(mediation.created_at) %></li> |
7 | - <li class="avatar"><%= image_tag(profile_icon(mediation.author, :minor)) %></li> | ||
8 | - <li class="message"><span class="author"><%= mediation.author_name %>:</span> <%= mediation.body %></li> | 7 | + |
8 | + <li class="avatar"> | ||
9 | + <% if mediation.source == 'twitter' %> | ||
10 | + <%= image_tag('/plugins/community_hub/icons/logo_twitter_bird_white_50x50.png', :alt => "Twitter") %> | ||
11 | + <% elsif mediation.source == 'facebook' %> | ||
12 | + <%= image_tag('/plugins/community_hub/icons/logo_facebook_50x50.png', :alt => "Facebook") %> | ||
13 | + <% else %> | ||
14 | + <%= image_tag(profile_icon(mediation.author, :minor)) if mediation.author %> | ||
15 | + <% end %> | ||
16 | + </li> | ||
17 | + <li class="message"><span class="author"><%= mediation.setting[:author_name] %>:</span> <%= mediation.body %></li> | ||
9 | 18 | ||
10 | <% if mediator?(hub) %> | 19 | <% if mediator?(hub) %> |
11 | <li class="mediation-bar"> | 20 | <li class="mediation-bar"> |
12 | 21 | ||
13 | <ul> | 22 | <ul> |
14 | 23 | ||
24 | + <% if mediation.source != 'twitter' && mediation.source != 'facebook' %> | ||
25 | + | ||
15 | <li class="promote"> | 26 | <li class="promote"> |
16 | <% if !promoted?(hub, mediation.author.id) %> | 27 | <% if !promoted?(hub, mediation.author.id) %> |
17 | <a id="<%= mediation.id %>" href="#" onclick="promote_user(<%= mediation.id %>,<%= mediation.author.id %>); return false;"> | 28 | <a id="<%= mediation.id %>" href="#" onclick="promote_user(<%= mediation.id %>,<%= mediation.author.id %>); return false;"> |
@@ -22,6 +33,8 @@ | @@ -22,6 +33,8 @@ | ||
22 | <% end %> | 33 | <% end %> |
23 | </li> | 34 | </li> |
24 | 35 | ||
36 | + <% end %> | ||
37 | + | ||
25 | <% if pinned_mediation?(hub, mediation.id) %> | 38 | <% if pinned_mediation?(hub, mediation.id) %> |
26 | <li class="pin"> | 39 | <li class="pin"> |
27 | <img class="pinned" src="/plugins/community_hub/icons/hub-not-pinned-icon.png" title="<%= _("Message pinned")%>" /> | 40 | <img class="pinned" src="/plugins/community_hub/icons/hub-not-pinned-icon.png" title="<%= _("Message pinned")%>" /> |
plugins/community_hub/views/community_hub_plugin_public/_post.rhtml
@@ -14,7 +14,7 @@ | @@ -14,7 +14,7 @@ | ||
14 | </li> | 14 | </li> |
15 | <li class="message"><span class="author"><%= post.author_name %>:</span> <%= post.body %></li> | 15 | <li class="message"><span class="author"><%= post.author_name %>:</span> <%= post.body %></li> |
16 | 16 | ||
17 | - <% if mediator?(hub) && post.title != 'hub-message-twitter' && post.title != 'hub-message-facebook' %> | 17 | + <% if mediator?(hub) %> |
18 | <li class="mediation-bar"> | 18 | <li class="mediation-bar"> |
19 | <ul> | 19 | <ul> |
20 | <li class="pin"> | 20 | <li class="pin"> |