MOBILE-3565 login: Fix some styles

main
Pau Ferrer Ocaña 2020-11-04 16:16:57 +01:00
parent 7ef503fab6
commit 3be2f204f4
4 changed files with 56 additions and 15 deletions

View File

@ -4,7 +4,16 @@
--color: var(--core-login-text-color); --color: var(--core-login-text-color);
} }
img { form .item.item-input,
form .core-username.item {
margin-bottom: 16px;
}
form .core-username.item p {
font-size: 16px;
}
.core-login-site-logo img {
max-width: 100%; max-width: 100%;
} }
@ -14,6 +23,7 @@
.core-sitename { .core-sitename {
font-size: 1.2rem; font-size: 1.2rem;
margin-bottom: 0;
} }
.core-login-site-logo { .core-login-site-logo {
@ -25,4 +35,8 @@
.core-login-forgotten-password { .core-login-forgotten-password {
text-decoration: underline; text-decoration: underline;
} }
.core-login-reconnect-warning {
font-size: 0.9em;
}
} }

View File

@ -14,7 +14,7 @@
</ion-buttons> </ion-buttons>
</ion-toolbar> </ion-toolbar>
</ion-header> </ion-header>
<ion-content> <ion-content class="ion-padding">
<core-loading [hideUntil]="pageLoaded"> <core-loading [hideUntil]="pageLoaded">
<div class="ion-text-wrap ion-text-center ion-margin-bottom"> <div class="ion-text-wrap ion-text-center ion-margin-bottom">
<div class="core-login-site-logo"> <div class="core-login-site-logo">
@ -32,7 +32,8 @@
<form ion-list [formGroup]="credForm" (ngSubmit)="login($event)" class="core-login-form" #credentialsForm> <form ion-list [formGroup]="credForm" (ngSubmit)="login($event)" class="core-login-form" #credentialsForm>
<ion-item *ngIf="siteChecked && !isBrowserSSO"> <ion-item *ngIf="siteChecked && !isBrowserSSO">
<ion-input type="text" name="username" placeholder="{{ 'core.login.username' | translate }}" <ion-input type="text" name="username" placeholder="{{ 'core.login.username' | translate }}"
formControlName="username" autocapitalize="none" autocorrect="off"></ion-input> formControlName="username" autocapitalize="none" autocorrect="off" autocomplete="username" enterkeyhint="next"
required="true"></ion-input>
</ion-item> </ion-item>
<ion-item *ngIf="siteChecked && !isBrowserSSO" class="ion-margin-bottom"> <ion-item *ngIf="siteChecked && !isBrowserSSO" class="ion-margin-bottom">
<core-show-password [name]="'password'"> <core-show-password [name]="'password'">

View File

@ -7,15 +7,12 @@
<ion-title>{{ 'core.login.reconnect' | translate }}</ion-title> <ion-title>{{ 'core.login.reconnect' | translate }}</ion-title>
</ion-toolbar> </ion-toolbar>
</ion-header> </ion-header>
<ion-content> <ion-content class="ion-padding">
<div class="ion-text-wrap ion-text-center ion-margin-bottom" [ngClass]="{'item-avatar-center': showSiteAvatar}"> <div class="ion-text-wrap ion-text-center ion-margin-bottom" [ngClass]="{'item-avatar-center': showSiteAvatar}">
<ng-container *ngIf="showSiteAvatar"> <!-- Show user avatar. -->
<ion-avatar> <img *ngIf="showSiteAvatar" [src]="userAvatar" class="large-avatar" core-external-content [siteId]="siteId"
<!-- Show user avatar. --> role="presentation"
<img [src]="userAvatar" class="avatar" core-external-content [siteId]="siteId" role="presentation" alt="{{ 'core.pictureof' | translate:{$a: userFullName} }}" onError="this.src='assets/img/user-avatar.png'">
alt="{{ 'core.pictureof' | translate:{$a: userFullName} }}" onError="this.src='assets/img/user-avatar.png'">
</ion-avatar>
</ng-container>
<div class="core-login-site-logo" *ngIf="!showSiteAvatar"> <div class="core-login-site-logo" *ngIf="!showSiteAvatar">
<!-- Show site logo or a default image. --> <!-- Show site logo or a default image. -->
@ -29,14 +26,14 @@
<p class="core-siteurl">{{siteUrl}}</p> <p class="core-siteurl">{{siteUrl}}</p>
<ion-item *ngIf="!isLoggedOut" class="ion-text-center core-login-reconnect-warning" lines="none"> <ion-item *ngIf="!isLoggedOut" class="ion-text-center core-login-reconnect-warning" lines="none">
<ion-label color="danger"> <ion-label color="danger" class="ion-text-wrap">
<ion-icon name="fas-exclamation-circle" slot="start"></ion-icon> <ion-icon name="fas-exclamation-circle" slot="start"></ion-icon>
{{ 'core.login.reconnectdescription' | translate }} {{ 'core.login.reconnectdescription' | translate }}
</ion-label> </ion-label>
</ion-item> </ion-item>
</div> </div>
<form ion-list *ngIf="!isOAuth" [formGroup]="credForm" (ngSubmit)="login($event)" class="core-login-form" #reconnectForm> <form *ngIf="!isOAuth" [formGroup]="credForm" (ngSubmit)="login($event)" class="core-login-form" #reconnectForm>
<ion-item class="ion-text-wrap core-username"> <ion-item class="ion-text-wrap core-username item-interactive">
<ion-label> <ion-label>
<p>{{username}}</p> <p>{{username}}</p>
</ion-label> </ion-label>
@ -44,7 +41,8 @@
<ion-item class="ion-margin-bottom"> <ion-item class="ion-margin-bottom">
<core-show-password [name]="'password'"> <core-show-password [name]="'password'">
<ion-input class="core-ioninput-password" name="password" type="password" <ion-input class="core-ioninput-password" name="password" type="password"
placeholder="{{ 'core.login.password' | translate }}" formControlName="password" [clearOnEdit]="false"> placeholder="{{ 'core.login.password' | translate }}" formControlName="password" [clearOnEdit]="false"
autocomplete="current-password" enterkeyhint="go" required="true">
</ion-input> </ion-input>
</core-show-password> </core-show-password>
</ion-item> </ion-item>

View File

@ -1,3 +1,8 @@
// Correctly inherit ion-text-wrap onto labels.
ion-item.ion-text-wrap ion-label {
white-space: normal !important;
}
// Ionic toolbar. // Ionic toolbar.
ion-toolbar ion-back-button, ion-toolbar ion-back-button,
@ -99,3 +104,26 @@ ion-list.list-md {
margin-bottom: 10px; margin-bottom: 10px;
font-size: 14px; font-size: 14px;
} }
// Avatar
// -------------------------
// Large centered avatar
img.large-avatar {
display: block;
margin: auto;
width: 90px;
height: 90px;
max-width: 90px;
max-height: 90px;
margin-bottom: 10px;
border-radius : 50%;
padding: 4px;
border: 1px solid #ddd;
background-color: transparent;
}
ion-avatar ion-img, ion-avatar img {
text-indent: -99999px;
background-color: --var(--gray-light);
}