From 5d4726314bef54ab4ee6942ae2290af8d5891d7a Mon Sep 17 00:00:00 2001 From: emile Date: Thu, 18 Apr 2024 16:28:08 +0300 Subject: [PATCH] New --- .DS_Store | Bin 8196 -> 8196 bytes .../__pycache__/models.cpython-310.pyc | Bin 5790 -> 5836 bytes .../migrations/0037_recurringcycle_item.py | 19 +++ .../0037_recurringcycle_item.cpython-310.pyc | Bin 0 -> 762 bytes osinaweb/billing/models.py | 15 ++- osinaweb/db.sqlite3 | Bin 1048576 -> 1048576 bytes .../__pycache__/urls.cpython-310.pyc | Bin 3651 -> 3569 bytes .../__pycache__/views.cpython-310.pyc | Bin 13246 -> 12797 bytes .../add/__pycache__/urls.cpython-310.pyc | Bin 1774 -> 1680 bytes .../add/__pycache__/views.cpython-310.pyc | Bin 11903 -> 10793 bytes osinaweb/osinacore/add/urls.py | 3 +- osinaweb/osinacore/add/views.py | 109 +++++----------- .../edit/__pycache__/views.cpython-310.pyc | Bin 10617 -> 10508 bytes osinaweb/osinacore/edit/views.py | 56 ++++----- .../templates/add_templates/add-business.html | 46 +++---- .../add_templates/add-note-modal.html | 2 +- .../add_templates/add-project-note-modal.html | 116 ------------------ .../templates/add_templates/add-staff.html | 18 +-- .../templates/add_templates/add-task.html | 2 + .../details_templates/project-details.html | 2 +- .../edit_templates/edit-business.html | 40 +++--- .../edit_templates/edit-customer.html | 36 +----- .../edit_templates/edit-project-type.html | 2 +- .../templates/edit_templates/edit-staff.html | 26 ++-- .../templates/listing_pages/staffs.html | 2 +- osinaweb/osinacore/urls.py | 2 +- osinaweb/osinacore/views.py | 15 --- osinaweb/static/images/IMG_2102.PNG | Bin 0 -> 757108 bytes osinaweb/static/images/IMG_2104.PNG | Bin 0 -> 285828 bytes osinaweb/static/images/IMG_2105.PNG | Bin 0 -> 1077348 bytes osinaweb/static/images/IMG_2105_dBbVGEk.PNG | Bin 0 -> 1077348 bytes osinaweb/static/images/IMG_2105_fO9iOmK.PNG | Bin 0 -> 1077348 bytes osinaweb/static/js/emoji-picker.js | 2 +- 33 files changed, 148 insertions(+), 365 deletions(-) create mode 100644 osinaweb/billing/migrations/0037_recurringcycle_item.py create mode 100644 osinaweb/billing/migrations/__pycache__/0037_recurringcycle_item.cpython-310.pyc delete mode 100644 osinaweb/osinacore/templates/add_templates/add-project-note-modal.html create mode 100644 osinaweb/static/images/IMG_2102.PNG create mode 100644 osinaweb/static/images/IMG_2104.PNG create mode 100644 osinaweb/static/images/IMG_2105.PNG create mode 100644 osinaweb/static/images/IMG_2105_dBbVGEk.PNG create mode 100644 osinaweb/static/images/IMG_2105_fO9iOmK.PNG diff --git a/.DS_Store b/.DS_Store index b10de2d52a764a74a4f95c7e20b3d1b0308b8e8c..18c379cf38d47f617bb2208f3f214475bac05e0f 100644 GIT binary patch delta 21 ccmZp1XmQx!A;@85WTK;BWMaHIKyV8m07PH~?EnA( delta 21 ccmZp1XmQx!A;@89Xs)ARWM;5AKyV8m07PU3?EnA( diff --git a/osinaweb/billing/__pycache__/models.cpython-310.pyc b/osinaweb/billing/__pycache__/models.cpython-310.pyc index fcdb79f405a2b4f6fb66efb9a685e2875e6f5acb..93eb97ee5016a9a27623b2a896fca62c70a38b78 100644 GIT binary patch delta 2300 zcmai0&u<$=6!zHb_1du=$8p^JY7>V>!lVhL>2H!WZ9-8=o3ynP2@6;@-buSpcms;W6~D>1dn~GeHE!C&6ue?jMP$Qyb>v^LG~7}w*V~X_WVZO=GE=!PA1}UcS-1M zq#tPSw&-MF6mh@!n;myLpr6JE2nGqF1S13#Jsd{}6wBw0Abr*G`E3qYEN+`HPNRor zK8B;TlSlMxkv!8V+cC_xAihr~#a#T+)=3;fz0@m)Wpfjz!ftZjaO&J9%c;}~Grbpw1|4!ZR&R zrA??8&{YbBOARJRmX6Ujs^=Si%Y%99XiadN9Q+NKBVSrO$mn|AHaw5W*7de5mdHiM zK=B?EpCt#_*vneD-Ze5@7r&=Z7i7@;*_#(Esu=1ydZCLRX&#od ztmWKuvB>F8tFeZB9d^len$suxI{#spMQ`q?dY25Zi&t}f9Tq(<5WFVzTL-8YPl26z1G zMw3tIy61zgFO?Gq)<~J<2Q*b?uy?G(Q%LK6YpNE`Sw`FK%sw2l1_^T=>=Z58ipN;LH85x zAmB>{54_$qEHf#xUJK|YS;pBk| zlJ`S|53zZq5($_J-((MkT70qjE*gXQbr=6dg!My~2uZlCRq}>OHfdM6SX=pfUabOc hy5X8Fo6j7%Q6!zHbpLP5fCvid(H>n#zt&%k9570vYl8_SUe_RO+XxVtD&Qg2Vyxjzx zB2v+us49WxUWzzWIU^y&2@Z%02PAGIQHf(E4wX331MuE#i=8U5G@s|aeKYgk_ujnu zW#Z06+D)gEA^a`gAG_M~Mf&fT!zi4>;f)~hP?cGsYM4jvYF~w_QHxpOjZigaMHWM4 zO=d3h+6sW})MwkZ1{Xi{?H0GRQfiY)&Et)$n;}Sudbr7w;%9A~#l^$$_!*!RWNN|j zd7Z<&%^Ma(Q3d1&B({Q1qJ}_vFQz65mSUiZ-}NDpWMB67qOu&8@kI`+c8x<`e9y{9 z`$@}Wbg5xF*UAwnpbSF@Qgi@rOGAM|V@X2+cle&CSZjgV&IR2sl zVr(t7;Pd9BVR$|m#`*F9q-ar^AcG*a%3Bv-4WiX&m(3tlsrl^|hfy-nEBqs05g>ak z?$y9<`L^rGq_`0Ackf6?4%cSIACV%a(U(;|s zQm)szZ}_fnHqfE)ci{+Ci33s5tJ*N;Z8l4!>VKh#V+x6 za%TD%t)4)TQE*or3r*srIzh0NJ$MOqC%-B5++zjeOlm70^6@5Fs%=KaZ>d8g3nW(v z$nSC@*zXNeoE4??k$&ayR_5l!we<1zt;}^XMu7#4y-PDHSaqV*=S-gmSN4xomCgRhvBR=myo2L?*DtVW=x#P{`1;toIYR(kJx?) z{>Rs%6Vrze9w}$QCc}9InegoQ>r;;lkZ3*(4sN%d4A;Vj$y2kjdC$aIEiYe z)2xlq!twZ3NYSg%#>^MRK%c{g#YW#`kLph<@09X>@rjle_xr~7DhhVW@yE1#kJ!^+ z+^)i9_MGXoD=uLdv$Ug3&GDMuG#i1QZYk6es=9?`Z?sJ8QL3Ym>#E#gFU`ggWE^{8 zlRJKQz^cMK5no5URq<>8AiIvl7e#bnri=VoK)z@V6xMeN?Is;JhOm~!r<>z@(|NyA zPrYBkeOC3fLCbCskPFp#%WNxGRd5*B!J|A8l0l$Lb-r_Vg%z|H-LuSmzm0X#;m9=hcSk(elb6U8&+b2SB zh|(OO0+LZdGA8JXW*+z@RumqD zKo=4k!;k|T&4oB|HH_zAd{P^bEBzWaHWX#9SG8qgX`}u>kX$=DnlFy#$1iPMuVG90 z4`Lo-cCY??O+PeXniMLj0Faptq{q;FZ0mKp$d#-fzsc7QylZ4z)KywHQs=3L^WGSm z4$gB}rdwvxo99iD=4bqWBDo_jS#ONnr4dSVA5}z{=U@5(qm1rQ|8I2J-_Jrj9@->g t+0!r#zkBUWh6PHlrZx}Uc&_%%po6uGJ{vtB2!DawO_~tZJr>a&?;mmg+UEcO literal 0 HcmV?d00001 diff --git a/osinaweb/billing/models.py b/osinaweb/billing/models.py index 7b08a4ee..591d21b0 100644 --- a/osinaweb/billing/models.py +++ b/osinaweb/billing/models.py @@ -4,14 +4,6 @@ import requests # Create your models here. - -class RecurringCycle(models.Model): - months = models.IntegerField() - def __str__(self): - return f"{self.months} months" - - - class Item(models.Model): TYPE = ( ('Product', 'Product'), @@ -28,6 +20,13 @@ class Item(models.Model): return self.title +class RecurringCycle(models.Model): + item = models.ForeignKey(Item, on_delete=models.CASCADE, null=True) + months = models.IntegerField() + def __str__(self): + return f"{self.months} months" + + class Order(models.Model): STATUS = ( ('Completed', 'Completed'), diff --git a/osinaweb/db.sqlite3 b/osinaweb/db.sqlite3 index 57fa68d352a5e9b1f5d60b76184018fb3b639a88..f5fe38cd236f3c160dc57db237f3f3c58d0501a1 100644 GIT binary patch delta 2744 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 F{Vxl@a6te7 diff --git a/osinaweb/osinacore/__pycache__/urls.cpython-310.pyc b/osinaweb/osinacore/__pycache__/urls.cpython-310.pyc index f1a6a3e1d1237bade8a655afc10839b48fdca38d..55f5b23db142da5bfe7dbddfa3a060e385976071 100644 GIT binary patch delta 113 zcmX>s^HG{NpO=@50SG#|6w^v4^2#!<*{D60NhV4sRVS4_l`~5hi1ku}dzs7`qI6P1 zf*CYJH@{(8$1bADc#AhBKe;qFHLoPTC_lf%Pg8&Mb1qJ%$zOTY*_41r7AZ|u;w@%e OHhCKFQWlo;5*7dh)F9IU delta 193 zcmew;eOQJ!pO=@50SJQcDWqMQ$ScdZXQTF1CY@BKl;Bj>ES;2)6s}(8iHuRYsk*7` zshnAQK&+n<+RJ3l5T%#09X&P*v$HmFSR3tfh h36B<=GSGQN%9F3~6f>@x?7_Q~gXuh<3CkG?3jpzvJ-q+` diff --git a/osinaweb/osinacore/__pycache__/views.cpython-310.pyc b/osinaweb/osinacore/__pycache__/views.cpython-310.pyc index 86c1802beb280aa85ad4187a129259fc729e23df..976619c872c5ad502f064d4df926015208070e67 100644 GIT binary patch delta 222 zcmdm&{x_K~pO=@50SKzO6w?;FOyrYcblIrw%*2)w9L%5@vblljtTLnKWIweI#*>pb z3W!gBr)I`@YBHmg%w$LP1B~Z3Gih95WIR9lx~4kgg~|Ull^8EhR?;eFys>$j)>1~s zo11NP)EODiOis~l5WfSo<`!3SeqLT`a!F=>UQs$wpy=l0-@3MpwzPE6^_Zw`U&ihfQtMy9X5*@9$}O^1=4X2MBD%o4?zS-L6PEQMS0=LJjQ&C Nb0$k0&t>9c1OUKKMu7kT delta 670 zcmZXRO=uHA6vy|?e&oX>Xe?SVHfahC8%?xey$Na$o@~XaNRWngXA?KHiOz2PC>tWw zg9tg4ISc8*gGb3-6g-HbR7DS6_0po?sRzNE&^KEf4-U+4_r3r7&wIP`$9!2!G~@B8 zgzNKkGxfHi)-@bK_AZ0SeM zW}{)5uH9^~8YY;}w+mZGl>a$Tvbp6n@zkv~E+wwP?m^nI?+W z*22PrqAmv}U$qvSbvy7brG^%R(*F$mm?FAV5uM#$;k|lxL?|hNqXOR%zTy~nEtU}R zDTE$kVT1C2*Q$#ZfUFbEwV{ z{PRgn$A|_apnyig5QC%~1NIZsv--LI{E0V^9$>)M1vUgW1;l*@RcxHEqz>}AsRZ=+ M{M1t|3M7(%9r^pWV*mgE diff --git a/osinaweb/osinacore/add/__pycache__/urls.cpython-310.pyc b/osinaweb/osinacore/add/__pycache__/urls.cpython-310.pyc index 518051bd39ccd2b320d0cf1f97af91525530c1e6..450b6dfc5111025ab70d83a02b2b6f12f3aa4076 100644 GIT binary patch delta 261 zcmaFIJAqd_pO=@50SL?l71LI*F)%y^agc!&kmCTv#UT^5*YWeFNTsm#GN&@8NT)Jq z@lJf9S86Hd{9@-%@wkrXW`PaDV+P0@k!bb&mv z6g?iLJW4XfIGBM+(`0fBW3D1!QfYB!UTSf1ZhlH)j((It zVoC~%(Buz{5tHkfOecFXnQq?1bexe*Wy0I$Yg!TO5<6`}|7=O=AGJ$qVRUpw39R!9p6mCLy)?1I zeb1%so^e?Mv}`RZw+sZ`7Bd87LK;$}?aRc6P1=`9^dr*KhF0wh`?4}=(j?gE&bfA) zmTk7~&-b2t?m6e4f7iE9u1<%mp^#s~&(ZF|nU5#0hSM;8b<6K|YY8p6EESS^MBA?Q zXuZp@1cel?(pqL&!g&wQ`?P*B@5T8JZ9p4b2A+izik6y^@;ldFhZo$C=bM!8DBDp3 z+rgKVKf_nJ<{gHe{D7|d)Gga>mJ)vS2VTmwS03h=eIqY?=q|e zni6}=R@$e$Z%BgEtEm&xe{-4#QLSf1(fmzdPild>T9LJ2U9}n{GH82jxy=x2f)=n< zEqvKi_n~oU)Jmu+*}h^JP1{&?*uIrWQv#`dt^@Dpx1yG0`?bhrxgKcKqp0x5s4yrL z2CYui7qfl1+lA(IjyK66WLXSnsvWcgTGwR-BrC4PmtacLx@|C^9;DYcFERl_WrR%vF&@!_n+?1TlS zxL7p}%cxe^n2=;tES*&xkFiji)fuI4USSdZVFdytgwX#q{Wie~UXR@0NI0P>5`TPM z)?LX+TwMe~f;ho$1jozt#raZMXZO=enK9;3v7_i`4bw8&9^%_ekS7==$Pl;*QUv=6 z9wB(xMJOZW!>o_yCkaGJZ5$_06{1yU%o>%_e6eQYJxdF^<1JTfbZK!b{!}y>I6|Cy?~UGCdK7dy4~d9(@vQJtbr$9OIFaR0`-Oor(Mn+awKzQ;d~J+4r- zpYP-QlPNyc)tPMd0i-#B9wC1LP>jeHhtWZNEs8EQ0m}kjRWT zgwK3Llo9grR%H;?2{Zkvn!)r1y<*X$AndFW>+=LJ5QwbUxXJ~h-FpGYO9s<_=lNvI}yIf_+WsmeGBjsKhyUdyvYC6mxU{Qu)o{OrbzY`zPJBA zxWrHQk0)Lf1cDGr_AFMhEwzLEhyDmG@;~-(hHEbmeDoMaM+C$1ScWyPw<<#zDsCkr zcE{(~%U+=a8_~JT}CG-_@TjQ<9}u3MPd=Xh~7IU-0Y&6aC2b8%`LZX==+i? z;j|#rH4H@AD%RLMJ3wNxcVLKr>UaB9>OSP@OZ?{G1iZ?hNMv#skV%v3vJEU?Nfy|k z0lq#mzBWXa=4A2Kj`M4Y@5b-=sNkzqExl;zXRQMFC9?tHqILy-uxUgMw)!jM)#Ra} zjiRF{u-6F0OW?5+AX^w3~nAsrF|}3P=C9=c5!nN zpvXVTo>G2B;(p4H4-K_b`B5^xpRBtJ0x0EYc)E(?=< zb$DF<8}OUMNqC!oHmoVc#oprD$Pst~d1Cy75ij!neq>MYzsVr7+K>HL^yAyAM|Jsu zy@N_Jv7h5sUOCpT=a!tKxx?^{wyt00c0-8Y%BA34?#r`~P(=>Fe_xaQV*Ww+s?hkC ze6-cLX^-s`Ev0j`3kLbfXa-jQuddo?2`&9-bQtB_%Edio*?VirEiss;s&+gx1~V=8 zOOh&*E`g(LhITYE!m zBtt%SEDy)>S$<>dZy!I16h{B-*eL>P+3Y;QGXxESmk6#Ayh?DL;7x+J3Em-imtd9P zJ%Tm<_ie*)k|)PD?ca${;zWD&_(Ao`J`Bn?k&?tQjPpMHr4h!_fg{!)kudxRfE>Oo delta 4031 zcma)9U2qfE72dnMTCG;HEXx+QWy!y?VnJ;47Xt|ph=CAVASs46E{P(vYa(I&ev0I13m4*gQfWKdS+CA~X?hD}rDPCCh%Ml}@x9V-P!WlB& z2E1L5bKb6Z=!scjJPu>)^-jHOmViVD^t$z)S%Ia=H#(uST3^G(Q^42i>p1V%lLv&% z1B(vXb%%d4TQnr^z}tnx(;db4QJi7Xk*S|_UpOn2B#tzF&*-`ETO82eNkpBaNro&YTUg@FX2 zp%L@X0JcyRbaG6jC17M;)Wro-BOaH4iyoJOOCI+Dmp!fk_t`$(4?0%rYRy*`^#F{Z zwi!{^;Irb127&v5OJF7hT=m8qfCntu^4S4BJSWyPOR`sGZb8>&%i|d6QTK_9e`$HEF1;DKNSE!lcE5P z=)(8J3*vLQQgT(Kt3kvycL-QUbi|?66erWvZRiK)XqzVsrj@Uhs#~u@-$X-kVLF}D z^(=(P3=hU^siNm5hc-`E^0`TKE0Co*8RE!hZo-&O;RMSlRVQgx| ztWeKZs#c*=HtYQn^)~M9JB}NF2_~AG0W>j0mVPP=1p5Y+zpFt_3X360ljt~z+?6Z1 zPZb)^l^ulrQSKn$W&e@~W^4(g@GZfX-G9F?VhYq0U8(skwMdEqOo%x$uPuOUY{irI zza?-?6dJ+FPa*Kj`e|fYOeK1lood*$e}&U<0F^$zr1OrO z7NzO}b`y?02;e9ag-NjCD8>oM29rL7UpBK)IJtT&QXbk8G9J4jH+FM4aQ9y6AbT?0 z%}$3~mBaXT8=DU&_x}{Ai4`LvY9zwLu7$|(i;5AVlIZ7(EE17uMEOtH7lx4#1g9e6 zi2D%Lkd=!=}vYb z-ptBPZEbE1f-xufIIR?oyfp^JgKl9zXc`Vai{p}MShUD~-!$|PMKvY@YT=1Ht}WFo zuUw4>O1Ux~AoTevPzf!t?a^4oT?Y262qiWVO_ObGF4{%@zz2 zb6NII^San^q;;ovf_>K9)njuZ1e`eTgYrpFIx02HD%=PL9KdkPfVhINCtFhFG%F^P zgtAIU8x-^#$!B7xa3-d<6DU_K18%(&mcvq=sR&=By9D?=o$;Kev=5@--4`Lh^p3L^ zJ4XkW*VBNiUqIkttDzAY=hAIJ+4HGbqUt(5%T4pEbq(Z-iPw6FCAty;ksrBC&$8}V zf?aMI1BZRq(%ZNf#n7rOK|q{?uSxO}+ZtP=ybOc%Td?UiHW!OD9=t6`K=75tYq9fW z2W}ejk?#<*jxJ{|4CJi^Gxqp|>@3yDm zj$A;Uc!KU;>rUcz{P1m7OAO51E2kKK<~3VI#vLmm zWvA#Q-G*u~vR&v819eoa(CFKb+1liW`>(**T}2mHp+MUY&BT%n1_#qC{LLh@{(`-t)ms{J7g^z=h?4)>%)S!4%$ zM##JD^Zo?;QO|C56eO+^I?Ddhvx8V{OK*ydvLn4C9euD+6Ssoa(1vnLmAQrMY_V5Y za3a0Nl6|`pN08R-P;z%T%4Yf=>{xpbT|Tbs1}r4m{9{m%QSN+{Ut@A=C)w+*r;^&( z@yJ~|B)%R=l{JyR$39BY2EHD=Wa0l>qilQsqhy4g>rc65636K}_VfPx$RYMgf0Eq% zQoBRx9C+aMbh@K>PmAc|_ZNSgZYGI5XmxxO1!`LKXJ~=@Ac$=1#eo&Qe5?<<=trlC zKQ0R8qgiU;)232(*v5gC=~HMY3KAhvA^0v(M0f#^s1zdfLm1A8`}Sqh?A3vfp4pDd z#t<+W=mf$v!fAxF2/', views.add_user_story_modal, name='adduserstorymodal'), - path('projectnote//', views.add_project_note_modal, name='addprojectnotemodal'), path('file/', views.add_file_modal, name='addfilemodal'), path('credential/', views.add_credential_modal, name='addcredentialmodal'), + path('projectnote//', views.add_note_modal, name='addprojectnotemodal'), path('task/', views.add_task, name='addtask'), path('task//', views.add_task, name='addprojecttask'), path('task///', views.add_task, name='adduserstorytask'), diff --git a/osinaweb/osinacore/add/views.py b/osinaweb/osinacore/add/views.py index e8e31fd0..554278de 100644 --- a/osinaweb/osinacore/add/views.py +++ b/osinaweb/osinacore/add/views.py @@ -129,52 +129,6 @@ def add_business(request): - - -@staff_login_required -def add_business_modal(request): - if request.method == 'POST': - name = request.POST.get('name') - email = request.POST.get('email') - financial_number = request.POST.get('financial_number') - phone_number = request.POST.get('phone_number') - vat = request.POST.get('vat') - if vat == 'true': - vat = True - else: - vat = False - commercial_registration = request.POST.get('commercial_registration') - website = request.POST.get('website') - logo = request.FILES.get('logo') - - business_type_id = request.POST.get('type') - business_type = get_object_or_404(BusinessType, id=business_type_id) - - business = Business( - name=name, - email=email, - financial_number=financial_number, - vat=vat, - commercial_registration=commercial_registration, - website=website, - type=business_type, - logo=logo, - phone_number=phone_number, - ) - business.save() - - - businesses = Business.objects.all() - - updated_options = [{'id': business.id, 'name': business.name} for business in businesses] - - - return JsonResponse(updated_options, safe=False) - - - return render(request, 'add_templates/addbusiness-modal.html') - - @staff_login_required def add_staff(request): staffpositions = StaffPosition.objects.all().order_by('-id') @@ -182,7 +136,7 @@ def add_staff(request): email = request.POST.get('email').lower() first_name = request.POST.get('first_name') last_name = request.POST.get('last_name') - username = f"{first_name.lower()}{last_name.lower()}" + username = f"{first_name.replace(' ', '').lower()}{last_name.replace(' ', '').lower()}" original_username = username counter = 1 @@ -190,10 +144,17 @@ def add_staff(request): username = f"{original_username.lower()}{counter}" counter += 1 + if request.POST.get('active'): + active = True + else: + active = False + user = User.objects.create_user( username=username, email=email, - password= request.POST.get('password2') + password= request.POST.get('password2'), + is_staff = True, + is_active = active ) user.first_name = first_name.lower().capitalize() user.last_name = last_name.lower().capitalize() @@ -202,12 +163,17 @@ def add_staff(request): staff_positionid = request.POST.get('staff_position') staff_position = get_object_or_404(StaffPosition, id=staff_positionid) + if request.POST.get('intern'): + intern = True + else: + intern = False + StaffProfile.objects.create( user=user, image = request.FILES.get('image'), mobile_number = request.POST.get('mobile_number'), - active = request.POST.get('active'), - intern = request.POST.get('intern'), + active = active, + intern = intern, staff_position = staff_position, ) return redirect('users') @@ -299,35 +265,7 @@ def add_user_story_modal(request, project_id): } return render(request, 'add_templates/add-userstory-modal.html', context) - - - -@staff_login_required -def add_project_note_modal(request, project_id): - project = get_object_or_404(Project, project_id=project_id) - if request.method == 'POST': - text = request.POST.get('note_text') - color = request.POST.get('note_color') - user = request.user - date = timezone.now() - - note = Note( - text=text, - color=color, - user=user, - date=date, - project=project, - ) - note.save() - - return HttpResponse('') - - context = { - 'project' : project - } - - return render(request, 'add_templates/add-project-note-modal.html', context) - + @staff_login_required @@ -492,7 +430,12 @@ def add_epic(request, project_id): @staff_login_required -def add_note_modal(request, *args, **kwargs): +def add_note_modal(request, project_id=None): + project = None + if project_id: #Case where user wants to add note for a project page(Adding a note for a project) + project = get_object_or_404(Project, project_id=project_id) + else: + project = None if request.method == 'POST': text = request.POST.get('note_text') color = request.POST.get('note_color') @@ -504,12 +447,16 @@ def add_note_modal(request, *args, **kwargs): color=color, user=user, date=date, + project=project, ) note.save() # Reload the parent page return HttpResponse('') - return render(request, 'add_templates/add-note-modal.html') + context={ + 'project': project, + } + return render(request, 'add_templates/add-note-modal.html', context) diff --git a/osinaweb/osinacore/edit/__pycache__/views.cpython-310.pyc b/osinaweb/osinacore/edit/__pycache__/views.cpython-310.pyc index 04bf6d24f63d29a5c09f20099f6555df7cb43395..a01ee7b6a44a0a105b0761d3e135ad3f8440f24a 100644 GIT binary patch literal 10508 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 literal 10617 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 diff --git a/osinaweb/osinacore/edit/views.py b/osinaweb/osinacore/edit/views.py index d6d9690f..e62aed19 100644 --- a/osinaweb/osinacore/edit/views.py +++ b/osinaweb/osinacore/edit/views.py @@ -13,10 +13,6 @@ def edit_customer(request, customer_id): #Utilities references = Reference.objects.all() - businesses = Business.objects.all - customer_status = customer.status - customer_reference = customer.reference - customer_business = customer.business if request.method == 'POST': @@ -24,6 +20,7 @@ def edit_customer(request, customer_id): customer.user.first_name = request.POST.get('first_name') customer.user.last_name = request.POST.get('last_name') customer.user.email = request.POST.get('email') + customer.user.username = request.POST.get('email') customer.user.save() customer.mobile_number = request.POST.get('mobile_number') customer.personal_website = request.POST.get('personal_website') @@ -32,14 +29,6 @@ def edit_customer(request, customer_id): customer_reference = request.POST.get('reference') reference = get_object_or_404(Reference, id=customer_reference) customer.reference = reference - - if customer.business: - new_business = request.POST.get('business') - business = get_object_or_404(Business, id=new_business) - customer.business = business - - - customer.save() @@ -50,10 +39,6 @@ def edit_customer(request, customer_id): 'customer' : customer, 'references' : references, - 'businesses' : businesses, - 'customer_status' : customer_status, - 'customer_reference' : customer_reference, - 'customer_business' : customer_business, } return render(request, 'edit_templates/edit-customer.html', context) @@ -65,24 +50,26 @@ def edit_customer(request, customer_id): def edit_business(request, business_id): business = get_object_or_404(Business, business_id=business_id) business_types = BusinessType.objects.all().order_by('name') - current_business_type = None - if business.type: - current_business_type = business.type - + customers = CustomerProfile.objects.all().order_by('-id') if request.method == 'POST': business.name= request.POST.get('name') business.financial_number = request.POST.get('financial_number') business.commercial_registration = request.POST.get('commercial_registration') - business.vat = request.POST.get('vat') + if request.POST.get('vat'): + business.vat = True + else: + business.vat = False business.phone_number = request.POST.get('phone_number') business.website = request.POST.get('website') - - business_type = request.POST.get('business_type') - type = get_object_or_404(BusinessType, id=business_type) - business.type = type + if request.POST.get('business_type'): + business_type = request.POST.get('business_type') + type = get_object_or_404(BusinessType, id=business_type) + business.type = type + else: + business.type = None new_logo = request.FILES.get('logo') if new_logo: @@ -97,7 +84,7 @@ def edit_business(request, business_id): context = { 'business' : business, 'business_types' : business_types, - 'current_business_type' : current_business_type, + 'customers' : customers, } return render(request, 'edit_templates/edit-business.html', context) @@ -115,23 +102,30 @@ def edit_staff(request, staff_id): staff.user.first_name= request.POST.get('first_name') staff.user.last_name = request.POST.get('last_name') staff.user.email = request.POST.get('email') + if request.POST.get('active'): + active = True + else: + active = False + staff.user.is_active = active staff.user.save() staff.mobile_number = request.POST.get('mobile_number') - staff.active = request.POST.get('active') - staff.intern = request.POST.get('intern') - new_position_id = request.POST.get('staff_position') new_position = get_object_or_404(StaffPosition, id=new_position_id) staff.staff_position = new_position + staff.active = active new_image = request.FILES.get('image') if new_image: staff.image = new_image - staff.active = request.POST.get('active') == 'on' - staff.intern = request.POST.get('intern') == 'on' + + if request.POST.get('intern'): + intern = True + else: + intern = False + staff.intern = intern staff.save() diff --git a/osinaweb/osinacore/templates/add_templates/add-business.html b/osinaweb/osinacore/templates/add_templates/add-business.html index ca9cf1fb..0dc03862 100644 --- a/osinaweb/osinacore/templates/add_templates/add-business.html +++ b/osinaweb/osinacore/templates/add_templates/add-business.html @@ -12,6 +12,21 @@ {% csrf_token %}
+
+ +
+
+ + Upload + Logo + +
+
+
+
- Upload - Logo - -
-
- - -
-
- - -
-
- +
+ +
+ + +
+ +
diff --git a/osinaweb/osinacore/templates/add_templates/add-note-modal.html b/osinaweb/osinacore/templates/add_templates/add-note-modal.html index 4c6a107c..2d1d9080 100644 --- a/osinaweb/osinacore/templates/add_templates/add-note-modal.html +++ b/osinaweb/osinacore/templates/add_templates/add-note-modal.html @@ -14,7 +14,7 @@ -
+ {% csrf_token %}

Add Note

diff --git a/osinaweb/osinacore/templates/add_templates/add-project-note-modal.html b/osinaweb/osinacore/templates/add_templates/add-project-note-modal.html deleted file mode 100644 index e231a50a..00000000 --- a/osinaweb/osinacore/templates/add_templates/add-project-note-modal.html +++ /dev/null @@ -1,116 +0,0 @@ -{% load static %} - - - - - - - - Osina - - - - - - - - - {% csrf_token %} -

Add Note

- -
- - - -
- -
-
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
-
- -
- -
- - - -
- -
-
- - - \ No newline at end of file diff --git a/osinaweb/osinacore/templates/add_templates/add-staff.html b/osinaweb/osinacore/templates/add_templates/add-staff.html index 7f6efd34..e3b1efa5 100644 --- a/osinaweb/osinacore/templates/add_templates/add-staff.html +++ b/osinaweb/osinacore/templates/add_templates/add-staff.html @@ -64,6 +64,7 @@ +

Active

- +

Intern

-
diff --git a/osinaweb/osinacore/templates/add_templates/add-task.html b/osinaweb/osinacore/templates/add_templates/add-task.html index b04e64f2..e6e158b9 100644 --- a/osinaweb/osinacore/templates/add_templates/add-task.html +++ b/osinaweb/osinacore/templates/add_templates/add-task.html @@ -18,6 +18,8 @@ {% else %} action="{% url 'addtask' %}" {% endif %}> + + {% csrf_token %}
diff --git a/osinaweb/osinacore/templates/details_templates/project-details.html b/osinaweb/osinacore/templates/details_templates/project-details.html index 7affaddb..9f92763c 100644 --- a/osinaweb/osinacore/templates/details_templates/project-details.html +++ b/osinaweb/osinacore/templates/details_templates/project-details.html @@ -409,7 +409,7 @@
diff --git a/osinaweb/osinacore/templates/edit_templates/edit-business.html b/osinaweb/osinacore/templates/edit_templates/edit-business.html index 725b1c64..d5fa44de 100644 --- a/osinaweb/osinacore/templates/edit_templates/edit-business.html +++ b/osinaweb/osinacore/templates/edit_templates/edit-business.html @@ -13,6 +13,7 @@
+
{% if business.logo %} @@ -44,7 +45,21 @@
- + + +
+ +
+ @@ -59,7 +74,7 @@
- + @@ -87,36 +102,25 @@
- +
- - - + +
- -
diff --git a/osinaweb/osinacore/templates/edit_templates/edit-customer.html b/osinaweb/osinacore/templates/edit_templates/edit-customer.html index 13bd6007..020f2683 100644 --- a/osinaweb/osinacore/templates/edit_templates/edit-customer.html +++ b/osinaweb/osinacore/templates/edit_templates/edit-customer.html @@ -56,9 +56,9 @@ class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md text-gray-500 mt-1" required> - - - + + +
@@ -68,41 +68,13 @@ class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md text-gray-500 mt-1" required> {% for reference in references %} - {% endfor %}
- {% if not customer_business %} -
- - -
- {% endif %} - - - {% if customer_business %} -
- - -
- {% endif %} -
diff --git a/osinaweb/osinacore/templates/edit_templates/edit-project-type.html b/osinaweb/osinacore/templates/edit_templates/edit-project-type.html index 009218d3..a3b9c4af 100644 --- a/osinaweb/osinacore/templates/edit_templates/edit-project-type.html +++ b/osinaweb/osinacore/templates/edit_templates/edit-project-type.html @@ -13,7 +13,7 @@
- +
diff --git a/osinaweb/osinacore/templates/edit_templates/edit-staff.html b/osinaweb/osinacore/templates/edit_templates/edit-staff.html index f11483fa..89554a77 100644 --- a/osinaweb/osinacore/templates/edit_templates/edit-staff.html +++ b/osinaweb/osinacore/templates/edit_templates/edit-staff.html @@ -77,29 +77,19 @@
- {% if staff.active %} -
- -

Active

-
- {% else %} +
- -

Active

+ +

Active

- {% endif %} + - {% if staff.intern %} -
- -

Intern

-
- {% else %} +
- -

Intern

+ +

Intern

- {% endif %} +