@@ -16,23 +16,23 @@ |
||
| 16 | 16 | */ |
| 17 | 17 | public function boot() |
| 18 | 18 | { |
| 19 | - Validator::extend('absolute_or_relative_url', function ($attribute, $value, $parameters, $validator) { |
|
| 19 | + Validator::extend('absolute_or_relative_url', function($attribute, $value, $parameters, $validator) { |
|
| 20 | 20 | return Str::startsWith($value, '/') || Validator::make([$attribute => $value], [$attribute => 'url'])->passes(); |
| 21 | 21 | }, 'The :attribute should be a valid url (absolute or relative)'); |
| 22 | 22 | |
| 23 | - Validator::extend('relative_or_secure_url', function ($attribute, $value, $parameters) { |
|
| 23 | + Validator::extend('relative_or_secure_url', function($attribute, $value, $parameters) { |
|
| 24 | 24 | return Str::startsWith($value, '/') || filter_var($value, FILTER_VALIDATE_URL) !== false && Str::startsWith($value, 'https'); |
| 25 | 25 | }, 'The :attribute should be a valid url (relative or https)'); |
| 26 | 26 | |
| 27 | - Validator::extend('web_color', function ($attribute, $value, $parameters, $validator) { |
|
| 27 | + Validator::extend('web_color', function($attribute, $value, $parameters, $validator) { |
|
| 28 | 28 | return preg_match('/^([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/i', $value); |
| 29 | 29 | }); |
| 30 | 30 | |
| 31 | - Validator::extend('phone_number', function ($attribute, $value, $parameters) { |
|
| 31 | + Validator::extend('phone_number', function($attribute, $value, $parameters) { |
|
| 32 | 32 | return preg_match("/^[+]?[0-9\-\ ]*$/", $value); |
| 33 | 33 | }); |
| 34 | 34 | |
| 35 | - Validator::extend('validBlocks', function ($attribute, $value, $parameters, $validator) { |
|
| 35 | + Validator::extend('validBlocks', function($attribute, $value, $parameters, $validator) { |
|
| 36 | 36 | foreach ($value as $block) { |
| 37 | 37 | $cmsBlock = $this->app->make(BlockRepository::class)->buildFromCmsArray($block, false); |
| 38 | 38 | |
@@ -63,7 +63,7 @@ discard block |
||
| 63 | 63 | $relationRepository = $this->getModelRepository($relation, $model); |
| 64 | 64 | |
| 65 | 65 | if (!$keepExisting) { |
| 66 | - $object->$relation()->each(function ($repeaterElement) { |
|
| 66 | + $object->$relation()->each(function($repeaterElement) { |
|
| 67 | 67 | $repeaterElement->forceDelete(); |
| 68 | 68 | }); |
| 69 | 69 | } |
@@ -82,8 +82,8 @@ discard block |
||
| 82 | 82 | |
| 83 | 83 | $morph = $morph ?: $relation; |
| 84 | 84 | |
| 85 | - $morphFieldType = $morph.'_type'; |
|
| 86 | - $morphFieldId = $morph.'_id'; |
|
| 85 | + $morphFieldType = $morph . '_type'; |
|
| 86 | + $morphFieldId = $morph . '_id'; |
|
| 87 | 87 | |
| 88 | 88 | // if no relation field submitted, soft deletes all associated rows |
| 89 | 89 | if (!$relationFields) { |
@@ -211,8 +211,8 @@ discard block |
||
| 211 | 211 | |
| 212 | 212 | if (isset($relatedItemFormFields['medias'])) { |
| 213 | 213 | if (config('twill.media_library.translated_form_fields', false)) { |
| 214 | - Collection::make($relatedItemFormFields['medias'])->each(function ($rolesWithMedias, $locale) use (&$repeatersMedias, $relation, $relationItem) { |
|
| 215 | - $repeatersMedias[] = Collection::make($rolesWithMedias)->mapWithKeys(function ($medias, $role) use ($locale, $relation, $relationItem) { |
|
| 214 | + Collection::make($relatedItemFormFields['medias'])->each(function($rolesWithMedias, $locale) use (&$repeatersMedias, $relation, $relationItem) { |
|
| 215 | + $repeatersMedias[] = Collection::make($rolesWithMedias)->mapWithKeys(function($medias, $role) use ($locale, $relation, $relationItem) { |
|
| 216 | 216 | return [ |
| 217 | 217 | "blocks[$relation-$relationItem->id][$role][$locale]" => $medias, |
| 218 | 218 | ]; |
@@ -226,8 +226,8 @@ discard block |
||
| 226 | 226 | } |
| 227 | 227 | |
| 228 | 228 | if (isset($relatedItemFormFields['files'])) { |
| 229 | - Collection::make($relatedItemFormFields['files'])->each(function ($rolesWithFiles, $locale) use (&$repeatersFiles, $relation, $relationItem) { |
|
| 230 | - $repeatersFiles[] = Collection::make($rolesWithFiles)->mapWithKeys(function ($files, $role) use ($locale, $relation, $relationItem) { |
|
| 229 | + Collection::make($relatedItemFormFields['files'])->each(function($rolesWithFiles, $locale) use (&$repeatersFiles, $relation, $relationItem) { |
|
| 230 | + $repeatersFiles[] = Collection::make($rolesWithFiles)->mapWithKeys(function($files, $role) use ($locale, $relation, $relationItem) { |
|
| 231 | 231 | return [ |
| 232 | 232 | "blocks[$relation-$relationItem->id][$role][$locale]" => $files, |
| 233 | 233 | ]; |
@@ -71,11 +71,11 @@ discard block |
||
| 71 | 71 | |
| 72 | 72 | $blockRepository->bulkDelete($object->blocks()->pluck('id')->toArray()); |
| 73 | 73 | |
| 74 | - $this->getBlocks($object, $fields)->each(function ($block) use ($object, $blockRepository) { |
|
| 74 | + $this->getBlocks($object, $fields)->each(function($block) use ($object, $blockRepository) { |
|
| 75 | 75 | |
| 76 | 76 | $blockCreated = $blockRepository->create($block); |
| 77 | 77 | |
| 78 | - $block['blocks']->each(function ($childBlock) use ($blockCreated, $blockRepository) { |
|
| 78 | + $block['blocks']->each(function($childBlock) use ($blockCreated, $blockRepository) { |
|
| 79 | 79 | $childBlock['parent_id'] = $blockCreated->id; |
| 80 | 80 | $blockRepository->create($childBlock); |
| 81 | 81 | }); |
@@ -174,9 +174,9 @@ discard block |
||
| 174 | 174 | ]; |
| 175 | 175 | } |
| 176 | 176 | |
| 177 | - $fields['blocksFields'][] = Collection::make($block['content'])->filter(function ($value, $key) { |
|
| 177 | + $fields['blocksFields'][] = Collection::make($block['content'])->filter(function($value, $key) { |
|
| 178 | 178 | return $key !== "browsers"; |
| 179 | - })->map(function ($value, $key) use ($block) { |
|
| 179 | + })->map(function($value, $key) use ($block) { |
|
| 180 | 180 | return [ |
| 181 | 181 | 'name' => "blocks[$block->id][$key]", |
| 182 | 182 | 'value' => $value, |
@@ -189,15 +189,15 @@ discard block |
||
| 189 | 189 | |
| 190 | 190 | if ($medias) { |
| 191 | 191 | if (config('twill.media_library.translated_form_fields', false)) { |
| 192 | - $fields['blocksMedias'][] = Collection::make($medias)->mapWithKeys(function ($mediasByLocale, $locale) use ($block) { |
|
| 193 | - return Collection::make($mediasByLocale)->mapWithKeys(function ($value, $key) use ($block, $locale) { |
|
| 192 | + $fields['blocksMedias'][] = Collection::make($medias)->mapWithKeys(function($mediasByLocale, $locale) use ($block) { |
|
| 193 | + return Collection::make($mediasByLocale)->mapWithKeys(function($value, $key) use ($block, $locale) { |
|
| 194 | 194 | return [ |
| 195 | 195 | "blocks[$block->id][$key][$locale]" => $value, |
| 196 | 196 | ]; |
| 197 | 197 | }); |
| 198 | 198 | })->filter()->toArray(); |
| 199 | 199 | } else { |
| 200 | - $fields['blocksMedias'][] = Collection::make($medias)->mapWithKeys(function ($value, $key) use ($block) { |
|
| 200 | + $fields['blocksMedias'][] = Collection::make($medias)->mapWithKeys(function($value, $key) use ($block) { |
|
| 201 | 201 | return [ |
| 202 | 202 | "blocks[$block->id][$key]" => $value, |
| 203 | 203 | ]; |
@@ -208,8 +208,8 @@ discard block |
||
| 208 | 208 | $files = $blockFormFields['files']; |
| 209 | 209 | |
| 210 | 210 | if ($files) { |
| 211 | - Collection::make($files)->each(function ($rolesWithFiles, $locale) use (&$fields, $block) { |
|
| 212 | - $fields['blocksFiles'][] = Collection::make($rolesWithFiles)->mapWithKeys(function ($files, $role) use ($locale, $block) { |
|
| 211 | + Collection::make($files)->each(function($rolesWithFiles, $locale) use (&$fields, $block) { |
|
| 212 | + $fields['blocksFiles'][] = Collection::make($rolesWithFiles)->mapWithKeys(function($files, $role) use ($locale, $block) { |
|
| 213 | 213 | return [ |
| 214 | 214 | "blocks[$block->id][$role][$locale]" => $files, |
| 215 | 215 | ]; |
@@ -248,9 +248,9 @@ discard block |
||
| 248 | 248 | */ |
| 249 | 249 | protected function getBlockBrowsers($block) |
| 250 | 250 | { |
| 251 | - return Collection::make($block['content']['browsers'])->mapWithKeys(function ($ids, $relation) use ($block) { |
|
| 251 | + return Collection::make($block['content']['browsers'])->mapWithKeys(function($ids, $relation) use ($block) { |
|
| 252 | 252 | if (Schema::hasTable(config('twill.related_table', 'twill_related')) && $block->getRelated($relation)->isNotEmpty()) { |
| 253 | - $items = $this->getFormFieldsForRelatedBrowser($block, $relation);; |
|
| 253 | + $items = $this->getFormFieldsForRelatedBrowser($block, $relation); ; |
|
| 254 | 254 | } else { |
| 255 | 255 | $relationRepository = $this->getModelRepository($relation); |
| 256 | 256 | $relatedItems = $relationRepository->get([], ['id' => $ids], [], -1); |
@@ -260,9 +260,9 @@ discard block |
||
| 260 | 260 | $sortedRelatedItems[$item->id] = $item; |
| 261 | 261 | } |
| 262 | 262 | |
| 263 | - $items = Collection::make(array_values($sortedRelatedItems))->filter(function ($value) { |
|
| 263 | + $items = Collection::make(array_values($sortedRelatedItems))->filter(function($value) { |
|
| 264 | 264 | return is_object($value); |
| 265 | - })->map(function ($relatedElement) use ($relation) { |
|
| 265 | + })->map(function($relatedElement) use ($relation) { |
|
| 266 | 266 | return [ |
| 267 | 267 | 'id' => $relatedElement->id, |
| 268 | 268 | 'name' => $relatedElement->titleInBrowser ?? $relatedElement->title, |
@@ -23,7 +23,7 @@ discard block |
||
| 23 | 23 | $mediasCollection = Collection::make(); |
| 24 | 24 | $mediasFromFields = $this->getMedias($fields); |
| 25 | 25 | |
| 26 | - $mediasFromFields->each(function ($media) use ($object, $mediasCollection) { |
|
| 26 | + $mediasFromFields->each(function($media) use ($object, $mediasCollection) { |
|
| 27 | 27 | $newMedia = Media::withTrashed()->find(is_array($media['id']) ? Arr::first($media['id']) : $media['id']); |
| 28 | 28 | $pivot = $newMedia->newPivot($object, Arr::except($media, ['id']), config('twill.mediables_table', 'twill_mediables'), true); |
| 29 | 29 | $newMedia->setRelation('pivot', $pivot); |
@@ -48,7 +48,7 @@ discard block |
||
| 48 | 48 | |
| 49 | 49 | $object->medias()->sync([]); |
| 50 | 50 | |
| 51 | - $this->getMedias($fields)->each(function ($media) use ($object) { |
|
| 51 | + $this->getMedias($fields)->each(function($media) use ($object) { |
|
| 52 | 52 | $object->medias()->attach($media['id'], Arr::except($media, ['id'])); |
| 53 | 53 | }); |
| 54 | 54 | } |
@@ -77,7 +77,7 @@ discard block |
||
| 77 | 77 | if (in_array($role, array_keys($this->model->mediasParams ?? [])) |
| 78 | 78 | || in_array($role, array_keys(config('twill.block_editor.crops', []))) |
| 79 | 79 | || in_array($role, array_keys(config('twill.settings.crops', [])))) { |
| 80 | - Collection::make($mediasForRole)->each(function ($media) use (&$medias, $role, $locale) { |
|
| 80 | + Collection::make($mediasForRole)->each(function($media) use (&$medias, $role, $locale) { |
|
| 81 | 81 | $customMetadatas = $media['metadatas']['custom'] ?? []; |
| 82 | 82 | if (isset($media['crops']) && !empty($media['crops'])) { |
| 83 | 83 | foreach ($media['crops'] as $cropName => $cropData) { |
@@ -45,8 +45,8 @@ discard block |
||
| 45 | 45 | if (Schema::hasTable(config('twill.related_table', 'twill_related'))) { |
| 46 | 46 | $relatedItems = Collection::make(); |
| 47 | 47 | |
| 48 | - Collection::make($fields['browsers'])->each(function ($items, $browserName) use ($object, &$relatedItems) { |
|
| 49 | - Collection::make($items)->each(function ($item) use ($browserName, &$relatedItems) { |
|
| 48 | + Collection::make($fields['browsers'])->each(function($items, $browserName) use ($object, &$relatedItems) { |
|
| 49 | + Collection::make($items)->each(function($item) use ($browserName, &$relatedItems) { |
|
| 50 | 50 | try { |
| 51 | 51 | $repository = $this->getModelRepository($item['endpointType'] ?? $browserName); |
| 52 | 52 | $relatedItems->push((object) [ |
@@ -74,7 +74,7 @@ discard block |
||
| 74 | 74 | { |
| 75 | 75 | if (Schema::hasTable(config('twill.related_table', 'twill_related'))) { |
| 76 | 76 | if (isset($fields['browsers'])) { |
| 77 | - Collection::make($fields['browsers'])->each(function ($items, $browserName) use ($object) { |
|
| 77 | + Collection::make($fields['browsers'])->each(function($items, $browserName) use ($object) { |
|
| 78 | 78 | $object->saveRelated($items, $browserName); |
| 79 | 79 | }); |
| 80 | 80 | } |
@@ -102,14 +102,14 @@ discard block |
||
| 102 | 102 | { |
| 103 | 103 | $blocksFromConfig = $this->config->get('twill.block_editor.' . ($repeater ? 'repeaters' : 'blocks')); |
| 104 | 104 | |
| 105 | - $block['type'] = Collection::make($blocksFromConfig)->search(function ($blockConfig) use ($block) { |
|
| 105 | + $block['type'] = Collection::make($blocksFromConfig)->search(function($blockConfig) use ($block) { |
|
| 106 | 106 | return $blockConfig['component'] === $block['type']; |
| 107 | 107 | }); |
| 108 | 108 | |
| 109 | 109 | $block['content'] = empty($block['content']) ? new \stdClass : (object) $block['content']; |
| 110 | 110 | |
| 111 | 111 | if ($block['browsers']) { |
| 112 | - $browsers = Collection::make($block['browsers'])->map(function ($items) { |
|
| 112 | + $browsers = Collection::make($block['browsers'])->map(function($items) { |
|
| 113 | 113 | return Collection::make($items)->pluck('id'); |
| 114 | 114 | })->toArray(); |
| 115 | 115 | |
@@ -57,7 +57,7 @@ |
||
| 57 | 57 | // TODO: document this and actually think about moving to queuable job after content type updates |
| 58 | 58 | public function handle() |
| 59 | 59 | { |
| 60 | - $this->db->table(config('twill.mediables_table', 'twill_mediables'))->orderBy('id')->chunk(100, function ($attached_medias) { |
|
| 60 | + $this->db->table(config('twill.mediables_table', 'twill_mediables'))->orderBy('id')->chunk(100, function($attached_medias) { |
|
| 61 | 61 | foreach ($attached_medias as $attached_media) { |
| 62 | 62 | $uuid = Media::withTrashed()->find($attached_media->media_id, ['uuid'])->uuid; |
| 63 | 63 | |