diff --git a/cloud/models.py b/cloud/models.py
index cbbae4f..48b1f22 100644
--- a/cloud/models.py
+++ b/cloud/models.py
@@ -29,6 +29,7 @@ class DataDir(models.Model):
name = models.CharField(max_length=2000, default="", blank=True, null=True)
def2 = models.CharField(max_length=2000, default="", blank=True, null=True)
is_root = models.BooleanField(default=False)
+ is_defaultstandard = models.BooleanField(default=False)
dirs = models.ManyToManyField('self', blank=True, related_name='dirs_in_dirs', symmetrical = False)
visibleby = models.ManyToManyField(AgencyGroup, blank=True, related_name='visible_by_user')
date_created = models.DateTimeField(default = timezone.now)
diff --git a/cloud/templates/cloud/cloud_main.html b/cloud/templates/cloud/cloud_main.html
index 635f397..b5320cf 100644
--- a/cloud/templates/cloud/cloud_main.html
+++ b/cloud/templates/cloud/cloud_main.html
@@ -89,7 +89,7 @@ a.disabled {
{{d.date_created|date:"d.m.Y G:i"}}
{{d.date_last_modified|date:"d.m.Y G:i"}}
- {% if user|usergperm:"filedirmanager" and groupchecker%}
+ {% if user|usergperm:"filedirmanager" and groupchecker and d.is_defaultstandard == False %}
+
- {% for area in areas %}
+ {% for area in areas %}
- {% for task in tasks %}
- {% if task.area == area %}
-
+ {% for ele in standardcontent %}
+ {% if ele.area == area %}
+
+ {% for task in ele.tasks %}
+
- {% setvar 0 %}
- {% for standard in standards_of_agency %}
- {% getvar as varcounter %}
- {% if standard.task == task and standard.area == area%}
- {% incvar %}
- {% endif %}
- {% endfor %}
- {% getvar as varcounter %}
- {% setvar 0 %}
- {% for standard in standards_of_agency %}
-
- {% setbool False %}
- {% for ag in standard.visibleby.all %}
- {% if request.user|has_group:ag.group.name %}
- {% setbool True %}
- {% endif %}
- {% endfor %}
-
- {% if standard.visibleby.all|length == 0 %}
+
{{task.task.name}} ({{task.standards.count}})
+
+
+ {% for s in task.standards %}
+
+ {% setbool False %}
+ {% for ag in s.visibleby.all %}
+ {% if request.user|has_group:ag.group.name %}
+ {% setbool True %}
+ {% endif %}
+ {% endfor %}
+ {% if s.visibleby.all|length == 0 %}
{% setbool True %}
{% endif %}
- {% getbool as groupchecker %}
-
- {% getvar as varcounter %}
- {% if standard.task == task and standard.area == area and varcounter < 3 %}
- {% incvar %}
- {% if groupchecker %}
-
{{standard.name|truncatechars:28}}
+ {% getbool as groupchecker %}
+ {% if forloop.counter0 < 3 %}
+ {% if groupchecker %}
+
{{s.name|truncatechars:28}}
{% else %}
-
{{standard.name|truncatechars:28}}
- {% endif %}
- {% endif %}
- {% endfor %}
-
+
{{s.name|truncatechars:28}}
+ {% endif %}
+ {% endif %}
+ {% endfor %}
+
- {% endif %}
- {% endfor %}
+ {% endfor %}
+ {% endif %}
+ {% endfor %}
{% endfor %}
@@ -193,6 +185,7 @@
+{% endblock content %}
\ No newline at end of file
diff --git a/standards/templates/standards/standards_update.html b/standards/templates/standards/standards_update.html
index 682c19e..94ab528 100644
--- a/standards/templates/standards/standards_update.html
+++ b/standards/templates/standards/standards_update.html
@@ -100,8 +100,10 @@
- {% for s in possiblestandards %}
- {{s.name|truncatechars:30}}
+ {% for s in possiblestandards %}
+ {% if s.pk != standard.pk %}
+ {{s.name|truncatechars:30}}
+ {% endif %}
{% endfor %}
@@ -278,13 +280,14 @@ $('#uploadedfile').on('change', function() {
function uploadAction(filetodo){
var formData = new FormData();
formData.append("uploadedfile", filetodo);
+ formData.append("uploadsource", "standards");
if(allowedtypes.includes(filetodo.type) && filetodo.type.length > 0){
$.ajax({
url: "{% url 'cloud-adddir' parentid %}",
headers: {
"X-CSRFTOKEN": "{{ csrf_token }}"
},
- data: formData,
+ data: formData,
type: 'POST',
cache: false,
processData: false,
diff --git a/standards/views.py b/standards/views.py
index d69e4e6..dd21acc 100644
--- a/standards/views.py
+++ b/standards/views.py
@@ -25,10 +25,24 @@ class StandardsManagement(LoginRequiredMixin, ListView):
# # Get all Users of the Same Agency as logged user
areas = Areas.objects.filter(agency__pk=self.request.user.profile.agency.pk).order_by("areaorder")
standards_of_user = Standards.objects.filter(agency__pk=self.request.user.profile.agency.pk, created_standard_by=self.request.user.pk)
- standards_of_agency = Standards.objects.filter(agency__pk=self.request.user.profile.agency.pk, public=True)
+ #standards_of_agency = Standards.objects.filter(agency__pk=self.request.user.profile.agency.pk, public=True)
unpubstandards_of_user = Standards.objects.filter(agency__pk=self.request.user.profile.agency.pk, public=False)
- tasks = Tasks.objects.filter(agency__pk=self.request.user.profile.agency.pk)
- context.update({'active_link' : 'standards', 'tasks': tasks, 'unpubstandards_of_user' : unpubstandards_of_user, 'standards_of_agency' : standards_of_agency, 'areas' : areas, 'standards_of_user' : standards_of_user})
+ #tasks = Tasks.objects.filter(agency__pk=self.request.user.profile.agency.pk)
+
+ standardcontent = []
+
+ for a in areas:
+ print(a)
+ standardcontent.append({"area" : a, "tasks" : []})
+ tasks_in_area = Tasks.objects.filter(agency__pk=self.request.user.profile.agency.pk, area__pk=a.pk).order_by("name")
+
+ for t in tasks_in_area:
+ standardcontent[len(standardcontent)-1]['tasks'].append({"task" : t, "standards" : Standards.objects.filter(agency__pk=self.request.user.profile.agency.pk, area__pk=a.pk, task = t.pk, area = a.pk, public=True).order_by("created_standard_date")})
+
+ #context.update({'active_link' : 'standards', 'tasks': tasks, 'unpubstandards_of_user' : unpubstandards_of_user, 'standards_of_agency' : standards_of_agency, 'areas' : areas, 'standards_of_user' : standards_of_user, 'standardcontent' : standardcontent})
+
+ context.update({'active_link' : 'standards', 'unpubstandards_of_user' : unpubstandards_of_user, 'areas' : areas, 'standards_of_user' : standards_of_user, 'standardcontent' : standardcontent})
+
return context
@@ -99,16 +113,6 @@ def StandardAdd(request):
# GROUPS
new_standard.save()
-
-
- '''
-
- HIER WEITER MACHEN: Gruppen, Dateien und Files werden nicht gespeichert, Länge des übergebenen
- Arrays ist komisch, da Strings ankommen und es umgebaut werden muss. Wenn das Array aber LEER
- ist, gibt es '' zurück und das ist komisch...
-
-
- '''
# ADD GROUPS
groups = normalForm.cleaned_data['checked_groups'].split(",")
@@ -144,11 +148,7 @@ def StandardAdd(request):
normalForm = StandardAddStandard(instance=request.user)
editorForm = StandardAddStandardEditor(instance=request.user)
- '''
- Hier werden nur die Dateien dem aktuellen User zur Auswahl gestellt, auf die er auch Zugriff hat.
- Das geht NICHT rekursiv! Es wird nur das oberste Verzeichnis geprüft! SPÄTER!
- '''
-
+
possibleFilesByVisible = []
allfiles = DataFile.objects.filter(agency=request.user.profile.agency)
@@ -160,7 +160,6 @@ def StandardAdd(request):
else:
if(checkUserDirRights(request, actParent, request.user.pk)):
possibleFilesByVisible.append(f)
-
diff --git a/users/views.py b/users/views.py
index 1912637..189c5b4 100644
--- a/users/views.py
+++ b/users/views.py
@@ -97,6 +97,19 @@ def toUpdate(request):
print("AGENCY ROOT DIR CREATED")
else:
print("MAIN ROOT DIR FOUND - FILESMODULE READY")
+
+ # DEF STANDARD DIR
+ defstandard = DataDir.objects.filter(is_defaultstandard=True, agency__pk=request.user.profile.agency.pk)
+
+ if(len(defstandard) == 0):
+ print("NO DEF STANDARD FOUND - CREATE")
+ rootdir = list(DataDir.objects.filter(is_root=True, agency__pk=request.user.profile.agency.pk))[0]
+ defstandard = DataDir(is_defaultstandard=True, agency=request.user.profile.agency, name="Uploaddateien Standards", parent_id=rootdir.pk)
+ defstandard.save()
+ print("AGENCY DEF STANDARD DIR CREATED")
+ else:
+ print("AGENCY DEF STANDARD DIR - FILESMODULE READY")
+
'''
DASHBOARD-View