aboutsummaryrefslogtreecommitdiff
path: root/src/components/registration/registration.vue
blob: b443024bff20a976c3a1dc1741e4c0df895e3a63 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<template>
  <div class="settings panel panel-default">
    <div class="panel-heading">
      {{$t('registration.registration')}}
    </div>
    <div class="panel-body">
      <form v-on:submit.prevent='submit(user)' class='registration-form'>
        <div class='container'>
          <div class='text-fields'>
            <div class='form-group'>
              <label for='username'>{{$t('login.username')}}</label>
              <input :disabled="registering" v-model='user.username' class='form-control' id='username' placeholder='e.g. lain'>
            </div>
            <div class='form-group'>
              <label for='fullname'>{{$t('registration.fullname')}}</label>
              <input :disabled="registering" v-model='user.fullname' class='form-control' id='fullname' placeholder='e.g. Lain Iwakura'>
            </div>
            <div class='form-group'>
              <label for='email'>{{$t('registration.email')}}</label>
              <input :disabled="registering" v-model='user.email' class='form-control' id='email' type="email">
            </div>
            <div class='form-group'>
              <label for='bio'>{{$t('registration.bio')}}</label>
              <input :disabled="registering" v-model='user.bio' class='form-control' id='bio'>
            </div>
            <div class='form-group'>
              <label for='password'>{{$t('login.password')}}</label>
              <input :disabled="registering" v-model='user.password' class='form-control' id='password' type='password'>
            </div>
            <div class='form-group'>
              <label for='password_confirmation'>{{$t('registration.password_confirm')}}</label>
              <input :disabled="registering" v-model='user.confirm' class='form-control' id='password_confirmation' type='password'>
            </div>
            <!--
            <div class='form-group'>
              <label for='captcha'>Captcha</label>
              <img src='/qvittersimplesecurity/captcha.jpg' alt='captcha' class='captcha'>
              <input :disabled="registering" v-model='user.captcha' placeholder='Enter captcha' type='test' class='form-control' id='captcha'>
            </div>
            -->
            <div class='form-group'>
              <button :disabled="registering" type='submit' class='btn btn-default'>{{$t('general.submit')}}</button>
            </div>
          </div>
          <div class='terms-of-service' v-html="termsofservice">
          </div>
        </div>
        <div v-if="error" class='form-group'>
          <div class='error'>{{error}}</div>
        </div>
      </form>
    </div>
  </div>
</template>

<script src="./registration.js"></script>
<style lang="scss">
@import '../../_variables.scss';

.registration-form {
  display: flex;
  flex-direction: column;
  margin: 0.6em;

  .container {
    display: flex;
    flex-direction: row;
    //margin-bottom: 1em;
  }

  .terms-of-service {
    flex: 0 1 50%;
    margin: 0.8em;
  }

  .text-fields {
    margin-top: 0.6em;
    flex: 1 0;
    display: flex;
    flex-direction: column;
  }

  .form-group {
    display: flex;
    flex-direction: column;
    padding: 0.3em 0.0em 0.3em;
    line-height:24px;
  }

  form textarea {
    line-height:16px;
    resize: vertical;
  }

  .captcha {
    max-width: 350px;
    margin-bottom: 0.4em;
  }

  .btn {
    //align-self: flex-start;
    //width: 10em;
    margin-top: 0.6em;
    height: 28px;
  }

  .error {
    border-radius: $fallback--tooltipRadius;
    border-radius: var(--tooltipRadius, $fallback--tooltipRadius);
    text-align: center;
    margin: 0.5em 0.6em 0;
    background-color: $fallback--cRed;
    background-color: var(--cRed, $fallback--cRed);
    min-height: 28px;
    line-height: 28px;
  }
}

@media all and (max-width: 959px) {
  .registration-form .container {
    flex-direction: column-reverse;
  }
}
</style>