Div. Bugs

This commit is contained in:
holger.trampe 2021-04-14 15:47:42 +02:00
parent dc0837f028
commit b405019a35
11 changed files with 282 additions and 114 deletions

View File

@ -22,7 +22,7 @@
{% isUserInAuth task area user_id as checkIsUserAuth %} {% isUserInAuth task area user_id as checkIsUserAuth %}
{% if task.area.pk == area.pk and task.visible and checkIsUserAuth %} {% if task.area.pk == area.pk and task.visible and checkIsUserAuth %}
<div style="none; background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 view_0" id="ele_{{task.pk}}"> <div style="none; background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 view_0" id="ele_{{task.pk}}">
<span ><h6 ><a style="color: #FFFFFF;"href="{% url 'standard-task' task.pk %}"><span class="arrows_area_{{area.pk}} ml-4" style="display:none; float: left;"><i class="fas fa-sort"></i></span>{{task.name}}</a></h6></span> <span ><h6 ><a style="color: #FFFFFF;"href="{% url 'standard-task-user' task.pk user_id %}"><span class="arrows_area_{{area.pk}} ml-4" style="display:none; float: left;"><i class="fas fa-sort"></i></span>{{task.name}}</a></h6></span>
</div> </div>
{% endif %} {% endif %}
@ -32,7 +32,7 @@
{% for prio in prios %} {% for prio in prios %}
{% if prio.task.area.pk == area.pk and prio.task.visible %} {% if prio.task.area.pk == area.pk and prio.task.visible %}
<div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 " id="ele_{{prio.task.pk}}"> <div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 " id="ele_{{prio.task.pk}}">
<span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task' prio.task.pk %}"><span class="arrows_area_{{area.pk}} ml-4" style="display:none; float: left;"><i class="fas fa-sort"></i></span>{{prio.task.name}}</a></h6></span> <span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task-user' prio.task.pk user_id %}"><span class="arrows_area_{{area.pk}} ml-4" style="display:none; float: left;"><i class="fas fa-sort"></i></span>{{prio.task.name}}</a></h6></span>
</div> </div>
{% endif %} {% endif %}
{% endfor %} {% endfor %}

View File

@ -23,7 +23,7 @@
{% isUserInEx task area user_id as checkIsUserEx %} {% isUserInEx task area user_id as checkIsUserEx %}
{% if task.area.pk == area.pk and task.visible and checkIsUserEx %} {% if task.area.pk == area.pk and task.visible and checkIsUserEx %}
<div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 view_1" id="ele_{{task.pk}}"> <div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 view_1" id="ele_{{task.pk}}">
<span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task' task.pk %}"><span class="arrows_area_{{area.pk}} ml-4" style="display: none; float: left;"><i class="fas fa-sort"></i></span>{{task.name}}</a></h6></span> <span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task-user' task.pk user_id %}"><span class="arrows_area_{{area.pk}} ml-4" style="display: none; float: left;"><i class="fas fa-sort"></i></span>{{task.name}}</a></h6></span>
</div> </div>
{% endif %} {% endif %}
{% endfor %} {% endfor %}
@ -32,7 +32,7 @@
{% for prio in prios %} {% for prio in prios %}
{% if prio.task.area.pk == area.pk and prio.task.visible %} {% if prio.task.area.pk == area.pk and prio.task.visible %}
<div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 " id="ele_{{prio.task.pk}}"> <div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 " id="ele_{{prio.task.pk}}">
<span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task' prio.task.pk %}"><span class="arrows_area_{{area.pk}} ml-4" style="float: left;"><i class="fas fa-sort"></i></span>{{prio.task.name}}</a></h6></span> <span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task-user' prio.task.pk user_id %}"><span class="arrows_area_{{area.pk}} ml-4" style="float: left;"><i class="fas fa-sort"></i></span>{{prio.task.name}}</a></h6></span>
</div> </div>
{% endif %} {% endif %}
{% endfor %} {% endfor %}

View File

@ -22,7 +22,7 @@
{% isUserInRep task area user_id as checkIsUserRep %} {% isUserInRep task area user_id as checkIsUserRep %}
{% if task.area.pk == area.pk and task.visible and checkIsUserRep %} {% if task.area.pk == area.pk and task.visible and checkIsUserRep %}
<div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 view_2" id="ele_{{task.pk}}"> <div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 view_2" id="ele_{{task.pk}}">
<span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task' task.pk %}"><span class="arrows_area_{{area.pk}} ml-4" style="display:none; float: left;"><i class="fas fa-sort"></i></span>{{task.name}}</a></h6></span> <span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task-user' task.pk user_id %}"><span class="arrows_area_{{area.pk}} ml-4" style="display:none; float: left;"><i class="fas fa-sort"></i></span>{{task.name}}</a></h6></span>
</div> </div>
{% endif %} {% endif %}
@ -32,7 +32,7 @@
{% for prio in prios %} {% for prio in prios %}
{% if prio.task.area.pk == area.pk and prio.task.visible %} {% if prio.task.area.pk == area.pk and prio.task.visible %}
<div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 " id="ele_{{prio.task.pk}}"> <div style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 1)" class="mb-2 pt-3 pb-1 " id="ele_{{prio.task.pk}}">
<span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task' prio.task.pk %}"><span class="arrows_area_{{area.pk}} ml-4" style="float: left;"><i class="fas fa-sort"></i></span>{{prio.task.name}}</a></h6></span> <span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task-user' prio.task.pk user_id %}"><span class="arrows_area_{{area.pk}} ml-4" style="float: left;"><i class="fas fa-sort"></i></span>{{prio.task.name}}</a></h6></span>
</div> </div>
{% endif %} {% endif %}
{% endfor %} {% endfor %}

View File

@ -8,7 +8,9 @@
<li class="breadcrumb-item active" aria-current="page"><a href="{% url 'standard-task' taskid %}">{{taskname}}</a></li> <li class="breadcrumb-item active" aria-current="page"><a href="{% url 'standard-task' taskid %}">{{taskname}}</a></li>
</ol> </ol>
</nav> </nav>
<h4>Standards aus dem Tätigkeitsbereich {{taskname}} des Bereichs {{areaname}}</h4> <h4>Standards aus dem Tätigkeitsbereich {{taskname}} des Bereichs {{areaname}}
<a class="btn btn-primary btn-sm" href="{% url 'standard-add' %}" style="float: right;"><i class="fas fa-plus"></i>&nbsp;Standard</a>
</h4>
<hr> <hr>
<div class="col-12"> <div class="col-12">
<table class="table hover " id="standardstable"> <table class="table hover " id="standardstable">

View File

@ -0,0 +1,102 @@
{% extends "users/base.html" %}
{% block content %}
<div class="content-section col-12">
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="#" onclick="javascript:goToStandardMain()">Standards</a></li>
<li class="breadcrumb-item active"><a href="#" onclick="javascript:goToArea('t_{{areaid}}')">{{areaname}}</a></li>
<li class="breadcrumb-item active" aria-current="page"><a href="{% url 'standard-task' taskid %}">{{taskname}}</a></li>
</ol>
</nav>
<h4>Standards aus dem Tätigkeitsbereich {{taskname}} des Bereichs {{areaname}} von {{vieweduser.get_full_name}}
<a class="btn btn-primary btn-sm" href="{% url 'standard-add' %}" style="float: right;"><i class="fas fa-plus"></i>&nbsp;Standard</a>
</h4>
<hr>
<div class="col-12">
<table class="table hover " id="standardstable">
<thead>
<tr>
<th scope="col">Titel</th>
<th scope="col">Erstellt von</th>
<th scope="col">Erstellt am</th>
<th scope="col">Geändert von</th>
<th scope="col">Geändert am</th>
<th scope="col">Öffentlichkeitsstatus</th>
<th scope="col">&nbsp;</th>
</tr>
</thead>
{% for item in standards_of_agency_task %}
{% if item.public or item.created_standard_by == user or perms.users.standardmanager %}
<tr>
<td><a href="{% url 'standard-single' item.pk %}">{{item.name}}</a></td>
<td>{{item.created_standard_by.first_name}} {{item.created_standard_by.last_name}}</td>
<td data-sort='{{ item.created_standard_date|date:"U"}}'>{{ item.created_standard_date|date:"d.m.Y, H:i"}}</td>
<td>{{ item.last_modified_by.first_name }} {{ item.last_modified_by.last_name }}</td>
<td data-sort='{{ item.created_standard_date|date:"U"}}'>{{ item.last_modified_on|date:"d.m.Y, H:i"}}</td>
<td>{{item.public|yesno:"Öffentlich,Nicht öffentlich"}}</td>
<td>
{% if item.created_standard_by == user or perms.users.standardmanager %}
<a style="float: right" class="btn btn-secondary btn-sm ml-2" href="{% url 'standard-delete' item.pk %}">
<small>
<i class="fas fa-trash"></i></small></a>
<a style="float: right" class="btn btn-secondary btn-sm " href="{% url 'standard-add' item.pk %}">
<small>
<i class="fas fa-pen"></i>
</small></a>
{% endif %}
</td>
</tr>
{% endif %}
{% endfor %}
</table>
</div>
</div>
<script type="text/javascript">
function goToStandardMain(){
localStorage.setItem('activeTab', "");
location.href = "{% url 'standards' %}";
}
function goToArea(name){
localStorage.setItem('activeTab', name);
location.href = "{% url 'standards' %}";
}
$(document).ready( function () {
$('#standardstable').DataTable({
order: [2, 'desc'],
responsive: true,
"language": {
"search" : "Suche",
"info": "Zeige _START_ bis _END_ of _TOTAL_ Einträgen",
"lengthMenu": "Zeige _MENU_ Einträge",
"zeroRecords": "Nichts gefunden",
"infoEmpty": "Keine Einträge",
"paginate": {
"first": "Erste",
"last": "Letzte",
"next": "Nächste",
"previous": "Zurück"
},
},
"pageLength": 50,
"buttons" : {
"className" : "btn-danger"
}
});
} );
</script>
<style>
/* DATATABLES */
.paginate_button {
padding: 0px !important;
border: 0px !important;
}
</style>
{% endblock content %}

View File

@ -25,11 +25,7 @@
</h2> </h2>
<hr> <hr>
<div class="row col"> <div class="row col">
{% if standard.addedfiles.all|length > 0 or standard.linked_standards.all|length > 0 or standard.addedfiles.all|length > 0 or standard.linked_standards.all|length > 0 or standard.freefield_title|length > 0 %}
<div class="card col-9" style="min-height: 500px"> <div class="card col-9" style="min-height: 500px">
{% else %}
<div class="card col-12" style="min-height: 500px">
{% endif %}
<div class="card-body"> <div class="card-body">
<h5 class="card-title"></h5> <h5 class="card-title"></h5>
<p class="card-text"> <p class="card-text">
@ -39,6 +35,26 @@
</div> </div>
</div> </div>
<div class="col-3"> <div class="col-3">
<div class="card ml-1 mb-2">
<div class="card-body">
<h5 class="card-title">Struktur</h5>
<p class="card-text">
<p>Dieser Standard könnte wie folgt eingeordnet werden:</p>
<table>
<tr>
<td>Bereich:</td>
<td><b>{{standard.area.name}}</b></td>
</tr>
<tr>
<td>Tätigkeit:&nbsp;&nbsp;</td>
<td><b>{{standard.task.name}}</b></td>
</tr>
</table>
</p>
</div>
</div>
{% if standard.freefield_title|length > 0 %} {% if standard.freefield_title|length > 0 %}
<div class="card col-14 ml-1 mb-2" style=""> <div class="card col-14 ml-1 mb-2" style="">
<div class="card-body"> <div class="card-body">

View File

@ -22,6 +22,7 @@ urlpatterns = [
path('standard/<int:pk>/<int:agnpk>/singleagn', views.StandardSingleAgn, name="standard-single-agn"), path('standard/<int:pk>/<int:agnpk>/singleagn', views.StandardSingleAgn, name="standard-single-agn"),
path('standard/<int:pk>/area', views.StandardArea, name="standard-area"), path('standard/<int:pk>/area', views.StandardArea, name="standard-area"),
path('standard/<int:pk>/task', views.StandardTask, name="standard-task"), path('standard/<int:pk>/task', views.StandardTask, name="standard-task"),
path('standard/<int:pk>/task/<int:userpk>', views.StandardTaskUser, name="standard-task-user"),
path('standardsagn/<int:pk>', views.StandardFromAgn, name="standard-agn"), path('standardsagn/<int:pk>', views.StandardFromAgn, name="standard-agn"),
path('standardcopy/<int:pk>', views.CopyStandard, name="standard-copyagn"), path('standardcopy/<int:pk>', views.CopyStandard, name="standard-copyagn"),
path('loadaggroupm/', views.LoadAGGroupMembers, name="standard-loadaggroupmembers"), path('loadaggroupm/', views.LoadAGGroupMembers, name="standard-loadaggroupmembers"),

View File

@ -816,6 +816,23 @@ def StandardTask(request, pk):
} }
return render(request, 'standards/standard_task.html', context) return render(request, 'standards/standard_task.html', context)
@login_required
def StandardTaskUser(request, pk, userpk):
standards = Standards.objects.filter(agency__pk=request.user.profile.agency.pk, created_standard_by=User.objects.get(pk=userpk)).exclude(area=None).exclude(task=None).filter(task__pk=pk) or Standards.objects.filter(agency__pk=request.user.profile.agency.pk, last_modified_by=User.objects.get(pk=userpk)).exclude(area=None).exclude(task=None).filter(task__pk=pk)
task = Tasks.objects.get(pk=pk, agency=request.user.profile.agency)
area = Areas.objects.get(pk=task.area.pk, agency=request.user.profile.agency)
context = {
'active_link':'standards',
'standards_of_agency_task' : standards,
'taskid' : pk,
'taskname' : task.name,
'areaid' : area.pk,
'areaname' : area.name,
'vieweduser' : User.objects.get(pk=userpk)
}
return render(request, 'standards/standard_task_user.html', context)
# AJAX Standard # AJAX Standard
@login_required @login_required
def updatesbyajax(request, pk): def updatesbyajax(request, pk):

View File

@ -47,13 +47,27 @@
</div> </div>
<div id="accordion">
{% for s in standards_to_change %} {% for s in standards_to_change %}
<hr> <div class="card">
<div class="card-header" id="head_s_{{s.pk}}">
<h5 class="mb-0">
<button type="button" class="btn btn-link" data-toggle="collapse" data-target="#s_{{s.pk}}" aria-expanded="true" aria-controls="collapseOne">
<i class="fas fa-chevron-down" style="padding-right: 20px;"></i>Standard: <b>{{s.name}}</b>
</button>
</h5>
</div>
<div id="s_{{s.pk}}" class="collapse" aria-labelledby="head_s_{{s.pk}}" data-parent="#accordion">
<div class="card-body">
<h5> <h5>
<span><button class="btn btn-sm btn-secondary" type="button" onclick="javascript:showStandard({{s.pk}})"><i class="fas fa-eye"></i></button></span>&nbsp; <span><button class="btn btn-sm btn-secondary" type="button" onclick="javascript:showStandard({{s.pk}})"><i class="fas fa-eye"></i></button></span>&nbsp;
Standard: {{s.name}} Standard betrachten
</h5> </h5>
<table style="width: 60%;"> <table style="width: 60%;">
{% if s.created_standard_by == user_to_del %} {% if s.created_standard_by == user_to_del %}
<tr> <tr>
@ -148,7 +162,23 @@
</tr> </tr>
{% endif %} {% endif %}
</table> </table>
</div>
</div>
</div>
{% endfor %} {% endfor %}
</div><!-- ACCORDION CLOSE -->
<hr > <hr >
<p>Alle Chat-Nachrichten werden unwiederruflich gelöscht! Soeben wurden alle Vertragsdaten (Abwesenheit und Zeiterfassung), wenn vorhanden, als CSV heruntergeladen. Diese können Sie archivieren und entsprechend Ihrer agenturinternen Gegebenheiten bzgl. Datenspeicherung aufbewahren.<br /></p> <p>Alle Chat-Nachrichten werden unwiederruflich gelöscht! Soeben wurden alle Vertragsdaten (Abwesenheit und Zeiterfassung), wenn vorhanden, als CSV heruntergeladen. Diese können Sie archivieren und entsprechend Ihrer agenturinternen Gegebenheiten bzgl. Datenspeicherung aufbewahren.<br /></p>
<a href="{% url 'users-delete-getdata' user.pk %}" id="downloadFileAction" download>Daten erneut herunterladen</a> <a href="{% url 'users-delete-getdata' user.pk %}" id="downloadFileAction" download>Daten erneut herunterladen</a>

View File

@ -1141,7 +1141,7 @@ def UpdateUserOrga(request):
u.profile.parent = newuser u.profile.parent = newuser
u.save() u.save()
# der neue User ist der gleiche wie er selbst - hier den Chef setzen! # der neue User ist der gleiche wie er selbst - hier den Chef setzen!
elif u.profile.parent != None: elif u == newuser:
u.profile.parent = User.objects.filter(profile__agency=newuser.profile.agency).order_by("pk")[0] u.profile.parent = User.objects.filter(profile__agency=newuser.profile.agency).order_by("pk")[0]
u.save() u.save()