Fix local signup, style header
This commit is contained in:
parent
b36ba5f9a1
commit
0922c5d198
|
|
@ -2460,7 +2460,7 @@
|
|||
},
|
||||
"chalk": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
|
@ -2492,7 +2492,7 @@
|
|||
},
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
},
|
||||
|
|
@ -11540,7 +11540,8 @@
|
|||
"ansi-regex": {
|
||||
"version": "2.1.1",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"aproba": {
|
||||
"version": "1.2.0",
|
||||
|
|
@ -11582,7 +11583,8 @@
|
|||
"code-point-at": {
|
||||
"version": "1.1.0",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"concat-map": {
|
||||
"version": "0.0.1",
|
||||
|
|
@ -11593,7 +11595,8 @@
|
|||
"console-control-strings": {
|
||||
"version": "1.1.0",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"core-util-is": {
|
||||
"version": "1.0.2",
|
||||
|
|
@ -11710,7 +11713,8 @@
|
|||
"inherits": {
|
||||
"version": "2.0.3",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"ini": {
|
||||
"version": "1.3.5",
|
||||
|
|
@ -11722,6 +11726,7 @@
|
|||
"version": "1.0.0",
|
||||
"bundled": true,
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"number-is-nan": "^1.0.0"
|
||||
}
|
||||
|
|
@ -11736,6 +11741,7 @@
|
|||
"version": "3.0.4",
|
||||
"bundled": true,
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
}
|
||||
|
|
@ -11743,12 +11749,14 @@
|
|||
"minimist": {
|
||||
"version": "0.0.8",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"minipass": {
|
||||
"version": "2.3.5",
|
||||
"bundled": true,
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"safe-buffer": "^5.1.2",
|
||||
"yallist": "^3.0.0"
|
||||
|
|
@ -11767,6 +11775,7 @@
|
|||
"version": "0.5.1",
|
||||
"bundled": true,
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"minimist": "0.0.8"
|
||||
}
|
||||
|
|
@ -11847,7 +11856,8 @@
|
|||
"number-is-nan": {
|
||||
"version": "1.0.1",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"object-assign": {
|
||||
"version": "4.1.1",
|
||||
|
|
@ -11859,6 +11869,7 @@
|
|||
"version": "1.4.0",
|
||||
"bundled": true,
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
|
|
@ -11944,7 +11955,8 @@
|
|||
"safe-buffer": {
|
||||
"version": "5.1.2",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"safer-buffer": {
|
||||
"version": "2.1.2",
|
||||
|
|
@ -11980,6 +11992,7 @@
|
|||
"version": "1.0.2",
|
||||
"bundled": true,
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"code-point-at": "^1.0.0",
|
||||
"is-fullwidth-code-point": "^1.0.0",
|
||||
|
|
@ -11999,6 +12012,7 @@
|
|||
"version": "3.0.1",
|
||||
"bundled": true,
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"ansi-regex": "^2.0.0"
|
||||
}
|
||||
|
|
@ -12042,12 +12056,14 @@
|
|||
"wrappy": {
|
||||
"version": "1.0.2",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"yallist": {
|
||||
"version": "3.0.3",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
@ -13198,7 +13214,7 @@
|
|||
},
|
||||
"chalk": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
|
@ -13245,13 +13261,13 @@
|
|||
},
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
},
|
||||
"ora": {
|
||||
"version": "0.2.3",
|
||||
"resolved": "http://registry.npmjs.org/ora/-/ora-0.2.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz",
|
||||
"integrity": "sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
|
@ -13309,7 +13325,7 @@
|
|||
},
|
||||
"chalk": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
|
@ -13373,7 +13389,7 @@
|
|||
},
|
||||
"chalk": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
|
@ -13405,7 +13421,7 @@
|
|||
},
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
},
|
||||
|
|
@ -13675,7 +13691,7 @@
|
|||
},
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<template>
|
||||
<div class="hello public-page">
|
||||
<h1 class="hello__title public-page__title">Wollen sie mySkillbox jetzt im Unterricht verwenden</h1>
|
||||
<h1 class="hello__title public-page__title">Wollen sie mySkillbox jetzt im Unterricht verwenden?</h1>
|
||||
<form class="hello__form hello-form" novalidate @submit.prevent="validateBeforeSubmit">
|
||||
<div class="hello-form__field skillboxform-input">
|
||||
<label for="email" class="skillboxform-input__label">E-Mail</label>
|
||||
|
|
@ -15,6 +15,7 @@
|
|||
class="change-form__email skillbox-input skillboxform-input__input"
|
||||
autocomplete="off"
|
||||
data-cy="email-input"
|
||||
placeholder="E-Mail eingeben"
|
||||
tabindex="0"
|
||||
/>
|
||||
<small
|
||||
|
|
|
|||
|
|
@ -0,0 +1,126 @@
|
|||
<template>
|
||||
<div class="license-activation public-page">
|
||||
<header class="info-header">
|
||||
<p class="info-header__text small-emph">Für <span class="info-header__emph">{{me.email}}</span> haben wir keine gültige Lizenz gefunden</p>
|
||||
</header>
|
||||
<section class="coupon">
|
||||
<form class="license-activation__form license-activation-form" novalidate @submit.prevent="validateBeforeSubmit">
|
||||
<h2>Geben Sie einen Coupon-Code ein</h2>
|
||||
<div class="change-form__field skillboxform-input">
|
||||
<label for="coupon" class="skillboxform-input__label">Coupon-Code</label>
|
||||
<input
|
||||
id="coupon"
|
||||
name="coupon"
|
||||
type="coupon"
|
||||
data-vv-as="Passwort"
|
||||
v-model="coupon"
|
||||
v-validate="'required'"
|
||||
:class="{ 'skillboxform-input__input--error': errors.has('coupon') }"
|
||||
class="change-form__new skillbox-input skillboxform-input__input"
|
||||
autocomplete="off"
|
||||
data-cy="coupon-input"
|
||||
tabindex="0"
|
||||
/>
|
||||
<small
|
||||
v-if="errors.has('coupon') && submitted"
|
||||
class="skillboxform-input__error"
|
||||
data-cy="coupon-local-errors"
|
||||
>{{ errors.first('coupon') }}</small>
|
||||
<small
|
||||
v-for="error in couponErrors"
|
||||
:key="error"
|
||||
class="skillboxform-input__error"
|
||||
data-cy="coupon-remote-errors"
|
||||
>{{ error }}</small>
|
||||
</div>
|
||||
<div class="skillboxform-input">
|
||||
<small class="skillboxform-input__error" data-cy="coupon-error" v-if="loginError">{{couponError}}</small>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<button class="button button--primary button--big actions__submit" data-cy="coupon-button">Coupon abschicken</button>
|
||||
</div>
|
||||
</form>
|
||||
</section>
|
||||
<section class="get-license">
|
||||
<h2>Oder, kaufen Sie eine Lizenz</h2>
|
||||
<ul>
|
||||
<li><a href="https://www.hep-verlag.ch">mySkillobx für Lehrpersonen</a></li>
|
||||
<li><a href="https://www.hep-verlag.ch">mySkillobx für Lernende</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import ME_QUERY from '@/graphql/gql/meQuery.gql';
|
||||
import {login} from '../hep-client/index';
|
||||
|
||||
export default {
|
||||
components: {},
|
||||
|
||||
methods: {
|
||||
validateBeforeSubmit() {
|
||||
// this.$validator.validate().then(result => {
|
||||
// this.submitted = true;
|
||||
// let that = this;
|
||||
// if (result) {
|
||||
|
||||
// login(this.password)
|
||||
// .then((response) => {
|
||||
// console.log(response)
|
||||
// })
|
||||
// .catch((error) => {
|
||||
// console.log(error)
|
||||
// this.registrationError = 'Es ist ein Fehler aufgetreten. Bitte versuchen Sie es nochmals.';
|
||||
// });
|
||||
|
||||
|
||||
// }
|
||||
// });
|
||||
},
|
||||
resetForm() {
|
||||
this.coupon = '';
|
||||
this.submitted = false;
|
||||
this.$validator.reset();
|
||||
}
|
||||
},
|
||||
|
||||
data() {
|
||||
return {
|
||||
coupon: '',
|
||||
couponErrors: [],
|
||||
loginError: '',
|
||||
submitted: false
|
||||
};
|
||||
},
|
||||
|
||||
apollo: {
|
||||
me: {
|
||||
query: ME_QUERY,
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@/styles/_variables.scss";
|
||||
@import "@/styles/_mixins.scss";
|
||||
|
||||
.text-link {
|
||||
font-family: $sans-serif-font-family;
|
||||
color: $color-brand;
|
||||
}
|
||||
|
||||
.actions {
|
||||
&__reset {
|
||||
display: inline-block;
|
||||
margin-left: $large-spacing;
|
||||
}
|
||||
}
|
||||
|
||||
.get-license {
|
||||
margin-top: $large-spacing
|
||||
}
|
||||
|
||||
</style>
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="login public-page">
|
||||
<header>
|
||||
<p>Super wir haben für {{helloEmail.email}} ein Hep Konto gefunden</p>
|
||||
<header class="info-header">
|
||||
<p class="info-header__text small-emph">Super wir haben für <span class="info-header__emph">{{helloEmail.email}}</span> ein Hep Konto gefunden</p>
|
||||
<h1 class="login__title public-page__title">Bitte geben Sie das passende Passwort ein</h1>
|
||||
</header>
|
||||
<form class="login__form login-form" novalidate @submit.prevent="validateBeforeSubmit">
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="registration public-page">
|
||||
<header>
|
||||
<p>Für {{helloEmail.email}} haben wir kein Hep Konto gefunden.</p>
|
||||
<header class="info-header">
|
||||
<p class="info-header__text small-emph">Für <span class="info-header__emph">{{helloEmail.email}}</span> haben wir kein Hep Konto gefunden.</p>
|
||||
<h1 class="registration__title public-page__title">Damit Sie mySkillbox verwenden können, müssen Sie ein Konto erstellen.</h1>
|
||||
</header>
|
||||
<form class="registration__form registration-form" novalidate @submit.prevent="validateBeforeSubmit">
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ import registration from '@/pages/registration'
|
|||
import waitForClass from '@/pages/waitForClass'
|
||||
import checkEmail from '@/pages/check-email'
|
||||
import emailVerification from '@/pages/email-verification'
|
||||
import licenseActivation from '@/pages/license-activation'
|
||||
|
||||
import store from '@/store/index';
|
||||
|
||||
|
|
@ -174,6 +175,14 @@ const routes = [
|
|||
layout: 'public'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/license-activation',
|
||||
component: licenseActivation,
|
||||
name: 'licenseActivation',
|
||||
meta: {
|
||||
layout: 'public'
|
||||
}
|
||||
},
|
||||
{path: '/styleguide', component: styleGuidePage},
|
||||
{path: '*', component: p404}
|
||||
];
|
||||
|
|
|
|||
|
|
@ -0,0 +1,13 @@
|
|||
.info-header {
|
||||
margin-top: $large-spacing;
|
||||
margin-bottom: $large-spacing;
|
||||
|
||||
&__text {
|
||||
font-family: $sans-serif-font-family;
|
||||
}
|
||||
|
||||
&__emph {
|
||||
color: $color-brand;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
|
|
@ -6,6 +6,7 @@
|
|||
&__label {
|
||||
margin-bottom: 10px;
|
||||
display: inline-block;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
&__input {
|
||||
|
|
|
|||
|
|
@ -22,3 +22,5 @@
|
|||
@import "public-page";
|
||||
@import "student-submission";
|
||||
@import "module-activity";
|
||||
@import "info_header";
|
||||
|
||||
|
|
|
|||
|
|
@ -8,5 +8,5 @@ module.exports = {
|
|||
`
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
|
|
|
|||
|
|
@ -369,7 +369,8 @@ TASKBASE_SUPERPASSWORD = os.environ.get("TASKBASE_SUPERPASSWORD")
|
|||
TASKBASE_BASEURL = os.environ.get("TASKBASE_BASEURL")
|
||||
|
||||
|
||||
USE_LOCAL_REGISTRATION = False
|
||||
USE_LOCAL_REGISTRATION = True
|
||||
|
||||
|
||||
# HEP
|
||||
HEP_ADMIN_USER = "adminuser"
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
from django.conf import settings
|
||||
from django.core.management import BaseCommand
|
||||
|
||||
from registration.models import LicenseType
|
||||
# from registration.models import LicenseType
|
||||
from users.models import Role
|
||||
|
||||
|
||||
|
|
@ -23,8 +23,8 @@ class Command(BaseCommand):
|
|||
except Role.DoesNotExist:
|
||||
print("LicenseType requires that a Teacher Role exsits")
|
||||
|
||||
LicenseType.objects.create(name='dummy_license',
|
||||
for_role=role,
|
||||
active=True,
|
||||
key='c1fa2e2a-2e27-480d-8469-2e88414c4ad8',
|
||||
description='dummy license')
|
||||
# LicenseType.objects.create(name='dummy_license',
|
||||
# for_role=role,
|
||||
# active=True,
|
||||
# key='c1fa2e2a-2e27-480d-8469-2e88414c4ad8',
|
||||
# description='dummy license')
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ class Login(relay.ClientIDMutation):
|
|||
user = authenticate(username=username, password=password)
|
||||
if user is None:
|
||||
return cls.return_login_message('invalid_credentials')
|
||||
login(info.context, user)
|
||||
|
||||
else:
|
||||
hep_client = HepClient()
|
||||
|
|
|
|||
Loading…
Reference in New Issue