From 5f63b84d001f7852c4696123c65011281f9a1a33 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Sun, 26 May 2024 13:32:17 +0200 Subject: [PATCH] getting there --- boatmovers/urls.py | 32 +++++++++++++------------- rowers/ownapistuff.py | 2 +- rowers/tests/statements.py | 2 +- rowers/tests/test_analysis.py | 3 ++- rowers/tests/testdata/testdata.tcx.gz | Bin 3999 -> 4000 bytes rowers/urls.py | 1 + rowers/views/statements.py | 2 +- rowers/views/workoutviews.py | 8 ++----- rowsandall_app/settings.py | 6 ++--- 9 files changed, 27 insertions(+), 29 deletions(-) diff --git a/boatmovers/urls.py b/boatmovers/urls.py index b465970c..b993c755 100644 --- a/boatmovers/urls.py +++ b/boatmovers/urls.py @@ -1,5 +1,5 @@ from django.conf import settings -from django.conf.urls import url, include +from django.conf.urls import include from django.urls import path, re_path from django.views.generic.base import TemplateView @@ -7,21 +7,21 @@ from django.views.generic.base import TemplateView import boatmovers.views as views urlpatterns = [ - url(r'athlete/add/$',views.AthleteCreateView.as_view(),name='athlete_add'), - url(r'athlete/(?P\d+)/$',views.athlete_view,name='athlete_view'), - url(r'crew/add/$',views.CrewCreateView.as_view(),name='crew_add'), - url(r'race/add/$',views.RaceCreateView.as_view(),name='race_add'), - url(r'result/add/$',views.ResultCreateView.as_view(),name='result_add'), - url(r'race/(?P\d+)/$',views.race_view,name='race_view'), - url(r'race/(?P\d+)/csv/$',views.race_add_csv,name='race_add_csv'), - url(r'race/(?P\d+)/timeteam/$',views.race_handle_timeteam,name='race_handle_timeteam'), - url(r'race/(?P\d+)/verify/$',views.race_verify,name='race_verify'), - url(r'race/(?P\d+)/process/$',views.race_process,name='race_process'), - url(r'race/(?P\d+)/deleteresults/$',views.race_delete_results, + re_path(r'athlete/add/$',views.AthleteCreateView.as_view(),name='athlete_add'), + re_path(r'athlete/(?P\d+)/$',views.athlete_view,name='athlete_view'), + re_path(r'crew/add/$',views.CrewCreateView.as_view(),name='crew_add'), + re_path(r'race/add/$',views.RaceCreateView.as_view(),name='race_add'), + re_path(r'result/add/$',views.ResultCreateView.as_view(),name='result_add'), + re_path(r'race/(?P\d+)/$',views.race_view,name='race_view'), + re_path(r'race/(?P\d+)/csv/$',views.race_add_csv,name='race_add_csv'), + re_path(r'race/(?P\d+)/timeteam/$',views.race_handle_timeteam,name='race_handle_timeteam'), + re_path(r'race/(?P\d+)/verify/$',views.race_verify,name='race_verify'), + re_path(r'race/(?P\d+)/process/$',views.race_process,name='race_process'), + re_path(r'race/(?P\d+)/deleteresults/$',views.race_delete_results, name='race_delete_results'), - url(r'crew/(?P\d+)/$',views.crew_view,name='crew_view'), - url(r'^$',views.boatmovers_view,name='boatmovers'), - url(r'^compare/$',views.boatmovers_compareview,name='boatmovers_compare'), + re_path(r'crew/(?P\d+)/$',views.crew_view,name='crew_view'), + re_path(r'^$',views.boatmovers_view,name='boatmovers'), + re_path(r'^compare/$',views.boatmovers_compareview,name='boatmovers_compare'), path(r'faq/', TemplateView.as_view(template_name='faq.html'), name='faq'), - #url(r'(?P\b[0-9A-Fa-f]+\b)/$',views.boatmovers_view,name='boatmovers') + #re_path(r'(?P\b[0-9A-Fa-f]+\b)/$',views.boatmovers_view,name='boatmovers') ] diff --git a/rowers/ownapistuff.py b/rowers/ownapistuff.py index cf81c148..75c58d45 100644 --- a/rowers/ownapistuff.py +++ b/rowers/ownapistuff.py @@ -1,7 +1,7 @@ # Interactions with Rowsandall.com API. Not fully complete. # Python -import oauth2 as oauth +#import oauth2 as oauth import cgi import requests import requests.auth diff --git a/rowers/tests/statements.py b/rowers/tests/statements.py index c809c60e..47f64ae6 100644 --- a/rowers/tests/statements.py +++ b/rowers/tests/statements.py @@ -62,7 +62,7 @@ from rowers.utils import NoTokenError from rowers.plannedsessions import get_dates_timeperiod from shutil import copyfile, copy from nose.tools import assert_true -from mock import Mock, patch +from mock import Mock, patch, MagicMock #from minimocktest import MockTestCase import pandas as pd import polars as pl diff --git a/rowers/tests/test_analysis.py b/rowers/tests/test_analysis.py index 4bd98e36..c2bd1f89 100644 --- a/rowers/tests/test_analysis.py +++ b/rowers/tests/test_analysis.py @@ -1103,7 +1103,8 @@ class WorkoutStatsTestNew(TestCase): } request.COOKIES = SimpleCookie({'name': 'bla'}) # adding session - middleware = SessionMiddleware() + get_response = MagicMock() + middleware = SessionMiddleware(get_response) middleware.process_request(request) diff --git a/rowers/tests/testdata/testdata.tcx.gz b/rowers/tests/testdata/testdata.tcx.gz index 8f7a45403b2c784b4c366ae2ef550ef8022ef921..33e508029c39077e2eb3cf26afed1d6938aa78d9 100644 GIT binary patch delta 2689 zcmV-{3V!vUAD|z9ABzYGGX+v+0{?Vnb97{3bYU)ZV|W1Vok?#THx_{J{uP1`$zc%o zTllyrvVv@bF<@tc*vRBIs7M{TXQYyrKR9~6=~nC2`t1AVx?gU8e(3t{_inp9NIS2$j~>40 z`>Vsn;`Qs-=B(RXtk&k_@?w#`+@8ExUUb{V?T0U3(Zl^I4!bv>ah7jS`qisd|L2cy z`sF&`;EfZ!*{(h~!)rE|o3jN0;NrKZPoC{g@zrX*?Ys5KG99&D9q!NjJ^!PH`~*{KJf2d|9y9Uxmhi@i&yy9`~T7PC;R=E*O$W2yVM|{yB@m#jSr6> z92^|IeE{iaT=URdic-&#d7m-|7H66@#!%Ey01XKB6yB`Xz`GoiH!DX_*chXUnm`a`uwu*&huf6ct@e!Tu}+4b9>mz$@n^~-+w@BYS*NT>O=JAb)6Mw>3O|MUG77PnmD#@A1~ zH>-<(mlyx18xVKP4cu~x8(%+O?_SmZ&*R-&u}oyIx7>V?r_1z!j|uZ*-2Z)p;%0Sr zmTqm?zqmX-e%h^HcIS!W2U~CM-JSgRgS+2txw>4f``HifO`_SNrC()6!s);NASS|hFhNRZinlC(QEt3WuO22+h@-Nw~pZ-pD~^DUtQlP zv57~E{a+tnbCE9k@z1;c7W0d68(uAS29u;+tb#hS!D(R654s}mEa6#^IHr$=9hMw|D>O@w=0@*cP%?%o6sPNUB|SJI4Qnh$qh4|f6M z16qx|doeN*?v;)671?pZCW4I`?m2@n6z&=jSue3sgj&jb#+pkT2}Ji!&lm6_Ixa zoz97a&X=6$Ews^o6!O7D5~~T%p${efclRRSM*BhXgvJqg)o35elAlk64y7W0tB$M@ zKvZdXF_yIF=S1FyipVEDoe5RRR}f1^=`77?w8x6bM-vddRi)iE@-raMWL(6kBA=6U z3zDCa-@c~Np2e^OubJn`mL+dzM82Yk4F>}NUNqzdN=E1Hef;*^thyocNq((ERT>sa zEa}6W75R#Mc$N(#T1}Lee9;Vl`$m2w^3H%&k`FK$nXhf0uP91ugYoHARN3f`(hie%#tQ~bl$HsL+VgWFUy(hZ zEi|^Od7c?foCtYr^Zf1PIp^LoAZa`~=|w4-b!}bq+mAwC3@`+h%nKENjo38u_ifWz@TvWsJP3A`-?+iv1mCQ$5 z)O*`xejM_<+*?%(G+VZ!@?PYz`S6Cw=iFPdD&5|et*Er2$^0nftw}?D)adq>Tv3@1 z&8i!Pyf+llX}q_VUD14h`_M-FF~~FQT4HH*duv@$-9EJV{3ztfIEJWdf+uCk u) zRYYEl6=u~u?~2ya&WgNLL_V0rU6p}p%T`nhG?^cRyhW2VPDiSir$u|+%8aV0#a2X~ zjd!{zt&Oo{PR^Xj*HdG|Irr9iM9pX~2$PZdX3r0kkA?!opdufCn{Ge-h>cM0mZFN% z3PaQFr!VtjO-Q=EO6G0Ztn1inX-6UNjj%3aBT|-p^Wlv^-X_=vy;Wshi)-ZXO5RpP zo=ot%>MHR#nfQE@`C;;6ETO8pNh^OYU(;wG4IlHEX!_ndOGR^U=S03Dd!DQzhpd|Cg(j1G%dLKXki0i&kyN9-qoVfwjL18x zhrZs=jTMeBHcb|YaCIvYMBe%qO>z0F9tw=R9((pY zdT8YDO1>i9-hyE-Do>6_TT;WjR~}x|@P^5A?tZHB-uh$-#+HFOdGcbsb*PEe`J@{Z zjMWLw$eyn#K5v7u$f(K5@#$@`6Cq!l4=>b1UNG0vs@AmdQnY@4PBLGUh9_*i5NdpQ z-no)~`&rF@^A*|iNq#w!s>a59*D5OSNWP*dtwaM%pc?Iin~ZMXytf17P~1A3JsH=<0&r30;R-XQwjlMW6q0`C@+KMpH@?^d!_M($$7 z)){*S=&eaJy=nmz0%$#Q?~2}!h5qfltPr9q?4?kV@%kA+O=l$0|o-Z$!>;B-& z-KH-Oy8Zy(_&*|?oCaB@|9^4Te|@yrAMjv*rgy(Ff4=^-+JAra{U&j|+`QfQr!Kuc zo6FbRZhhLFpYNVl`nXzupPhDnm(JVm->yXE{c%U%zU*IIZf?9L-(FpvuTHu?{q*Y> zGjY3HNB7N&>Iiu?UtwAf6^thv*70EPj_3b(`GO4_uFl_ezYH* z|LA$T>EmCP=gV%pOdRs3w~y||eH}gN)@P4@IR5dc%x3rJe*4cj=`H^0<;CyIbY}ox v0qp-hTHN?z|KxX%>G;78^=h4-!}kg0a`Qua8o#GYA3yjXkx`AS#DD<+!7iRN delta 2688 zcmV-`3V-#WADR|1t7gC$a4Q^pyHwpO9+0P}Z_{6&s&lV{ zAK#sx?7dlDY*uIM`*+d6-Mt?V?;O0i=vM31`uO2;-7hbH9(8^9N4Ht-rJdKC`*&aU z{rUc4@%HUobKG5=uGZ%0>~xX7+#J1Ho_3qX^@lIs(B0iB_PclAaFz#0{p!uCfB*Bl ze!0#!c;y7|HmlFh@RrTl#qojwaPj-oC(pO1xVKtw`fh!+Oh;{2`@8c#IXmk5?XSJj z4eaTUdPC-a-R9+AANcpKf7qRzU96Uy#T)$V{r~Lxquu_?%S++6U1|`}O%L7u#=D1i z_Vx}wJb?5w^2bjb-tRp>KfCDf-~DI*YI$*Y_htI}@ykO3boW5+5xhX&x42KvL`NLq zZvguM2aB}R$Nisl=X=ll?xKIOI$hqs`&Y+aUML-Z`r@qbPV!;Tmq%yomzzUjf3Wy! z>!$-At#)tF(`EXxn{=P~UcT7)Y44Bt4iUq_;_}m{9Udf6>yDTISf;!Gwdds{rTw%i)$`%(l?!4T!tu2Clipm9HPKx36md{&4$NEECzwEmt4p%Vm1NhlKet?*6_)@nUs+ zoNjH|zdCz)__SNU?oJZL&$eFOyF2>tXLrBda(=d2_g6RPFVZ{k4e#Q1x6hCK;*}6% zhhLNJ0k+&%DC|gFkKnTh4A(s0?GBfJqu1uE%f9&K_ivsFt{ua_JYzcNzq-Cp zViOM*yT87?<|1A6%b$1sE#?>DI=ouy3?@mtSOs-tgVVsCA9O|B$yLNXK}2vt!JU%c zRFHePId`f{-mO%`-5Fw3jq+)T;DX%aY`8mH5%-wn-HO+6k0s@uVK&@-McgfI$9boJ z;BJGVg52>I+_5U|0V?7yiF*<%jW+L%n+W&1LO3oO!2f2$&?eFDTgS3C4Dz+=Ognh6_K|lCZ%2_^CTt|Brh`}A1flC z%sD|0s_={}YR9|zkhiWL@(9LRB$do3c7iUDCDkAR; zI-L^-oi91hTWF*GDCC2QBvuoiLmx`|?`}oDjrN1&35_H0s?k1_B|o1C9ZE%iRvlR* zfT+^&Vk~LT&xyPZ6_HPRIuojruOOC;(pj3(Xpa?9-zkN-kJ&R!nUNg^=Elb|ch)N{Jw;zSP7+?r0nHMU58nJ2Q$06@c zND_}4@{XI#-;g}lLmt6MfS_uU;kl^H`=;BELY@s<6xBQ*xTuEbo6L_w-WiN2Dw&VA zsQ0$X{5a&dxwonoXtr!c<*mqL^WhDV&$+i^Rl2<`TTy94llf7|Ta$+RsL|~$xuP;3 znpHOnd2cA9(|B(!yQ2Aj_MwgTV~}Uqw#3rt_SU+hx_xNz`BBJ|aSTz_1W(G6pHoGp ztBAZ9E6l2S-W9E-ofUbhh-(} z8}D>cS{q}@oSZq4ucyX_bMCG4h?>z}5GEt@&7L179}NYFK}9})Hr;;u5gVc0EkzZj z6^5qUPhaN6nvisRmCW0+S=X`E(vCvj8)0303DFT2)$Qj*zNXPW8bA!1_`G8(T1D+! ze0~h_IrlbT(Dc1^mWt-y&WU_Q_B>fb4p}wN3r!~XmRtS&AbD@lBB@4uM@8-V8IgBX z5&7IXfmqYu-gz!M&(Dc`MY?^`);OYS)iM{jMQLY1UJQVLsJfiH$Sq1c{n4Ji5z%!* z^w7xPlzc_Hy#>QwRGu7;SH1L-2GJLz4gfwj4cCm^5n&M>rfM`^GP=- z7^@SUkv(5geBK6Qkx`SACqlk9A6}@3ykM@SRjp~^rD*;9oMgTx4Nus3A=LQr zymKY}_OqIQ=PR=3ll*cdRgI1Ju2odtkbFf^T8RdjKsDM2HyPc&d2a{E%RZp-N*|t& zMOPu8mCQ>;&x$-JwGyf+908mlf~n2gLf^26k#acQvEjP`*-QG0$) zqkX7{Jd&{%qbBP*aBMPvL-MgA@?sz;M|)dzrNUW%d2%Wm?a>=AqUx3sT+!7@=j6Th zR1bNA+#8EEo}5s2jY^?LeiZU-kaRsTLnyjx*__DNG|!WmAQ&|nm?2`(%nX{*Jnt(a zAB-fK*Hl_WpeFNEkJZUOqp?h?%#4WK$WJ|DlgL{`>7R-`6v6alm3UFPnM_4b-(xh zcGLHJUB3tK{GWd!&{3oa@ZE9$!@**Az@6QhKK{o1`SR0h_x-`ci^TEl;={hry7cy3 zoW0$2>zCch$@XcbkE`{6@yo97(s{ex+m)z%I_}`X>;Bc*#g*6O!TI^g>Zt3}PrrOI zF3 1 else v for k, v in q.items()} + # only allow local host hostt = request.get_host().split(':') if hostt[0] not in ['localhost', '127.0.0.1', 'dev.rowsandall.com', 'rowsandall.com']: @@ -4834,7 +4831,6 @@ def workout_upload_api(request): message = {'status': 'false', 'message': 'invalid credentials'} return JSONResponse(status=403, data=message) - form = DocumentsForm(post_data) optionsform = TeamUploadOptionsForm(post_data) rowerform = TeamInviteForm(post_data) diff --git a/rowsandall_app/settings.py b/rowsandall_app/settings.py index 40572359..5f792d9b 100644 --- a/rowsandall_app/settings.py +++ b/rowsandall_app/settings.py @@ -71,9 +71,9 @@ INSTALLED_APPS = [ 'rest_framework', 'datetimewidget', 'rest_framework_swagger', - # 'oauth2_provider', - 'provider', - 'provider.oauth2', + 'oauth2_provider', + #'provider', + #'provider.oauth2', 'corsheaders', 'analytical', 'cookielaw',