2016-10-28 03:02:41 +11:00
|
|
|
<template>
|
2018-04-01 04:14:36 +10:00
|
|
|
<div class="login panel panel-default">
|
2016-10-28 03:02:41 +11:00
|
|
|
<!-- Default panel contents -->
|
2018-04-01 04:14:36 +10:00
|
|
|
<div class="panel-heading">
|
2017-11-08 21:34:15 +11:00
|
|
|
{{$t('login.login')}}
|
2016-10-28 03:02:41 +11:00
|
|
|
</div>
|
|
|
|
<div class="panel-body">
|
2017-02-25 02:32:41 +11:00
|
|
|
<form v-on:submit.prevent='submit(user)' class='login-form'>
|
2016-10-28 03:02:41 +11:00
|
|
|
<div class='form-group'>
|
2017-11-08 21:34:15 +11:00
|
|
|
<label for='username'>{{$t('login.username')}}</label>
|
2016-10-28 03:02:41 +11:00
|
|
|
<input :disabled="loggingIn" v-model='user.username' class='form-control' id='username' placeholder='e.g. lain'>
|
|
|
|
</div>
|
|
|
|
<div class='form-group'>
|
2017-11-08 21:34:15 +11:00
|
|
|
<label for='password'>{{$t('login.password')}}</label>
|
2016-10-28 03:02:41 +11:00
|
|
|
<input :disabled="loggingIn" v-model='user.password' class='form-control' id='password' type='password'>
|
|
|
|
</div>
|
|
|
|
<div class='form-group'>
|
2017-04-22 01:52:42 +10:00
|
|
|
<div class='login-bottom'>
|
2017-11-08 21:34:15 +11:00
|
|
|
<div><router-link :to="{name: 'registration'}" v-if='registrationOpen' class='register'>{{$t('login.register')}}</router-link></div>
|
2018-04-01 04:14:36 +10:00
|
|
|
<button :disabled="loggingIn" type='submit' class='btn btn-default'>{{$t('login.login')}}</button>
|
2017-04-22 01:52:42 +10:00
|
|
|
</div>
|
2016-10-28 03:02:41 +11:00
|
|
|
</div>
|
2017-03-09 04:28:41 +11:00
|
|
|
<div v-if="authError" class='form-group'>
|
2018-04-01 04:14:36 +10:00
|
|
|
<div class='error'>{{authError}}</div>
|
2017-03-09 04:28:41 +11:00
|
|
|
</div>
|
2016-10-28 03:02:41 +11:00
|
|
|
</form>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<script src="./login_form.js" ></script>
|
2017-02-25 02:32:41 +11:00
|
|
|
|
|
|
|
<style lang="scss">
|
|
|
|
|
|
|
|
.login-form {
|
2018-04-01 04:14:36 +10:00
|
|
|
input {
|
|
|
|
border-radius: 5px;
|
|
|
|
padding: 0.1em 0.2em 0.2em 0.2em;
|
|
|
|
}
|
2017-02-25 02:32:41 +11:00
|
|
|
|
2018-04-01 04:14:36 +10:00
|
|
|
.btn {
|
|
|
|
min-height: 28px;
|
|
|
|
width: 10em;
|
|
|
|
}
|
2017-03-09 04:28:41 +11:00
|
|
|
|
2018-04-01 04:14:36 +10:00
|
|
|
.error {
|
|
|
|
border-radius: 5px;
|
|
|
|
text-align: center;
|
|
|
|
background-color: rgba(255, 48, 16, 0.65);
|
|
|
|
background-color: var(--cRed);
|
|
|
|
min-height: 28px;
|
|
|
|
line-height: 28px;
|
|
|
|
}
|
2017-04-22 01:52:42 +10:00
|
|
|
|
2018-04-01 04:14:36 +10:00
|
|
|
.register {
|
|
|
|
flex: 1 1;
|
|
|
|
}
|
2017-04-22 01:52:42 +10:00
|
|
|
|
2018-04-01 04:14:36 +10:00
|
|
|
.login-bottom {
|
|
|
|
margin-top: 1.0em;
|
|
|
|
display: flex;
|
|
|
|
flex-direction: row;
|
|
|
|
align-items: center;
|
|
|
|
justify-content: space-between;
|
|
|
|
}
|
2017-02-25 02:32:41 +11:00
|
|
|
}
|
|
|
|
|
|
|
|
</style>
|