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

Version20240811221900::down()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 67
Code Lines 55

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 1
eloc 55
c 1
b 0
f 1
nc 1
nop 1
dl 0
loc 67
rs 8.9818

How to fix   Long Method   

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
3
declare(strict_types=1);
4
5
/* For licensing terms, see /license.txt */
6
7
namespace Chamilo\CoreBundle\Migrations\Schema\V200;
8
9
use Doctrine\DBAL\Schema\Schema;
10
use Chamilo\CoreBundle\Migrations\AbstractMigrationChamilo;
11
12
final class Version20240811221900 extends AbstractMigrationChamilo
13
{
14
    public function getDescription(): string
15
    {
16
        return 'Migration for modifying existing tables: block, c_blog, c_blog_attachment, c_blog_comment, c_blog_post, c_blog_rating, c_blog_rel_user, c_blog_task, and c_blog_task_rel_user.';
17
    }
18
19
    public function up(Schema $schema): void
20
    {
21
        $this->addSql('ALTER TABLE block ADD user_id INT DEFAULT NULL;');
22
        $this->addSql('ALTER TABLE block ADD CONSTRAINT FK_831B9722A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE;');
23
        $this->addSql('CREATE UNIQUE INDEX UNIQ_831B9722A76ED395 ON block (user_id);');
24
25
        $this->addSql('DROP INDEX course ON c_blog_attachment;');
26
        $this->addSql('ALTER TABLE c_blog_attachment DROP id, DROP c_id, DROP post_id, DROP comment_id, CHANGE blog_id blog_id INT DEFAULT NULL;');
27
        $this->addSql('ALTER TABLE c_blog_attachment ADD CONSTRAINT FK_E769AADCDAE07E97 FOREIGN KEY (blog_id) REFERENCES c_blog (iid) ON DELETE CASCADE;');
28
        $this->addSql('CREATE INDEX IDX_E769AADCDAE07E97 ON c_blog_attachment (blog_id);');
29
30
        $this->addSql('DROP INDEX course ON c_blog_rating;');
31
        $this->addSql('ALTER TABLE c_blog_rating DROP rating_id, DROP c_id, DROP item_id, CHANGE blog_id blog_id INT DEFAULT NULL, CHANGE user_id user_id INT DEFAULT NULL;');
32
        $this->addSql('ALTER TABLE c_blog_rating ADD CONSTRAINT FK_D4E30760DAE07E97 FOREIGN KEY (blog_id) REFERENCES c_blog (iid) ON DELETE CASCADE;');
33
        $this->addSql('ALTER TABLE c_blog_rating ADD CONSTRAINT FK_D4E30760A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE;');
34
        $this->addSql('CREATE INDEX IDX_D4E30760DAE07E97 ON c_blog_rating (blog_id);');
35
        $this->addSql('CREATE INDEX IDX_D4E30760A76ED395 ON c_blog_rating (user_id);');
36
37
        $this->addSql('DROP INDEX course ON c_blog_post;');
38
        $this->addSql('ALTER TABLE c_blog_post DROP c_id, DROP post_id, CHANGE blog_id blog_id INT DEFAULT NULL, CHANGE author_id author_id INT DEFAULT NULL;');
39
        $this->addSql('ALTER TABLE c_blog_post ADD CONSTRAINT FK_B6FD68A3F675F31B FOREIGN KEY (author_id) REFERENCES user (id) ON DELETE CASCADE;');
40
        $this->addSql('ALTER TABLE c_blog_post ADD CONSTRAINT FK_B6FD68A3DAE07E97 FOREIGN KEY (blog_id) REFERENCES c_blog (iid) ON DELETE CASCADE;');
41
        $this->addSql('CREATE INDEX IDX_B6FD68A3F675F31B ON c_blog_post (author_id);');
42
        $this->addSql('CREATE INDEX IDX_B6FD68A3DAE07E97 ON c_blog_post (blog_id);');
43
44
        $this->addSql('DROP INDEX course ON c_blog_rel_user;');
45
        $this->addSql('ALTER TABLE c_blog_rel_user DROP c_id, CHANGE blog_id blog_id INT DEFAULT NULL, CHANGE user_id user_id INT DEFAULT NULL;');
46
        $this->addSql('ALTER TABLE c_blog_rel_user ADD CONSTRAINT FK_B55D851BDAE07E97 FOREIGN KEY (blog_id) REFERENCES c_blog (iid) ON DELETE CASCADE;');
47
        $this->addSql('ALTER TABLE c_blog_rel_user ADD CONSTRAINT FK_B55D851BA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE;');
48
        $this->addSql('CREATE INDEX IDX_B55D851BDAE07E97 ON c_blog_rel_user (blog_id);');
49
        $this->addSql('CREATE INDEX IDX_B55D851BA76ED395 ON c_blog_rel_user (user_id);');
50
51
        $this->addSql('DROP INDEX course ON c_blog_task_rel_user;');
52
        $this->addSql('DROP INDEX user ON c_blog_task_rel_user;');
53
        $this->addSql('DROP INDEX task ON c_blog_task_rel_user;');
54
        $this->addSql('ALTER TABLE c_blog_task_rel_user DROP c_id, CHANGE blog_id blog_id INT DEFAULT NULL, CHANGE user_id user_id INT DEFAULT NULL, CHANGE task_id task_id INT DEFAULT NULL;');
55
        $this->addSql('ALTER TABLE c_blog_task_rel_user ADD CONSTRAINT FK_FD8B3C738DB60186 FOREIGN KEY (task_id) REFERENCES c_blog_task (iid) ON DELETE CASCADE;');
56
        $this->addSql('ALTER TABLE c_blog_task_rel_user ADD CONSTRAINT FK_FD8B3C73DAE07E97 FOREIGN KEY (blog_id) REFERENCES c_blog (iid) ON DELETE CASCADE;');
57
        $this->addSql('ALTER TABLE c_blog_task_rel_user ADD CONSTRAINT FK_FD8B3C73A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE;');
58
        $this->addSql('CREATE INDEX IDX_FD8B3C73DAE07E97 ON c_blog_task_rel_user (blog_id);');
59
        $this->addSql('CREATE INDEX IDX_FD8B3C738DB60186 ON c_blog_task_rel_user (task_id);');
60
        $this->addSql('CREATE INDEX IDX_FD8B3C73A76ED395 ON c_blog_task_rel_user (user_id);');
61
62
        $this->addSql('DROP INDEX course ON c_blog;');
63
        $this->addSql('DROP INDEX session_id ON c_blog;');
64
        $this->addSql('ALTER TABLE c_blog DROP c_id, DROP blog_id, DROP visibility, DROP session_id;');
65
        $this->addSql('ALTER TABLE c_blog ADD CONSTRAINT FK_64B00A121BAD783F FOREIGN KEY (resource_node_id) REFERENCES resource_node (id) ON DELETE CASCADE;');
66
67
        $this->addSql('ALTER TABLE c_lp_category_rel_user DROP FOREIGN KEY FK_61F0427A76ED395;');
68
69
        $this->addSql('DROP INDEX course ON c_blog_task;');
70
        $this->addSql('ALTER TABLE c_blog_task DROP c_id, CHANGE blog_id blog_id INT DEFAULT NULL;');
71
        $this->addSql('ALTER TABLE c_blog_task ADD CONSTRAINT FK_BE09DF0BDAE07E97 FOREIGN KEY (blog_id) REFERENCES c_blog (iid) ON DELETE CASCADE;');
72
        $this->addSql('CREATE INDEX IDX_BE09DF0BDAE07E97 ON c_blog_task (blog_id);');
73
74
        $this->addSql('DROP INDEX course ON c_blog_comment;');
75
        $this->addSql('ALTER TABLE c_blog_comment DROP c_id, DROP post_id, DROP task_id, DROP parent_comment_id, CHANGE author_id author_id INT DEFAULT NULL, CHANGE blog_id blog_id INT DEFAULT NULL;');
76
        $this->addSql('ALTER TABLE c_blog_comment ADD CONSTRAINT FK_CAA18F1F675F31B FOREIGN KEY (author_id) REFERENCES user (id) ON DELETE CASCADE;');
77
        $this->addSql('ALTER TABLE c_blog_comment ADD CONSTRAINT FK_CAA18F1DAE07E97 FOREIGN KEY (blog_id) REFERENCES c_blog (iid) ON DELETE CASCADE;');
78
        $this->addSql('CREATE INDEX IDX_CAA18F1F675F31B ON c_blog_comment (author_id);');
79
        $this->addSql('CREATE INDEX IDX_CAA18F1DAE07E97 ON c_blog_comment (blog_id);');
80
    }
81
82
    public function down(Schema $schema): void
83
    {
84
        $this->addSql('ALTER TABLE block DROP FOREIGN KEY FK_831B9722A76ED395;');
85
        $this->addSql('ALTER TABLE block DROP COLUMN user_id;');
86
        $this->addSql('DROP INDEX UNIQ_831B9722A76ED395 ON block;');
87
88
        $this->addSql('ALTER TABLE c_blog_attachment DROP FOREIGN KEY FK_E769AADCDAE07E97;');
89
        $this->addSql('ALTER TABLE c_blog_attachment ADD c_id INT NOT NULL, ADD post_id INT NOT NULL, ADD comment_id INT NOT NULL;');
90
        $this->addSql('ALTER TABLE c_blog_attachment ADD id INT NOT NULL;');
91
        $this->addSql('DROP INDEX IDX_E769AADCDAE07E97 ON c_blog_attachment;');
92
        $this->addSql('CREATE INDEX course ON c_blog_attachment (c_id);');
93
94
        $this->addSql('ALTER TABLE c_blog_rating DROP FOREIGN KEY FK_D4E30760DAE07E97;');
95
        $this->addSql('ALTER TABLE c_blog_rating DROP FOREIGN KEY FK_D4E30760A76ED395;');
96
        $this->addSql('ALTER TABLE c_blog_rating ADD c_id INT NOT NULL, ADD rating_id INT NOT NULL, ADD item_id INT NOT NULL;');
97
        $this->addSql('DROP INDEX IDX_D4E30760DAE07E97 ON c_blog_rating;');
98
        $this->addSql('DROP INDEX IDX_D4E30760A76ED395 ON c_blog_rating;');
99
        $this->addSql('CREATE INDEX course ON c_blog_rating (c_id);');
100
101
        $this->addSql('ALTER TABLE c_survey_question_option DROP FOREIGN KEY FK_C4B6F5F1E27F6BF;');
102
        $this->addSql('ALTER TABLE c_survey_question_option ADD CONSTRAINT FK_C4B6F5F1E27F6BF FOREIGN KEY (question_id) REFERENCES c_survey_question (iid);');
103
104
        $this->addSql('ALTER TABLE c_blog_post DROP FOREIGN KEY FK_B6FD68A3F675F31B;');
105
        $this->addSql('ALTER TABLE c_blog_post DROP FOREIGN KEY FK_B6FD68A3DAE07E97;');
106
        $this->addSql('ALTER TABLE c_blog_post ADD c_id INT NOT NULL, ADD post_id INT NOT NULL;');
107
        $this->addSql('DROP INDEX IDX_B6FD68A3F675F31B ON c_blog_post;');
108
        $this->addSql('DROP INDEX IDX_B6FD68A3DAE07E97 ON c_blog_post;');
109
        $this->addSql('CREATE INDEX course ON c_blog_post (c_id);');
110
111
        $this->addSql('ALTER TABLE c_blog_rel_user DROP FOREIGN KEY FK_B55D851BDAE07E97;');
112
        $this->addSql('ALTER TABLE c_blog_rel_user DROP FOREIGN KEY FK_B55D851BA76ED395;');
113
        $this->addSql('ALTER TABLE c_blog_rel_user ADD c_id INT NOT NULL;');
114
        $this->addSql('DROP INDEX IDX_B55D851BDAE07E97 ON c_blog_rel_user;');
115
        $this->addSql('DROP INDEX IDX_B55D851BA76ED395 ON c_blog_rel_user;');
116
        $this->addSql('CREATE INDEX course ON c_blog_rel_user (c_id);');
117
118
        $this->addSql('ALTER TABLE c_blog_task_rel_user DROP FOREIGN KEY FK_FD8B3C738DB60186;');
119
        $this->addSql('ALTER TABLE c_blog_task_rel_user DROP FOREIGN KEY FK_FD8B3C73DAE07E97;');
120
        $this->addSql('ALTER TABLE c_blog_task_rel_user DROP FOREIGN KEY FK_FD8B3C73A76ED395;');
121
        $this->addSql('ALTER TABLE c_blog_task_rel_user ADD c_id INT NOT NULL;');
122
        $this->addSql('ALTER TABLE c_blog_task_rel_user ADD task_id INT NOT NULL, ADD user_id INT NOT NULL;');
123
        $this->addSql('DROP INDEX IDX_FD8B3C73DAE07E97 ON c_blog_task_rel_user;');
124
        $this->addSql('DROP INDEX IDX_FD8B3C738DB60186 ON c_blog_task_rel_user;');
125
        $this->addSql('DROP INDEX IDX_FD8B3C73A76ED395 ON c_blog_task_rel_user;');
126
        $this->addSql('CREATE INDEX course ON c_blog_task_rel_user (c_id);');
127
        $this->addSql('CREATE INDEX task ON c_blog_task_rel_user (task_id);');
128
        $this->addSql('CREATE INDEX user ON c_blog_task_rel_user (user_id);');
129
130
        $this->addSql('ALTER TABLE c_blog DROP FOREIGN KEY FK_64B00A121BAD783F;');
131
        $this->addSql('ALTER TABLE c_blog ADD c_id INT NOT NULL, ADD blog_id INT NOT NULL, ADD visibility TINYINT(1) NOT NULL, ADD session_id INT DEFAULT NULL;');
132
        $this->addSql('DROP INDEX UNIQ_64B00A121BAD783F ON c_blog;');
133
        $this->addSql('CREATE INDEX course ON c_blog (c_id);');
134
        $this->addSql('CREATE INDEX session_id ON c_blog (session_id);');
135
136
        $this->addSql('ALTER TABLE c_lp_category_rel_user ADD CONSTRAINT FK_61F0427A76ED395 FOREIGN KEY (c_id) REFERENCES course (id);');
137
138
        $this->addSql('ALTER TABLE c_blog_task DROP FOREIGN KEY FK_BE09DF0BDAE07E97;');
139
        $this->addSql('ALTER TABLE c_blog_task ADD c_id INT NOT NULL;');
140
        $this->addSql('DROP INDEX IDX_BE09DF0BDAE07E97 ON c_blog_task;');
141
        $this->addSql('CREATE INDEX course ON c_blog_task (c_id);');
142
143
        $this->addSql('ALTER TABLE c_blog_comment DROP FOREIGN KEY FK_CAA18F1F675F31B;');
144
        $this->addSql('ALTER TABLE c_blog_comment DROP FOREIGN KEY FK_CAA18F1DAE07E97;');
145
        $this->addSql('ALTER TABLE c_blog_comment ADD c_id INT NOT NULL, ADD post_id INT NOT NULL, ADD task_id INT NOT NULL, ADD parent_comment_id INT NOT NULL;');
146
        $this->addSql('DROP INDEX IDX_CAA18F1F675F31B ON c_blog_comment;');
147
        $this->addSql('DROP INDEX IDX_CAA18F1DAE07E97 ON c_blog_comment;');
148
        $this->addSql('CREATE INDEX course ON c_blog_comment (c_id);');
149
    }
150
}
151