social_stream 0.18.1 → 0.18.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,30 @@
1
1
  module NotificationsHelper
2
2
 
3
+ # An activity object title
4
+ def title_of(act_obj)
5
+ if act_obj.is_a? Comment
6
+ 'Re: ' + title_of(act_obj.parent_post)
7
+ elsif act_obj.is_a? Post and (not act_obj.text.nil?)
8
+ act_obj.text.truncate(30, :separator => ' ')
9
+ elsif act_obj.respond_to? :title and (not act_obj.title.nil?)
10
+ act_obj.title.truncate(30, :separator => ' ')
11
+ elsif act_obj.respond_to? :url and (not act_obj.url.nil?)
12
+ act_obj.url.truncate(30, :separator => ' ')
13
+ else t('notification.default')
14
+ end
15
+ end
16
+
17
+ # An activity object description
18
+ def description_of(act_obj)
19
+ if act_obj.respond_to? :text and (not act_obj.text.nil?)
20
+ sanitize(act_obj.text.truncate(100, :separator =>' '))
21
+ elsif act_obj.respond_to? :description and (not act_obj.description.nil?)
22
+ sanitize(act_obj.description.truncate(100, :separator =>' '))
23
+ else
24
+ t('notification.watch_it')
25
+ end
26
+ end
27
+
3
28
  # Set locale as per subject preference
4
29
  def locale_as(subject)
5
30
  if subject.respond_to? :language
@@ -11,6 +11,8 @@
11
11
  #
12
12
  # There are two types of wall, :home and :profile. Check {Actor#wall} for more information
13
13
  #
14
+ include NotificationsHelper
15
+
14
16
  class Activity < ActiveRecord::Base
15
17
  # See {SocialStream::Models::Channeled}
16
18
  channeled
@@ -343,32 +345,11 @@ class Activity < ActiveRecord::Base
343
345
  :who => I18n.t('notification.who.'+ receiver.subject.class.to_s.underscore,
344
346
  :name => receiver_name))
345
347
  when 'post'
346
- if direct_object.is_a? Comment
347
- I18n.t('notification.post.'+ receiver.subject.class.to_s.underscore,
348
- :sender => sender_name,
349
- :whose => I18n.t('notification.whose.'+ receiver.subject.class.to_s.underscore,
350
- :receiver => receiver_name),
351
- :title => if direct_object.parent_post.is_a? Post
352
- 'Re: ' + direct_object.parent_post.text.truncate(30, :separator => ' ')
353
- elsif direct_object.parent_post.respond_to? :title
354
- 'Re: ' + direct_object.parent_post.title.truncate(30, :separator => ' ')
355
- else t('notification.default')
356
- end)
357
- elsif direct_object.is_a? Post
358
- I18n.t('notification.post.'+ receiver.subject.class.to_s.underscore,
359
- :sender => sender_name,
360
- :whose => I18n.t('notification.whose.'+ receiver.subject.class.to_s.underscore,
361
- :receiver => receiver_name),
362
- :title => direct_object.text.truncate(30, :separator => ' '))
363
- elsif direct_object.respond_to? :title
364
- I18n.t('notification.post.'+ receiver.subject.class.to_s.underscore,
365
- :sender => sender_name,
366
- :whose => I18n.t('notification.whose.'+ receiver.subject.class.to_s.underscore,
367
- :receiver => receiver_name),
368
- :title => direct_object.title.truncate(30, :separator => ' '))
369
- else
370
- I18n.t('notification.default')
371
- end
348
+ I18n.t('notification.post.'+ receiver.subject.class.to_s.underscore,
349
+ :sender => sender_name,
350
+ :whose => I18n.t('notification.whose.'+ receiver.subject.class.to_s.underscore,
351
+ :receiver => receiver_name),
352
+ :title => title_of(direct_object))
372
353
  when 'update'
373
354
  I18n.t('notification.update.'+ receiver.subject.class.to_s.underscore,
374
355
  :sender => sender_name,
@@ -1,49 +1,14 @@
1
1
  <div class="subject">
2
- <% if activity.direct_object.is_a? Comment %>
3
- <%= raw t('notification.post.'+ activity.receiver.subject.class.to_s.underscore,
4
- :sender => link_to(truncate_name(activity.sender.name),
5
- polymorphic_url(activity.sender.subject)),
6
- :whose => t('notification.whose.'+ activity.receiver.subject.class.to_s.underscore,
7
- :receiver => truncate_name(activity.receiver.name)),
8
- :title => if activity.direct_object.parent_post.is_a? Post
9
- link_to(activity.direct_object.parent_post.text.truncate(30, :separator => ' '),
10
- polymorphic_url(activity.direct_object))
11
- elsif activity.direct_object.parent_post.respond_to? :title
12
- link_to(activity.direct_object.parent_post.title.truncate(30, :separator => ' '),
13
- polymorphic_url(activity.direct_object))
14
- else t('notification.default')
15
- end) %>
16
- <% elsif activity.direct_object.is_a? Post %>
17
- <%= raw t('notification.post.'+ activity.receiver.subject.class.to_s.underscore,
18
- :sender => link_to(truncate_name(activity.sender.name),
19
- polymorphic_url(activity.sender.subject)),
20
- :whose => t('notification.whose.'+ activity.receiver.subject.class.to_s.underscore,
21
- :receiver => truncate_name(activity.receiver.name)),
22
- :title => link_to(activity.direct_object.text.truncate(30, :separator => ' '),
23
- polymorphic_url(activity.direct_object))) %>
24
- <% elsif activity.direct_object.respond_to? :title %>
25
- <%= raw t('notification.post.'+ activity.receiver.subject.class.to_s.underscore,
26
- :sender => link_to(truncate_name(activity.sender.name),
27
- polymorphic_url(activity.sender.subject)),
28
- :whose => t('notification.whose.'+ activity.receiver.subject.class.to_s.underscore,
29
- :receiver => truncate_name(activity.receiver.name)),
30
- :title => link_to(activity.direct_object.title.truncate(30, :separator => ' '),
31
- polymorphic_url(activity.direct_object))) %>
32
- <% else %>
33
- <%= raw t('notification.default') %>
34
- <% end %>
2
+ <%= raw t('notification.post.'+ activity.receiver.subject.class.to_s.underscore,
3
+ :sender => link_to(truncate_name(activity.sender.name),
4
+ polymorphic_url(activity.sender.subject)),
5
+ :whose => t('notification.whose.'+ activity.receiver.subject.class.to_s.underscore,
6
+ :receiver => truncate_name(activity.receiver.name)),
7
+ :title => link_to(title_of(activity.direct_object),
8
+ polymorphic_url(activity.direct_object))) %>
35
9
  </div>
36
10
  <div class="briefing">
37
- <% if activity.direct_object.respond_to? :text %>
38
- "<%= link_to(sanitize(activity.direct_object.text.truncate(100, :separator =>' ')),
39
- polymorphic_url(activity.direct_object))%>"
40
- <% elsif activity.direct_object.respond_to? :description and not activity.direct_object.description.blank? %>
41
- "<%= link_to(sanitize(activity.direct_object.description.truncate(100, :separator =>' ')),
42
- polymorphic_url(activity.direct_object))%>"
43
- <% else%>
44
- <%= link_to(t('notification.watch_it'),
45
- polymorphic_url( activity.direct_object))%>
46
- <%end%>
11
+ "<%= link_to(description_of(activity.direct_object), polymorphic_url(activity.direct_object))%>"
47
12
  <% if SocialStream.activity_forms.include? :document and activity.direct_object.is_a? Document %>
48
13
 
49
14
  <% end%>
@@ -1,41 +1,12 @@
1
1
 
2
- <% if activity.direct_object.is_a? Comment %>
3
2
  <%= raw t('notification.post.'+ activity.receiver.subject.class.to_s.underscore,
4
3
  :sender => truncate_name(activity.sender.name),
5
4
  :whose => t('notification.whose.'+ activity.receiver.subject.class.to_s.underscore,
6
5
  :receiver => truncate_name(activity.receiver.name)),
7
- :title => if activity.direct_object.parent_post.is_a? Post
8
- activity.direct_object.parent_post.text.truncate(30, :separator => ' ')
9
- elsif activity.direct_object.parent_post.respond_to? :title
10
- activity.direct_object.parent_post.title.truncate(30, :separator => ' ')
11
- else t('notification.default')
12
- end) %>
13
- <% elsif activity.direct_object.is_a? Post %>
14
- <%= raw t('notification.post.'+ activity.receiver.subject.class.to_s.underscore,
15
- :sender => truncate_name(activity.sender.name),
16
- :whose => t('notification.whose.'+ activity.receiver.subject.class.to_s.underscore,
17
- :receiver => truncate_name(activity.receiver.name)),
18
- :title => activity.direct_object.text.truncate(30, :separator => ' ')) %>
19
- <% elsif activity.direct_object.respond_to? :title %>
20
- <%= raw t('notification.post.'+ activity.receiver.subject.class.to_s.underscore,
21
- :sender => truncate_name(activity.sender.name),
22
- :whose => t('notification.whose.'+ activity.receiver.subject.class.to_s.underscore,
23
- :receiver => truncate_name(activity.receiver.name)),
24
- :title => activity.direct_object.title.truncate(30, :separator => ' ')) %>
25
- <% else %>
26
- <%= raw t('notification.default') %>
27
- <% end %>
6
+ :title => title_of(activity.direct_object)) %>
28
7
 
29
-
30
- <% if activity.direct_object.respond_to? :text %>
31
- "<%= sanitize(activity.direct_object.text.truncate(100, :separator =>' '))%>"
32
- --><%= t('notification.all_text', :url => polymorphic_url(activity.direct_object))%>
33
- <% elsif activity.direct_object.respond_to? :description and not activity.direct_object.description.blank? %>
34
- "<%= sanitize(activity.direct_object.description.truncate(100, :separator =>' '))%>"
8
+ "<%= description_of(activity.direct_object) %>"
35
9
  --><%= t('notification.all_text', :url => polymorphic_url(activity.direct_object))%>
36
- <% else%>
37
- <%= t('notification.watch', :url => polymorphic_url(activity.direct_object))%>
38
- <% end%>
39
10
 
40
11
  <%= raw t('notification.look',
41
12
  :sender => truncate_name(activity.sender.name))%>: <%=polymorphic_url(activity.sender.subject)%>
@@ -1,5 +1,5 @@
1
1
  module SocialStream
2
2
  module Base
3
- VERSION = "0.13.1".freeze
3
+ VERSION = "0.13.2".freeze
4
4
  end
5
5
  end
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
16
16
  # Do not forget to require the file at lib/social_stream/base/dependencies !
17
17
  #
18
18
  # Rails
19
- s.add_runtime_dependency('rails', '>= 3.1.0')
19
+ s.add_runtime_dependency('rails', '~> 3.1.0')
20
20
  # Activity and Relation hierarchies
21
21
  s.add_runtime_dependency('ancestry', '~> 1.2.3')
22
22
  # SQL foreign keys
@@ -1,5 +1,5 @@
1
1
  module SocialStream
2
2
  module Documents
3
- VERSION = "0.8.1".freeze
3
+ VERSION = "0.8.2".freeze
4
4
  end
5
5
  end
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
12
12
  s.files = `git ls-files`.split("\n")
13
13
 
14
14
  # Gem dependencies
15
- s.add_runtime_dependency('social_stream-base', '~> 0.13.1')
15
+ s.add_runtime_dependency('social_stream-base', '~> 0.13.2')
16
16
  s.add_runtime_dependency('paperclip-ffmpeg', '~> 0.7.0')
17
17
  # Waiting for version > 2.4.5, which fixes:
18
18
  # https://github.com/thoughtbot/paperclip/issues/293
@@ -1,3 +1,3 @@
1
1
  module SocialStream
2
- VERSION = "0.18.1".freeze
2
+ VERSION = "0.18.2".freeze
3
3
  end
@@ -11,8 +11,8 @@ Gem::Specification.new do |s|
11
11
  s.files = `git ls-files`.split("\n")
12
12
 
13
13
  # Gem dependencies
14
- s.add_runtime_dependency('social_stream-base', '~> 0.13.1')
15
- s.add_runtime_dependency('social_stream-documents', '~> 0.8.1')
14
+ s.add_runtime_dependency('social_stream-base', '~> 0.13.2')
15
+ s.add_runtime_dependency('social_stream-documents', '~> 0.8.2')
16
16
  s.add_runtime_dependency('social_stream-events', '~> 0.5.0')
17
17
  s.add_runtime_dependency('social_stream-linkser', '~> 0.3.0')
18
18
  s.add_runtime_dependency('social_stream-presence', '~> 0.4.0')
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: social_stream
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.18.1
4
+ version: 0.18.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,33 +10,33 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-01-23 00:00:00.000000000Z
13
+ date: 2012-01-24 00:00:00.000000000Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: social_stream-base
17
- requirement: &84213310 !ruby/object:Gem::Requirement
17
+ requirement: &78562910 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ~>
21
21
  - !ruby/object:Gem::Version
22
- version: 0.13.1
22
+ version: 0.13.2
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *84213310
25
+ version_requirements: *78562910
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: social_stream-documents
28
- requirement: &84212550 !ruby/object:Gem::Requirement
28
+ requirement: &78562660 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ~>
32
32
  - !ruby/object:Gem::Version
33
- version: 0.8.1
33
+ version: 0.8.2
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *84212550
36
+ version_requirements: *78562660
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: social_stream-events
39
- requirement: &84210660 !ruby/object:Gem::Requirement
39
+ requirement: &78562430 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ~>
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: 0.5.0
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *84210660
47
+ version_requirements: *78562430
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: social_stream-linkser
50
- requirement: &84210210 !ruby/object:Gem::Requirement
50
+ requirement: &78562200 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ~>
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: 0.3.0
56
56
  type: :runtime
57
57
  prerelease: false
58
- version_requirements: *84210210
58
+ version_requirements: *78562200
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: social_stream-presence
61
- requirement: &84209880 !ruby/object:Gem::Requirement
61
+ requirement: &78561970 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ~>
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: 0.4.0
67
67
  type: :runtime
68
68
  prerelease: false
69
- version_requirements: *84209880
69
+ version_requirements: *78561970
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: capybara
72
- requirement: &84209470 !ruby/object:Gem::Requirement
72
+ requirement: &78561740 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ~>
@@ -77,10 +77,10 @@ dependencies:
77
77
  version: 0.3.9
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *84209470
80
+ version_requirements: *78561740
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: sqlite3
83
- requirement: &84209030 !ruby/object:Gem::Requirement
83
+ requirement: &78561540 !ruby/object:Gem::Requirement
84
84
  none: false
85
85
  requirements:
86
86
  - - ! '>='
@@ -88,10 +88,10 @@ dependencies:
88
88
  version: '0'
89
89
  type: :development
90
90
  prerelease: false
91
- version_requirements: *84209030
91
+ version_requirements: *78561540
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: rspec-rails
94
- requirement: &84208350 !ruby/object:Gem::Requirement
94
+ requirement: &78561250 !ruby/object:Gem::Requirement
95
95
  none: false
96
96
  requirements:
97
97
  - - ~>
@@ -99,10 +99,10 @@ dependencies:
99
99
  version: 2.5.0
100
100
  type: :development
101
101
  prerelease: false
102
- version_requirements: *84208350
102
+ version_requirements: *78561250
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: factory_girl
105
- requirement: &84207660 !ruby/object:Gem::Requirement
105
+ requirement: &78561000 !ruby/object:Gem::Requirement
106
106
  none: false
107
107
  requirements:
108
108
  - - ~>
@@ -110,10 +110,10 @@ dependencies:
110
110
  version: 1.3.2
111
111
  type: :development
112
112
  prerelease: false
113
- version_requirements: *84207660
113
+ version_requirements: *78561000
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: forgery
116
- requirement: &84206820 !ruby/object:Gem::Requirement
116
+ requirement: &78560770 !ruby/object:Gem::Requirement
117
117
  none: false
118
118
  requirements:
119
119
  - - ~>
@@ -121,10 +121,10 @@ dependencies:
121
121
  version: 0.4.2
122
122
  type: :development
123
123
  prerelease: false
124
- version_requirements: *84206820
124
+ version_requirements: *78560770
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: ci_reporter
127
- requirement: &84205720 !ruby/object:Gem::Requirement
127
+ requirement: &78560540 !ruby/object:Gem::Requirement
128
128
  none: false
129
129
  requirements:
130
130
  - - ~>
@@ -132,7 +132,7 @@ dependencies:
132
132
  version: 1.6.4
133
133
  type: :development
134
134
  prerelease: false
135
- version_requirements: *84205720
135
+ version_requirements: *78560540
136
136
  description: Social Stream is a Ruby on Rails engine for building social network websites.
137
137
  It supports contacts, posts, file uploads, private messages and many more.
138
138
  email: