This commit is contained in:
pateljannat
2021-05-04 17:41:54 +05:30
parent 1a06e2c0aa
commit 18c0fb0da5
2 changed files with 37 additions and 18 deletions

View File

@@ -46,14 +46,18 @@ class InviteRequest(Document):
@frappe.whitelist(allow_guest=True) @frappe.whitelist(allow_guest=True)
def create_invite_request(invite_email): def create_invite_request(invite_email):
try:
if frappe.db.exists("User", invite_email):
return "user"
if frappe.db.exists("Invite Request", {"invite_email": invite_email}):
return "invite"
frappe.get_doc({ frappe.get_doc({
"doctype": "Invite Request", "doctype": "Invite Request",
"invite_email": invite_email "invite_email": invite_email
}).save(ignore_permissions=True) }).save(ignore_permissions=True)
return "OK" return "OK"
except frappe.UniqueValidationError:
frappe.throw(_("Email {0} has already been used to request an invite").format(invite_email))
@frappe.whitelist(allow_guest=True) @frappe.whitelist(allow_guest=True)
def update_invite(data): def update_invite(data):

View File

@@ -5,21 +5,36 @@
<script> <script>
frappe.ready(() => { frappe.ready(() => {
$("#submit-invite-request").click(function () { $("#submit-invite-request").click(function () {
var invite_email = $("#invite_email").val()
frappe.call({ frappe.call({
method: "community.lms.doctype.invite_request.invite_request.create_invite_request", method: "community.lms.doctype.invite_request.invite_request.create_invite_request",
args: { args: {
invite_email: $("#invite_email").val() invite_email: invite_email
}, },
callback: (data) => { callback: (data) => {
if (data.message == "OK") {
$("#invite-request-form").hide(); $("#invite-request-form").hide();
if (data.message == "OK") {
var message = `<div> var message = `<div>
<p class="lead">Thanks for your interest in Mon School. We have recorded your interest and we will get back to you shortly.</p> <p class="lead">Thanks for your interest in Mon School. We have recorded your interest and we will get back to you shortly.</p>
</div>`; </div>`;
}
else if (data.message == "invite") {
var message = `<div>
<p class="lead">Email ${invite_email} has already been used to request an invitation.</p>
</div>`;
}
else if (data.message == "user") {
var message = `<div>
<p class="lead">Looks like there is already an account with email ${invite_email}. Would you like to <a href="/login">login</a>.</p>
</div>`;
}
$(".jumbotron").append(message); $(".jumbotron").append(message);
} }
}
}) })
}) })
}) })
</script> </script>