mirror of
https://github.com/discourse/discourse.git
synced 2024-11-23 23:02:29 +08:00
df45e82377
* SECURITY: only allow picking of avatars created by self Also adds origin tracking to all uploads including de-duplicated uploads
23 lines
562 B
Ruby
23 lines
562 B
Ruby
class CreateUserUploads < ActiveRecord::Migration[5.2]
|
|
def up
|
|
create_table :user_uploads do |t|
|
|
t.integer :upload_id, null: false
|
|
t.integer :user_id, null: false
|
|
t.datetime :created_at, null: false
|
|
end
|
|
|
|
add_index :user_uploads, [:upload_id, :user_id], unique: true
|
|
|
|
execute <<~SQL
|
|
INSERT INTO user_uploads(upload_id, user_id, created_at)
|
|
SELECT id, user_id, COALESCE(created_at, current_timestamp)
|
|
FROM uploads
|
|
WHERE user_id IS NOT NULL
|
|
SQL
|
|
end
|
|
|
|
def down
|
|
drop_table :user_uploads
|
|
end
|
|
end
|