Commit cb5edbc4789245ff6f74f8c3da576a9b49f0e45b

Authored by Evandro Junior
2 parents 9a901eef db205a5b

Merge branch 'AI3074-community_dashboard' of https://gitlab.com/participa/noosfe…

…ro into AI3074-community_dashboard
plugins/community_hub/controllers/public/community_hub_plugin_public_controller.rb
1 1 class CommunityHubPluginPublicController < PublicController
  2 +
2 3 append_view_path File.join(File.dirname(__FILE__) + '/../../views')
3 4  
4   - def delete_post
  5 + #layout false
  6 +
  7 + def newer_comments
  8 + posts = Comment.find(:all)
  9 + #render :text => posts_to_json(posts), :content_type => 'text/plain'
  10 + render :partial => "post", :collection => posts
  11 + end
  12 +
  13 + def more_comments
  14 + @posts = Comment.find(:all)
  15 + render :partial => "post", :collection => @posts
  16 + end
  17 +
  18 + def newer_articles
  19 + posts = Article.find(:all, :conditions => {:type => 'TinyMceArticle'}, :limit => 3)
  20 + render :partial => "post", :collection => posts
5 21 end
6 22  
  23 + def settings
  24 + settings_section = params[:id]
  25 + #raise settings_section.inspect
  26 + render :partial => "settings/twitter", :layout => true
  27 + end
  28 +
  29 + protected
  30 +
  31 + def posts_to_json(list)
  32 + list.map do |item| {
  33 + 'id' => item.id,
  34 + 'created_at' => item.created_at,
  35 + 'body' => item.body,
  36 + 'profile' => item.author
  37 + }
  38 + end.to_json
  39 + end
  40 +
  41 +
  42 +
7 43 end
8 44 \ No newline at end of file
... ...
plugins/community_hub/lib/community_hub_plugin.rb
... ... @@ -13,7 +13,7 @@ class CommunityHubPlugin &lt; Noosfero::Plugin
13 13 end
14 14  
15 15 def js_files
16   - 'javascripts/stream_post_form.js'
  16 + 'javascripts/community_hub.js'
17 17 end
18 18  
19 19 def content_types
... ... @@ -27,10 +27,6 @@ class CommunityHubPlugin &lt; Noosfero::Plugin
27 27 end
28 28 end
29 29  
30   - #def self.extra_blocks
31   - # { CommunityHubPlugin::HubBlock => {:position => 1} }
32   - #end
33   -
34 30 def content_remove_new(page)
35 31 page.kind_of?(CommunityHubPlugin::Hub)
36 32 end
... ...
plugins/community_hub/lib/community_hub_plugin/hub.rb
1 1 class CommunityHubPlugin::Hub < Folder
2 2  
  3 + settings_items :hashtags_twitter, :type => :string, :default => ""
  4 +
3 5 def self.icon_name(article = nil)
4 6 'community-hub'
5 7 end
... ... @@ -12,16 +14,12 @@ class CommunityHubPlugin::Hub &lt; Folder
12 14 _('Defines a hub.')
13 15 end
14 16  
15   - def view_page
16   - "content_viewer/hub.rhtml"
17   - end
18   -
19   - def bli
20   - "bli"
21   - end
22   -
23 17 def accept_comments?
24 18 true
25 19 end
26 20  
  21 + def view_page
  22 + "content_viewer/hub.rhtml"
  23 + end
  24 +
27 25 end
28 26 \ No newline at end of file
... ...
plugins/community_hub/lib/community_hub_plugin/hub_stream_post.rb
... ... @@ -1,7 +0,0 @@
1   -class CommunityHubPlugin::HubStreamPost < Comment
2   -
3   - def bli
4   - ""
5   - end
6   -
7   -end
8 0 \ No newline at end of file
plugins/community_hub/lib/ext/article.rb
... ... @@ -2,11 +2,11 @@ require_dependency &#39;article&#39;
2 2  
3 3 class Article
4 4  
5   - #before_create do |article|
  5 + before_create do |article|
6 6 # if article.parent.kind_of?(CommunityDashboardPlugin::Hub)
7 7 # article.accept_comments = article.parent.accept_comments
8 8 # end
9   - # true
10   - #end
  9 + true
  10 + end
11 11  
12 12 end
... ...
plugins/community_hub/public/javascripts/community_hub.js 0 → 100644
... ... @@ -0,0 +1,115 @@
  1 +var $ = jQuery;
  2 +
  3 +function send_message_for_stream(button) {
  4 + var $ = jQuery;
  5 + open_loading(DEFAULT_LOADING_MESSAGE);
  6 + var $button = $(button);
  7 + var form = $button.parents("form");
  8 + $button.addClass('stream-post-button-loading');
  9 + $.post(form.attr("action"), form.serialize(), function(data) {
  10 + if(data.render_target == null) {
  11 + }
  12 + else if(data.render_target == 'form') {
  13 + }
  14 + else if($('#' + data.render_target).size() > 0) {
  15 + }
  16 + else {
  17 + form.find("input[type='text']").add('textarea').each(function() {
  18 + this.value = '';
  19 + });
  20 + }
  21 +
  22 + close_loading();
  23 + $button.removeClass('stream-post-button-loading');
  24 + $button.enable();
  25 + }, 'json');
  26 +}
  27 +
  28 +function send_post_for_mediation(button) {
  29 + var $ = jQuery;
  30 + open_loading(DEFAULT_LOADING_MESSAGE);
  31 + var $button = $(button);
  32 + var form = $button.parents("form");
  33 + $button.addClass('stream-post-button-loading');
  34 + $.post(form.attr("action"), form.serialize(), function(data) {
  35 + if(data.render_target == null) {
  36 + }
  37 + else if(data.render_target == 'form') {
  38 + }
  39 + else if($('#' + data.render_target).size() > 0) {
  40 + }
  41 + else {
  42 + form.find("input[type='text']").add('textarea').each(function() {
  43 + this.value = '';
  44 + });
  45 + }
  46 +
  47 + close_loading();
  48 + $button.removeClass('stream-post-button-loading');
  49 + $button.enable();
  50 + });
  51 +}
  52 +
  53 +function clearMediationForm(element) {
  54 + alert(element);
  55 +}
  56 +
  57 +function setMediationTimestamp() {
  58 + var now = new Date().getTime();
  59 + var timestamp = 'hub-mediation-' + now.toString();
  60 + $("article_name").value = timestamp;
  61 +}
  62 +
  63 +function loadPosts(section) {
  64 +
  65 + var url;
  66 + var container;
  67 +
  68 + switch(section) {
  69 + case 'live':
  70 + url = '/plugin/community_hub/public/newer_comments';
  71 + container = $("#live-posts");
  72 + break;
  73 + case 'mediation':
  74 + url = '/plugin/community_hub/public/newer_articles';
  75 + container = $("#mediation-posts");
  76 + break;
  77 + }
  78 +
  79 + $.ajax({
  80 + url: url,
  81 + success: function(data) {
  82 + container.append(data);
  83 + },
  84 + error: function(ajax, stat, errorThrown) {
  85 + console.log(stat);
  86 + }
  87 + });
  88 +
  89 +}
  90 +
  91 +function hub() {
  92 + loadPosts('live');
  93 + loadPosts('mediation');
  94 +}
  95 +
  96 +function checkNewPosts() {
  97 + var agora = new Date();
  98 + console.log( 'checking news posts...' );
  99 +}
  100 +
  101 +function toogleAutoScrolling() {
  102 + alert($("#auto_scrolling").attr('checked'));
  103 +}
  104 +
  105 +$(document).ready(function(){
  106 +
  107 + $("#auto_scrolling").click(function(){
  108 + toogleAutoScrolling();
  109 + });
  110 +
  111 + hub();
  112 + checkNewPosts('live');
  113 +
  114 +});
  115 +
... ...
plugins/community_hub/public/javascripts/stream_post_form.js
... ... @@ -1,62 +0,0 @@
1   -function send_message_for_stream(button) {
2   - var $ = jQuery;
3   - open_loading(DEFAULT_LOADING_MESSAGE);
4   - var $button = $(button);
5   - var form = $button.parents("form");
6   - $button.addClass('stream-post-button-loading');
7   - $.post(form.attr("action"), form.serialize(), function(data) {
8   - if(data.render_target == null) {
9   - }
10   - else if(data.render_target == 'form') {
11   - }
12   - else if($('#' + data.render_target).size() > 0) {
13   - }
14   - else {
15   - form.find("input[type='text']").add('textarea').each(function() {
16   - this.value = '';
17   - });
18   - }
19   -
20   - close_loading();
21   - $button.removeClass('stream-post-button-loading');
22   - $button.enable();
23   - }, 'json');
24   -}
25   -
26   -function teste() {
27   - alert('teste');
28   -}
29   -
30   -function send_post_for_mediation(button) {
31   - var $ = jQuery;
32   - open_loading(DEFAULT_LOADING_MESSAGE);
33   - var $button = $(button);
34   - var form = $button.parents("form");
35   - $button.addClass('stream-post-button-loading');
36   - $.post(form.attr("action"), form.serialize(), function(data) {
37   - if(data.render_target == null) {
38   - }
39   - else if(data.render_target == 'form') {
40   - }
41   - else if($('#' + data.render_target).size() > 0) {
42   - }
43   - else {
44   - form.find("input[type='text']").add('textarea').each(function() {
45   - this.value = '';
46   - });
47   - }
48   -
49   - close_loading();
50   - $button.removeClass('stream-post-button-loading');
51   - $button.enable();
52   - });
53   -}
54   -
55   -function clearMediationForm(element) {
56   - alert(element);
57   - //var $field = $(field);
58   - //$field.value = '';
59   -}
60   -
61   -
62   -//setInterval(teste, 2000);
plugins/community_hub/public/style.css
... ... @@ -3,25 +3,40 @@
3 3 background-image: url(/plugins/community_hub/icons/community-hub.png)
4 4 }
5 5  
6   -#hub{
  6 +.hub {
7 7 border:1px solid red;
8 8 }
9 9  
10   -#hub .body{
11   - border:1px solid green;
  10 +.hub .title {}
  11 +
  12 +.hub .description {}
  13 +
  14 +.hub .live {
  15 + border:1px solid red;
12 16 }
13 17  
14   -#hub .live{
15   - border:1px solid yellow;
16   - float: left;
17   - width: 50%;
  18 +.hub .live .title {}
  19 +
  20 +.hub .live .on-air {}
  21 +
  22 +.hub .live .off-air {}
  23 +
  24 +.hub .mediation {
  25 + border:1px solid green;
18 26 }
19 27  
20   -#hub .mediation{
21   - border:1px solid black;
22   - width: 50%;
  28 +.hub .mediation .title {}
  29 +
  30 +.hub .mediation .expand {}
  31 +
  32 +.hub .form {}
  33 +
  34 +.hub .settings {
  35 + border:1px solid red;
23 36 }
24 37  
25   -#hub-posting-area td {
26   - padding: 0px;
27   -}
28 38 \ No newline at end of file
  39 +.hub .settings .twitter,
  40 +.hub .settings .facebook,
  41 +.hub .settings .general {
  42 + border:1px solid red;
  43 +}
... ...
plugins/community_hub/views/cms/community_hub_plugin/_hub.rhtml 0 → 100644
... ... @@ -0,0 +1,17 @@
  1 +<div class='hub'>
  2 +
  3 + <h1><%= _("HUB Settings") %></h1>
  4 +
  5 + <%= required_fields_message %>
  6 +
  7 + <div>
  8 + <%= required labelled_form_field(_('Title'), text_field(:article, 'name', :size => '64', :maxlength => 150)) %>
  9 + </div>
  10 +
  11 + <div>
  12 + <%= required labelled_form_field(_('Description'), text_area(:article, 'body', :style => 'width: 99%;')) %>
  13 + </div>
  14 +
  15 + <span><%= labelled_form_field(_('Hashtags (TWITTER)'), text_field(:article, 'hashtags_twitter')) %></span>
  16 +
  17 +</div>
0 18 \ No newline at end of file
... ...
plugins/community_hub/views/community_hub_plugin_public/_post.rhtml 0 → 100644
... ... @@ -0,0 +1,39 @@
  1 +<li class="post" style="border:1px solid black;">
  2 +
  3 + <ul style="border:1px solid red;">
  4 + <li class="time" style="border:1px solid red;">
  5 + <%= show_time(post.created_at) %>
  6 + </li>
  7 + <li class="avatar" style="border:1px solid red;">
  8 +
  9 + <% if false %>
  10 + <%= image_tag(profile_icon(post.author, :minor)) %>
  11 + <% end %>
  12 +
  13 + image
  14 +
  15 + </li>
  16 + <li class="message" style="border:1px solid red;">
  17 + <%= txt2html post.body %>
  18 + </li>
  19 + <li class="mediation-bar" style="border:1px solid red;">
  20 +
  21 + <ul style="border:1px solid red;">
  22 + <li class="remove">
  23 + <%= link_to 'excluir', :controller => 'community_hub_plugin_public', :action => 'destroy', :id => post.id %>
  24 + </li>
  25 + <li class="promote">
  26 + <%= link_to 'promover', :controller => 'community_hub_plugin_public', :action => 'destroy', :id => post.id %>
  27 + </li>
  28 + <li class="likes-dislikes">
  29 + <%= link_to 'gostei', :controller => 'community_hub_plugin_public', :action => 'destroy', :id => post.id %> | <%= link_to 'não gostei', :controller => 'community_hub_plugin_public', :action => 'destroy', :id => post.id %>
  30 + </li>
  31 + <li class="pin">
  32 + <%= link_to 'fixar', :controller => 'community_hub_plugin_public', :action => 'destroy', :id => post.id %>
  33 + </li>
  34 + </ul>
  35 +
  36 + </li>
  37 + </ul>
  38 +
  39 +</li>
0 40 \ No newline at end of file
... ...
plugins/community_hub/views/community_hub_plugin_public/_post_form.rhtml 0 → 100644
... ... @@ -0,0 +1,82 @@
  1 + <% if user_role == 'visitor' %>
  2 +
  3 + <% remote_form_for( :comment,
  4 + CommunityHubPlugin::HubStreamPost.new,
  5 + :url => {
  6 + :profile => profile.identifier,
  7 + :controller => 'comment',
  8 + :action => 'create',
  9 + :id => @page.id
  10 + },
  11 + :html => { :class => 'comment_form' } ) do |f| %>
  12 +
  13 + <div>
  14 + <span><%= _("Streaming") %></span>
  15 + </div>
  16 + <div>
  17 + <%= f.text_area(:body,
  18 + :style => 'width: 99%;',
  19 + :placeholder => _('Type your message here')) %>
  20 + </div>
  21 + <div>
  22 + <%= submit_button('add', _('Post'), :onclick => "send_message_for_stream(this); return false;") %>
  23 + </div>
  24 +
  25 + <% end %>
  26 +
  27 + <% end %>
  28 +
  29 + <% if user_role == 'admin' %>
  30 +
  31 + <%= render :file => 'shared/tiny_mce' %>
  32 +
  33 + <% category_ids = [] %>
  34 +
  35 + <% remote_form_for( :article,
  36 + TinyMceArticle.new,
  37 + :url => {
  38 + :profile => profile.identifier,
  39 + :controller => 'cms',
  40 + :action => 'new',
  41 + :type => 'TinyMceArticle',
  42 + :success_back_to => "",
  43 + :q => "",
  44 + :parent_id => @page.id,
  45 + :back_to => ""
  46 + },
  47 + :before => "tinymce.triggerSave(); setMediationTimestamp()",
  48 + :loading => "alert('loading...')",
  49 + :complete => "tinymce.get('article_body').setContent('')",
  50 + :html => { :class => 'comment_form' } ) do |f| %>
  51 +
  52 + <%= f.hidden_field :moderate_comments, :value => 0 %>
  53 + <%= f.hidden_field :translation_of_id, :value => "" %>
  54 + <%= f.hidden_field :notify_comments, :value => 0 %>
  55 + <%= f.hidden_field :accept_comments, :value => 1 %>
  56 + <%= f.hidden_field :tag_list, :value => "" %>
  57 + <%= f.hidden_field :display_versions, :value => 0 %>
  58 + <%= f.hidden_field :allow_members_to_edit, :value => 0 %>
  59 + <%= f.hidden_field :abstract, :value => "" %>
  60 + <%= f.hidden_field :display_hits, :value => 0 %>
  61 + <%= f.hidden_field :parent_id, :value => @page.id %>
  62 + <%= f.hidden_field :name %>
  63 + <%= f.hidden_field :published, :value => true %>
  64 + <%= f.hidden_field :license_id, :value => "" %>
  65 + <%= hidden_field_tag "article[category_ids][]", "" %>
  66 + <%= f.hidden_field :language, :value => "en" %>
  67 +
  68 + <div>
  69 + <div>
  70 + <%= f.text_area(:body,
  71 + :style => 'width: 99%;',
  72 + :class => 'mceEditor',
  73 + :placeholder => _('Type your message for mediation here')) %>
  74 + </div>
  75 + <div>
  76 + <%= submit_button('add', _('Post'))%>
  77 + </div>
  78 + </div>
  79 +
  80 + <% end %>
  81 +
  82 + <% end %>
0 83 \ No newline at end of file
... ...
plugins/community_hub/views/community_hub_plugin_public/_settings.rhtml 0 → 100644
... ... @@ -0,0 +1,12 @@
  1 +<ul class="settings">
  2 + <li class="twitter">
  3 + <%= link_to _("Twitter settings"), :controller => 'cms', :action => 'edit', :id => @page.id %>
  4 + </li>
  5 + <li class="facebook">
  6 + <%= link_to _("Facebook settings"), :controller => 'cms', :action => 'edit', :id => @page.id %>
  7 + </li>
  8 +
  9 + <li class="general">
  10 + <%= link_to _("General settings"), :controller => 'cms', :action => 'edit', :id => @page.id %>
  11 + </li>
  12 +</ul>
0 13 \ No newline at end of file
... ...
plugins/community_hub/views/content_viewer/_comment.rhtml
... ... @@ -1,37 +0,0 @@
1   -<li id="<%= comment.anchor %>" class="article-comment" style="border:1px solid black;">
2   -
3   - <ul style="border:1px solid red;">
4   - <li style="border:1px solid red;">
5   -
6   - <% if comment.author %>
7   - <%= image_tag(profile_icon(comment.author, :minor)) %>
8   - <% end %>
9   -
10   - </li>
11   - <li style="border:1px solid red;">
12   - <%= show_time(comment.created_at) %>
13   - </li>
14   - <li style="border:1px solid red;">
15   - <%= txt2html comment.body %>
16   - </li>
17   - <li style="border:1px solid red;">
18   -
19   - <ul style="border:1px solid red;">
20   - <li>
21   - <a href="<%= url_for({:controller => 'comment', :action => 'destroy', :id => comment.id}) %>">remover postagem</a>
22   - </li>
23   - <li>
24   - <a href="<%= url_for({:controller => 'comment', :action => 'destroy', :id => comment.id}) %>">promover usuário</a>
25   - </li>
26   - <li>
27   - <a href="<%= url_for({:controller => 'comment', :action => 'destroy', :id => comment.id}) %>">curtir postagem</a>
28   - </li>
29   - <li>
30   - <a href="<%= url_for({:controller => 'comment', :action => 'destroy', :id => comment.id}) %>">não curtir postagem</a>
31   - </li>
32   - </ul>
33   -
34   - </li>
35   - </ul>
36   -
37   -</li>
plugins/community_hub/views/content_viewer/_hub_mediation_item.rhtml
... ... @@ -1 +0,0 @@
1   -wueyriweuyriweuyriwuery
2 0 \ No newline at end of file
plugins/community_hub/views/content_viewer/hub.rhtml
1 1 <!-- HUB -->
2   -<div class="hub" style="border: 1px solid orange;">
  2 +<div class="hub">
3 3  
4 4 <!-- HUB title -->
5   - <div>jdhfjdhf</div>
  5 + <div class="title"><%= @page.title %> HUB</div>
6 6  
7 7 <!-- HUB description -->
8   - <div>djfhkdhfkdjhfdkhffkdjfhkdjfh</div>
  8 + <div class="description"><%= @page.body %></div>
9 9  
10 10 <br />
11 11  
12 12 <!-- HUB live section -->
13   - <div style="border:1px solid red;">
14   - <div style="border:1px solid blue;">
15   - Nome do Título - AO VIVO
16   - </div>
17   - <div style="border:1px solid yellow;">
18   - <ul style="border:1px solid purple; margin: 0px;">
19   - <%= render :partial => 'content_viewer/comment', :collection => @comments %>
20   - <%= pagination_links @comments, :param_name => 'comment_page' %>
21   - </ul>
22   - </div>
23   - </div>
24   -
25   - <br />
26   -
27   - <!-- HUB post form (guest user) -->
28   - <div style="border:1px solid green;">
29   -
30   - <% remote_form_for( :comment,
31   - CommunityHubPlugin::HubStreamPost.new,
32   - :url => {
33   - :profile => profile.identifier,
34   - :controller => 'comment',
35   - :action => 'create',
36   - :id => @page.id
37   - },
38   - :html => { :class => 'comment_form' } ) do |f| %>
39   -
40   - <div>
41   - <span><%= _("Streaming") %></span>
42   - </div>
43   - <div>
44   - <%= f.text_area(:body,
45   - :style => 'width: 99%;',
46   - :placeholder => _('Type your message here')) %>
47   - </div>
48   - <div style="text-align: right;">
49   - <%= submit_button('add', _('Post message'), :onclick => "send_message_for_stream(this); return false;") %>
50   - </div>
51   -
52   - <% end %>
53   -
  13 + <div class="live">
  14 + <h1>
  15 + <span class="title"><%= @page.title %></span><span class="on-air"><%= _("Live") %></span>
  16 + </h1>
  17 + <ul id="live-posts">
  18 + </ul>
  19 + <span><%= check_box_tag 'auto_scrolling', 'yes', true %><%= _("Auto scrolling") %></span>
54 20 </div>
55 21  
56 22 <br />
57 23  
58 24 <!-- HUB mediation section -->
59   - <div style="border:1px solid green">
60   - <div style="border:1px solid blue;">
61   - Mediação
62   - </div>
63   - <div style="border:1px solid yellow;">
64   - <%= render :partial => 'hub_mediation_item' %>
65   - </div>
  25 + <div class="mediation">
  26 + <h1>
  27 + <span class="title"><%= _("Mediation") %><span class="expand">&#43;</span></span>
  28 + </h1>
  29 + <ul id="mediation-posts">
  30 + </ul>
66 31 </div>
67 32  
68 33 <br />
69 34  
70   - <div>
71   -
72   - <%
73   - def mediation_timestamp
74   -
75   - end
76   - %>
77   -
78   - <%= render :file => 'shared/tiny_mce' %>
79   -
80   - <% category_ids = [] %>
81   -
82   - <% remote_form_for( :article,
83   - TinyMceArticle.new,
84   - :url => {
85   - :profile => profile.identifier,
86   - :controller => 'cms',
87   - :action => 'new',
88   - :type => 'TinyMceArticle',
89   - :success_back_to => "",
90   - :q => "",
91   - :parent_id => @page.id,
92   - :back_to => ""
93   - },
94   - :before => "tinymce.triggerSave()",
95   - :loading => "alert('loading...')",
96   - :complete => "tinymce.get('article_body').setContent('')",
97   - :html => { :class => 'comment_form' } ) do |f| %>
98   -
99   - <%= f.hidden_field :moderate_comments, :value => 0 %>
100   - <%= f.hidden_field :translation_of_id, :value => "" %>
101   - <%= f.hidden_field :notify_comments, :value => 0 %>
102   - <%= f.hidden_field :accept_comments, :value => 1 %>
103   - <%= f.hidden_field :tag_list, :value => "" %>
104   - <%= f.hidden_field :display_versions, :value => 0 %>
105   - <%= f.hidden_field :allow_members_to_edit, :value => 0 %>
106   - <%= f.hidden_field :abstract, :value => "" %>
107   - <%= f.hidden_field :display_hits, :value => 0 %>
108   - <%= f.hidden_field :parent_id, :value => 419 %>
109   - <%= f.hidden_field :name, :value => "hub-mediation-" %>
110   - <%= f.hidden_field :published, :value => true %>
111   - <%= f.hidden_field :license_id, :value => "" %>
112   - <%= hidden_field_tag "article[category_ids][]", "" %>
113   - <%= f.hidden_field :language, :value => "en" %>
114   -
115   - <div style="border:1px solid green;">
116   - <div>
117   - <span><%= _("Posting for mediation") %></span>
118   - </div>
119   - <div>
120   - <%= f.text_area(:body,
121   - :style => 'width: 99%;',
122   - :class => 'mceEditor',
123   - :placeholder => _('Type your message for mediation here')) %>
124   - </div>
125   - <div style="text-align: right;">
126   - <%= submit_button('add', _('Save'))%>
127   - </div>
128   - </div>
129   -
130   - <% end %>
  35 + <!-- HUB post form (guest user) & (admin user) -->
  36 + <div class="form">
  37 + <%= render :partial => "community_hub_plugin_public/post_form", :locals => {:user_role => 'admin'} %>
  38 + </div>
131 39  
  40 + <div class="settings">
  41 + <%= render :partial => "community_hub_plugin_public/settings" %>
132 42 </div>
133 43  
134 44 -</div>
  45 +</div>
135 46 \ No newline at end of file
... ...