You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+76-1
Original file line number
Diff line number
Diff line change
@@ -81,11 +81,87 @@ Users can authenticate and authorize the application to access data via [OpenID
81
81
82
82
## Configuration
83
83
84
+
### Server Configuration
85
+
84
86
The app can be configured via a `public/config/{name}.js` JavaScript configuration file (see for example the default `public/config/local.js`).
85
87
Please refer to the [AppConfig.d.ts](src/AppConfig.d.ts) file for configuration options.
86
88
87
89
The configuration can be changed at build-time using the `REACT_APP_CONFIG` environment variable.
88
90
91
+
### Handling Mixed Content and HTTPS
92
+
93
+
When deploying SLIM with HTTPS, you may encounter mixed content scenarios where your PACS/VNA server returns HTTP URLs in its responses. This commonly occurs when:
94
+
95
+
- The PACS server populates bulkdataURI fields with internal HTTP URLs
96
+
- Your viewer is running on HTTPS but needs to communicate with services that respond with HTTP URLs
97
+
- You're using a reverse proxy that terminates SSL
98
+
99
+
To handle these scenarios, SLIM provides the `upgradeInsecureRequests` option in the server configuration:
When `upgradeInsecureRequests` is set to `true` and at least one of your URLs (service URL, QIDO, WADO, or STOW prefixes) uses HTTPS, the viewer will automatically:
112
+
113
+
1. Add the `Content-Security-Policy: upgrade-insecure-requests` header to requests
114
+
2. Attempt to upgrade any HTTP responses to HTTPS
115
+
116
+
This feature was implemented in response to [issue #159](https://github.com/ImagingDataCommons/slim/issues/159) where PACS servers would return HTTP bulkdata URIs even when accessed via HTTPS.
117
+
118
+
### Messages/Popups Configuration
119
+
120
+
Configure message popup notifications that appear at the top of the screen. By default, all message popups are enabled.
121
+
122
+
```javascript
123
+
window.config= {
124
+
// ... other config options ...
125
+
messages: {
126
+
disabled: ['warning', 'info'], // Disable specific message types
127
+
duration:5, // Show messages for 5 seconds
128
+
top:100// Show 100px from top of screen
129
+
}
130
+
}
131
+
```
132
+
133
+
Options:
134
+
-`disabled`: Disable specific message types or all messages
135
+
-`duration`: How long messages are shown (in seconds)
136
+
-`top`: Distance from top of screen (in pixels)
137
+
138
+
Available message types:
139
+
-`success` - Green popups
140
+
-`error` - Red popups
141
+
-`warning` - Yellow popups
142
+
-`info` - Blue popups
143
+
144
+
Examples:
145
+
```javascript
146
+
// Disable specific types with custom duration and position
147
+
messages: {
148
+
disabled: ['warning', 'info'],
149
+
duration:5, // Show for 5 seconds
150
+
top:50// Show 50px from top
151
+
}
152
+
```
153
+
154
+
```javascript
155
+
// Disable all popups
156
+
messages: {
157
+
disabled:true
158
+
}
159
+
```
160
+
161
+
Default values if not specified:
162
+
-`duration`: 5 seconds
163
+
-`top`: 100 pixels
164
+
89
165
## Deployment
90
166
91
167
Download the latest release from [github.com/imagingdatacommons/slim/releases](https://github.com/imagingdatacommons/slim/releases) and then run the following commands to install build dependencies and build the app:
@@ -223,7 +299,6 @@ Create an [OIDC client ID for web application](https://developers.google.com/ide
223
299
Note that Google's OIDC implementation does currently not yet support the authorization code grant type with PKCE challenge for private clients.
224
300
For the time being, the legacy implicit grand type has to be used.
225
301
226
-
227
302
## Development
228
303
229
304
To install requirements and run the app for local development, run the following commands:
* remove unused white space ([#247](https://github.com/ImagingDataCommons/slim/issues/247)) ([155e001](https://github.com/ImagingDataCommons/slim/commit/155e0018c2fd8b87eee70c207051de9df55f0ada))
0 commit comments