From 3a9e201250b3b8791a9f8ebe7bc4b54010f2b4d8 Mon Sep 17 00:00:00 2001 From: nataly Date: Fri, 12 Jan 2024 16:59:07 +0200 Subject: [PATCH] New changes. --- osinaweb/db.sqlite3 | Bin 630784 -> 630784 bytes .../__pycache__/models.cpython-311.pyc | Bin 18925 -> 19030 bytes .../__pycache__/views.cpython-311.pyc | Bin 57855 -> 60660 bytes .../0046_task_requirement.cpython-311.pyc | Bin 0 -> 1051 bytes osinaweb/osinacore/views.py | 11 +- .../osinaweb/__pycache__/urls.cpython-311.pyc | Bin 10980 -> 11012 bytes osinaweb/static/dist/output.css | 9 +- .../details_pages/project-details.html | 272 +++++++++++------- 8 files changed, 187 insertions(+), 105 deletions(-) create mode 100644 osinaweb/osinacore/migrations/__pycache__/0046_task_requirement.cpython-311.pyc diff --git a/osinaweb/db.sqlite3 b/osinaweb/db.sqlite3 index aa4e00d37c8bfc6020ccbc89bca075056da80a52..158585bf0acb0d70bfbfcf1ec0cef21c63b1b846 100644 GIT binary patch delta 1604 zcma)6Yitx%6rQ_xc4i+l`*pY3-Ikqgx6lHjZD+R+OF<|#Vv#@#k(ZKaVGES!wq2Vd zgjO&?)JPR|B8n|0T7rnhio>%sfgeZ^mIze{f)EpEG`v!XmIS>sOB)koG$;3*JCF0- z?|k>%+tM?#rDtSofJ}c|dD1$a%Uhb*6a6rk1mDSfo&>kd&l@8s!BjetXzn*G=|awM z51m4^SKhQ_5P#Q+ybMC5uD<+0EHpuMa^fs$H!9?E*Jfw6>%7ws-7!{dlQv<5=S82f(6l)WgFBEUF{%eE9eAU zvnJjmYb>_ru1TT$qW1CcMD`Si!Ud&8MWqGBd4=J^!s1Ao&fYKl!OL-+h+YmCaTV8b z1HBkPzwS#|E@8Bl65>+~?;R%N8_t1^9R5HD+OQj&u@M?>qYqbfNoyZ ztS%$?9JtGfCMYhmr1OkqA8sPC*GCUPFc^x8)(e{F5v3W_b;dPT?svuHL((Q`hVDzD zDhM=~54kBAhSTxIiF_c(ZEinVF7F>W8+aK&gz?tQ>lb=-W@zg&~Q@ zVUBS*%(~;eo^p%s$J42P60KhnU*ciQXQz@St{~545_9*B4p5v5&!sCAiFX(s=m=@oqdyyL|T*?y37&X?bl6?8j8 zj;oHHj(Vxpe%F3bIwQ^0LNVT_m&EuwC)uU#T*L2}Fg_@A0k17Ri*+Uma1Bw@jOvU@ zv|*^m@X)MSQp9JCK8+OXt!w!>&5#ZGPOzS7$5yA5RyG7S zL^f>tgDSg_X|u?OIM*fl5bL*2dGz|sGV8Pr(JvEmp6r*X3VN+ zT0Ljx+-dRUa8~=T^>MIz4w)<5Pp;NB(h>>X+8pN4i0XxBAb&VI za7EhF5Gj1o7-Gf{nXaSN&i72mRnpG#3|q))c3vlLcKAAZ_&YzA1qm|(W-*Unu!tF~ z;W!IS+2*ib5CqAeWv7Jrv)%YYkkKvRFASj{N6?FIn7D=o>|&uGZ3jTg%#%yD!fMUN zaRDMrQBfcy+b-p&X3-8l%N{rW;29^ai+;n;_yHF%iOCJ=>fCjd>-thkDL?D&5PTg!@aiNBxrpG`d;k zd{nTW5N)TK|J_D}{@X?gEp*y^sWvoop@arGWIX9T3*Z- zsZ8KXlQhZcNfR}KTgFM+2lM!2wCc_jNg0qtB9nl}#kUe>t=C-U)h_ZEoyS<(IP621 z<2$HNl4X8!y*aysuFJtH$6T^%y@ua$1wY{u&ZLcFK85*BC*5G@2s_w~PAVA+)&#

TDEPoR@op=>U{R5 zzG!^q1bG@xzbK@>cwC$jo2BtJu5NB4ns^Suus53@&GcqjP(71-Rm)-QA|Y_%C%C-!VJ}|C%Xk61 z@f;GC=vZEt*bRTC;>DDZsp#B$6^(mUhMDXYYyTJDm%{5Qyq?1ADZCDr>=$bdenFdn zah%0z9K`#07cZd=Z=(;dpaUH&Z%XWi*YCx&;Mcj+H0~6Djb9dvp3&ox_@=7zimHv9 zVsT@mQCZo2v%$`X#D{|qC%f4oOLs`bGbecFxU!}_Y_3Bt&_gOFEd8zCQs6xQD}0Y{ Rc^zM4f}i^U=0v}I*FSKrbmjm6 diff --git a/osinaweb/osinacore/__pycache__/models.cpython-311.pyc b/osinaweb/osinacore/__pycache__/models.cpython-311.pyc index 89a0e19bf3f01d8c21498ed1b6a833ad8bd997d8..a2fd1662a986cb70b429e00f6475b4b0949a1271 100644 GIT binary patch delta 643 zcmaDmneo~bM!w~|yj%=G(BQH#RbP7}-%pdt@f@6tk0uM6PON8QNM+7q14)BGDi4sy z0bw&Rq%fy2uVG!r!oaW^h#??~H-#;V53CC=mcpLO2UN+ij2WmBh@mR^!Kwsc{1nbL zT+0}NDu5WOLXe3SWWCVj4=Q4lCo2mwvQJ*Btf}d-!xmt#CUCUhvjNU#s`~Ctd$uVpH7aj@nw{q>}Vu8dB2US;8vi@Tiivdg{7HA zsky0nC6gc9l(41)z4&ADI|GHuHMXV-H-wZYs9h0KzMx`uK<$X$h4APL$>|q_GA;^b zToKA>@ZP-9Hj0Vy)?^-sZCp1&HiL*alg~I@V!XL|zN0N8!N$D+DFhL$K-a>J3uSyUS-|x$H`pOy8(&Pm=PJwie)At!NoE~oM&l0*m_&zJ RkIhGr_!oqv-(*M6H2}tOsb&BG delta 521 zcmcaMh4JlVM!w~|yj%=GAnM^a2d_PSl^J#H1ZkQ}+I#DWxHHwFcA(c6c1*8N7 zQrJ>?Qkd7UPyVhXCzZmnhI1Js1H)<{hJYx3uyTRPA5_G`q6E?Pu3h zMo9%TX!74;2}vx@e)$WizK9!0gcMEKEMUHliSg>@{g$g48Sih-wpM0jd@{M;#+Olg zvZImYUx% z#v79#IG>n&!Ksw-(d0mFVeSVYbs*w5!{om%sgqASi!nX`s=3YhaPl4(8TQ9ODZip8 zAhlf2L25w+%j7>UHH^< S7lfn_*&~Vuv3*_I$%6*acAvgc6Vg<)YCI|X5D+gNx)L=IrGQn z=;z$;z4v<`-{1FjzdX38`1*!I`?IL1NE!YP%sJ#RAL`WlQbGIM2>H(iNFFs7syfHO z>obk=7DbR81+72P$-|nVzdji}X$Dbj7Fj+VlB}k%qjH(-ZTuhjwJ6 zj|wQl|3OiBV_2=MMY&Yg65cFtRx~S{!<)lul?TKYmD?23lF6E7wc*fy$^=E}If4jH z>GmkUy1v@&aJj1-O?69Pe|nk_3Fp(zL*k>$mojDLGi%W#f8I^{<*pvaaQl}h{A+(m?)5D)L{zJKe+-!u-yx4f%l2tCZ zv%$e?9q#J7dKcS-vTw*;t_(^}#6YU;f0SEEzm4=E$8Jz=!=_A-D(qo`ayyB3pePRN zM@NbOg3So&#nDBA0B~l^LUlXIfnYBrXJ&}6B59JI&Pk!gX`(^H_kRFoFwt`o!# zWG{l7dACBk=kgQ8e?{gpsXsqn5RW72l7xvVg0KTp3!KUm$YAecU~#ef>e||>S{#BO zS20JElet+Z3O7PmL6>kC+6(_dJcaGO@SxZNUly(lc#vROQL6Yp3JySf(e4n_R-6*` z0WuHcv|{fe0h4oMps{#yNWoid6VD*O1I-;$?m~(I9Gx^t85k}a=@=aa)a0ydbXPSv zYpd(oIaE6Vu_ebsRxXvKM4d=1en2T|td6DDtyN1P3S=emTt+ zQv7O~UA%^}KXJF?%UeQ%_sTOwFABbf+vUM&A;H?|$>Mcn-sjqB3z$ka&>Dqa;tT6po&YfmZULKhsGm1=20 z21_J}LhvgZooiSDH7~B_;?IOxQ1LQXhJ-szPl!F z{sU6ivSgB52_75wGLrJ`m1nS;nmmnmqM{LO`al|YprK}@ZMZkm;>qw>@~8;}?eIZO zp%{*_y(0ak=G!n#>)z6pGkF3L6mcYhhCoZ8BhV8V2-FBR)vyHo;NXz;qvMXH6QT+6TV$-SB@l6I$ZF?nWJ3Q zs~uILBaLOFBoR+qmsz^&i4`Q*+FWJgL*1#PlEy!YsAPf^`0a~H9*V)QtX|@-TkY^G zaSL{^MqE>T-H#_V9%K$t69~qUzPQTeU@n_!*oS5rq%n$sFS8esv6)i1n&r--Z0UFU49t7YSGoKnSn)F_kw z=&218K7-ktqGR~JwSz1?LH)wqb$BJ{f_0nH`G@zbYVm5rnYZEOrj%m7SDYk$zS49= z@heSuV11E2zkbOo#vFKl4R$8utN?VI^CC+yggW{*_u=Hu47hf*Q0m-#M3_Qz@R$(T z9J)yTM+mm?;e$GtL_@y$xF|wv`_-*u#WJ+NMY_7RNtn#1^^-Ix+~9&o8hqx540^VW z7t7JWt8jH|wsdFP8sQmkl=8931Htm#xP#{&>0sd_9E1fUCK2zS4${jhku%WM+cY*? z_}DyMr-6pe5t4QL)bAy;_>sOUAK`0obPnxEihK$^Tp$lC(1TsNx1;ELmX|-$GM|)> z8+W#If;by3e=5DbGeRCX3;}-GZV8e8_JU}>k?;x5cj{Mos9@V|4JlRZ&K4J-mH(7p z+-+4Xn26+k%`;B6qONgi((J~9q+?->&)2|gLNTM6>yLCTbFSeRCKr2vjAKSN%nd(m z3aP_wxVzV!U4*1xOVhe)O~AghF)*pPeLlYvDZWyIcF5nCsOLusKNaSap<;MpU!{5p zk_w!IE~Nki`)^6dU#XXSC~)>H!9Nj%5zyVsX83`)$Pv$L5vfyvY%u{J@<&BQGoMjV zc*3L;T}A51hz%ZIfiQ{rJi$0f&WM4J_9u%DY+9v1?q8x96&T~B%%myKhNgOl+ff^c z`8n!AW62g0RY{vH?07v!U5CvqN;sSnwnNmL=cIjatdM(_k{-`|8BzbAne#8f7k;pg z!pxHcV-YyEhi6WCRKuae`Qi$Utz5cwSg-K#G35bglAH(pJW}7kaRep~De(`)zYX7> z`L@pI3Evj0Nrite9^6AaA}gjb8Jf0}1R2yH9Us|<>}nd#{|@ejAInPxc;i@{oQc6& zw+4z&YvDrL7}%AhgMLE{9Bk7Y#Af+&6}sa;tZI!|)m9~hH_Mju!kO5$iWPX;%4E9) zb`$w(SUGnDRISs)ouBK3K&#{hgF@vN;Q5bZ!kSgbm0*4cPtBm}-AV)2vFpK{7I|Db ztc+GStDEIjbb|69H(&C>2xxuIAZV~Ej}>%qp*uQRb39^Ll^unF>qGqx8c0isg7&$l zU`W?i==Ertb_o6(H2pWppwRL>ql3n^-!qPd`*KsLXVAFzA>)5(G3ew~^cnbXa8yRW zNPM~`ewV+P^J512@`JI^S)XPY7vkV3>(HkeR=$(r(H~H@=-jzOGJGm9H0zGyZcBT5 z;5S!hGtOd7*a#G1{9enCl#Rrr8*-pZn1+;1z&l87RaIRhztH$X~t*<2Y!Ms=%qh&8IS2bj~*f+#c(TMWq6l}uP8Y`GPw8?AH@OoO8&*BnlmEF-M9tl5L(XB1< zYD;|DlGbua7@wl*i%HnyY@K}zTI28$WPF6ZFFM{Aoz^<*mL}GxN$k~(?9q($YSMg~ zv|deCk0z^Ql~j0#%vv6MW_gZQ5JLkw>07S=ntY^BT*1 z#x;>4Q{S>?_^jEzR%2d|HShF_Zfl;` zTH&)+bgSYZ{#lC$LkjsANoCu|Ct-Hq|Y?)u$iX ztGD;)?I%Zd>+N2Bp-*4fCibaxK2?0LDyc`6bTH1Vvinr_Zj~L)SW^a5p6IpY`YgE= zY+pj^fknLunLW;g%#M0*LZL6AkaD*4p?*=Xb##w)bVr5Pn(wpb^RYln5&E5)mo(e7 z+qF0fy4dbG`^h!F{2AT43a_rhr^AdY1~f85T%RtwFD|3cXzhzl>(iPBbdmHhhJX)a zG0+)j!zY?tc&)=4dJH(%ksz+aIq)kO(_w-89Y*+lYP4_`CeK_vxDB7|G(giBF3^9mgrk&}T3YhziOY0kc-gG{#*S_~}oFd)1{rb!m54DYK!AB{<=w zBgaOBm8_?5`MMq|Qh4RTOQ1B2E3l-~iQ@ZK8}-Jv6`J@P)4CZ1>%OSX_U z-=KJ2ym;qzJFnn***#Rj^OSfQzYV+D6j&60e#%)hw8=fTJ1^LH&!MetE4k*01n(@I z!H4Eq5^bc&`OCp3c>ldz^%iVL;EZwY6=1eKMvD4Hzc}aR@5VoD{P@u2ke$KOH1J)h zaP`Zbjea#1s=@bOOlSubpIz)3M?I3s^3W#!!=Go!2hWt(#r$jWH{pkqPL zra<_99V$$#>cISAiE<|jazv@}!0l1JV?m+{~rL!0Ik;S zICIf}k}DU}#8ByJSlLH#P1n>F!b zya1c*Hhwg}qPoWA4`1SJsHtmouoLjtPi(?LNWU^xI0VmJNx>)VbywzyCs6;GbnVJ? zF*c66(qZhvr7lZKVj1-9&5(6HOYpqpUJn6Etk6zchP!M|+abAlTukBhxWz2AYQ zzEbfFk{?UQeb32-LJ05O;_;9nTK|kz45L2@Fnac92MAs#I7sjo!BK(^0(z%s#|b(K zP7%CMKriX+48b{q^8~*p_=w;V0lhY}D+JeM=$?6ryiV{bK`#Nl>av>ze;}Y|QzlRv z^sdLAAc!Z(CZGorMo$#1jDTu?MpZeZ!kNt`pc0i);m4?uVpI_^sw<{2y3RAYJ1{yt z_}F={%@0Q3ozWL!XW(j|#dH}-{D(zlgiJP|5CowQgd4G- zyP=fgZtRqs%|eARAS3*K|#25GJFT Oa8S%yaZ-POqVRuR(epq6 delta 5318 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 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/views.py b/osinaweb/osinacore/views.py index 395e6686..ae2ca033 100644 --- a/osinaweb/osinacore/views.py +++ b/osinaweb/osinacore/views.py @@ -220,8 +220,12 @@ def staff_positions(request): def detailed_project(request, project_id): project = get_object_or_404(Project, project_id=project_id) epics = Epic.objects.filter(project=project) + latest_epic = Epic.objects.filter(project=project).last() - selected_epic_id = request.GET.get('epic_id') # Get the selected epic_id from the query parameters + # if latest_epic: + # epics = epics.exclude(pk=latest_epic.pk) + + selected_epic_id = request.GET.get('epic_id') if selected_epic_id: selected_epic = get_object_or_404(Epic, id=selected_epic_id) @@ -233,8 +237,9 @@ def detailed_project(request, project_id): context = { 'project': project, 'epics': epics, - 'selected_epic': selected_epic, # Pass the selected epic to the template - 'related_tasks': related_tasks, # Pass the related tasks to the template + 'selected_epic': selected_epic, + 'related_tasks': related_tasks, + 'latest_epic': latest_epic } return render(request, 'details_pages/project-details.html', context) diff --git a/osinaweb/osinaweb/__pycache__/urls.cpython-311.pyc b/osinaweb/osinaweb/__pycache__/urls.cpython-311.pyc index 1740af221c3085e774874a1031eff3fb64248de2..1fad44b9d8c711c7fce6de715c85ab9dfe1e5fd8 100644 GIT binary patch delta 155 zcmaD7+7iaQoR^o20SFpg7N(YLEYU3}%FjwoF44CsE-A8ta^f>n>?SLV zt4fH2m6RkFXG7#cERf{pU~yv(#_-MU@;5nzFK}wEFukH}d%*VsOVCA@permvlZ!O; rr7v(QEpT1pzeDQ+i|a)e*DEZpAM%;982On#6imLWA+`Cc20s%3&G9w& delta 123 zcmZn(dlJgKoR^o20SE-1&Pfg1$jd3t%bS{#S)yA|l%JKFTr$~2T$P&(EK-tKoUOmP zP~4b + + +

+
+
+
+

User Stories

+
-
-

Requirements:

-
-
    - {% for requirement in project.projectrequirement_set.all %} -
  • {{requirement.content}}
  • - {% endfor %} -
+ +
+ + + + + + + + + + + + + + {% for requirement in project.projectrequirement_set.all %} + + + + + + + + + {% endfor %} + +
+ Story + + Related Task + + Actions +
+

{{requirement.content}}

+
+ Cars and classics inner pages + +
+ + + +
+ +
+
+ +
+ +
+
+
-
-

Related Files:

-
-
- -
-
-

File Name

-
-
-

File

-
-
-

Date Entered

-
+
+
+
+
+

Related files

- -
- - {% for file in project.projectfile_set.all %} -
-
-

{{file.name}}

-
-
-

{{file.file}}

-
-
-

{{file.date}}

-
-
- {%endfor%} -
-
- -
+
+ + + + + + + + + + + + + + {% for file in project.projectfile_set.all %} + + + + + + + + {% endfor %} + +
+ File Name + + File + + Date Entered +
+

{{file.name}}

+
+ {{file.file}} + + {{file.date}} +
-
-

Credentials:

-
-
- -
-
-

Email or Username

-
-
-

Password

-
-
-

Used for

-
+
+
+
+
+

Credentials

- -
- + +
+ + + + + + + + + + + + + {% for credential in project.projectcredential_set.all %} -
-
-

{{credential.emailorusername}}

-
-
-

{{credential.password}}

-
-
-

{{credential.usedfor}}

-
-
+ + + + + + + {% endfor %} - - -
- -
- - + +
+ Email or Username + + Password + + Used For +
+

{{credential.emailorusername}}

+
+ {{credential.password}} + + {{credential.usedfor}} +
@@ -332,25 +416,21 @@ {% endfor %}
-
+
@@ -370,7 +446,7 @@ -
+