This repository was archived by the owner on Apr 16, 2024. It is now read-only.
Releases: geli-lms/geli
Releases · geli-lms/geli
WS 18/19 🏁-Release
WS 18/19 🎉-Release
Upgrade from 0.8.4 to 0.8.5
- MediaController vulnerabilities #1196 requires database migration
docker-compose run --rm api node migrate.js --up 20190323-course-media
Changelog
Added
- Translatable SnackBarService. #922
ProgressControllerGETunit tests & access denial tests in general. #1116UnitControllerGET&DELETEroute unit tests for status code200. #1190UnitControllerstatus code403(not authorized to view / edit course) unit tests for all routes. #1190WhitelistControllerstatus code403unit tests for all routes. #1192- Sticky header for course view. #1115
MediaControllerstatus code403unit tests for all routes. #1196CourseMediaMigrationto patch the_courseproperties of aCourse'sDirectory/Filetree. #1196
Changed
- Extend
ProgressControllerPUTroute to handle both creation and updates. #1116 - Refactor
ProgressControllerunit tests in general. #1116 - Refactor
MediaControllerunit tests in general using theTestHelper. #1196 - Instead of a list of progress data, the
ProgressControllerGETroute now responds with a single progress object or an empty object if no data can be found. #1116 Directory/Fileschemata and the corresponding interfaces now reference theirCourseas_course(analogous to theUnitschema). #1196
Removed
- Unused
ProgressControllerGETroutes for/courses/&/users/. #1116 ProgressControllerPOSTroute (obviated by extendedPUTroute). #1116- Unused
WhitelistControllerPUTroute. #1192 - Dependency
migrate-mongoose. #1189
Fixed
TaskUnitComponent.validatevalidationModereset. #1116CodeKataComponentprogress.codeloading. #1116- Code order in the
MediaController'screateDirectory&createFile. #1196 - Notification scroll bug. #1082
Security
WS 18/19 ❄️-Release
Changelog
Added
- Export PDF with styled free text units. #997 #1047
- More predefined custom containers. #996
- Styled code snippets. #1017
LectureControllersuccess (200), access denial (403) and not found (404) unit tests for all routes. #1041- Various
NotificationControllerunit tests (200s,400s,403s,404s). #1065 - Two
NotificationSettingsControllerunit tests for403&404PUTrequest errors. #1072 TestHelperrequest methods forPUT&DELETE. #1041- Code kata validation service. #844
- File ↔ video unit display type switching. #912
Fixed
bundle.scssnot available in api container. #1052
Changed
- Update
mongooseto5.4.x. #1003 #1004 #1044 #1077 - Refactor
LectureControllerGET/POST/PUTroutes to useasync/await. #1041 - Refactor
NotificationControllerunit tests in general. #1065 - Refactor
NotificationControllerto utilize.orFailand theerrorCodesfile. #1065 - Refactor
ExportController&LectureControllerto utilize.orFail. #1065 - Sanitize
{post} /api/lecture/route parameters by reducing the arbitraryILectureinput toname&description. #1041 - Sanitize
NotificationControllerPOSTroute parameters by taking atargetTypeandtargetIdinstead of the separatechangedCourse/changedLecture/changedUnitwhich needed a (missing) consistency check. #1065 - Empty success response object in the two
NotificationControllerPOSTroutes. #1065 - Major
NotificationSettingsControllerrefactoring and changes in general, plus unit test / front-end adjustments. #1072 - Disable unit submit button when deadline is over. #964
- The background image on the index page. #922
Removed
- Unused
Notificationclass in the front-end. #1065 - Unused
NotificationSettingsclass in the front-end. #1072 {post} /api/notificationSettings/route; functionality now handled completely by{put} /api/notificationSettings/. #1072
Fixed
- Some incorrect
FixtureUtilsreturn types. #1041 #1065 LectureController404error handling. #1041NotificationController404error handling. #1065NotificationSettingsController404PUTerror handling. #1072- Course list broken when course image in invalid state. #1053
Security
- Fix multiple security issues of the
LectureController. #1041 - Fix missing
teacherauthorization check for the twoNotificationControllerPOSTroutes. #1065 - Fix missing
NotificationControllerPOSTteacherauthorization check. #1065 - Fix
{get} /api/notification/response leaks by introducingINotificationView, a reduced and safe variant of theINotificationinterface. #1065 - Fix response leaks for all three (now two)
NotificationSettingsControllerroutes by introducingINotificationSettingsView, a strongly reduced _(no own id) and safe variant of theINotificationSettingsinterface. #1072 - Secure
{get} /api/notification/by using the@CurrentUserinstead of allowing arbitrary id requests. #1065 - Secure
{get} /api/notificationSettings/by using the@CurrentUserinstead of allowing arbitrary id requests. #1072 - Secure
{put} /api/notificationSettings/by using the@CurrentUserinstead of allowing arbitrary id requests. #1072 - Minimize
NotificationSettingsControllerattack surface by severely simplifying its routes. #1072
WS 18/19 🚀-Release
Changelog
Added
- Chat system access denial unit tests. #989
DuplicationControlleraccess denial unit tests. #1016ExportControlleraccess denial unit tests. #1039ExportController404 unit tests. #1039DuplicationController404 unit tests. #1039TestHelperclass for shared API unit test functionality. #989 #1016extractSingleMongoIdvariant of theExtractMongoIdutility function(s). #989- Show message count for
UnitComponentchat. #933 - Styles for free text units. #867
- Export PDF with styled free text units. #997
- Extend
ICourseViewwithuserCanEditCourse&activeproperties. #924 - Make
MongoDBport configurable asDB_PORT. #1034 IUserPrivileges,IUserEditPrivileges,ICourseUserPrivileges, i.a. for thecheckPrivilegesmethods. #1039
Changed
- Update
mongooseto5.2.x. #1004 - Update contributors list. #1007
- Display only one notification per course update. #914
- Use
terserinstead ofuglify-js. #1018 ExtractMongoIdutility upgrades & streamlining. #989 #1016 #1039- Switch project license to
Apache License, Version 2.0instead ofGPL-3.0. #1033
Removed
- PDF export with styled free text units. #997
Fixed
- Notifications for invisible courses and lectures will no longer be created. #877
- EU-DSGVO: Exclusion of comments in the user chat data export. #998
- Nondeterministic chat system unit test authorization failures. #989
- Unnecessarily verbose
DuplicationControllerroute responses. #1016 - Prepare
mongooseupdate. #1003 #1027 ExportControllermissing 404 handling. #1039DuplicationControllermissing 404 handling. #1039- Fix invalid translation key
hasBeenDeleted. #1032
Security
WS 18/19 🍪-Release
Changelog
Added
Changed
- Minor
ConfigControllerbugs and refactoring-flaws. #899 - Don't pin
@types/expressto a specific version. #947 - Switched to cookie-based JWT authentication. #840 #968
- Prepare
typescript3.1 upgrade. #967 - Use
npm ciinsteadnpm installand cache$HOME/.npminstead ofnode_modules. #972
Removed
Fixed
- Deprecated
Messages.countreplace withMessage.countDocuments. #925 - Deprecated
User.countreplace withUser.countDocuments. #934 - Redirect to initial URL after login. #318
- Error when clicking on notification. #916
- Remove unused controller code. #986
Security
WS 18/19 Hotfix-Release
WS 18/19 Bugfix & Tweak-Release
Upgrade from 0.7.x to 0.8.0
- Anonymous forum #792 & Unit visibility toggle #660 requires database migration
fileUnitTypefor someFileUnitis missing #907
docker-compose run --rm api node migrate.js --up 20180821-course 20180821-unit 20181019-fileUnit 20181020-unit
Changelog
Added
- Cookie information banner. #565
- Course progress can now be exported as a CSV-file. #766
- More EN/DE translations. #753
- Use i18n for new course view. #763
FileIconService. #607- Legal notice and privacy declaration. #768
- More
NotificationControllertests. #772 - Anonymous forum. #46 #857
- Unit-specific comments. #761
- Simple E2E test for login. #795
- Checkboxes for accepting our terms of use and privacy declarations while registering. #778
- PDF course content download functionality. #720, #913, #923
- User data deletion functionality for EU-GDPR compliance. #775
- Personal data export functionality for EU-GDPR compliance. #805
- Guided dialog for adding a whitelist. #727 #509
JwtPipeto easily append'mediaToken's to file URLs. #729FileComponentto flexibly display a single file e.g. in a new tab. #729- More
DownloadControllerunit tests, including a newDeleteCacheadmin-only API. #729 'Misc.'front-end admin sub-component with cache-clearing control re. theDeleteCacheAPI. #729- E2E test for invalid email & password input. #825
- Search function for available courses. #723
- Form validation before submit when creating a new course. #724
- ID validation of the
CourseController/api/courses/:idroute. #724 - Possibility to add files directly in the file unit. #728
- Execute npm rebuild in docker. #855
- Sentry reporting for missing translations. #858
- Migration for
visiblefield. #890 - Migration for
fileUnitTypefield. #907 - Fixed error on clicking on notification. #916
Changed
- Minor fixes and adaptations and merge-failure fixes. #785
- Reworked existing translations. #753, #906
- Migrate
MatSnackBartoSnackBarService. #724 #730 - Reload user list after deleting an account. #724
getNotificationSettingsdoes not create new notification settings. #731- Refactored save mechanism of unit edit form. #532
- Moved the 'create course' button into a
MatDialog. #725 - Update
bcryptdependency. #774 - Use
path-module to extract extensions from filenames. #773 - Update validator dependency. #791
- Appended
'mediaToken'to various file URLs viaJwtPipe. #729 - Moved all URL etc. from
utetrapp/geliandh-da/gelito current repogeli-lms/geli. #849 - Adjusted
nginxconfig in web-frontend forws-chat. #839 - Update insecure dependencies. #816
- Updated frontend to
Angular 6. #716 - Update
Node.jsversion to10.8.0. #821 - Update
README.mdwith latest information. #845 - Exit build when no change to
CHANGELOG.md. #880 - Use deploy token to push geli-docs. #851, #900, #902
- Adjust
CHANGELOG.mdfor next release. #879, #928 - Exclude pull requests from dependabot from changelog check. #854
Removed
isCourseTeacherOrAdminandisMemberOfCoursefromUserService. #731fs-extradependency. #780winstondependency. #806
Fixed
- Unit export. #42
- Notification settings. #731
- API-doc. #737
tutorrole is now disabled. #710- Notifications on hidden units. #733
- User input validation for notication settings API. #771
- Identification only via matriculation number. #685
- Typo in
UserProfileDialogcomponent. #782 - Missing capitalization typo for
common.usersEN-translation. #729 - Broken badge links after repository migration. #783 #892
- Invalid response for dependency. #787
- Travis usages after
Angular 6update. #789 - Build with source maps. #797
- Missing import for
RxJSoperators. #808 - Wrong image URL in profile export. #811
picture.pathbackslash issue / regression. #729- Remaining hard-coded
'upload'strings in the API, now replaced withconfig.uploadFolder. #729 - Missing
@UseBeforemiddleware inMediaController. #729 - Make E2E login test more stable. #823 #824
sentry.shbuild warning regarding invalid-equsage. #830 #832- PDF download fix if text is empty + added path to local
PhantomJS. #833 - Wrong reset password translation. #836
- Various flawed code kata translations. #886
- Fix migrations for adding chatrooms to course and unit. #888
- Fix maxium width of main content area #893
- Migrations for adding chatrooms to course and unit. #888, #903, #905
AuthControlleraddWhitelistedUserToCoursesbroken condition & typos. #895ChatRoomControllerinternal data leak. #897- Depcreated warning on startup. #920
Security
First Release SS 2018
Many small changes for production use:
Added
- Added the possibility to sort all courses alphabetically. #567
- Added a box for information on the homescreen. #216
- Added an account activation resend feature. #601
- Added
SnackBarServiceas wrapper forMatSnackBar. #574 - Added new course & user API unit tests. #654 #691
- Added details of courseAdmin and teacher to course detail view. on click profiles are shown.#598
- Added small auto linting scripts to package.json #688
- Added changed size of drop down arrows for better usability. #686
- Added new contributors #624
- Added the date and the teacher under each unit #582
- Added E-Mail validation to reset password #597
- Added Language code to header #554
- Added icon for access key #547
- Unit visibility toggle #582
Changed
- Refactored or slightly altered various course & user related APIs. #654 #691
- Removed firstname from resend activation feature and change button positioning. #711
- Refactored register and resend activation to use geli email validator with top level domain check. #713
- Refactored the unitCreator with a forsafe user object. #717
- Changed the text in download course#718
- Removed firstname from resend activation feature and change button positioning. #711
- Refactored register and resend activation to use geli email validator with top level domain check. #713
Fixed
- Fixed route
/users/roles#204 - Fixed profile picture will be deleted after changing any other profile data #504
- Fixed some UI issues in create code kata unit #543
- Fixed reading wrong error message across the whole application #572
- Fixed admin can changed his own role #606
- Fixed a typo in admin panel #533
- Fixed an admin cannot delete any courses #647
- Fixed some issues with download a course #659
- Fixed an issue with deleting a course and the notification was not triggered #642
- Fixed Course progress mechanism #593
- Fixed wasteful course data usage via specialized course model interfaces. #654
- Fixed a broken documentation link. #583
- Limited the first and last name to 64 characters in the registration- and edit page. #585
- Added a correct email validator to the
user-editandregistercomponents. #564 - Upload of profile pictures now prevents files with forbidden extensions. #581
- Fixed empty course downloads. #659
- Videos in the course now get sized equally and can't grow too big in mobile views. #534
- Fixed missing background on the password reset page. #673
- Fixed notification icon spacing in the navbar for students. #696
- Repair Angular CLI code generation. #701
- Fixed
tsconfig.spec.tsforng test. #656 - Fixed
.travis.yml. #706 - Fixed wording of progress display on profile page. #715
- Fixed form validator in create task #579
- Fixed Mongoose pre hook usage #680 #677
Security
Introduces MediaManager and some minor changes
You need to run the migrations after the update. Backup your DB and run: docker-compose run --rm api node migrate.js --up fileUnit
WS 17/18 intermediate Release
Adds many new features like
- selective download of the course
- progress dashboard for teacher
- translateable frontend with i18n
- notification system added
- introduces new error message system
- dark theme option
- introducing an api documentation
- courses are ordered by last visit
- user password edit
- adds imprint
Please run the migrations:
docker-compose exec api node migrate.js --up unit
docker-compose exec api node migrate.js --up taskUnit videoUnit