aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app/menu
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/app/menu')
-rw-r--r--client/src/app/menu/language-chooser.component.html21
-rw-r--r--client/src/app/menu/language-chooser.component.scss11
-rw-r--r--client/src/app/menu/language-chooser.component.ts16
-rw-r--r--client/src/app/menu/menu.component.html28
-rw-r--r--client/src/app/menu/menu.component.scss4
5 files changed, 33 insertions, 47 deletions
diff --git a/client/src/app/menu/language-chooser.component.html b/client/src/app/menu/language-chooser.component.html
index f941e32f8..c37bf2826 100644
--- a/client/src/app/menu/language-chooser.component.html
+++ b/client/src/app/menu/language-chooser.component.html
@@ -1,15 +1,10 @@
1<div bsModal #modal="bs-modal" class="modal" tabindex="-1"> 1<ng-template #modal let-hide="close">
2 <div class="modal-dialog"> 2 <div class="modal-header">
3 <div class="modal-content"> 3 <h4 i18n class="modal-title">Change the language</h4>
4 4 <span class="close" aria-label="Close" role="button" (click)="hide()"></span>
5 <div class="modal-header"> 5 </div>
6 <span class="close" aria-hidden="true" (click)="hide()"></span>
7 <h4 i18n class="modal-title">Change the language</h4>
8 </div>
9 6
10 <div class="modal-body" *ngFor="let lang of languages"> 7 <div class="modal-body">
11 <a [href]="buildLanguageLink(lang)">{{ lang.label }}</a> 8 <a *ngFor="let lang of languages" [href]="buildLanguageLink(lang)">{{ lang.label }}</a>
12 </div>
13 </div>
14 </div> 9 </div>
15</div> 10</ng-template>
diff --git a/client/src/app/menu/language-chooser.component.scss b/client/src/app/menu/language-chooser.component.scss
index 30c70c6a2..944e86f46 100644
--- a/client/src/app/menu/language-chooser.component.scss
+++ b/client/src/app/menu/language-chooser.component.scss
@@ -1,19 +1,12 @@
1@import '_variables'; 1@import '_variables';
2@import '_mixins'; 2@import '_mixins';
3 3
4.modal {
5 z-index: 10005;
6}
7
8.modal-title {
9 text-align: center;
10}
11
12.modal-body { 4.modal-body {
13 text-align: center; 5 text-align: center;
14 6
15 a { 7 a {
8 display: block;
16 font-size: 16px; 9 font-size: 16px;
17 margin-top: 10px; 10 margin: 15px;
18 } 11 }
19} \ No newline at end of file 12} \ No newline at end of file
diff --git a/client/src/app/menu/language-chooser.component.ts b/client/src/app/menu/language-chooser.component.ts
index 3de6a129d..45fa73e76 100644
--- a/client/src/app/menu/language-chooser.component.ts
+++ b/client/src/app/menu/language-chooser.component.ts
@@ -1,6 +1,6 @@
1import { Component, ViewChild } from '@angular/core' 1import { Component, ElementRef, ViewChild } from '@angular/core'
2import { ModalDirective } from 'ngx-bootstrap/modal'
3import { I18N_LOCALES } from '../../../../shared' 2import { I18N_LOCALES } from '../../../../shared'
3import { NgbModal } from '@ng-bootstrap/ng-bootstrap'
4 4
5@Component({ 5@Component({
6 selector: 'my-language-chooser', 6 selector: 'my-language-chooser',
@@ -8,21 +8,17 @@ import { I18N_LOCALES } from '../../../../shared'
8 styleUrls: [ './language-chooser.component.scss' ] 8 styleUrls: [ './language-chooser.component.scss' ]
9}) 9})
10export class LanguageChooserComponent { 10export class LanguageChooserComponent {
11 @ViewChild('modal') modal: ModalDirective 11 @ViewChild('modal') modal: ElementRef
12 12
13 languages: { [ id: string ]: string }[] = [] 13 languages: { id: string, label: string }[] = []
14 14
15 constructor () { 15 constructor (private modalService: NgbModal) {
16 this.languages = Object.keys(I18N_LOCALES) 16 this.languages = Object.keys(I18N_LOCALES)
17 .map(k => ({ id: k, label: I18N_LOCALES[k] })) 17 .map(k => ({ id: k, label: I18N_LOCALES[k] }))
18 } 18 }
19 19
20 show () { 20 show () {
21 this.modal.show() 21 this.modalService.open(this.modal)
22 }
23
24 hide () {
25 this.modal.hide()
26 } 22 }
27 23
28 buildLanguageLink (lang: { id: string }) { 24 buildLanguageLink (lang: { id: string }) {
diff --git a/client/src/app/menu/menu.component.html b/client/src/app/menu/menu.component.html
index c487a6fc1..9657e5269 100644
--- a/client/src/app/menu/menu.component.html
+++ b/client/src/app/menu/menu.component.html
@@ -11,24 +11,22 @@
11 <div class="logged-in-email">{{ user.username }}</div> 11 <div class="logged-in-email">{{ user.username }}</div>
12 </div> 12 </div>
13 13
14 <div class="logged-in-more" dropdown placement="right" container="body"> 14 <div class="logged-in-more" ngbDropdown placement="bottom-right">
15 <span class="glyphicon glyphicon-option-vertical" dropdownToggle></span> 15 <span class="glyphicon glyphicon-option-vertical" ngbDropdownToggle role="button"></span>
16 16
17 <ul *dropdownMenu class="dropdown-menu"> 17 <div ngbDropdownMenu>
18 <li> 18 <a *ngIf="user.account" i18n [routerLink]="[ '/accounts', user.account.nameWithHost ]" class="dropdown-item">
19 <a i18n [routerLink]="[ '/accounts', user.account?.nameWithHost ]" class="dropdown-item" title="My public profile"> 19 My public profile
20 My public profile 20 </a>
21 </a>
22 21
23 <a i18n routerLink="/my-account" class="dropdown-item" title="My account"> 22 <a i18n routerLink="/my-account" class="dropdown-item">
24 My account 23 My account
25 </a> 24 </a>
26 25
27 <a i18n (click)="logout($event)" class="dropdown-item" title="Log out" href="#"> 26 <a i18n (click)="logout($event)" class="dropdown-item" href="#">
28 Log out 27 Log out
29 </a> 28 </a>
30 </li> 29 </div>
31 </ul>
32 </div> 30 </div>
33 </div> 31 </div>
34 32
diff --git a/client/src/app/menu/menu.component.scss b/client/src/app/menu/menu.component.scss
index e61f4acd3..39f1e9be0 100644
--- a/client/src/app/menu/menu.component.scss
+++ b/client/src/app/menu/menu.component.scss
@@ -69,6 +69,10 @@ menu {
69 .glyphicon { 69 .glyphicon {
70 cursor: pointer; 70 cursor: pointer;
71 font-size: 18px; 71 font-size: 18px;
72
73 &::after {
74 border: none;
75 }
72 } 76 }
73 } 77 }
74 } 78 }