fix: Improve login, server selection and proxy configuration (#2511)

No potentially malicious URLs referenced in markdown; added
servers stays in server selector list; the currently active server
is visible on the bottom right of smaller screens; a proxy configuration
can be provided now and works; a trailing slash in the added server
is no problem anymore, because it's removed.

FIXES: WEB-193
This commit is contained in:
Felix van Hove
2025-06-11 11:32:36 -06:00
committed by GitHub
parent 46c4a1988d
commit b4503d34f3
6 changed files with 24 additions and 15 deletions
+2 -2
View File
@@ -66,11 +66,11 @@
-->
<mifosx-login-form *ngIf="!resetPassword && !twoFactorAuthenticationRequired"></mifosx-login-form>
<div class="layout-row m-t-20">
<div class="layout-row">
<mifosx-reset-password *ngIf="resetPassword"></mifosx-reset-password>
<mifosx-two-factor-authentication *ngIf="twoFactorAuthenticationRequired"></mifosx-two-factor-authentication>
</div>
<div class="layout-row m-t-20">
<div class="layout-row">
<!-- Contact Information/Resources (hidden on smaller screens) -->
<mat-list class="information-list align-items-center custom-horizontal-list hide-lt-lg">
<mat-list-item
+4 -3
View File
@@ -1,4 +1,4 @@
<div class="layout-column m-b-20" ngClass="{{ styleClass }}" id="footer" *ngIf="displayBackEndInfo">
<div class="layout-column m-b-20 f12" ngClass="{{ styleClass }}" id="footer" *ngIf="displayBackEndInfo">
<mat-divider class="divider align-center"></mat-divider>
<div class="layout-column m-b-20 content-wrapper footer-center">
<table class="versions">
@@ -15,8 +15,9 @@
</td>
</tr>
<tr *ngIf="displayBackEndInfo">
<td colspan="2" class="center footer-content">
<b>{{ server }}</b>
<td class="footer-content">{{ 'labels.inputs.Server' | translate }}</td>
<td class="right footer-content">
{{ server }}
</td>
</tr>
<tr *ngIf="isBusinessDateDefined">
@@ -65,9 +65,13 @@ export class ServerSelectorComponent implements OnInit {
*/
addNewServer(): void {
let servers;
this.settingsService.setServer(this.form.value.url);
let url = this.form.value.url;
if (url.endsWith('/')) {
url = url.slice(0, -1);
}
this.settingsService.setServer(url);
servers = this.settingsService.servers;
servers.push(this.form.value.url);
servers.push(url);
this.settingsService.setServers(servers);
window.location.reload();
}
+4 -2
View File
@@ -205,8 +205,10 @@ export class WebAppComponent implements OnInit {
}
// Set default max date picker as Today
this.settingsService.setBusinessDate(this.dateUtils.formatDate(new Date(), SettingsService.businessDateFormat));
// Set the server list from the env var FINERACT_API_URLS
this.settingsService.setServers(environment.baseApiUrls.split(','));
// Set the server list from the env var FINERACT_API_URLS, but avoid overwriting "Add new server" user choice
if (!this.settingsService.servers) {
this.settingsService.setServers(environment.baseApiUrls.split(','));
}
// Set the Tenant Identifier(s) list from the env var
if (!localStorage.getItem('mifosXTenantIdentifier')) {
this.settingsService.setTenantIdentifier(environment.fineractPlatformTenantId || 'default');