0.8.2. Zwischencommit Steckbrief Prios fertig

This commit is contained in:
holger.trampe 2020-03-25 00:48:15 +01:00
parent 782896691c
commit 9f41152153
8 changed files with 111 additions and 16 deletions

View File

@ -8,6 +8,7 @@ from django.contrib.auth.models import User
from django.http import HttpResponse, JsonResponse
import json
from django.contrib.auth.decorators import login_required
from users.priomodel import Prio
@login_required
def area_addareas_ajax(request):
@ -68,6 +69,30 @@ def area_neworder(request):
if(area.agency == request.user.profile.agency):
area.areaorder = ele['neworder']
area.save()
return HttpResponse("UPDATED")
return HttpResponse("UPDATED")
elif request.GET['action'] == 'newtaskorder':
tempuser = User.objects.get(pk=request.GET['userid'])
neworderdata = json.loads(request.GET['finalod'])
for ele in neworderdata:
prio = list(Prio.objects.filter(user__pk=request.GET['userid'], task__pk=ele['id']))[0]
prio.prio = ele['neworder']
prio.save()
return HttpResponse("UPDATED")
else:
return HttpResponse("Request method is not a GET")
return HttpResponse("Request method is not a GET")
'''
@login_required
def UsersPrioUpdate(request):
tempuser = User.objects.get(pk=request.GET['userid'])
if request.method == 'GET' and tempuser.profile.agency.pk == request.user.profile.agency.pk:
prio = Prio.objects.filter(user__pk=request.GET['userid']).filter(task__pk=request.GET['taskid'])
prio = list(prio)[0]
prio.prio = request.GET['value']
prio.save()
return HttpResponse("udated...")
else:
return HttpResponse("Request method is not a GET")
'''

View File

@ -4,7 +4,7 @@
<div class="content-section">
<h3>Bereiche und Aufgaben von {{user_first_name}} {{user_last_name}}<span style="float: right">
{% if user|usergperm:"usermanager" %}
<button type="button" style="float: right" class="btn btn-primary btn-sm" onclick="" data-toggle="tooltip" data-placement="top" title="Reihenfolge der Tätigkeiten anpassen"><small><i class="fas fa-pen"></i></small></button>
<button type="button" style="float: right" class="btn btn-secondary btn-sm" onclick="javascript:activateChangeTaskOrder()" data-toggle="tooltip" data-placement="top" title="Reihenfolge der Tätigkeiten anpassen"><small><i class="fas fa-pen"></i></small></button>
{% endif %}
</span></h3>
<hr>
@ -57,13 +57,15 @@
<tr>
{% for area in areas %}
<td class="text-center" style="background-color: rgba({{area.color.0}},{{area.color.1}},{{area.color.2}}, 0.3)">
{%for prio in prios %}
<div class="areaCollapseContent" id="sortarea_{{area.pk}}">
{%for prio in prios %}
{% 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">
<span ><h6 ><a style=" color: #FFFFFF;"href="{% url 'standard-task' prio.task.pk %}">{{prio.task.name}}</a></h6></span>
<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>
</div>
{% endif %}
{% endfor %}
</div>
</td>
{% endfor %}
</tr>
@ -76,4 +78,72 @@
}
</style>
</div>
<script type="text/javascript">
var sortstatus = false;
var sortablearea_ids = [{% for area in areas %} {{area.pk}},{% endfor %}];
{% if user|usergperm:"usermanager" %}
{% for area in areas %}
//Initial function for draggable areas
$( function() {
$( "#sortarea_{{area.pk}}" ).sortable
({
axis:"y",
update: function( event, ui )
{
datatoserver = [];
var rows = $( "#sortarea_{{area.pk}}" ).sortable( "widget" )[0]['children'];
for(i = 0; i < rows.length; i++){
tempid = rows[i]['id'].split("_")[1];
datatoserver.push({"id" : tempid, "neworder" : i});
}
$.ajax(
{
type: "GET",
url: "/areas/updateorder",
data:{
action: "newtaskorder",
finalod : JSON.stringify(datatoserver),
userid : {{user_id}}
},
success: function( data ){}
});
}
});
});
{% endfor %}
function activateChangeTaskOrder(){
//Initial function for draggable areas
if(sortstatus == false){
sortstatus = true;
for(i = 0; i < sortablearea_ids.length; i++){
$(".arrows_area_" + sortablearea_ids[i]).show();
$( "#sortarea_" + sortablearea_ids[i] ).sortable("enable");
}
}
else{
sortstatus = false;
for(i = 0; i < sortablearea_ids.length; i++){
$(".arrows_area_" + sortablearea_ids[i]).hide();
$( "#sortarea_" + sortablearea_ids[i]).sortable("disable");
}
}
}
{% endif %}
</script>
{% endblock content %}

View File

@ -52,7 +52,7 @@ def singleorga(request, pk):
'''
if(user.profile.agency.pk==request.user.profile.agency.pk):
prios = Prio.objects.filter(user__pk=pk).order_by('-prio')
prios = Prio.objects.filter(user__pk=pk).order_by('prio')
areas = list(Areas.objects.filter(agency__pk=request.user.profile.agency.pk).order_by('areaorder'))
i = 0
for area in areas:

View File

@ -182,7 +182,7 @@
Ausführender
Vertreter
-->
<h6>Verantwortlicher hinzufügen:</h6>
<h6>Verantwortlicher:</h6>
<div class="input-group mb-3">
<input class="form-control searchuserfieldstask" list="possusers_verant" id="searchuser_verant" type="text" onkeyup="javascript:checkUserVerant()" >
<div class="input-group-append">
@ -203,7 +203,7 @@
Ausführender
Vertreter
-->
<h6>Ausführender hinzufügen:</h6>
<h6>Ausführender:</h6>
<div class="input-group mb-3">
<input class="form-control searchuserfieldstask" list="possusers_ex" id="searchuser_ex" type="text" onkeyup="javascript:checkUserEx()" >
<div class="input-group-append">
@ -224,7 +224,7 @@
<!--
Vertreter
-->
<h6>Vertreter hinzufügen:</h6>
<h6>Vertreter:</h6>
<div class="input-group mb-3">
<input class="form-control searchuserfieldstask" list="possusers_ver" id="searchuser_ver" type="text" onkeyup="javascript:checkUserVer()" >
<div class="input-group-append">

View File

@ -61,7 +61,7 @@
<p class="card-text">
{% if standard.authority.count > 0 %}
Verantwortlich: <br />
Verantwortliche<br />
{% for u in standard.authority.all %}
<a href="{% url 'orga-single' u.pk%}"> {{u.first_name}} {{u.last_name}}</a>{% if forloop.counter < standard.authority.count%}&nbsp;|&nbsp;{% endif %}
{% endfor %}
@ -69,7 +69,7 @@
{% endif %}
{% if standard.executor.count > 0 %}
Ausführende:<br />
Ausführende<br />
{% for u in standard.executor.all %}
<a href="{% url 'orga-single' u.pk%}"> {{u.first_name}} {{u.last_name}}</a>{% if forloop.counter < standard.executor.count%}&nbsp;|&nbsp;{% endif %}
{% endfor %}
@ -77,7 +77,7 @@
{% endif %}
{% if standard.representative.count > 0 %}
Vertreter:<br />
Vertreter<br />
{% for u in standard.representative.all %}
<a href="{% url 'orga-single' u.pk%}"> {{u.first_name}} {{u.last_name}}</a>{% if forloop.counter < standard.representative.count%}&nbsp;|&nbsp;{% endif %}
{% endfor %}

View File

@ -177,7 +177,7 @@
Ausführender
Vertreter
-->
<h6>Verantwortlicher hinzufügen:</h6>
<h6>Verantwortlicher</h6>
<div class="input-group mb-3">
<input class="form-control searchuserfieldstask" list="possusers_verant" id="searchuser_verant" type="text" onkeyup="javascript:checkUserVerant()" >
<div class="input-group-append">
@ -201,7 +201,7 @@
Ausführender
Vertreter
-->
<h6>Ausführende hinzufügen:</h6>
<h6>Ausführende</h6>
<div class="input-group mb-3">
<input class="form-control searchuserfieldstask" list="possusers_ex" id="searchuser_ex" type="text" onkeyup="javascript:checkUserEx()" >
<div class="input-group-append">
@ -223,7 +223,7 @@
<!--
Vertreter
-->
<h6>Vertreter hinzufügen:</h6>
<h6>Vertreter</h6>
<div class="input-group mb-3">
<input class="form-control searchuserfieldstask" list="possusers_ver" id="searchuser_ver" type="text" onkeyup="javascript:checkUserVer()" >
<div class="input-group-append">