Dan Brown [Wed, 16 Nov 2022 15:46:41 +0000 (15:46 +0000)]
Replaced el.components mapping with component service weakmap
Old system was hard to track in terms of usage and it's application of
'components' properties directly to elements was shoddy.
This routes usage via the components service, with element-specific
component usage tracked via a local weakmap.
Updated existing found usages to use the new system.
Dan Brown [Mon, 14 Nov 2022 23:19:02 +0000 (23:19 +0000)]
Started refactor and alignment of component system
- Updates old components to newer format, removes legacy component
support.
- Makes component registration easier and less duplicated.
- Adds base component class to extend for better editor support.
- Aligns global window exposure usage and aligns with other service
names.
Dan Brown [Sat, 12 Nov 2022 15:10:14 +0000 (15:10 +0000)]
Updated email confirmation flow so confirmation is done via POST
To avoid non-user GET requests (Such as those from email scanners)
auto-triggering the confirm submission. Made auto-submit the form via
JavaScript in this extra added step with user-link backup to keep
existing user flow experience.
Dan Brown [Wed, 9 Nov 2022 19:30:08 +0000 (19:30 +0000)]
Aligned user preference endpoints in style and behaviour
Changes their endpoints and remove the user id from the URLs.
Simplifies list changes to share a single endpoint, which aligns it to
the behaviour of the existing sort preference endpoint.
Also added test to ensure user preferences are deleted on user delete.
Dan Brown [Fri, 21 Oct 2022 20:49:29 +0000 (21:49 +0100)]
Fixed chapter fetching during joint permission building
Somehow I accidentally deleted previous line 143 in this commit: 3839bf6bf11ac6b4d19c2ae8f62a314a2c164251
which would then break permission generation for content related to, or
containing, chapters in the recycle bin.
Found via user report (subz) & debugging in discord.
Dan Brown [Mon, 10 Oct 2022 16:22:38 +0000 (17:22 +0100)]
Fixed and updated "Everyone Else" permissions handling
- Fixed inheriting control for new system.
- Tested copying shelf permissions to books.
- Added additional handling for inheriting scenario identification.
Dan Brown [Sun, 9 Oct 2022 16:14:11 +0000 (17:14 +0100)]
Centralised handling of permission form data to own class
Also updates show roles on permission view to just those with
permissions applied.
Fixes rounded borders for lone permission rows.
Moves "Everyone Else" handling from role to new class.
Dan Brown [Fri, 7 Oct 2022 14:07:09 +0000 (15:07 +0100)]
Migrated entity_permissions table to new flat format
Simplifies structure and limits content count, while allowing direct
mapping of new UI intent, where we may have entries with no permissions.
Not yet updated app logic to suit.
Tested via migrating and rolling-back, then comparing export data,
across a set of custom permission entries.
Dan Brown [Sun, 2 Oct 2022 17:09:48 +0000 (18:09 +0100)]
Added user-interface for "Everyone Else" entity permission item
Nothing on back-end logic done to hook this new option up.
Addition of permissions for role_id=0 works out of the box, but active
"everyone else" permissions, with no priviliges, is currently not
working. Needs change of permission gen logic also.
Dan Brown [Thu, 29 Sep 2022 14:05:57 +0000 (15:05 +0100)]
Added contents to book-show endpoint
Created a generic list formatting helper class for this, to align with
logic used on the search results endpoint and for easier future re-use
in a standardised way.
Also updated some class property types.
Added test to cover new books-contents results.
Related to #3734
Dan Brown [Wed, 28 Sep 2022 19:48:29 +0000 (20:48 +0100)]
Updated shelf book management to allow scroll on mobile
Updates book drag handling to be limited to the handle so scrolling can
be done on the items themselves.
Increased handling area and improved styling to support
Dan Brown [Wed, 28 Sep 2022 12:50:40 +0000 (13:50 +0100)]
Improved tag suggestion handling
- Aligned prefix-type filtering with back-end.
- Increased suggestion search cut-off from 3 to 4.
- Increased amount of suggestions shown.
- Ordered suggestions to be name asc, as you'd expect on search.
- Updated front-end filtering to use full search query, instead of
truncated version, for further front-end filtering capability.