Passed
Pull Request — master (#5720)
by
unknown
07:05
created

Version20240811221400::up()   F

Complexity

Conditions 12
Paths 2048

Size

Total Lines 583
Code Lines 357

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 12
eloc 357
c 1
b 0
f 0
nc 2048
nop 1
dl 0
loc 583
rs 2.2399

How to fix   Long Method    Complexity   

Long Method

Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.

For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.

Commonly applied refactorings include:

1
<?php
2
declare(strict_types=1);
3
4
namespace Chamilo\CoreBundle\Migrations\Schema\V200;
5
6
use Chamilo\CoreBundle\Migrations\AbstractMigrationChamilo;
7
use Doctrine\DBAL\Schema\Schema;
8
9
final class Version20240811221400 extends AbstractMigrationChamilo
10
{
11
12
    public function getDescription(): string
13
    {
14
        return 'Migration to update foreign key constraints, drop and create indexes, and alter table structures to ensure data consistency and prevent errors during execution.';
15
    }
16
17
    public function up(Schema $schema): void
18
    {
19
20
        $this->addSql('SET FOREIGN_KEY_CHECKS = 0;');
21
22
        // resource_node
23
        $this->addSql('ALTER TABLE resource_node DROP FOREIGN KEY IF EXISTS FK_8A5F48FF7EE0A59A');
24
        $this->addSql('ALTER TABLE resource_node ADD CONSTRAINT FK_8A5F48FF7EE0A59A FOREIGN KEY (resource_format_id) REFERENCES resource_format (id)');
25
26
        // user
27
        if ($schema->getTable('user')->hasColumn('language')) {
28
            $this->addSql('ALTER TABLE user DROP COLUMN language');
29
        }
30
31
        // settings
32
        if ($schema->getTable('settings')->hasColumn('title')) {
33
            $this->addSql('ALTER TABLE settings CHANGE title title LONGTEXT NOT NULL');
34
        }
35
        if ($schema->getTable('settings')->hasColumn('comment')) {
36
            $this->addSql('ALTER TABLE settings CHANGE comment comment LONGTEXT DEFAULT NULL');
37
        }
38
39
        // extra_field
40
        if ($schema->getTable('extra_field')->hasColumn('helper_text')) {
41
            $this->addSql('ALTER TABLE extra_field CHANGE helper_text helper_text LONGTEXT DEFAULT NULL');
42
        }
43
44
        // system_template
45
        if ($schema->getTable('system_template')->hasColumn('language')) {
46
            $this->addSql('ALTER TABLE system_template CHANGE language language VARCHAR(40) DEFAULT NULL');
47
        }
48
49
        // session_rel_course_rel_user
50
        $this->addSql('ALTER TABLE session_rel_course_rel_user DROP FOREIGN KEY IF EXISTS FK_720167EA76ED395');
51
        $this->addSql('ALTER TABLE session_rel_course_rel_user DROP FOREIGN KEY IF EXISTS FK_720167E613FECDF');
52
        $this->addSql('ALTER TABLE session_rel_course_rel_user ADD CONSTRAINT FK_720167EA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
53
        $this->addSql('ALTER TABLE session_rel_course_rel_user ADD CONSTRAINT FK_720167E613FECDF FOREIGN KEY (session_id) REFERENCES session (id) ON DELETE CASCADE');
54
55
        // ticket_category_rel_user
56
        $this->addSql('ALTER TABLE ticket_category_rel_user DROP FOREIGN KEY IF EXISTS FK_5B8A987A76ED395');
57
        $this->addSql('ALTER TABLE ticket_category_rel_user ADD CONSTRAINT FK_5B8A987A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
58
59
        // track_e_attempt
60
        $this->addSql('DROP INDEX IF EXISTS course ON track_e_attempt');
61
        $this->addSql('DROP INDEX IF EXISTS session_id ON track_e_attempt');
62
        $this->addSql('ALTER TABLE track_e_attempt DROP COLUMN IF EXISTS c_id');
63
        $this->addSql('ALTER TABLE track_e_attempt DROP COLUMN IF EXISTS session_id');
64
65
        // course_request
66
        $this->addSql('ALTER TABLE course_request DROP FOREIGN KEY IF EXISTS FK_33548A73A76ED395');
67
        $this->addSql('ALTER TABLE course_request ADD CONSTRAINT FK_33548A73A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
68
69
        // course_rel_user_catalogue
70
        $this->addSql('ALTER TABLE course_rel_user_catalogue DROP FOREIGN KEY IF EXISTS FK_79CA412EA76ED395');
71
        $this->addSql('DROP INDEX IF EXISTS course_rel_user_catalogue_user_id ON course_rel_user_catalogue');
72
        $this->addSql('CREATE INDEX IF NOT EXISTS course_rel_user_catalogue_user_id ON course_rel_user_catalogue (user_id)');
73
        $this->addSql('ALTER TABLE course_rel_user_catalogue ADD CONSTRAINT FK_79CA412EA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
74
75
        $this->addSql('ALTER TABLE course_rel_user_catalogue DROP FOREIGN KEY IF EXISTS FK_79CA412E91D79BD3');
76
        $this->addSql('DROP INDEX IF EXISTS course_rel_user_catalogue_c_id ON course_rel_user_catalogue');
77
        $this->addSql('CREATE INDEX IF NOT EXISTS course_rel_user_catalogue_c_id ON course_rel_user_catalogue (c_id)');
78
        $this->addSql('ALTER TABLE course_rel_user_catalogue ADD CONSTRAINT FK_79CA412E91D79BD3 FOREIGN KEY (c_id) REFERENCES course (id)');
79
80
        // ticket_ticket
81
        $this->addSql('ALTER TABLE ticket_ticket DROP FOREIGN KEY IF EXISTS FK_EB5B2A0D6285C987');
82
        $this->addSql('ALTER TABLE ticket_ticket DROP FOREIGN KEY IF EXISTS FK_EB5B2A0D6285C231');
83
        $this->addSql('ALTER TABLE ticket_ticket DROP FOREIGN KEY IF EXISTS FK_EDE2C768613FECDF');
84
        $this->addSql('ALTER TABLE ticket_ticket DROP FOREIGN KEY IF EXISTS FK_EDE2C768591CC992');
85
        $this->addSql('DROP INDEX IF EXISTS FK_EB5B2A0D6285C987 ON ticket_ticket');
86
        $this->addSql('DROP INDEX IF EXISTS FK_EB5B2A0D6285C231 ON ticket_ticket');
87
        $this->addSql('ALTER TABLE ticket_ticket ADD CONSTRAINT FK_EDE2C768613FECDF FOREIGN KEY (session_id) REFERENCES session (id) ON DELETE CASCADE');
88
        $this->addSql('ALTER TABLE ticket_ticket ADD CONSTRAINT FK_EDE2C768591CC992 FOREIGN KEY (course_id) REFERENCES course (id) ON DELETE CASCADE');
89
90
        // skill_rel_item_rel_user
91
        $this->addSql('ALTER TABLE skill_rel_item_rel_user DROP FOREIGN KEY IF EXISTS FK_D1133E0DA76ED395');
92
        $this->addSql('ALTER TABLE skill_rel_item_rel_user ADD CONSTRAINT FK_D1133E0DA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
93
94
        // usergroup_rel_question
95
        $this->addSql('ALTER TABLE usergroup_rel_question DROP COLUMN IF EXISTS c_id');
96
97
        // fos_group
98
        $this->addSql('DROP INDEX IF EXISTS UNIQ_4B019DDB5E237E06 ON fos_group');
99
100
        // skill_rel_user_comment
101
        $this->addSql('ALTER TABLE skill_rel_user_comment DROP FOREIGN KEY IF EXISTS FK_7AE9F6B63AF3B65B');
102
        $this->addSql('ALTER TABLE skill_rel_user_comment ADD CONSTRAINT FK_7AE9F6B63AF3B65B FOREIGN KEY (feedback_giver_id) REFERENCES user (id) ON DELETE CASCADE');
103
104
        // portfolio_rel_tag
105
        $this->addSql('DROP INDEX IF EXISTS IDX_DB734472BAD26311 ON portfolio_rel_tag');
106
        $this->addSql('DROP INDEX IF EXISTS IDX_DB73447291D79BD3 ON portfolio_rel_tag');
107
        $this->addSql('DROP INDEX IF EXISTS IDX_DB734472613FECDF ON portfolio_rel_tag');
108
        $this->addSql('ALTER TABLE portfolio_rel_tag ADD COLUMN IF NOT EXISTS tag INT NOT NULL');
109
        $this->addSql('ALTER TABLE portfolio_rel_tag ADD COLUMN IF NOT EXISTS course INT NOT NULL');
110
        $this->addSql('ALTER TABLE portfolio_rel_tag DROP COLUMN IF EXISTS tag_id');
111
        $this->addSql('ALTER TABLE portfolio_rel_tag DROP COLUMN IF EXISTS c_id');
112
        $this->addSql('ALTER TABLE portfolio_rel_tag CHANGE COLUMN IF EXISTS session_id session INT DEFAULT NULL');
113
        $this->addSql('ALTER TABLE track_e_attempt_qualify CHANGE marks marks DOUBLE PRECISION NOT NULL');
114
        $this->addSql('ALTER TABLE track_e_attempt_qualify DROP FOREIGN KEY IF EXISTS FK_B88BC9BCB5A18F57');
115
        $this->addSql('ALTER TABLE track_e_attempt_qualify ADD CONSTRAINT FK_B88BC9BCB5A18F57 FOREIGN KEY (exe_id) REFERENCES track_e_exercises (exe_id) ON DELETE CASCADE');
116
117
        // ticket_assigned_log
118
        $this->addSql('ALTER TABLE ticket_assigned_log DROP FOREIGN KEY IF EXISTS FK_54B65868700047D2');
119
        $this->addSql('ALTER TABLE ticket_assigned_log DROP FOREIGN KEY IF EXISTS FK_54B65868A76ED395');
120
        $this->addSql('ALTER TABLE ticket_assigned_log ADD CONSTRAINT FK_54B65868700047D2 FOREIGN KEY (ticket_id) REFERENCES ticket_ticket (id) ON DELETE CASCADE');
121
        $this->addSql('ALTER TABLE ticket_assigned_log ADD CONSTRAINT FK_54B65868A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
122
123
        // track_course_ranking
124
        $this->addSql('DELETE t1 FROM track_course_ranking t1 INNER JOIN track_course_ranking t2 WHERE t1.id > t2.id AND t1.c_id = t2.c_id');
125
        $this->addSql('ALTER TABLE track_course_ranking DROP FOREIGN KEY IF EXISTS FK_4A2D3A7E91D79BD3');
126
        $this->addSql('DROP INDEX IF EXISTS UNIQ_4A2D3A7E91D79BD3 ON track_course_ranking');
127
        $this->addSql('ALTER TABLE track_course_ranking ADD CONSTRAINT FK_4A2D3A7E91D79BD3 FOREIGN KEY (c_id) REFERENCES course (id) ON DELETE CASCADE');
128
        $this->addSql('CREATE UNIQUE INDEX UNIQ_4A2D3A7E91D79BD3 ON track_course_ranking (c_id)');
129
130
        // course_rel_user
131
        $this->addSql('ALTER TABLE course_rel_user DROP FOREIGN KEY IF EXISTS FK_92CFD9FEA76ED395');
132
        $this->addSql('ALTER TABLE course_rel_user ADD CONSTRAINT FK_92CFD9FEA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
133
134
        // extra_field_saved_search
135
        $this->addSql('ALTER TABLE extra_field_saved_search DROP FOREIGN KEY IF EXISTS FK_16ABE32AA76ED395');
136
        $this->addSql('ALTER TABLE extra_field_saved_search ADD CONSTRAINT FK_16ABE32AA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
137
138
        // portfolio
139
        $this->addSql('ALTER TABLE portfolio DROP FOREIGN KEY IF EXISTS FK_A9ED1062A76ED395');
140
        $this->addSql('ALTER TABLE portfolio ADD CONSTRAINT FK_A9ED1062A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
141
142
        // permission_rel_role
143
        $this->addSql('ALTER TABLE permission_rel_role DROP FOREIGN KEY IF EXISTS FK_43723A27FED90CCA');
144
        $this->addSql('DROP INDEX IF EXISTS idx_43723a27fed90cca ON permission_rel_role');
145
        $this->addSql('CREATE INDEX IF NOT EXISTS IDX_14B93D3DFED90CCA ON permission_rel_role (permission_id)');
146
        $this->addSql('ALTER TABLE permission_rel_role ADD CONSTRAINT FK_43723A27FED90CCA FOREIGN KEY (permission_id) REFERENCES permission (id)');
147
148
        // track_e_hotpotatoes
149
        $this->addSql('ALTER TABLE track_e_hotpotatoes ADD COLUMN IF NOT EXISTS score SMALLINT NOT NULL');
150
        $this->addSql('ALTER TABLE track_e_hotpotatoes ADD COLUMN IF NOT EXISTS max_score SMALLINT NOT NULL');
151
        $this->addSql('ALTER TABLE track_e_hotpotatoes DROP COLUMN IF EXISTS exe_result');
152
        $this->addSql('ALTER TABLE track_e_hotpotatoes DROP COLUMN IF EXISTS exe_weighting');
153
154
        // notification
155
        if ($schema->getTable('notification')->hasColumn('title')) {
156
            $this->addSql('ALTER TABLE notification CHANGE title title VARCHAR(255) DEFAULT NULL');
157
        }
158
        if ($schema->getTable('notification')->hasColumn('content')) {
159
            $this->addSql('ALTER TABLE notification CHANGE content content LONGTEXT DEFAULT NULL');
160
        }
161
162
        // skill_rel_user
163
        $this->addSql('ALTER TABLE skill_rel_user DROP FOREIGN KEY IF EXISTS FK_79D3D95A5585C142');
164
        $this->addSql('ALTER TABLE skill_rel_user DROP FOREIGN KEY IF EXISTS FK_79D3D95AA76ED395');
165
        $this->addSql('ALTER TABLE skill_rel_user DROP FOREIGN KEY IF EXISTS FK_79D3D95A591CC992');
166
        $this->addSql('ALTER TABLE skill_rel_user DROP FOREIGN KEY IF EXISTS FK_79D3D95A613FECDF');
167
        $this->addSql('ALTER TABLE skill_rel_user ADD CONSTRAINT FK_79D3D95A5585C142 FOREIGN KEY (skill_id) REFERENCES skill (id) ON DELETE CASCADE');
168
        $this->addSql('ALTER TABLE skill_rel_user ADD CONSTRAINT FK_79D3D95AA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
169
        $this->addSql('ALTER TABLE skill_rel_user ADD CONSTRAINT FK_79D3D95A591CC992 FOREIGN KEY (course_id) REFERENCES course (id) ON DELETE CASCADE');
170
        $this->addSql('ALTER TABLE skill_rel_user ADD CONSTRAINT FK_79D3D95A613FECDF FOREIGN KEY (session_id) REFERENCES session (id) ON DELETE CASCADE');
171
172
        // templates
173
        $this->addSql('ALTER TABLE templates DROP COLUMN IF EXISTS image');
174
175
        // ticket_message_attachments
176
        $this->addSql('ALTER TABLE ticket_message_attachments DROP FOREIGN KEY IF EXISTS FK_70BF9E26537A1329');
177
        $this->addSql('ALTER TABLE ticket_message_attachments DROP FOREIGN KEY IF EXISTS FK_70BF9E26700047D2');
178
        $this->addSql('ALTER TABLE ticket_message_attachments ADD CONSTRAINT FK_70BF9E26537A1329 FOREIGN KEY (message_id) REFERENCES ticket_message (id) ON DELETE CASCADE');
179
        $this->addSql('ALTER TABLE ticket_message_attachments ADD CONSTRAINT FK_70BF9E26700047D2 FOREIGN KEY (ticket_id) REFERENCES ticket_ticket (id) ON DELETE CASCADE');
180
181
        // session
182
        $this->addSql('ALTER TABLE session DROP FOREIGN KEY IF EXISTS FK_D044D5D4EF87E278');
183
        $this->addSql('ALTER TABLE session DROP FOREIGN KEY IF EXISTS FK_D044D5D4139DF194');
184
        $this->addSql('DROP INDEX IF EXISTS idx_id_session_admin_id ON session');
185
        $this->addSql('ALTER TABLE session DROP COLUMN IF EXISTS session_admin_id');
186
        $this->addSql('ALTER TABLE session DROP COLUMN IF EXISTS id_coach');
187
        $this->addSql('ALTER TABLE session ADD CONSTRAINT FK_D044D5D4139DF194 FOREIGN KEY (promotion_id) REFERENCES promotion (id) ON DELETE CASCADE');
188
189
        // permission
190
        $this->addSql('DROP INDEX IF EXISTS uniq_2dedcc6f989d9b62 ON permission');
191
        $this->addSql('CREATE UNIQUE INDEX IF NOT EXISTS UNIQ_E04992AA989D9B62 ON permission (slug)');
192
193
        // ticket_message
194
        $this->addSql('ALTER TABLE ticket_message DROP FOREIGN KEY IF EXISTS FK_BA71692D700047D2');
195
        $this->addSql('ALTER TABLE ticket_message ADD CONSTRAINT FK_BA71692D700047D2 FOREIGN KEY (ticket_id) REFERENCES ticket_ticket (id) ON DELETE CASCADE');
196
197
        // gradebook_category
198
        $this->addSql('ALTER TABLE gradebook_category DROP FOREIGN KEY IF EXISTS FK_96A4C705A76ED395');
199
        $this->addSql('ALTER TABLE gradebook_category ADD CONSTRAINT FK_96A4C705A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
200
201
        // session_rel_user
202
        $this->addSql('ALTER TABLE session_rel_user DROP FOREIGN KEY IF EXISTS FK_B0D7D4C0A76ED395');
203
        $this->addSql('ALTER TABLE session_rel_user ADD CONSTRAINT FK_B0D7D4C0A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
204
205
        // track_e_downloads
206
        $this->addSql('DROP INDEX IF EXISTS session_id ON track_e_downloads');
207
        $this->addSql('ALTER TABLE track_e_downloads DROP COLUMN IF EXISTS session_id');
208
209
        // admin
210
        $this->addSql('DROP INDEX IF EXISTS user_id ON admin');
211
212
        // user_rel_user
213
        if ($schema->getTable('user_rel_user')->hasColumn('last_edit')) {
214
            $this->addSql('ALTER TABLE user_rel_user DROP COLUMN last_edit');
215
        }
216
        if ($schema->getTable('user_rel_user')->hasColumn('created_at')) {
217
            $this->addSql('ALTER TABLE user_rel_user CHANGE created_at created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime)\'');
218
        }
219
        if ($schema->getTable('user_rel_user')->hasColumn('updated_at')) {
220
            $this->addSql('ALTER TABLE user_rel_user CHANGE updated_at updated_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime)\'');
221
        }
222
223
        // gradebook_comment
224
        $this->addSql('ALTER TABLE gradebook_comment DROP FOREIGN KEY IF EXISTS FK_C3B70763A76ED395');
225
        $this->addSql('ALTER TABLE gradebook_comment ADD CONSTRAINT FK_C3B70763A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
226
227
        // course
228
        if ($schema->getTable('course')->hasColumn('category_code')) {
229
            $this->addSql('ALTER TABLE course DROP COLUMN category_code');
230
        }
231
232
        // c_attendance
233
        $this->addSql('ALTER TABLE c_attendance DROP COLUMN IF EXISTS c_id');
234
        $this->addSql('ALTER TABLE c_attendance DROP COLUMN IF EXISTS id');
235
        $this->addSql('ALTER TABLE c_attendance DROP COLUMN IF EXISTS session_id');
236
237
        // c_forum_thread
238
        $this->addSql('ALTER TABLE c_forum_thread DROP FOREIGN KEY IF EXISTS FK_5DA7884CD4DC43B9');
239
        $this->addSql('DROP INDEX IF EXISTS idx_forum_thread_forum_id ON c_forum_thread');
240
        $this->addSql('ALTER TABLE c_forum_thread DROP COLUMN IF EXISTS c_id');
241
        $this->addSql('ALTER TABLE c_forum_thread DROP COLUMN IF EXISTS session_id');
242
        $this->addSql('ALTER TABLE c_forum_thread ADD CONSTRAINT FK_5DA7884CD4DC43B9 FOREIGN KEY (thread_poster_id) REFERENCES user (id) ON DELETE CASCADE');
243
244
        // c_calendar_event_attachment
245
        $this->addSql('ALTER TABLE c_calendar_event_attachment DROP COLUMN IF EXISTS id');
246
        $this->addSql('ALTER TABLE c_calendar_event_attachment DROP COLUMN IF EXISTS c_id');
247
        $this->addSql('ALTER TABLE c_calendar_event_attachment DROP COLUMN IF EXISTS path');
248
        $this->addSql('ALTER TABLE c_calendar_event_attachment DROP COLUMN IF EXISTS size');
249
250
        // c_lp
251
        $this->addSql('ALTER TABLE c_lp DROP COLUMN IF EXISTS c_id');
252
        $this->addSql('ALTER TABLE c_lp DROP COLUMN IF EXISTS id');
253
        $this->addSql('ALTER TABLE c_lp DROP COLUMN IF EXISTS preview_image');
254
        $this->addSql('ALTER TABLE c_lp DROP COLUMN IF EXISTS session_id');
255
256
        // c_student_publication_rel_document
257
        $this->addSql('ALTER TABLE c_student_publication_rel_document DROP COLUMN IF EXISTS c_id');
258
        $this->addSql('ALTER TABLE c_student_publication_rel_document DROP COLUMN IF EXISTS id');
259
260
        // c_student_publication_assignment
261
        $this->addSql('ALTER TABLE c_student_publication_assignment DROP COLUMN IF EXISTS c_id');
262
        $this->addSql('ALTER TABLE c_student_publication_assignment DROP COLUMN IF EXISTS id');
263
264
        // c_chat_connected
265
        $this->addSql('ALTER TABLE c_chat_connected DROP COLUMN IF EXISTS id');
266
267
        // c_quiz_answer
268
        $this->addSql('DROP INDEX IF EXISTS c_id ON c_quiz_answer');
269
        $this->addSql('ALTER TABLE c_quiz_answer DROP COLUMN IF EXISTS c_id');
270
271
        // c_lp_item_view
272
        $this->addSql('ALTER TABLE c_lp_item_view DROP COLUMN IF EXISTS c_id');
273
274
        // c_survey_answer
275
        $this->addSql('ALTER TABLE c_survey_answer DROP FOREIGN KEY IF EXISTS FK_8A897DD1E27F6BF');
276
        $this->addSql('ALTER TABLE c_survey_answer DROP FOREIGN KEY IF EXISTS FK_8A897DDB3FE509D');
277
        $this->addSql('ALTER TABLE c_survey_answer DROP COLUMN IF EXISTS c_id');
278
        $this->addSql('ALTER TABLE c_survey_answer DROP COLUMN IF EXISTS answer_id');
279
        $this->addSql('ALTER TABLE c_survey_answer ADD CONSTRAINT FK_8A897DD1E27F6BF FOREIGN KEY (question_id) REFERENCES c_survey_question (iid)');
280
        $this->addSql('ALTER TABLE c_survey_answer ADD CONSTRAINT FK_8A897DDB3FE509D FOREIGN KEY (survey_id) REFERENCES c_survey (iid) ON DELETE CASCADE');
281
282
        // c_lp_rel_user
283
        $this->addSql('ALTER TABLE c_lp_rel_user DROP FOREIGN KEY IF EXISTS FK_AD97516E61220EA6');
284
        $this->addSql('ALTER TABLE c_lp_rel_user DROP FOREIGN KEY IF EXISTS FK_AD97516EA76ED395');
285
        $this->addSql('ALTER TABLE c_lp_rel_user ADD CONSTRAINT FK_AD97516E61220EA6 FOREIGN KEY (creator_id) REFERENCES user (id) ON DELETE CASCADE');
286
        $this->addSql('ALTER TABLE c_lp_rel_user ADD CONSTRAINT FK_AD97516EA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
287
288
        // c_forum_mailcue
289
        $this->addSql('ALTER TABLE c_forum_mailcue DROP COLUMN IF EXISTS id');
290
291
        // c_attendance_result
292
        $this->addSql('ALTER TABLE c_attendance_result DROP FOREIGN KEY IF EXISTS FK_2C7640A76ED395');
293
        $this->addSql('ALTER TABLE c_attendance_result DROP COLUMN IF EXISTS id');
294
        $this->addSql('ALTER TABLE c_attendance_result DROP COLUMN IF EXISTS c_id');
295
        $this->addSql('ALTER TABLE c_attendance_result ADD CONSTRAINT FK_2C7640A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
296
297
        // c_forum_category
298
        $this->addSql('ALTER TABLE c_forum_category DROP COLUMN IF EXISTS c_id');
299
        $this->addSql('ALTER TABLE c_forum_category DROP COLUMN IF EXISTS session_id');
300
        $this->addSql('ALTER TABLE c_forum_category DROP COLUMN IF EXISTS cat_id');
301
302
        // c_thematic
303
        $this->addSql('ALTER TABLE c_thematic DROP COLUMN IF EXISTS c_id');
304
        $this->addSql('ALTER TABLE c_thematic DROP COLUMN IF EXISTS id');
305
        $this->addSql('ALTER TABLE c_thematic DROP COLUMN IF EXISTS session_id');
306
307
        // c_glossary
308
        $this->addSql('ALTER TABLE c_glossary DROP COLUMN IF EXISTS c_id');
309
        $this->addSql('ALTER TABLE c_glossary DROP COLUMN IF EXISTS glossary_id');
310
        $this->addSql('ALTER TABLE c_glossary DROP COLUMN IF EXISTS session_id');
311
312
        // c_link_category
313
        $this->addSql('ALTER TABLE c_link_category DROP COLUMN IF EXISTS c_id');
314
        $this->addSql('ALTER TABLE c_link_category DROP COLUMN IF EXISTS id');
315
        $this->addSql('ALTER TABLE c_link_category DROP COLUMN IF EXISTS display_order');
316
        $this->addSql('ALTER TABLE c_link_category DROP COLUMN IF EXISTS session_id');
317
318
        // c_announcement
319
        $this->addSql('ALTER TABLE c_announcement DROP COLUMN IF EXISTS id');
320
        $this->addSql('ALTER TABLE c_announcement DROP COLUMN IF EXISTS c_id');
321
        $this->addSql('ALTER TABLE c_announcement DROP COLUMN IF EXISTS session_id');
322
        $this->addSql('ALTER TABLE c_announcement CHANGE title title LONGTEXT NOT NULL');
323
324
        // c_calendar_event_repeat_not
325
        $this->addSql('ALTER TABLE c_calendar_event_repeat_not DROP COLUMN IF EXISTS c_id');
326
327
        // c_survey
328
        $this->addSql('ALTER TABLE c_survey DROP COLUMN IF EXISTS c_id');
329
        $this->addSql('ALTER TABLE c_survey DROP COLUMN IF EXISTS survey_id');
330
        $this->addSql('ALTER TABLE c_survey DROP COLUMN IF EXISTS author');
331
        $this->addSql('ALTER TABLE c_survey DROP COLUMN IF EXISTS session_id');
332
        $this->addSql('CREATE INDEX IF NOT EXISTS idx_survey_code ON c_survey (code)');
333
334
        // c_survey_question_option
335
        $this->addSql('ALTER TABLE c_survey_question_option DROP FOREIGN KEY IF EXISTS FK_C4B6F5F1E27F6BF');
336
        $this->addSql('DROP INDEX IF EXISTS fk_c4b6f5f1e27f6bf ON c_survey_question_option');
337
        $this->addSql('CREATE INDEX IF NOT EXISTS idx_survey_qo_qid ON c_survey_question_option (question_id)');
338
        $this->addSql('ALTER TABLE c_survey_question_option ADD CONSTRAINT FK_C4B6F5F1E27F6BF FOREIGN KEY (question_id) REFERENCES c_survey_question (iid) ON DELETE CASCADE');
339
340
        // c_attendance_calendar
341
        $this->addSql('ALTER TABLE c_attendance_calendar DROP COLUMN IF EXISTS id');
342
        $this->addSql('ALTER TABLE c_attendance_calendar DROP COLUMN IF EXISTS c_id');
343
        $this->addSql('ALTER TABLE c_attendance_calendar CHANGE blocked blocked TINYINT(1) NOT NULL');
344
345
        // c_thematic_plan
346
        $this->addSql('ALTER TABLE c_thematic_plan DROP COLUMN IF EXISTS c_id');
347
        $this->addSql('ALTER TABLE c_thematic_plan DROP COLUMN IF EXISTS id');
348
349
        // c_quiz_rel_question
350
        $this->addSql('ALTER TABLE c_quiz_rel_question DROP COLUMN IF EXISTS c_id');
351
352
        // c_course_setting
353
        $this->addSql('ALTER TABLE c_course_setting DROP COLUMN IF EXISTS id');
354
        $this->addSql('ALTER TABLE c_course_setting CHANGE value value LONGTEXT DEFAULT NULL');
355
356
        // c_group_info
357
        $this->addSql('ALTER TABLE c_group_info DROP COLUMN IF EXISTS id');
358
        $this->addSql('ALTER TABLE c_group_info DROP COLUMN IF EXISTS c_id');
359
        $this->addSql('ALTER TABLE c_group_info DROP COLUMN IF EXISTS secret_directory');
360
        $this->addSql('ALTER TABLE c_group_info DROP COLUMN IF EXISTS session_id');
361
362
        // c_group_rel_user
363
        $this->addSql('ALTER TABLE c_group_rel_user DROP FOREIGN KEY IF EXISTS FK_C5D3D49FA76ED395');
364
        $this->addSql('ALTER TABLE c_group_rel_user DROP COLUMN IF EXISTS id');
365
        $this->addSql('ALTER TABLE c_group_rel_user ADD CONSTRAINT FK_C5D3D49FA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
366
367
        // c_forum_forum
368
        $this->addSql('ALTER TABLE c_forum_forum DROP FOREIGN KEY IF EXISTS FK_47A9C9968DFD1EF');
369
        $this->addSql('ALTER TABLE c_forum_forum DROP COLUMN IF EXISTS c_id');
370
        $this->addSql('ALTER TABLE c_forum_forum DROP COLUMN IF EXISTS session_id');
371
        $this->addSql('DROP INDEX IF EXISTS fk_47a9c9968dfd1ef ON c_forum_forum');
372
        $this->addSql('CREATE INDEX IF NOT EXISTS IDX_47A9C9968DFD1EF ON c_forum_forum (lp_id)');
373
        $this->addSql('ALTER TABLE c_forum_forum ADD CONSTRAINT FK_47A9C9968DFD1EF FOREIGN KEY (lp_id) REFERENCES c_lp (iid) ON DELETE SET NULL');
374
375
        // c_wiki_discuss
376
        $this->addSql('ALTER TABLE c_wiki_discuss DROP COLUMN IF EXISTS id');
377
378
        // c_quiz_question_option
379
        $this->addSql('DROP INDEX IF EXISTS course ON c_quiz_question_option');
380
        $this->addSql('ALTER TABLE c_quiz_question_option DROP COLUMN IF EXISTS c_id');
381
        $this->addSql('ALTER TABLE c_quiz_question_option CHANGE question_id question_id INT DEFAULT NULL');
382
383
        // c_tool_intro
384
        $this->addSql('DROP INDEX IF EXISTS course ON c_tool_intro');
385
        $this->addSql('ALTER TABLE c_tool_intro DROP COLUMN IF EXISTS c_id');
386
        $this->addSql('ALTER TABLE c_tool_intro DROP COLUMN IF EXISTS id');
387
        $this->addSql('ALTER TABLE c_tool_intro DROP COLUMN IF EXISTS session_id');
388
389
        // c_forum_thread_qualify_log
390
        $this->addSql('ALTER TABLE c_forum_thread_qualify_log DROP COLUMN IF EXISTS id');
391
        $this->addSql('ALTER TABLE c_forum_thread_qualify_log CHANGE c_id c_id INT NOT NULL');
392
393
        // c_thematic_advance
394
        $this->addSql('ALTER TABLE c_thematic_advance DROP COLUMN IF EXISTS c_id');
395
        $this->addSql('ALTER TABLE c_thematic_advance DROP COLUMN IF EXISTS id');
396
397
        // c_thematic_advance
398
        $this->addSql('ALTER TABLE c_thematic_advance DROP FOREIGN KEY IF EXISTS FK_62798E97163DDA15');
399
        $this->addSql('ALTER TABLE c_thematic_advance ADD CONSTRAINT FK_62798E97163DDA15 FOREIGN KEY (attendance_id) REFERENCES c_attendance (iid) ON DELETE CASCADE');
400
401
        // c_student_publication_rel_user
402
        $this->addSql('ALTER TABLE c_student_publication_rel_user DROP COLUMN IF EXISTS c_id');
403
        $this->addSql('ALTER TABLE c_student_publication_rel_user DROP COLUMN IF EXISTS id');
404
405
        // c_group_category
406
        $this->addSql('ALTER TABLE c_group_category DROP COLUMN IF EXISTS c_id');
407
        $this->addSql('ALTER TABLE c_group_category DROP COLUMN IF EXISTS id');
408
        $this->addSql('ALTER TABLE c_group_category DROP COLUMN IF EXISTS display_order');
409
410
        // c_announcement_attachment
411
        $this->addSql('ALTER TABLE c_announcement_attachment DROP COLUMN IF EXISTS id');
412
        $this->addSql('ALTER TABLE c_announcement_attachment DROP COLUMN IF EXISTS c_id');
413
414
        // c_lp_category
415
        $this->addSql('ALTER TABLE c_lp_category DROP COLUMN IF EXISTS c_id');
416
        $this->addSql('ALTER TABLE c_lp_category DROP COLUMN IF EXISTS session_id');
417
418
        // c_calendar_event
419
        $this->addSql('ALTER TABLE c_calendar_event DROP FOREIGN KEY IF EXISTS FK_C_CALENDAR_EVENT_CAREER');
420
        $this->addSql('ALTER TABLE c_calendar_event DROP FOREIGN KEY IF EXISTS FK_C_CALENDAR_EVENT_PROMOTION');
421
        $this->addSql('ALTER TABLE c_calendar_event DROP COLUMN IF EXISTS id');
422
        $this->addSql('ALTER TABLE c_calendar_event DROP COLUMN IF EXISTS c_id');
423
        $this->addSql('ALTER TABLE c_calendar_event DROP COLUMN IF EXISTS session_id');
424
        $this->addSql('DROP INDEX IF EXISTS idx_c_calendar_event_career ON c_calendar_event');
425
        $this->addSql('CREATE INDEX IF NOT EXISTS IDX_A0622581B58CDA09 ON c_calendar_event (career_id)');
426
        $this->addSql('DROP INDEX IF EXISTS idx_c_calendar_event_promotion ON c_calendar_event');
427
        $this->addSql('CREATE INDEX IF NOT EXISTS IDX_A0622581139DF194 ON c_calendar_event (promotion_id)');
428
        $this->addSql('ALTER TABLE c_calendar_event ADD CONSTRAINT FK_C_CALENDAR_EVENT_CAREER FOREIGN KEY (career_id) REFERENCES career (id)');
429
        $this->addSql('ALTER TABLE c_calendar_event ADD CONSTRAINT FK_C_CALENDAR_EVENT_PROMOTION FOREIGN KEY (promotion_id) REFERENCES promotion (id)');
430
431
        // c_student_publication
432
        $this->addSql('ALTER TABLE c_student_publication DROP FOREIGN KEY IF EXISTS FK_5246F746A76ED395');
433
        $this->addSql('DROP INDEX IF EXISTS session_id ON c_student_publication');
434
        $this->addSql('ALTER TABLE c_student_publication DROP COLUMN IF EXISTS c_id');
435
        $this->addSql('ALTER TABLE c_student_publication DROP COLUMN IF EXISTS id');
436
        $this->addSql('ALTER TABLE c_student_publication DROP COLUMN IF EXISTS url');
437
        $this->addSql('ALTER TABLE c_student_publication DROP COLUMN IF EXISTS url_correction');
438
        $this->addSql('ALTER TABLE c_student_publication DROP COLUMN IF EXISTS title_correction');
439
        $this->addSql('ALTER TABLE c_student_publication DROP COLUMN IF EXISTS session_id');
440
        $this->addSql('ALTER TABLE c_student_publication ADD CONSTRAINT FK_5246F746A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
441
442
        // c_document
443
        $this->addSql('ALTER TABLE c_document DROP COLUMN IF EXISTS c_id');
444
        $this->addSql('ALTER TABLE c_document DROP COLUMN IF EXISTS path');
445
        $this->addSql('ALTER TABLE c_document DROP COLUMN IF EXISTS size');
446
        $this->addSql('ALTER TABLE c_document DROP COLUMN IF EXISTS session_id');
447
        $this->addSql('ALTER TABLE c_document CHANGE filetype filetype VARCHAR(15) NOT NULL');
448
449
        // c_survey_question
450
        $this->addSql('ALTER TABLE c_survey_question DROP COLUMN IF EXISTS c_id');
451
        $this->addSql('ALTER TABLE c_survey_question DROP COLUMN IF EXISTS question_id');
452
        $this->addSql('ALTER TABLE c_survey_question CHANGE survey_group_pri survey_group_pri INT NOT NULL');
453
454
        // c_quiz_rel_category
455
        $this->addSql('ALTER TABLE c_quiz_rel_category DROP COLUMN IF EXISTS c_id');
456
457
        // c_quiz_category
458
        $this->addSql('ALTER TABLE c_quiz_category DROP FOREIGN KEY IF EXISTS FK_B94C157E91D79BD3');
459
        $this->addSql('ALTER TABLE c_quiz_category DROP FOREIGN KEY IF EXISTS FK_B94C157E1BAD783F');
460
        $this->addSql('DROP INDEX IF EXISTS uniq_b94c157e1bad783f ON c_quiz_category');
461
        $this->addSql('CREATE UNIQUE INDEX IF NOT EXISTS UNIQ_2AF3F5101BAD783F ON c_quiz_category (resource_node_id)');
462
        $this->addSql('DROP INDEX IF EXISTS idx_b94c157e91d79bd3 ON c_quiz_category');
463
        $this->addSql('CREATE INDEX IF NOT EXISTS IDX_2AF3F51091D79BD3 ON c_quiz_category (c_id)');
464
        $this->addSql('ALTER TABLE c_quiz_category ADD CONSTRAINT FK_B94C157E91D79BD3 FOREIGN KEY (c_id) REFERENCES course (id) ON DELETE CASCADE');
465
        $this->addSql('ALTER TABLE c_quiz_category ADD CONSTRAINT FK_B94C157E1BAD783F FOREIGN KEY (resource_node_id) REFERENCES resource_node (id) ON DELETE CASCADE');
466
467
        // c_dropbox_file
468
        $this->addSql('ALTER TABLE c_dropbox_file DROP COLUMN IF EXISTS id');
469
470
        // c_wiki_mailcue
471
        $this->addSql('DROP INDEX IF EXISTS c_id ON c_wiki_mailcue');
472
        $this->addSql('ALTER TABLE c_wiki_mailcue DROP COLUMN IF EXISTS id');
473
        $this->addSql('CREATE INDEX IF NOT EXISTS c_id ON c_wiki_mailcue (c_id, iid)');
474
475
        // c_lp_category_rel_user
476
        $this->addSql('ALTER TABLE c_lp_category_rel_user DROP FOREIGN KEY IF EXISTS FK_61F0427A76ED395');
477
        $this->addSql('ALTER TABLE c_lp_category_rel_user DROP FOREIGN KEY IF EXISTS FK_61F042712469DE2');
478
479
        // c_lp_category_rel_user
480
        $this->addSql('ALTER TABLE c_lp_category_rel_user DROP FOREIGN KEY IF EXISTS FK_83D35829A76ED395');
481
        $this->addSql('ALTER TABLE c_lp_category_rel_user ADD CONSTRAINT FK_83D35829A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
482
        $this->addSql('DROP INDEX IF EXISTS idx_61f042712469de2 ON c_lp_category_rel_user');
483
        $this->addSql('CREATE INDEX IF NOT EXISTS IDX_83D3582912469DE2 ON c_lp_category_rel_user (category_id)');
484
        $this->addSql('DROP INDEX IF EXISTS idx_61f0427a76ed395 ON c_lp_category_rel_user');
485
        $this->addSql('CREATE INDEX IF NOT EXISTS IDX_83D35829A76ED395 ON c_lp_category_rel_user (user_id)');
486
        $this->addSql('ALTER TABLE c_lp_category_rel_user ADD CONSTRAINT FK_61F042712469DE2 FOREIGN KEY (category_id) REFERENCES c_lp_category (iid)');
487
        $this->addSql('ALTER TABLE c_lp_category_rel_user ADD CONSTRAINT FK_61F0427A76ED395 FOREIGN KEY (user_id) REFERENCES user (id)');
488
489
        // c_lp_view
490
        $this->addSql('ALTER TABLE c_lp_view DROP FOREIGN KEY IF EXISTS FK_2D2F4F7DA76ED395');
491
        $this->addSql('DROP INDEX IF EXISTS fk_2d2f4f7da76ed395 ON c_lp_view');
492
        $this->addSql('CREATE INDEX IF NOT EXISTS IDX_2D2F4F7DA76ED395 ON c_lp_view (user_id)');
493
        $this->addSql('ALTER TABLE c_lp_view ADD CONSTRAINT FK_2D2F4F7DA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
494
495
        // c_calendar_event_repeat
496
        $this->addSql('ALTER TABLE c_calendar_event_repeat DROP COLUMN IF EXISTS c_id');
497
498
        // c_attendance_calendar_rel_group
499
        $this->addSql('ALTER TABLE c_attendance_calendar_rel_group DROP COLUMN IF EXISTS id');
500
        $this->addSql('ALTER TABLE c_attendance_calendar_rel_group DROP COLUMN IF EXISTS c_id');
501
502
        // c_forum_attachment
503
        $this->addSql('ALTER TABLE c_forum_attachment DROP COLUMN IF EXISTS id');
504
        $this->addSql('ALTER TABLE c_forum_attachment CHANGE c_id c_id INT NOT NULL');
505
506
        // c_survey_invitation
507
        $this->addSql('ALTER TABLE c_survey_invitation DROP FOREIGN KEY IF EXISTS FK_D0BC7C2A76ED395');
508
        $this->addSql('ALTER TABLE c_survey_invitation DROP FOREIGN KEY IF EXISTS FK_D0BC7C2B3FE509D');
509
        $this->addSql('ALTER TABLE c_survey_invitation DROP COLUMN IF EXISTS survey_invitation_id');
510
        $this->addSql('ALTER TABLE c_survey_invitation DROP COLUMN IF EXISTS survey_code');
511
        $this->addSql('ALTER TABLE c_survey_invitation DROP COLUMN IF EXISTS user');
512
        $this->addSql('ALTER TABLE c_survey_invitation ADD CONSTRAINT FK_D0BC7C2A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE SET NULL');
513
        $this->addSql('ALTER TABLE c_survey_invitation ADD CONSTRAINT FK_D0BC7C2B3FE509D FOREIGN KEY (survey_id) REFERENCES c_survey (iid) ON DELETE SET NULL');
514
515
        // c_student_publication_comment
516
        $this->addSql('ALTER TABLE c_student_publication_comment DROP COLUMN IF EXISTS c_id');
517
        $this->addSql('ALTER TABLE c_student_publication_comment DROP COLUMN IF EXISTS id');
518
519
        // c_notebook
520
        $this->addSql('ALTER TABLE c_notebook DROP COLUMN IF EXISTS c_id');
521
        $this->addSql('ALTER TABLE c_notebook DROP COLUMN IF EXISTS course');
522
        $this->addSql('ALTER TABLE c_notebook DROP COLUMN IF EXISTS session_id');
523
524
        // c_forum_notification
525
        $this->addSql('ALTER TABLE c_forum_notification DROP COLUMN IF EXISTS id');
526
        $this->addSql('ALTER TABLE c_forum_notification CHANGE c_id c_id INT NOT NULL');
527
528
        // c_group_rel_tutor
529
        $this->addSql('ALTER TABLE c_group_rel_tutor DROP FOREIGN KEY IF EXISTS FK_F6FF71ABA76ED395');
530
        $this->addSql('ALTER TABLE c_group_rel_tutor DROP COLUMN IF EXISTS id');
531
        $this->addSql('ALTER TABLE c_group_rel_tutor ADD CONSTRAINT FK_F6FF71ABA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
532
533
        // c_forum_post
534
        $this->addSql('ALTER TABLE c_forum_post DROP FOREIGN KEY IF EXISTS FK_B5BEF5595BB66C05');
535
        $this->addSql('DROP INDEX IF EXISTS c_id_visible_post_date ON c_forum_post');
536
        $this->addSql('ALTER TABLE c_forum_post DROP COLUMN IF EXISTS c_id');
537
        $this->addSql('ALTER TABLE c_forum_post DROP COLUMN IF EXISTS post_id');
538
        $this->addSql('ALTER TABLE c_forum_post ADD CONSTRAINT FK_B5BEF5595BB66C05 FOREIGN KEY (poster_id) REFERENCES user (id) ON DELETE CASCADE');
539
540
        // c_attendance_sheet_log
541
        $this->addSql('ALTER TABLE c_attendance_sheet_log DROP COLUMN IF EXISTS id');
542
        $this->addSql('ALTER TABLE c_attendance_sheet_log DROP COLUMN IF EXISTS c_id');
543
544
        // c_wiki
545
        $this->addSql('ALTER TABLE c_wiki DROP COLUMN IF EXISTS id');
546
        $this->addSql('ALTER TABLE c_wiki CHANGE c_id c_id INT NOT NULL');
547
548
        // c_forum_thread_qualify
549
        $this->addSql('ALTER TABLE c_forum_thread_qualify DROP FOREIGN KEY IF EXISTS FK_715FC3A5E5E1B95C');
550
        $this->addSql('ALTER TABLE c_forum_thread_qualify DROP COLUMN IF EXISTS id');
551
        $this->addSql('ALTER TABLE c_forum_thread_qualify DROP COLUMN IF EXISTS session_id');
552
        $this->addSql('ALTER TABLE c_forum_thread_qualify CHANGE c_id c_id INT NOT NULL');
553
        $this->addSql('ALTER TABLE c_forum_thread_qualify ADD CONSTRAINT FK_715FC3A5E5E1B95C FOREIGN KEY (qualify_user_id) REFERENCES user (id) ON DELETE CASCADE');
554
555
        // c_quiz
556
        $this->addSql('DROP INDEX IF EXISTS session_id ON c_quiz');
557
        $this->addSql('ALTER TABLE c_quiz DROP COLUMN IF EXISTS c_id');
558
        $this->addSql('ALTER TABLE c_quiz DROP COLUMN IF EXISTS id');
559
        $this->addSql('ALTER TABLE c_quiz DROP COLUMN IF EXISTS session_id');
560
        $this->addSql('ALTER TABLE c_quiz CHANGE hide_attempts_table hide_attempts_table TINYINT(1) DEFAULT 0 NOT NULL');
561
562
        // c_link
563
        $this->addSql('ALTER TABLE c_link DROP COLUMN IF EXISTS c_id');
564
        $this->addSql('ALTER TABLE c_link DROP COLUMN IF EXISTS id');
565
        $this->addSql('ALTER TABLE c_link DROP COLUMN IF EXISTS display_order');
566
        $this->addSql('ALTER TABLE c_link DROP COLUMN IF EXISTS on_homepage');
567
        $this->addSql('ALTER TABLE c_link DROP COLUMN IF EXISTS session_id');
568
569
        // c_quiz_question_category
570
        $this->addSql('ALTER TABLE c_quiz_question_category DROP COLUMN IF EXISTS c_id');
571
        $this->addSql('ALTER TABLE c_quiz_question_category DROP COLUMN IF EXISTS id');
572
573
        // c_course_description
574
        $this->addSql('ALTER TABLE c_course_description DROP COLUMN IF EXISTS id');
575
        $this->addSql('ALTER TABLE c_course_description DROP COLUMN IF EXISTS c_id');
576
        $this->addSql('ALTER TABLE c_course_description DROP COLUMN IF EXISTS session_id');
577
578
        // c_attendance_sheet
579
        $this->addSql('ALTER TABLE c_attendance_sheet DROP FOREIGN KEY IF EXISTS FK_AD1394FAA76ED395');
580
        $this->addSql('ALTER TABLE c_attendance_sheet DROP COLUMN IF EXISTS c_id');
581
        $this->addSql('ALTER TABLE c_attendance_sheet ADD CONSTRAINT FK_AD1394FAA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
582
583
        // c_quiz_question
584
        $this->addSql('ALTER TABLE c_quiz_question DROP COLUMN IF EXISTS c_id');
585
        $this->addSql('ALTER TABLE c_quiz_question CHANGE feedback feedback LONGTEXT DEFAULT NULL');
586
587
        // c_quiz_question_rel_category
588
        $this->addSql('ALTER TABLE c_quiz_question_rel_category DROP FOREIGN KEY IF EXISTS FK_A468585C12469DE2');
589
        $this->addSql('ALTER TABLE c_quiz_question_rel_category DROP FOREIGN KEY IF EXISTS FK_A468585C1E27F6BF');
590
        $this->addSql('DROP INDEX IF EXISTS idx_qqrc_qid ON c_quiz_question_rel_category');
591
        $this->addSql('DROP INDEX IF EXISTS `primary` ON c_quiz_question_rel_category');
592
        $this->addSql('ALTER TABLE c_quiz_question_rel_category DROP COLUMN IF EXISTS iid');
593
        $this->addSql('ALTER TABLE c_quiz_question_rel_category DROP COLUMN IF EXISTS c_id');
594
        $this->addSql('ALTER TABLE c_quiz_question_rel_category DROP COLUMN IF EXISTS mandatory');
595
        $this->addSql('ALTER TABLE c_quiz_question_rel_category ADD CONSTRAINT FK_A468585C12469DE2 FOREIGN KEY (category_id) REFERENCES c_quiz_question_category (iid)');
596
        $this->addSql('ALTER TABLE c_quiz_question_rel_category ADD CONSTRAINT FK_A468585C1E27F6BF FOREIGN KEY (question_id) REFERENCES c_quiz_question (iid)');
597
        $this->addSql('ALTER TABLE c_quiz_question_rel_category ADD PRIMARY KEY (question_id, category_id)');
598
599
        $this->addSql('SET FOREIGN_KEY_CHECKS = 1;');
600
    }
601
602
    public function down(Schema $schema): void
603
    {}
604
}
605