Giter VIP home page Giter VIP logo

masquerade's Introduction

Masquerade by FriendsOfFlarum

License Latest Stable Version

The user profile generator. Includes:

  • New tab on user profile to show masquerade profile with answers provided to configured fields.
  • New tab on user profile for user to set up a masquerade profile.
  • Add, update, delete and order profile fields in admin.
  • Permission who can have a masquerade profile.
  • Permission who can view a masquerade profile.
  • Allowing you to configure forced redirection to make a (email verified) user complete the required fields.

Installation

composer require fof/masquerade:*

Update

composer require fof/masquerade:*
php flarum migrate
php flarum cache:clear

Configuration

Enable the extension. Visit the masquerade tab in the admin to configure the fields.

Be aware that the "Add new field" and "Edit field " toggle the field form when clicked.

Make sure you configure the masquerade permissions on the Admin Permissions tab to your needs.

Updating from Flagrow

This extension replaces Flagrow Masquerade.

Please backup your data before attempting the update!

First make sure you installed the latest Flagrow release will all migrations applied:

composer require flagrow/masquerade
# Go to admin panel and check extension is enabled
php flarum migrate

(Instead of running the migrate command you can also disable and re-enable the extension in the admin panel)

Then upgrade from the old extension to the new one:

composer remove flagrow/masquerade
composer require fof/masquerade:*

When you enable the new extension, the permissions and the data from Flagrow Masquerade will be moved to FoF Masquerade.

Links

An extension by FriendsOfFlarum

masquerade's People

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

masquerade's Issues

html tag change

change out <div> tags for <li> tags in the user card view to merge better with other things in the user card and/or default flarum

the list gets obnoxious when a lot of things are listed like it currently does

The "No option selected" option does not work in an optional field

Bug Report

Current Behavior
When you select an option in an optional field, you cannot unset the option.

Steps to Reproduce

  1. Select the option in the optional field and save
  2. Select "No option selected" and try to save

Expected Behavior
Since the field is optional it should be possible to return to an unset value after setting it.

Screenshots

2022-08-01.21-09-41.mp4

Environment

  • Flarum version: 1.4
  • Extension version: 2.1.2
  • PHP version: 8.1

Admin/ site owner cannot see conversations they are not a party to

Thank you for making this.
It addresses the #1 complaint from my forum members: "no PM function".

As a site owner, I would want the ability to see all private conversations (read only: without editing capability is fine).
Please consider that a site owner is responsible (and probably legally liable) for what goes on in their forum.

Fix or remove caching

There's some code for a cache feature but I don't think it's fully finished. There are some TODOs and commented code associated with it.

We should fix it, or remove that code.

Can't save Masquerade fields after edit

When I try to click on the "Edit field" button after making some changes to a field, an error pops up at the bottom saying 'Oops! Something went wrong. Please reload the page and try again.'

I would provide an error log but I'm not sure where to find it for this specific extension.
I'm using version 0.1.0-beta.6 of Flarum, PHP 5.6.25, and 0.1.0 of Masquerade.

Any help is appreciated.

Add an option to make the profile private

Consider adding an option to make the profiles private in order to comply with data protection laws or policies. Some website owners may require personal information from the users but users may not be willing to provide them if such information can't be set in private.

Can't enable the user bio back after disabling it

Reproduce: check "Disable user bio field", then uncheck it.

Issue: The bio field doesn't come back on the profile.

Cause:
https://github.com/flagrow/masquerade/blob/master/js/forum/src/mutateUserBio.js#L8

app.forum.attribute('masquerade.disable-user-bio') whose value is "0" evaluates to truthy, thus breaking that test (will always return true once the setting landed in the database). We should either parse to int first or compare with a string.

Same issue might impact app.forum.attribute('canViewMasquerade') on the next line.

type column already exists error when enabling extension

Hello,
I tried to install Masquerade in Flarum. I installed it manually with composer (sudo -u flarum composer require flagrow/masquerade). It downloaded version 0.2.0 and I tried to enable the extension in the admin panel.
request : https://flarum.exemple/api/extensions/flagrow-masquerade
answer: error code 500 (internal server error)

Flarum infos

Flarum core 0.1.0-beta.7
PHP 5.6.33-0+deb8u1
Loaded extensions: Core, date, ereg, libxml, openssl, pcre, zlib, bcmath, bz2, calendar, ctype, dba, dom, hash, fileinfo, filter, ftp, gettext, SPL, iconv, mbstring, pcntl, session, posix, Reflection, standard, shmop, SimpleXML, soap, sockets, Phar, exif, sysvmsg, sysvsem, sysvshm, tokenizer, wddx, xml, xmlreader, xmlwriter, zip, json, PDO, apcu, curl, gd, geoip, imagick, intl, mongodb, ldap, mcrypt, mysql, mysqli, pdo_mysql, pdo_sqlite, readline, redis, sqlite3, mhash, apc, Zend OPcache
EXT flagrow-analytics 0.6.0
EXT flarum-approval v0.1.0-beta.7
EXT flarum-bbcode v0.1.0-beta.5
EXT wiwatsrt-best-answer v0.1.0-beta.11
EXT flarum-emoji v0.1.0-beta.6
EXT flarum-flags v0.1.0-beta.7
EXT radixi0-sharing 0.1.0-beta.6
EXT milescellar-french v1.1.0
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 sijad-pages 0.1.0-beta.3
EXT reflar-polls 0.1.1
EXT reflar-reactions 0.1.0-beta.5.1
EXT reflar-user-management 0.1.4
EXT terabin-sitemap v1.0.2-beta.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 amaurycarrade-syndication v0.1.5
EXT flarum-tags v0.1.0-beta.8
Base URL: https://flarum.exemple
Installation path: /var/www/flarum

Server infos :
debian 8 'jessie' server, up-to-date..

Debug mode
See the very long error I obtained with the debug mode activated

--
Edit:
I tried to enable the extension on a fresh Flarum install : it also failed, same error.
I looked at nginx, PHP and flarum (storage/logs/flarum.log) logs, there is not any relevant information

I don't know how to get more precise informations
Have a good day,
Gildas

Fields positions

Feature request: Please add the ability to move up/down the fields created.

In my particular case, once I created them they seem pretty disorganized and for now the only way to rearrange them is erasing them all and create them again which is exhaustive.

In advance, thanks a lot!!!

can't activate the ext

Debug :

POST https://manslandlife.tk/forum/api/extensions/flagrow-masquerade

{
  "errors": [
    {
      "code": 500,
      "title": "Internal server error",
      "detail": "PDOException: SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'type' in /home/u857997072/public_html/forum/vendor/illuminate/database/Connection.php:390\nStack trace:\n#0 /home/u857997072/public_html/forum/vendor/illuminate/database/Connection.php(390): PDOStatement->execute(Array)\n#1 /home/u857997072/public_html/forum/vendor/illuminate/database/Connection.php(655): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}(Object(Illuminate\\Database\\MySqlConnection), 'alter table `v2...', Array)\n#2 /home/u857997072/public_html/forum/vendor/illuminate/database/Connection.php(618): Illuminate\\Database\\Connection->runQueryCallback('alter table `v2...', Array, Object(Closure))\n#3 /home/u857997072/public_html/forum/vendor/illuminate/database/Connection.php(391): Illuminate\\Database\\Connection->run('alter table `v2...', Array, Object(Closure))\n#4 /home/u857997072/public_html/forum/vendor/illuminate/database/Schema/Blueprint.php(83): Illuminate\\Database\\Connection->statement('alter table `v2...')\n#5 /home/u857997072/public_html/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 /home/u857997072/public_html/forum/vendor/illuminate/database/Schema/Builder.php(116): Illuminate\\Database\\Schema\\Builder->build(Object(Illuminate\\Database\\Schema\\Blueprint))\n#7 /home/u857997072/public_html/forum/vendor/flagrow/masquerade/migrations/2017_09_19_flagrow_fields_type.php(10): Illuminate\\Database\\Schema\\Builder->table('flagrow_masquer...', Object(Closure))\n#8 [internal function]: Illuminate\\Filesystem\\Filesystem->{closure}(Object(Illuminate\\Database\\Schema\\MySqlBuilder))\n#9 /home/u857997072/public_html/forum/vendor/illuminate/container/Container.php(507): call_user_func_array(Object(Closure), Array)\n#10 /home/u857997072/public_html/forum/vendor/flarum/core/src/Database/Migrator.php(202): Illuminate\\Container\\Container->call(Object(Closure))\n#11 /home/u857997072/public_html/forum/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\\Database\\Migrator->runClosureMigration(Array)\n#12 /home/u857997072/public_html/forum/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\\Database\\Migrator->runUp('/home/u85799707...', '2017_09_19_flag...', Object(Flarum\\Extension\\Extension))\n#13 /home/u857997072/public_html/forum/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\\Database\\Migrator->runMigrationList('/home/u85799707...', Array, Object(Flarum\\Extension\\Extension))\n#14 /home/u857997072/public_html/forum/vendor/flarum/core/src/Extension/ExtensionManager.php(234): Flarum\\Database\\Migrator->run('/home/u85799707...', Object(Flarum\\Extension\\Extension))\n#15 /home/u857997072/public_html/forum/vendor/flarum/core/src/Extension/ExtensionManager.php(124): Flarum\\Extension\\ExtensionManager->migrate(Object(Flarum\\Extension\\Extension))\n#16 /home/u857997072/public_html/forum/vendor/flarum/core/src/Api/Controller/UpdateExtensionController.php(47): Flarum\\Extension\\ExtensionManager->enable('flagrow-masquer...')\n#17 /home/u857997072/public_html/forum/vendor/flarum/core/src/Http/Handler/ControllerRouteHandler.php(53): Flarum\\Api\\Controller\\UpdateExtensionController->handle(Object(Zend\\Stratigility\\Http\\Request))\n#18 /home/u857997072/public_html/forum/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(69): Flarum\\Http\\Handler\\ControllerRouteHandler->__invoke(Object(Zend\\Stratigility\\Http\\Request), Array)\n#19 /home/u857997072/public_html/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#20 /home/u857997072/public_html/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#21 /home/u857997072/public_html/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#22 /home/u857997072/public_html/forum/vendor/flagrow/terms/src/Middlewares/RegisterMiddleware.php(43): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#23 /home/u857997072/public_html/forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flagrow\\Terms\\Middlewares\\RegisterMiddleware->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#24 /home/u857997072/public_html/forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flagrow\\Terms\\Middlewares\\RegisterMiddleware), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#25 /home/u857997072/public_html/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#26 /home/u857997072/public_html/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#27 /home/u857997072/public_html/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#28 /home/u857997072/public_html/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#29 /home/u857997072/public_html/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#30 /home/u857997072/public_html/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#31 /home/u857997072/public_html/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#32 /home/u857997072/public_html/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#33 /home/u857997072/public_html/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#34 /home/u857997072/public_html/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#35 /home/u857997072/public_html/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#36 /home/u857997072/public_html/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#37 /home/u857997072/public_html/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#38 /home/u857997072/public_html/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#39 /home/u857997072/public_html/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#40 /home/u857997072/public_html/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#41 /home/u857997072/public_html/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#42 /home/u857997072/public_html/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#43 /home/u857997072/public_html/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#44 /home/u857997072/public_html/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#45 /home/u857997072/public_html/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#46 /home/u857997072/public_html/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#47 /home/u857997072/public_html/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#48 /home/u857997072/public_html/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#49 /home/u857997072/public_html/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#50 /home/u857997072/public_html/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#51 /home/u857997072/public_html/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#52 /home/u857997072/public_html/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#53 /home/u857997072/public_html/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#54 /home/u857997072/public_html/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#55 /home/u857997072/public_html/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#56 /home/u857997072/public_html/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#57 /home/u857997072/public_html/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#58 /home/u857997072/public_html/forum/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(111): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#59 /home/u857997072/public_html/forum/vendor/flarum/core/src/Http/AbstractServer.php(55): Zend\\Stratigility\\MiddlewarePipe->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\NoopFinalHandler))\n#60 /home/u857997072/public_html/forum/vendor/zendframework/zend-diactoros/src/Server.php(157): Flarum\\Http\\AbstractServer->__invoke(Object(Zend\\Diactoros\\ServerRequest), Object(Zend\\Diactoros\\Response), Object(Zend\\Stratigility\\NoopFinalHandler))\n#61 /home/u857997072/public_html/forum/vendor/flarum/core/src/Http/AbstractServer.php(36): Zend\\Diactoros\\Server->listen(Object(Zend\\Stratigility\\NoopFinalHandler))\n#62 /home/u857997072/public_html/forum/api.php(16): Flarum\\Http\\AbstractServer->listen()\n#63 {main}\n\nNext Illuminate\\Database\\QueryException: SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'type' (SQL: alter table `v2_flagrow_masquerade_fields` add `type` varchar(255) null) in /home/u857997072/public_html/forum/vendor/illuminate/database/Connection.php:662\nStack trace:\n#0 /home/u857997072/public_html/forum/vendor/illuminate/database/Connection.php(618): Illuminate\\Database\\Connection->runQueryCallback('alter table `v2...', Array, Object(Closure))\n#1 /home/u857997072/public_html/forum/vendor/illuminate/database/Connection.php(391): Illuminate\\Database\\Connection->run('alter table `v2...', Array, Object(Closure))\n#2 /home/u857997072/public_html/forum/vendor/illuminate/database/Schema/Blueprint.php(83): Illuminate\\Database\\Connection->statement('alter table `v2...')\n#3 /home/u857997072/public_html/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 /home/u857997072/public_html/forum/vendor/illuminate/database/Schema/Builder.php(116): Illuminate\\Database\\Schema\\Builder->build(Object(Illuminate\\Database\\Schema\\Blueprint))\n#5 /home/u857997072/public_html/forum/vendor/flagrow/masquerade/migrations/2017_09_19_flagrow_fields_type.php(10): Illuminate\\Database\\Schema\\Builder->table('flagrow_masquer...', Object(Closure))\n#6 [internal function]: Illuminate\\Filesystem\\Filesystem->{closure}(Object(Illuminate\\Database\\Schema\\MySqlBuilder))\n#7 /home/u857997072/public_html/forum/vendor/illuminate/container/Container.php(507): call_user_func_array(Object(Closure), Array)\n#8 /home/u857997072/public_html/forum/vendor/flarum/core/src/Database/Migrator.php(202): Illuminate\\Container\\Container->call(Object(Closure))\n#9 /home/u857997072/public_html/forum/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\\Database\\Migrator->runClosureMigration(Array)\n#10 /home/u857997072/public_html/forum/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\\Database\\Migrator->runUp('/home/u85799707...', '2017_09_19_flag...', Object(Flarum\\Extension\\Extension))\n#11 /home/u857997072/public_html/forum/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\\Database\\Migrator->runMigrationList('/home/u85799707...', Array, Object(Flarum\\Extension\\Extension))\n#12 /home/u857997072/public_html/forum/vendor/flarum/core/src/Extension/ExtensionManager.php(234): Flarum\\Database\\Migrator->run('/home/u85799707...', Object(Flarum\\Extension\\Extension))\n#13 /home/u857997072/public_html/forum/vendor/flarum/core/src/Extension/ExtensionManager.php(124): Flarum\\Extension\\ExtensionManager->migrate(Object(Flarum\\Extension\\Extension))\n#14 /home/u857997072/public_html/forum/vendor/flarum/core/src/Api/Controller/UpdateExtensionController.php(47): Flarum\\Extension\\ExtensionManager->enable('flagrow-masquer...')\n#15 /home/u857997072/public_html/forum/vendor/flarum/core/src/Http/Handler/ControllerRouteHandler.php(53): Flarum\\Api\\Controller\\UpdateExtensionController->handle(Object(Zend\\Stratigility\\Http\\Request))\n#16 /home/u857997072/public_html/forum/vendor/flarum/core/src/Http/Middleware/DispatchRoute.php(69): Flarum\\Http\\Handler\\ControllerRouteHandler->__invoke(Object(Zend\\Stratigility\\Http\\Request), Array)\n#17 /home/u857997072/public_html/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#18 /home/u857997072/public_html/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#19 /home/u857997072/public_html/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#20 /home/u857997072/public_html/forum/vendor/flagrow/terms/src/Middlewares/RegisterMiddleware.php(43): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#21 /home/u857997072/public_html/forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(212): Flagrow\\Terms\\Middlewares\\RegisterMiddleware->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\Next))\n#22 /home/u857997072/public_html/forum/vendor/zendframework/zend-stratigility/src/Dispatch.php(88): Zend\\Stratigility\\Dispatch->dispatchCallableMiddleware(Object(Flagrow\\Terms\\Middlewares\\RegisterMiddleware), Object(Zend\\Stratigility\\Next), Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), NULL)\n#23 /home/u857997072/public_html/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#24 /home/u857997072/public_html/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#25 /home/u857997072/public_html/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#26 /home/u857997072/public_html/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#27 /home/u857997072/public_html/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#28 /home/u857997072/public_html/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#29 /home/u857997072/public_html/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#30 /home/u857997072/public_html/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#31 /home/u857997072/public_html/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#32 /home/u857997072/public_html/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#33 /home/u857997072/public_html/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#34 /home/u857997072/public_html/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#35 /home/u857997072/public_html/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#36 /home/u857997072/public_html/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#37 /home/u857997072/public_html/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#38 /home/u857997072/public_html/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#39 /home/u857997072/public_html/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#40 /home/u857997072/public_html/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#41 /home/u857997072/public_html/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#42 /home/u857997072/public_html/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#43 /home/u857997072/public_html/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#44 /home/u857997072/public_html/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#45 /home/u857997072/public_html/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#46 /home/u857997072/public_html/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#47 /home/u857997072/public_html/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#48 /home/u857997072/public_html/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#49 /home/u857997072/public_html/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#50 /home/u857997072/public_html/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#51 /home/u857997072/public_html/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#52 /home/u857997072/public_html/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#53 /home/u857997072/public_html/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#54 /home/u857997072/public_html/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#55 /home/u857997072/public_html/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#56 /home/u857997072/public_html/forum/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php(111): Zend\\Stratigility\\Next->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response))\n#57 /home/u857997072/public_html/forum/vendor/flarum/core/src/Http/AbstractServer.php(55): Zend\\Stratigility\\MiddlewarePipe->__invoke(Object(Zend\\Stratigility\\Http\\Request), Object(Zend\\Stratigility\\Http\\Response), Object(Zend\\Stratigility\\NoopFinalHandler))\n#58 /home/u857997072/public_html/forum/vendor/zendframework/zend-diactoros/src/Server.php(157): Flarum\\Http\\AbstractServer->__invoke(Object(Zend\\Diactoros\\ServerRequest), Object(Zend\\Diactoros\\Response), Object(Zend\\Stratigility\\NoopFinalHandler))\n#59 /home/u857997072/public_html/forum/vendor/flarum/core/src/Http/AbstractServer.php(36): Zend\\Diactoros\\Server->listen(Object(Zend\\Stratigility\\NoopFinalHandler))\n#60 /home/u857997072/public_html/forum/api.php(16): Flarum\\Http\\AbstractServer->listen()\n#61 {main}"
    }
  ]
}

Flarum Info :

Flarum core 0.1.0-beta.7
PHP 7.0.30
Loaded extensions: Core, date, libxml, openssl, pcre, sqlite3, zlib, bz2, calendar, ctype, curl, hash, filter, ftp, gettext, gmp, SPL, iconv, pcntl, readline, Reflection, session, standard, shmop, SimpleXML, mbstring, tokenizer, xml, bcmath, dom, fileinfo, gd, imagick, imap, intl, Phar, json, exif, mcrypt, mysqlnd, mysqli, PDO, pdo_mysql, pdo_sqlite, posix, pspell, soap, sockets, tidy, wddx, xmlreader, xmlrpc, xmlwriter, xsl, zip, phalcon, ionCube Loader
EXT flagrow-analytics 0.6.0
EXT flarum-approval v0.1.0-beta.7
EXT noriods-auto-more 0.2.0
EXT sides-autovid 0.1.0-beta.3
EXT flarum-bbcode v0.1.0-beta.5
EXT oe800-bbcode-alerts 0.1.6
EXT oe800-bbcode-cards 0.1.4
EXT antoinefr-bbcode-fa v0.1.1
EXT oe800-bbcode-pastebin 0.1.2
EXT oe800-bbcode-bars 0.1.5
EXT oe800-bbcode-special 0.1.5
EXT oe800-bbcode-tables 0.1.0
EXT beeta-dev-ext-quickquote 0.2.1
EXT beeta-dev-ext-userinfo 0.3.3
EXT zaptech-cookie-consent 0.1.0-beta3
EXT datitisev-dashboard v0.1.0-beta.7
EXT hyn-default-group 0.5.0
EXT sijad-details 0.1.2
EXT michaelbelgium-discussion-views v0.1.0-beta.7-3.1
EXT flarum-emoji v0.1.0-beta.6
EXT clarkwinkelmann-emojionearea 0.1.2
EXT flarum-english v0.1.0-beta.7
EXT issyrocks12-filter 1.2.2
EXT flagrow-ads 0.1.0-beta.4
EXT flagrow-byobu 0.1.2
EXT flagrow-canned-messages 0.1.0
EXT flagrow-impersonate 0.1.0
EXT flagrow-linguist 0.1.2
EXT flagrow-terms 0.2.0
EXT flagrow-upload 0.6.0
EXT flagrow-user-directory 0.1.0
EXT flarum-flags v0.1.0-beta.7
EXT milescellar-french v1.1.0
EXT sijad-recaptcha 0.0.2
EXT clarkwinkelmann-high-contrast 0.1.1
EXT matpompili-imgur-upload v1.0.0
EXT flagrow-latex 0.1.1
EXT flarum-likes v0.1.0-beta.6
EXT sijad-links 0.1.0-beta.6
EXT flarum-lock v0.1.0-beta.7
EXT flarum-markdown v0.1.0-beta.5
EXT ganuonglachanh-markdown-editor 0.9
EXT flarum-mentions v0.1.0-beta.7
EXT isaa-isaa-opengraph 0.1
EXT sijad-pages 0.1.0-beta.3
EXT michaelbelgium-profile-views v0.1.0-beta-7-1
EXT flarum-pusher v0.1.0-beta.6
EXT reflar-gamification 3.0.6
EXT reflar-koseki 0.1.4
EXT reflar-nightmode 0.1.5
EXT reflar-polls 1.2.5
EXT reflar-pretty-mail 0.1.0-beta.2
EXT reflar-reactions 1.0.0-beta.4.1
EXT reflar-uncache 0.1.0-beta.2
EXT push-edx-chat 0.6.0
EXT zeokat-seoslugs v0.1.1
EXT ganuonglachanh-search 0.4
EXT davis-socialprofile 0.2.3
EXT sijad-spoiler-alert 0.1.0
EXT sijad-auth-steam 0.1.10
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
EXT vingle-share-social 0.1.0
Base URL: https://manslandlife.tk/forum
Installation path: /home/u857997072/public_html/forum

Question : does i need delete the colum who alredy existe ? and how i dont want to Fu the database :D ?

Editing a field duplicates it

Anytime a field is edited in the admin panel, the changes are saved to a new field.

The issue was introduced in d80fd35 when I removed id from the attributes array.

The reason this breaks the request is because of bad design. The id passed in the POST/PUT url to https://github.com/FriendsOfFlarum/masquerade/blob/master/src/Api/Controllers/SaveFieldController.php when saving isn't actually used as the id when retrieving the modal, instead the id is pulled from the attributes, where it has no business.

$id = Arr::get($attributes, 'id');

I'll refactor this mess to fix.

Make saved / needs saving state more obvious in the admin

Currently when you edit a field, nothing tells you if you need saving. The save button itself is called "edit field" which is very unintuitive. The button should really be disabled until you make a change.

When creating the field types I added an autosave feature when you edit the dropdown type so that if you believe "add" saves the field, well it does... But you should actually be hitting "edit field" to have the new options list saved.

Can't run migrations down

I'm unable to use flarum migrate:reset against migrations that don't have down defined (experienced with Linguist). This probably also affects uninstallation via admin panel.

The fix is to just add a no-op down function.

I'm creating this issue to not forget about it, I should be able to take care of it later.

Tab not showing up after activating

Hi!
I'm trying to activate the extension in a relatively fresh installation of flarum. It doesn't give me any errors, not even in debug mode, but the masquerade Tab is not showing up.

specs:
Flarum 0.1.0-beta.8.1
PHP 7.2.10-0ubuntu0.18.04.1
MySQL 5.7.25-0ubuntu

steps:

  • install with composer
  • activate from admin panel

Hide empty fields

Hello everyone,
well, as I wrote, especially for the fields displayed under the user bio would be nice to be able to hide the empty ones

Thanks

Created at and updated at timestamps are never updated

In the flagrow_masquerade_fields as well as flagrow_masquerade_answers table, created_at and updated_at stay at value 0000-00-00 00:00:00 all the time.

Maybe we don't need these values, but if they are in the table it would be nice to keep them updated.

Make this extension extensible

This extension should export its components to make it extensible.
E.g. I want to add a placeholder text when none of the fields are completed, but I cannot do this in my extension.

Redirect the user home after completing their profile

When a user is forced to complete their profile and they do so, it is unclear to them if they were successful or how to continue to the forum if they were.

Setup

Flarum beta 14, extension at 0.3.6, "Force users to complete profile" = true

Steps to reproduce

1. A user signs up
They are redirected to /masquerade/configure and shown a yellow warning to fill out their profile
2. They fill out the form and press Save
BUG: the yellow warning doesn't go away (since the page isn't actually refreshed) - user doesn't know they were successful
CONFUSION: the user (being new to the forum) doesn't know where to go next (it's amazing how many people don't know that the navbar title is usually a link to the home page)

Proposed solutions

Obviously, making the warning go away after the profile is complete is the first step.
To address the new user confusion part, I see two possibilities:

  1. Redirect the user to the front page (or a configurable location?)
  2. Display a success message (where the warning was) along the lines of "Your profile is now complete! You may continue to the forum" (the link taking them to the front page)

I'm personally leaning more towards (2) as it seems a bit less "rigid" if that makes sense, but perhaps (1) could also be implemented as a configurable option on top of (2) for those that want it.

Thoughts? (I need this for my forum, so I can implement it myself, unless someone more familiar with the codebase can spare the time ๐Ÿ˜…)

More flexible validation for larger dropdowns

This was touched on by an issue last year ( #47 ), but I think it is worth revisiting since simply manually changing the column type/size of the schema isn't really an ideal approach.

A very common use-case is "country" . There are almost 200 of them in existence, and obviously they aren't all going to fit into the validation column, even using 2-byte country codes.

There are probably several ways to solve this, but one fairly quick and easy method might be to create an auxiliary hasMany table called dropdown_values or something. It might look something like:

COLUMN DATATYPE
id INT
fof_masquerade_field_id
value

So basically, it would just map to whatever the dropdown field id is.

Most of that is under-the-hood work, and would be transparent to the admin/user, of course.

To make it even better, there could be a quick-and-dirty CSV import option as well, perhaps, but that isn't really the core issue. It's the storage.

Just a thought!

Hide empty fields in user profile

Feature Request

The fields with empty answer can be hidden in the user profile, instead of displaying the field name with empty answer.

I tried modifying the code to add this functionality, but I wasn't very familiar with the structure of the flarum extension, so I failed...

Unable to uninstall the extension

PHP Version 7.0.15

I'm reproducing it by simply uninstalling the extension.

Logs thrown:
PHP Fatal error: Uncaught TypeError: Argument 1 passed to Flarum\\Extension\\ExtensionManager::migrateDown() must be an instance of Flarum\\Extension\\Extension, null given, called in ExtensionManager.php on line 171 and defined in ExtensionManager.php:250 Stack trace: #0 ExtensionManager.php(171): Flarum\\Extension\\ExtensionManager->migrateDown(NULL) #1 UninstallExtensionController.php(44): Flarum\\Extension\\ExtensionManager->uninstall(Object(Flarum\\Extension\\Extension)) #2 AbstractDeleteController.php(25): Flarum\\Api\\Controller\\UninstallExtensionControll in ExtensionManager.php on line 250

Validation field too small for answers

I have a country of origin drop down list however the validation field varchar (255) cannot hold the complete list of country names. I attempted to manually change the database field to text and manually populated the field however interface trims the data to 255 characters.
Would you consider changing the field type to something capable of holding a larger field set, or where could I look in the code to changing this manually.

Add Option to Add Fields to Registration Form

It has come to my attention that the user bio will be removed entirely from core in beta 8. I can already predict that Masquerade will be one of the top wanted extensions when that time comes to fill in the gap for user bios. So, as a feature request and suggestion, would it be possible to add an option to add the fields created into the sign-up modal? I think it would be perfect and attractive for communities that want user information when the user signs up. Such as age, gender, location, birthday, etc.

No translation fallback and UI problem

Hi and thanks for the plugin.

I just started experimenting with Flarum in general, so correct me if flarum does not support translation fallback, but it looks like there is no translation fallback for this extension.

Also, it seems like there is an UI problem (see screenshot below).

image

I will provide the translation for french users.
Thanks!

Hitting the edit button to save any edits to a field errors out et. al

There are two problems that are part of this release. First, wherever I hit the edit button to try to save an edit to a field, I get "Oops! Something went wrong. Please reload the page and try again." Second, if I am just beginning to make a field of the type dropdown menu and try adding more than one option, the extension just saves and closes after hitting the plus sign for a second option.

Links look not well formatted

image

Bug Report

Steps to Reproduce

  1. Create a link field
  2. Fill in some values
  3. See the bad formatting
Flarum core 1.6.3
PHP version: 8.1.14
MySQL version: 10.9.3-MariaDB-1:10.9.3+maria~ubu2204
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, exif, mysqli, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, readline, shmop, SimpleXML, sockets, sqlite3, sysvmsg, sysvsem, sysvshm, tokenizer, xmlreader, xmlwriter, xsl, zip, Zend OPcache, xdebug
+----------------------+---------+--------+
| Flarum Extensions    |         |        |
+----------------------+---------+--------+
| ID                   | Version | Commit |
+----------------------+---------+--------+
| flarum-flags         | v1.6.1  |        |
| flarum-approval      | v1.6.1  |        |
| flarum-subscriptions | v1.6.3  |        |
| flarum-tags          | v1.6.1  |        |
| fof-subscribed       | 1.1.2   |        |
| fof-passport         | 1.0.0   |        |
| fof-masquerade       | 2.1.3   |        |
| fof-follow-tags      | 1.1.7   |        |
| flarum-suspend       | v1.6.1  |        |
| flarum-sticky        | v1.6.1  |        |
| flarum-statistics    | v1.6.1  |        |
| flarum-mentions      | v1.6.3  |        |
| flarum-markdown      | v1.6.1  |        |
| flarum-lock          | v1.6.1  |        |
| flarum-likes         | v1.6.1  |        |
| flarum-lang-german   | 1.4.6   |        |
| flarum-emoji         | v1.6.1  |        |
| flarum-bbcode        | v1.6.0  |        |
+----------------------+---------+--------+
Base URL: http://localhost:8003
Installation path: /home/alex/priv/diplomacyde/flarum/src
Queue driver: sync
Session driver: file
Mail driver: mail
Debug mode: off

Weird issue

After installing masquerade an adding a field i go to my profile and i complete the input. Then i go back to check the profile and i get a white page, with only the header menu.

Suggestion: images/icons shown based on field value

I will confess that I am new to Flarum, and there may already be some way of doing this via templating or something, but instead of showing something like this on a profile page:

"Favorite sports team: Dallas Cowboys"

It would be really nifty if instead of the text, we could just show a badge/icon/image on their profile page, based on whatever value the user chose from a dropdown, etc. In this simple example, perhaps the team logo.

Just a thought!

User bio fields are not displayed sometimes

Issue
Sometimes bio fields are not displayed on user bio

Steps to reproduce

  1. Start a new session
  2. Navigate to a discussion and hover over a user who has bio fields available
  3. No bio fields are displayed
  4. Click on user shortcut from the card to take you to their profile
  5. No bio fields are displayed
  6. Refresh the page in browser
  7. Bio fields are displayed
  8. From the profile, click on any user post and hover their name from a discussion again
  9. Bio fields are displayed

Cannot sort fields in admin

Hi, I cannot sort field in admin, it's showing JS exception in console upon page load:

ProfileConfigurePane.js:30 Uncaught TypeError: this.$(...).sortable is not a function
    at ProfileConfigurePane.config (ProfileConfigurePane.js:30)
    at Object.e.attrs.config (Component.js:111)
    at mithril.js:447
    at mithril.js:1353
    at b (mithril.js:189)
    at Function.y.render (mithril.js:1353)
    at mithril.js:1567
    at b (mithril.js:189)
    at ut (mithril.js:1563)
    at Function.y.redraw (mithril.js:1547)

I tried it with version from composer and current master, but the result is same.

Cleanup TODOs

There are still many TODOs in the code. Some are in fact done and other are abandoned features.

This needs some cleaning.

Impossible to see the profile page of a user named "configure"

Currently two routes are used on the forum side:

  • /masquerade/configure
  • /masquerade/:username

As a consequence, accessing a user named configure will simply return the configuration page of the current actor, preventing access to the actual profile.

We should probably rename the configure route to something different. Ideally we should take the opportunity to use a route that will allow #11

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.