Skip to content

Commit

Permalink
Merge pull request #216 from os2display/feature/external-login
Browse files Browse the repository at this point in the history
Feature: External Login through OIDC
  • Loading branch information
turegjorup authored Feb 26, 2024
2 parents a53e3d2 + e932099 commit f52ab37
Show file tree
Hide file tree
Showing 66 changed files with 8,331 additions and 2,767 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,4 @@ json-server/

public/config.json
public/access-config.json
public/release.json
145 changes: 81 additions & 64 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,23 @@ All notable changes to this project will be documented in this file.
- [#227](https://github.com/os2display/display-admin-client/pull/227)
- Changed how theme is loaded following change to API
- Added fetch all to avoid removing slides when saving playlist and all slides have not been fetched.
- [#220](https://github.com/os2display/display-admin-client/pull/220)
- Adds CRUD flows for external users and activation codes.
- Added login and activation flow for external users.
- [#217](https://github.com/os2display/display-admin-client/pull/217)
- Move tenant dropdown to sidebar.
- [#215](https://github.com/os2display/display-admin-client/pull/215)
- Fixed OIDC login buttons.
- [#213](https://github.com/os2display/display-admin-client/pull/213)
- Added focus trap, to trap the keyboard focus in our modals.
- Added user list, create and edit.
- [#212](https://github.com/os2display/display-admin-client/pull/212)
- Updated color of login background.
- [#211](https://github.com/os2display/display-admin-client/pull/211)
- Updated login page.
- Cleaned up translations.
- Fixed some WCAG2.1 issues.
- Added os2display logo.
- [#225](https://github.com/os2display/display-admin-client/pull/225)
- Fixed caching issues when adding/removing playlists from slide.
- [#223](https://github.com/os2display/display-admin-client/pull/223)
Expand All @@ -24,164 +41,164 @@ All notable changes to this project will be documented in this file.
## [1.4.0] - 2023-09-14

- [#210](https://github.com/os2display/display-admin-client/pull/210)
Use thumbnails for media list if they are set
- Use thumbnails for media list if they are set.

## [1.3.3] - 2023-07-11

- [#208](https://github.com/os2display/display-admin-client/pull/208)
Fix version not set in release.json
- Fix version not set in release.json

## [1.3.2] - 2023-07-11

- [#207](https://github.com/os2display/display-admin-client/pull/207)
Fix incorrect values in auto build release.json in images
- Fix incorrect values in auto build release.json in images

## [1.3.1] - 2023-07-11

- [#206](https://github.com/os2display/display-admin-client/pull/206)
Added example_release.json file
- Added example_release.json file

## [1.3.0] - 2023-07-11

- [#205](https://github.com/os2display/display-admin-client/pull/205)
Setup separate image builds for itkdev and os2display
- Setup separate image builds for itkdev and os2display
- [#204](https://github.com/os2display/display-admin-client/pull/204)
Change docker image name from `os2display/os2display-admin-client`
to `os2display/display-admin-client` to match image name and
- Change docker image name from `os2display/os2display-admin-client`
to `os2display/display-admin-client` to match image name and
repository name
- [#200](https://github.com/os2display/display-admin-client/pull/200)
Update docker build to publish to "os2display" org on docker hub.
Update github workflow to latest actions.
Add github workflow to build and create release.
Change `example_config.json` to use relative paths.
- Update docker build to publish to "os2display" org on docker hub.
- Update github workflow to latest actions.
- Add github workflow to build and create release.
- Change `example_config.json` to use relative paths.
- [#202](https://github.com/os2display/display-admin-client/pull/202)
Remove zeroes when pagination button is not visible.
Save campaign before redirect.
- Remove zeroes when pagination button is not visible.
- Save campaign before redirect.
- [#201](https://github.com/os2display/display-admin-client/pull/201)
Updated poster and feed selection.
- Updated poster and feed selection.

## [1.2.7] - 2023-05-25

- [#197](https://github.com/os2display/display-admin-client/pull/197)
Add pagination to tables below multiselect dropdowns.
- Add pagination to tables below multiselect dropdowns.
- [#196](https://github.com/os2display/display-admin-client/pull/196)
Changed to handling rrule dates as UTC.
- Changed to handling rrule dates as UTC.
- [#194](https://github.com/os2display/display-admin-client/pull/195)
Fix button margin on mobile view.
- Fix button margin on mobile view.
- [#193](https://github.com/os2display/display-admin-client/pull/194)
Prevent screen-manager.js from redirecting before everything is saved.
- Prevent screen-manager.js from redirecting before everything is saved.
- [#192](https://github.com/os2display/display-admin-client/pull/193)
Readd and fix cypress tests.
-
- Re-added and fixed cypress tests.

## [1.2.6] - 2023-05-11

- [#197](https://github.com/os2display/display-admin-client/pull/197)
Add pagination to tables below multiselect dropdowns.
- Add pagination to tables below multiselect dropdowns.

## [1.2.5] - 2023-03-24

- [#191](https://github.com/os2display/display-admin-client/pull/191)
Fixed theme logo loading in slide preview.
Fixed error messages in slide manager.
- Fixed theme logo loading in slide preview.
- Fixed error messages in slide manager.

## [1.2.4] - 2023-03-24

- [#190](https://github.com/os2display/display-admin-client/pull/190)
Changed config loader to avoid competing promises.
- Changed config loader to avoid competing promises.
- [#189](https://github.com/os2display/display-admin-client/pull/189)
Fixed issue where playlist showed a maximum of 10 selected slides.
- Fixed issue where playlist showed a maximum of 10 selected slides.

## [1.2.3] - 2023-03-07

- [#188](https://github.com/os2display/display-admin-client/pull/188)
Fixed template sorting.
Removed option to change template after creation
- Fixed template sorting.
- Removed option to change template after creation
- [#187](https://github.com/os2display/display-admin-client/pull/187)
Added license.
- Added license.
- [#185](https://github.com/os2display/display-admin-client/pull/185)
Changed rich text defaultValue to avoid update loops.
Cleaned up rich text toolbar options.
- Changed rich text defaultValue to avoid update loops.
- Cleaned up rich text toolbar options.
- [#183](https://github.com/os2display/display-admin-client/pull/183)
Adds information about max file sizes.
- Adds information about max file sizes.

## [1.2.2] - 2023-02-08

- [#184](https://github.com/os2display/display-admin-client/pull/184)
Fix logo upload, and change image uploader to use hook selected
- Fix logo upload, and change image uploader to use hook selected
- [#182](https://github.com/os2display/display-admin-client/pull/182)
Make cypress tests run 3 times in GA, and set defaultCommandTimeout to 10000
- Make cypress tests run 3 times in GA, and set defaultCommandTimeout to 10000
- [#181](https://github.com/os2display/display-admin-client/pull/181)
Disable selected menu link
- Disable selected menu link
- [#180](https://github.com/os2display/display-admin-client/pull/180)
Make it possible to delete media from slide
- Make it possible to delete media from slide
- [#179](https://github.com/os2display/display-admin-client/pull/179)
Simplify info modal, remove pagination
- Simplify info modal, remove pagination

## [1.2.1] - 2023-01-13

- [#178](https://github.com/os2display/display-admin-client/pull/178)
add 8080 to port to make cypresstests run
- Added 8080 to port to make cypresstests run
- [#177](https://github.com/os2display/display-admin-client/pull/177)
css in name to cssstyles
- Css in name to cssstyles
- [#176](https://github.com/os2display/display-admin-client/pull/176)
css -> cssstyles in all places but not the request body
- Css -> cssstyles in all places but not the request body
- [#175](https://github.com/os2display/display-admin-client/pull/175)
update proptypes
rename cssstyles to css
give resolution a default value
- Update proptypes
- Rename cssstyles to css
- Give resolution a default value

## [1.2.0] - 2023-01-05

- [#174](https://github.com/os2display/display-admin-client/pull/174)
Added changelog.
Added github action to enforce that PRs should always include an update of the changelog.
- Added changelog.
- Added github action to enforce that PRs should always include an update of the changelog.
- [#172](https://github.com/os2display/display-admin-client/pull/172)
Fixed search issue for screens.
- Fixed search issue for screens.
- [#171](https://github.com/os2display/display-admin-client/pull/171)
Moved to page 1 after deletions.
- Moved to page 1 after deletions.
- [#170](https://github.com/os2display/display-admin-client/pull/170)
Fixed media library issue.
The css was not displayed in the theme page (create/edit).
Shared playlists in gantt are not clickable/do not redirect.
- Fixed media library issue.
- The css was not displayed in the theme page (create/edit).
- Shared playlists in gantt are not clickable/do not redirect.
- [#169](https://github.com/os2display/display-admin-client/pull/169)
Updated docker setup to match new itkdev base setup
- Updated docker setup to match new itkdev base setup
- [#168](https://github.com/os2display/display-admin-client/pull/168)
Fixed wrong link.
- Fixed wrong link.
- [#167](https://github.com/os2display/display-admin-client/pull/167)
Updated grid generator from 1.0.6 -> 1.0.8.
- Updated grid generator from 1.0.6 -> 1.0.8.

## [1.1.0] - 2022-10-06

- [#166](https://github.com/os2display/display-admin-client/pull/166)
Updated react to 18.
- Updated react to 18.
- [#164](https://github.com/os2display/display-admin-client/pull/164)
Removed 0 in calendar view screen.
- Removed 0 in calendar view screen.

## [1.0.3] - 2022-09-05

- [#163](https://github.com/os2display/display-admin-client/pull/163)
Moved gantt chart to edit pages.
- Moved gantt chart to edit pages.
- [#162](https://github.com/os2display/display-admin-client/pull/162)
Added dropdown for resolution/orientation on screen.
Removed screen width/height.
- Added dropdown for resolution/orientation on screen.
- Removed screen width/height.
- [#161](https://github.com/os2display/display-admin-client/pull/161)
Changed default duration from 10 to 15 s.
- Changed default duration from 10 to 15 s.
- [#159](https://github.com/os2display/display-admin-client/pull/159)
Refactored theme-manager (as the other elements have that as well, slide-manager e.g.).
Added logo to theme form.
Save theme logo.
- Refactored theme-manager (as the other elements have that as well, slide-manager e.g.).
- Added logo to theme form.
- Save theme logo.

## [1.0.2] - 2022-06-02

- [#158](https://github.com/os2display/display-admin-client/pull/158)
Added slide class to remote component.
- Added slide class to remote component.

## [1.0.1] - 2022-06-01

- [#157](https://github.com/os2display/display-admin-client/pull/157)
Changed class names to lower case.
- Changed class names to lower case.
- [#156](https://github.com/os2display/display-admin-client/pull/156)
Added check to station selector.
- Added check to station selector.

## [1.0.0] - 2022-05-18

Expand Down
2 changes: 1 addition & 1 deletion cypress.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"viewportHeight": 4000,
"defaultCommandTimeout": 10000,
"retries": {
"runMode": 3,
"runMode": 2,
"openMode": 0
}
}
2 changes: 1 addition & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ services:

node:
image: node:14
command: npm start
command: yarn start
networks:
- app
working_dir: /app
Expand Down
3 changes: 3 additions & 0 deletions infrastructure/itkdev/etc/confd/templates/access-config.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
"groups": {
"roles": ["ROLE_ADMIN"]
},
"users": {
"roles": ["ROLE_EXTERNAL_USER_ADMIN"]
},
"shared": {
"roles": ["ROLE_ADMIN"]
}
Expand Down
24 changes: 23 additions & 1 deletion infrastructure/itkdev/etc/confd/templates/config.tmpl
Original file line number Diff line number Diff line change
@@ -1,4 +1,26 @@
{
"api": "{{ getenv "API_PATH" "/" }}",
"touchButtonRegions": "{{ getenv "APP_TOUCH_BUTTON_REGIONS" "false"}}"
"touchButtonRegions": "{{ getenv "APP_TOUCH_BUTTON_REGIONS" "false"}}",
"loginMethods": [
{
"type": "oidc",
"enabled": "{{ getenv "APP_ENABLE_INTERNAL_LOGIN" "true"}}",
"provider": "internal",
"label": null,
"icon": "faCity"
},
{
"type": "oidc",
"enabled": "{{ getenv "APP_ENABLE_EXTERNAL_LOGIN" "true"}}",
"provider": "external",
"label": "",
"icon": "mitID"
},
{
"type": "username-password",
"enabled": "{{ getenv "APP_ENABLE_USERNAME_PASSWORD_LOGIN" "true"}}",
"provider": "username-password",
"label": null
}
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
"groups": {
"roles": ["ROLE_ADMIN"]
},
"users": {
"roles": ["ROLE_EXTERNAL_USER_ADMIN"]
},
"shared": {
"roles": ["ROLE_ADMIN"]
}
Expand Down
24 changes: 23 additions & 1 deletion infrastructure/os2display/etc/confd/templates/config.tmpl
Original file line number Diff line number Diff line change
@@ -1,4 +1,26 @@
{
"api": "{{ getenv "API_PATH" "/" }}",
"touchButtonRegions": "{{ getenv "APP_TOUCH_BUTTON_REGIONS" "false"}}"
"touchButtonRegions": "{{ getenv "APP_TOUCH_BUTTON_REGIONS" "false"}}",
"loginMethods": [
{
"type": "oidc",
"enabled": "{{ getenv "APP_ENABLE_INTERNAL_LOGIN" "true"}}",
"provider": "internal",
"label": null,
"icon": "faCity"
},
{
"type": "oidc",
"enabled": "{{ getenv "APP_ENABLE_EXTERNAL_LOGIN" "true"}}",
"provider": "external",
"label": "",
"icon": "mitID"
},
{
"type": "username-password",
"enabled": "{{ getenv "APP_ENABLE_USERNAME_PASSWORD_LOGIN" "true"}}",
"provider": "username-password",
"label": null
}
]
}
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
"dayjs": "^1.10.7",
"dompurify": "^2.3.3",
"eslint-plugin-jsdoc": "^35.4.3",
"focus-trap-react": "^10.2.1",
"i18next": "^21.6.14",
"lodash.find": "^4.2.0",
"lodash.get": "^4.4.2",
Expand Down
3 changes: 3 additions & 0 deletions public/example-access-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
"groups": {
"roles": ["ROLE_ADMIN"]
},
"users": {
"roles": ["ROLE_EXTERNAL_USER_ADMIN"]
},
"shared": {
"roles": ["ROLE_ADMIN"]
}
Expand Down
24 changes: 23 additions & 1 deletion public/example_config.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,26 @@
{
"api": "/",
"touchButtonRegions": false
"touchButtonRegions": false,
"loginMethods": [
{
"type": "oidc",
"enabled": true,
"provider": "internal",
"label": null,
"icon": "faCity"
},
{
"type": "oidc",
"enabled": true,
"provider": "external",
"label": "",
"icon": "mitID"
},
{
"type": "username-password",
"enabled": true,
"provider": "username-password",
"label": null
}
]
}
Loading

0 comments on commit f52ab37

Please sign in to comment.