Skip to content

FriendsOfFlarum/mason

Repository files navigation

Mason by FriendsOfFlarum

License Latest Stable Version

Add custom fields to your discussions. Features:

  • Create custom fields with name, icon and description
  • Fields can be required or optional
  • Fields accept a dropdown selector or user-provided answers
  • User answers can be validated with custom Laravel Validator rules
  • You can choose the number of columns of the layout
  • (experimental) show the tags field as a Mason field

Note: due to the way the Flarum discussion composer works, it currently cannot be automatically resized to fit all fields. If you have many fields you will have to manually increase the composer height with the mouse handle.

Installation

composer require fof/mason

Updating

composer require fof/mason
php flarum migrate
php flarum cache:clear

Configuration

Once enabled, a new Mason tab will show up in the admin.

Fields

Fields can be created, edited and reordered on the page. New fields are immediately visible in the frontend.

If you delete a field, it will be removed from all discussion that used it. Fields use a "soft delete" feature so the data is preserved in the database even if you delete it. You can bring the field and its answers back by editing the database if you need.

Answers

Answers are pre-made answers for a field. If you want to keep an answer visible but prevent new discussions from using it, you can change its suggestion state. If the field accepts user values, these will show up as non-suggested answers.

You can rename an answer (either admin or user made) and it will be updated everywhere it's used.

Deleting an answer will permanently remove it from all discussion using it. Unlike fields it doesn't use "soft deletes" and as such cannot be recovered.

Permissions

The extension comes with several permissions to choose who can interact with custom fields. Check the Permissions tab to configure them.

Usage

The custom fields form will display on the discussion composer, on the first post of the discussion and as an option in the discussion edit menu. The layout can be customized via the settings available in the Mason page of the admin panel.

Updating from Flagrow

This extension replaces Flagrow Mason.

Please backup your data before attempting the update!

You can upgrade from any of the older versions of the Flagrow extension.

Then upgrade from the old extension to the new one:

composer remove flagrow/mason
composer require fof/mason

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

Links

An extension by FriendsOfFlarum