Merge pull request #26 from steven-zou/fix/issues

fix style issues
This commit is contained in:
Steven Zou 2017-04-05 13:12:38 +08:00 committed by GitHub
commit 448555e952
9 changed files with 64 additions and 44 deletions

View File

@ -2,27 +2,27 @@
<global-message [isAppLevel]="true"></global-message> <global-message [isAppLevel]="true"></global-message>
<navigator (showAccountSettingsModal)="openModal($event)" (showPwdChangeModal)="openModal($event)"></navigator> <navigator (showAccountSettingsModal)="openModal($event)" (showPwdChangeModal)="openModal($event)"></navigator>
<div class="content-container"> <div class="content-container">
<div class="content-area" [class.container-override]="showSearch" [class.content-area-override]="!shouldOverrideContent" [class.start-content-padding]="shouldOverrideContent"> <div class="content-area" [class.container-override]="showSearch" [class.content-area-override]="!shouldOverrideContent" [class.start-content-padding]="shouldOverrideContent">
<global-message [isAppLevel]="false"></global-message> <global-message [isAppLevel]="false"></global-message>
<!-- Only appear when searching --> <!-- Only appear when searching -->
<search-result></search-result> <search-result></search-result>
<router-outlet></router-outlet> <router-outlet></router-outlet>
</div> </div>
<nav class="sidenav" style="padding: 12px 36px;" *ngIf="isUserExisting"> <nav class="sidenav" style="padding: 12px 36px;" *ngIf="isUserExisting">
<section class="sidenav-content"> <section class="sidenav-content">
<a routerLink="/harbor/projects" routerLinkActive="active" class="nav-link">{{'SIDE_NAV.PROJECTS' | translate}}</a> <a routerLink="/harbor/projects" routerLinkActive="active" class="nav-link">{{'SIDE_NAV.PROJECTS' | translate}}</a>
<a routerLink="/harbor/logs" routerLinkActive="active" class="nav-link" style="margin-top: 4px;">{{'SIDE_NAV.LOGS' | translate}}</a> <a routerLink="/harbor/logs" routerLinkActive="active" class="nav-link" style="margin-top: 4px;">{{'SIDE_NAV.LOGS' | translate}}</a>
<section class="nav-group collapsible" *ngIf="isSystemAdmin" style="margin-top: 4px;"> <section class="nav-group collapsible" *ngIf="isSystemAdmin" style="margin-top: 4px;">
<input id="tabsystem" type="checkbox"> <input id="tabsystem" type="checkbox">
<label for="tabsystem">{{'SIDE_NAV.SYSTEM_MGMT.NAME' | translate}}</label> <label for="tabsystem">{{'SIDE_NAV.SYSTEM_MGMT.NAME' | translate}}</label>
<ul class="nav-list"> <ul class="nav-list">
<li><a class="nav-link" routerLink="/harbor/users" routerLinkActive="active">{{'SIDE_NAV.SYSTEM_MGMT.USER' | translate}}</a></li> <li><a class="nav-link" routerLink="/harbor/users" routerLinkActive="active">{{'SIDE_NAV.SYSTEM_MGMT.USER' | translate}}</a></li>
<li><a class="nav-link" routerLink="/harbor/replications/endpoints" routerLinkActive="active">{{'SIDE_NAV.SYSTEM_MGMT.REPLICATION' | translate}}</a></li> <li><a class="nav-link" routerLink="/harbor/replications/endpoints" routerLinkActive="active">{{'SIDE_NAV.SYSTEM_MGMT.REPLICATION' | translate}}</a></li>
<li><a class="nav-link" routerLink="/harbor/configs" routerLinkActive="active">{{'SIDE_NAV.SYSTEM_MGMT.CONFIG' | translate}}</a></li> <li><a class="nav-link" routerLink="/harbor/configs" routerLinkActive="active">{{'SIDE_NAV.SYSTEM_MGMT.CONFIG' | translate}}</a></li>
</ul> </ul>
</section> </section>
</section> </section>
</nav> </nav>
</div> </div>
</clr-main-container> </clr-main-container>
<account-settings-modal></account-settings-modal> <account-settings-modal></account-settings-modal>

View File

@ -8,8 +8,8 @@
<option value="ldap_auth">{{'CONFIG.AUTH_MODE_LDAP' | translate }}</option> <option value="ldap_auth">{{'CONFIG.AUTH_MODE_LDAP' | translate }}</option>
</select> </select>
</div> </div>
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top: -1px;">
<clr-icon shape="info-circle" size="24" style="color: grey;"></clr-icon> <clr-icon shape="info-circle" size="24" class="info-tips-icon"></clr-icon>
<span class="tooltip-content">{{'CONFIG.TOOLTIP.AUTH_MODE' | translate}}</span> <span class="tooltip-content">{{'CONFIG.TOOLTIP.AUTH_MODE' | translate}}</span>
</a> </a>
</div> </div>
@ -39,8 +39,8 @@
{{'TOOLTIP.ITEM_REQUIRED' | translate}} {{'TOOLTIP.ITEM_REQUIRED' | translate}}
</span> </span>
</label> </label>
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top:-1px;">
<clr-icon shape="info-circle" style="color: grey;" size="24"></clr-icon> <clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
<span class="tooltip-content">{{'CONFIG.TOOLTIP.LDAP_SEARCH_DN' | translate}}</span> <span class="tooltip-content">{{'CONFIG.TOOLTIP.LDAP_SEARCH_DN' | translate}}</span>
</a> </a>
</div> </div>
@ -67,8 +67,8 @@
{{'TOOLTIP.ITEM_REQUIRED' | translate}} {{'TOOLTIP.ITEM_REQUIRED' | translate}}
</span> </span>
</label> </label>
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top: -1px;">
<clr-icon shape="info-circle" style="color: grey;" size="24"></clr-icon> <clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
<span class="tooltip-content">{{'CONFIG.TOOLTIP.LDAP_BASE_DN' | translate}}</span> <span class="tooltip-content">{{'CONFIG.TOOLTIP.LDAP_BASE_DN' | translate}}</span>
</a> </a>
</div> </div>
@ -94,8 +94,8 @@
{{'TOOLTIP.ITEM_REQUIRED' | translate}} {{'TOOLTIP.ITEM_REQUIRED' | translate}}
</span> </span>
</label> </label>
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top: -1px;">
<clr-icon shape="info-circle" style="color: grey;" size="24"></clr-icon> <clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
<span class="tooltip-content">{{'CONFIG.TOOLTIP.LDAP_UID' | translate}}</span> <span class="tooltip-content">{{'CONFIG.TOOLTIP.LDAP_UID' | translate}}</span>
</a> </a>
</div> </div>
@ -108,8 +108,8 @@
<option value="3">{{'CONFIG.SCOPE_SUBTREE' | translate }}</option> <option value="3">{{'CONFIG.SCOPE_SUBTREE' | translate }}</option>
</select> </select>
</div> </div>
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top:-1px;">
<clr-icon shape="info-circle" style="color: grey;" size="24"></clr-icon> <clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
<span class="tooltip-content">{{'CONFIG.TOOLTIP.LDAP_SCOPE' | translate}}</span> <span class="tooltip-content">{{'CONFIG.TOOLTIP.LDAP_SCOPE' | translate}}</span>
</a> </a>
</div> </div>
@ -123,16 +123,16 @@
<option value="adminonly">{{'CONFIG.PRO_CREATION_ADMIN' | translate }}</option> <option value="adminonly">{{'CONFIG.PRO_CREATION_ADMIN' | translate }}</option>
</select> </select>
</div> </div>
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top: -1px;">
<clr-icon shape="info-circle" style="color: grey;" size="24"></clr-icon> <clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
<span class="tooltip-content">{{'CONFIG.TOOLTIP.PRO_CREATION_RESTRICTION' | translate}}</span> <span class="tooltip-content">{{'CONFIG.TOOLTIP.PRO_CREATION_RESTRICTION' | translate}}</span>
</a> </a>
</div> </div>
<div class="form-group" *ngIf="showSelfReg"> <div class="form-group" *ngIf="showSelfReg">
<label for="selfReg">{{'CONFIG.SELF_REGISTRATION' | translate}}</label> <label for="selfReg">{{'CONFIG.SELF_REGISTRATION' | translate}}</label>
<clr-checkbox name="selfReg" id="selfReg" [(ngModel)]="currentConfig.self_registration.value" [disabled]="disabled(currentConfig.self_registration)"> <clr-checkbox name="selfReg" id="selfReg" [(ngModel)]="currentConfig.self_registration.value" [disabled]="disabled(currentConfig.self_registration)">
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top:-8px;"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top:-7px;">
<clr-icon shape="info-circle" style="color: grey;" size="24"></clr-icon> <clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
<span class="tooltip-content">{{'CONFIG.TOOLTIP.SELF_REGISTRATION' | translate}}</span> <span class="tooltip-content">{{'CONFIG.TOOLTIP.SELF_REGISTRATION' | translate}}</span>
</a> </a>
</clr-checkbox> </clr-checkbox>

View File

@ -1,3 +1,11 @@
.custom-h2 { .custom-h2 {
margin-top: 0px !important; margin-top: 0px !important;
}
.info-tips-icon {
color: grey;
}
.info-tips-icon:hover {
color: #007CBB;
} }

View File

@ -26,7 +26,7 @@
<label for="verifyRemoteCert">{{'CONFIG.VERIFY_REMOTE_CERT' | translate }}</label> <label for="verifyRemoteCert">{{'CONFIG.VERIFY_REMOTE_CERT' | translate }}</label>
<clr-checkbox name="verifyRemoteCert" id="verifyRemoteCert" [(ngModel)]="allConfig.verify_remote_cert.value" [disabled]="disabled(allConfig.verify_remote_cert)"> <clr-checkbox name="verifyRemoteCert" id="verifyRemoteCert" [(ngModel)]="allConfig.verify_remote_cert.value" [disabled]="disabled(allConfig.verify_remote_cert)">
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-lg tooltip-top-right" style="top:-8px;"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-lg tooltip-top-right" style="top:-8px;">
<clr-icon shape="info-circle" style="color: grey;" size="24"></clr-icon> <clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
<span class="tooltip-content">{{'CONFIG.TOOLTIP.VERIFY_REMOTE_CERT' | translate }}</span> <span class="tooltip-content">{{'CONFIG.TOOLTIP.VERIFY_REMOTE_CERT' | translate }}</span>
</a> </a>
</clr-checkbox> </clr-checkbox>
@ -53,7 +53,7 @@
</span> </span>
</label> </label>
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right">
<clr-icon shape="info-circle" style="color: grey;" size="24"></clr-icon> <clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
<span class="tooltip-content">{{'CONFIG.TOOLTIP.TOKEN_EXPIRATION' | translate}}</span> <span class="tooltip-content">{{'CONFIG.TOOLTIP.TOKEN_EXPIRATION' | translate}}</span>
</a> </a>
</div> </div>

View File

@ -62,8 +62,8 @@
<div class="form-group"> <div class="form-group">
<label for="selfReg">{{'CONFIG.MAIL_SSL' | translate}}</label> <label for="selfReg">{{'CONFIG.MAIL_SSL' | translate}}</label>
<clr-checkbox name="emailSSL" id="emailSSL" [(ngModel)]="currentConfig.email_ssl.value" [disabled]="disabled(currentConfig.email_ssl)"> <clr-checkbox name="emailSSL" id="emailSSL" [(ngModel)]="currentConfig.email_ssl.value" [disabled]="disabled(currentConfig.email_ssl)">
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top:-8px;"> <a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right" style="top:-7px;">
<clr-icon shape="info-circle" style="color: grey;" size="24"></clr-icon> <clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
<span class="tooltip-content">{{'CONFIG.SSL_TOOLTIP' | translate}}</span> <span class="tooltip-content">{{'CONFIG.SSL_TOOLTIP' | translate}}</span>
</a> </a>
</clr-checkbox> </clr-checkbox>

View File

@ -44,7 +44,11 @@ const harborRoutes: Routes = [
canActivateChild: [AuthCheckGuard], canActivateChild: [AuthCheckGuard],
children: [ children: [
{ path: '', redirectTo: 'sign-in', pathMatch: 'full' }, { path: '', redirectTo: 'sign-in', pathMatch: 'full' },
{ path: 'sign-in', component: SignInComponent, canActivate: [SignInGuard] }, {
path: 'sign-in',
component: SignInComponent,
canActivate: [SignInGuard]
},
{ {
path: 'projects', path: 'projects',
component: ProjectComponent component: ProjectComponent

View File

@ -7,12 +7,20 @@ import {
} from '@angular/router'; } from '@angular/router';
import { SessionService } from '../../shared/session.service'; import { SessionService } from '../../shared/session.service';
import { CommonRoutes } from '../../shared/shared.const'; import { CommonRoutes } from '../../shared/shared.const';
//import * as $ from 'jquery';
@Injectable() @Injectable()
export class SignInGuard implements CanActivate, CanActivateChild { export class SignInGuard implements CanActivate, CanActivateChild {
constructor(private authService: SessionService, private router: Router) { } constructor(private authService: SessionService, private router: Router) { }
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise<boolean> | boolean { canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise<boolean> | boolean {
//Fix overflow issue
/*let body = $(document.body);
if(body){
body.css({
"overflow-y": "hidden"
});
}*/
//If user has logged in, should not login again //If user has logged in, should not login again
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
//If signout appended //If signout appended

View File

@ -10,7 +10,7 @@
.statistic-data { .statistic-data {
font-size: 16px; font-size: 16px;
font-weight: 900; font-weight: 900;
font-family: 'Metropolis,"Avenir Next","Helvetica Neue",Arial,sans-serif'; font-family: Metropolis, "Avenir Next", "Helvetica Neue", Arial, sans-serif;
line-height: 16px; line-height: 16px;
} }
@ -18,7 +18,7 @@
font-size: 10px; font-size: 10px;
line-height: 10px; line-height: 10px;
text-transform: uppercase; text-transform: uppercase;
font-family: 'Metropolis,"Avenir Next","Helvetica Neue",Arial,sans-serif'; font-family: Metropolis, "Avenir Next", "Helvetica Neue", Arial, sans-serif;
} }
.statistic-column-block { .statistic-column-block {
@ -30,7 +30,7 @@
position: relative; position: relative;
text-transform: uppercase; text-transform: uppercase;
font-size: 14px; font-size: 14px;
font-family: 'Metropolis,"Avenir Next","Helvetica Neue",Arial,sans-serif'; font-family: Metropolis, "Avenir Next", "Helvetica Neue", Arial, sans-serif;
} }
.statistic-column-title-pro { .statistic-column-title-pro {

View File

@ -9,7 +9,7 @@
<link rel="icon" type="image/x-icon" href="favicon.ico?v=2"> <link rel="icon" type="image/x-icon" href="favicon.ico?v=2">
</head> </head>
<body> <body style="overflow-y: hidden;">
<harbor-app> <harbor-app>
<div class="spinner spinner-lg app-loading"> <div class="spinner spinner-lg app-loading">
Loading... Loading...