Fixed registration form
This commit is contained in:
parent
05155af329
commit
38ea99d1b3
13
assets/js/components/client/register.js
vendored
13
assets/js/components/client/register.js
vendored
@ -34,9 +34,13 @@ const registerForm = {
|
|||||||
},
|
},
|
||||||
category: function(v) {
|
category: function(v) {
|
||||||
if (_.isEmpty(v)) return "Pilih kategori Anda"
|
if (_.isEmpty(v)) return "Pilih kategori Anda"
|
||||||
|
},
|
||||||
|
email: function(v) {
|
||||||
|
if (_.isEmpty(v)) return "Masukkan email Anda"
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
oninit: function(vnode) {
|
oninit: function(vnode) {
|
||||||
|
registerForm.form.email(vnode.attrs.u)
|
||||||
registerForm.form.name("")
|
registerForm.form.name("")
|
||||||
registerForm.form.gender("")
|
registerForm.form.gender("")
|
||||||
registerForm.form.birthdate(moment().format("YYYY-MM-DD HH:mm:ss"))
|
registerForm.form.birthdate(moment().format("YYYY-MM-DD HH:mm:ss"))
|
||||||
@ -76,7 +80,12 @@ const registerForm = {
|
|||||||
}, m("form", {
|
}, m("form", {
|
||||||
onsubmit: function(e) {
|
onsubmit: function(e) {
|
||||||
e.preventDefault()
|
e.preventDefault()
|
||||||
m.route.set("/questionnaires")
|
// m.route.set("/questionnaires")
|
||||||
|
if (!registerForm.form.isValid()) console.log('err', registerForm.form.error())
|
||||||
|
else {
|
||||||
|
registerForm.form.category(registerForm.form.category().id)
|
||||||
|
Respondent.save(registerForm.form.data())
|
||||||
|
}
|
||||||
},
|
},
|
||||||
style: {
|
style: {
|
||||||
padding: "1em",
|
padding: "1em",
|
||||||
@ -124,7 +133,7 @@ const registerForm = {
|
|||||||
value: registerForm.form.name(),
|
value: registerForm.form.name(),
|
||||||
events: {
|
events: {
|
||||||
oninput: function() {
|
oninput: function() {
|
||||||
registerForm.form.name()
|
registerForm.form.name(this.value)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
validate: function() {
|
validate: function() {
|
||||||
|
8
assets/js/components/header.js
vendored
8
assets/js/components/header.js
vendored
@ -38,10 +38,10 @@ export const header = {
|
|||||||
view: function(vnode) {
|
view: function(vnode) {
|
||||||
var state = vnode.state
|
var state = vnode.state
|
||||||
var email = state.email
|
var email = state.email
|
||||||
return !_.isNil(Respondent.current.data) ?
|
return !_.isNil(Respondent.current.data)
|
||||||
_.isEmpty(Respondent.current.data) ?
|
? m.route.set("/questionnaires")
|
||||||
m.route.set("/register?u=" + email)
|
: !_.isNil(Respondent.current.message)
|
||||||
: m.route.set("/questionnaires")
|
? m.route.set("/register?u="+email)
|
||||||
: [
|
: [
|
||||||
m(".header-img", {
|
m(".header-img", {
|
||||||
style: {
|
style: {
|
||||||
|
16
assets/js/models/Respondent.js
vendored
16
assets/js/models/Respondent.js
vendored
@ -18,15 +18,25 @@ const Respondent = {
|
|||||||
fetchByEmail: function(email) {
|
fetchByEmail: function(email) {
|
||||||
Respondent.loading = true
|
Respondent.loading = true
|
||||||
m.request({
|
m.request({
|
||||||
url: "http://api.questionnaire.dev/v1/respondents",
|
url: "http://api.questionnaire.dev/v1/respondents/search/"+email,
|
||||||
method: "POST",
|
method: "GET"
|
||||||
data: {email}
|
|
||||||
})
|
})
|
||||||
.then(function(res) {
|
.then(function(res) {
|
||||||
Respondent.current = res
|
Respondent.current = res
|
||||||
Respondent.loading = false
|
Respondent.loading = false
|
||||||
console.log(Respondent.current, res);
|
console.log(Respondent.current, res);
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
save: function(data) {
|
||||||
|
m.request({
|
||||||
|
url: "http://api.questionnaire.dev/v1/respondents",
|
||||||
|
method: "POST",
|
||||||
|
data
|
||||||
|
})
|
||||||
|
.then(function(res) {
|
||||||
|
Respondent.current = res
|
||||||
|
m.route.set('/questionnaires')
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
1132
public/js/index.js
vendored
1132
public/js/index.js
vendored
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user