social_stream-base 0.10.9 → 0.10.10

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.
data/Gemfile CHANGED
@@ -4,6 +4,7 @@ source "http://rubygems.org"
4
4
  # use a local code of mailboxer or avatar_for_rails gems
5
5
  #
6
6
  # gem 'mailboxer', :path => '../mailboxer'
7
+ # gem 'social_cheesecake', :path => '../../SocialCheesecake/social_cheesecake'
7
8
  # gem 'avatars_for_rails', :path => '../avatars_for_rails'
8
9
 
9
10
  gemspec
@@ -0,0 +1,6 @@
1
+ window.requestAnimFrame = (function(callback) {
2
+ return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame ||
3
+ function(callback) {
4
+ window.setTimeout(callback, 1000 / 60);
5
+ };
6
+ })();
@@ -6,5 +6,6 @@
6
6
  //= require jquery.screw
7
7
  //
8
8
  //= require avatars_for_rails
9
+ //= require social_cheesecake
9
10
  //
10
11
  //= require_tree .
@@ -0,0 +1,55 @@
1
+ @import "colors";
2
+
3
+ #cheesecake {
4
+ position: relative;
5
+ padding: 20px;
6
+ }
7
+ #contacts_cheesecake {
8
+ width: 440px;
9
+ height: 440px;
10
+ padding: 0px;
11
+ float: left;
12
+ }
13
+ #contacts_filter {
14
+ width: 290px;
15
+ height: 64px;
16
+ position: relative;
17
+ float: left;
18
+ padding: 5px;
19
+ }
20
+
21
+ #cheesecake #contacts_filter #contacts_filter_input {
22
+ padding: 0 3px 0 22px;
23
+ background: url('btn/search_icon.png') 5px 50% no-repeat white;
24
+ font-size: 11px;
25
+ color: $main-color;
26
+ border: solid 1px $input-border-color;
27
+ height: 25px;
28
+ width: 200px;
29
+ margin-left: 26px;
30
+ margin-top: 18px;
31
+ }
32
+
33
+ #contacts_grid {
34
+ width: 300px;
35
+ height: 370px;
36
+ overflow: hidden;
37
+ position: relative;
38
+ float: left;
39
+ }
40
+ #contacts_grid .actor {
41
+ width: 64px;
42
+ height: 64px;
43
+ float: left;
44
+ margin: 5px;
45
+ }
46
+ #contacts_grid .actor.focused {
47
+ border: 2px solid #00F;
48
+ background-color: #006;
49
+ margin: 3px;
50
+ }
51
+ #contacts_grid .actor img {
52
+ width: 64px;
53
+ height: 64px;
54
+ }
55
+
@@ -0,0 +1,9 @@
1
+ class CheesecakeController < ApplicationController
2
+
3
+ before_filter :authenticate_user!
4
+
5
+ def index
6
+ @actors = current_subject.contact_actors(:direction => :sent)
7
+ end
8
+
9
+ end
data/app/models/actor.rb CHANGED
@@ -499,6 +499,16 @@ class Actor < ActiveRecord::Base
499
499
  slug
500
500
  end
501
501
 
502
+ # JSON compatible with SocialCheesecake
503
+ def cheesecake_json
504
+ {
505
+ :sectors =>
506
+ relation_customs.includes(:ties => :contact).map { |r|
507
+ r.to_cheesecake_hash
508
+ }
509
+ }.to_json
510
+ end
511
+
502
512
  private
503
513
 
504
514
  # After create callback
@@ -96,4 +96,17 @@ class Relation::Custom < Relation
96
96
  def stronger_or_equal
97
97
  path
98
98
  end
99
+
100
+ # JSON compatible with SocialCheesecake
101
+ def to_cheesecake_hash(options = {})
102
+ { :name => name }.tap do |hash|
103
+ if options[:subsector]
104
+ hash[:actors] = ties.map{ |t| [t.contact.receiver_id] }.uniq
105
+ else
106
+ hash[:subsectors] = ( weaker.present? ?
107
+ weaker.map{ |w| w.to_cheesecake_hash(:subsector => true) } :
108
+ Array.wrap(to_cheesecake_hash(:subsector => true)) )
109
+ end
110
+ end
111
+ end
99
112
  end
@@ -0,0 +1,4 @@
1
+ <%= div_for actor do %>
2
+ <%= image_tag(actor.logo.url , :size => "64x64", :alt => actor.name ) %>
3
+ <% end %>
4
+
@@ -0,0 +1,38 @@
1
+ <div id="cheesecake">
2
+ <div id="contacts_cheesecake"></div>
3
+ <div id="contacts_filter">
4
+ <%= text_field_tag :filter_query, nil,:autocomplete => :off, :id => :contacts_filter_input %>
5
+ </div>
6
+ <div id="contacts_grid">
7
+
8
+ <% @actors.each do |actor|%>
9
+ <%= render :partial => "actors/actor_cheesecake", :locals => {:actor => actor} %>
10
+ <% end %>
11
+ </div>
12
+ <br class="clearfloat">
13
+ <%= javascript_tag do %>
14
+ $(function(){
15
+ $("#center_body").css("width","782px");
16
+ $("#center_body").css("max-width","782px");
17
+ $("#content").css("width","782px");
18
+ $("#contacts_filter_input").Watermark("<%= escape_javascript(I18n.t('search.name')) %>");
19
+ });
20
+ window.onload = function() {
21
+ var cheesecakeData = {
22
+ container: {
23
+ id: "contacts_cheesecake",
24
+ width: 440,
25
+ height: 440
26
+ },
27
+ grid: {
28
+ id: "contacts_grid",
29
+ divIdPrefix: "actor_"
30
+ },
31
+ rMax : 200,
32
+ center: {x : 220, y : 220}
33
+ };
34
+ cheesecakeData.sectors = <%= raw(current_subject.cheesecake_json) %>.sectors;
35
+ var cheese = new socialCheesecake.Cheesecake(cheesecakeData);
36
+ }
37
+ <% end %>
38
+ </div>
@@ -0,0 +1,10 @@
1
+ <% content_for :title do%>
2
+ <%= t('contact.other')%>
3
+ <%end%>
4
+
5
+ <% toolbar :option => :contacts %>
6
+
7
+ <% location link_to(t("contact.other"),contacts_path) %>
8
+ <%= render :partial => "index"%>
9
+
10
+ <div class="space_center"></div>
data/config/routes.rb CHANGED
@@ -84,6 +84,8 @@ Rails.application.routes.draw do
84
84
 
85
85
  match 'search' => 'search#index', :as => :search
86
86
 
87
+ match 'cheesecake' => 'cheesecake#index', :as => :cheesecake
88
+
87
89
  match 'ties' => 'ties#index', :as => :ties
88
90
 
89
91
 
@@ -1,5 +1,5 @@
1
1
  module SocialStream
2
2
  module Base
3
- VERSION = "0.10.9".freeze
3
+ VERSION = "0.10.10".freeze
4
4
  end
5
5
  end
@@ -12,10 +12,18 @@ namespace :db do
12
12
 
13
13
  LOGOS_PATH = File.join(Rails.root, 'lib', 'logos')
14
14
  USERS = (ENV["USERS"] || 9).to_i
15
- GROUPS = (ENV["GROUPS"] || 10).to_i
15
+ GROUPS = (ENV["GROUPS"] || 10).to_i
16
+ CHEESECAKE_TESTING = (ENV["CHEESECAKE_TESTING"].present? || false)
17
+ if CHEESECAKE_TESTING
18
+ puts "Cheesecake Testing mode: ON"
19
+ end
16
20
  if ENV["HARDCORE"].present?
17
21
  USERS = 999
18
22
  GROUPS = 1000
23
+ puts "Hardcore mode: ON (May the Force be with you brave Padawan)"
24
+ if CHEESECAKE_TESTING
25
+ puts "WARNING: Hardcore and Cheesecake Modes activated. This situation is really slow. Please, avoid it."
26
+ end
19
27
  end
20
28
  if USERS < 9
21
29
  USERS = 9
@@ -110,105 +118,115 @@ namespace :db do
110
118
  # = Ties
111
119
  available_actors.each do |a|
112
120
  actors = available_actors.dup - Array(a)
113
- relations = a.relations
121
+ relations = a.relation_customs + Array.wrap(a.relation_reject)
114
122
  break if actors.size==0
115
123
  Forgery::Basic.number(:at_most => actors.size).times do
116
124
  actor = actors.delete_at((rand * actors.size).to_i)
117
125
  a.contact_to!(actor).relation_ids = Array(Forgery::Extensions::Array.new(relations).random.id)
118
126
  end
127
+ if CHEESECAKE_TESTING
128
+ actor = Actor.first
129
+ puts a.name + " connecting with " + actor.name
130
+ a.contact_to!(actor).relation_ids = Array(Forgery::Extensions::Array.new(relations).random.id)
131
+ end
119
132
  end
120
133
 
121
134
  ties_end = Time.now
122
135
  puts ' -> ' + (ties_end - ties_start).round(4).to_s + 's'
123
136
 
124
137
  # = Posts
125
-
126
138
  puts 'Post population'
127
- posts_start = Time.now
128
-
129
- SocialStream::Populate.power_law(Tie.all) do |t|
130
- updated = Time.at(rand(Time.now.to_i))
131
-
132
- author = t.sender
133
- owner = t.receiver
134
- user_author = ( t.sender.subject_type == "User" ? t.sender : t.sender.user_author )
135
-
136
- p = Post.create :text =>
137
- "This post should be for #{ t.relation.name } of #{ t.sender.name }.\n#{ Forgery::LoremIpsum.paragraph(:random => true) }",
138
- :created_at => Time.at(rand(updated.to_i)),
139
- :updated_at => updated,
140
- :author_id => author.id,
141
- :owner_id => owner.id,
142
- :user_author_id => user_author.id,
143
- :_relation_ids => Array(t.relation_id)
144
-
145
- p.post_activity.update_attributes(:created_at => p.created_at,
146
- :updated_at => p.updated_at)
139
+ unless CHEESECAKE_TESTING
140
+ posts_start = Time.now
141
+
142
+ SocialStream::Populate.power_law(Tie.all) do |t|
143
+ updated = Time.at(rand(Time.now.to_i))
144
+
145
+ author = t.sender
146
+ owner = t.receiver
147
+ user_author = ( t.sender.subject_type == "User" ? t.sender : t.sender.user_author )
148
+
149
+ p = Post.create :text =>
150
+ "This post sActorhould be for #{ t.relation.name } of #{ t.sender.name }.\n#{ Forgery::LoremIpsum.paragraph(:random => true) }",
151
+ :created_at => Time.at(rand(updated.to_i)),
152
+ :updated_at => updated,
153
+ :author_id => author.id,
154
+ :owner_id => owner.id,
155
+ :user_author_id => user_author.id,
156
+ :_relation_ids => Array(t.relation_id)
157
+
158
+ p.post_activity.update_attributes(:created_at => p.created_at,
159
+ :updated_at => p.updated_at)
160
+ end
161
+
162
+ posts_end = Time.now
163
+ puts ' -> ' + (posts_end - posts_start).round(4).to_s + 's'
164
+ else
165
+ puts ' -> Cheesecake Testing Mode. Avoiding Post Population.'
147
166
  end
148
167
 
149
- posts_end = Time.now
150
- puts ' -> ' + (posts_end - posts_start).round(4).to_s + 's'
151
-
168
+ # = Mailboxer
152
169
  puts 'Mailboxer population'
153
- mailboxer_start = Time.now
154
-
155
- # = Mailboxer
156
- available_actors = Actor.all
157
-
158
- available_actors.each do |a|
159
- actors = available_actors.dup - Array(a)
160
-
161
- mult_recp = actors.uniq
162
- if (demo = User.find_by_name('demo')) and !mult_recp.include? Actor.normalize(demo)
163
- mult_recp << Actor.normalize(demo)
164
- end
165
- actor = mult_recp[(rand * mult_recp.size).to_i]
166
- mult_recp.delete(actor)
167
- mail = actor.send_message(mult_recp, "Hello all, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}", Forgery::LoremIpsum.words(10,:random => true))
168
- actor = mult_recp[(rand * mult_recp.size).to_i]
169
- mail = actor.reply_to_all(mail, "Well, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
170
- actor = mult_recp[(rand * mult_recp.size).to_i]
171
- mail = actor.reply_to_all(mail, "Ok, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
172
- actor = mult_recp[(rand * mult_recp.size).to_i]
173
- mail = actor.reply_to_all(mail, "Pretty well, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
174
- actor = mult_recp[(rand * mult_recp.size).to_i]
175
- actor.reply_to_all(mail, "Finally, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
176
-
177
-
178
- if (demo = User.find_by_name('demo'))
179
- next if Actor.normalize(demo)==Actor.normalize(a)
180
- mail = a.send_message(demo, "Hello, #{demo.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}", Forgery::LoremIpsum.words(10,:random => true))
181
- if rand > 0.5
182
- mail = demo.reply_to_sender(mail, "Pretty well #{a.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
170
+ unless CHEESECAKE_TESTING
171
+ mailboxer_start = Time.now
172
+ available_actors = Actor.all
173
+
174
+ available_actors.each do |a|
175
+ actors = available_actors.dup - Array(a)
176
+
177
+ mult_recp = actors.uniq
178
+ if (demo = User.find_by_name('demo')) and !mult_recp.include? Actor.normalize(demo)
179
+ mult_recp << Actor.normalize(demo)
180
+ end
181
+ actor = mult_recp[(rand * mult_recp.size).to_i]
182
+ mult_recp.delete(actor)
183
+ mail = actor.send_message(mult_recp, "Hello all, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}", Forgery::LoremIpsum.words(10,:random => true))
184
+ actor = mult_recp[(rand * mult_recp.size).to_i]
185
+ mail = actor.reply_to_all(mail, "Well, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
186
+ actor = mult_recp[(rand * mult_recp.size).to_i]
187
+ mail = actor.reply_to_all(mail, "Ok, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
188
+ actor = mult_recp[(rand * mult_recp.size).to_i]
189
+ mail = actor.reply_to_all(mail, "Pretty well, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
190
+ actor = mult_recp[(rand * mult_recp.size).to_i]
191
+ actor.reply_to_all(mail, "Finally, I am #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
192
+
193
+
194
+ if (demo = User.find_by_name('demo'))
195
+ next if Actor.normalize(demo)==Actor.normalize(a)
196
+ mail = a.send_message(demo, "Hello, #{demo.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}", Forgery::LoremIpsum.words(10,:random => true))
183
197
  if rand > 0.5
184
- a.reply_to_sender(mail, "Ok #{demo.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
198
+ mail = demo.reply_to_sender(mail, "Pretty well #{a.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
199
+ if rand > 0.5
200
+ a.reply_to_sender(mail, "Ok #{demo.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
201
+ end
202
+ end
203
+ if rand > 0.75
204
+ mail.conversation.move_to_trash(demo)
185
205
  end
186
206
  end
187
- if rand > 0.75
188
- mail.conversation.move_to_trash(demo)
189
- end
190
- end
191
-
192
- Forgery::Basic.number(:at_most => actors.size).times do
193
- actor = actors.delete_at((rand * actors.size).to_i)
194
- next if Actor.normalize(actor)==Actor.normalize(a)
195
- mail = a.send_message(actor, "Hello, #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}", Forgery::LoremIpsum.words(10,:random => true))
196
- if rand > 0.5
197
- mail = actor.reply_to_sender(mail, "Pretty well #{a.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
207
+
208
+ Forgery::Basic.number(:at_most => actors.size).times do
209
+ actor = actors.delete_at((rand * actors.size).to_i)
210
+ next if Actor.normalize(actor)==Actor.normalize(a)
211
+ mail = a.send_message(actor, "Hello, #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}", Forgery::LoremIpsum.words(10,:random => true))
198
212
  if rand > 0.5
199
- a.reply_to_sender(mail, "Ok #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
213
+ mail = actor.reply_to_sender(mail, "Pretty well #{a.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
214
+ if rand > 0.5
215
+ a.reply_to_sender(mail, "Ok #{actor.name}. #{Forgery::LoremIpsum.sentences(2,:random => true)}")
216
+ end
217
+ end
218
+ if rand > 0.75
219
+ mail.conversation.move_to_trash(actor)
200
220
  end
201
- end
202
- if rand > 0.75
203
- mail.conversation.move_to_trash(actor)
204
221
  end
205
222
  end
223
+
224
+ mailboxer_end = Time.now
225
+ puts ' -> ' + (mailboxer_end - mailboxer_start).round(4).to_s + 's'
226
+ else
227
+ puts ' -> Cheesecake Testing Mode. Avoiding Mailboxer Population.'
206
228
  end
207
229
 
208
- mailboxer_end = Time.now
209
- puts ' -> ' + (mailboxer_end - mailboxer_start).round(4).to_s + 's'
210
-
211
-
212
230
 
213
231
  puts 'Avatar population'
214
232
  avatar_start = Time.now
@@ -42,7 +42,7 @@ Gem::Specification.new do |s|
42
42
  # HTML Forms
43
43
  s.add_runtime_dependency('formtastic','~> 1.2.3')
44
44
  # Simple navigation for menu
45
- s.add_runtime_dependency('simple-navigation')
45
+ s.add_runtime_dependency('simple-navigation', '~> 3.5.1')
46
46
  # Background jobs
47
47
  s.add_runtime_dependency('resque','~> 1.19.0')
48
48
  # Modernizr.js javascript library
@@ -53,6 +53,8 @@ Gem::Specification.new do |s|
53
53
  s.add_runtime_dependency('sass-rails', '~> 3.1.0')
54
54
  # Autolink text blocks
55
55
  s.add_runtime_dependency('rails_autolink', '~> 1.0.4')
56
+ # SocialCheesecake
57
+ s.add_runtime_dependency('social_cheesecake','~> 0.0.1')
56
58
 
57
59
  # Development gem dependencies
58
60
  #
@@ -48,4 +48,33 @@ describe Actor do
48
48
 
49
49
  Actor.find_by_id(a.id).should be_nil
50
50
  end
51
+
52
+ context "cheesecake" do
53
+ before do
54
+ @user = Factory(:user)
55
+ end
56
+
57
+ it "should build json" do
58
+ hash = {
59
+ :sectors => @user.relation_customs.map do |r|
60
+ { :name => r.name,
61
+ :subsectors => [ { :name => r.name, :actors => [] } ]
62
+ }
63
+ end
64
+ }
65
+
66
+ @user.cheesecake_json.should eq(hash.to_json)
67
+ end
68
+
69
+ context "with tie" do
70
+ before do
71
+ @tie =
72
+ Factory(:friend, :contact => Factory(:contact, :sender => @user.actor))
73
+ end
74
+
75
+ it "should render json" do
76
+ @user.cheesecake_json.should include(@tie.receiver.id.to_s)
77
+ end
78
+ end
79
+ end
51
80
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: social_stream-base
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.9
4
+ version: 0.10.10
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2011-12-16 00:00:00.000000000Z
13
+ date: 2011-12-19 00:00:00.000000000Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails
17
- requirement: &77731060 !ruby/object:Gem::Requirement
17
+ requirement: &76518980 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 3.1.0
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *77731060
25
+ version_requirements: *76518980
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: ancestry
28
- requirement: &77730810 !ruby/object:Gem::Requirement
28
+ requirement: &76518710 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ~>
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: 1.2.3
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *77730810
36
+ version_requirements: *76518710
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: foreigner
39
- requirement: &77730580 !ruby/object:Gem::Requirement
39
+ requirement: &76518460 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ~>
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: 1.1.1
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *77730580
47
+ version_requirements: *76518460
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: devise
50
- requirement: &77730350 !ruby/object:Gem::Requirement
50
+ requirement: &76518170 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ~>
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: 1.4.5
56
56
  type: :runtime
57
57
  prerelease: false
58
- version_requirements: *77730350
58
+ version_requirements: *76518170
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: inherited_resources
61
- requirement: &77730120 !ruby/object:Gem::Requirement
61
+ requirement: &76517910 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ~>
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: 1.3.0
67
67
  type: :runtime
68
68
  prerelease: false
69
- version_requirements: *77730120
69
+ version_requirements: *76517910
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: stringex
72
- requirement: &77729890 !ruby/object:Gem::Requirement
72
+ requirement: &76517650 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ~>
@@ -77,10 +77,10 @@ dependencies:
77
77
  version: 1.3.0
78
78
  type: :runtime
79
79
  prerelease: false
80
- version_requirements: *77729890
80
+ version_requirements: *76517650
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: avatars_for_rails
83
- requirement: &77729660 !ruby/object:Gem::Requirement
83
+ requirement: &76517360 !ruby/object:Gem::Requirement
84
84
  none: false
85
85
  requirements:
86
86
  - - ~>
@@ -88,10 +88,10 @@ dependencies:
88
88
  version: 0.2.0
89
89
  type: :runtime
90
90
  prerelease: false
91
- version_requirements: *77729660
91
+ version_requirements: *76517360
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: jquery-rails
94
- requirement: &77729430 !ruby/object:Gem::Requirement
94
+ requirement: &76517070 !ruby/object:Gem::Requirement
95
95
  none: false
96
96
  requirements:
97
97
  - - ~>
@@ -99,10 +99,10 @@ dependencies:
99
99
  version: 1.0.9
100
100
  type: :runtime
101
101
  prerelease: false
102
- version_requirements: *77729430
102
+ version_requirements: *76517070
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: cancan
105
- requirement: &77729200 !ruby/object:Gem::Requirement
105
+ requirement: &76516780 !ruby/object:Gem::Requirement
106
106
  none: false
107
107
  requirements:
108
108
  - - ~>
@@ -110,10 +110,10 @@ dependencies:
110
110
  version: 1.6.4
111
111
  type: :runtime
112
112
  prerelease: false
113
- version_requirements: *77729200
113
+ version_requirements: *76516780
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: kaminari
116
- requirement: &77728970 !ruby/object:Gem::Requirement
116
+ requirement: &76516520 !ruby/object:Gem::Requirement
117
117
  none: false
118
118
  requirements:
119
119
  - - ~>
@@ -121,10 +121,10 @@ dependencies:
121
121
  version: 0.12.4
122
122
  type: :runtime
123
123
  prerelease: false
124
- version_requirements: *77728970
124
+ version_requirements: *76516520
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: omniauth
127
- requirement: &77762940 !ruby/object:Gem::Requirement
127
+ requirement: &76516260 !ruby/object:Gem::Requirement
128
128
  none: false
129
129
  requirements:
130
130
  - - ~>
@@ -132,10 +132,10 @@ dependencies:
132
132
  version: 0.2.6
133
133
  type: :runtime
134
134
  prerelease: false
135
- version_requirements: *77762940
135
+ version_requirements: *76516260
136
136
  - !ruby/object:Gem::Dependency
137
137
  name: mailboxer
138
- requirement: &77762710 !ruby/object:Gem::Requirement
138
+ requirement: &76515970 !ruby/object:Gem::Requirement
139
139
  none: false
140
140
  requirements:
141
141
  - - ~>
@@ -143,10 +143,10 @@ dependencies:
143
143
  version: 0.5.4
144
144
  type: :runtime
145
145
  prerelease: false
146
- version_requirements: *77762710
146
+ version_requirements: *76515970
147
147
  - !ruby/object:Gem::Dependency
148
148
  name: acts-as-taggable-on
149
- requirement: &77762480 !ruby/object:Gem::Requirement
149
+ requirement: &76515690 !ruby/object:Gem::Requirement
150
150
  none: false
151
151
  requirements:
152
152
  - - ~>
@@ -154,10 +154,10 @@ dependencies:
154
154
  version: 2.0.6
155
155
  type: :runtime
156
156
  prerelease: false
157
- version_requirements: *77762480
157
+ version_requirements: *76515690
158
158
  - !ruby/object:Gem::Dependency
159
159
  name: formtastic
160
- requirement: &77762250 !ruby/object:Gem::Requirement
160
+ requirement: &76515400 !ruby/object:Gem::Requirement
161
161
  none: false
162
162
  requirements:
163
163
  - - ~>
@@ -165,21 +165,21 @@ dependencies:
165
165
  version: 1.2.3
166
166
  type: :runtime
167
167
  prerelease: false
168
- version_requirements: *77762250
168
+ version_requirements: *76515400
169
169
  - !ruby/object:Gem::Dependency
170
170
  name: simple-navigation
171
- requirement: &77762060 !ruby/object:Gem::Requirement
171
+ requirement: &76515170 !ruby/object:Gem::Requirement
172
172
  none: false
173
173
  requirements:
174
- - - ! '>='
174
+ - - ~>
175
175
  - !ruby/object:Gem::Version
176
- version: '0'
176
+ version: 3.5.1
177
177
  type: :runtime
178
178
  prerelease: false
179
- version_requirements: *77762060
179
+ version_requirements: *76515170
180
180
  - !ruby/object:Gem::Dependency
181
181
  name: resque
182
- requirement: &77761790 !ruby/object:Gem::Requirement
182
+ requirement: &76514880 !ruby/object:Gem::Requirement
183
183
  none: false
184
184
  requirements:
185
185
  - - ~>
@@ -187,10 +187,10 @@ dependencies:
187
187
  version: 1.19.0
188
188
  type: :runtime
189
189
  prerelease: false
190
- version_requirements: *77761790
190
+ version_requirements: *76514880
191
191
  - !ruby/object:Gem::Dependency
192
192
  name: modernizr-rails
193
- requirement: &77761540 !ruby/object:Gem::Requirement
193
+ requirement: &76514590 !ruby/object:Gem::Requirement
194
194
  none: false
195
195
  requirements:
196
196
  - - ~>
@@ -198,10 +198,10 @@ dependencies:
198
198
  version: 2.0.6
199
199
  type: :runtime
200
200
  prerelease: false
201
- version_requirements: *77761540
201
+ version_requirements: *76514590
202
202
  - !ruby/object:Gem::Dependency
203
203
  name: thinking-sphinx
204
- requirement: &77761310 !ruby/object:Gem::Requirement
204
+ requirement: &76514300 !ruby/object:Gem::Requirement
205
205
  none: false
206
206
  requirements:
207
207
  - - ~>
@@ -209,10 +209,10 @@ dependencies:
209
209
  version: 2.0.8
210
210
  type: :runtime
211
211
  prerelease: false
212
- version_requirements: *77761310
212
+ version_requirements: *76514300
213
213
  - !ruby/object:Gem::Dependency
214
214
  name: sass-rails
215
- requirement: &77761080 !ruby/object:Gem::Requirement
215
+ requirement: &76514030 !ruby/object:Gem::Requirement
216
216
  none: false
217
217
  requirements:
218
218
  - - ~>
@@ -220,10 +220,10 @@ dependencies:
220
220
  version: 3.1.0
221
221
  type: :runtime
222
222
  prerelease: false
223
- version_requirements: *77761080
223
+ version_requirements: *76514030
224
224
  - !ruby/object:Gem::Dependency
225
225
  name: rails_autolink
226
- requirement: &77760850 !ruby/object:Gem::Requirement
226
+ requirement: &76513780 !ruby/object:Gem::Requirement
227
227
  none: false
228
228
  requirements:
229
229
  - - ~>
@@ -231,10 +231,21 @@ dependencies:
231
231
  version: 1.0.4
232
232
  type: :runtime
233
233
  prerelease: false
234
- version_requirements: *77760850
234
+ version_requirements: *76513780
235
+ - !ruby/object:Gem::Dependency
236
+ name: social_cheesecake
237
+ requirement: &76513430 !ruby/object:Gem::Requirement
238
+ none: false
239
+ requirements:
240
+ - - ~>
241
+ - !ruby/object:Gem::Version
242
+ version: 0.0.1
243
+ type: :runtime
244
+ prerelease: false
245
+ version_requirements: *76513430
235
246
  - !ruby/object:Gem::Dependency
236
247
  name: capybara
237
- requirement: &77760620 !ruby/object:Gem::Requirement
248
+ requirement: &76513180 !ruby/object:Gem::Requirement
238
249
  none: false
239
250
  requirements:
240
251
  - - ~>
@@ -242,10 +253,10 @@ dependencies:
242
253
  version: 0.3.9
243
254
  type: :development
244
255
  prerelease: false
245
- version_requirements: *77760620
256
+ version_requirements: *76513180
246
257
  - !ruby/object:Gem::Dependency
247
258
  name: sqlite3-ruby
248
- requirement: &77760430 !ruby/object:Gem::Requirement
259
+ requirement: &76512980 !ruby/object:Gem::Requirement
249
260
  none: false
250
261
  requirements:
251
262
  - - ! '>='
@@ -253,10 +264,10 @@ dependencies:
253
264
  version: '0'
254
265
  type: :development
255
266
  prerelease: false
256
- version_requirements: *77760430
267
+ version_requirements: *76512980
257
268
  - !ruby/object:Gem::Dependency
258
269
  name: ruby-debug19
259
- requirement: &77760190 !ruby/object:Gem::Requirement
270
+ requirement: &76512720 !ruby/object:Gem::Requirement
260
271
  none: false
261
272
  requirements:
262
273
  - - ! '>='
@@ -264,10 +275,10 @@ dependencies:
264
275
  version: '0'
265
276
  type: :development
266
277
  prerelease: false
267
- version_requirements: *77760190
278
+ version_requirements: *76512720
268
279
  - !ruby/object:Gem::Dependency
269
280
  name: rspec-rails
270
- requirement: &77759940 !ruby/object:Gem::Requirement
281
+ requirement: &76491040 !ruby/object:Gem::Requirement
271
282
  none: false
272
283
  requirements:
273
284
  - - ~>
@@ -275,10 +286,10 @@ dependencies:
275
286
  version: 2.6.1
276
287
  type: :development
277
288
  prerelease: false
278
- version_requirements: *77759940
289
+ version_requirements: *76491040
279
290
  - !ruby/object:Gem::Dependency
280
291
  name: factory_girl
281
- requirement: &77759690 !ruby/object:Gem::Requirement
292
+ requirement: &76490790 !ruby/object:Gem::Requirement
282
293
  none: false
283
294
  requirements:
284
295
  - - ~>
@@ -286,10 +297,10 @@ dependencies:
286
297
  version: 1.3.2
287
298
  type: :development
288
299
  prerelease: false
289
- version_requirements: *77759690
300
+ version_requirements: *76490790
290
301
  - !ruby/object:Gem::Dependency
291
302
  name: forgery
292
- requirement: &77759460 !ruby/object:Gem::Requirement
303
+ requirement: &76490560 !ruby/object:Gem::Requirement
293
304
  none: false
294
305
  requirements:
295
306
  - - ~>
@@ -297,10 +308,10 @@ dependencies:
297
308
  version: 0.4.2
298
309
  type: :development
299
310
  prerelease: false
300
- version_requirements: *77759460
311
+ version_requirements: *76490560
301
312
  - !ruby/object:Gem::Dependency
302
313
  name: ci_reporter
303
- requirement: &77759230 !ruby/object:Gem::Requirement
314
+ requirement: &76490330 !ruby/object:Gem::Requirement
304
315
  none: false
305
316
  requirements:
306
317
  - - ~>
@@ -308,10 +319,10 @@ dependencies:
308
319
  version: 1.6.4
309
320
  type: :development
310
321
  prerelease: false
311
- version_requirements: *77759230
322
+ version_requirements: *76490330
312
323
  - !ruby/object:Gem::Dependency
313
324
  name: nifty-generators
314
- requirement: &77759000 !ruby/object:Gem::Requirement
325
+ requirement: &76490100 !ruby/object:Gem::Requirement
315
326
  none: false
316
327
  requirements:
317
328
  - - ~>
@@ -319,7 +330,7 @@ dependencies:
319
330
  version: 0.4.5
320
331
  type: :development
321
332
  prerelease: false
322
- version_requirements: *77759000
333
+ version_requirements: *76490100
323
334
  description: ! 'Social Stream is a Ruby on Rails engine providing your application
324
335
  with social networking features and activity streams.
325
336
 
@@ -489,6 +500,7 @@ files:
489
500
  - app/assets/images/tipsy.gif
490
501
  - app/assets/javascripts/activities.js.erb
491
502
  - app/assets/javascripts/activities_security_chosen-modified.jquery.js
503
+ - app/assets/javascripts/cheesecake.js
492
504
  - app/assets/javascripts/contacts.js
493
505
  - app/assets/javascripts/conversations.js
494
506
  - app/assets/javascripts/groups.js
@@ -511,6 +523,7 @@ files:
511
523
  - app/assets/stylesheets/_colors.scss
512
524
  - app/assets/stylesheets/activities.css.scss
513
525
  - app/assets/stylesheets/base.css.scss
526
+ - app/assets/stylesheets/cheesecake.css.scss
514
527
  - app/assets/stylesheets/contacts.css.scss
515
528
  - app/assets/stylesheets/conversations.css
516
529
  - app/assets/stylesheets/footer.css.scss
@@ -550,6 +563,7 @@ files:
550
563
  - app/controllers/activities_controller.rb
551
564
  - app/controllers/api_controller.rb
552
565
  - app/controllers/authentications_controller.rb
566
+ - app/controllers/cheesecake_controller.rb
553
567
  - app/controllers/comments_controller.rb
554
568
  - app/controllers/contacts_controller.rb
555
569
  - app/controllers/conversations_controller.rb
@@ -618,9 +632,12 @@ files:
618
632
  - app/views/activities/index.js.erb
619
633
  - app/views/activity_objects/_activity_object.html.erb
620
634
  - app/views/actors/_actor.html.erb
635
+ - app/views/actors/_actor_cheesecake.html.erb
621
636
  - app/views/api/activity_atom_feed.atom.builder
622
637
  - app/views/avatars/index.html.erb
623
638
  - app/views/avatars/update.js.erb
639
+ - app/views/cheesecake/_index.html.erb
640
+ - app/views/cheesecake/index.html.erb
624
641
  - app/views/comments/_comment.html.erb
625
642
  - app/views/comments/_new.html.erb
626
643
  - app/views/comments/create.js.erb