cmtracker/templates/internal/cases/list-cases.html.twig
Ryan Prather de81c2ffb1 Hide Add Case button if not admin or case manager
Hide case filter if user not admin or case manager
Hide case edit button and case assign button if not admin or case manager
2024-12-17 12:09:00 -05:00

118 lines
5.0 KiB
Twig

{% extends 'base.html.twig' %}
{% block body %}
{{ block('nav', 'internal/libs/nav.html.twig') }}
<main class="main-content position-relative max-height-vh-100 h-100 border-radius-lg ">
{{ block('topnav', 'internal/libs/top-nav.html.twig') }}
<div class="container-fluid py-2">
<div class="row">
<div class="col-12">
<div class="card my-4">
<div class="card-header p-0 position-relative mt-n4 mx-3 z-index-2">
<div class="d-flex justify-content-between bg-gradient-dark shadow-dark border-radius-lg pt-4 pb-3 ps-3 p-2">
<div>
<h6 class="text-white text-capitalize ps-3">Case List</h6>
</div>
{% if is_granted('ROLE_CASE_MANAGER') or is_granted('ROLE_ADMIN') %}
<div>
<button type="button" class="btn btn-block btn-light mb-3" onclick="window.open('{{ path('app_add_case') }}', '_self')">Add Case</button>
</div>
{% endif %}
</div>
</div>
<div class="card-body px-0 pb-2">
{% if is_granted('ROLE_ADMIN') %}
<div>
Filters:
<select onchange='filterCasesByUser(this.value)'>
<option value=''></option>
{% for w in workers %}
<option value='{{ w.id }}'>{{ w.name }}</option>
{% endfor %}
</select>
</div>
{% endif %}
<div class="table-responsive p-0">
<table class="table align-items-center mb-0">
<thead>
<tr>
<th class="text-uppercase text-secondary text-xxs font-weight-bolder opacity-7">Name</th>
<th class="text-uppercase text-secondary text-xxs font-weight-bolder opacity-7 ps-2">Case #</th>
<th class="text-center text-uppercase text-secondary text-xxs font-weight-bolder opacity-7">DCS Case ID</th>
<th class="text-center text-uppercase text-secondary text-xxs font-weight-bolder opacity-7">Type/Source</th>
<th class='text-center text-uppercase text-secondary text-xxs font-weight-bolder opacity-7'>County</th>
<th class='text-center text-uppercase text-secondary text-xxs font-weight-bolder opacity-7'>Referral Count</th>
<th class="text-center text-uppercase text-secondary text-xxs font-weight-bolder opacity-7">Case Worker</th>
<th class="text-secondary opacity-7"></th>
</tr>
</thead>
<tbody id='case-list'>
{% for c in cases %}
<tr>
<td>
<div class='d-flex px-2 py-1'>
<div class='d-flex flex-column justify-content-center'>
<h6 class='mb-0 text-small'>{{ c.caseName }}</h6>
</div>
</div>
</td>
<td>
<p class='text-xs font-weight-bold mb-0'>{{ c.caseNumber }}</p>
</td>
<td>
<p class='text-xs font-weight-bold mb-0'>{{ c.dcsCaseId }}</p>
</td>
<td>
<p class='text-xs font-weight-bold mb-0'>
{{ c.referralType }}/{{ c.referralSource.name }}<br/>
<a href='mailto:{{ c.referralSource.email }}'>{{ c.referralSource.email }}</a>
</p>
</td>
<td>
<p class='text-xs font-weight-bold mb-0'>{{ c.county.value }}</p>
</td>
<td>
<p class='text-center text-xs font-weight-bold mb-0'>{{ c.referrals|length }}</p>
</td>
<td class='align-middle text-center text-xs'>
<p class='text-xs font-weight-bold mb-0'>
{% if c.userCases|length > 0 %}
{{ c.userCases.0.user.name }}
{% endif %}
</p>
</td>
<td class='align-right'>
{% if is_granted('ROLE_CASE_MANAGER') or is_granted('ROLE_ADMIN') %}
<a href='{{ path('app_edit_case', {id: c.id}) }}' class='' title='Edit Case' data-toggle='tooltip'>
<i class="material-symbols-rounded opacity-5">edit</i>
</a>
<a href='{{ path('app_assign_case', {id: c.id}) }}' class='' title='Assign Case Worker' data-toggle='tooltip'>
<i class='material-symbols-rounded opacity-5'>badge</i>
</a>
{% endif %}
<a href='{{ path('app_list_referrals', {id: c.id}) }}' class='' title='List Referrals' data-toggle='tooltip'>
<i class='material-symbols-rounded opacity-5'>create_new_folder</i>
</a>
<a href='{{ path('app_case_members', {id: c.id}) }}' class='' title='List Members' data-toggle='tooltip'>
<i class='material-symbols-rounded opacity-5'>group_add</i>
</a>
<a href='{{ path('app_case_notes', {id: c.id}) }}' class='' title='Show Notes' data-toggle='tooltip'>
<i class='material-symbols-rounded opacity-5'>clinical_notes</i>
</a>
</td>
</tr>
</td>
</tbody>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
</div></div></main>{% endblock %}