THM-Health / PILOS

PILOS is an easy-to-use open source front-end for BigBlueButton servers with a built-in load balancer. Docker-Images: https://hub.docker.com/r/pilos/pilos
https://thm-health.github.io/PILOS/
GNU Lesser General Public License v2.1
49 stars 18 forks source link

Attendee certificate of a specific participant #1246

Open lakano opened 1 month ago

lakano commented 1 month ago

Is your feature request related to a problem? Please describe. In some countries, when you follow a formation/instruction, you need a certificate of attendee as a proof. Currently PILOS include a list of participants but not yet the possibility to download a certificate for each of them.

Describe the solution you'd like In the attendee list popin, to add a action button « PDF » to the end of each line, to download a certificate, like this : PR-attendee-list

As each company need a specific design for theses document, I suggest to permit to upload an HTML template file and to do some search/replace the values like this : PR-attendee-certificate-template

And then on the button PDF click, to do the generation/download file : PR-attendee-certificate

Currently I've done a very quick solution on my fork where I load a file from ./storage/app/attendee-certificate.html but I doesn't have a lot of time to improve it or the necessary skills to integrate it in a better way. If you want I can create a PR with this work.

Describe alternatives you've considered Ideally I think this could be better to have an option in the Settings to upload a template file, and to prevent any error, to disable the PDF button when no template file have been yet uploaded. Also, a brief technical instructions or a default template file could be proposed.

Additional context About the search/replacement, if the participant leave/join multiple time the room, even on multiple days, this will be listed in multiple rows with the date, start time, end time and duration.

In my HTML template code I've choose to uses a TABLE/TR, and to permit to the code to known which part need to be repeated, this require to be encapsulated with « <!--ROW--> »

Then as you can see on the screenshot, multiple {keyword} are then replaced with the correct values.

lakano commented 1 month ago

Would you like I submit a PR with my current work @SamuelWei ?

SamuelWei commented 1 month ago

I am considering whether this should only be made accessible to the owner, or whether members of the room, for example, can also download it themselves. Then perhaps not just for a single meeting, but for a whole period of time across all meetings.

lakano commented 1 month ago

I suppose some institutes want to keep this control and others could appreciate to save time if the participant download it himself. An option in the (type of) room could be a good solution.

About the scenario of one meeting, the participant can join/leave multiple time for days on this meeting, my PR currently support it and will show all days/durations. It's useful for formation that require few hours every day for few weeks.

But if I understood correctly, you think about doing just one certificate for the participations of multiples rooms on a period of time. May be it's useful but not in the scenario I got with my experiences, and if you go in this direction, I suggest to put this like a 2nd tools, and not to replace it to a system based on the room. Because, if someone follow 2 formations, may be one of theses require 3 months of sessions, and this could block to have the 1st certificate of the previous formation.