* migration task to update activity.performed_by (with object_id) for logout action (was always user guest instead of the real user)
* activities: use the actual regrouped lines to list filter users (instead of performing a separate SQL query)
In order to avoid loading user context as "guest" and then wait to be in ws_images_uploadAsync function to authenticate and load a new user context. This way we deal with "automatic" authentication in the same place (as apache auth or url auth) and we use the more common user context loading mecanism. Making Community compatible is now much easier.
To avoid duplicating too many lines of ws.php into inc/user.inc.php, I have moved the init of ws.php into inc/ws_init.inc.php
* at the end of the upload of after a maximum duration, move the photos from the lounge to their actual categories.
* do not invalidate user cache when photos are added in the lounge, thus avoiding to rebuild cache on every photo uploaded
* the lounge system activates itself only beyond 50k (by default) photo
* Add a select dropdown to chose how many tag is displayed per page
* Add a message beside selection's buttons to apply selection to all tags
* Bug and design fixes
* Hide Tag item when there are more than 5
* Change data format in Ajax calls
* Remove useless code in tag.php
* Remove pwg_token in pwg.tags.add
* Minor design fixes
* Create the new design of tag manager
* Replace all actions by ajax actions
* Add delete, rename, duplicate and merge tag's functions in the Piwigo API
* Modification of group manager to match both designs
* Icon colour standardized with intro page in css
* Dark mode colour changes
* Load state changes on several actions (especially in delete popin)
* Rename group action is now effective if the name didn't change
* Implement new API function pwg.groups.merge
* Generalize the delete group function in admin/include/functions.php
* Implement merge action in Group Manager
* Add loading state on grouped delete in group manager
* Member manager's design fixes
* for the name of the file in buffer directory, do not use the name given by the user, but the md5 of the name without extension
* function add_uploaded_file deletes uploaded file if not expected
* rename methods to pwg.users.favorites.getList + pwg.users.favorites.add + pwg.users.favorites.remove (better for alpha ordered listing)
* simplify method ws_users_favorites_getList to only work with current user
* use the new option "ignore" on single_insert