Problem/Motivation
Once #3485622: Update legacy theme hooks lands we'll have a functional navigation block with lesson and activity status available for themers.
This should be a good starting point to convert to an SDC for use with UI suite and etc.
The conversion should preserve (or improve) the caching/placeholder logic from that issue - e.g. we want to individually placeholder the activities list for each lesson so that they can be cached independently of each other and loaded ASAP both on cold and warm caches.
Issue fork lms-3515744
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #2
ob3ron commentedRemoving "PP-1" as #3485622: Update legacy theme hooks has landed, and adding as a child issue of #3448250: Improve general appearance
Comment #3
ob3ron commentedComment #5
ob3ron commentedWIP commit - includes a number of navigation improvements:
Comment #6
ob3ron commentedWill do additional code cleanup and optimization, meanwhile any feedback on the looks and function is welcome.
Comment #7
catchHaven't reviewed the MR or functionality yet, but just changing status to make it clear there's something to look at here.
Comment #8
ob3ron commentedAdded additional caching improvements and testing. Should be ready for review.
Comment #10
ob3ron commentedSorry about the accidental test changes, not sure how that happened!
Comment #11
graber commentedNo worries, just merged #3525270: Improve / fix course navigation logic, let's use training manager API as much as possible here.
Comment #13
ob3ron commentedUpdated BlockBuilder to depend on TrainingManager as the single source of truth for activity access.
Also added a progress bar and a few other tweaks to the navigation block.
Comment #15
catchAdded some comments on the MR - I think the locking can be removed and the caching logic potentially simplified a bit.
Comment #16
ob3ron commentedAddressed all feedback; should be good to go!
Comment #17
graber commentedCache is enabled.
All this will need extending automated tests coverage but I'll get to that in a separate issue.
Comment #19
graber commentedMerged and created one follow-up to optimize this a bit (#3530297: Course nav - additional caching optimization).