mirror of
https://github.com/nextcloud/server.git
synced 2026-04-15 22:11:17 -04:00
Update login with device page styles
Signed-off-by: Christopher Ng <chrng8@gmail.com>
This commit is contained in:
parent
9522cbcc92
commit
08d59bbb03
20 changed files with 97 additions and 74 deletions
|
|
@ -662,6 +662,10 @@ form #selectDbType label span {
|
|||
.groupbottom input[type=submit] {
|
||||
box-shadow: none !important;
|
||||
}
|
||||
.grouptop.groupbottom input {
|
||||
border-radius: 3px !important;
|
||||
margin: 5px 0 !important;
|
||||
}
|
||||
|
||||
#install-recommended-apps + label span {
|
||||
display: inline-block;
|
||||
|
|
|
|||
4
core/js/dist/files_client.js
vendored
4
core/js/dist/files_client.js
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/files_client.js.map
vendored
2
core/js/dist/files_client.js.map
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/files_fileinfo.js
vendored
2
core/js/dist/files_fileinfo.js
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/files_fileinfo.js.map
vendored
2
core/js/dist/files_fileinfo.js.map
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/files_iedavclient.js
vendored
2
core/js/dist/files_iedavclient.js
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/files_iedavclient.js.map
vendored
2
core/js/dist/files_iedavclient.js.map
vendored
File diff suppressed because one or more lines are too long
22
core/js/dist/install.js
vendored
22
core/js/dist/install.js
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/install.js.map
vendored
2
core/js/dist/install.js.map
vendored
File diff suppressed because one or more lines are too long
26
core/js/dist/login.js
vendored
26
core/js/dist/login.js
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/login.js.map
vendored
2
core/js/dist/login.js.map
vendored
File diff suppressed because one or more lines are too long
36
core/js/dist/main.js
vendored
36
core/js/dist/main.js
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/main.js.map
vendored
2
core/js/dist/main.js.map
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/maintenance.js
vendored
2
core/js/dist/maintenance.js
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/maintenance.js.map
vendored
2
core/js/dist/maintenance.js.map
vendored
File diff suppressed because one or more lines are too long
4
core/js/dist/recommendedapps.js
vendored
4
core/js/dist/recommendedapps.js
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/recommendedapps.js.map
vendored
2
core/js/dist/recommendedapps.js.map
vendored
File diff suppressed because one or more lines are too long
18
core/js/dist/unified-search.js
vendored
18
core/js/dist/unified-search.js
vendored
File diff suppressed because one or more lines are too long
2
core/js/dist/unified-search.js.map
vendored
2
core/js/dist/unified-search.js.map
vendored
File diff suppressed because one or more lines are too long
|
|
@ -6,6 +6,7 @@
|
|||
@submit.prevent="submit">
|
||||
<fieldset>
|
||||
<p class="grouptop groupbottom">
|
||||
<label for="user" class="infield">{{ t('core', 'Username or email') }}</label>
|
||||
<input id="user"
|
||||
ref="user"
|
||||
v-model="user"
|
||||
|
|
@ -16,10 +17,9 @@
|
|||
:aria-label="t('core', 'Username or email')"
|
||||
required
|
||||
@change="$emit('update:username', user)">
|
||||
<label for="user" class="infield">{{ t('core', 'Username or email') }}</label>
|
||||
</p>
|
||||
|
||||
<div v-if="!validCredentials">
|
||||
<div v-if="!validCredentials" class="body-login-container update form__message-box">
|
||||
{{ t('core', 'Your account is not setup for passwordless login.') }}
|
||||
</div>
|
||||
|
||||
|
|
@ -29,11 +29,19 @@
|
|||
@click="authenticate" />
|
||||
</fieldset>
|
||||
</form>
|
||||
<div v-else-if="!hasPublicKeyCredential">
|
||||
{{ t('core', 'Passwordless authentication is not supported in your browser.') }}
|
||||
<div v-else-if="!hasPublicKeyCredential" class="body-login-container update">
|
||||
<InformationIcon size="70" />
|
||||
<h2>{{ t('core', 'Browser not supported') }}</h2>
|
||||
<p class="infogroup">
|
||||
{{ t('core', 'Passwordless authentication is not supported in your browser.') }}
|
||||
</p>
|
||||
</div>
|
||||
<div v-else-if="!isHttps && !isLocalhost">
|
||||
{{ t('core', 'Passwordless authentication is only available over a secure connection.') }}
|
||||
<div v-else-if="!isHttps && !isLocalhost" class="body-login-container update">
|
||||
<LockOpenIcon size="70" />
|
||||
<h2>{{ t('core', 'Your connection is not secure') }}</h2>
|
||||
<p class="infogroup">
|
||||
{{ t('core', 'Passwordless authentication is only available over a secure connection.') }}
|
||||
</p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
|
@ -43,6 +51,8 @@ import {
|
|||
finishAuthentication,
|
||||
} from '../../services/WebAuthnAuthenticationService'
|
||||
import LoginButton from './LoginButton'
|
||||
import InformationIcon from 'vue-material-design-icons/Information'
|
||||
import LockOpenIcon from 'vue-material-design-icons/LockOpen'
|
||||
|
||||
class NoValidCredentials extends Error {
|
||||
|
||||
|
|
@ -52,6 +62,8 @@ export default {
|
|||
name: 'PasswordLessLoginForm',
|
||||
components: {
|
||||
LoginButton,
|
||||
InformationIcon,
|
||||
LockOpenIcon,
|
||||
},
|
||||
props: {
|
||||
username: {
|
||||
|
|
@ -211,6 +223,13 @@ export default {
|
|||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
<style lang="scss" scoped>
|
||||
.body-login-container.update {
|
||||
margin: 15px 0;
|
||||
|
||||
&.form__message-box {
|
||||
width: 240px;
|
||||
margin: 5px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
Loading…
Reference in a new issue