Files
lms/school/lms/web_form/profile/profile.js
2021-12-21 11:11:39 +05:30

84 lines
2.6 KiB
JavaScript

frappe.ready(function () {
frappe.web_form.after_load = () => {
redirect_to_user_profile_form();
add_listener_for_current_company();
add_listener_for_certificate_expiry();
add_listener_for_skill_add_rows();
add_listener_for_functions_add_rows();
add_listener_for_industries_add_rows();
}
frappe.web_form.validate = () => {
let information_missing;
const data = frappe.web_form.get_values();
data.work_experience && data.work_experience.length && data.work_experience.forEach(exp => {
if (!exp.current && !exp.to_date) {
information_missing = true
frappe.msgprint('To Date is mandatory in Work Experience.');
}
});
if (information_missing)
return false;
return true;
};
frappe.web_form.after_save = () => {
setTimeout(() => {
window.location.href = `/profile_/${frappe.web_form.get_value(["username"])}`;
})
}
});
const redirect_to_user_profile_form = () => {
if (!frappe.utils.get_url_arg("name")) {
window.location.href = `/edit-profile?name=${frappe.session.user}`;
}
};
const add_listener_for_current_company = () => {
$(document).on("click", "input[data-fieldname='current']", (e) => {
if ($(e.currentTarget).prop("checked"))
$("div[data-fieldname='to_date']").addClass("hide");
else
$("div[data-fieldname='to_date']").removeClass("hide");
});
};
const add_listener_for_certificate_expiry = () => {
$(document).on("click", "input[data-fieldname='expire']", (e) => {
if ($(e.currentTarget).prop("checked"))
$("div[data-fieldname='expiration_date']").addClass("hide");
else
$("div[data-fieldname='expiration_date']").removeClass("hide");
});
};
const add_listener_for_skill_add_rows = () => {
$('[data-fieldname="skill"]').find(".grid-add-row").click((e) => {
if ($('[data-fieldname="skill"]').find(".grid-row").length > 5) {
$('[data-fieldname="skill"]').find(".grid-add-row").hide();
}
});
};
const add_listener_for_functions_add_rows = () => {
$('[data-fieldname="preferred_functions"]').find(".grid-add-row").click((e) => {
if ($('[data-fieldname="preferred_functions"]').find(".grid-row").length > 3) {
$('[data-fieldname="preferred_functions"]').find(".grid-add-row").hide();
}
});
};
const add_listener_for_industries_add_rows = () => {
$('[data-fieldname="preferred_industries"]').find(".grid-add-row").click((e) => {
if ($('[data-fieldname="preferred_industries"]').find(".grid-row").length > 3) {
$('[data-fieldname="preferred_industries"]').find(".grid-add-row").hide();
}
});
};