FriendsOfFlarum Best Answer
- Edited
Hi! I'm having problem enabling this extension.
Console Error:
Forum Log: [2021-08-26 08:40:44] flarum.ERROR: TypeError: explode(): Argument #2 ($string) must be of type string, array given in /app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php:25
Stack trace:
#0 /app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php(25): explode()
#1 [internal function]: Illuminate\Filesystem\Filesystem::{closure}()
#2 /app/vendor/flarum/core/src/Database/Migrator.php(202): call_user_func()
#3 /app/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\Database\Migrator->runClosureMigration()
#4 /app/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\Database\Migrator->runUp()
#5 /app/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\Database\Migrator->runMigrationList()
#6 /app/vendor/flarum/core/src/Extension/Extension.php(482): Flarum\Database\Migrator->run()
#7 /app/vendor/flarum/core/src/Extension/ExtensionManager.php(311): Flarum\Extension\Extension->migrate()
#8 /app/vendor/flarum/core/src/Extension/ExtensionManager.php(182): Flarum\Extension\ExtensionManager->migrate()
#9 /app/vendor/flarum/core/src/Api/Controller/UpdateExtensionController.php(46): Flarum\Extension\ExtensionManager->enable()
#10 /app/vendor/flarum/core/src/Http/RouteHandlerFactory.php(41): Flarum\Api\Controller\UpdateExtensionController->handle()
#11 /app/vendor/flarum/core/src/Http/Middleware/ExecuteRoute.php(27): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}()
#12 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ExecuteRoute->process()
#13 /app/vendor/kilowhat/flarum-ext-audit-free/src/Middlewares/SetLoggerActor.php(28): Laminas\Stratigility\Next->handle()
#14 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Kilowhat\Audit\Middlewares\SetLoggerActor->process()
#15 /app/vendor/flarum/core/src/Api/Middleware/ThrottleApi.php(33): Laminas\Stratigility\Next->handle()
#16 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Api\Middleware\ThrottleApi->process()
#17 /app/vendor/flarum/core/src/Http/Middleware/CheckCsrfToken.php(44): Laminas\Stratigility\Next->handle()
#18 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\CheckCsrfToken->process()
#19 /app/vendor/flarum/core/src/Http/Middleware/ResolveRoute.php(67): Laminas\Stratigility\Next->handle()
#20 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ResolveRoute->process()
#21 /app/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Laminas\Stratigility\Next->handle()
#22 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\SetLocale->process()
#23 /app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(56): Laminas\Stratigility\Next->handle()
#24 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\AuthenticateWithHeader->process()
#25 /app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(31): Laminas\Stratigility\Next->handle()
#26 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\AuthenticateWithSession->process()
#27 /app/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(52): Laminas\Stratigility\Next->handle()
#28 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\RememberFromCookie->process()
#29 /app/vendor/flarum/core/src/Http/Middleware/StartSession.php(61): Laminas\Stratigility\Next->handle()
#30 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\StartSession->process()
#31 /app/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(29): Laminas\Stratigility\Next->handle()
#32 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Api\Middleware\FakeHttpMethods->process()
#33 /app/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(28): Laminas\Stratigility\Next->handle()
#34 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ParseJsonBody->process()
#35 /app/vendor/flarum/core/src/Http/Middleware/HandleErrors.php(57): Laminas\Stratigility\Next->handle()
#36 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\HandleErrors->process()
#37 /app/vendor/flarum/core/src/Http/Middleware/InjectActorReference.php(25): Laminas\Stratigility\Next->handle()
#38 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\InjectActorReference->process()
#39 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(76): Laminas\Stratigility\Next->handle()
#40 /app/vendor/middlewares/request-handler/src/RequestHandler.php(84): Laminas\Stratigility\MiddlewarePipe->process()
#41 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\RequestHandler->process()
#42 /app/vendor/middlewares/base-path-router/src/BasePathRouter.php(101): Laminas\Stratigility\Next->handle()
#43 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\BasePathRouter->process()
#44 /app/vendor/laminas/laminas-stratigility/src/Middleware/OriginalMessages.php(36): Laminas\Stratigility\Next->handle()
#45 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Laminas\Stratigility\Middleware\OriginalMessages->process()
#46 /app/vendor/middlewares/base-path/src/BasePath.php(73): Laminas\Stratigility\Next->handle()
#47 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\BasePath->process()
#48 /app/vendor/flarum/core/src/Http/Middleware/ProcessIp.php(24): Laminas\Stratigility\Next->handle()
#49 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ProcessIp->process()
#50 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(76): Laminas\Stratigility\Next->handle()
#51 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(65): Laminas\Stratigility\MiddlewarePipe->process()
#52 /app/vendor/laminas/laminas-httphandlerrunner/src/RequestHandlerRunner.php(96): Laminas\Stratigility\MiddlewarePipe->handle()
#53 /app/vendor/flarum/core/src/Http/Server.php(44): Laminas\HttpHandlerRunner\RequestHandlerRunner->run()
#54 /app/public/index.php(22): Flarum\Http\Server->listen()
#55 {main}
[2021-08-26 08:40:51] flarum.ERROR: TypeError: explode(): Argument #2 ($string) must be of type string, array given in /app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php:25
Stack trace:
#0 /app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php(25): explode()
#1 [internal function]: Illuminate\Filesystem\Filesystem::{closure}()
#2 /app/vendor/flarum/core/src/Database/Migrator.php(202): call_user_func()
#3 /app/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\Database\Migrator->runClosureMigration()
#4 /app/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\Database\Migrator->runUp()
#5 /app/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\Database\Migrator->runMigrationList()
#6 /app/vendor/flarum/core/src/Extension/Extension.php(482): Flarum\Database\Migrator->run()
#7 /app/vendor/flarum/core/src/Extension/ExtensionManager.php(311): Flarum\Extension\Extension->migrate()
#8 /app/vendor/flarum/core/src/Extension/ExtensionManager.php(182): Flarum\Extension\ExtensionManager->migrate()
#9 /app/vendor/flarum/core/src/Api/Controller/UpdateExtensionController.php(46): Flarum\Extension\ExtensionManager->enable()
#10 /app/vendor/flarum/core/src/Http/RouteHandlerFactory.php(41): Flarum\Api\Controller\UpdateExtensionController->handle()
#11 /app/vendor/flarum/core/src/Http/Middleware/ExecuteRoute.php(27): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}()
#12 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ExecuteRoute->process()
#13 /app/vendor/kilowhat/flarum-ext-audit-free/src/Middlewares/SetLoggerActor.php(28): Laminas\Stratigility\Next->handle()
#14 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Kilowhat\Audit\Middlewares\SetLoggerActor->process()
#15 /app/vendor/flarum/core/src/Api/Middleware/ThrottleApi.php(33): Laminas\Stratigility\Next->handle()
#16 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Api\Middleware\ThrottleApi->process()
#17 /app/vendor/flarum/core/src/Http/Middleware/CheckCsrfToken.php(44): Laminas\Stratigility\Next->handle()
#18 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\CheckCsrfToken->process()
#19 /app/vendor/flarum/core/src/Http/Middleware/ResolveRoute.php(67): Laminas\Stratigility\Next->handle()
#20 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ResolveRoute->process()
#21 /app/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Laminas\Stratigility\Next->handle()
#22 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\SetLocale->process()
#23 /app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(56): Laminas\Stratigility\Next->handle()
#24 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\AuthenticateWithHeader->process()
#25 /app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(31): Laminas\Stratigility\Next->handle()
#26 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\AuthenticateWithSession->process()
#27 /app/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(52): Laminas\Stratigility\Next->handle()
#28 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\RememberFromCookie->process()
#29 /app/vendor/flarum/core/src/Http/Middleware/StartSession.php(61): Laminas\Stratigility\Next->handle()
#30 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\StartSession->process()
#31 /app/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(29): Laminas\Stratigility\Next->handle()
#32 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Api\Middleware\FakeHttpMethods->process()
#33 /app/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(28): Laminas\Stratigility\Next->handle()
#34 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ParseJsonBody->process()
#35 /app/vendor/flarum/core/src/Http/Middleware/HandleErrors.php(57): Laminas\Stratigility\Next->handle()
#36 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\HandleErrors->process()
#37 /app/vendor/flarum/core/src/Http/Middleware/InjectActorReference.php(25): Laminas\Stratigility\Next->handle()
#38 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\InjectActorReference->process()
#39 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(76): Laminas\Stratigility\Next->handle()
#40 /app/vendor/middlewares/request-handler/src/RequestHandler.php(84): Laminas\Stratigility\MiddlewarePipe->process()
#41 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\RequestHandler->process()
#42 /app/vendor/middlewares/base-path-router/src/BasePathRouter.php(101): Laminas\Stratigility\Next->handle()
#43 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\BasePathRouter->process()
#44 /app/vendor/laminas/laminas-stratigility/src/Middleware/OriginalMessages.php(36): Laminas\Stratigility\Next->handle()
#45 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Laminas\Stratigility\Middleware\OriginalMessages->process()
#46 /app/vendor/middlewares/base-path/src/BasePath.php(73): Laminas\Stratigility\Next->handle()
#47 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\BasePath->process()
#48 /app/vendor/flarum/core/src/Http/Middleware/ProcessIp.php(24): Laminas\Stratigility\Next->handle()
#49 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ProcessIp->process()
#50 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(76): Laminas\Stratigility\Next->handle()
#51 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(65): Laminas\Stratigility\MiddlewarePipe->process()
#52 /app/vendor/laminas/laminas-httphandlerrunner/src/RequestHandlerRunner.php(96): Laminas\Stratigility\MiddlewarePipe->handle()
#53 /app/vendor/flarum/core/src/Http/Server.php(44): Laminas\HttpHandlerRunner\RequestHandlerRunner->run()
#54 /app/public/index.php(22): Flarum\Http\Server->listen()
#55 {main}
I'm using freeflarum and SKevo said that I should contact the author of the extension.
TheMarci You have an array instead of a string when migrating tables and doing explode. What's on the 25th line here?
/app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php:25
- Edited
Provokator86 I don't know. I'm using FreeFlarum so I guess I can't do much about it.
This is an instance of this error FriendsOfFlarum/best-answer51
There's no easy workaround, particularly if you don't have access to the database. We'll need to fix it in the extension.
Extension makes forum unable to load on a FreeFlarum forum (ref.).
Using Best Answer ver. 1.1.2
PHP Flarum Info:
Flarum core 1.0.4
PHP version: 8.0.9
Loaded extensions: Core, date, libxml, openssl, pcre, zlib, filter, hash, json, pcntl, Reflection, SPL, session, standard, sodium, mysqlnd, PDO, xml, calendar, ctype, curl, dom, mbstring, FFI, fileinfo, ftp, gd, gettext, gmp, iconv, intl, exif, mysqli, pdo_mysql, Phar, posix, readline, shmop, SimpleXML, sockets, sysvmsg, sysvsem, sysvshm, tokenizer, xmlreader, xmlwriter, xsl, Zend OPcache
+---------------------------------+--------------+--------+
| Flarum Extensions | | |
+---------------------------------+--------------+--------+
| ID | Version | Commit |
+---------------------------------+--------------+--------+
| flarum-flags | v1.0.0 | |
| flarum-approval | v1.0.0 | |
| flarum-tags | v1.0.3 | |
| flarum-suspend | v1.0.0 | |
| flarum-markdown | v1.0.1 | |
| v17development-seo | v1.8.0 | |
| fof-upload | 1.0.2 | |
| fof-socialprofile | 1.1.0 | |
| fof-share-social | 1.0.0 | |
| fof-nightmode | 1.0.0 | |
| fof-formatting | 1.0.0 | |
| fof-byobu | 1.0.0-beta.9 | |
| malago-achievements | 0.5.0 | |
| michaelbelgium-discussion-views | v7.0.0 | |
| matteocontrini-imgur-upload | v3.9.1 | |
| fof-user-bio | 1.0.0 | |
| fof-profile-image-crop | 1.0.0 | |
| fof-pages | 1.0.1 | |
| fof-discussion-thumbnail | 1.0.1 | |
| antoinefr-online | v1.0.1 | |
| migratetoflarum-canonical | 1.0.0 | |
| fof-default-user-preferences | 1.0.0 | |
| fof-sitemap | 1.0.0 | |
| flarum-subscriptions | v1.0.0 | |
| flarum-sticky | v1.0.0 | |
| flarum-statistics | v1.0.0 | |
| flarum-mentions | v1.0.0 | |
| flarum-lock | v1.0.0 | |
| flarum-likes | v1.0.0 | |
| flarum-lang-english | v1.0.0 | |
| flarum-emoji | v1.0.0 | |
| flarum-bbcode | v1.0.0 | |
| fof-polls | 1.0.3 | |
| fof-reactions | 1.0.0 | |
| fof-user-directory | 1.0.2 | |
| jslirola-login2seeplus | v0.2 | |
| fof-links | 1.0.0 | |
| therealsujitk-gifs | v4.1.0 | |
| fof-default-group | 1.0.0 | |
| fof-merge-discussions | 1.0.0 | |
| fof-oauth | 1.0.1 | |
| fof-spamblock | 1.0.0 | |
| fof-split | 1.0.0 | |
| sycho-profile-cover | v1.3.0 | |
| ianm-html-head | 1.0.0 | |
+---------------------------------+--------------+--------+
I suspected that this error was related to the Tags extension not being enabled, but enabling it and clearing cache & migrating DB didn't fix the issue.
No server-side logs. That's all that I know.
How can I install this on Free Flarum?
It Just Says: Oops! Something went wrong. Please reload the page and try again
When I try to put on FOF Best Answer It says this: Oops! Something went wrong. Please reload the page and try again
- Edited
Winky it is related to the issue that I posted above, please tell me your forum name and I'll fix it for you
Edit: See https://discuss.flarum.org/d/7585/3080, it should be okay now(?)
- Edited
Migrating extension: fof-best-answer
Migrated: 2021_08_09_add_qna_column_to_tags_table
Migrated: 2021_08_10_add_reminders_column_to_tags_table
PHP Warning: explode() expects parameter 2 to be string, array given in /www/wwwroot/unswforum.com/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php on line 25
Warning: explode() expects parameter 2 to be string, array given in /www/wwwroot/unswforum.com/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php on line 25
PHP Warning: Invalid argument supplied for foreach() in /www/wwwroot/unswforum.com/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php on line 25
Warning: Invalid argument supplied for foreach() in /www/wwwroot/unswforum.com/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php on line 25
Migrated: 2021_08_15_migrate_reminder_settings
1.1.2, same problem here...It doesn't work after updating. I have to disable the extension.
Update:
1.1.3 still can't select the best answer(no button in posts). I find nothing in the console.
1.0.1 works well.
1.1.4
Well, this started on 1.1.0
but has not been announced so far, so lumping it all together here
- Add filtering by
solved
,unsolved
orall
- Ability to enable/disable specific tags for Best Answers
- Ability to enable/disable BA reminders for specific tags
Start a discussion
button now showsAsk a question
when within a BA enabled tag. (can be adjusted using FoF Linguist
Important
When updating from previous versions, you must either enable all tags for best answer
or individually from the tag configuration modal (2nd screenshot as an example)
Updating
composer require fof/best-answer:"*"
php flarum cache:clear
php flarum migrate
Start a discussion button now shows Ask a question when within a BA enabled tag. (can be adjusted using FoF Linguist
this is really a cool feature to have! may i ask you a quick question
when it is enabled for all tags the button is changing to "ask a question" but it is not changing at home, following, tags pages. so this need to be changed using the linguist right?