Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
219 commits
Select commit Hold shift + click to select a range
3343656
TD-5700-fix
AnjuJose011 Jul 3, 2025
20ca42e
TD-5727
AnjuJose011 Jul 10, 2025
19d6cfc
TD-5727
AnjuJose011 Jul 10, 2025
75c1ca1
Side Navigation ViewModel
OluwatobiAwe Jul 27, 2025
08789f7
updates for side navigation component
OluwatobiAwe Jul 29, 2025
f2aa99a
Merge pull request #1285 from TechnologyEnhancedLearning/Develop/Feat…
OluwatobiAwe Jul 29, 2025
2db7358
Merge pull request #1283 from TechnologyEnhancedLearning/TD-5727-Cont…
AnjuJose011 Jul 30, 2025
a8c26db
Merge pull request #1286 from TechnologyEnhancedLearning/TD-5700-Reso…
AnjuJose011 Jul 30, 2025
bcd5659
bit of moodle refactoring and reload the moodle user
Jul 30, 2025
60f1317
Rolling back Models to 48 to fix the build
Jul 30, 2025
6242cfd
Merge pull request #1289 from TechnologyEnhancedLearning/Develop/Fixe…
binon Jul 31, 2025
3ff0fc7
Removed moodle models in WebUI
Jul 31, 2025
c60e165
Removed the Moodle models in WebUI
Jul 31, 2025
5dab833
Merge remote-tracking branch 'origin/release-v2.6.1-Ivory' into Devel…
Jul 31, 2025
22a4ece
Merge branch 'Develop/Feature-Revised-My-Learning-implementation' int…
swapnamol-abraham Jul 31, 2025
d73ad90
Merge pull request #1293 from TechnologyEnhancedLearning/Merge-Unfiie…
swapnamol-abraham Jul 31, 2025
fb3874a
Breadcrumb banner
OluwatobiAwe Jul 31, 2025
a67dc13
padding changes
OluwatobiAwe Jul 31, 2025
40ae84a
Merge pull request #1294 from TechnologyEnhancedLearning/Develop/Feat…
OluwatobiAwe Jul 31, 2025
5eedd65
Moved entrolled courses function to openAPI
Jul 31, 2025
58da868
tidied up some code
Aug 1, 2025
02c6b66
Merge pull request #1296 from TechnologyEnhancedLearning/RC
AnjuJose011 Aug 1, 2025
a7d528e
Merge branch 'release-v2.6.1-Ivory' into Develop/Features/TD-5693_ref…
Aug 1, 2025
081fa3d
Merge branch 'Develop/Feature-Revised-My-Learning-implementation' int…
swapnamol-abraham Aug 1, 2025
0adc989
Merge pull request #1297 from TechnologyEnhancedLearning/Merge-into-M…
swapnamol-abraham Aug 1, 2025
2efc343
Merge pull request #1295 from TechnologyEnhancedLearning/Develop/Feat…
binon Aug 1, 2025
fcff003
TD-5761: Draft commit
ArunimaGeorge Aug 1, 2025
b575dbe
Active menu item update
OluwatobiAwe Aug 1, 2025
6d96638
Merge pull request #1298 from TechnologyEnhancedLearning/Develop/Feat…
OluwatobiAwe Aug 1, 2025
cde46f7
TD-5761: Merging latest from feature branch.
ArunimaGeorge Aug 5, 2025
a53b976
TD-5761: Merging latest from feature branch
ArunimaGeorge Aug 5, 2025
be06cf3
Merge pull request #1311 from TechnologyEnhancedLearning/Merge-into-m…
swapnamol-abraham Aug 7, 2025
8efff64
TD-5893 & TD-5835: Recent Learning page implementation
swapnamol-abraham Aug 11, 2025
b5741b2
Removed the secret from appsettings
swapnamol-abraham Aug 11, 2025
63d6771
Reverted the changes
swapnamol-abraham Aug 11, 2025
7a9a616
DB changes included and corrected the typo in the class
swapnamol-abraham Aug 11, 2025
e43d930
Merge branch 'Develop/Features/TD-3132-Unified-platform-interface' in…
swapnamol-abraham Aug 12, 2025
6f96106
Merge pull request #1315 from TechnologyEnhancedLearning/Develop/Feat…
swapnamol-abraham Aug 12, 2025
cd70949
Corrected the build errors
swapnamol-abraham Aug 12, 2025
aa2f2f9
Merge branch 'Develop/Feature-Revised-My-Learning-implementation' of …
swapnamol-abraham Aug 12, 2025
4896c6a
Merge pull request #1322 from TechnologyEnhancedLearning/Develop/Feat…
swapnamol-abraham Aug 12, 2025
7a3409b
TD-5761: Latest changes.
ArunimaGeorge Aug 12, 2025
351f55a
Fixed the routing issues for the unauthorized user access
swapnamol-abraham Aug 18, 2025
43cb646
Merge pull request #1335 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Aug 18, 2025
8b0487f
Styleing issues fixed
swapnamol-abraham Aug 18, 2025
abb1816
Merge pull request #1336 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Aug 18, 2025
c747f51
TD-5711: My Learning page redesign
swapnamol-abraham Aug 20, 2025
26100fe
Removed unused model objects
swapnamol-abraham Aug 20, 2025
311bc2c
TD-5761: merging latest changes
ArunimaGeorge Aug 20, 2025
85c1a42
My Learning page resign - SP changes
swapnamol-abraham Aug 20, 2025
22b225e
TD-5761: Revised My Account screen implementation
ArunimaGeorge Aug 20, 2025
1f14f22
TD-5761: Removing unused lines of code.
ArunimaGeorge Aug 20, 2025
e2f2749
Merge pull request #1341 from TechnologyEnhancedLearning/Develop/Feat…
swapnamol-abraham Aug 21, 2025
b40a0b6
Merge pull request #1340 from TechnologyEnhancedLearning/Develop/Feat…
swapnamol-abraham Aug 21, 2025
008a464
TD-5764: Bookmarks sub page implementation
swapnamol-abraham Aug 21, 2025
38ce56d
Merge pull request #1347 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Aug 21, 2025
7351191
merge
OluwatobiAwe Aug 21, 2025
7a34d63
TD-5765 update
OluwatobiAwe Aug 21, 2025
0a95a5f
.
OluwatobiAwe Aug 21, 2025
87455a8
Merge remote-tracking branch 'origin/Develop/Features/TD-3132-Unified…
OluwatobiAwe Aug 21, 2025
e2b9d7b
TD-5765 Update
OluwatobiAwe Aug 22, 2025
4484d20
Get Certificate details SP
OluwatobiAwe Aug 22, 2025
dee48ff
Merge pull request #1352 from TechnologyEnhancedLearning/Develop/Feat…
OluwatobiAwe Aug 22, 2025
0aa291c
TD-6101: Login Wizard changes
ArunimaGeorge Aug 29, 2025
8f5c990
Merge pull request #1364 from TechnologyEnhancedLearning/Develop/Feat…
ArunimaGeorge Sep 1, 2025
51005d8
Merge pull request #1365 from TechnologyEnhancedLearning/Develop/Feat…
AnjuJose011 Sep 1, 2025
c4be52f
Included an existing file
OluwatobiAwe Sep 1, 2025
d9f039c
Merge pull request #1366 from TechnologyEnhancedLearning/sp-fix-for-T…
OluwatobiAwe Sep 1, 2025
5b36ec5
null check for activity start and end date
OluwatobiAwe Sep 2, 2025
5220ce3
Removed the hard coded user id from the code
swapnamol-abraham Sep 2, 2025
1e2d421
Merge pull request #1368 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Sep 2, 2025
5dc818e
Fixed the syntax issues with in the sp
swapnamol-abraham Sep 2, 2025
16a3851
Merge pull request #1369 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Sep 2, 2025
8c63beb
Merge pull request #1367 from TechnologyEnhancedLearning/sp-fix-for-T…
AnjuJose011 Sep 2, 2025
bb4f2ff
TD-5714: Implement new header
swapnamol-abraham Sep 2, 2025
2a2e600
Merge pull request #1370 from TechnologyEnhancedLearning/Develop/Task…
swapnamol-abraham Sep 2, 2025
bbf0946
fixes to check recent Learning activity iossue
swapnamol-abraham Sep 2, 2025
88ec502
Merge pull request #1371 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Sep 2, 2025
2ccae81
Removed the commented code
swapnamol-abraham Sep 3, 2025
6c63c4a
Merge pull request #1373 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 3, 2025
a9e353b
fixes
AnjuJose011 Sep 4, 2025
81284ac
Merge pull request #1381 from TechnologyEnhancedLearning/TD-6109-CDC
AnjuJose011 Sep 4, 2025
3034111
TD-6116 nuget.config.cicd and workflow change
Phil-NHS Sep 4, 2025
5a582a5
Merge pull request #1378 from TechnologyEnhancedLearning/Develop/Feat…
Phil-NHS Sep 4, 2025
1877729
TD-6134: My account personal details page issues
ArunimaGeorge Sep 5, 2025
ede0e18
TD-6147: Fixed issue with the wording of the headings on the 'My acco…
ArunimaGeorge Sep 5, 2025
5508390
Merge pull request #1384 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 8, 2025
1df0a8b
Merge pull request #1383 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 8, 2025
31f8950
Fixes for Mylearning page not diplaying courses
swapnamol-abraham Sep 8, 2025
99550e7
Merge pull request #1389 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Sep 8, 2025
f6e5da1
Fixed the SIT issues
swapnamol-abraham Sep 8, 2025
d0cb76f
Removed the hardcoded value
swapnamol-abraham Sep 8, 2025
71b13f5
Merge pull request #1390 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 9, 2025
cf4f7bd
TD-6138: Fixed issues on security tab on my account and added user icon.
ArunimaGeorge Sep 10, 2025
1182f3f
TD-6138: updated styles.
ArunimaGeorge Sep 10, 2025
a7700a7
Merge pull request #1391 from TechnologyEnhancedLearning/Develop/Fixe…
ArunimaGeorge Sep 10, 2025
e698b78
TD-5711-Fixes
AnjuJose011 Sep 11, 2025
13b577a
Update Toggle.cshtml
AnjuJose011 Sep 11, 2025
7f2f7cc
Merge pull request #1392 from TechnologyEnhancedLearning/TD-5711-Book…
AnjuJose011 Sep 11, 2025
7a79a5e
TD-6072 script
OluwatobiAwe Sep 12, 2025
ef91d4d
automated the selection of nodepathId
OluwatobiAwe Sep 12, 2025
c1ff372
Merge pull request #1398 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 12, 2025
f3e02aa
Fixes
AnjuJose011 Sep 15, 2025
c8d3bd2
Merge pull request #1400 from TechnologyEnhancedLearning/TD-5764-Back…
AnjuJose011 Sep 15, 2025
2960493
TD-6133: Fixed issues on Employment tab - My account
ArunimaGeorge Sep 15, 2025
3c75360
Merge pull request #1409 from TechnologyEnhancedLearning/Develop/Fixe…
ArunimaGeorge Sep 15, 2025
a0579e7
TD-6088: Refractor recent activity tray to "My courses and elearning"
swapnamol-abraham Sep 15, 2025
e10ba18
Model Version updated
swapnamol-abraham Sep 16, 2025
2a9a54c
Merge pull request #1410 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 16, 2025
81b0286
TD-6208 update
OluwatobiAwe Sep 16, 2025
ddd2241
Merge remote-tracking branch 'origin/RC' into Develop/Fixes/TD-6208
OluwatobiAwe Sep 16, 2025
a24a6be
null check for ResourceReferenceID in GetUserCertificateDetails SP
OluwatobiAwe Sep 16, 2025
d0e3b4f
Merge pull request #1411 from TechnologyEnhancedLearning/Develop/Fixe…
OluwatobiAwe Sep 16, 2025
5a64171
Dates Returning Null/0 from Moodle API Endpoint for Recent Learning
swapnamol-abraham Sep 16, 2025
952d106
TD-6182: Fixed issues with preloading place of work details and remov…
ArunimaGeorge Sep 16, 2025
de3fb1f
Merge pull request #1413 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 16, 2025
4742b57
TD-6208 Update : make certificate available for informal certificate …
OluwatobiAwe Sep 16, 2025
285fc32
Merge pull request #1414 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 16, 2025
97e9969
Fixed the issues with the dashboard selection
swapnamol-abraham Sep 16, 2025
66fbf24
Merge pull request #1412 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 16, 2025
1d13fc0
Fixes for the SIT issues
swapnamol-abraham Sep 17, 2025
065f5fd
Removed hardcoded userid
swapnamol-abraham Sep 17, 2025
6029a7d
Removed the commented line
swapnamol-abraham Sep 17, 2025
51bb3dc
Merge pull request #1415 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 17, 2025
6c1f4cb
TD-6181: SIT defects
swapnamol-abraham Sep 17, 2025
4224a42
Added courses also in the fliterSummary
swapnamol-abraham Sep 17, 2025
db4d3b3
Merge pull request #1416 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 17, 2025
052225c
TD-6181 - Fixes for Issue 5
swapnamol-abraham Sep 17, 2025
b7f9a31
TD-6223- SIT fixes
swapnamol-abraham Sep 17, 2025
29eb4b7
Implemented filter summary in certificate page
swapnamol-abraham Sep 17, 2025
f05a48f
Added resource veersionid in the sp
swapnamol-abraham Sep 17, 2025
6247f33
Merge pull request #1417 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 17, 2025
cdaa30d
TD-6230: SIT Defects-Recent Learning Page-2
swapnamol-abraham Sep 18, 2025
ca0bba9
TD-6213 Informal assessment ef query fix
OluwatobiAwe Sep 18, 2025
59887e6
TD-6208 Certificate Status update
OluwatobiAwe Sep 18, 2025
6ffe3ea
TD-6208 Certificate Status update
OluwatobiAwe Sep 18, 2025
f08d465
TD-6230: Header menu style and pagination issue
swapnamol-abraham Sep 18, 2025
33f31a3
Merge pull request #1419 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 19, 2025
ff7cf69
Merge pull request #1421 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 19, 2025
0927c78
Merge pull request #1420 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 19, 2025
548a8bc
Merge remote-tracking branch 'origin/RC' into Develop/Fixes/TD-6213
OluwatobiAwe Sep 19, 2025
3653734
TD-6213
OluwatobiAwe Sep 19, 2025
00b0464
. removed local test id
OluwatobiAwe Sep 19, 2025
1ba164c
Merge pull request #1424 from TechnologyEnhancedLearning/Develop/Fixe…
OluwatobiAwe Sep 19, 2025
fa16dce
TD-6213 Assessment ResorceType Update and LH model update
OluwatobiAwe Sep 19, 2025
2a2746f
TD-6228: Fixed headings issue on Activity report
ArunimaGeorge Sep 19, 2025
2a2a689
TD-6228: alignment updated
ArunimaGeorge Sep 19, 2025
49f86df
Fixes
AnjuJose011 Sep 22, 2025
9c26904
Merge pull request #1426 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 22, 2025
1e80fe0
Merge pull request #1425 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 22, 2025
d9cf549
Merge pull request #1427 from TechnologyEnhancedLearning/TD-6161-Cour…
AnjuJose011 Sep 22, 2025
85d9321
TD-6213 Informal Assessment filtering update fix
OluwatobiAwe Sep 23, 2025
dbcc6a5
Merge pull request #1430 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 23, 2025
6ca1cba
TD-6243: Introduce progress details for audio and video resources on …
swapnamol-abraham Sep 23, 2025
be31a84
Merge branch 'RC' into Develop/Fixes/TD-6243-Introduce-progress-detai…
swapnamol-abraham Sep 23, 2025
be33681
Merge pull request #1433 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 23, 2025
eff0ec1
STyle corrections for dashboard page
swapnamol-abraham Sep 23, 2025
b3f80fd
Corrected the wordings
swapnamol-abraham Sep 23, 2025
3ab97ac
TD-6228: Fixed alignment issue on Activity report
ArunimaGeorge Sep 23, 2025
9f54e8a
Merge pull request #1434 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 23, 2025
a2a624a
Merge pull request #1435 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 23, 2025
266c546
Style modified
swapnamol-abraham Sep 24, 2025
5049073
Added default card in the certificate tray
swapnamol-abraham Sep 24, 2025
41adca2
Merge pull request #1438 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 24, 2025
b73c288
fixed the pagination issue
swapnamol-abraham Sep 24, 2025
508acc0
Intoduced view progress in recent learning page
swapnamol-abraham Sep 24, 2025
dfd492d
Merge pull request #1439 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 24, 2025
6996fc8
TD-6213 revert changes for informal assessment
OluwatobiAwe Sep 25, 2025
856d2a1
merged
OluwatobiAwe Sep 25, 2025
f0028e2
Merge pull request #1440 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 25, 2025
1189f03
The end title card should appear when the record count is greater tha…
swapnamol-abraham Sep 26, 2025
9722f6a
Merge pull request #1441 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 26, 2025
c7ffa43
TD-6264 updates
OluwatobiAwe Sep 29, 2025
9646168
TD-6282: Dashborad and notification optimization
swapnamol-abraham Sep 30, 2025
4e3e8c5
Merge pull request #1448 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 30, 2025
c9ae303
Merge pull request #1451 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Sep 30, 2025
77c67d1
performance optimization for GetByResourceVersionIdAsync
swapnamol-abraham Sep 30, 2025
1aaf34d
Merge pull request #1452 from TechnologyEnhancedLearning/TD-6284-LMS-…
AnjuJose011 Sep 30, 2025
d8c1484
Merge pull request #1378 from TechnologyEnhancedLearning/Develop/Feat…
Phil-NHS Sep 4, 2025
e47123e
TD-6133: Fixed issues on 'My Account - My employment details' screen
ArunimaGeorge Oct 2, 2025
9582e95
Merge pull request #1457 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Oct 3, 2025
1a89959
Merge hotfix changes
AnjuJose011 Oct 3, 2025
9a94bfc
Conflicts resolved
AnjuJose011 Oct 3, 2025
04c3451
Merge pull request #1460 from TechnologyEnhancedLearning/MergeRc1
AnjuJose011 Oct 3, 2025
fbe423d
TD-5762: Fixed issues on left hand navigation
ArunimaGeorge Oct 3, 2025
a41a24e
TD-5762: styles alignment issues.
ArunimaGeorge Oct 3, 2025
c7cc2dc
TD-6213 & TD-6222
swapnamol-abraham Oct 3, 2025
431a898
Merge pull request #1462 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Oct 5, 2025
a481633
Merge pull request #1463 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Oct 5, 2025
8de75b4
ModelVersionUpdate
AnjuJose011 Oct 5, 2025
8480347
ModelVersionUpdate
AnjuJose011 Oct 5, 2025
e4f5353
Merge pull request #1464 from TechnologyEnhancedLearning/ModelVersion…
AnjuJose011 Oct 5, 2025
011db7b
fixes
AnjuJose011 Oct 6, 2025
ad9b105
Merge pull request #1465 from TechnologyEnhancedLearning/Modelversion…
AnjuJose011 Oct 6, 2025
316d455
Removed hardcoded userid from the code
swapnamol-abraham Oct 6, 2025
016be01
Notification count design added
swapnamol-abraham Oct 6, 2025
bcd2047
Mobile design correction
swapnamol-abraham Oct 6, 2025
7955405
Merge pull request #1466 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Oct 6, 2025
901bed9
Corrected the completed date for the oodle course
swapnamol-abraham Oct 6, 2025
838ccd1
Notification menu redirection
swapnamol-abraham Oct 6, 2025
f7f95ea
Corrected the spacing
swapnamol-abraham Oct 6, 2025
a76d552
Merge pull request #1467 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Oct 6, 2025
4c84918
Dashboard - my learning tray last card
swapnamol-abraham Oct 7, 2025
e69b9b5
Merge pull request #1468 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Oct 7, 2025
0a6e6a5
Fixes
AnjuJose011 Oct 8, 2025
218f23f
Merge pull request #1473 from TechnologyEnhancedLearning/TD-6318-Corr…
AnjuJose011 Oct 8, 2025
126ac0c
TD-6320: Provided by' flag is missing for the elearning resources on …
swapnamol-abraham Oct 8, 2025
dd77c92
Merge pull request #1474 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Oct 8, 2025
964767b
My ContributionPermission
swapnamol-abraham Oct 9, 2025
0e91c4a
Merge pull request #1475 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Oct 9, 2025
59674ce
Test code
swapnamol-abraham Oct 9, 2025
ad2622d
Merge pull request #1476 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Oct 9, 2025
74ccbd2
Reverted commented code
swapnamol-abraham Oct 9, 2025
4f40d5d
Merge pull request #1477 from TechnologyEnhancedLearning/Develop/Fixe…
swapnamol-abraham Oct 9, 2025
59a4a45
Menu is not working in moodle API
swapnamol-abraham Oct 10, 2025
70590f2
Merge pull request #1478 from TechnologyEnhancedLearning/Develop/Fixe…
AnjuJose011 Oct 10, 2025
7598f39
TD-6335
AnjuJose011 Oct 10, 2025
26d3f36
Merge pull request #1482 from TechnologyEnhancedLearning/TD-6335-Upda…
AnjuJose011 Oct 13, 2025
e37a067
conflicts resloved
AnjuJose011 Oct 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,13 @@ obj
/AdminUI/LearningHub.Nhs.AdminUI/web.config
/LearningHub.Nhs.WebUI/web.config
/WebAPI/LearningHub.Nhs.API/web.config
/.github/workflows/test.yml
/LearningHub.Nhs.WebUI.BlazorClient/Properties/launchSettings.json
/LearningHub.Nhs.WebUI.slnLaunch.user
/LearningHub.Nhs.WebUI.BlazorClient/LearningHub.Nhs.WebUI.BlazorClient.csproj.user
/LearningHub.Nhs.WebUI.BlazorClient/wwwroot/appsettings.Development.json
/nuget.config
/LearningHub.Nhs.WebUI.slnLaunch.user
/LearningHub.Nhs.WebUI.BlazorClient/LearningHub.Nhs.WebUI.BlazorClient.csproj.user
/LearningHub.Nhs.WebUI.BlazorClient/wwwroot/appsettings.Development.json
/LearningHub.Nhs.WebUI.BlazorClient/Properties/launchSettings.json
/.github/workflows/test.yml
/LearningHub.Nhs.WebUI.BlazorClient/Properties/launchSettings.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<Project Sdk="Microsoft.NET.Sdk.Web">

<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
Expand Down Expand Up @@ -83,13 +83,13 @@
<PackageReference Include="Azure.Storage.Blobs" Version="12.23.0" />
<PackageReference Include="Azure.Storage.Files.Shares" Version="12.8.0" />
<PackageReference Include="BuildWebCompiler" Version="1.12.405" />
<PackageReference Include="elfhHub.Nhs.Models" Version="3.0.9" />
<PackageReference Include="elfhHub.Nhs.Models" Version="3.0.14" />
<PackageReference Include="FluentValidation" Version="11.11.0" />
<PackageReference Include="FluentValidation.AspNetCore" Version="11.3.0" />
<PackageReference Include="HtmlSanitizer" Version="6.0.453" />
<PackageReference Include="IdentityModel" Version="4.6.0" />
<PackageReference Include="LearningHub.Nhs.Caching" Version="2.0.2" />
<PackageReference Include="LearningHub.Nhs.Models" Version="3.0.48" />
<PackageReference Include="LearningHub.Nhs.Models" Version="4.0.2" />
<PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.19.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="6.0.36" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="6.0.36" />
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
Expand All @@ -11,7 +11,9 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="elfhHub.Nhs.Models" Version="3.0.14" />
<PackageReference Include="FluentAssertions" Version="6.12.0" />
<PackageReference Include="LearningHub.Nhs.Models" Version="4.0.2" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="3.1.13" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.1.0" />
<PackageReference Include="Selenium.Axe" Version="4.0.19" />
Expand Down
33 changes: 33 additions & 0 deletions LearningHub.Nhs.WebUI/Configuration/MoodleApiConfig.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
namespace LearningHub.Nhs.WebUI.Configuration
{
/// <summary>
/// The Moodle Settings.
/// </summary>
public class MoodleApiConfig
{
/// <summary>
/// Gets or sets the base url for the Moodle service.
/// </summary>
public string BaseUrl { get; set; } = null!;

/// <summary>
/// Gets or sets the Web service Rest Format.
/// </summary>
public string MoodleWSRestFormat { get; set; } = null!;

/// <summary>
/// Gets or sets the token.
/// </summary>
public string WSToken { get; set; } = null!;

/// <summary>
/// Gets or sets the token.
/// </summary>
public string ApiPath { get; set; } = "webservice/rest/server.php";

/// <summary>
/// Gets or sets the token.
/// </summary>
public string CoursePath { get; set; } = "course/view.php";
}
}
2 changes: 1 addition & 1 deletion LearningHub.Nhs.WebUI/Controllers/AccountController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -999,7 +999,7 @@ public async Task<IActionResult> CreateAccountWorkPlace(AccountCreationViewModel
if (!string.IsNullOrWhiteSpace(accountCreation.LocationId))
{
var selectedLocation = await this.locationService.GetByIdAsync(int.Parse(accountCreation.LocationId));
return this.View(new AccountCreationListViewModel { WorkPlaceList = new List<LocationBasicViewModel> { selectedLocation }, FilterText = selectedLocation.Name, AccountCreationPaging = new AccountCreationPagingModel { TotalItems = 1, PageSize = UserRegistrationContentPageSize, HasItems = selectedLocation != null, CurrentPage = 1 }, LocationId = accountCreation.LocationId, ReturnToConfirmation = accountCreationViewModel.ReturnToConfirmation });
return this.View(new AccountCreationListViewModel { WorkPlaceList = new List<LocationBasicViewModel> { selectedLocation }, FilterText = selectedLocation.NameWithoutSubName, AccountCreationPaging = new AccountCreationPagingModel { TotalItems = 1, PageSize = UserRegistrationContentPageSize, HasItems = selectedLocation != null, CurrentPage = 1 }, LocationId = accountCreation.LocationId, ReturnToConfirmation = accountCreationViewModel.ReturnToConfirmation });
}

accountCreationViewModel.PrimarySpecialtyId = accountCreation.PrimarySpecialtyId;
Expand Down
28 changes: 28 additions & 0 deletions LearningHub.Nhs.WebUI/Controllers/Api/MyLearningController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,34 @@ public async Task<ActionResult> GetActivityDetailed([FromBody] MyLearningRequest
return this.Ok(activity);
}

/// <summary>
/// Gets the detailed activity data.
/// </summary>
/// <param name="requestModel">The request model - filter settings.</param>
/// <returns>The <see cref="Task"/>.</returns>
[HttpPost]
[Route("GetUserRecentMyLearningActivities")]
public async Task<ActionResult> GetUserRecentMyLearningActivities([FromBody] MyLearningRequestModel requestModel)
{
var activity = await this.myLearningService.GetUserRecentMyLearningActivities(requestModel);

return this.Ok(activity);
}

/// <summary>
/// Gets the detailed activity data.
/// </summary>
/// <param name="requestModel">The request model - filter settings.</param>
/// <returns>The <see cref="Task"/>.</returns>
[HttpPost]
[Route("GetUserLearningHistory")]
public async Task<ActionResult> GetUserLearningHistory([FromBody] MyLearningRequestModel requestModel)
{
var activity = await this.myLearningService.GetUserLearningHistory(requestModel);

return this.Ok(activity);
}

/// <summary>
/// Gets the played segment data for the progress modal in My Learning screen.
/// </summary>
Expand Down
7 changes: 6 additions & 1 deletion LearningHub.Nhs.WebUI/Controllers/ContributeController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ public class ContributeController : BaseController
private readonly IFileService fileService;
private readonly IResourceService resourceService;
private readonly IUserService userService;
private readonly IUserGroupService userGroupService;

/// <summary>
/// Initializes a new instance of the <see cref="ContributeController"/> class.
Expand All @@ -37,6 +38,7 @@ public class ContributeController : BaseController
/// <param name="logger">Logger.</param>
/// <param name="settings">Settings.</param>
/// <param name="userService">User service.</param>
/// <param name="userGroupService"> userGroupService.</param>
/// <param name="fileService">File service.</param>
/// <param name="resourceService">Resource service.</param>
/// <param name="azureMediaService">Azure media service.</param>
Expand All @@ -48,6 +50,7 @@ public ContributeController(
ILogger<ContributeController> logger,
IOptions<Settings> settings,
IUserService userService,
IUserGroupService userGroupService,
IFileService fileService,
IResourceService resourceService,
IAzureMediaService azureMediaService,
Expand All @@ -58,6 +61,7 @@ public ContributeController(
this.authConfig = authConfig;

this.userService = userService;
this.userGroupService = userGroupService;
this.fileService = fileService;
this.resourceService = resourceService;
this.azureMediaService = azureMediaService;
Expand Down Expand Up @@ -167,7 +171,8 @@ public async Task<IActionResult> CreateVersion(int resourceId)
[Route("my-contributions/{selectedTab}/{catalogueId}/{nodeId}")]
public async Task<IActionResult> MyContributions()
{
if ((this.User.IsInRole("ReadOnly") || this.User.IsInRole("BasicUser")) && !await this.resourceService.UserHasPublishedResourcesAsync())
bool catalogueContributionPermission = await this.userGroupService.UserHasCatalogueContributionPermission();
if ((this.User.IsInRole("ReadOnly") || this.User.IsInRole("BasicUser")) || (!catalogueContributionPermission && (!await this.resourceService.UserHasPublishedResourcesAsync())))
{
return this.RedirectToAction("AccessDenied", "Home");
}
Expand Down
57 changes: 36 additions & 21 deletions LearningHub.Nhs.WebUI/Controllers/HomeController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ namespace LearningHub.Nhs.WebUI.Controllers
using LearningHub.Nhs.Models.Content;
using LearningHub.Nhs.Models.Enums.Content;
using LearningHub.Nhs.Models.Extensions;
using LearningHub.Nhs.Models.Moodle.API;
using LearningHub.Nhs.WebUI.Configuration;
using LearningHub.Nhs.WebUI.Filters;
using LearningHub.Nhs.WebUI.Helpers;
Expand Down Expand Up @@ -202,39 +203,31 @@ public IActionResult HomepageWithAuthentication()
/// <summary>
/// Index.
/// </summary>
/// <param name="dashboardTrayLearningResourceType">The resource type.</param>
/// <param name="myLearningDashboard">The my learning dashboard type.</param>
/// <param name="resourceDashboard">The resource dashboard type.</param>
/// <param name="catalogueDashboard">The catalogue dashboard type.</param>
/// <returns>Home page.</returns>
public async Task<IActionResult> Index(string myLearningDashboard = "my-in-progress", string resourceDashboard = "popular-resources", string catalogueDashboard = "popular-catalogues")
public async Task<IActionResult> Index(string dashboardTrayLearningResourceType = "all", string myLearningDashboard = "my-in-progress", string resourceDashboard = "my-recent-completed", string catalogueDashboard = "popular-catalogues")
{
if (this.User?.Identity.IsAuthenticated == true)
{
this.Logger.LogInformation("User is authenticated: User is {fullname} and userId is: {lhuserid}", this.User.Identity.GetCurrentName(), this.User.Identity.GetCurrentUserId());
if (this.User.IsInRole("Administrator") || this.User.IsInRole("BlueUser") || this.User.IsInRole("ReadOnly") || this.User.IsInRole("BasicUser"))
{
var learningTask = this.dashboardService.GetMyAccessLearningsAsync(myLearningDashboard, 1);
var learningTask = this.dashboardService.GetMyCoursesAndElearning(dashboardTrayLearningResourceType, myLearningDashboard, 1);
var resourcesTask = this.dashboardService.GetResourcesAsync(resourceDashboard, 1);
var cataloguesTask = this.dashboardService.GetCataloguesAsync(catalogueDashboard, 1);
var userGroupsTask = this.userGroupService.UserHasCatalogueContributionPermission();

var enrolledCoursesTask = Task.FromResult(new List<MoodleCourseResponseViewModel>());
var enableMoodle = Task.Run(() => this.featureManager.IsEnabledAsync(FeatureFlags.EnableMoodle)).Result;
this.ViewBag.EnableMoodle = enableMoodle;
this.ViewBag.ValidMoodleUser = this.CurrentMoodleUserId > 0;
if (enableMoodle && myLearningDashboard == "my-enrolled-courses")
{
enrolledCoursesTask = this.dashboardService.GetEnrolledCoursesFromMoodleAsync(this.CurrentMoodleUserId, 1);
}

await Task.WhenAll(learningTask, resourcesTask, cataloguesTask, userGroupsTask);

var model = new DashboardViewModel()
{
MyLearnings = await learningTask,
Resources = await resourcesTask,
Catalogues = await cataloguesTask,
EnrolledCourses = await enrolledCoursesTask,
DashboardTrayLearningResourceType = dashboardTrayLearningResourceType,
};
var userHasContributePermission = await userGroupsTask;
this.ViewBag.userHasContributePermission = userHasContributePermission;
Expand All @@ -261,15 +254,16 @@ public async Task<IActionResult> Index(string myLearningDashboard = "my-in-progr
/// <summary>
/// Load the specified dashobard page.
/// </summary>
/// <param name="dashboardTrayLearningResourceType">dashboardTrayLearningResourceType.</param>
/// <param name="dashBoardTray">dashBoardTray.</param>
/// <param name="myLearningDashBoard">myLearningDashBoard.</param>
/// <param name="resourceDashBoard">resourceDashBoard.</param>
/// <param name="catalogueDashBoard">catalogueDashBoard.</param>
/// <param name="pageNumber">pageNumber.</param>
/// <returns>Dashboard page.</returns>
[Authorize]
[Route("/Home/loadpage/{dashBoardTray}/{myLearningDashBoard}/{resourceDashBoard}/{catalogueDashBoard}/{pageNumber:int}")]
public async Task<IActionResult> LoadPage(string dashBoardTray = "my-learning", string myLearningDashBoard = "in-progress", string resourceDashBoard = "popular-resources", string catalogueDashBoard = "recent-catalogues", int pageNumber = 1)
[Route("/Home/loadpage/{dashboardTrayLearningResourceType}/{dashBoardTray}/{myLearningDashBoard}/{resourceDashBoard}/{catalogueDashBoard}/{pageNumber:int}")]
public async Task<IActionResult> LoadPage(string dashboardTrayLearningResourceType = "all", string dashBoardTray = "my-learning", string myLearningDashBoard = "in-progress", string resourceDashBoard = "popular-resources", string catalogueDashBoard = "recent-catalogues", int pageNumber = 1)
{
if (this.User.IsInRole("Administrator") || this.User.IsInRole("BlueUser") || this.User.IsInRole("ReadOnly") || this.User.IsInRole("BasicUser"))
{
Expand All @@ -278,21 +272,18 @@ public async Task<IActionResult> LoadPage(string dashBoardTray = "my-learning",
MyLearnings = new Nhs.Models.Dashboard.DashboardMyLearningResponseViewModel { Type = myLearningDashBoard },
Resources = new Nhs.Models.Dashboard.DashboardResourceResponseViewModel { Type = resourceDashBoard },
Catalogues = new Nhs.Models.Dashboard.DashboardCatalogueResponseViewModel { Type = catalogueDashBoard },
DashboardTrayLearningResourceType = dashboardTrayLearningResourceType,
};

var enableMoodle = Task.Run(() => this.featureManager.IsEnabledAsync(FeatureFlags.EnableMoodle)).Result;
this.ViewBag.EnableMoodle = enableMoodle;
this.ViewBag.ValidMoodleUser = this.CurrentMoodleUserId > 0;

bool isAjax = this.HttpContext.Request.Headers["X-Requested-With"] == "XMLHttpRequest";

if (isAjax)
{
switch (dashBoardTray)
{
case "my-learning":
model.MyLearnings = await this.dashboardService.GetMyAccessLearningsAsync(myLearningDashBoard, pageNumber);
return this.PartialView("_MyAccessedLearningTray", model);
model.MyLearnings = await this.dashboardService.GetMyCoursesAndElearning(dashboardTrayLearningResourceType, myLearningDashBoard, pageNumber);
return this.PartialView("_MyCoursesAndElearning", model);
case "resources":
model.Resources = await this.dashboardService.GetResourcesAsync(resourceDashBoard, pageNumber);
return this.PartialView("_ResourceTray", model);
Expand All @@ -303,13 +294,14 @@ public async Task<IActionResult> LoadPage(string dashBoardTray = "my-learning",
}
else
{
var learningTask = this.dashboardService.GetMyAccessLearningsAsync(myLearningDashBoard, dashBoardTray == "my-learning" ? pageNumber : 1);
var learningTask = this.dashboardService.GetMyCoursesAndElearning(dashboardTrayLearningResourceType, myLearningDashBoard, dashBoardTray == "my-learning" ? pageNumber : 1);
var resourcesTask = this.dashboardService.GetResourcesAsync(resourceDashBoard, dashBoardTray == "resources" ? pageNumber : 1);
var cataloguesTask = this.dashboardService.GetCataloguesAsync(catalogueDashBoard, dashBoardTray == "catalogues" ? pageNumber : 1);
await Task.WhenAll(learningTask, resourcesTask, cataloguesTask);
model.MyLearnings = await learningTask;
model.Resources = await resourcesTask;
model.Catalogues = await cataloguesTask;
model.DashboardTrayLearningResourceType = dashboardTrayLearningResourceType;
return this.View("Dashboard", model);
}
}
Expand Down Expand Up @@ -449,5 +441,28 @@ private async Task<LandingPageViewModel> GetLandingPageContent(bool preview = fa
return new LandingPageViewModel { PageSectionDetailViewModels = new List<PageSectionDetailViewModel>(), PageViewModel = new PageViewModel { PageSections = new List<PageSectionViewModel> { } } };
}
}

/// <summary>
/// Asynchronously retrieves the state of the Moodle feature and the current Moodle user ID.
/// </summary>
/// <remarks>The method checks if the Moodle feature is enabled and retrieves the current Moodle
/// user ID. If the user ID is not already set, it attempts to obtain it asynchronously from the dashboard
/// service.</remarks>
/// <returns>A tuple containing a boolean indicating whether the Moodle feature is enabled and an integer representing
/// the current Moodle user ID.</returns>
private async Task<(bool enableMoodle, int currentMoodleUserId)> GetMoodleFeatureStateAsync()
{
var enableMoodle = Task.Run(() => this.featureManager.IsEnabledAsync(FeatureFlags.EnableMoodle)).Result;
this.ViewBag.EnableMoodle = enableMoodle;
int currentMoodleUserId = this.CurrentMoodleUserId;

if (currentMoodleUserId == 0)
{
currentMoodleUserId = await this.dashboardService.GetMoodleUserIdAsync(this.CurrentUserId);
}

this.ViewBag.ValidMoodleUser = currentMoodleUserId > 0;
return (enableMoodle, currentMoodleUserId);
}
}
}
Loading
Loading