NAME

Mojolicious::Plugin::Fondation::Group::UI::Bootstrap - Web UI extension for Fondation::Group — injects group checkboxes into user forms

VERSION

version 0.01

SYNOPSIS

# In myapp.conf:
plugin 'Fondation' => {
    dependencies => [
        'Fondation::Model::DBIx::Async',
        'Fondation::User',
        'Fondation::User::UI::Bootstrap',
        'Fondation::Group',
        'Fondation::Group::UI::Bootstrap',
    ],
};

DESCRIPTION

Mojolicious::Plugin::Fondation::Group::UI::Bootstrap provides a Bootstrap 5 web interface for group management. It injects group-related zones into user forms and adds a standalone group administration page.

This plugin is the UI counterpart to Mojolicious::Plugin::Fondation::Group, which provides the backend API and data model. The UI plugin depends on Mojolicious::Plugin::Fondation::Layout::Bootstrap for Bootstrap assets and layout.

DEPENDENCIES

This plugin depends on:

All dependency resolution is handled automatically by the Fondation plugin loader.

ROUTES

ZONES

The plugin injects zones into user management forms provided by Mojolicious::Plugin::Fondation::User::UI::Bootstrap:

HTML zones

JavaScript zones

TEMPLATES

The plugin ships one template in share/templates/group/list.html.ep:

MENU

A menu entry is added under admin_menu / Administration:

[Groups]  (fas fa-shield-alt)  →  /groups

JAVASCRIPT

DatatableGroup.js

Bootstrap DataTable integration for the group list page (share/public/js/DatatableGroup.js). Handles:

Zone functions

When the Group UI plugin is active, the User edit form calls loadGroups(user) to populate the group picker and collectGroupAssignments() to collect group IDs before saving.

TRANSLATIONS

Translation files are provided for English and French in share/translations/. Keys include group management labels (Groups list, Add group, Name, Permissions, Save, Delete, etc.).

SEE ALSO

Mojolicious::Plugin::Fondation, Mojolicious::Plugin::Fondation::Group, Mojolicious::Plugin::Fondation::User::UI::Bootstrap, Mojolicious::Plugin::Fondation::Layout::Bootstrap

AUTHOR

Daniel Brosseau dab@cpan.org

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Daniel Brosseau.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.