56 lines
1.4 KiB
HTML
56 lines
1.4 KiB
HTML
{% macro hero(title, description, has_access, back) %}
|
|
<div class='container pb-5'>
|
|
<div class="mb-3">
|
|
<a href="{{ back.url }}" class="text-muted">
|
|
{{_('Back to')}} {{ _(back.name) }}
|
|
</a>
|
|
</div>
|
|
<h1>{{ title }}</h1>
|
|
<p class='lead' style="max-width: 100%;">{{ description or ''}}</p>
|
|
<p class="mt-4">
|
|
{% if frappe.session.user == 'Guest' %}
|
|
<a id="signup" class="btn btn-primary btn-lg" href="/login#signup">{{_('Sign Up')}}</a>
|
|
{% elif not has_access %}
|
|
<button id="enroll" class="btn btn-primary btn-lg" onclick="enroll()" disabled>{{_('Enroll')}}</button>
|
|
{% endif %}
|
|
</p>
|
|
</div>
|
|
|
|
{% block script %}
|
|
<script type="text/javascript">
|
|
frappe.ready(() => {
|
|
btn = document.getElementById('enroll');
|
|
if (btn) btn.disabled = false;
|
|
})
|
|
|
|
function enroll() {
|
|
let params = frappe.utils.get_query_params()
|
|
|
|
let btn = document.getElementById('enroll');
|
|
btn.disbaled = true;
|
|
btn.innerText = __('Enrolling...')
|
|
|
|
let opts = {
|
|
method: 'erpnext.education.utils.enroll_in_program',
|
|
args: {
|
|
program_name: params.program
|
|
}
|
|
}
|
|
|
|
frappe.call(opts).then(res => {
|
|
let success_dialog = new frappe.ui.Dialog({
|
|
title: __('Success'),
|
|
secondary_action: function() {
|
|
window.location.reload()
|
|
}
|
|
})
|
|
success_dialog.set_message(__('You have successfully enrolled for the program '));
|
|
success_dialog.$message.show()
|
|
success_dialog.show();
|
|
btn.disbaled = false;
|
|
})
|
|
}
|
|
</script>
|
|
{% endblock %}
|
|
{% endmacro %}
|