From 281dc1cb54aa498127ff5059888d5d0370bd9398 Mon Sep 17 00:00:00 2001 From: "holger.trampe" Date: Sat, 1 Feb 2020 20:00:42 +0100 Subject: [PATCH] Standardbug behoben --- cloud/__init__.py | 0 cloud/__pycache__/__init__.cpython-38.pyc | Bin 0 -> 154 bytes cloud/__pycache__/admin.cpython-38.pyc | Bin 0 -> 195 bytes cloud/__pycache__/apps.cpython-38.pyc | Bin 0 -> 372 bytes cloud/__pycache__/forms.cpython-38.pyc | Bin 0 -> 663 bytes cloud/__pycache__/models.cpython-38.pyc | Bin 0 -> 1202 bytes cloud/__pycache__/urls.cpython-38.pyc | Bin 0 -> 346 bytes cloud/__pycache__/views.cpython-38.pyc | Bin 0 -> 1745 bytes cloud/admin.py | 3 ++ cloud/apps.py | 5 ++ cloud/forms.py | 13 +++++ cloud/migrations/0001_initial.py | 28 ++++++++++ cloud/migrations/0002_data_agency.py | 20 +++++++ cloud/migrations/0003_auto_20200122_1810.py | 19 +++++++ cloud/migrations/0004_data_subdir.py | 18 +++++++ cloud/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-38.pyc | Bin 0 -> 1074 bytes .../0002_data_agency.cpython-38.pyc | Bin 0 -> 725 bytes .../0003_auto_20200122_1810.cpython-38.pyc | Bin 0 -> 672 bytes .../0004_data_subdir.cpython-38.pyc | Bin 0 -> 622 bytes .../__pycache__/__init__.cpython-38.pyc | Bin 0 -> 165 bytes cloud/models.py | 23 ++++++++ cloud/templates/cloud/cloud_main.html | 51 ++++++++++++++++++ cloud/tests.py | 3 ++ cloud/urls.py | 6 +++ cloud/views.py | 33 ++++++++++++ .../__pycache__/settings.cpython-38.pyc | Bin 4495 -> 4523 bytes .../__pycache__/urls.cpython-38.pyc | Bin 2047 -> 2097 bytes digitaleagentur/settings.py | 1 + digitaleagentur/urls.py | 1 + media/agency_2/FeedbackWPU10.txt | 8 +++ .../subdir1/subdir2/FeedbackWPU10.txt | 8 +++ .../subdir1/subdir2/FeedbackWPU10_Ry9eQsX.txt | 8 +++ news/__pycache__/models.cpython-38.pyc | Bin 1489 -> 1489 bytes news/templates/news/news_management.html | 26 +++++++-- standards/__pycache__/views.cpython-38.pyc | Bin 6382 -> 6385 bytes standards/views.py | 2 +- users/static/users/css/custom.css | 8 ++- users/templates/users/base.html | 37 +++++++++++-- 39 files changed, 309 insertions(+), 12 deletions(-) create mode 100644 cloud/__init__.py create mode 100644 cloud/__pycache__/__init__.cpython-38.pyc create mode 100644 cloud/__pycache__/admin.cpython-38.pyc create mode 100644 cloud/__pycache__/apps.cpython-38.pyc create mode 100644 cloud/__pycache__/forms.cpython-38.pyc create mode 100644 cloud/__pycache__/models.cpython-38.pyc create mode 100644 cloud/__pycache__/urls.cpython-38.pyc create mode 100644 cloud/__pycache__/views.cpython-38.pyc create mode 100644 cloud/admin.py create mode 100644 cloud/apps.py create mode 100644 cloud/forms.py create mode 100644 cloud/migrations/0001_initial.py create mode 100644 cloud/migrations/0002_data_agency.py create mode 100644 cloud/migrations/0003_auto_20200122_1810.py create mode 100644 cloud/migrations/0004_data_subdir.py create mode 100644 cloud/migrations/__init__.py create mode 100644 cloud/migrations/__pycache__/0001_initial.cpython-38.pyc create mode 100644 cloud/migrations/__pycache__/0002_data_agency.cpython-38.pyc create mode 100644 cloud/migrations/__pycache__/0003_auto_20200122_1810.cpython-38.pyc create mode 100644 cloud/migrations/__pycache__/0004_data_subdir.cpython-38.pyc create mode 100644 cloud/migrations/__pycache__/__init__.cpython-38.pyc create mode 100644 cloud/models.py create mode 100644 cloud/templates/cloud/cloud_main.html create mode 100644 cloud/tests.py create mode 100644 cloud/urls.py create mode 100644 cloud/views.py create mode 100644 media/agency_2/FeedbackWPU10.txt create mode 100644 media/agency_2/subdir1/subdir2/FeedbackWPU10.txt create mode 100644 media/agency_2/subdir1/subdir2/FeedbackWPU10_Ry9eQsX.txt diff --git a/cloud/__init__.py b/cloud/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/cloud/__pycache__/__init__.cpython-38.pyc b/cloud/__pycache__/__init__.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..75f400b2752423ac7a8e14fb14ddceee2f84bcad GIT binary patch literal 154 zcmWIL<>g`kf`_phaUl9Jh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o6w>*(xTqIJKxa z#v?x`J+&ytB|o_|H#M)MIL6&GBqk*@J+mY+Cp9r0C{$V$lbn-Zni3NqpP83g5+AQu WPg`kf`_phaZW(`F^Gc(44TX@fuanW zjJH@5Q*tx&{4|-O_)@YG^V0M6lJoOQiZYXmKnAR2C}IXuVB(jJvsFxJacWU zdTLROOMY@`Zfaghag4iXNK8s*dS*#tPHJL0P^h#hCOId+G$jUXyk0@&Ee@O9{FKt1 NR69nXfuDhx0RZ}wF$Vwu literal 0 HcmV?d00001 diff --git a/cloud/__pycache__/apps.cpython-38.pyc b/cloud/__pycache__/apps.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..187429eb65f3ebbe0aa38798ee9a36f36f088c65 GIT binary patch literal 372 zcmYjMy-ve05I)DLl$KWF5g5tR2LObMid0y-Ko`qkSveC0IdQO?ff-(gSIUN%cm*cT z2@*Z&e!lzecehx~faLSx^ih!iir`RE0xQyRLIweug_;S*U;~&Se+T4-y>XFXdI$OB zo2npZ{q(AB*RFZ0$|7bCg%MbhhGQ}Y1Vf;1CO9TEf%ivi>pC2p#iWQ}o2PxIRHJL7 zR6kRycG%e%&y{-VwEbh!=s&<`GwGc{yy8x^2UF#~Iv=@#`QJK5QzH88Vm$RSem%^Y F^Iv3*RmlJV literal 0 HcmV?d00001 diff --git a/cloud/__pycache__/forms.cpython-38.pyc b/cloud/__pycache__/forms.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..87e0b866212062c8960184f8181e5785a2b7f9aa GIT binary patch literal 663 zcmZuvJx?4l5cStC3pzfUG${~euDKt8P(%a*Qa}@EtW{Rdjc-}xy#@PL2wM0v{3W-k z=u^?aj8}+L60bZvZ^nLa#`eYf`WnNrar@=xAN>C&usjrkeVkzz4KU!2wOn&fzHp+I zTB0vOIn`!5au28_-!j?ZCPtM9+LksYA0c zQ(Ct?B!YdM;WHY`GzX>ys&EjfA|8a6AW=cZtpnHf@D1Roah8bx;S%p$+e=(lYDH`f z*BS7dW5tQ@{?p%llT*7eQO%J4eiMte&CX>vy>tfb{A|1ui>jKN)>c(qtE#qx-jP45 zs+-=pA>%Vtju|Gci@7tutP3%pHP%6RVtxa&$-L|x?3Ne7`cR&9uC~5B?52Hd=ZjDt ze?Kpwshfpy*3=m4eL1Dp%XGGr>$|9^(gMi>U2nma5KO!(>9-J`jg_aIUnN5eQusrB z@HQ!tqoI-m9bF+4rdD&fGV{9g6xO2wOp?5(3yXQ`Fr;?VrvI_WVsAL5uk-=}X^l93 F;te(7lbQek literal 0 HcmV?d00001 diff --git a/cloud/__pycache__/models.cpython-38.pyc b/cloud/__pycache__/models.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e5dc4fdcd42c76b5745f98f1fe30f00776193911 GIT binary patch literal 1202 zcmY*YOK;RL5VrHqHrtlvB@o=nWqBMCAgV0|geVA>OSHmrWA8SLlN84hw7>}tT>1;R zz>$B$*;h{d1uig?EK;#GU*=(ZX8buXhQk4YaryI=mtR~$exh-5cwpQGX)*vo1XZM@ z8KtN@$|>ER^WR)L+7MY@yM|CB02Uo8K>ORN>q&Wj1=vVTdEa}n#bl=l& zE+lYvk4C&Zh`qb^;p)5VAU8gwo(<-;F1fKmAGOZGD;qTJo+xzc*r=!)!>e4{XkI8; z@lt*#I)N;|Z%=N{u*7EepjHd1XWMn&ma;OQ>D9?#2g) z_H+w-8Dx>Usr4Z{;ATI@7P{UXy$*T~^4|!+x(m`607)_`Najd)=?N+v;llKez03zs z0J<+j5gfZ&1a>S3%QX=m(=7SV8iKVhHvl(9bnIlOI(r0oTEt=iyU&ODPFy@Uezk~>kky0x*ECBrvPl+9;liN zX6lsc5k{$v>xu#M(#YM^(dTh3Msf=9Z=jCX(@~8im=)0z1oNqOlws zPxiUqDWnn_DYWqpM5Pb;&@8|?z=XwJG zt7;G;I-;9&9p)w-IbCcwU9+)R@@i3!#a`dw#g(1cmC?oCn73ws+`r|npe(`H-28KO t;ttnKavEA-XTmLcs;a#c|rFE5d%tW{PtG?E=s5PgR}2;z;hGL=VQ zfpb_m>At(~yC0vIX&Mu>ukz^m1LLP7|1Csvg>Fs}fB=<5(SlL}9{AEze&JIhC$sZh(;R!JO5 ztx%ohR+J4_VjGVg$F9TebJ{}|4RhG=rfTzEOQSv9KZGx}cr`k3`GlL&(P55tJi!Xx zn0KNREROJfzBpq`BeY?+t*nG**X^oTqOpeE+&wX*J literal 0 HcmV?d00001 diff --git a/cloud/__pycache__/views.cpython-38.pyc b/cloud/__pycache__/views.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0a875b88b6d9d241ccdfdada4ff23b517d0370a4 GIT binary patch literal 1745 zcmZ`(OK;pZ5GM6n?Zdn4NBl~f7U%=r7Ff4Era{rduG0XHThw+B!lHsKayMF2s|`un ziD91{Aibo&pojRFOMeirJ>@U-)ER0WyG1I2qu~rS{P@ib59a0?1fH*d`}EfppOC+B za`OQj`4)!y69glS3X;=^=1$~LoIAqJy~wk=EBri&g1i>h@-PbXdQ{IFQN#K?(ac*> z%j&+E%iB@g>H+-Ii8`RySSY&rd^B(Eb+M2yMvK|0#$YBfak4iuO0Z3~PX%UNi! zwDx&E6|)F$D1w6JTZvBK8*Ude$8ex`H$_ph?-<+81V=mi71uhOj1=e{#)nBMbgXnC zlMzqxfHxm^Hc?-I!bwCKi5%`m9;1=}f($8hnEO180;_w>2fg-!cq9seu)x$UfJaF- zIjwD^2xcR7Zft<@0~q*KyC5_jWc>l0fDz`ydj+Zw4=&H$kmq{)%UBOCzoJ56I62(!09LHGvgO06JWh5 zyXdVU>0D{!{q*DBzVWvo?tH%|+vxI2$d0K^Wr6YKvbCw?m>XY}Q*bqgz;}F{h>Z1I z<0&qNfCX$O)Q~99TXF$B=5(pFWfC0|Y#i3PBLM?0iH+db;#B1O012Db~!@k$=nhI2_j*eM!$<;JX32aGCpub4e*Vb1dIbRgH?vIG!FE z--3jmX(p-8j(IGy$&sliLd3|M0;cc6mZm%6I!=p;=1+Bu+*B;rio-GVmofpY)?CU} zSS)X&xP!vd?!Z1lX(_++7gMip!Z@BJIgex0h~vCqr9izE$4|;cRGzAIs`T63nx-n#ltYqBDQueT)@E*& z`;-G4aRtnxvp6lpMS$12f*4YddTy&O(Yo8aZMtlnOh!dtJuak9ORXgKmc(W<>oXq` zAhW}MQtHS39IquMG2_wFY(Z5&P*PlGsl-B%*pae^0!vBOLHtj=f^nfFUis$kyEbGz zg^L9)7bUU0WD8dYz#IN%`)KW5F#2$>YKaFoK31)&IBi~UF_iP@z4{w=;eA_B{n=F} h7jQph>ISiIb8o`?Rr0>UPEc4zUD~2|VEpU#{sD|f)s+AM literal 0 HcmV?d00001 diff --git a/cloud/admin.py b/cloud/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/cloud/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/cloud/apps.py b/cloud/apps.py new file mode 100644 index 0000000..7545afe --- /dev/null +++ b/cloud/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class CloudConfig(AppConfig): + name = 'cloud' diff --git a/cloud/forms.py b/cloud/forms.py new file mode 100644 index 0000000..b4de77b --- /dev/null +++ b/cloud/forms.py @@ -0,0 +1,13 @@ +from django import forms +from django.forms import ModelForm +from .models import Data + +class CloudAddFileForm(forms.ModelForm): + + + class Meta: + model = Data + labels = { + "file" : "Datei hochladen", + } + fields = ['file'] diff --git a/cloud/migrations/0001_initial.py b/cloud/migrations/0001_initial.py new file mode 100644 index 0000000..fa0f215 --- /dev/null +++ b/cloud/migrations/0001_initial.py @@ -0,0 +1,28 @@ +# Generated by Django 3.0.2 on 2020-01-22 17:05 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +import django.utils.timezone + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='Data', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('file', models.FileField(max_length=255, null=True, upload_to='')), + ('date_created', models.DateTimeField(default=django.utils.timezone.now)), + ('date_last_modified', models.DateTimeField(default=django.utils.timezone.now)), + ('owner', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/cloud/migrations/0002_data_agency.py b/cloud/migrations/0002_data_agency.py new file mode 100644 index 0000000..f46005c --- /dev/null +++ b/cloud/migrations/0002_data_agency.py @@ -0,0 +1,20 @@ +# Generated by Django 3.0.2 on 2020-01-22 17:10 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('users', '0012_auto_20200122_1705'), + ('cloud', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='data', + name='agency', + field=models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='users.Agency'), + ), + ] diff --git a/cloud/migrations/0003_auto_20200122_1810.py b/cloud/migrations/0003_auto_20200122_1810.py new file mode 100644 index 0000000..42fed0e --- /dev/null +++ b/cloud/migrations/0003_auto_20200122_1810.py @@ -0,0 +1,19 @@ +# Generated by Django 3.0.2 on 2020-01-22 18:10 + +import cloud.models +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cloud', '0002_data_agency'), + ] + + operations = [ + migrations.AlterField( + model_name='data', + name='file', + field=models.FileField(max_length=255, null=True, upload_to=cloud.models.user_directory_path), + ), + ] diff --git a/cloud/migrations/0004_data_subdir.py b/cloud/migrations/0004_data_subdir.py new file mode 100644 index 0000000..2c7eca4 --- /dev/null +++ b/cloud/migrations/0004_data_subdir.py @@ -0,0 +1,18 @@ +# Generated by Django 3.0.2 on 2020-01-22 18:36 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cloud', '0003_auto_20200122_1810'), + ] + + operations = [ + migrations.AddField( + model_name='data', + name='subdir', + field=models.CharField(blank=True, default='', max_length=2000, null=True), + ), + ] diff --git a/cloud/migrations/__init__.py b/cloud/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/cloud/migrations/__pycache__/0001_initial.cpython-38.pyc b/cloud/migrations/__pycache__/0001_initial.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d74b78b5ea3ba1caa9c0cb53e687e0d51ea4cdc2 GIT binary patch literal 1074 zcmZuw&2rR65Y~*OT}iu(jblQE2S~A(jdM*=6yP7Ag6$MuUsPLBjdyyLQAV0&W)x$t zaNR3sIPxYu!(2J}#2u>Qw6wc12Sznr-CuY0&o`~p!65PQeAIXU{Oo()r^fj91ZX_K zYaXHC9w*W(NlHkgQ%Ord^~)d)THBXl+Ckix-L&)A;{gxfcsvBZh+g|?#QhU**tx_! z-jKM+fVHB^&5*jJ6uD+rsLHrbsW?b;G;QL(Jv}rY;5BbifR_^PrIeG@hu~cZoud1m zd~-pu?vMN?PPgUa!}Ta*7wj?192NY)(WiUE!1Y;eRW{YY zEO6JGYf&#>3O`lkD_l|9N(Jytn@hyIw~KFs`@T(sS5sfo`_X#Sf9SgQgi5A0Qb^b%5l; zSd=TX!wXjB%7wKR(zwW?=as6!`IS0%$$`=!^6GbFn({Ljwe#Y>x$Ym&kH`DFW0$Bo ztak8&r+>l1t@v`Z``hFcAID6dD4Bzv?5Sy8LS@b5@ze2yi(FVHf#nF*dNP%&=9BAv zp6u-G{F<$}8O<+rh?!%&<_?O827YoCgaM&+n{1J7{O)|E{{~lW+%R^%Zbf~xMXy1E`;_xWrVF_ItclMnX=W8W;eEiQpW(l#ao40y>Zp72T} zf?F&~Cvi_0IN*L^;36-)&rafjIAe3~JKbS(VWKL}8r9{xZjE1Qz_LBv*t6Rb5;!Dn z56B=(IIu(j2a$=yLAUU14fKluJPeCT;TKVH2Yd*w90;$Rj3-m@sOrQ_-d>lZ+Fsvc z)0(}-Vt*-B-)XsAEG<~d{b!4(Heyri9?Wz>UYXZn|I z=Z*;gFI8W5W}<6J^I(TYbec}0VLn-_3XMBh?=r^{<}(w@!7ZhUq@=LEMA}cK{Mf6~ zhFS!;#Tuw;j%`CP!c4dVIJPMo$HM4XH<)Mj8{8Qm3RP#?2)Hoe&<1gAg7xZby*hen zBE7|bynkiQBf349pYPTO>A9sPeWl9`oAgL;`U>l=O;29GPa)6pPL*hf@A@Vk_(^Zx zFeRpz(h?*`e&X$}u^%NMZSRo@9l^zK*LOLs{J}5x&u~8X&1CF2hKpgiaioX;o$>fP h;_F$OJ=?U+ebfH9drUqPJ|Ag(VVP-d*j*kve*vm2$@TyM literal 0 HcmV?d00001 diff --git a/cloud/migrations/__pycache__/0003_auto_20200122_1810.cpython-38.pyc b/cloud/migrations/__pycache__/0003_auto_20200122_1810.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..abc79ff136319f7e133e080851237097cbb3a261 GIT binary patch literal 672 zcmYjP!H&}~5OrdwO~O{H-~xX@FI8GNAcW8&&@LR<3%duR2+MS4Ln0?GP9o7OaNQ5# ze>nNdX@3C;m2nE%ooFV0p2@uNb1r7Hl#$K8KK$@AVC_i=+H{2EN*&ZcXF#}w$yC#pOQbAy-#&x`2GIn)8c~ayW+LcCEDVZ*$fS~eOH{m zIWM3pt6pjJ3iN|5Mrn$hTPaASM^X*Fk?U-oWvlgCuAZ#2<#uQNFEAzV<`iNc?nNYm zke<7L#D2^!Ci&6Wae25~JIhXbb|TR;9JusD zIP)W%edWY2AfYnOg4(g>$!})lnR!0n+sg^s{OiN_-zgzK1G#G)$sxLXfB*!jCLOJ4 z7gZ4@Cj=s3UkEToH|#U381Q#w5&yzkvWR@%wT+cS+Z*STt_P*vI;8GehU5_4l?aMd z6i5{TZD_?5-^8JTN;Wg#5JQ4EyXKHyGt8%uVYA$4Z~k||mhoEmBUJlEQ9KfI9C}d} zWl=24QY@b=3(r9g(kE_QL2J)EX@AUcRPN)Imga+>fx3{R9&mK|NoZx7;nH(6YQ10> z3o8gCJB6`;@kOgNoGvn-iYYFH&xOFcQ7gRP6XN42b*K#t)K(c#X5A`hBiz@gF943i z87r{wK)yW4$y#i!49Dm)L1xv=b<{RJ%8r&<62 literal 0 HcmV?d00001 diff --git a/cloud/migrations/__pycache__/__init__.cpython-38.pyc b/cloud/migrations/__pycache__/__init__.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1d337a99a8a42726f13ba15d729bdc5f3d0eca92 GIT binary patch literal 165 zcmWIL<>g`kf`_phaUl9Jh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o6wu*(xTqIJKxa z#v?x`J+&ytB|o_|H#M)MIL6&GBqk*@J+mY+Cp9r0C{$V$lbn-Zni7+nnO>Awl9``Z h91|a(nU`4-AFo$Xd5gm)H$SB`C)EyQ$7djB006mjDqa8p literal 0 HcmV?d00001 diff --git a/cloud/models.py b/cloud/models.py new file mode 100644 index 0000000..f910024 --- /dev/null +++ b/cloud/models.py @@ -0,0 +1,23 @@ +from django.db import models +from django.contrib.auth.models import User +from users.models import Agency +# Create your models here. +from django.db import models +from django.utils import timezone + + +def user_directory_path(instance, filename): + # file will be uploaded to MEDIA_ROOT/agency_// + return 'agency_{0}/{1}/{2}'.format(instance.agency.pk, instance.subdir, filename) + + +class Data(models.Model): + subdir = models.CharField(max_length=2000, default="", blank=True, null=True) + file = models.FileField(null=True, max_length=255, upload_to=user_directory_path) + date_created = models.DateTimeField(default = timezone.now) + date_last_modified = models.DateTimeField(default = timezone.now) + owner = models.ForeignKey(User, on_delete=models.PROTECT) + agency = models.ForeignKey(Agency, on_delete=models.CASCADE, default=None) + + def __str__(self): + return str(self.file.name) diff --git a/cloud/templates/cloud/cloud_main.html b/cloud/templates/cloud/cloud_main.html new file mode 100644 index 0000000..5c204f7 --- /dev/null +++ b/cloud/templates/cloud/cloud_main.html @@ -0,0 +1,51 @@ +{% extends "users/base.html" %} +{% load crispy_forms_tags %} +{% block content %} +
+

Dateien

+
+

+ Hier können Sie Dateien und Ordner für ihre Agentur verwalten. +

+
+ {% csrf_token %} + {{form.media}} + {{form|crispy}} +
+ +
+
+
+

+ {% if all_files %} + + + + + + + + + + + + {% for ele in all_files %} + + + + + + + + {% endfor %} + +
#NameEigentümerDatum
{{forloop.counter}}{{ele.file}}{{ele.owner.first_name}} {{ele.owner.last_name}}{{ele.date_created}}Optionen
+ {% else %} +

+ {% endif %} +

+
+
+{% endblock content %} diff --git a/cloud/tests.py b/cloud/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/cloud/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/cloud/urls.py b/cloud/urls.py new file mode 100644 index 0000000..646bc4f --- /dev/null +++ b/cloud/urls.py @@ -0,0 +1,6 @@ +from django.urls import path +from .views import CloudMain + +urlpatterns = [ + path('', CloudMain.as_view(template_name="cloud/cloud_main.html"), name='cloud-main'), +] diff --git a/cloud/views.py b/cloud/views.py new file mode 100644 index 0000000..18bc967 --- /dev/null +++ b/cloud/views.py @@ -0,0 +1,33 @@ +from django.shortcuts import render, redirect +from django.contrib.auth.mixins import LoginRequiredMixin +from django.views.generic import CreateView, ListView, UpdateView, DetailView, DeleteView +from django.contrib.auth.models import User +from django.contrib.auth.decorators import login_required +from django.views.generic import TemplateView +from .models import Data +from django.views.generic.edit import FormView +from .forms import CloudAddFileForm +from django.conf import settings +from django.core.files.storage import default_storage + +# Create your views here. + +class CloudMain(LoginRequiredMixin, FormView): + form_class = CloudAddFileForm + success_url = '/cloud/' + + + def form_valid(self, form): + form = CloudAddFileForm(self.request.POST, self.request.FILES['file']) + + tempdata = Data(file=self.request.FILES['file'], subdir="subdir1/subdir2", agency=self.request.user.profile.agency, owner=self.request.user) + tempdata.save() + return super().form_valid(form) + + + # Change context and return for template-data + def get_context_data(self, **kwargs): + context = super().get_context_data(**kwargs) + all_files = Data.objects.filter(agency__pk=self.request.user.profile.agency.pk) + context.update({'active_link' : 'cloud', 'all_files': all_files}) + return context \ No newline at end of file diff --git a/digitaleagentur/__pycache__/settings.cpython-38.pyc b/digitaleagentur/__pycache__/settings.cpython-38.pyc index 12cc5b78222aacf3d32f82b18e19c11a9c7ed0fd..80ab527be55a82ecc164ebdf91e84bbc0c90aa92 100644 GIT binary patch delta 512 zcmXYsNmEln6ou1|_o5{v28|FgObJs61W-W{Cj_J51R@R>1(7edL53(I&e^)7D7IOc zwM%}1TNnHie}p%$(p~rT>2pu@?X#Qwoea;1LdOESQh$dRqfL9^xQXqhZIQT*N-fQ_ z&`KNaBuLsLQb&h`=(GVmy6C2d6us8X8`34$8VS=U$LW^{8L4MLPH3IPlPH67iXqN& zj`IvNV%5!s3gaT9Tw+Z1%l0T&N)A^kUgNq7mM)`rc(7{fd>6Mv(@Fia<{HYbe)YS2ktC zR%1XCzLLx(_)vDFgKg=oDx*O@s?^1fbn9b1e3BHOrI#;~)&YHdm43cSM$ZAhQ~BT^ u&Rih%;~?wQIFXgL&22Kvg~C>5qCyYG-E5r+?*EL8c*gnX#`gb24*vtbAeDgt delta 491 zcmXYsNmEl%5QXzzUVsu3f*=tMQxb*{CY8y7Nl`!r6vUxrlrLTa0s;yOSXsHID7IM; zw=Ve~{sUL6UAm|9DqYp*o_p@8+kJjVkE4NEzyFFy>*8l@;eXXhAZ%5hBuv_rOEF=p zsiBrS>WP>_DIqF;V#b4y1{!IinYeLM7A+aaSP~#1rL;s`{(%Y4Xa6sgojSJLDv$wy4a zr(%dzQkrv>H5b=i{FJhcBiGrGDmLYYCcUX0*3{K(Ne!Q+mTjp^T5I;1*TwpzFKcBj zc0wMBxJon`VK-|_j4#rVR|@F;s!}6+(xjg?voCSJNeka4p#xeukTwpbUC$1V$Sv53 fJ>!Z0I3KgU_W6o4P+~c!zk)s9e@^K1Z}870ujr5E diff --git a/digitaleagentur/__pycache__/urls.cpython-38.pyc b/digitaleagentur/__pycache__/urls.cpython-38.pyc index fe17211357c91b190e81ff1a58b6ac18fe84407c..b9fca1e2f2dd6861c47e78f8f929117f49e44f5c 100644 GIT binary patch delta 342 zcmey*zfnLtl$V!_0SI^#G~&K+GB7*_agc#1kmCTv#rGC!GuA7o@bxmMGN-7dvZSas zGp2|@`D#GEI*_jc3MKym#Po?gZj1E{DWP*f5q zY6KQFhKia1MWukEreIMskZ20fYV%ZHpr8d<&=RWDDwQouI>j2wvjIBBwwbY+DP1U) zJC!p_28d--?0T8R8KUHXZ21X{MYmGrz;X&ez9LA@94MD!AIzZXu=yWjETcSIa!!6} vihdOrnAR&T$|;7jb#oIl^EO8@r?N2GO+LV`Ir%v|Kj%9pVZOI4A{>kWs9aWG delta 289 zcmdle@Sk5hl$V!_0SLA@GRJM@WMFs<;vfSNAjbiSi_b08X7mu(xC@ML*fKjww3Mgj; zmNSORnWXXp#Z19sW>7KnRJJVX6bmTN5@@$oGh;JTx?n1IDrc4q5X+`m_cDnyM9Bf! z@)H<~PNm9$
- +
@@ -74,14 +74,13 @@
Titel
+
@@ -115,7 +114,7 @@ {% endfor %} - +
Titel
@@ -124,6 +123,21 @@ {% endblock content %} diff --git a/standards/__pycache__/views.cpython-38.pyc b/standards/__pycache__/views.cpython-38.pyc index 28eb6ae52083c5901a9574b1698ed99b487a5923..504f2af5bce6e43d96932c26d8c28898b7fddbab 100644 GIT binary patch delta 104 zcmaE7_|cFzl$V!_0SLTKnZ_;O$ScguxNfo{a||nU3QI53TR~}3 TPG<6E0hSC#Mv2XptQEolr_UV9 diff --git a/standards/views.py b/standards/views.py index b0ec780..dfde738 100644 --- a/standards/views.py +++ b/standards/views.py @@ -22,7 +22,7 @@ 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) 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) + 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}) diff --git a/users/static/users/css/custom.css b/users/static/users/css/custom.css index 4061ee7..8794599 100644 --- a/users/static/users/css/custom.css +++ b/users/static/users/css/custom.css @@ -59,7 +59,13 @@ body{ width: 200px; height: 200px; } - +/* + PAGINATION +*/ +.paginate_button_custom { + padding: 0px !important; + font-size: 2em; +} /* FOR TREE ORGA diff --git a/users/templates/users/base.html b/users/templates/users/base.html index e22da71..67919b1 100644 --- a/users/templates/users/base.html +++ b/users/templates/users/base.html @@ -20,11 +20,7 @@ - - - - @@ -38,7 +34,15 @@ - + + + + + + + + + @@ -120,6 +124,21 @@ + + + + {% if perms.users.users_usermanagement or perms.users.areas_management or perms.users.tasks_management or perms.user.news_management %} @@ -328,6 +347,14 @@ + + + + + + + +