social_stream-base 0.23.0 → 0.24.0

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/app/models/like.rb CHANGED
@@ -5,7 +5,8 @@ class Like
5
5
  class << self
6
6
  # Find the children activity of activity_id liked by subject
7
7
  def find(subject, object)
8
- like = new(object.liked_by(subject).first)
8
+ like = new(object.liked_by(subject).readonly(false).first)
9
+ return nil if like.object.nil?
9
10
  # Cache object to make it available before it is destroyed
10
11
  like.object
11
12
  like
@@ -18,7 +19,9 @@ class Like
18
19
  end
19
20
 
20
21
  def build(subject, user, object)
21
- new object.new_like(subject, user)
22
+ l = self.find(subject,object)
23
+ l = new object.new_like(subject, user) if l.nil?
24
+ l
22
25
  end
23
26
  end
24
27
 
@@ -34,7 +37,9 @@ class Like
34
37
  # The object that is liked. It can be an activity
35
38
  def object
36
39
  @object ||=
37
- if @like.is_root?
40
+ if @like.nil?
41
+ nil
42
+ elsif @like.is_root?
38
43
  obj = @like.direct_object
39
44
  obj = obj.subject if obj.is_a?(Actor)
40
45
  obj
@@ -66,6 +66,7 @@ en:
66
66
  atom_title: "Activity Stream from %{subject}"
67
67
  title:
68
68
  follow: "%{author} added %{activity_object} as contact"
69
+ unfollow: "%{author} removed %{activity_object} as contact"
69
70
  like: "%{author} likes %{activity_object}"
70
71
  make-friend: "%{author} also added %{activity_object} as contact"
71
72
  post: "%{author} posted %{activity_object}"
@@ -65,6 +65,7 @@ es:
65
65
  atom_title: "Actividades de %{subject}"
66
66
  title:
67
67
  follow: "%{author} añadió a %{activity_object} como contacto"
68
+ unfollow: "%{author} eliminó a %{activity_object} como contacto"
68
69
  like: "A %{author} le gusta %{activity_object}"
69
70
  make-friend: "%{author} también añadió a %{activity_object} como contacto"
70
71
  post: "%{author} publicó %{activity_object}"
@@ -11,6 +11,19 @@ class CreateSocialStream < ActiveRecord::Migration
11
11
  add_index "activities", ["activity_verb_id"], :name => "index_activities_on_activity_verb_id"
12
12
  add_index "activities", ["channel_id"], :name => "index_activities_on_channel_id"
13
13
 
14
+ create_table :activity_actions do |t|
15
+ t.references :actor
16
+ t.references :activity_object
17
+ t.boolean :follow, :default => false
18
+ t.boolean :author, :default => false
19
+ t.boolean :user_author, :default => false
20
+ t.boolean :owner, :default => false
21
+
22
+ t.timestamps
23
+ end
24
+ add_index :activity_actions, :actor_id
25
+ add_index :activity_actions, :activity_object_id
26
+
14
27
  create_table "activity_object_activities", :force => true do |t|
15
28
  t.integer "activity_id"
16
29
  t.integer "activity_object_id"
@@ -23,14 +36,25 @@ class CreateSocialStream < ActiveRecord::Migration
23
36
  add_index "activity_object_activities", ["activity_object_id"], :name => "index_activity_object_activities_on_activity_object_id"
24
37
 
25
38
  create_table "activity_objects", :force => true do |t|
39
+ t.string "title", :default => ""
40
+ t.text "description"
26
41
  t.datetime "created_at"
27
42
  t.datetime "updated_at"
28
- t.string "object_type", :limit => 45
29
- t.integer "like_count", :default => 0
30
- t.integer "channel_id"
43
+ t.string "object_type", :limit => 45
44
+ t.integer "like_count", :default => 0
45
+ t.integer "follower_count", :default => 0
31
46
  end
32
47
 
33
- add_index "activity_objects", ["channel_id"], :name => "index_activity_objects_on_channel_id"
48
+ create_table :activity_object_properties do |t|
49
+ t.integer :activity_object_id
50
+ t.integer :property_id
51
+ t.string :type
52
+
53
+ t.timestamp
54
+ end
55
+
56
+ add_index "activity_object_properties", "activity_object_id"
57
+ add_index "activity_object_properties", "property_id"
34
58
 
35
59
  create_table "activity_verbs", :force => true do |t|
36
60
  t.string "name", :limit => 45
@@ -47,7 +71,6 @@ class CreateSocialStream < ActiveRecord::Migration
47
71
  t.datetime "created_at"
48
72
  t.datetime "updated_at"
49
73
  t.integer "activity_object_id"
50
- t.integer "follower_count", :default => 0
51
74
  end
52
75
 
53
76
  add_index "actors", ["activity_object_id"], :name => "index_actors_on_activity_object_id"
@@ -97,7 +120,6 @@ class CreateSocialStream < ActiveRecord::Migration
97
120
 
98
121
  create_table "comments", :force => true do |t|
99
122
  t.integer "activity_object_id"
100
- t.text "text"
101
123
  t.datetime "created_at"
102
124
  t.datetime "updated_at"
103
125
  end
@@ -136,7 +158,6 @@ class CreateSocialStream < ActiveRecord::Migration
136
158
  t.integer "activity_object_id"
137
159
  t.datetime "created_at"
138
160
  t.datetime "updated_at"
139
- t.text "text"
140
161
  end
141
162
 
142
163
  add_index "posts", ["activity_object_id"], :name => "index_posts_on_activity_object_id"
@@ -223,10 +244,14 @@ class CreateSocialStream < ActiveRecord::Migration
223
244
  add_foreign_key "activities", "activity_verbs", :name => "index_activities_on_activity_verb_id"
224
245
  add_foreign_key "activities", "channels", :name => "index_activities_on_channel_id"
225
246
 
247
+ add_foreign_key "activity_actions", "actors", :name => "index_activity_actions_on_actor_id"
248
+ add_foreign_key "activity_actions", "activity_objects", :name => "index_activity_actions_on_activity_object_id"
249
+
226
250
  add_foreign_key "activity_object_activities", "activities", :name => "index_activity_object_activities_on_activity_id"
227
251
  add_foreign_key "activity_object_activities", "activity_objects", :name => "activity_object_activities_on_activity_object_id"
228
252
 
229
- add_foreign_key "activity_objects", "channels", :name => "index_activity_objects_on_channel_id"
253
+ add_foreign_key "activity_object_properties", "activity_objects", :name => "index_activity_object_properties_on_activity_object_id", :column => :activity_object_id
254
+ add_foreign_key "activity_object_properties", "activity_objects", :name => "index_activity_object_properties_on_property_id", :column => :property_id
230
255
 
231
256
  add_foreign_key "actors", "activity_objects", :name => "actors_on_activity_object_id"
232
257
 
@@ -13,7 +13,7 @@ class SocialStream::Base::InstallGenerator < Rails::Generators::Base #:nodoc:
13
13
  \n config.omniauth :facebook, \"129571360447856\",\"eef39dce5e20e76f77495c59623bdb38\"
14
14
  \n #config.omniauth :twitter, \"wgTxO0fTpjTeSnjKC9ZHA\",\"JepulVWwLcuAnGfWjwCu47yEP0TcJJfKtvISPBsilI\"
15
15
  \n config.token_authentication_key = :auth_token
16
- \n config.stateless_token = true",
16
+ \n config.skip_session_storage << :token_auth",
17
17
  :after => " # config.omniauth :github, 'APP_ID', 'APP_SECRET', :scope => 'user,public_repo'"
18
18
  end
19
19
 
@@ -1,5 +1,5 @@
1
1
  module SocialStream
2
2
  module Base
3
- VERSION = "0.23.0".freeze
3
+ VERSION = "0.24.0".freeze
4
4
  end
5
5
  end
@@ -8,9 +8,11 @@ module SocialStream
8
8
 
9
9
  before_filter :set_author_ids, :only => [ :new, :create, :update ]
10
10
 
11
- after_filter :increment_visit_count, :only => :show
11
+ before_filter :authenticate_user!, :only => [:new, :edit, :create, :update, :destroy]
12
12
 
13
- load_and_authorize_resource :except => [ :index, :search ]
13
+ after_filter :increment_visit_count, :only => :show
14
+
15
+ load_and_authorize_resource :except => [ :new, :index, :search ]
14
16
 
15
17
  respond_to :html, :js
16
18
 
@@ -0,0 +1,22 @@
1
+ namespace :social_stream do
2
+ namespace :avatars do
3
+ desc "Fix avatar's attachment path from paperclip < 3.0"
4
+ task :fix => :environment do
5
+ dir = "#{ Rails.root }/public/system/logos/"
6
+
7
+ Avatar.all.each do |a|
8
+ old_logo_dir = "#{ dir }#{ a.id }/"
9
+
10
+ old_logo_contents = Dir["#{ old_logo_dir }*"]
11
+
12
+ new_logo_dir = "#{ Rails.root }/public#{ a.logo.to_s.split('original').first }"
13
+
14
+ puts "Moving #{ old_logo_dir } to #{ new_logo_dir }"
15
+
16
+ FileUtils.mkdir_p new_logo_dir
17
+ FileUtils.mv old_logo_contents, new_logo_dir
18
+ end
19
+ end
20
+ end
21
+ end
22
+
@@ -26,17 +26,17 @@ Gem::Specification.new do |s|
26
26
  # SQL foreign keys
27
27
  s.add_runtime_dependency('foreigner', '~> 1.1.1')
28
28
  # Authentication
29
- s.add_runtime_dependency('devise', '~> 1.5.3')
29
+ s.add_runtime_dependency('devise', '~> 2.1.2')
30
30
  # CRUD controllers
31
31
  s.add_runtime_dependency('inherited_resources', '~> 1.3.0')
32
32
  # Slug generation
33
33
  s.add_runtime_dependency('stringex', '~> 1.3.0')
34
34
  # Avatar attachments
35
- s.add_runtime_dependency('avatars_for_rails', '~> 0.2.5')
35
+ s.add_runtime_dependency('avatars_for_rails', '~> 0.2.8')
36
36
  # jQuery
37
37
  s.add_runtime_dependency('jquery-rails', '>= 1.0.9')
38
38
  # Authorization
39
- s.add_runtime_dependency('cancan', '1.6.7')
39
+ s.add_runtime_dependency('cancan', '~> 1.6.7')
40
40
  # Pagination
41
41
  s.add_runtime_dependency('kaminari', '~> 0.13.0')
42
42
  # OAuth client
@@ -50,7 +50,7 @@ Gem::Specification.new do |s|
50
50
  # HTML Forms
51
51
  s.add_runtime_dependency('formtastic','>= 1.2.3')
52
52
  # Background jobs
53
- s.add_runtime_dependency('resque','~> 1.20.0')
53
+ s.add_runtime_dependency('resque','~> 1.23.0')
54
54
  # Modernizr.js javascript library
55
55
  s.add_runtime_dependency('modernizr-rails', '~> 2.0.6')
56
56
  # Sphinx search engine
@@ -74,7 +74,8 @@ describe Relation::CustomsController do
74
74
  begin
75
75
  post :create, :custom => { :name => 'Test', :actor_id => actor.id }
76
76
 
77
- assert false
77
+ assigns(:custom).should_not be_new_record
78
+ assigns(:custom).actor_id.should eq(@user.actor_id)
78
79
  rescue CanCan::AccessDenied
79
80
  assigns(:custom).should be_new_record
80
81
 
@@ -93,10 +93,6 @@ Devise.setup do |config|
93
93
  # If true, extends the user's remember period when remembered via cookie.
94
94
  # config.extend_remember_period = false
95
95
 
96
- # If true, uses the password salt as remember token. This should be turned
97
- # to false if you are not using database authenticatable.
98
- config.use_salt_as_remember_token = true
99
-
100
96
  # Options to be passed to the created cookie. For instance, you can set
101
97
  # :secure => true in order to force SSL only cookies.
102
98
  # config.cookie_options = {}
@@ -159,11 +155,7 @@ Devise.setup do |config|
159
155
  # ==> Configuration for :token_authenticatable
160
156
  # Defines name of the authentication token params key
161
157
  # config.token_authentication_key = :auth_token
162
-
163
- # If true, authentication through token does not store user in session and needs
164
- # to be supplied on each request. Useful if you are using the token as API token.
165
- # config.stateless_token = false
166
-
158
+
167
159
  # ==> Scopes configuration
168
160
  # Turn scoped views on. Before rendering "sessions/new", it will first check for
169
161
  # "users/sessions/new". It's turned off by default because it's slower if you
@@ -205,9 +197,11 @@ Devise.setup do |config|
205
197
  #config.omniauth :twitter, "wgTxO0fTpjTeSnjKC9ZHA","JepulVWwLcuAnGfWjwCu47yEP0TcJJfKtvISPBsilI"
206
198
 
207
199
  config.token_authentication_key = :auth_token
208
-
209
- config.stateless_token = true
210
200
 
201
+ #re state_less token removal
202
+ #https://github.com/plataformatec/devise/issues/1499
203
+ config.skip_session_storage << :token_auth
204
+
211
205
  # ==> Warden configuration
212
206
  # If you want to use other strategies, that are not supported by Devise, or
213
207
  # change the failure app, you can configure them inside the config.warden block.
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.23.0
4
+ version: 0.24.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-10-03 00:00:00.000000000 Z
13
+ date: 2012-10-23 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: deep_merge
@@ -99,7 +99,7 @@ dependencies:
99
99
  requirements:
100
100
  - - ~>
101
101
  - !ruby/object:Gem::Version
102
- version: 1.5.3
102
+ version: 2.1.2
103
103
  type: :runtime
104
104
  prerelease: false
105
105
  version_requirements: !ruby/object:Gem::Requirement
@@ -107,7 +107,7 @@ dependencies:
107
107
  requirements:
108
108
  - - ~>
109
109
  - !ruby/object:Gem::Version
110
- version: 1.5.3
110
+ version: 2.1.2
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: inherited_resources
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -147,7 +147,7 @@ dependencies:
147
147
  requirements:
148
148
  - - ~>
149
149
  - !ruby/object:Gem::Version
150
- version: 0.2.5
150
+ version: 0.2.8
151
151
  type: :runtime
152
152
  prerelease: false
153
153
  version_requirements: !ruby/object:Gem::Requirement
@@ -155,7 +155,7 @@ dependencies:
155
155
  requirements:
156
156
  - - ~>
157
157
  - !ruby/object:Gem::Version
158
- version: 0.2.5
158
+ version: 0.2.8
159
159
  - !ruby/object:Gem::Dependency
160
160
  name: jquery-rails
161
161
  requirement: !ruby/object:Gem::Requirement
@@ -177,7 +177,7 @@ dependencies:
177
177
  requirement: !ruby/object:Gem::Requirement
178
178
  none: false
179
179
  requirements:
180
- - - '='
180
+ - - ~>
181
181
  - !ruby/object:Gem::Version
182
182
  version: 1.6.7
183
183
  type: :runtime
@@ -185,7 +185,7 @@ dependencies:
185
185
  version_requirements: !ruby/object:Gem::Requirement
186
186
  none: false
187
187
  requirements:
188
- - - '='
188
+ - - ~>
189
189
  - !ruby/object:Gem::Version
190
190
  version: 1.6.7
191
191
  - !ruby/object:Gem::Dependency
@@ -307,7 +307,7 @@ dependencies:
307
307
  requirements:
308
308
  - - ~>
309
309
  - !ruby/object:Gem::Version
310
- version: 1.20.0
310
+ version: 1.23.0
311
311
  type: :runtime
312
312
  prerelease: false
313
313
  version_requirements: !ruby/object:Gem::Requirement
@@ -315,7 +315,7 @@ dependencies:
315
315
  requirements:
316
316
  - - ~>
317
317
  - !ruby/object:Gem::Version
318
- version: 1.20.0
318
+ version: 1.23.0
319
319
  - !ruby/object:Gem::Dependency
320
320
  name: modernizr-rails
321
321
  requirement: !ruby/object:Gem::Requirement
@@ -1061,13 +1061,7 @@ files:
1061
1061
  - config/locales/rails.es.yml
1062
1062
  - config/locales/rails.pt.yml
1063
1063
  - config/routes.rb
1064
- - db/migrate/20120111141717_create_social_stream.rb
1065
- - db/migrate/20120201185454_singleton_single_relations.rb
1066
- - db/migrate/20120208135718_group_title_and_description_in_activity_object.rb
1067
- - db/migrate/20120302215722_activity_object_properties.rb
1068
- - db/migrate/20120316093946_create_activity_actions.rb
1069
- - db/migrate/20120316113728_activity_action_follow.rb
1070
- - db/migrate/20120326083509_object_channels_to_actions.rb
1064
+ - db/migrate/20120326083509_create_social_stream.rb
1071
1065
  - db/migrate/20120403175913_create_activity_object_audiences.rb
1072
1066
  - db/migrate/20120411132550_add_visit_count_to_activity_object.rb
1073
1067
  - db/migrate/20120411151413_relation_public_permissions.rb
@@ -1149,6 +1143,7 @@ files:
1149
1143
  - lib/social_stream/views/settings/base.rb
1150
1144
  - lib/social_stream/views/sidebar/base.rb
1151
1145
  - lib/social_stream/views/toolbar/base.rb
1146
+ - lib/tasks/attachments.rake
1152
1147
  - lib/tasks/db/populate.rake
1153
1148
  - lib/tasks/workers.rake
1154
1149
  - lib/thinking-sphinx/social_stream.rb
@@ -1305,3 +1300,4 @@ signing_key:
1305
1300
  specification_version: 3
1306
1301
  summary: Basic features for Social Stream, the core for building social network websites
1307
1302
  test_files: []
1303
+ has_rdoc:
@@ -1,46 +0,0 @@
1
- class SingletonSingleRelations < ActiveRecord::Migration
2
- def up
3
- Tie.record_timestamps = false
4
- Audience.record_timestamps = false
5
-
6
- r_new = Relation::Public.instance
7
-
8
- Relation::Public.all.each do |r|
9
- next if r == r_new
10
-
11
- # Reassign r -> r_new
12
- r.ties.each do |t|
13
- t.update_column(:relation_id, r_new.id)
14
- end
15
-
16
- r.audiences.each do |a|
17
- a.update_column(:relation_id, r_new.id)
18
- end
19
-
20
- # Delete r
21
- r.delete
22
- end
23
-
24
- r_new = Relation::Reject.instance
25
-
26
- Relation::Reject.all.each do |r|
27
- next if r == r_new
28
-
29
- # Reassign r -> r_new
30
- r.ties.each do |t|
31
- t.update_column(:relation_id, r_new.id)
32
- end
33
-
34
- r.audiences.each do |a|
35
- a.update_column(:relation_id, r_new.id)
36
- end
37
-
38
- # Delete r
39
- r.delete
40
- end
41
- end
42
-
43
- def down
44
- raise ActiveRecord::IrreversibleMigration
45
- end
46
- end
@@ -1,54 +0,0 @@
1
- class GroupTitleAndDescriptionInActivityObject < ActiveRecord::Migration
2
- def up
3
- ao_ts = ActivityObject.record_timestamps
4
- ActivityObject.record_timestamps = false
5
-
6
- change_table :activity_objects do |t|
7
- t.string :title, :default => ""
8
- t.text :description
9
- end
10
-
11
- ActivityObject.reset_column_information
12
-
13
- # Fix 'comments' table
14
- c_ts = Comment.record_timestamps
15
- Comment.record_timestamps = false
16
-
17
- Comment.all.each do |c|
18
- # Remove comments that are not properly deleted
19
- # https://github.com/ging/social_stream/issues/213
20
- if c.activity_object.activities.blank?
21
- c.destroy
22
- next
23
- end
24
-
25
- c.activity_object.description = c.read_attribute(:text)
26
- c.save!
27
- end
28
- change_table :comments do |t|
29
- t.remove :text
30
- end
31
- Comment.reset_column_information
32
- Comment.record_timestamps = c_ts
33
-
34
- # Fix 'posts' table
35
- p_ts = Post.record_timestamps
36
- Post.record_timestamps = false
37
-
38
- Post.all.each do |p|
39
- p.activity_object.description = p.read_attribute(:text)
40
- p.save!
41
- end
42
- change_table :posts do |t|
43
- t.remove :text
44
- end
45
- Post.reset_column_information
46
- Post.record_timestamps = p_ts
47
-
48
- ActivityObject.record_timestamps = ao_ts
49
- end
50
-
51
- def down
52
- raise ActiveRecord::IrreversibleMigration # Due to trans-gem oddities
53
- end
54
- end
@@ -1,24 +0,0 @@
1
- class ActivityObjectProperties < ActiveRecord::Migration
2
- def up
3
- create_table :activity_object_properties do |t|
4
- t.integer :activity_object_id
5
- t.integer :property_id
6
- t.string :type
7
-
8
- t.timestamp
9
- end
10
-
11
- add_index "activity_object_properties", "activity_object_id"
12
- add_index "activity_object_properties", "property_id"
13
-
14
- add_foreign_key "activity_object_properties", "activity_objects", :name => "index_activity_object_properties_on_activity_object_id", :column => :activity_object_id
15
- add_foreign_key "activity_object_properties", "activity_objects", :name => "index_activity_object_properties_on_property_id", :column => :property_id
16
- end
17
-
18
- def down
19
- remove_foreign_key "activity_object_properties", :name => "index_activity_object_properties_on_activity_object_id"
20
- remove_foreign_key "activity_object_properties", :name => "index_activity_object_properties_on_property_id"
21
-
22
- drop_table :activity_object_properties
23
- end
24
- end
@@ -1,15 +0,0 @@
1
- class CreateActivityActions < ActiveRecord::Migration
2
- def change
3
- create_table :activity_actions do |t|
4
- t.references :actor
5
- t.references :activity_object
6
-
7
- t.timestamps
8
- end
9
- add_index :activity_actions, :actor_id
10
- add_index :activity_actions, :activity_object_id
11
-
12
- add_foreign_key "activity_actions", "actors", :name => "index_activity_actions_on_actor_id"
13
- add_foreign_key "activity_actions", "activity_objects", :name => "index_activity_actions_on_activity_object_id"
14
- end
15
- end
@@ -1,23 +0,0 @@
1
- class ActivityActionFollow < ActiveRecord::Migration
2
- def up
3
- add_column :activity_actions, :follow, :boolean, :default => false
4
- add_column :activity_objects, :follower_count, :integer, :default => 0
5
- remove_column :actors, :follower_count
6
-
7
- ActivityObject.reset_column_information
8
- Actor.reset_column_information
9
-
10
- Tie.
11
- joins(:relation).
12
- with_permissions('follow', nil).
13
- each do |t|
14
- t.set_follow_action
15
- end
16
- end
17
-
18
- def down
19
- remove_column :activity_actions, :follow
20
- remove_column :activity_objects, :follower_count
21
- add_column :actors, :follower_count, :integer, :default => 0
22
- end
23
- end
@@ -1,47 +0,0 @@
1
- class ObjectChannelsToActions < ActiveRecord::Migration
2
- class Channel < ActiveRecord::Base; end
3
-
4
- def up
5
- add_column :activity_actions, :author, :boolean, :default => false
6
- add_column :activity_actions, :user_author, :boolean, :default => false
7
- add_column :activity_actions, :owner, :boolean, :default => false
8
-
9
- ActivityAction.reset_column_information
10
- ActivityAction.record_timestamps = false
11
- ActivityObject.record_timestamps = false
12
-
13
- ActivityObject.all.each do |ao|
14
- channel = Channel.find ao.channel_id
15
-
16
- %w{ author user_author owner }.each do |role|
17
- next unless channel.__send__ "#{ role }_id"
18
-
19
- ao.__send__"#{ role }_id=", channel.__send__("#{ role }_id")
20
- end
21
-
22
- ao.received_actions.each do |a|
23
- a.created_at = a.updated_at = ao.created_at
24
- end
25
-
26
- ao.save!
27
- end
28
-
29
- remove_foreign_key :activity_objects, :name => "index_activity_objects_on_channel_id"
30
- remove_column :activity_objects, :channel_id
31
-
32
- ActivityObject.reset_column_information
33
-
34
- ActivityAction.record_timestamps = true
35
- ActivityObject.record_timestamps = true
36
- end
37
-
38
- def down
39
- remove_column :activity_actions, :author
40
- remove_column :activity_actions, :user_author
41
- remove_column :activity_actions, :owner
42
-
43
- add_column :activity_objects, :channel_id, :integer
44
- add_index :activity_objects, :channel_id
45
- add_foreign_key :activity_actions, :channel_id, :name => "index_activity_objects_on_channel_id"
46
- end
47
- end