override page title and search placeholder when in VIC mode

This commit is contained in:
Steven Zou 2017-04-12 08:34:00 +08:00
parent e0dbb70809
commit 3171e43e66
6 changed files with 32 additions and 7 deletions

View File

@ -4,7 +4,8 @@ import { CookieService } from 'angular2-cookie/core';
import { supportedLangs, enLang } from './shared/shared.const'; import { supportedLangs, enLang } from './shared/shared.const';
import { SessionService } from './shared/session.service'; import { SessionService } from './shared/session.service';
import { AppConfigService } from './app-config.service';
import { Title } from '@angular/platform-browser';
@Component({ @Component({
selector: 'harbor-app', selector: 'harbor-app',
@ -14,7 +15,9 @@ export class AppComponent {
constructor( constructor(
private translate: TranslateService, private translate: TranslateService,
private cookie: CookieService, private cookie: CookieService,
private session: SessionService) { private session: SessionService,
private appConfigService: AppConfigService,
private titleService: Title) {
translate.addLangs(supportedLangs); translate.addLangs(supportedLangs);
translate.setDefaultLang(enLang); translate.setDefaultLang(enLang);
@ -29,6 +32,16 @@ export class AppComponent {
let selectedLang = this.isLangMatch(langSetting, supportedLangs) ? langSetting : enLang; let selectedLang = this.isLangMatch(langSetting, supportedLangs) ? langSetting : enLang;
translate.use(selectedLang); translate.use(selectedLang);
//this.session.switchLanguage(selectedLang).catch(error => console.error(error)); //this.session.switchLanguage(selectedLang).catch(error => console.error(error));
//Override page title
let key: string = "APP_TITLE.HARBOR";
if (this.appConfigService.isIntegrationMode()) {
key = "APP_TITLE.REG";
}
translate.get(key).subscribe((res: string) => {
this.titleService.setTitle(res);
});
} }
private isLangMatch(browserLang: string, supportedLangs: string[]) { private isLangMatch(browserLang: string, supportedLangs: string[]) {

View File

@ -1,5 +1,5 @@
<form class="search"> <form class="search">
<label for="search_input"> <label for="search_input">
<input #globalSearchBox name="globalSearchBox" [(ngModel)]="searchTerm" id="search_input" type="text" (keyup)="search(globalSearchBox.value)" placeholder='{{"GLOBAL_SEARCH.PLACEHOLDER" | translate}}'> <input #globalSearchBox name="globalSearchBox" [(ngModel)]="searchTerm" id="search_input" type="text" (keyup)="search(globalSearchBox.value)" placeholder='{{placeholderText | translate}}'>
</label> </label>
</form> </form>

View File

@ -6,6 +6,8 @@ import { Subscription } from 'rxjs/Subscription';
import { SearchTriggerService } from './search-trigger.service'; import { SearchTriggerService } from './search-trigger.service';
import { AppConfigService } from '../../app-config.service';
import 'rxjs/add/operator/debounceTime'; import 'rxjs/add/operator/debounceTime';
import 'rxjs/add/operator/distinctUntilChanged'; import 'rxjs/add/operator/distinctUntilChanged';
@ -27,9 +29,13 @@ export class GlobalSearchComponent implements OnInit, OnDestroy {
private isResPanelOpened: boolean = false; private isResPanelOpened: boolean = false;
private searchTerm: string = ""; private searchTerm: string = "";
//Placeholder text
placeholderText: string = "GLOBAL_SEARCH.PLACEHOLDER";
constructor( constructor(
private searchTrigger: SearchTriggerService, private searchTrigger: SearchTriggerService,
private router: Router) { } private router: Router,
private appConfigService: AppConfigService) { }
//Implement ngOnIni //Implement ngOnIni
ngOnInit(): void { ngOnInit(): void {
@ -42,6 +48,10 @@ export class GlobalSearchComponent implements OnInit, OnDestroy {
this.closeSub = this.searchTrigger.searchClearChan$.subscribe(clear => { this.closeSub = this.searchTrigger.searchClearChan$.subscribe(clear => {
this.searchTerm = ""; this.searchTerm = "";
}); });
if(this.appConfigService.isIntegrationMode()){
this.placeholderText = "GLOBAL_SEARCH.PLACEHOLDER_VIC";
}
} }
ngOnDestroy(): void { ngOnDestroy(): void {

View File

@ -86,7 +86,8 @@
"ROOT_CERT": "Download Root Cert" "ROOT_CERT": "Download Root Cert"
}, },
"GLOBAL_SEARCH": { "GLOBAL_SEARCH": {
"PLACEHOLDER": "Search Harbor..." "PLACEHOLDER": "Search Harbor...",
"PLACEHOLDER_VIC": "Search Registry..."
}, },
"SIDE_NAV": { "SIDE_NAV": {
"DASHBOARD": "Dashboard", "DASHBOARD": "Dashboard",

View File

@ -86,7 +86,8 @@
"ROOT_CERT": "下载根证书" "ROOT_CERT": "下载根证书"
}, },
"GLOBAL_SEARCH": { "GLOBAL_SEARCH": {
"PLACEHOLDER": "搜索 Harbor..." "PLACEHOLDER": "搜索 Harbor...",
"PLACEHOLDER_VIC": "搜索 Registry..."
}, },
"SIDE_NAV": { "SIDE_NAV": {
"DASHBOARD": "仪表板", "DASHBOARD": "仪表板",

View File

@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Harbor</title> <title>VMware</title>
<base href="/"> <base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico?v=2"> <link rel="icon" type="image/x-icon" href="favicon.ico?v=2">