mirror of
https://github.com/lunaisnotaboy/mastodon.git
synced 2024-12-27 15:46:55 +00:00
740f8a95a9
* Add consumable invites * Add UI for generating invite codes * Add tests * Display max uses and expiration in invites table, delete invite * Remove unused column and redundant validator - Default follows not used, probably bad idea - InviteCodeValidator is redundant because RegistrationsController checks invite code validity * Add admin setting to disable invites * Add admin UI for invites, configurable role for invite creation - Admin UI that lists everyone's invites, always available - Admin setting min_invite_role to control who can invite people - Non-admin invite UI only visible if users are allowed to * Do not remove invites from database, expire them instantly
16 lines
444 B
Ruby
16 lines
444 B
Ruby
class CreateInvites < ActiveRecord::Migration[5.1]
|
|
def change
|
|
create_table :invites do |t|
|
|
t.belongs_to :user, foreign_key: { on_delete: :cascade }
|
|
t.string :code, null: false, default: ''
|
|
t.datetime :expires_at, null: true, default: nil
|
|
t.integer :max_uses, null: true, default: nil
|
|
t.integer :uses, null: false, default: 0
|
|
|
|
t.timestamps
|
|
end
|
|
|
|
add_index :invites, :code, unique: true
|
|
end
|
|
end
|