Our client is a financial company. They decided to create a web service for employees of the financial organizations, allowing to track individual progress in professional training; including a multi-level permission system based on job position, and personalized dashboard experience with distinct per-user data cache.
Drupal was already in use by client for the corporate site. For the same reason Drupal was chosen in the past – an excellent ratio of time invested to the business value returned – the client decided to use Drupal for this project.
Also Drupal has a very flexiball users, permissions and roles management system. It was the main requirement for this project.
There are several roles:
Guest.
Users with this role can see only the Frontpage.
Bank employee.
Users can record their training activities, print and export them. He can only enter data up to a key date. This is specified by the system, but can be changed by users with a Bank admin role. A bank employees sees only his data.
Bank Leader.
An executive only sees his bank employees and their training data. The Bank Leader can correct this data. An executive gets a masquerade function and support for bank employees.
Bank Admin.
Bank Admin manages bank employees and Bank Leader. He can do everything Bank Leader can.Furthermore, he can import and correct bank employees via a CSV file. A BankAdmin sees only its executives and bank employees. There can be several bank admins per bank.
The requirements for roles and permissions were implemented using the Drupal core roles and permissions system and a custom module.
The views module was used to create reports with filtering and grouping results. Custom modules that modify and extend the functionality of Views have been created.
Chart.js JavaScript library used for charting
The client received a web service that allows financial companies:
600+ financial organizations and 12000+ employees are registered on the site.
Technical specifications
Drupal version: Drupal 8.x
Key modules/theme/distribution used:
Bootstrap Barrio theme
Masquerade
Email Registration
Views (in Drupal 8 core)
Why these modules/theme/distribution were chosen:
Bootstrap Barrio theme
We used Bootstrap Barrio theme to create custom SASS-based sub-theme.
Masquerade
Used to allow users with Group admin role to switch users and surf the site as a user from the Groupe (no password required). And then switch back to their own user account at any time.
Email Registration
Module was chosen to allow users to sign in to the site using their corporate emails, not site-specific username.
Views
To create a custom reports.
We can implement a similar solution for you
she-expert.org is a project about women who share their knowledge and experiences.
In order to attain the status of “expert”, a site visitor must…