Test Failed
Push — master ( 741545...e25e21 )
by Julien
11:23
created

PermissionMigration_100::up()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 2
Code Lines 0

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
eloc 0
c 0
b 0
f 0
dl 0
loc 2
ccs 0
cts 0
cp 0
rs 10
cc 1
nc 1
nop 0
crap 2
1
<?php 
2
3
use Phalcon\Db\Column;
4
use Phalcon\Db\Index;
5
use Phalcon\Db\Reference;
6
use Phalcon\Migrations\Mvc\Model\Migration;
7
8
/**
9
 * Class PermissionMigration_100
10
 */
11
class PermissionMigration_100 extends Migration
0 ignored issues
show
Coding Style Compatibility introduced by
PSR1 recommends that each class must be in a namespace of at least one level to avoid collisions.

You can fix this by adding a namespace to your class:

namespace YourVendor;

class YourClass { }

When choosing a vendor namespace, try to pick something that is not too generic to avoid conflicts with other libraries.

Loading history...
Coding Style introduced by
Class name "PermissionMigration_100" is not in PascalCase format

Classes in PHP are usually named in CamelCase.

In camelCase names are written without any punctuation, the start of each new word being marked by a capital letter. The whole name starts with a capital letter as well.

Thus the name database provider becomes DatabaseProvider.

Loading history...
12
{
13
    /**
14
     * Define the table structure
15
     *
16
     * @return void
17
     */
18
    public function morph()
19
    {
20
        $this->morphTable('permission', [
21
                'columns' => [
22
                    new Column(
23
                        'id',
24
                        [
25
                            'type' => Column::TYPE_INTEGER,
26
                            'unsigned' => true,
27
                            'notNull' => true,
28
                            'autoIncrement' => true,
29
                            'size' => 10,
30
                            'first' => true
31
                        ]
32
                    ),
33
                    new Column(
34
                        'deny',
35
                        [
36
                            'type' => Column::TYPE_TINYINTEGER,
37
                            'default' => "0",
38
                            'unsigned' => true,
39
                            'notNull' => true,
40
                            'size' => 1,
41
                            'after' => 'id'
42
                        ]
43
                    ),
44
                    new Column(
45
                        'workspace_id',
46
                        [
47
                            'type' => Column::TYPE_INTEGER,
48
                            'unsigned' => true,
49
                            'notNull' => false,
50
                            'size' => 10,
51
                            'after' => 'deny'
52
                        ]
53
                    ),
54
                    new Column(
55
                        'project_id',
56
                        [
57
                            'type' => Column::TYPE_INTEGER,
58
                            'unsigned' => true,
59
                            'notNull' => false,
60
                            'size' => 10,
61
                            'after' => 'workspace_id'
62
                        ]
63
                    ),
64
                    new Column(
65
                        'user_id',
66
                        [
67
                            'type' => Column::TYPE_INTEGER,
68
                            'unsigned' => true,
69
                            'notNull' => false,
70
                            'size' => 10,
71
                            'after' => 'project_id'
72
                        ]
73
                    ),
74
                    new Column(
75
                        'role_id',
76
                        [
77
                            'type' => Column::TYPE_INTEGER,
78
                            'unsigned' => true,
79
                            'notNull' => false,
80
                            'size' => 10,
81
                            'after' => 'user_id'
82
                        ]
83
                    ),
84
                    new Column(
85
                        'file_id',
86
                        [
87
                            'type' => Column::TYPE_INTEGER,
88
                            'unsigned' => true,
89
                            'notNull' => false,
90
                            'size' => 10,
91
                            'after' => 'role_id'
92
                        ]
93
                    ),
94
                    new Column(
95
                        'locale_id',
96
                        [
97
                            'type' => Column::TYPE_INTEGER,
98
                            'unsigned' => true,
99
                            'notNull' => false,
100
                            'size' => 10,
101
                            'after' => 'file_id'
102
                        ]
103
                    ),
104
                    new Column(
105
                        'template_id',
106
                        [
107
                            'type' => Column::TYPE_INTEGER,
108
                            'unsigned' => true,
109
                            'notNull' => false,
110
                            'size' => 10,
111
                            'after' => 'locale_id'
112
                        ]
113
                    ),
114
                    new Column(
115
                        'channel_id',
116
                        [
117
                            'type' => Column::TYPE_INTEGER,
118
                            'unsigned' => true,
119
                            'notNull' => false,
120
                            'size' => 10,
121
                            'after' => 'template_id'
122
                        ]
123
                    ),
124
                    new Column(
125
                        'channel_field_id',
126
                        [
127
                            'type' => Column::TYPE_INTEGER,
128
                            'unsigned' => true,
129
                            'notNull' => false,
130
                            'size' => 10,
131
                            'after' => 'channel_id'
132
                        ]
133
                    ),
134
                    new Column(
135
                        'endpoint_id',
136
                        [
137
                            'type' => Column::TYPE_INTEGER,
138
                            'unsigned' => true,
139
                            'notNull' => false,
140
                            'size' => 10,
141
                            'after' => 'channel_field_id'
142
                        ]
143
                    ),
144
                    new Column(
145
                        'endpoint_field_id',
146
                        [
147
                            'type' => Column::TYPE_INTEGER,
148
                            'unsigned' => true,
149
                            'notNull' => false,
150
                            'size' => 10,
151
                            'after' => 'endpoint_id'
152
                        ]
153
                    ),
154
                    new Column(
155
                        'endpoint_version_id',
156
                        [
157
                            'type' => Column::TYPE_INTEGER,
158
                            'unsigned' => true,
159
                            'notNull' => false,
160
                            'size' => 10,
161
                            'after' => 'endpoint_field_id'
162
                        ]
163
                    ),
164
                    new Column(
165
                        'field_id',
166
                        [
167
                            'type' => Column::TYPE_INTEGER,
168
                            'unsigned' => true,
169
                            'notNull' => false,
170
                            'size' => 10,
171
                            'after' => 'endpoint_version_id'
172
                        ]
173
                    ),
174
                    new Column(
175
                        'version_id',
176
                        [
177
                            'type' => Column::TYPE_INTEGER,
178
                            'unsigned' => true,
179
                            'notNull' => false,
180
                            'size' => 10,
181
                            'after' => 'field_id'
182
                        ]
183
                    ),
184
                    new Column(
185
                        'meta',
186
                        [
187
                            'type' => Column::TYPE_LONGTEXT,
188
                            'notNull' => false,
189
                            'after' => 'version_id'
190
                        ]
191
                    ),
192
                    new Column(
193
                        'created_at',
194
                        [
195
                            'type' => Column::TYPE_DATETIME,
196
                            'default' => "current_timestamp()",
197
                            'notNull' => true,
198
                            'after' => 'meta'
199
                        ]
200
                    ),
201
                    new Column(
202
                        'updated_at',
203
                        [
204
                            'type' => Column::TYPE_DATETIME,
205
                            'notNull' => false,
206
                            'after' => 'created_at'
207
                        ]
208
                    ),
209
                    new Column(
210
                        'deleted_at',
211
                        [
212
                            'type' => Column::TYPE_DATETIME,
213
                            'notNull' => false,
214
                            'after' => 'updated_at'
215
                        ]
216
                    ),
217
                    new Column(
218
                        'deprecated_at',
219
                        [
220
                            'type' => Column::TYPE_DATETIME,
221
                            'notNull' => false,
222
                            'after' => 'deleted_at'
223
                        ]
224
                    ),
225
                    new Column(
226
                        'deleted',
227
                        [
228
                            'type' => Column::TYPE_TINYINTEGER,
229
                            'default' => "0",
230
                            'unsigned' => true,
231
                            'notNull' => true,
232
                            'size' => 1,
233
                            'after' => 'deprecated_at'
234
                        ]
235
                    ),
236
                    new Column(
237
                        'deprecated',
238
                        [
239
                            'type' => Column::TYPE_TINYINTEGER,
240
                            'default' => "0",
241
                            'unsigned' => true,
242
                            'notNull' => true,
243
                            'size' => 1,
244
                            'after' => 'deleted'
245
                        ]
246
                    )
247
                ],
248
                'indexes' => [
249
                    new Index('PRIMARY', ['id'], 'PRIMARY'),
250
                    new Index('id_UNIQUE', ['id'], 'UNIQUE'),
251
                    new Index('permission_channel_id_fk_idx', ['channel_id'], ''),
252
                    new Index('permission_workspace_id_fk_idx', ['workspace_id'], ''),
253
                    new Index('permission_project_id_fk_idx', ['project_id'], ''),
254
                    new Index('permission_user_id_fk_idx', ['user_id'], ''),
255
                    new Index('permission_role_id_fk_idx', ['role_id'], ''),
256
                    new Index('permission_file_id_fk_idx', ['file_id'], ''),
257
                    new Index('permission_locale_id_fk_idx', ['locale_id'], ''),
258
                    new Index('permission_template_id_fk_idx', ['template_id'], ''),
259
                    new Index('permission_channel_field_id_fk_idx', ['channel_field_id'], ''),
260
                    new Index('permission_endpoint_id_fk_idx', ['endpoint_id'], ''),
261
                    new Index('permission_endpoint_version_id_fk_idx', ['endpoint_version_id'], ''),
262
                    new Index('permission_endpoint_field_id_fk_idx', ['endpoint_field_id'], ''),
263
                    new Index('permission_field_id_fk_idx', ['field_id'], ''),
264
                    new Index('permission_version_id_fk_idx', ['version_id'], '')
265
                ],
266
                'references' => [
267
                    new Reference(
268
                        'permission_channel_field_id_fk',
269
                        [
270
                            'referencedTable' => 'channel_field',
271
                            'referencedSchema' => 'zemit',
272
                            'columns' => ['channel_field_id'],
273
                            'referencedColumns' => ['id'],
274
                            'onUpdate' => 'CASCADE',
275
                            'onDelete' => 'CASCADE'
276
                        ]
277
                    ),
278
                    new Reference(
279
                        'permission_channel_id_fk',
280
                        [
281
                            'referencedTable' => 'channel',
282
                            'referencedSchema' => 'zemit',
283
                            'columns' => ['channel_id'],
284
                            'referencedColumns' => ['id'],
285
                            'onUpdate' => 'CASCADE',
286
                            'onDelete' => 'CASCADE'
287
                        ]
288
                    ),
289
                    new Reference(
290
                        'permission_endpoint_field_id_fk',
291
                        [
292
                            'referencedTable' => 'endpoint_field',
293
                            'referencedSchema' => 'zemit',
294
                            'columns' => ['endpoint_field_id'],
295
                            'referencedColumns' => ['id'],
296
                            'onUpdate' => 'CASCADE',
297
                            'onDelete' => 'CASCADE'
298
                        ]
299
                    ),
300
                    new Reference(
301
                        'permission_endpoint_id_fk',
302
                        [
303
                            'referencedTable' => 'endpoint',
304
                            'referencedSchema' => 'zemit',
305
                            'columns' => ['endpoint_id'],
306
                            'referencedColumns' => ['id'],
307
                            'onUpdate' => 'CASCADE',
308
                            'onDelete' => 'CASCADE'
309
                        ]
310
                    ),
311
                    new Reference(
312
                        'permission_endpoint_version_id_fk',
313
                        [
314
                            'referencedTable' => 'endpoint_version',
315
                            'referencedSchema' => 'zemit',
316
                            'columns' => ['endpoint_version_id'],
317
                            'referencedColumns' => ['id'],
318
                            'onUpdate' => 'CASCADE',
319
                            'onDelete' => 'CASCADE'
320
                        ]
321
                    ),
322
                    new Reference(
323
                        'permission_field_id_fk',
324
                        [
325
                            'referencedTable' => 'field',
326
                            'referencedSchema' => 'zemit',
327
                            'columns' => ['field_id'],
328
                            'referencedColumns' => ['id'],
329
                            'onUpdate' => 'CASCADE',
330
                            'onDelete' => 'CASCADE'
331
                        ]
332
                    ),
333
                    new Reference(
334
                        'permission_file_id_fk',
335
                        [
336
                            'referencedTable' => 'file',
337
                            'referencedSchema' => 'zemit',
338
                            'columns' => ['file_id'],
339
                            'referencedColumns' => ['id'],
340
                            'onUpdate' => 'CASCADE',
341
                            'onDelete' => 'CASCADE'
342
                        ]
343
                    ),
344
                    new Reference(
345
                        'permission_locale_id_fk',
346
                        [
347
                            'referencedTable' => 'locale',
348
                            'referencedSchema' => 'zemit',
349
                            'columns' => ['locale_id'],
350
                            'referencedColumns' => ['id'],
351
                            'onUpdate' => 'CASCADE',
352
                            'onDelete' => 'CASCADE'
353
                        ]
354
                    ),
355
                    new Reference(
356
                        'permission_project_id_fk',
357
                        [
358
                            'referencedTable' => 'project',
359
                            'referencedSchema' => 'zemit',
360
                            'columns' => ['project_id'],
361
                            'referencedColumns' => ['id'],
362
                            'onUpdate' => 'CASCADE',
363
                            'onDelete' => 'CASCADE'
364
                        ]
365
                    ),
366
                    new Reference(
367
                        'permission_role_id_fk',
368
                        [
369
                            'referencedTable' => 'role',
370
                            'referencedSchema' => 'zemit',
371
                            'columns' => ['role_id'],
372
                            'referencedColumns' => ['id'],
373
                            'onUpdate' => 'CASCADE',
374
                            'onDelete' => 'CASCADE'
375
                        ]
376
                    ),
377
                    new Reference(
378
                        'permission_template_id_fk',
379
                        [
380
                            'referencedTable' => 'template',
381
                            'referencedSchema' => 'zemit',
382
                            'columns' => ['template_id'],
383
                            'referencedColumns' => ['id'],
384
                            'onUpdate' => 'CASCADE',
385
                            'onDelete' => 'CASCADE'
386
                        ]
387
                    ),
388
                    new Reference(
389
                        'permission_user_id_fk',
390
                        [
391
                            'referencedTable' => 'user',
392
                            'referencedSchema' => 'zemit',
393
                            'columns' => ['user_id'],
394
                            'referencedColumns' => ['id'],
395
                            'onUpdate' => 'CASCADE',
396
                            'onDelete' => 'CASCADE'
397
                        ]
398
                    ),
399
                    new Reference(
400
                        'permission_version_id_fk',
401
                        [
402
                            'referencedTable' => 'version',
403
                            'referencedSchema' => 'zemit',
404
                            'columns' => ['version_id'],
405
                            'referencedColumns' => ['id'],
406
                            'onUpdate' => 'CASCADE',
407
                            'onDelete' => 'CASCADE'
408
                        ]
409
                    ),
410
                    new Reference(
411
                        'permission_workspace_id_fk',
412
                        [
413
                            'referencedTable' => 'workspace',
414
                            'referencedSchema' => 'zemit',
415
                            'columns' => ['workspace_id'],
416
                            'referencedColumns' => ['id'],
417
                            'onUpdate' => 'CASCADE',
418
                            'onDelete' => 'CASCADE'
419
                        ]
420
                    )
421
                ],
422
                'options' => [
423
                    'table_type' => 'BASE TABLE',
424
                    'auto_increment' => '',
425
                    'engine' => 'InnoDB',
426
                    'table_collation' => 'utf8mb4_general_ci'
427
                ],
428
            ]
429
        );
430
    }
431
432
    /**
433
     * Run the migrations
434
     *
435
     * @return void
436
     */
437
    public function up()
438
    {
439
440
    }
0 ignored issues
show
Coding Style introduced by
Function closing brace must go on the next line following the body; found 1 blank lines before brace
Loading history...
441
442
    /**
443
     * Reverse the migrations
444
     *
445
     * @return void
446
     */
447
    public function down()
448
    {
449
450
    }
0 ignored issues
show
Coding Style introduced by
Function closing brace must go on the next line following the body; found 1 blank lines before brace
Loading history...
451
452
}
453