{% 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 %}
