goellner / statamic-assets-organized

Organizes Statamic assets in subdirectories
MIT License
1 stars 1 forks source link

dev.ERROR: ErrorException: mb_substr() expects parameter 1 to be string #5

Open madsem opened 5 years ago

madsem commented 5 years ago

Just tried this plugin, hoping to get order in the asset library, it would be extremely helpful if I can get it to work :)

But sadly I can't even save a new entry, the files are uploaded and also moved to a folder named according to the slug. But the CP form isn't saving and the log shows a huge trace.

Statamic 2.11.6 Ubuntu 16.04 Nginx 1.11.13

No plugins installed besides this one.

[2019-01-14 15:00:44] dev.ERROR: ErrorException: mb_substr() expects parameter 1 to be string, array given in /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Support/Str.php:430
Stack trace:
#0 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleError(2, 'mb_substr() exp...', '/home/vagrant/c...', 430, Array)
#1 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Support/Str.php(430): mb_substr(Array, -3, NULL, 'UTF-8')
#2 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Support/Str.php(87): Illuminate\Support\Str::substr(Array, -3)
#3 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Support/helpers.php(483): Illuminate\Support\Str::endsWith(Array, Array)
#4 /home/vagrant/code/dev.vm/statamic/core/Providers/ValidationServiceProvider.php(97): ends_with(Array, Array)
#5 [internal function]: Statamic\Providers\ValidationServiceProvider->Statamic\Providers\{closure}(Array, 'assets')
#6 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Support/Collection.php(469): array_map(Object(Closure), Array, Array)
#7 /home/vagrant/code/dev.vm/statamic/core/Providers/ValidationServiceProvider.php(98): Illuminate\Support\Collection->map(Object(Closure))
#8 [internal function]: Statamic\Providers\ValidationServiceProvider->Statamic\Providers\{closure}('fields.app_icon', Array, Array, Object(Illuminate\Validation\Validator))
#9 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Validation/Validator.php(2604): call_user_func_array(Object(Closure), Array)
#10 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Validation/Validator.php(2691): Illuminate\Validation\Validator->callExtension('ext', Array)
#11 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Validation/Validator.php(363): Illuminate\Validation\Validator->__call('validateExt', Array)
#12 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Validation/Validator.php(315): Illuminate\Validation\Validator->validate('fields.app_icon', 'Ext')
#13 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Validation/Validator.php(336): Illuminate\Validation\Validator->passes()
#14 /home/vagrant/code/dev.vm/statamic/core/CP/Publish/Publisher.php(220): Illuminate\Validation\Validator->fails()
#15 /home/vagrant/code/dev.vm/statamic/core/CP/Publish/Publisher.php(253): Statamic\CP\Publish\Publisher->validate(Array, Array, Array)
#16 /home/vagrant/code/dev.vm/statamic/core/CP/Publish/Publisher.php(105): Statamic\CP\Publish\Publisher->validateSubmission(Array)
#17 /home/vagrant/code/dev.vm/statamic/core/CP/Publish/EntryPublisher.php(25): Statamic\CP\Publish\Publisher->publish()
#18 /home/vagrant/code/dev.vm/statamic/core/Http/Controllers/PublishController.php(101): Statamic\CP\Publish\EntryPublisher->publish()
#19 [internal function]: Statamic\Http\Controllers\PublishController->save(Object(Illuminate\Http\Request))
#20 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(256): call_user_func_array(Array, Array)
#21 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(164): Illuminate\Routing\Controller->callAction('save', Array)
#22 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(112): Illuminate\Routing\ControllerDispatcher->call(Object(Statamic\Http\Controllers\PublishEntryController), Object(Illuminate\Routing\Route), 'save')
#23 [internal function]: Illuminate\Routing\ControllerDispatcher->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#24 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(139): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#25 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#26 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#27 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(114): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#28 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(68): Illuminate\Routing\ControllerDispatcher->callWithinStack(Object(Statamic\Http\Controllers\PublishEntryController), Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request), 'save')
#29 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/Route.php(203): Illuminate\Routing\ControllerDispatcher->dispatch(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request), 'Statamic\\Http\\C...', 'save')
#30 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/Route.php(134): Illuminate\Routing\Route->runWithCustomDispatcher(Object(Illuminate\Http\Request))
#31 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/Router.php(708): Illuminate\Routing\Route->run(Object(Illuminate\Http\Request))
#32 [internal function]: Illuminate\Routing\Router->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#33 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(139): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#34 /home/vagrant/code/dev.vm/statamic/core/Http/Middleware/CP/Authenticate.php(62): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#35 [internal function]: Statamic\Http\Middleware\CP\Authenticate->handle(Object(Illuminate\Http\Request), Object(Closure))
#36 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#37 /home/vagrant/code/dev.vm/statamic/core/Http/Middleware/Outpost.php(48): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#38 [internal function]: Statamic\Http\Middleware\Outpost->handle(Object(Illuminate\Http\Request), Object(Closure))
#39 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#40 /home/vagrant/code/dev.vm/statamic/core/Http/Middleware/CP/Localize.php(25): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#41 [internal function]: Statamic\Http\Middleware\CP\Localize->handle(Object(Illuminate\Http\Request), Object(Closure))
#42 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#43 /home/vagrant/code/dev.vm/statamic/core/Http/Middleware/CP/DefaultLocale.php(28): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#44 [internal function]: Statamic\Http\Middleware\CP\DefaultLocale->handle(Object(Illuminate\Http\Request), Object(Closure))
#45 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#46 /home/vagrant/code/dev.vm/statamic/core/Http/Middleware/CP/AddHeaders.php(19): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#47 [internal function]: Statamic\Http\Middleware\CP\AddHeaders->handle(Object(Illuminate\Http\Request), Object(Closure))
#48 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#49 /home/vagrant/code/dev.vm/statamic/core/Http/Middleware/CpEnabled.php(23): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#50 [internal function]: Statamic\Http\Middleware\CpEnabled->handle(Object(Illuminate\Http\Request), Object(Closure))
#51 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#52 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#53 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#54 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/Router.php(710): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#55 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/Router.php(674): Illuminate\Routing\Router->runRouteWithinStack(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request))
#56 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Routing/Router.php(635): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
#57 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(236): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
#58 [internal function]: Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(Object(Illuminate\Http\Request))
#59 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(139): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#60 /home/vagrant/code/dev.vm/statamic/vendor/barryvdh/laravel-debugbar/src/Middleware/Debugbar.php(51): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#61 [internal function]: Barryvdh\Debugbar\Middleware\Debugbar->handle(Object(Illuminate\Http\Request), Object(Closure))
#62 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#63 /home/vagrant/code/dev.vm/statamic/core/Http/Middleware/TransformsRequest.php(31): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#64 [internal function]: Statamic\Http\Middleware\TransformsRequest->handle(Object(Illuminate\Http\Request), Object(Closure))
#65 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#66 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#67 [internal function]: Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle(Object(Illuminate\Http\Request), Object(Closure))
#68 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#69 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#70 [internal function]: Illuminate\View\Middleware\ShareErrorsFromSession->handle(Object(Illuminate\Http\Request), Object(Closure))
#71 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#72 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(62): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#73 [internal function]: Illuminate\Session\Middleware\StartSession->handle(Object(Illuminate\Http\Request), Object(Closure))
#74 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#75 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#76 [internal function]: Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle(Object(Illuminate\Http\Request), Object(Closure))
#77 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#78 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(59): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#79 [internal function]: Illuminate\Cookie\Middleware\EncryptCookies->handle(Object(Illuminate\Http\Request), Object(Closure))
#80 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#81 /home/vagrant/code/dev.vm/statamic/core/StaticCaching/Middleware/Retrieve.php(33): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#82 [internal function]: Statamic\StaticCaching\Middleware\Retrieve->handle(Object(Illuminate\Http\Request), Object(Closure))
#83 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#84 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(44): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#85 [internal function]: Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle(Object(Illuminate\Http\Request), Object(Closure))
#86 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#87 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#88 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#89 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(122): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#90 /home/vagrant/code/dev.vm/statamic/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(87): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
#91 /home/vagrant/code/dev.vm/index.php(155): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#92 {main}  
madsem commented 5 years ago

Okay, I know how it happens, but not the why :)

I have validations in my assets_organized fields:

validate: "required|ext:jpg,jpeg,gif,png"

When I take this line out, it works like a charm