@@ -133,7 +133,7 @@ discard block |
||
133 | 133 | public function registerNavigation(): void |
134 | 134 | { |
135 | 135 | // Extend the navigation |
136 | - Event::listen('backend.menu.extendItems', function ($manager) { |
|
136 | + Event::listen('backend.menu.extendItems', function($manager) { |
|
137 | 137 | $manager->addSideMenuItems(self::REQUIRED_PLUGIN_RAINLAB_BLOG, 'blog', [ |
138 | 138 | 'series' => [ |
139 | 139 | 'label' => self::LOCALIZATION_KEY . 'navigation.sidebar.series', |
@@ -194,54 +194,54 @@ discard block |
||
194 | 194 | */ |
195 | 195 | private function extendPostModel(): void |
196 | 196 | { |
197 | - PostModel::extend(function ($model) { |
|
197 | + PostModel::extend(function($model) { |
|
198 | 198 | $model->morphToMany = [ |
199 | - 'tags' => [Tag::class, 'name' => Tag::PIVOT_COLUMN] |
|
199 | + 'tags' => [ Tag::class, 'name' => Tag::PIVOT_COLUMN ] |
|
200 | 200 | ]; |
201 | 201 | |
202 | - $model->belongsTo['series'] = [ |
|
202 | + $model->belongsTo[ 'series' ] = [ |
|
203 | 203 | Series::class, |
204 | 204 | 'key' => Series::TABLE_NAME . "_id" |
205 | 205 | ]; |
206 | 206 | |
207 | 207 | if ($this->getSettings()->postTypesEnabled()) { |
208 | - $model->belongsTo['post_type'] = [ |
|
208 | + $model->belongsTo[ 'post_type' ] = [ |
|
209 | 209 | PostType::class, |
210 | 210 | 'key' => PostType::TABLE_NAME . "_id" |
211 | 211 | ]; |
212 | 212 | |
213 | - $model->addJsonable(PostType::TABLE_NAME. '_attributes'); |
|
213 | + $model->addJsonable(PostType::TABLE_NAME . '_attributes'); |
|
214 | 214 | |
215 | - $model->addDynamicMethod('typeAttributes', function () use ($model) { |
|
215 | + $model->addDynamicMethod('typeAttributes', function() use ($model) { |
|
216 | 216 | if (!empty($model->post_type->id)) { |
217 | - $rawFields = $model->{PostType::TABLE_NAME. '_attributes'}[0] ?? []; |
|
218 | - $prefix = $model->post_type->id.'.'; |
|
219 | - $fields = []; |
|
217 | + $rawFields = $model->{PostType::TABLE_NAME . '_attributes'}[ 0 ] ?? [ ]; |
|
218 | + $prefix = $model->post_type->id . '.'; |
|
219 | + $fields = [ ]; |
|
220 | 220 | |
221 | 221 | foreach ($rawFields as $code => $value) { |
222 | 222 | if (strpos($code, $prefix) === 0) { |
223 | - $fields[str_replace($prefix, '', $code)] = $value; |
|
223 | + $fields[ str_replace($prefix, '', $code) ] = $value; |
|
224 | 224 | } |
225 | 225 | } |
226 | 226 | |
227 | 227 | return $fields; |
228 | 228 | } |
229 | 229 | |
230 | - return []; |
|
230 | + return [ ]; |
|
231 | 231 | }); |
232 | 232 | |
233 | - $model->addDynamicMethod('typeAttribute', function (string $code) use ($model) { |
|
233 | + $model->addDynamicMethod('typeAttribute', function(string $code) use ($model) { |
|
234 | 234 | if (!empty($model->post_type->id)) { |
235 | 235 | $attributeKey = sprintf('%s.%s', $model->post_type->id, $code); |
236 | 236 | |
237 | - return $model->{PostType::TABLE_NAME. '_attributes'}[0][$attributeKey] ?? null; |
|
237 | + return $model->{PostType::TABLE_NAME . '_attributes'}[ 0 ][ $attributeKey ] ?? null; |
|
238 | 238 | } |
239 | 239 | |
240 | 240 | return $model->post_type->id; |
241 | 241 | }); |
242 | 242 | |
243 | - $model->addDynamicMethod('scopeFilterPostTypes', function ($query, array $types) { |
|
244 | - return $query->whereHas('post_type', function ($query) use ($types) { |
|
243 | + $model->addDynamicMethod('scopeFilterPostTypes', function($query, array $types) { |
|
244 | + return $query->whereHas('post_type', function($query) use ($types) { |
|
245 | 245 | $query->whereIn('id', $types); |
246 | 246 | }); |
247 | 247 | }); |
@@ -260,7 +260,7 @@ discard block |
||
260 | 260 | */ |
261 | 261 | private function extendPostsController(): void |
262 | 262 | { |
263 | - PostsController::extendFormFields(function (Form $form, $model) { |
|
263 | + PostsController::extendFormFields(function(Form $form, $model) { |
|
264 | 264 | if (!$model instanceof PostModel) { |
265 | 265 | return; |
266 | 266 | } |
@@ -311,8 +311,8 @@ discard block |
||
311 | 311 | */ |
312 | 312 | private function extendCategoriesController(): void |
313 | 313 | { |
314 | - CategoriesController::extend(function (Controller $controller) { |
|
315 | - $controller->implement[] = RelationController::class; |
|
314 | + CategoriesController::extend(function(Controller $controller) { |
|
315 | + $controller->implement[ ] = RelationController::class; |
|
316 | 316 | $relationConfig = '$/' . self::DIRECTORY_KEY . '/controllers/category/config_relation.yaml'; |
317 | 317 | |
318 | 318 | if (property_exists($controller, 'relationConfig')) { |
@@ -339,15 +339,15 @@ discard block |
||
339 | 339 | |
340 | 340 | private function extendCategoriesModel(): void |
341 | 341 | { |
342 | - CategoryModel::extend(function ($model) { |
|
342 | + CategoryModel::extend(function($model) { |
|
343 | 343 | if ($this->getSettings()->postCategoriesCoverImageEnabled()) { |
344 | - $model->attachOne['cover_image'] = [ |
|
344 | + $model->attachOne[ 'cover_image' ] = [ |
|
345 | 345 | File::class, 'delete' => true |
346 | 346 | ]; |
347 | 347 | } |
348 | 348 | |
349 | 349 | if ($this->getSettings()->postCategoriesFeaturedImagesEnabled()) { |
350 | - $model->attachMany['featured_images'] = [ |
|
350 | + $model->attachMany[ 'featured_images' ] = [ |
|
351 | 351 | File::class, 'order' => 'sort_order', 'delete' => true |
352 | 352 | ]; |
353 | 353 | } |
@@ -356,7 +356,7 @@ discard block |
||
356 | 356 | |
357 | 357 | private function extendCategoriesFormFields(): void |
358 | 358 | { |
359 | - CategoriesController::extendFormFields(function ($form, $model) { |
|
359 | + CategoriesController::extendFormFields(function($form, $model) { |
|
360 | 360 | if (!$model instanceof CategoryModel) { |
361 | 361 | return; |
362 | 362 | } |
@@ -401,15 +401,15 @@ discard block |
||
401 | 401 | private function extendValidator(): void |
402 | 402 | { |
403 | 403 | if ($this->getSettings()->postTypesEnabled()) { |
404 | - Validator::extend('unique_in_repeater', function ($attribute, $value, $parameters, $validator) { |
|
404 | + Validator::extend('unique_in_repeater', function($attribute, $value, $parameters, $validator) { |
|
405 | 405 | $attributeNameParts = explode('.', $attribute); |
406 | 406 | |
407 | 407 | $repeaterName = reset($attributeNameParts); |
408 | 408 | $fieldName = end($attributeNameParts); |
409 | 409 | |
410 | - $repeaterData = isset($validator->getData()[$repeaterName]) |
|
411 | - ? (array) $validator->getData()[$repeaterName] |
|
412 | - : []; |
|
410 | + $repeaterData = isset($validator->getData()[ $repeaterName ]) |
|
411 | + ? (array)$validator->getData()[ $repeaterName ] |
|
412 | + : [ ]; |
|
413 | 413 | |
414 | 414 | $fieldData = array_column($repeaterData, $fieldName); |
415 | 415 | |
@@ -425,13 +425,13 @@ discard block |
||
425 | 425 | private function transformPostCategoriesIntoTaglist(Form $form, string $tab) |
426 | 426 | { |
427 | 427 | $categoriesConfig = $form->getField('categories')->config; |
428 | - $categoriesConfig['tab'] = $tab; |
|
429 | - $categoriesConfig['mode'] = 'relation'; |
|
430 | - $categoriesConfig['type'] = 'taglist'; |
|
431 | - $categoriesConfig['label'] = 'rainlab.blog::lang.post.tab_categories'; |
|
432 | - $categoriesConfig['comment'] = "rainlab.blog::lang.post.categories_comment"; |
|
433 | - $categoriesConfig['placeholder'] = self::LOCALIZATION_KEY . 'placeholders.categories'; |
|
434 | - unset($categoriesConfig['commentAbove']); |
|
428 | + $categoriesConfig[ 'tab' ] = $tab; |
|
429 | + $categoriesConfig[ 'mode' ] = 'relation'; |
|
430 | + $categoriesConfig[ 'type' ] = 'taglist'; |
|
431 | + $categoriesConfig[ 'label' ] = 'rainlab.blog::lang.post.tab_categories'; |
|
432 | + $categoriesConfig[ 'comment' ] = "rainlab.blog::lang.post.categories_comment"; |
|
433 | + $categoriesConfig[ 'placeholder' ] = self::LOCALIZATION_KEY . 'placeholders.categories'; |
|
434 | + unset($categoriesConfig[ 'commentAbove' ]); |
|
435 | 435 | |
436 | 436 | $form->removeField('categories'); |
437 | 437 | return $categoriesConfig; |
@@ -454,7 +454,7 @@ discard block |
||
454 | 454 | |
455 | 455 | $condition = implode( |
456 | 456 | array_map( |
457 | - static function ($value) { |
|
457 | + static function($value) { |
|
458 | 458 | return "[$value]"; |
459 | 459 | }, |
460 | 460 | PostType::all()->pluck('id')->toArray() |
@@ -480,7 +480,7 @@ discard block |
||
480 | 480 | 'style' => 'accordion', |
481 | 481 | 'tab' => $tab, |
482 | 482 | 'form' => [ |
483 | - 'fields' => [] |
|
483 | + 'fields' => [ ] |
|
484 | 484 | ] |
485 | 485 | ]; |
486 | 486 | |
@@ -490,51 +490,51 @@ discard block |
||
490 | 490 | (!empty($model->id) && !empty($model->post_type->id) && $postType = $model->post_type) |
491 | 491 | ) { |
492 | 492 | if (!empty($postType->type_attributes)) { |
493 | - $fields = []; |
|
493 | + $fields = [ ]; |
|
494 | 494 | |
495 | 495 | foreach ($postType->type_attributes as $typeAttribute) { |
496 | - if (empty($typeAttribute['code'])) { |
|
496 | + if (empty($typeAttribute[ 'code' ])) { |
|
497 | 497 | continue; |
498 | 498 | } |
499 | 499 | |
500 | - $field = []; |
|
500 | + $field = [ ]; |
|
501 | 501 | |
502 | - $type = $typeAttribute['type'] ?? 'text'; |
|
502 | + $type = $typeAttribute[ 'type' ] ?? 'text'; |
|
503 | 503 | |
504 | 504 | switch ($type) { |
505 | 505 | case 'file': |
506 | 506 | case 'image': |
507 | - $field['type'] = 'mediafinder'; |
|
508 | - $field['mode'] = $type; |
|
509 | - $field['imageWidth'] = 200; |
|
507 | + $field[ 'type' ] = 'mediafinder'; |
|
508 | + $field[ 'mode' ] = $type; |
|
509 | + $field[ 'imageWidth' ] = 200; |
|
510 | 510 | break; |
511 | 511 | case 'dropdown': |
512 | - $field['type'] = $type; |
|
512 | + $field[ 'type' ] = $type; |
|
513 | 513 | |
514 | - $options = array_map(static function ($value) { |
|
514 | + $options = array_map(static function($value) { |
|
515 | 515 | return trim($value); |
516 | - }, explode(',', $typeAttribute['dropdown_options'] ?? '')); |
|
516 | + }, explode(',', $typeAttribute[ 'dropdown_options' ] ?? '')); |
|
517 | 517 | |
518 | - $field['options'] = $options; |
|
518 | + $field[ 'options' ] = $options; |
|
519 | 519 | |
520 | 520 | break; |
521 | 521 | case 'text': |
522 | 522 | case 'textarea': |
523 | - $field['type'] = $type; |
|
523 | + $field[ 'type' ] = $type; |
|
524 | 524 | break; |
525 | 525 | case 'datepicker': |
526 | - $field['type'] = $type; |
|
527 | - $field['mode'] = $typeAttribute['datepicker_mode'] ?? 'date'; |
|
526 | + $field[ 'type' ] = $type; |
|
527 | + $field[ 'mode' ] = $typeAttribute[ 'datepicker_mode' ] ?? 'date'; |
|
528 | 528 | |
529 | 529 | break; |
530 | 530 | } |
531 | 531 | |
532 | - $field['label'] = $typeAttribute['name'] ?? ''; |
|
532 | + $field[ 'label' ] = $typeAttribute[ 'name' ] ?? ''; |
|
533 | 533 | |
534 | - $fields[sprintf("%s.%s", $postType->id, $typeAttribute['code'])] = $field; |
|
534 | + $fields[ sprintf("%s.%s", $postType->id, $typeAttribute[ 'code' ]) ] = $field; |
|
535 | 535 | } |
536 | 536 | |
537 | - $typeAttributes['form']['fields'] = $fields; |
|
537 | + $typeAttributes[ 'form' ][ 'fields' ] = $fields; |
|
538 | 538 | } |
539 | 539 | } |
540 | 540 | |
@@ -545,7 +545,7 @@ discard block |
||
545 | 545 | |
546 | 546 | private function extendPostListColumns(): void |
547 | 547 | { |
548 | - Event::listen('backend.list.extendColumns', function (Lists $listWidget) { |
|
548 | + Event::listen('backend.list.extendColumns', function(Lists $listWidget) { |
|
549 | 549 | // Only for the Posts controller |
550 | 550 | if (!$listWidget->getController() instanceof PostsController) { |
551 | 551 | return; |
@@ -572,7 +572,7 @@ discard block |
||
572 | 572 | |
573 | 573 | private function extendPostFilterScopes(): void |
574 | 574 | { |
575 | - Event::listen('backend.filter.extendScopes', function (Filter $filterWidget) { |
|
575 | + Event::listen('backend.filter.extendScopes', function(Filter $filterWidget) { |
|
576 | 576 | if ($this->getSettings()->postTypesEnabled()) { |
577 | 577 | $filterWidget->addScopes([ |
578 | 578 | 'type' => [ |
@@ -76,14 +76,14 @@ discard block |
||
76 | 76 | */ |
77 | 77 | private function dropPostTypes() |
78 | 78 | { |
79 | - Schema::table('rainlab_blog_posts', static function ($table) { |
|
80 | - $table->dropForeign([PostType::TABLE_NAME . '_id']); |
|
79 | + Schema::table('rainlab_blog_posts', static function($table) { |
|
80 | + $table->dropForeign([ PostType::TABLE_NAME . '_id' ]); |
|
81 | 81 | |
82 | - $table->dropColumn(PostType::TABLE_NAME. '_attributes'); |
|
82 | + $table->dropColumn(PostType::TABLE_NAME . '_attributes'); |
|
83 | 83 | }); |
84 | 84 | |
85 | 85 | if (Schema::hasColumn('rainlab_blog_posts', PostType::TABLE_NAME . '_id')) { |
86 | - Schema::table('rainlab_blog_posts', static function ($table) { |
|
86 | + Schema::table('rainlab_blog_posts', static function($table) { |
|
87 | 87 | $table->dropColumn(PostType::TABLE_NAME . '_id'); |
88 | 88 | }); |
89 | 89 | } |
@@ -99,7 +99,7 @@ discard block |
||
99 | 99 | if (!Schema::hasTable(PostType::TABLE_NAME)) { |
100 | 100 | Schema::create( |
101 | 101 | PostType::TABLE_NAME, |
102 | - static function ($table) { |
|
102 | + static function($table) { |
|
103 | 103 | $table->engine = 'InnoDB'; |
104 | 104 | |
105 | 105 | $table->increments('id'); |
@@ -111,11 +111,11 @@ discard block |
||
111 | 111 | } |
112 | 112 | ); |
113 | 113 | |
114 | - Schema::table('rainlab_blog_posts', function ($table) { |
|
114 | + Schema::table('rainlab_blog_posts', function($table) { |
|
115 | 115 | $table->integer(PostType::TABLE_NAME . '_id')->unsigned()->nullable()->default(null); |
116 | 116 | $table->foreign(PostType::TABLE_NAME . '_id')->references('id')->on(PostType::TABLE_NAME)->onDelete('cascade'); |
117 | 117 | |
118 | - $table->text(PostType::TABLE_NAME. '_attributes')->nullable(); |
|
118 | + $table->text(PostType::TABLE_NAME . '_attributes')->nullable(); |
|
119 | 119 | }); |
120 | 120 | |
121 | 121 | DB::table(PostType::TABLE_NAME)->insert( |