@@ -36,6 +36,13 @@ var CurrentSchemaStmts = []string{
3636 bot_is_joined BOOL NOT NULL DEFAULT false,
3737 FOREIGN KEY (permission_id) REFERENCES permission(id)
3838 )` ,
39+ `CREATE TABLE user_editor (
40+ id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
41+ user_id TEXT NOT NULL,
42+ editor_id TEXT NOT NULL,
43+ FOREIGN KEY (user_id) REFERENCES user(id) ON DELETE CASCADE,
44+ FOREIGN KEY (editor_id) REFERENCES user(id) ON DELETE CASCADE
45+ )` ,
3946 `CREATE TABLE permission (
4047 id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
4148 name TEXT NOT NULL,
@@ -170,12 +177,51 @@ var Migrations = DBMigrations{
170177 `INSERT INTO rpg_item (name, description) VALUES ('buttinho', 'The most widely used currency in the seven seas.')` ,
171178 }},
172179 {Version : 7 , Stmts : []string {
173- `CREATE TABLE app_data (
180+ "ALTER TABLE user_command_cooldown RENAME TO user_command_data" ,
181+ `
182+ CREATE TABLE app_data (
174183 id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
175184 migration_version INTEGER NOT NULL
176185 )` ,
177186 `INSERT INTO app_data (migration_version) VALUES (7)` ,
178187 }},
188+ {Version : 8 , Stmts : []string {
189+ `CREATE TABLE user_editor (
190+ id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
191+ user_id TEXT NOT NULL,
192+ editor_id TEXT NOT NULL,
193+ FOREIGN KEY (user_id) REFERENCES user(id) ON DELETE CASCADE,
194+ FOREIGN KEY (editor_id) REFERENCES user(id) ON DELETE CASCADE
195+ )` ,
196+
197+ "INSERT INTO command (name) VALUES ('editor'), ('remove'), ('yoink')" ,
198+ `INSERT INTO user_command (user_id, command_id, is_enabled)
199+ SELECT id, (
200+ SELECT c.id FROM command c WHERE c.name = 'editor'
201+ ), true FROM user` ,
202+ `INSERT INTO user_command_data (user_id, command_id)
203+ SELECT id, (
204+ SELECT c.id FROM command c WHERE c.name = 'editor'
205+ ) FROM user` ,
206+
207+ `INSERT INTO user_command (user_id, command_id, is_enabled)
208+ SELECT id, (
209+ SELECT c.id FROM command c WHERE c.name = 'remove'
210+ ), true FROM user` ,
211+ `INSERT INTO user_command_data (user_id, command_id)
212+ SELECT id, (
213+ SELECT c.id FROM command c WHERE c.name = 'remove'
214+ ) FROM user` ,
215+
216+ `INSERT INTO user_command (user_id, command_id, is_enabled)
217+ SELECT id, (
218+ SELECT c.id FROM command c WHERE c.name = 'yoink'
219+ ), true FROM user` ,
220+ `INSERT INTO user_command_data (user_id, command_id)
221+ SELECT id, (
222+ SELECT c.id FROM command c WHERE c.name = 'yoink'
223+ ) FROM user` ,
224+ }},
179225 }}
180226
181227func RunMigrations (tx * sql.Tx , migrations * DBMigrations , currentSchemaStmts []string ) error {
0 commit comments