diff --git a/client/src/app/admin/components/instance/design-form-group.component.html b/client/src/app/admin/components/instance/design-form-group.component.html index 556fe36a9dbd51aec7a6375fb2c3f79432df9049..5e79140bbb7c1bffcc143ee5b1fb2fe99cd62fd8 100644 --- a/client/src/app/admin/components/instance/design-form-group.component.html +++ b/client/src/app/admin/components/instance/design-form-group.component.html @@ -19,5 +19,14 @@ [rootDirectoryIsLoaded]="rootDirectoryIsLoaded" (loadRootDirectory)="loadRootDirectory.emit($event)"> </app-file-select-form-control> + <app-file-select-form-control + [form]="form" + [controlName]="'design_favicon'" + [controlLabel]="'Favicon'" + [rootDirectory]="rootDirectory" + [rootDirectoryIsLoading]="rootDirectoryIsLoading" + [rootDirectoryIsLoaded]="rootDirectoryIsLoaded" + (loadRootDirectory)="loadRootDirectory.emit($event)"> + </app-file-select-form-control> </accordion-group> </form> diff --git a/client/src/app/admin/components/instance/instance-form.component.ts b/client/src/app/admin/components/instance/instance-form.component.ts index b87c971c36c4684354693e4e6d55e2300dca5c47..450692ba21c51efcc43441427e2a7cf3a3aef2a8 100644 --- a/client/src/app/admin/components/instance/instance-form.component.ts +++ b/client/src/app/admin/components/instance/instance-form.component.ts @@ -26,7 +26,8 @@ export class InstanceFormComponent implements OnInit { public designFormGroup = new FormGroup({ design_color: new FormControl('#7AC29A', [Validators.required]), - design_logo: new FormControl('') + design_logo: new FormControl(''), + design_favicon: new FormControl('') }); public searchFormGroup = new FormGroup({ diff --git a/client/src/app/instance/instance.component.ts b/client/src/app/instance/instance.component.ts index b374aa6c5012824c1bd8c8d2d5ac750b9f4ad9fb..b6f2875bb5feedd9565bdc05d0ca4154470ce18f 100644 --- a/client/src/app/instance/instance.component.ts +++ b/client/src/app/instance/instance.component.ts @@ -62,7 +62,9 @@ export class InstanceComponent implements OnInit, OnDestroy { if (instance.config.documentation.documentation_allowed) { this.links.push({ label: 'Documentation', icon: 'fas fa-question', routerLink: 'documentation' }); } - this.favIcon.href = `assets/${instance.name}-favicon.ico`; + if (instance.config.design.design_favicon !== '') { + this.favIcon.href = `${this.config.apiUrl}/download-instance-file/${instance.name}/${instance.config.design.design_favicon}`; + } }) } diff --git a/client/src/app/metamodel/models/instance.model.ts b/client/src/app/metamodel/models/instance.model.ts index 9b6c7d40ce2f410131563dd6b4ae4a32f398e0fc..6faeb2e700322e42acadd731b637dbebdac788a8 100644 --- a/client/src/app/metamodel/models/instance.model.ts +++ b/client/src/app/metamodel/models/instance.model.ts @@ -15,6 +15,7 @@ export interface Instance { design: { design_color: string; design_logo: string; + design_favicon: string; }; search: { search_by_criteria_allowed: boolean; diff --git a/client/src/app/shared/components/navbar.component.ts b/client/src/app/shared/components/navbar.component.ts index 95e6238eee23b23251a1b543e6823253b42e3819..fcbb7457ba7d2b29291c36278c8d2781827c0f8e 100644 --- a/client/src/app/shared/components/navbar.component.ts +++ b/client/src/app/shared/components/navbar.component.ts @@ -32,7 +32,7 @@ export class NavbarComponent { getLogoHref() { if (this.instance.config.design.design_logo) { - return this.apiUrl + '/download-instance-file/' + this.instance.name + '/' + this.instance.config.design.design_logo; + return `${this.apiUrl}/download-instance-file/${this.instance.name}/${this.instance.config.design.design_logo}`; } else { return 'assets/cesam_anis40.png'; }