basic /register/:token route

ref #15
This commit is contained in:
Philipp Dormann 2021-03-25 19:29:37 +01:00
parent 36baf174a5
commit 18d1ddacf7
2 changed files with 16 additions and 1 deletions

View File

@ -219,16 +219,30 @@
</template> </template>
<script setup> <script setup>
import { computed, ref, reactive, watch } from "vue"; import { computed, ref, reactive, defineProps } from "vue";
import axios from "redaxios"; import axios from "redaxios";
import isEmail from 'validator/es/lib/isEmail'; import isEmail from 'validator/es/lib/isEmail';
import isMobilePhone from 'validator/es/lib/isMobilePhone'; import isMobilePhone from 'validator/es/lib/isMobilePhone';
import isPostalCode from 'validator/es/lib/isPostalCode'; import isPostalCode from 'validator/es/lib/isPostalCode';
import { useToast } from "vue-toastification"; import { useToast } from "vue-toastification";
const props = defineProps({
token: String
})
if (props.token) {
axios.get(`${config.baseurl}api/organizations/selfservice/${props.token}`)
.then(({ data }) => {
console.log(data);
})
.catch((error) => {
console.log(error);
});
}
let userdetails = ref({ firstname: "", lastname: "", middlename: "", mail: "", phone: "", address: { street: "", address2: "", city: "", zipcode: "" } }); let userdetails = ref({ firstname: "", lastname: "", middlename: "", mail: "", phone: "", address: { street: "", address2: "", city: "", zipcode: "" } });
let provide_address = ref(false); let provide_address = ref(false);
let agb_accepted = ref(false); let agb_accepted = ref(false);
let firma = ref("");
// //
const state = reactive({ const state = reactive({
submit_enabled: computed(() => agb_accepted.value === true && (isMobilePhone(userdetails.value.phone) || !userdetails.value.phone.trim()) && isEmail(userdetails.value.mail) submit_enabled: computed(() => agb_accepted.value === true && (isMobilePhone(userdetails.value.phone) || !userdetails.value.phone.trim()) && isEmail(userdetails.value.mail)

View File

@ -36,6 +36,7 @@ if (typeof config !== 'undefined') {
{ path: '/imprint', component: Imprint }, { path: '/imprint', component: Imprint },
{ path: '/privacy', component: Privacy }, { path: '/privacy', component: Privacy },
{ path: '/register', component: Register }, { path: '/register', component: Register },
{ path: '/register/:token', component: Register, props: true },
{ path: '/profile', component: Profile } { path: '/profile', component: Profile }
]; ];
} }