social_stream 2.1.1 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (188) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +5 -2
  3. data/LICENSE +1 -1
  4. data/base/Rakefile +3 -17
  5. data/base/app/assets/images/flags/de.png +0 -0
  6. data/base/app/assets/images/flags/fr.png +0 -0
  7. data/base/app/assets/images/flags/hu.png +0 -0
  8. data/base/app/assets/images/flags/nl.png +0 -0
  9. data/base/app/assets/javascripts/social_stream/actor.js +34 -0
  10. data/base/app/assets/javascripts/social_stream/contact.js +40 -5
  11. data/base/app/assets/javascripts/social_stream/flash.js +6 -1
  12. data/base/app/assets/javascripts/social_stream/group.js +6 -5
  13. data/base/app/assets/javascripts/social_stream/relation_customs.js +0 -1
  14. data/base/app/assets/stylesheets/social_stream/base/adjust/layout/_adjust.css.sass +3 -0
  15. data/base/app/assets/stylesheets/social_stream/base/buttons/_buttons.scss.sass +0 -2
  16. data/base/app/assets/stylesheets/social_stream/base/contacts/_contacts.css.sass +1 -11
  17. data/base/app/assets/stylesheets/social_stream/base/contacts/layouts/_contacts.css.sass +1 -29
  18. data/base/app/assets/stylesheets/social_stream/base/layouts/_header.css.sass +0 -1
  19. data/base/app/assets/stylesheets/social_stream/base/mixins/_buttons.css.sass +5 -0
  20. data/base/app/assets/stylesheets/social_stream/base/mixins/_layout.css.sass +36 -7
  21. data/base/app/controllers/actors_controller.rb +25 -0
  22. data/base/app/controllers/contacts_controller.rb +38 -8
  23. data/base/app/controllers/groups_controller.rb +2 -21
  24. data/base/app/controllers/profiles_controller.rb +4 -0
  25. data/base/app/controllers/settings_controller.rb +12 -2
  26. data/base/app/controllers/users_controller.rb +0 -8
  27. data/base/app/helpers/contacts_helper.rb +8 -0
  28. data/base/app/models/activity.rb +19 -6
  29. data/base/app/models/actor.rb +49 -11
  30. data/base/app/models/contact.rb +12 -5
  31. data/base/app/models/group.rb +13 -11
  32. data/base/app/models/permission.rb +30 -0
  33. data/base/app/models/relation.rb +17 -7
  34. data/base/app/models/relation/custom.rb +2 -40
  35. data/base/app/models/relation/follow.rb +8 -2
  36. data/base/app/models/relation/owner.rb +10 -0
  37. data/base/app/models/relation/single.rb +7 -4
  38. data/base/app/models/site.rb +1 -1
  39. data/base/app/models/tie.rb +8 -4
  40. data/base/app/views/contacts/_add_button.html.erb +9 -0
  41. data/base/app/views/contacts/_button.html.erb +3 -3
  42. data/base/app/views/contacts/_button_multiple.html.erb +4 -0
  43. data/base/app/views/contacts/_button_simple.html.erb +17 -0
  44. data/base/app/views/contacts/_new_modal.html.erb +22 -0
  45. data/base/app/views/contacts/destroy.js.erb +5 -4
  46. data/base/app/views/contacts/update.js.erb +5 -4
  47. data/base/app/views/devise/confirmations/new.html.erb +14 -9
  48. data/base/app/views/frontpage/_presentation.html.erb +2 -2
  49. data/base/app/views/groups/_form.html.erb +20 -20
  50. data/base/app/views/groups/show.html.erb +5 -5
  51. data/base/app/views/layouts/_header_dropdown_menu.html.erb +3 -5
  52. data/base/app/views/layouts/_header_signed_in.erb +3 -3
  53. data/base/app/views/layouts/_logo_in.html.erb +1 -1
  54. data/base/app/views/layouts/application.html.erb +2 -0
  55. data/base/app/views/permissions/_list.html.erb +1 -1
  56. data/base/app/views/profiles/_avatar.html.erb +1 -5
  57. data/base/app/views/profiles/_avatar_edit.html.erb +5 -0
  58. data/base/app/views/profiles/_comunication-info.html.erb +2 -36
  59. data/base/app/views/profiles/_comunication-info_edit.html.erb +27 -0
  60. data/base/app/views/profiles/_edit_icon.html.erb +0 -1
  61. data/base/app/views/profiles/_experience.html.erb +1 -6
  62. data/base/app/views/profiles/_experience_edit.html.erb +5 -0
  63. data/base/app/views/profiles/_personal.html.erb +1 -39
  64. data/base/app/views/profiles/_personal_edit.html.erb +31 -0
  65. data/base/app/views/profiles/_profile_edit.html.erb +7 -0
  66. data/base/app/views/profiles/_tags.html.erb +1 -4
  67. data/base/app/views/profiles/_tags_edit.html.erb +4 -0
  68. data/base/app/views/profiles/edit.html.erb +24 -0
  69. data/base/app/views/settings/_notifications.html.erb +12 -4
  70. data/base/app/views/users/show.html.erb +5 -5
  71. data/base/config/locales/de.yml +654 -0
  72. data/base/config/locales/en.yml +20 -9
  73. data/base/config/locales/es.yml +151 -140
  74. data/base/config/locales/fr.yml +656 -0
  75. data/base/config/locales/hu.yml +653 -0
  76. data/base/config/locales/nl.yml +656 -0
  77. data/base/config/locales/pt.yml +250 -239
  78. data/base/config/locales/rails.de.yml +203 -0
  79. data/base/config/locales/rails.fr.yml +222 -0
  80. data/base/config/locales/rails.hu.yml +199 -0
  81. data/base/config/locales/rails.nl.yml +199 -0
  82. data/base/config/locales/zh.yml +214 -202
  83. data/base/config/routes.rb +22 -30
  84. data/base/db/migrate/20130708152633_set_group_owners.rb +19 -0
  85. data/base/db/migrate/20130723133530_actor_notification_settings.rb +10 -0
  86. data/base/lib/generators/social_stream/base/templates/initializer.rb +13 -7
  87. data/base/lib/rails/social_stream.rb +2 -0
  88. data/base/lib/social_stream/base.rb +27 -7
  89. data/base/lib/social_stream/base/ability.rb +3 -5
  90. data/base/lib/social_stream/base/autoload.rb +1 -0
  91. data/base/lib/social_stream/base/version.rb +1 -1
  92. data/base/lib/social_stream/controllers/authorship.rb +18 -0
  93. data/base/lib/social_stream/controllers/helpers.rb +18 -4
  94. data/base/lib/social_stream/controllers/objects.rb +2 -8
  95. data/base/lib/social_stream/controllers/subjects.rb +9 -2
  96. data/base/lib/social_stream/models/supertype.rb +2 -0
  97. data/base/lib/social_stream/population/activity_object.rb +6 -8
  98. data/base/lib/social_stream/routing/mapper.rb +52 -0
  99. data/base/social_stream-base.gemspec +4 -7
  100. data/base/spec/controllers/groups_controller_spec.rb +19 -8
  101. data/base/spec/controllers/posts_controller_spec.rb +114 -147
  102. data/base/spec/models/post_authorization_spec.rb +190 -204
  103. data/base/spec/models/post_spec.rb +17 -63
  104. data/base/vendor/assets/javascripts/bootstrap-multiselect.js +434 -127
  105. data/documents/Rakefile +1 -6
  106. data/documents/config/locales/de.yml +93 -0
  107. data/documents/config/locales/es.yml +2 -2
  108. data/documents/config/locales/fr.yml +93 -0
  109. data/documents/config/locales/hu.yml +93 -0
  110. data/documents/config/locales/nl.yml +93 -0
  111. data/documents/config/locales/zh.yml +4 -4
  112. data/documents/config/routes.rb +7 -9
  113. data/documents/lib/social_stream/documents/version.rb +1 -1
  114. data/documents/social_stream-documents.gemspec +4 -4
  115. data/events/Rakefile +1 -6
  116. data/events/config/locales/es.yml +3 -3
  117. data/events/config/locales/zh.yml +3 -3
  118. data/events/lib/social_stream/events/models/actor.rb +2 -1
  119. data/events/lib/social_stream/events/version.rb +1 -1
  120. data/events/social_stream-events.gemspec +1 -1
  121. data/lib/generators/social_stream/install_generator.rb +1 -0
  122. data/lib/social_stream.rb +1 -0
  123. data/lib/social_stream/version.rb +1 -1
  124. data/lib/tasks/i18n.rake +22 -2
  125. data/linkser/Rakefile +1 -6
  126. data/linkser/config/locales/de.yml +17 -0
  127. data/linkser/config/locales/es.yml +2 -2
  128. data/linkser/config/locales/fr.yml +17 -0
  129. data/linkser/config/locales/hu.yml +17 -0
  130. data/linkser/config/locales/nl.yml +17 -0
  131. data/linkser/config/locales/zh.yml +2 -2
  132. data/linkser/lib/social_stream/linkser/version.rb +1 -1
  133. data/linkser/social_stream-linkser.gemspec +1 -1
  134. data/oauth2_server/Rakefile +1 -6
  135. data/oauth2_server/app/assets/images/step_1.png +0 -0
  136. data/oauth2_server/app/assets/images/step_2.png +0 -0
  137. data/oauth2_server/app/assets/images/step_3.png +0 -0
  138. data/oauth2_server/app/assets/javascripts/social_stream/site_client.js +27 -0
  139. data/oauth2_server/app/assets/stylesheets/social_stream/oauth2_server/applications/layout/_applications-oauth2server.css.sass +0 -5
  140. data/oauth2_server/app/assets/stylesheets/social_stream/oauth2_server/create/layout/_create-oauth2server.css.sass +3 -5
  141. data/oauth2_server/app/assets/stylesheets/social_stream/oauth2_server/show/layout/_show-oauth2server.css.sass +8 -6
  142. data/oauth2_server/app/controllers/site/clients_controller.rb +17 -41
  143. data/oauth2_server/app/decorators/social_stream/base/relation_decorator.rb +2 -0
  144. data/oauth2_server/app/decorators/social_stream/base/user_decorator.rb +1 -20
  145. data/oauth2_server/app/models/relation/manager.rb +1 -10
  146. data/oauth2_server/app/models/site/client.rb +4 -2
  147. data/oauth2_server/app/views/site/clients/_destroy.html.erb +11 -0
  148. data/oauth2_server/app/views/site/clients/_edit.html.erb +9 -2
  149. data/oauth2_server/app/views/site/clients/_edit_step_2.html.erb +6 -6
  150. data/oauth2_server/app/views/site/clients/_edit_step_3.html.erb +8 -6
  151. data/oauth2_server/app/views/site/clients/_form.html.erb +11 -11
  152. data/oauth2_server/app/views/site/clients/_list.html.erb +23 -11
  153. data/oauth2_server/app/views/site/clients/edit.html.erb +1 -1
  154. data/oauth2_server/app/views/site/clients/index.html.erb +9 -40
  155. data/oauth2_server/app/views/site/clients/show.html.erb +66 -68
  156. data/oauth2_server/config/locales/en.yml +19 -0
  157. data/oauth2_server/config/locales/es.yml +23 -4
  158. data/oauth2_server/config/locales/zh.yml +32 -13
  159. data/oauth2_server/config/routes.rb +3 -1
  160. data/oauth2_server/lib/social_stream/oauth2_server.rb +4 -1
  161. data/oauth2_server/lib/social_stream/oauth2_server/ability.rb +1 -1
  162. data/oauth2_server/lib/social_stream/oauth2_server/models/user.rb +18 -0
  163. data/oauth2_server/lib/social_stream/oauth2_server/version.rb +1 -1
  164. data/oauth2_server/social_stream-oauth2_server.gemspec +1 -1
  165. data/oauth2_server/spec/controllers/site_clients_controller_authorization_spec.rb +7 -0
  166. data/ostatus/Rakefile +1 -6
  167. data/ostatus/config/locales/zh.yml +8 -8
  168. data/ostatus/lib/social_stream-ostatus.rb +3 -0
  169. data/ostatus/lib/social_stream/ostatus/version.rb +1 -1
  170. data/ostatus/social_stream-ostatus.gemspec +1 -1
  171. data/places/config/locales/es.yml +51 -51
  172. data/presence/config/locales/es.yml +48 -48
  173. data/presence/config/locales/zh.yml +48 -48
  174. data/presence/lib/social_stream/presence/version.rb +1 -1
  175. data/presence/social_stream-presence.gemspec +1 -1
  176. data/social_stream.gemspec +8 -7
  177. metadata +60 -29
  178. data/base/app/assets/javascripts/social_stream/follow.js +0 -28
  179. data/base/app/controllers/followers_controller.rb +0 -34
  180. data/base/app/helpers/followers_helper.rb +0 -5
  181. data/base/app/views/contacts/_link_follow.html.erb +0 -16
  182. data/base/app/views/followers/destroy.js.erb +0 -1
  183. data/base/app/views/followers/index.html.erb +0 -30
  184. data/base/app/views/followers/update.js.erb +0 -3
  185. data/base/app/views/frontpage/_characteristics.html.erb +0 -23
  186. data/base/lib/social_stream/routing/constraints/custom.rb +0 -11
  187. data/base/lib/social_stream/routing/constraints/follow.rb +0 -11
  188. data/base/spec/controllers/followers_controller_spec.rb +0 -37
@@ -1,28 +0,0 @@
1
- //= require social_stream/callback
2
-
3
- SocialStream.Follow = (function(SS, $, undefined){
4
- var callback = new SS.Callback();
5
-
6
- var initButtons = function(){
7
- $(".following-button").mouseenter(function(){
8
- $(this).hide();
9
- $(this).siblings(".unfollow-button").show();
10
- });
11
-
12
- $(".unfollow-button").mouseleave(function(){
13
- $(this).hide();
14
- $(this).siblings(".following-button").show();
15
- });
16
-
17
- $(".unfollow-button").hide();
18
- }
19
-
20
- callback.register('index', initButtons);
21
-
22
- $(function(){
23
- SocialStream.Follow.index();
24
- });
25
-
26
- return callback.extend({
27
- });
28
- })(SocialStream, jQuery);
@@ -1,34 +0,0 @@
1
- class FollowersController < ApplicationController
2
- before_filter :authenticate_user!, :except => :index
3
-
4
- respond_to :html, :js
5
-
6
- def index
7
- @followings = current_subject.following_actor_objects.includes(:actor)
8
- @followers = current_subject.followers
9
-
10
- respond_to do |format|
11
- format.html
12
- format.json { render :text => to_json(@followers) }
13
- end
14
- end
15
-
16
- def update
17
- current_contact.relation_ids = Array.wrap(Relation::Follow.instance.id)
18
-
19
- respond_to :js
20
- end
21
-
22
- def destroy
23
- current_contact.relation_ids = Array.new
24
-
25
- respond_to :js
26
- end
27
-
28
- private
29
-
30
- def current_contact
31
- @contact ||=
32
- current_subject.sent_contacts.find params[:id]
33
- end
34
- end
@@ -1,5 +0,0 @@
1
- module FollowersHelper
2
- def follow_link_class(contact)
3
- "follow-link-#{ dom_id contact }"
4
- end
5
- end
@@ -1,16 +0,0 @@
1
- <div class="<%= follow_link_class contact %>">
2
- <% if contact.sent? %>
3
- <div class="following-button">
4
- <%= t 'contact.following' %>
5
- </div>
6
- <div class="unfollow-button">
7
- <%= form_tag follower_path(contact), :method => :delete, :remote => true do |f| %>
8
- <%= submit_tag t('contact.unfollow') %>
9
- <% end %>
10
- </div>
11
- <% else %>
12
- <%= form_tag follower_path(contact), :method => :put, :remote => true do |f| %>
13
- <%= submit_tag t('contact.follow') %>
14
- <% end %>
15
- <% end %>
16
- </div>
@@ -1 +0,0 @@
1
- $(".<%= follow_link_class @contact %>").html("<%= escape_javascript render(:partial => "contacts/link_follow", :locals => { :contact => @contact.reload } )%>");
@@ -1,30 +0,0 @@
1
- <section id="followers">
2
- <%= render partial: 'toolbar/profile', locals: { :subject => current_subject } %>
3
-
4
- <section class="followers tabbable">
5
- <ul class="nav nav-tabs">
6
- <li class="active">
7
- <a data-toggle="tab" href="#following"><%=t('follow.followings')%></a>
8
- </li>
9
- <li class="">
10
- <a data-toggle="tab" href="#follower"><%=t('follow.followers')%></a>
11
- </li>
12
- </ul>
13
- <div class="tab-content">
14
- <div id="following" class="tab-pane active offset1">
15
- <%= render @followings.
16
- page(params[:page]).
17
- per(20).
18
- map { |f| current_subject.contact_to!(f) } %>
19
- </div>
20
- <div id="follower" class="tab-pane offset1 ">
21
- <%= render @followers.
22
- page(params[:page]).
23
- per(20).
24
- map { |f| current_subject.contact_to!(f) } %>
25
- </div>
26
- </div>
27
- </section>
28
-
29
- <%= render partial: 'sidebar/show' %>
30
- </section>
@@ -1,3 +0,0 @@
1
- $(".<%= follow_link_class @contact %>").html("<%= escape_javascript render(:partial => "contacts/link_follow", :locals => { :contact => @contact.reload } )%>");
2
-
3
- SocialStream.Follow.index();
@@ -1,23 +0,0 @@
1
- <article id="characteristics">
2
- <ul class="list">
3
- <li class="list participants">
4
- <%= t('frontpage.elements.participants') %>
5
- </li>
6
- <li class="list organizers">
7
- <%= t('frontpage.elements.organizers') %>
8
- </li>
9
- <li class="list groups">
10
- <%= t('frontpage.elements.groups') %>
11
- </li>
12
- <li class="list comments">
13
- <%= t('frontpage.elements.comments') %>
14
- </li>
15
- <li class="list tags">
16
- <%= t('frontpage.elements.tags') %>
17
- </li>
18
- <li class="list networks">
19
- <%= t('frontpage.elements.networks') %>
20
- </li>
21
- </ul>
22
- </article>
23
-
@@ -1,11 +0,0 @@
1
- module SocialStream
2
- module Routing
3
- module Constraints
4
- class Custom
5
- def matches?(request)
6
- SocialStream.relation_model == :custom
7
- end
8
- end
9
- end
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- module SocialStream
2
- module Routing
3
- module Constraints
4
- class Follow
5
- def matches?(request)
6
- SocialStream.relation_model == :follow
7
- end
8
- end
9
- end
10
- end
11
- end
@@ -1,37 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe FollowersController do
4
- include SocialStream::TestHelpers::Controllers
5
-
6
- render_views
7
-
8
- describe "with followers" do
9
- before do
10
- @user = Factory(:user)
11
-
12
- @follow = Factory(:follow, :contact => Factory(:contact, :sender => @user.actor))
13
-
14
- sign_in @user
15
- end
16
-
17
- it "should render index" do
18
- get :index
19
-
20
- response.should be_success
21
- end
22
-
23
- describe "with post" do
24
- before do
25
- Factory(:self_post, :author_id => @user.actor_id)
26
- end
27
-
28
- it "should render index" do
29
- get :index
30
-
31
- response.should be_success
32
- end
33
- end
34
- end
35
- end
36
-
37
-