124 lines
6.0 KiB
Twig
124 lines
6.0 KiB
Twig
{% extends 'admin/layout.html.twig' %}
|
|
|
|
{% block title %}Jobprofile & Skills {{ teamer }}{% endblock %}
|
|
|
|
{% block content %}
|
|
<div class="grid lg:grid-cols-3 gap-y-8 lg:gap-y-0 lg:gap-x-8">
|
|
<div>
|
|
{{ knp_menu_render(knp_menu_get('admin_teamer')) }}
|
|
</div>
|
|
<div class="lg:col-span-2">
|
|
<h1 class="text-2xl font-bold pb-8">
|
|
Jobprofile & Skills {{ teamer }}
|
|
</h1>
|
|
|
|
<h2 class="text-xl font-bold pb-2">
|
|
Ausbildung
|
|
</h2>
|
|
<ul class="pb-2 divide-y divide-gray-200">
|
|
{% for training in trainings %}
|
|
<li class="py-2">
|
|
<div class="flex items-center justify-between">
|
|
<span class="flex-1">{{ training.name }}</span>
|
|
{% set attendance = teamer.trainingAttendance(training) %}
|
|
{% if attendance %}
|
|
<div class="flex items-center space-x-2">
|
|
<span>{{ attendance.date|date('m/Y') }}</span>
|
|
<button type="button"
|
|
class="text-red-500"
|
|
title="Ausbildung löschen"
|
|
{{ stimulus_controller('modal-button', [], [], {'confirmation-modal': '#confirmation-modal'}) }}
|
|
{{ stimulus_action('modal-button', 'confirmation', null, {
|
|
'title': 'Bist du sicher?',
|
|
'content': 'Möchtest du die Teilnahme an dieser Schulung wirklich löschen?',
|
|
'target-url': path('app_admin_teamer_skills_training_attendance_delete', { 'uuid': attendance.uuid })
|
|
}) }}>
|
|
{{ icon('delete') }}
|
|
</button>
|
|
</div>
|
|
{% else %}
|
|
<button type="button"
|
|
{{ stimulus_controller('modal-button', [], [], {'ajax-modal': '#ajax-modal'}) }}
|
|
{{ stimulus_action('modal-button', 'ajax', null, {
|
|
'title': 'Teilnahme hinzufügen',
|
|
'url': path('app_admin_teamer_skills_training_attendance_create', { 'training_id': training.id, 'teamer_id': teamer.id })
|
|
}) }}>
|
|
{{ icon('calendar', 'w-4 h-4') }}
|
|
</button>
|
|
{% endif %}
|
|
</div>
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
<ul class="pb-8 divide-y divide-gray-200">
|
|
{% for type in ['ski', 'snowboard'] %}
|
|
<li class="py-2">
|
|
<div class="flex items-center justify-between">
|
|
<span class="flex-1">{{ type|license_label }}</span>
|
|
{% set license = teamer.licenseOfType(type) %}
|
|
{% if license %}
|
|
<div class="flex items-center space-x-2">
|
|
<span>{{ license.date|date('m/Y') }}</span>
|
|
{% if is_granted('DOWNLOAD', license.certificate) %}
|
|
<a href="{{ path('app_common_download', { 'uuid': license.certificate.uuid }) }}"
|
|
target="_blank"
|
|
title="Download Nachweis">
|
|
{{ icon('download', 'w-4 h-4') }}
|
|
</a>
|
|
{% endif %}
|
|
</div>
|
|
{% else %}
|
|
{{ icon('minus', 'w-4 h-4') }}
|
|
{% endif %}
|
|
</div>
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
|
|
<div class="grid grid-cols-2 gap-8">
|
|
<div>
|
|
<h2 class="text-lg font-bold pb-2">
|
|
Mögliche Jobprofile
|
|
</h2>
|
|
<ul class="list-disc pl-4">
|
|
{% for profile in teamer.jobProfiles %}
|
|
<li>
|
|
{{ profile.name }}
|
|
</li>
|
|
{% else %}
|
|
<li>
|
|
<div class="text-sm">
|
|
{{ teamer.firstName }} hat bisher keine Job-Profile ausgewählt.
|
|
</div>
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
</div>
|
|
<div>
|
|
<h2 class="text-lg font-bold pb-2">
|
|
Sonstiges
|
|
</h2>
|
|
<div class="flex flex-col space-y-3">
|
|
<div>
|
|
<div class="font-bold">
|
|
Status:
|
|
</div>
|
|
<div>
|
|
{{ teamer.status|teamer_status_label }}
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="font-bold">
|
|
Wünsche:
|
|
</div>
|
|
<div>
|
|
{{ teamer.remarks|nl2br|default('-') }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
{% endblock %} |