Coder Social home page Coder Social logo

reflar / polls Goto Github PK

View Code? Open in Web Editor NEW
14.0 2.0 14.0 3.52 MB

[ABANDONED] See https://github.com/FriendsOfFlarum/polls

License: MIT License

PHP 53.02% JavaScript 42.55% CSS 4.44%
forum flarum extension flarum-extension php javascript mithriljs questions answers voting

polls's Introduction

Polls by ReFlar

MIT License Latest Stable Version

A Flarum extension that adds polls to your discussions.

Installation ๐ŸŽˆ

Install it with composer:

composer require reflar/polls

TODO ๐Ÿ“

  • Translations
  • Edit a Poll
  • Remove a Poll
  • Poll customize settings
  • Expiry date field of a poll

Issues ๐Ÿ›

Open an issue on Github

Suggestions? Please feel free to give me some suggestions

Links ๐Ÿ”—

polls's People

Contributors

dsevillamartin avatar evrifaessa avatar glombers avatar hiobi avatar kazerog avatar kyrnedev avatar maybeken avatar pepar avatar ralkage avatar shahiem avatar spaeps avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

polls's Issues

Add Locale for Polls

Basic en.yml translations are welcomed first, others can submit PR's for other languages.

Gameplan: Current State of Extension

It seems as if the latest version of this release has a lot of bugs, possibly more front-end if anything.

Bugs I've noticed myself:

  • The following bugs seem to be specific to Firefox browser users (such as myself):
    • Currently unable to edit a poll successfully.
    • Currently unable to vote on poll options successfully.
  • The following bugs are not browser specific:
    • When reaching the maximum amount of poll options you can add (10 currently), then decide to remove one (after reaching the maximum amount of options), you become unable to add more poll options even when the maximum is no longer reached.
    • Lots of type coercion's in the front-end where != should be !== and == should be === (a good example would be PollModal.js)
    • Lots of unused components/imports in the front-end (these cause clutter and are unnecessary to keep around if they are not being used).
    • Some parameters aren't being used at all (such as "number" in the choicePlaceholder() method/function).

Let me know if you need any help trying to fix some of these issues (I've been digging into some for about an hour now)

The modal to see the voters is not displayed

Description

The modal to see the voters is not displayed
same error here : https://discuss.flarum.org/d/9762-poll/112

Steps to Reproduce

  1. click on "view voters"

Technical Details

  • Version of Flarum (x.y.z): beta8
  • Version of extension (x.y.z): 1.3.0
  • The webserver you are running (Apache, Nginx, etc): nginx
  • PHP version (x.y.z): 7.2.10

error in web console

ShowVotersModal.js:31 Uncaught TypeError: Cannot read property 'id' of undefined
    at ShowVotersModal.js:31
    at Array.map (<anonymous>)
    at e.a.getUsers (ShowVotersModal.js:26)
    at ShowVotersModal.js:61
    at Array.map (<anonymous>)
    at e.a.content (ShowVotersModal.js:58)
    at e.n.view (Modal.js:46)
    at e.render (Component.js:102)
    at e.n.view (ModalManager.js:18)
    at e.render (Component.js:102)

Drop Support of Translations (Other than English)

As we transition this extension to the FoF namespace, we will eventually drop support of current and future language translations (other than English) in favour of 3rd party translation extensions.

Cannot delete user after enabling

Instructions (MUST READ FIRST)

Before we can address your issues and concerns with the behavior of our work, we require every bit of detail from you to the fullest extent of this form. If this form is not properly filled out to it's entirity, we, ReFlar, reserve the right to close your issue due to lack of information thereof as well as not following instructions.

  • By agreeing to these terms, you can simply leave this checkbox checked.

Please Mentally Go Over the Following Items Before Filling Out this Form:

  • Can you reproduce this problem in debug mode?
    ~~I'm lazy and I'd like to skip this ๐Ÿ˜ด ~~
  • Are you running the latest version of this extension?
    Yes, I've installed it today.
  • Is your Flarum up-to-date?
    Beta 8.

Description

[Description of the bug or feature]
After enabling, I cannot delete a specificated user. After disabling this plugin I cannot delete as well. Maybe I think it modified the database?

Steps to Reproduce

  1. [First Step]
    Open a user's page.
  2. [Second Step]
    Delete it.
  3. [and so on...]
    Web page shows that there is an error (Server returns 500)

Expected Behavior: [What you expected to happen]
It is deleted correctly without any errors.

Actual Behavior: [What actually happened (screenshots are welcomed!)]
See information below.

Flarum/Server/Client Information

I'm using https://github.com/mondediefr/docker-flarum .

Technical Details

  • Version of Flarum (x.y.z): v0.1.0-beta.8.1
  • Version of extension (x.y.z): 1.3.2
  • [OPTIONAL] Website URL where the bug is visible (https://example.com): productforum.yuuta.moe (Chinese)
  • The webserver you are running (Apache, Nginx, etc): Nginx
  • PHP version (x.y.z): PHP7.2
  • Hosted environment (Shared, VPS, etc): GCE (Docker)
  • Hosting provider (https://some-amazing-provider.com): Is it necessary? The domain is registered in Namecheap.

Flarum Info

Flarum core 0.1.0-beta.8.1
PHP version: 7.2.13
Loaded extensions: Core, date, libxml, pcre, zlib, filter, hash, readline, Reflection, SPL, session, ctype, curl, dom, fileinfo, gd, json, mbstring, openssl, PDO, standard, tokenizer, xmlwriter, zip, mysqlnd, Phar, pdo_mysql, Zend OPcache
+-----------------------------------+------------------+--------+
| Flarum Extensions                 |                  |        |
+-----------------------------------+------------------+--------+
| ID                                | Version          | Commit |
+-----------------------------------+------------------+--------+
| flarum-approval                   | v0.1.0-beta.8    |        |
| flarum-bbcode                     | v0.1.0-beta.8    |        |
| flarum-emoji                      | v0.1.0-beta.8    |        |
| flarum-lang-english               | v0.1.0-beta.8    |        |
| flarum-flags                      | v0.1.0-beta.8.1  |        |
| flarum-likes                      | v0.1.0-beta.8.1  |        |
| flarum-lock                       | v0.1.0-beta.8    |        |
| flarum-mentions                   | v0.1.0-beta.8.1  |        |
| flarum-statistics                 | v0.1.0-beta.8    |        |
| flarum-sticky                     | v0.1.0-beta.8    |        |
| flarum-subscriptions              | v0.1.0-beta.8    |        |
| flarum-suspend                    | v0.1.0-beta.8    |        |
| flarum-tags                       | v0.1.0-beta.8.2  |        |
| csineneo-lang-simplified-chinese  | v0.1.0-beta.8.20 |        |
| csineneo-lang-traditional-chinese | v0.1.0-beta.8.19 |        |
| flagrow-analytics                 | 0.7.0            |        |
| wiwatsrt-best-answer              | v0.2.0           |        |
| fof-links                         | 0.1.1            |        |
| flagrow-upload                    | 0.7.1            |        |
| flarum-markdown                   | v0.1.0-beta.8    |        |
| reflar-gamification               | 3.1.1            |        |
| fof-spamblock                     | 0.2.1            |        |
| reflar-reactions                  | 1.0.0-beta.5.1   |        |
| fof-user-bio                      | 0.1.1            |        |
| reflar-nightmode                  | 0.2.0            |        |
| flagrow-terms                     | 0.3.1            |        |
| flagrow-bazaar                    | 0.3.9            |        |
| flagrow-sitemap                   | 0.2.0            |        |
+-----------------------------------+------------------+--------+
Base URL: https://productforum.yuuta.moe
Installation path: /flarum/app
Debug mode: off

Log Files

[2019-01-18 05:10:40] production.ERROR: PDOException: SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails (`flarum`.`flarum_poll_votes`, CONSTRAINT `poll_votes_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `flarum_users` (`id`)) in /flarum/app/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php:117
Stack trace:
#0 /flarum/app/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php(117): PDOStatement->execute(NULL)
#1 /flarum/app/vendor/illuminate/database/Connection.php(483): Doctrine\DBAL\Driver\PDOStatement->execute()
#2 /flarum/app/vendor/illuminate/database/Connection.php(657): Illuminate\Database\Connection->Illuminate\Database\{closure}('delete from `fl...', Array)
#3 /flarum/app/vendor/illuminate/database/Connection.php(624): Illuminate\Database\Connection->runQueryCallback('delete from `fl...', Array, Object(Closure))
#4 /flarum/app/vendor/illuminate/database/Connection.php(490): Illuminate\Database\Connection->run('delete from `fl...', Array, Object(Closure))
#5 /flarum/app/vendor/illuminate/database/Connection.php(435): Illuminate\Database\Connection->affectingStatement('delete from `fl...', Array)
#6 /flarum/app/vendor/illuminate/database/Query/Builder.php(2252): Illuminate\Database\Connection->delete('delete from `fl...', Array)
#7 /flarum/app/vendor/illuminate/database/Eloquent/Builder.php(842): Illuminate\Database\Query\Builder->delete()
#8 /flarum/app/vendor/illuminate/database/Eloquent/Model.php(814): Illuminate\Database\Eloquent\Builder->delete()
#9 /flarum/app/vendor/illuminate/database/Eloquent/Model.php(785): Illuminate\Database\Eloquent\Model->performDeleteOnModel()
#10 /flarum/app/vendor/flarum/core/src/User/Command/DeleteUserHandler.php(57): Illuminate\Database\Eloquent\Model->delete()
#11 /flarum/app/vendor/illuminate/bus/Dispatcher.php(90): Flarum\User\Command\DeleteUserHandler->handle(Object(Flarum\User\Command\DeleteUser))
#12 /flarum/app/vendor/illuminate/pipeline/Pipeline.php(114): Illuminate\Bus\Dispatcher->Illuminate\Bus\{closure}(Object(Flarum\User\Command\DeleteUser))
#13 /flarum/app/vendor/illuminate/pipeline/Pipeline.php(102): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Flarum\User\Command\DeleteUser))
#14 /flarum/app/vendor/illuminate/bus/Dispatcher.php(98): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#15 /flarum/app/vendor/illuminate/bus/Dispatcher.php(76): Illuminate\Bus\Dispatcher->dispatchNow(Object(Flarum\User\Command\DeleteUser))
#16 /flarum/app/vendor/flarum/core/src/Api/Controller/DeleteUserController.php(39): Illuminate\Bus\Dispatcher->dispatch(Object(Flarum\User\Command\DeleteUser))
#17 /flarum/app/vendor/flarum/core/src/Api/Controller/AbstractDeleteController.php(26): Flarum\Api\Controller\DeleteUserController->delete(Object(Zend\Diactoros\ServerRequest))
#18 /flarum/app/vendor/flarum/core/src/Http/RouteHandlerFactory.php(40): Flarum\Api\Controller\AbstractDeleteController->handle(Object(Zend\Diactoros\ServerRequest))
#19 /flarum/app/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(67): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}(Object(Zend\Diactoros\ServerRequest), Array)
#20 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\DispatchRoute->process(Object(Zend\Diactoros\ServerRequest), Object(Closure))
#21 /flarum/app/vendor/flagrow/terms/src/Middlewares/RegisterMiddleware.php(59): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#22 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flagrow\Terms\Middlewares\RegisterMiddleware->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#23 /flarum/app/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#24 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\SetLocale->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#25 /flarum/app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(55): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#26 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\AuthenticateWithHeader->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#27 /flarum/app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(34): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#28 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\AuthenticateWithSession->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#29 /flarum/app/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(52): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#30 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\RememberFromCookie->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#31 /flarum/app/vendor/flarum/core/src/Http/Middleware/StartSession.php(62): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#32 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\StartSession->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#33 /flarum/app/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(31): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#34 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Api\Middleware\FakeHttpMethods->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#35 /flarum/app/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(29): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#36 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\ParseJsonBody->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#37 /flarum/app/vendor/flarum/core/src/Api/Middleware/HandleErrors.php(42): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#38 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Api\Middleware\HandleErrors->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#39 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(91): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#40 /flarum/app/vendor/middlewares/request-handler/src/RequestHandler.php(84): Zend\Stratigility\MiddlewarePipe->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#41 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\RequestHandler->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#42 /flarum/app/vendor/middlewares/base-path-router/src/BasePathRouter.php(97): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#43 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePathRouter->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#44 /flarum/app/vendor/middlewares/base-path/src/BasePath.php(53): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#45 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePath->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#46 /flarum/app/vendor/zendframework/zend-httphandlerrunner/src/RequestHandlerRunner.php(95): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#47 /flarum/app/vendor/flarum/core/src/Http/Server.php(46): Zend\HttpHandlerRunner\RequestHandlerRunner->run()
#48 /flarum/app/public/index.php(22): Flarum\Http\Server->listen()
#49 {main}

Next Doctrine\DBAL\Driver\PDOException: SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails (`flarum`.`flarum_poll_votes`, CONSTRAINT `poll_votes_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `flarum_users` (`id`)) in /flarum/app/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php:119
Stack trace:
#0 /flarum/app/vendor/illuminate/database/Connection.php(483): Doctrine\DBAL\Driver\PDOStatement->execute()
#1 /flarum/app/vendor/illuminate/database/Connection.php(657): Illuminate\Database\Connection->Illuminate\Database\{closure}('delete from `fl...', Array)
#2 /flarum/app/vendor/illuminate/database/Connection.php(624): Illuminate\Database\Connection->runQueryCallback('delete from `fl...', Array, Object(Closure))
#3 /flarum/app/vendor/illuminate/database/Connection.php(490): Illuminate\Database\Connection->run('delete from `fl...', Array, Object(Closure))
#4 /flarum/app/vendor/illuminate/database/Connection.php(435): Illuminate\Database\Connection->affectingStatement('delete from `fl...', Array)
#5 /flarum/app/vendor/illuminate/database/Query/Builder.php(2252): Illuminate\Database\Connection->delete('delete from `fl...', Array)
#6 /flarum/app/vendor/illuminate/database/Eloquent/Builder.php(842): Illuminate\Database\Query\Builder->delete()
#7 /flarum/app/vendor/illuminate/database/Eloquent/Model.php(814): Illuminate\Database\Eloquent\Builder->delete()
#8 /flarum/app/vendor/illuminate/database/Eloquent/Model.php(785): Illuminate\Database\Eloquent\Model->performDeleteOnModel()
#9 /flarum/app/vendor/flarum/core/src/User/Command/DeleteUserHandler.php(57): Illuminate\Database\Eloquent\Model->delete()
#10 /flarum/app/vendor/illuminate/bus/Dispatcher.php(90): Flarum\User\Command\DeleteUserHandler->handle(Object(Flarum\User\Command\DeleteUser))
#11 /flarum/app/vendor/illuminate/pipeline/Pipeline.php(114): Illuminate\Bus\Dispatcher->Illuminate\Bus\{closure}(Object(Flarum\User\Command\DeleteUser))
#12 /flarum/app/vendor/illuminate/pipeline/Pipeline.php(102): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Flarum\User\Command\DeleteUser))
#13 /flarum/app/vendor/illuminate/bus/Dispatcher.php(98): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#14 /flarum/app/vendor/illuminate/bus/Dispatcher.php(76): Illuminate\Bus\Dispatcher->dispatchNow(Object(Flarum\User\Command\DeleteUser))
#15 /flarum/app/vendor/flarum/core/src/Api/Controller/DeleteUserController.php(39): Illuminate\Bus\Dispatcher->dispatch(Object(Flarum\User\Command\DeleteUser))
#16 /flarum/app/vendor/flarum/core/src/Api/Controller/AbstractDeleteController.php(26): Flarum\Api\Controller\DeleteUserController->delete(Object(Zend\Diactoros\ServerRequest))
#17 /flarum/app/vendor/flarum/core/src/Http/RouteHandlerFactory.php(40): Flarum\Api\Controller\AbstractDeleteController->handle(Object(Zend\Diactoros\ServerRequest))
#18 /flarum/app/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(67): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}(Object(Zend\Diactoros\ServerRequest), Array)
#19 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\DispatchRoute->process(Object(Zend\Diactoros\ServerRequest), Object(Closure))
#20 /flarum/app/vendor/flagrow/terms/src/Middlewares/RegisterMiddleware.php(59): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#21 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flagrow\Terms\Middlewares\RegisterMiddleware->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#22 /flarum/app/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#23 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\SetLocale->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#24 /flarum/app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(55): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#25 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\AuthenticateWithHeader->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#26 /flarum/app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(34): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#27 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\AuthenticateWithSession->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#28 /flarum/app/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(52): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#29 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\RememberFromCookie->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#30 /flarum/app/vendor/flarum/core/src/Http/Middleware/StartSession.php(62): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#31 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\StartSession->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#32 /flarum/app/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(31): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#33 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Api\Middleware\FakeHttpMethods->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#34 /flarum/app/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(29): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#35 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\ParseJsonBody->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#36 /flarum/app/vendor/flarum/core/src/Api/Middleware/HandleErrors.php(42): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#37 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Api\Middleware\HandleErrors->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#38 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(91): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#39 /flarum/app/vendor/middlewares/request-handler/src/RequestHandler.php(84): Zend\Stratigility\MiddlewarePipe->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#40 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\RequestHandler->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#41 /flarum/app/vendor/middlewares/base-path-router/src/BasePathRouter.php(97): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#42 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePathRouter->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#43 /flarum/app/vendor/middlewares/base-path/src/BasePath.php(53): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#44 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePath->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#45 /flarum/app/vendor/zendframework/zend-httphandlerrunner/src/RequestHandlerRunner.php(95): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#46 /flarum/app/vendor/flarum/core/src/Http/Server.php(46): Zend\HttpHandlerRunner\RequestHandlerRunner->run()
#47 /flarum/app/public/index.php(22): Flarum\Http\Server->listen()
#48 {main}

Next Illuminate\Database\QueryException: SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails (`flarum`.`flarum_poll_votes`, CONSTRAINT `poll_votes_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `flarum_users` (`id`)) (SQL: delete from `flarum_users` where `id` = 29) in /flarum/app/vendor/illuminate/database/Connection.php:664
Stack trace:
#0 /flarum/app/vendor/illuminate/database/Connection.php(624): Illuminate\Database\Connection->runQueryCallback('delete from `fl...', Array, Object(Closure))
#1 /flarum/app/vendor/illuminate/database/Connection.php(490): Illuminate\Database\Connection->run('delete from `fl...', Array, Object(Closure))
#2 /flarum/app/vendor/illuminate/database/Connection.php(435): Illuminate\Database\Connection->affectingStatement('delete from `fl...', Array)
#3 /flarum/app/vendor/illuminate/database/Query/Builder.php(2252): Illuminate\Database\Connection->delete('delete from `fl...', Array)
#4 /flarum/app/vendor/illuminate/database/Eloquent/Builder.php(842): Illuminate\Database\Query\Builder->delete()
#5 /flarum/app/vendor/illuminate/database/Eloquent/Model.php(814): Illuminate\Database\Eloquent\Builder->delete()
#6 /flarum/app/vendor/illuminate/database/Eloquent/Model.php(785): Illuminate\Database\Eloquent\Model->performDeleteOnModel()
#7 /flarum/app/vendor/flarum/core/src/User/Command/DeleteUserHandler.php(57): Illuminate\Database\Eloquent\Model->delete()
#8 /flarum/app/vendor/illuminate/bus/Dispatcher.php(90): Flarum\User\Command\DeleteUserHandler->handle(Object(Flarum\User\Command\DeleteUser))
#9 /flarum/app/vendor/illuminate/pipeline/Pipeline.php(114): Illuminate\Bus\Dispatcher->Illuminate\Bus\{closure}(Object(Flarum\User\Command\DeleteUser))
#10 /flarum/app/vendor/illuminate/pipeline/Pipeline.php(102): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Flarum\User\Command\DeleteUser))
#11 /flarum/app/vendor/illuminate/bus/Dispatcher.php(98): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#12 /flarum/app/vendor/illuminate/bus/Dispatcher.php(76): Illuminate\Bus\Dispatcher->dispatchNow(Object(Flarum\User\Command\DeleteUser))
#13 /flarum/app/vendor/flarum/core/src/Api/Controller/DeleteUserController.php(39): Illuminate\Bus\Dispatcher->dispatch(Object(Flarum\User\Command\DeleteUser))
#14 /flarum/app/vendor/flarum/core/src/Api/Controller/AbstractDeleteController.php(26): Flarum\Api\Controller\DeleteUserController->delete(Object(Zend\Diactoros\ServerRequest))
#15 /flarum/app/vendor/flarum/core/src/Http/RouteHandlerFactory.php(40): Flarum\Api\Controller\AbstractDeleteController->handle(Object(Zend\Diactoros\ServerRequest))
#16 /flarum/app/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(67): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}(Object(Zend\Diactoros\ServerRequest), Array)
#17 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\DispatchRoute->process(Object(Zend\Diactoros\ServerRequest), Object(Closure))
#18 /flarum/app/vendor/flagrow/terms/src/Middlewares/RegisterMiddleware.php(59): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#19 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flagrow\Terms\Middlewares\RegisterMiddleware->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#20 /flarum/app/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#21 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\SetLocale->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#22 /flarum/app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(55): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#23 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\AuthenticateWithHeader->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#24 /flarum/app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(34): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#25 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\AuthenticateWithSession->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#26 /flarum/app/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(52): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#27 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\RememberFromCookie->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#28 /flarum/app/vendor/flarum/core/src/Http/Middleware/StartSession.php(62): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#29 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\StartSession->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#30 /flarum/app/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(31): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#31 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Api\Middleware\FakeHttpMethods->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#32 /flarum/app/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(29): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#33 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Http\Middleware\ParseJsonBody->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#34 /flarum/app/vendor/flarum/core/src/Api/Middleware/HandleErrors.php(42): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#35 /flarum/app/vendor/zendframework/zend-stratigility/src/Next.php(52): Flarum\Api\Middleware\HandleErrors->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\Next))
#36 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(91): Zend\Stratigility\Next->handle(Object(Zend\Diactoros\ServerRequest))
#37 /flarum/app/vendor/middlewares/request-handler/src/RequestHandler.php(84): Zend\Stratigility\MiddlewarePipe->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#38 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\RequestHandler->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#39 /flarum/app/vendor/middlewares/base-path-router/src/BasePathRouter.php(97): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#40 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePathRouter->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#41 /flarum/app/vendor/middlewares/base-path/src/BasePath.php(53): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#42 /flarum/app/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(78): Middlewares\BasePath->process(Object(Zend\Diactoros\ServerRequest), Object(Zend\Stratigility\MiddlewarePipe))
#43 /flarum/app/vendor/zendframework/zend-httphandlerrunner/src/RequestHandlerRunner.php(95): Zend\Stratigility\MiddlewarePipe->handle(Object(Zend\Diactoros\ServerRequest))
#44 /flarum/app/vendor/flarum/core/src/Http/Server.php(46): Zend\HttpHandlerRunner\RequestHandlerRunner->run()
#45 /flarum/app/public/index.php(22): Flarum\Http\Server->listen()
#46 {main}  

Remove all page refreshes

To fit into the Flarum ecosystem, the page shouldn't refresh at all. All votes, poll edits, etc should be pulled in on the frontend.

Locale: Remove Unwanted/Uneeded Colon in EN and FR YML Locale Files

As per research/results/analysis from MigrateToFlarum Lab, both en.yml and fr.yml have an unwanted/uneeded colon that should either be removed or wrapped in double quotes (IF possible).

Warning from MigrateToFlarum Lab:

We found issues with the locale files provided by this extension:

Could not parse file /locale/en.yml: A colon cannot be used in an unquoted mapping value at line 2333 (near "public_poll: Public poll: Click to view voters").

Ignore the line number, the issue lies within both translation files where a colon exists after "Public poll" and before "Click to view voters". See suggestion from my intro.

Flarum/Server/Client Information

Technical Details

  • Version of Flarum (x.y.z): Flarum 0.1.0-beta.7.1.
  • Version of extension (x.y.z): 1.2.2
  • [OPTIONAL] Website URL where the bug is visible (https://example.com): Can be reproduced on https://reflar.redevs.org/demo/
  • The webserver you are running (Apache, Nginx, etc): Nginx
  • PHP version (x.y.z): PHP-FPM 7.0.22
  • Hosted environment (Shared, VPS, etc): VPS, Managed through Plesk Onyx
  • Hosting provider (https://some-amazing-provider.com): Vultr.

Flarum Info

Flarum core 0.1.0-beta.7
PHP 7.0.28-0ubuntu0.16.04.1
Loaded extensions: Core, date, libxml, openssl, pcre, zlib, filter, hash, pcntl, Reflection, SPL, session, standard, mysqlnd, PDO, xml, calendar, ctype, curl, dom, mbstring, fileinfo, ftp, gd, gettext, iconv, imap, json, exif, mysqli, pdo_mysql, pdo_sqlite, Phar, posix, readline, shmop, SimpleXML, sockets, sqlite3, sysvmsg, sysvsem, sysvshm, tokenizer, wddx, xmlreader, xmlwriter, xsl, Zend OPcache
EXT flarum-approval v0.1.0-beta.7
EXT flarum-bbcode v0.1.0-beta.5
EXT flarum-emoji v0.1.0-beta.6
EXT flarum-english v0.1.0-beta.7
EXT flagrow-bazaar 0.2.4
EXT flarum-flags v0.1.0-beta.7
EXT flarum-likes v0.1.0-beta.6
EXT flarum-lock v0.1.0-beta.7
EXT flarum-markdown v0.1.0-beta.5
EXT flarum-mentions v0.1.0-beta.7
EXT reflar-polls 1.2.2
EXT flarum-sticky v0.1.0-beta.7
EXT flarum-subscriptions v0.1.0-beta.6
EXT flarum-suspend v0.1.0-beta.7
EXT flarum-tags v0.1.0-beta.8
Base URL: https://reflar.redevs.org/demo
Installation path: Omitted due to security issues.

Log Files

N/A

Can't vote with Firefox

When voting with Firefox I get a "Oops something went wrong" toast message.
Voting with Chrome works.
Refreshing the page in Firefox shows my vote afterwards.

Anyone else encountering this?

Delete Polls When User Is Deleted

Not sure if this is a bug or should just be put as a feature but when users are deleted VIA user profile UI option, their discussions and posts get deleted but their polls don't.

There should be added functionality that when this action occurs, the user's polls in the database get deleted as well.

Requesting Enchancement: Doodle Mode

I sugest you to create a checkbox in edit pool for option "doodle mode":

  • None, one or more possible answers
  • Displays the answers of each participant as soon as the question

Doodle

Update Files to Complete Extension Migration

@Shahiem this is a to-do list we can all work on with you as far as completing the migration to ReFlar goes for this extension:

Needs to meet ReFlar styling and standards:

  • Update composer.json
  • Update namespaces.
  • Update packagist information.
  • Update README.md.
  • Assess database constraints due to migration issues.

Error when enabling Extension

Instructions (MUST READ FIRST)

Before we can address your issues and concerns with the behavior of our work, we require every bit of detail from you to the fullest extent of this form. If this form is not properly filled out to it's entirity, we, ReFlar, reserve the right to close your issue due to lack of information thereof as well as not following instructions.

  • By agreeing to these terms, you can simply leave this checkbox checked.

Please Mentally Go Over the Following Items Before Filling Out this Form:

  • Can you reproduce this problem in debug mode?
  • Are you running the latest version of this extension?
  • Is your Flarum up-to-date?

Description

Unable to enable extension after it was deleted due to it being flagged incorrectly as malware by the system. I've tried uninstalling and reinstalling the extension but I can't enable it.

Steps to Reproduce

  1. Install extension
  2. Enable extension

Expected Behavior: Extension enabled

Actual Behavior: Oops! Something went wrong. Please reload the page and try again.

Flarum/Server/Client Information

Technical Details

  • Version of Flarum (x.y.z): 0.1.0-beta.7
  • Version of extension (x.y.z): 1.2.6
  • The webserver you are running (Apache, Nginx, etc): Apache
  • PHP version (x.y.z): 5.6
  • Hosted environment (Shared, VPS, etc): Shared
  • Hosting provider (https://some-amazing-provider.com): https://webfaction.com

Flarum Info

Failed loading /usr/local/Zend/lib/ZendExtensionManager.so:  /usr/local/Zend/lib/ZendExtensionManager.so: cannot open shared object file: No such file or directory

Warning: Unexpected character in input:  '\' (ASCII=92) state=1 in /forum/flarum on line 16

Parse error: syntax error, unexpected T_STRING in /y/forum/flarum on line 16

Log Files

`POST /forum/api/bazaar/extensions/reflar$polls/toggle

{
"errors": [
{
"code": 500,
"title": "Internal server error",
"detail": "exception 'PDOException' with message 'SQLSTATE[42S02]: Base table or view not found: 1146 Table 'forum.polls' doesn't exist' in /forum/vendor/illuminate/database/Connection.php:390\nStack trace:\n#0 /forum/vendor/illuminate/database/Connection.php(390): PDOStatement->execute(Array)\n#1 /forum/vendor/illuminate/database/Connection.php(655): Illuminate\Database\Connection->Illuminate\Database\{closure}(Object(Illuminate\Database\MySqlConnection), 'alter table po...', Array)\n#2 /forum/vendor/illuminate/database/Connection.php(618): Illuminate\\Database\\Connection->runQueryCallback('alter table po...', Array, Object(Closure))\n#3 /forum/vendor/illuminate/database/Connection.php(391): Illuminate\Database\Connection->run('alter table po...', Array, Object(Closure))\n#4 /forum/vendor/illuminate/database/Schema/Blueprint.php(83): Illuminate\\Database\\Connection->statement('alter table po...')\n#5 /forum/vendor/illuminate/database/Schema/Builder.php(191): Illuminate\Database\Schema\Blueprint->build(Object(Illuminate\Database\MySqlConnection), Object(Illuminate\Database\Schema\Grammars\MySqlGrammar))\n#6 /forum/vendor/illuminate/database/Schema/Builder.php(116): Illuminate\Database\Schema\Builder->build(Object(Illuminate\Database\Schema\Blueprint))\n#7 /forum/vendor/reflar/polls/migrations/2018_05_02_142343_add_poll_expire_date.php(11): Illuminate\Database\Schema\Builder->table('polls', Object(Closure))\n#8 [internal function]: Illuminate\Filesystem\Filesystem->{closure}(Object(Illuminate\Database\Schema\MySqlBuilder))\n#9 /forum/vendor/illuminate/container/Container.php(507): call_user_func_array(Object(Closure), Array)\n#10 /forum/vendor/flarum/core/src/Database/Migrator.php(202): Illuminate\Container\Container->call(Object(Closure))\n#11 /forum/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\Database\Migrator->runClosureMigration(Array)\n#12 /forum/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\Database\Migrator->runUp('/home/jenxi/web...', '2018_05_02_1423...', Object(Flarum\Extension\Extension))\n#13 /forum/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\Database\Migrator->runMigrationList('/home/jenxi/web...', Array, Object(Flarum\Extension\Extension))\n#14 /forum/vendor/flarum/core/src/Extension/ExtensionManager.php(234): Flarum\Database\Migrator->run('/home/jenxi/web...', Object(Flarum\Extension\Extension))\n#15 /forum/vendor/flarum/core/src/Extension/ExtensionManager.php(124): Flarum\Extension\ExtensionManager->migrate(Object(Flarum\Extension\Extension))\n#16 /forum/vendor/flagrow/bazaar/src/Api/Controllers/ToggleExtensionController.php(52): Flarum\Extension\ExtensionManager->enable('reflar-polls')\n#17 /forum/vendor/flarum/core/src/Api/Controller/AbstractSerializeController.php(97): Flagrow\Bazaar\Api\Controllers\ToggleExtensionController->data(Object(Zend\Stratigility\Http\Request), Object(Tobscure\JsonApi\Document))\n#18 /forum/vendor/flarum/core/src/Http/Handler/ControllerRouteHandler.php(53): Flarum\Api\Controller\AbstractSerializeController->handle(Object(Zend\Stratigility\Http\Request))\n#19 /forum/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(69): Flarum\Http\Handler\ControllerRouteHandler->__invoke(Object(Zend\Stratigility\Http\Request), Array)\n#20 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\Http\Middleware\DispatchRoute->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#21 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\Stratigility\Dispatch->dispatchCallableMiddleware(Object(Flarum\Http\Middleware\DispatchRoute), Object(Zend\Stratigility\Next), Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), NULL)\n#22 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\Stratigility\Dispatch->__invoke(Object(Zend\Stratigility\Route), NULL, Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#23 /forum/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Zend\Stratigility\Next->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response))\n#24 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\Http\Middleware\SetLocale->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#25 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\Stratigility\Dispatch->dispatchCallableMiddleware(Object(Flarum\Http\Middleware\SetLocale), Object(Zend\Stratigility\Next), Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), NULL)\n#26 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\Stratigility\Dispatch->__invoke(Object(Zend\Stratigility\Route), NULL, Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#27 /forum/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(58): Zend\Stratigility\Next->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response))\n#28 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\Http\Middleware\AuthenticateWithHeader->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#29 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\Stratigility\Dispatch->dispatchCallableMiddleware(Object(Flarum\Http\Middleware\AuthenticateWithHeader), Object(Zend\Stratigility\Next), Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), NULL)\n#30 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\Stratigility\Dispatch->__invoke(Object(Zend\Stratigility\Route), NULL, Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#31 /forum/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(36): Zend\Stratigility\Next->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response))\n#32 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\Http\Middleware\AuthenticateWithSession->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#33 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\Stratigility\Dispatch->dispatchCallableMiddleware(Object(Flarum\Http\Middleware\AuthenticateWithSession), Object(Zend\Stratigility\Next), Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), NULL)\n#34 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\Stratigility\Dispatch->__invoke(Object(Zend\Stratigility\Route), NULL, Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#35 /forum/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(39): Zend\Stratigility\Next->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response))\n#36 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\Http\Middleware\RememberFromCookie->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#37 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\Stratigility\Dispatch->dispatchCallableMiddleware(Object(Flarum\Http\Middleware\RememberFromCookie), Object(Zend\Stratigility\Next), Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), NULL)\n#38 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\Stratigility\Dispatch->__invoke(Object(Zend\Stratigility\Route), NULL, Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#39 /forum/vendor/flarum/core/src/Http/Middleware/StartSession.php(48): Zend\Stratigility\Next->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response))\n#40 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\Http\Middleware\StartSession->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#41 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\Stratigility\Dispatch->dispatchCallableMiddleware(Object(Flarum\Http\Middleware\StartSession), Object(Zend\Stratigility\Next), Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), NULL)\n#42 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\Stratigility\Dispatch->__invoke(Object(Zend\Stratigility\Route), NULL, Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#43 /forum/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(33): Zend\Stratigility\Next->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response))\n#44 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\Api\Middleware\FakeHttpMethods->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#45 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\Stratigility\Dispatch->dispatchCallableMiddleware(Object(Flarum\Api\Middleware\FakeHttpMethods), Object(Zend\Stratigility\Next), Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), NULL)\n#46 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\Stratigility\Dispatch->__invoke(Object(Zend\Stratigility\Route), NULL, Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#47 /forum/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(31): Zend\Stratigility\Next->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response))\n#48 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\Http\Middleware\ParseJsonBody->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#49 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\Stratigility\Dispatch->dispatchCallableMiddleware(Object(Flarum\Http\Middleware\ParseJsonBody), Object(Zend\Stratigility\Next), Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), NULL)\n#50 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\Stratigility\Dispatch->__invoke(Object(Zend\Stratigility\Route), NULL, Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#51 /forum/vendor/flarum/core/src/Api/Middleware/HandleErrors.php(45): Zend\Stratigility\Next->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response))\n#52 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\Api\Middleware\HandleErrors->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#53 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\Stratigility\Dispatch->dispatchCallableMiddleware(Object(Flarum\Api\Middleware\HandleErrors), Object(Zend\Stratigility\Next), Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), NULL)\n#54 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\Stratigility\Dispatch->__invoke(Object(Zend\Stratigility\Route), NULL, Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response), Object(Zend\Stratigility\Next))\n#55 /forum/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(111): Zend\Stratigility\Next->__invoke(Object(Zend\Stratigility\Http\Request), Object(Zend\Stratigility\Http\Response))\n#56 /forum/vendor/flarum/core/src/Http/AbstractServer.php(55): Zend\Stratigility\MiddlewarePipe->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response), Object(Zend\Stratigility\NoopFinalHandler))\n#57 /forum/vendor/zendframework/zend-diactoros/src/Server.php(162): Flarum\Http\AbstractServer->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response), Object(Zend\Stratigility\NoopFinalHandler))\n#58 /forum/vendor/flarum/core/src/Http/AbstractServer.php(36): Zend\Diactoros\Server->listen(Object(Zend\Stratigility\NoopFinalHandler))\n#59 /forum/api.php(16): Flarum\Http\AbstractServer->listen()\n#60 {main}\n\nNext exception 'Illuminate\Database\QueryException' with message 'SQLSTATE[42S02]: Base table or view not found: 1146 Table 'forum.polls' doesn't exist (SQL: alter table polls add end_date datetime null, add public_poll tinyint(1) not null)' in /forum/vendor/illuminate/database/Connection.php:662\nStack trace:\n#0 /forum/vendor/illuminate/database/Connection.php(618): Illuminate\Database\Connection->runQueryCallback('alter table po...', Array, Object(Closure))\n#1 /forum/vendor/illuminate/database/Connection.php(391): Illuminate\\Database\\Connection->run('alter table po...', Array, Object(Closure))\n#2 /forum/vendor/illuminate/database/Schema/Blueprint.php(83): Illuminate\Database\Connection->statement('alter table po...')\n#3 /forum/vendor/illuminate/database/Schema/Builder.php(191): Illuminate\\Database\\Schema\\Blueprint->build(Object(Illuminate\\Database\\MySqlConnection), Object(Illuminate\\Database\\Schema\\Grammars\\MySqlGrammar))\n#4 /forum/vendor/illuminate/database/Schema/Builder.php(116): Illuminate\\Database\\Schema\\Builder->build(Object(Illuminate\\Database\\Schema\\Blueprint))\n#5 /forum/vendor/reflar/polls/migrations/2018_05_02_142343_add_poll_expire_date.php(11): Illuminate\\Database\\Schema\\Builder->table('polls', Object(Closure))\n#6 [internal function]: Illuminate\\Filesystem\\Filesystem->{closure}(Object(Illuminate\\Database\\Schema\\MySqlBuilder))\n#7 /forum/vendor/illuminate/container/Container.php(507): call_user_func_array(Object(Closure), Array)\n#8 /forum/vendor/flarum/core/src/Database/Migrator.php(202): Illuminate\\Container\\Container->call(Object(Closure))\n#9 /forum/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\\Database\\Migrator->runClosureMigration(Array)\n#10 /forum/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\\Database\\Migrator->runUp('/home/jenxi/web...', '2018_05_02_1423...', Object(Flarum\\Extension\\Extension))\n#11 /forum/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\\Database\\Migrator->runMigrationList('/home/jenxi/web...', Array, Object(Flarum\\Extension\\Extension))\n#12 /forum/vendor/flarum/core/src/Extension/ExtensionManager.php(234): Flarum\\Database\\Migrator->run('/home/jenxi/web...', Object(Flarum\\Extension\\Extension))\n#13 /forum/vendor/flarum/core/src/Extension/ExtensionManager.php(124): Flarum\\Extension\\ExtensionManager->migrate(Object(Flarum\\Extension\\Extension))\n#14 /forum/vendor/flagrow/bazaar/src/Api/Controllers/ToggleExtensionController.php(52): Flarum\\Extension\\ExtensionManager->enable('reflar-polls')\n#15 /forum/vendor/flarum/core/src/Api/Controller/AbstractSerializeController.php(97): Flagrow\\Bazaar\\Api\\Controllers\\ToggleExtensionController->data(Object(Zend\\Stratigility\\Http\\Request), Object(Tobscure\\JsonApi\\Document))\n#16 /forum/vendor/flarum/core/src/Http/Handler/ControllerRouteHandler.php(53): Flarum\\Api\\Controller\\AbstractSerializeController->handle(Object(Zend\\Stratigility\\Http\\Request))\n#17 /forum/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(69): Flarum\\Http\\Handler\\ControllerRouteHandler->__invoke(Object(Zend\\Stratigility\\Http\\Request), Array)\n#18 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\\Http\\Middleware\\DispatchRoute->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#19 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flarum\\Http\\Middleware\\DispatchRoute), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#20 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#21 /forum/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#22 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\\Http\\Middleware\\SetLocale->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#23 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flarum\\Http\\Middleware\\SetLocale), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#24 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#25 /forum/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(58): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#26 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\\Http\\Middleware\\AuthenticateWithHeader->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#27 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flarum\\Http\\Middleware\\AuthenticateWithHeader), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#28 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#29 /forum/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(36): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#30 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\\Http\\Middleware\\AuthenticateWithSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#31 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flarum\\Http\\Middleware\\AuthenticateWithSession), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#32 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#33 /forum/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(39): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#34 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\\Http\\Middleware\\RememberFromCookie->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#35 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flarum\\Http\\Middleware\\RememberFromCookie), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#36 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#37 /forum/vendor/flarum/core/src/Http/Middleware/StartSession.php(48): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#38 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\\Http\\Middleware\\StartSession->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#39 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flarum\\Http\\Middleware\\StartSession), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#40 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#41 /forum/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(33): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#42 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\\Api\\Middleware\\FakeHttpMethods->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#43 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flarum\\Api\\Middleware\\FakeHttpMethods), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#44 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#45 /forum/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(31): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#46 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\\Http\\Middleware\\ParseJsonBody->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#47 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flarum\\Http\\Middleware\\ParseJsonBody), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#48 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#49 /forum/vendor/flarum/core/src/Api/Middleware/HandleErrors.php(45): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#50 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flarum\\Api\\Middleware\\HandleErrors->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#51 /forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flarum\\Api\\Middleware\\HandleErrors), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#52 /forum/vendor/zendframework/zend-stratigility/src/Next.php(160): Zend\\Stratigility\\Dispatch->__invoke(Object(Zend\\Stratigility\\Route), NULL, Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#53 /forum/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(111): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#54 /forum/vendor/flarum/core/src/Http/AbstractServer.php(55): Zend\\Stratigility\\MiddlewarePipe->__invoke(Object(Zend\\Diactoros\\ServerRequest), Object(Zend\\Diactoros\\Response), Object(Zend\\Stratigility\\NoopFinalHandler))\n#55 /forum/vendor/zendframework/zend-diactoros/src/Server.php(162): Flarum\\Http\\AbstractServer->__invoke(Object(Zend\\Diactoros\\ServerRequest), Object(Zend\\Diactoros\\Response), Object(Zend\\Stratigility\\NoopFinalHandler))\n#56 /forum/vendor/flarum/core/src/Http/AbstractServer.php(36): Zend\\Diactoros\\Server->listen(Object(Zend\\Stratigility\\NoopFinalHandler))\n#57 /forum/api.php(16): Flarum\\Http\\AbstractServer->listen()\n#58 {main}" } ] }

Put any relevant logs here.

Poll Answer # does not reset when adding or removing additional poll options

Description

When you create or start a poll from the "Start Discussion" composer, the poll option number does not reset back to it's original number when you remove a 3rd option and add a new one back in. In this state, you also cannot submit the poll to attach to the discussion.

Steps to Reproduce

  1. Start a discussion.
  2. Add a poll.
  3. Add an option passed the default 2.
  4. Delete that option.
  5. Try adding another option again.
  6. Take note as the answer # increases even after you deleted/removed the previous one.

Expected Behavior: When you launch the poll modal and want to add more options, you should be allowed to remove an option and add more options without the "Answer #" increasing instead of it being the actual field option number.

Actual Behavior: Poll options do not reset back to their original "Answer #" and the number just increases instead. In this state, you also cannot submit the poll as clicking the "Submit" button does not close the "Add Poll" modal.

Add Poll

Flarum/Server/Client Information

Technical Details

  • Version of Flarum (x.y.z): Flarum 0.1.0-beta.7.1.
  • Version of extension (x.y.z): 1.2.2
  • [OPTIONAL] Website URL where the bug is visible (https://example.com): Can be reproduced on https://reflar.redevs.org/demo/
  • The webserver you are running (Apache, Nginx, etc): Nginx
  • PHP version (x.y.z): PHP-FPM 7.0.22
  • Hosted environment (Shared, VPS, etc): VPS, Managed through Plesk Onyx
  • Hosting provider (https://some-amazing-provider.com): Vultr.

Flarum Info

Flarum core 0.1.0-beta.7
PHP 7.0.28-0ubuntu0.16.04.1
Loaded extensions: Core, date, libxml, openssl, pcre, zlib, filter, hash, pcntl, Reflection, SPL, session, standard, mysqlnd, PDO, xml, calendar, ctype, curl, dom, mbstring, fileinfo, ftp, gd, gettext, iconv, imap, json, exif, mysqli, pdo_mysql, pdo_sqlite, Phar, posix, readline, shmop, SimpleXML, sockets, sqlite3, sysvmsg, sysvsem, sysvshm, tokenizer, wddx, xmlreader, xmlwriter, xsl, Zend OPcache
EXT flarum-approval v0.1.0-beta.7
EXT flarum-bbcode v0.1.0-beta.5
EXT flarum-emoji v0.1.0-beta.6
EXT flarum-english v0.1.0-beta.7
EXT flagrow-bazaar 0.2.4
EXT flarum-flags v0.1.0-beta.7
EXT flarum-likes v0.1.0-beta.6
EXT flarum-lock v0.1.0-beta.7
EXT flarum-markdown v0.1.0-beta.5
EXT flarum-mentions v0.1.0-beta.7
EXT reflar-polls 1.2.2
EXT flarum-sticky v0.1.0-beta.7
EXT flarum-subscriptions v0.1.0-beta.6
EXT flarum-suspend v0.1.0-beta.7
EXT flarum-tags v0.1.0-beta.8
Base URL: https://reflar.redevs.org/demo
Installation path: Omitted due to security issues.

Log Files

N/A

Tracking: Current State Of Bugs

Upon post-QA testing, I have found the following bugs when exploring the recent released version of Polls. This issue is just to track these bugs and to be closed when each individual bug/issue has been resolved or fixed.

  • Bug # 1: When you create a poll, submit it, but decide that you want to edit it and add more options before you submit the entire discussion from within the discussion composer, both the options and questions do not maintain their state and the fields are wiped clean.
  • Bug # 2: After successfully picking a vote option, a type error appears in the console and the "Public poll: Click to view voters" button does not launch it's corresponding modal.
  • Bug # 3: Upon creating a poll and creating the discussion along with it, the default cut-off time/date gets set to the time that the poll and discussion was created. Not sure if this affects the way this feature works but you can see that it set a default time anyways when editing the poll itself (even when you opted out of setting a cut-off time and date).
  • Bug # 4: Submit button is missing from the "Edit Poll" modal.

Add "user_id" in "polls" table

To facilitate future uses, I suggest adding "user_id" in "pollls" table. To display the member's polls in his profile / settings page for example.

As a user, I should be able to change my poll answer

It should be possible to specify that you want users to be able to change their mind, when they voted. Perhaps also until a specific date, or when you manually close the poll for votes. (This functionality is also missing currently.)

Error when editing poll

Greeted by "Warning: Invalid argument supplied for foreach() in {Path}\polls\src\Repositories\QuestionRepository.php on line 79"

Tooltips does not handle pluralization correctly

title={item.votes() >= 1 ? item.votes() + ' ' + app.translator.trans('reflar-polls.forum.tooltip.vote') : item.votes() + ' ' + app.translator.trans('reflar-polls.forum.tooltip.votes')}

I'm trying to fix translations on my forum and it is impossible to translate these tooltips correctly. In Polish we have 3 forms for pluralization:

  • 1 gล‚os
  • 2 gล‚osy
  • 5 gล‚osรณw

Using concatenation with only 2 forms (and weird condition - why item.votes() >= 1?) is extremely inflexible. It would be great to have real pluralization support for these labels: https://flarum.org/docs/extend/i18n.html#including-variables

Removal of Custom Scripts

Some of the scripts in the script folder are either outdated or are producing virus detection for some users (more specifically PreCommit.php due to it being a custom PHP script and the server AV being used having some strict sensitivity to certain files ).

As we transition this extension to FoF, we will eventually remove the scripts folder altogether to eliminate any future security concerns. If they are planned to be used for development in the future, it will be ignored when committing and pushing changes to this project and should only be used for local development.

Possible Name Change for Polls Extension

This issue will serve as a discussion thread.

@Shahiem what do you think about the possibility of adding a unique name for this extension?

I was thinking of calling it "ballots" which is a more unique and playful way of saying voting or polls.

If not, I do suggest renaming it to "polls" as it is more of a plural word due to the fact that more than one poll can be created on a forum.

What do you think?

How can I reach you?

I guess you can call it an issue because I have no other means of contacting you directly except for your thread in the Flarum Discussion Community lol.

Are you reachable through email or Discord? I wish to ask you a couple of questions related to Flarum extension development :)

Add PermissionGrid Options for Polls

In a future release, we would want to create some PermissionGrid options for polls so that the Administrator has control of what groups can view or actions they can perform.

Read

  • View polls (maybe?)
  • View poll results

Create

  • Start a poll

Participate

  • Allow poll voting
  • Allow self-poll editing

Moderate

  • Delete polls
  • Edit polls

If you have any suggestions on what names we should use or what permissions I missed, please discuss here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.