fix(LMS): program enrollment does not give any feedback (#29922)

This commit is contained in:
Rucha Mahabal 2022-02-21 22:53:29 +05:30 committed by GitHub
parent e4c4dc402e
commit 87b59fc96c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -11,7 +11,7 @@
{% if frappe.session.user == 'Guest' %} {% if frappe.session.user == 'Guest' %}
<a id="signup" class="btn btn-primary btn-lg" href="/login#signup">{{_('Sign Up')}}</a> <a id="signup" class="btn btn-primary btn-lg" href="/login#signup">{{_('Sign Up')}}</a>
{% elif not has_access %} {% elif not has_access %}
<button id="enroll" class="btn btn-primary btn-lg" onclick="enroll()" disabled>{{_('Enroll')}}</button> <button id="enroll" class="btn btn-primary btn-lg" onclick="enroll()">{{_('Enroll')}}</button>
{% endif %} {% endif %}
</p> </p>
</div> </div>
@ -20,34 +20,35 @@
<script type="text/javascript"> <script type="text/javascript">
frappe.ready(() => { frappe.ready(() => {
btn = document.getElementById('enroll'); btn = document.getElementById('enroll');
if (btn) btn.disabled = false;
}) })
function enroll() { function enroll() {
let params = frappe.utils.get_query_params() let params = frappe.utils.get_query_params()
let btn = document.getElementById('enroll'); let btn = document.getElementById('enroll');
btn.disbaled = true;
btn.innerText = __('Enrolling...')
let opts = { let opts = {
method: 'erpnext.education.utils.enroll_in_program', method: 'erpnext.education.utils.enroll_in_program',
args: { args: {
program_name: params.program program_name: params.program
} },
freeze: true,
freeze_message: __('Enrolling...')
} }
frappe.call(opts).then(res => { frappe.call(opts).then(res => {
let success_dialog = new frappe.ui.Dialog({ let success_dialog = new frappe.ui.Dialog({
title: __('Success'), title: __('Success'),
primary_action_label: __('View Program Content'),
primary_action: function() {
window.location.reload();
},
secondary_action: function() { secondary_action: function() {
window.location.reload() window.location.reload();
} }
}) })
success_dialog.set_message(__('You have successfully enrolled for the program '));
success_dialog.$message.show()
success_dialog.show(); success_dialog.show();
btn.disbaled = false; success_dialog.set_message(__('You have successfully enrolled for the program '));
}) })
} }
</script> </script>