From 09075b20d071e473dfc81c5dbf91878c64ae423f Mon Sep 17 00:00:00 2001 From: Mojalefa Kodisang Date: Fri, 14 Jun 2024 03:52:53 +0200 Subject: [PATCH] [Update] - Added more fields for properties + landlord. Added more models: students + reviews --- backend/__pycache__/manage.cpython-310.pyc | Bin 848 -> 833 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 152 -> 0 bytes .../__pycache__/admin.cpython-310.pyc | Bin 193 -> 0 bytes .../__pycache__/apps.cpython-310.pyc | Bin 437 -> 0 bytes .../__pycache__/models.cpython-310.pyc | Bin 703 -> 0 bytes .../__pycache__/urls.cpython-310.pyc | Bin 343 -> 0 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 163 -> 0 bytes backend/{amenities => api}/__init__.py | 0 .../api/__pycache__/__init__.cpython-310.pyc | Bin 0 -> 146 bytes .../migrations => api/amenities}/__init__.py | 0 .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 156 bytes .../__pycache__/admin.cpython-310.pyc | Bin 0 -> 197 bytes .../__pycache__/apps.cpython-310.pyc | Bin 0 -> 445 bytes .../__pycache__/models.cpython-310.pyc | Bin 0 -> 601 bytes .../__pycache__/serializers.cpython-310.pyc | Bin 640 -> 644 bytes .../__pycache__/urls.cpython-310.pyc | Bin 0 -> 347 bytes .../__pycache__/views.cpython-310.pyc | Bin 1448 -> 1460 bytes backend/{ => api}/amenities/admin.py | 0 backend/{ => api}/amenities/apps.py | 2 +- .../amenities/migrations/0001_initial.py | 0 .../migrations/0002_amenity_property.py | 0 ...ve_amenity_property_amenity_description.py | 22 ++ .../amenities/migrations}/__init__.py | 0 .../__pycache__/0001_initial.cpython-310.pyc | Bin 670 -> 674 bytes .../0002_amenity_property.cpython-310.pyc | Bin 786 -> 790 bytes ...operty_amenity_description.cpython-310.pyc | Bin 0 -> 691 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 167 bytes backend/{ => api}/amenities/models.py | 3 +- backend/{ => api}/amenities/serializers.py | 0 backend/{ => api}/amenities/tests.py | 0 backend/{ => api}/amenities/urls.py | 0 backend/{ => api}/amenities/views.py | 4 +- .../migrations => api/landlords}/__init__.py | 0 .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 156 bytes .../__pycache__/admin.cpython-310.pyc | Bin 0 -> 271 bytes .../__pycache__/apps.cpython-310.pyc | Bin 0 -> 445 bytes .../__pycache__/models.cpython-310.pyc | Bin 0 -> 876 bytes .../__pycache__/serializers.cpython-310.pyc | Bin 976 -> 965 bytes .../__pycache__/urls.cpython-310.pyc | Bin 480 -> 469 bytes .../__pycache__/views.cpython-310.pyc | Bin 6006 -> 6010 bytes backend/{ => api}/landlords/admin.py | 0 backend/{ => api}/landlords/apps.py | 2 +- .../landlords/migrations/0001_initial.py | 0 .../migrations/0002_remove_landlord_name.py | 0 ..._address_landlord_company_name_and_more.py | 48 ++++ .../landlords/migrations}/__init__.py | 0 .../__pycache__/0001_initial.cpython-310.pyc | Bin 2074 -> 2063 bytes .../0002_remove_landlord_name.cpython-310.pyc | Bin 0 -> 530 bytes ...lord_company_name_and_more.cpython-310.pyc | Bin 0 -> 1034 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 167 bytes backend/api/landlords/models.py | 26 +++ backend/{ => api}/landlords/serializers.py | 0 backend/{ => api}/landlords/tests.py | 0 backend/{ => api}/landlords/urls.py | 0 backend/{ => api}/landlords/views.py | 0 .../migrations => api/properties}/__init__.py | 0 .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 157 bytes .../__pycache__/admin.cpython-310.pyc | Bin 0 -> 272 bytes .../__pycache__/apps.cpython-310.pyc | Bin 0 -> 448 bytes .../__pycache__/models.cpython-310.pyc | Bin 0 -> 1842 bytes .../__pycache__/serializers.cpython-310.pyc | Bin 0 -> 631 bytes .../__pycache__/urls.cpython-310.pyc | Bin 464 -> 453 bytes .../__pycache__/utils.cpython-310.pyc | Bin 627 -> 631 bytes .../__pycache__/views.cpython-310.pyc | Bin 4440 -> 4448 bytes backend/{ => api}/properties/admin.py | 0 backend/{ => api}/properties/apps.py | 2 +- .../properties/migrations/0001_initial.py | 0 .../migrations/0002_property_amenities.py | 0 .../0003_remove_property_amenities.py | 0 ...04_property_latitude_property_longitude.py | 0 ...ities_property_available_rooms_and_more.py | 74 ++++++ backend/api/properties/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-310.pyc | Bin 1009 -> 998 bytes .../0002_property_amenities.cpython-310.pyc | Bin 649 -> 653 bytes ..._remove_property_amenities.cpython-310.pyc | Bin 0 -> 554 bytes ...atitude_property_longitude.cpython-310.pyc | Bin 680 -> 684 bytes ...y_available_rooms_and_more.cpython-310.pyc | Bin 0 -> 1551 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 168 bytes backend/api/properties/models.py | 40 ++++ backend/{ => api}/properties/serializers.py | 0 backend/{ => api}/properties/tests.py | 0 backend/{ => api}/properties/urls.py | 0 backend/{ => api}/properties/utils.py | 0 backend/{ => api}/properties/views.py | 2 +- backend/api/reviews/__init__.py | 0 .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 154 bytes .../reviews/__pycache__/admin.cpython-310.pyc | Bin 0 -> 195 bytes .../reviews/__pycache__/apps.cpython-310.pyc | Bin 0 -> 439 bytes .../__pycache__/models.cpython-310.pyc | Bin 0 -> 855 bytes backend/api/reviews/admin.py | 3 + backend/api/reviews/apps.py | 6 + .../api/reviews/migrations/0001_initial.py | 25 ++ .../api/reviews/migrations/0002_initial.py | 22 ++ backend/api/reviews/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-310.pyc | Bin 0 -> 967 bytes .../__pycache__/0002_initial.cpython-310.pyc | Bin 0 -> 717 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 165 bytes backend/api/reviews/models.py | 13 ++ backend/api/reviews/tests.py | 3 + backend/api/reviews/views.py | 0 backend/api/students/__init__.py | 0 .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 155 bytes .../__pycache__/admin.cpython-310.pyc | Bin 0 -> 196 bytes .../students/__pycache__/apps.cpython-310.pyc | Bin 0 -> 442 bytes .../__pycache__/models.cpython-310.pyc | Bin 0 -> 1004 bytes backend/api/students/admin.py | 3 + backend/api/students/apps.py | 6 + .../api/students/migrations/0001_initial.py | 47 ++++ backend/api/students/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-310.pyc | Bin 0 -> 1977 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 166 bytes backend/api/students/models.py | 28 +++ backend/api/students/serializers.py | 22 ++ backend/api/students/tests.py | 3 + backend/api/students/urls.py | 11 + backend/api/students/views.py | 216 ++++++++++++++++++ backend/db.pillow | Bin 167936 -> 225280 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 167 -> 0 bytes .../__pycache__/admin.cpython-310.pyc | Bin 282 -> 0 bytes .../__pycache__/apps.cpython-310.pyc | Bin 452 -> 0 bytes .../__pycache__/models.cpython-310.pyc | Bin 594 -> 0 bytes .../0002_remove_landlord_name.cpython-310.pyc | Bin 541 -> 0 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 178 -> 0 bytes backend/landlords/models.py | 11 - .../__pycache__/__init__.cpython-310.pyc | Bin 172 -> 157 bytes .../__pycache__/settings.cpython-310.pyc | Bin 2906 -> 2945 bytes .../__pycache__/urls.cpython-310.pyc | Bin 1101 -> 1154 bytes .../__pycache__/wsgi.cpython-310.pyc | Bin 589 -> 574 bytes backend/pillow_backend/settings.py | 8 +- backend/pillow_backend/urls.py | 7 +- .../__pycache__/__init__.cpython-310.pyc | Bin 173 -> 0 bytes .../__pycache__/admin.cpython-310.pyc | Bin 283 -> 0 bytes .../__pycache__/apps.cpython-310.pyc | Bin 460 -> 0 bytes .../__pycache__/models.cpython-310.pyc | Bin 1142 -> 0 bytes .../__pycache__/serializers.cpython-310.pyc | Bin 642 -> 0 bytes ..._remove_property_amenities.cpython-310.pyc | Bin 550 -> 0 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 179 -> 0 bytes backend/properties/models.py | 22 -- backend/requirements.txt | 5 + 139 files changed, 639 insertions(+), 47 deletions(-) delete mode 100644 backend/amenities/__pycache__/__init__.cpython-310.pyc delete mode 100644 backend/amenities/__pycache__/admin.cpython-310.pyc delete mode 100644 backend/amenities/__pycache__/apps.cpython-310.pyc delete mode 100644 backend/amenities/__pycache__/models.cpython-310.pyc delete mode 100644 backend/amenities/__pycache__/urls.cpython-310.pyc delete mode 100644 backend/amenities/migrations/__pycache__/__init__.cpython-310.pyc rename backend/{amenities => api}/__init__.py (100%) create mode 100644 backend/api/__pycache__/__init__.cpython-310.pyc rename backend/{amenities/migrations => api/amenities}/__init__.py (100%) create mode 100644 backend/api/amenities/__pycache__/__init__.cpython-310.pyc create mode 100644 backend/api/amenities/__pycache__/admin.cpython-310.pyc create mode 100644 backend/api/amenities/__pycache__/apps.cpython-310.pyc create mode 100644 backend/api/amenities/__pycache__/models.cpython-310.pyc rename backend/{ => api}/amenities/__pycache__/serializers.cpython-310.pyc (65%) create mode 100644 backend/api/amenities/__pycache__/urls.cpython-310.pyc rename backend/{ => api}/amenities/__pycache__/views.cpython-310.pyc (80%) rename backend/{ => api}/amenities/admin.py (100%) rename backend/{ => api}/amenities/apps.py (82%) rename backend/{ => api}/amenities/migrations/0001_initial.py (100%) rename backend/{ => api}/amenities/migrations/0002_amenity_property.py (100%) create mode 100644 backend/api/amenities/migrations/0003_remove_amenity_property_amenity_description.py rename backend/{landlords => api/amenities/migrations}/__init__.py (100%) rename backend/{ => api}/amenities/migrations/__pycache__/0001_initial.cpython-310.pyc (58%) rename backend/{ => api}/amenities/migrations/__pycache__/0002_amenity_property.cpython-310.pyc (59%) create mode 100644 backend/api/amenities/migrations/__pycache__/0003_remove_amenity_property_amenity_description.cpython-310.pyc create mode 100644 backend/api/amenities/migrations/__pycache__/__init__.cpython-310.pyc rename backend/{ => api}/amenities/models.py (51%) rename backend/{ => api}/amenities/serializers.py (100%) rename backend/{ => api}/amenities/tests.py (100%) rename backend/{ => api}/amenities/urls.py (100%) rename backend/{ => api}/amenities/views.py (91%) rename backend/{landlords/migrations => api/landlords}/__init__.py (100%) create mode 100644 backend/api/landlords/__pycache__/__init__.cpython-310.pyc create mode 100644 backend/api/landlords/__pycache__/admin.cpython-310.pyc create mode 100644 backend/api/landlords/__pycache__/apps.cpython-310.pyc create mode 100644 backend/api/landlords/__pycache__/models.cpython-310.pyc rename backend/{ => api}/landlords/__pycache__/serializers.cpython-310.pyc (58%) rename backend/{ => api}/landlords/__pycache__/urls.cpython-310.pyc (60%) rename backend/{ => api}/landlords/__pycache__/views.cpython-310.pyc (95%) rename backend/{ => api}/landlords/admin.py (100%) rename backend/{ => api}/landlords/apps.py (82%) rename backend/{ => api}/landlords/migrations/0001_initial.py (100%) rename backend/{ => api}/landlords/migrations/0002_remove_landlord_name.py (100%) create mode 100644 backend/api/landlords/migrations/0003_landlord_company_address_landlord_company_name_and_more.py rename backend/{properties => api/landlords/migrations}/__init__.py (100%) rename backend/{ => api}/landlords/migrations/__pycache__/0001_initial.cpython-310.pyc (81%) create mode 100644 backend/api/landlords/migrations/__pycache__/0002_remove_landlord_name.cpython-310.pyc create mode 100644 backend/api/landlords/migrations/__pycache__/0003_landlord_company_address_landlord_company_name_and_more.cpython-310.pyc create mode 100644 backend/api/landlords/migrations/__pycache__/__init__.cpython-310.pyc create mode 100644 backend/api/landlords/models.py rename backend/{ => api}/landlords/serializers.py (100%) rename backend/{ => api}/landlords/tests.py (100%) rename backend/{ => api}/landlords/urls.py (100%) rename backend/{ => api}/landlords/views.py (100%) rename backend/{properties/migrations => api/properties}/__init__.py (100%) create mode 100644 backend/api/properties/__pycache__/__init__.cpython-310.pyc create mode 100644 backend/api/properties/__pycache__/admin.cpython-310.pyc create mode 100644 backend/api/properties/__pycache__/apps.cpython-310.pyc create mode 100644 backend/api/properties/__pycache__/models.cpython-310.pyc create mode 100644 backend/api/properties/__pycache__/serializers.cpython-310.pyc rename backend/{ => api}/properties/__pycache__/urls.cpython-310.pyc (56%) rename backend/{ => api}/properties/__pycache__/utils.cpython-310.pyc (68%) rename backend/{ => api}/properties/__pycache__/views.cpython-310.pyc (93%) rename backend/{ => api}/properties/admin.py (100%) rename backend/{ => api}/properties/apps.py (82%) rename backend/{ => api}/properties/migrations/0001_initial.py (100%) rename backend/{ => api}/properties/migrations/0002_property_amenities.py (100%) rename backend/{ => api}/properties/migrations/0003_remove_property_amenities.py (100%) rename backend/{ => api}/properties/migrations/0004_property_latitude_property_longitude.py (100%) create mode 100644 backend/api/properties/migrations/0005_property_amenities_property_available_rooms_and_more.py create mode 100644 backend/api/properties/migrations/__init__.py rename backend/{ => api}/properties/migrations/__pycache__/0001_initial.cpython-310.pyc (80%) rename backend/{ => api}/properties/migrations/__pycache__/0002_property_amenities.cpython-310.pyc (55%) create mode 100644 backend/api/properties/migrations/__pycache__/0003_remove_property_amenities.cpython-310.pyc rename backend/{ => api}/properties/migrations/__pycache__/0004_property_latitude_property_longitude.cpython-310.pyc (53%) create mode 100644 backend/api/properties/migrations/__pycache__/0005_property_amenities_property_available_rooms_and_more.cpython-310.pyc create mode 100644 backend/api/properties/migrations/__pycache__/__init__.cpython-310.pyc create mode 100644 backend/api/properties/models.py rename backend/{ => api}/properties/serializers.py (100%) rename backend/{ => api}/properties/tests.py (100%) rename backend/{ => api}/properties/urls.py (100%) rename backend/{ => api}/properties/utils.py (100%) rename backend/{ => api}/properties/views.py (99%) create mode 100644 backend/api/reviews/__init__.py create mode 100644 backend/api/reviews/__pycache__/__init__.cpython-310.pyc create mode 100644 backend/api/reviews/__pycache__/admin.cpython-310.pyc create mode 100644 backend/api/reviews/__pycache__/apps.cpython-310.pyc create mode 100644 backend/api/reviews/__pycache__/models.cpython-310.pyc create mode 100644 backend/api/reviews/admin.py create mode 100644 backend/api/reviews/apps.py create mode 100644 backend/api/reviews/migrations/0001_initial.py create mode 100644 backend/api/reviews/migrations/0002_initial.py create mode 100644 backend/api/reviews/migrations/__init__.py create mode 100644 backend/api/reviews/migrations/__pycache__/0001_initial.cpython-310.pyc create mode 100644 backend/api/reviews/migrations/__pycache__/0002_initial.cpython-310.pyc create mode 100644 backend/api/reviews/migrations/__pycache__/__init__.cpython-310.pyc create mode 100644 backend/api/reviews/models.py create mode 100644 backend/api/reviews/tests.py create mode 100644 backend/api/reviews/views.py create mode 100644 backend/api/students/__init__.py create mode 100644 backend/api/students/__pycache__/__init__.cpython-310.pyc create mode 100644 backend/api/students/__pycache__/admin.cpython-310.pyc create mode 100644 backend/api/students/__pycache__/apps.cpython-310.pyc create mode 100644 backend/api/students/__pycache__/models.cpython-310.pyc create mode 100644 backend/api/students/admin.py create mode 100644 backend/api/students/apps.py create mode 100644 backend/api/students/migrations/0001_initial.py create mode 100644 backend/api/students/migrations/__init__.py create mode 100644 backend/api/students/migrations/__pycache__/0001_initial.cpython-310.pyc create mode 100644 backend/api/students/migrations/__pycache__/__init__.cpython-310.pyc create mode 100644 backend/api/students/models.py create mode 100644 backend/api/students/serializers.py create mode 100644 backend/api/students/tests.py create mode 100644 backend/api/students/urls.py create mode 100644 backend/api/students/views.py delete mode 100644 backend/landlords/__pycache__/__init__.cpython-310.pyc delete mode 100644 backend/landlords/__pycache__/admin.cpython-310.pyc delete mode 100644 backend/landlords/__pycache__/apps.cpython-310.pyc delete mode 100644 backend/landlords/__pycache__/models.cpython-310.pyc delete mode 100644 backend/landlords/migrations/__pycache__/0002_remove_landlord_name.cpython-310.pyc delete mode 100644 backend/landlords/migrations/__pycache__/__init__.cpython-310.pyc delete mode 100644 backend/landlords/models.py delete mode 100644 backend/properties/__pycache__/__init__.cpython-310.pyc delete mode 100644 backend/properties/__pycache__/admin.cpython-310.pyc delete mode 100644 backend/properties/__pycache__/apps.cpython-310.pyc delete mode 100644 backend/properties/__pycache__/models.cpython-310.pyc delete mode 100644 backend/properties/__pycache__/serializers.cpython-310.pyc delete mode 100644 backend/properties/migrations/__pycache__/0003_remove_property_amenities.cpython-310.pyc delete mode 100644 backend/properties/migrations/__pycache__/__init__.cpython-310.pyc delete mode 100644 backend/properties/models.py diff --git a/backend/__pycache__/manage.cpython-310.pyc b/backend/__pycache__/manage.cpython-310.pyc index 9aeb307aa9411b276b36385bd13fd09a20502493..0d7c870be826d05ef8c3ef17bf09bef03cb3a467 100644 GIT binary patch delta 30 kcmcb>c94xbpO=@50SK71vNm#;GcoEg`k0=D?{G!Xq5L?8o3AjbiSi&=m~3PUi1CZpd#E{P)A diff --git a/backend/amenities/__pycache__/admin.cpython-310.pyc b/backend/amenities/__pycache__/admin.cpython-310.pyc deleted file mode 100644 index cb86d054b55f5ba34f1bb3a0d8d5b92e224f8af2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 193 zcmYj}Jr06E5QS&)C&mQBHE7t@!l);(v9mD?v*5z+4q-9IBY7oSE3aVXK;=u`dwG-0 zM{&Fc*791F2k!Sc{uS{!vO~gwfWm?k7a;(nGo-T*Um+F4LZLJMlt#k_Yvn7-3i5qt z@@@pYpqq0|@!iTBIV~O4%IZ=zgeLHZY>l<_khv-v?NKVHz3Gh(azbbAb6D*h;oa)J KU|1Nz3H$(JDlW1B diff --git a/backend/amenities/__pycache__/apps.cpython-310.pyc b/backend/amenities/__pycache__/apps.cpython-310.pyc deleted file mode 100644 index ef088adce276831c9c39648e86fe0b6471245edb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 437 zcmYjNy-ve05VqsAO8RrfV-RE^FjNWM$+DD{+AC>$k(V>r zimEUPtdr7!)Hbql{7p>lN zfg(KbR6^hTAdTNh2j3UzgDGWNnyt{t-x*LA-;vfzYx9(@#bzffNdKm%qONUHKQ{~| u{OarwAtE7-Xjfas%uNn|@!TfxvpoBMY9CFo=Az5~`B#2v)(cL_oc#cG^K32v diff --git a/backend/amenities/__pycache__/models.cpython-310.pyc b/backend/amenities/__pycache__/models.cpython-310.pyc deleted file mode 100644 index 21c445b26d1ebe0277360ed947b4c5e065f514b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 703 zcmYjPy>8n;48GI9T)SzOyn_~bZGobQ;np338U@lx%i(O&vgDKGoMbdEx;1MaBrnqk zxV2MWp-an?jKBo=iR2yi@uSpCCL>1nJI^-@&e$KDoSR3?o&l zGncc^3|#OY7<~mv7mQaQlrsKG$$Gb@<-C}UtFI2lyfTsKrxwDDgrN3=LW;*i+#RH{GYO$> zyNTypsTTz*&=Z@F7LCRtuW#_EU0Vp}v)lRX<0ljCPhU%4QoUDl25)T5{vSSh8xch8 zHNWCxr>`!Pz{F6J$|i-?Kz(_7AuT=~6b_937b~}KJ0q~0)0V|V?*~C2?AH5@kJ*@C Gx&HxH$gWNR diff --git a/backend/amenities/__pycache__/urls.cpython-310.pyc b/backend/amenities/__pycache__/urls.cpython-310.pyc deleted file mode 100644 index 4ed9dc44c1e0478e5a8bd10e010240c8e5227e7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 343 zcmYjN%}N6?5KeZp-KE`vZ{WF?<|s%hf>-e(c-TvcX1Yx`*(^zFsaIb_kG_OY;1lHP zsjuKcoG5|=GxL4J@Xe2%PR9i8-L>mC%pZyTw*tupx?fKO8!{`8s6b{kvO$E+ktUMG>Pq==t6(3;mkvaLA50!k z2WJOx;lLNF59fbuHFQhf!=7Ky$~ci*(YJQKbK1KM^g`k0`~ayG!Xq5L?8o3AjbiSi&=m~3PUi1CZpdg`k0`b1=G!Xq5L?8o3AjbiSi&=m~3PUi1CZpdg`k0w%4jG!Xq5L?8o3AjbiSi&=m~3PUi1CZpd#sRtwx literal 0 HcmV?d00001 diff --git a/backend/api/amenities/__pycache__/admin.cpython-310.pyc b/backend/api/amenities/__pycache__/admin.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2137c86e35a677d9eb47d526379c38bc606334fc GIT binary patch literal 197 zcmYj}K@Ng25Jjg|6Jvtm8n~brAnFO+xN}#SqJ_3YD8_gsuf*1sS8(OP%AfrI^Cy`{ zNwNW!+%@%q`#p_+NghXbOgRuxIPl^k1fV=aw)pTBGBK_+dK*re9Jko$aHYJWF!Z+U zC%_B(CD$C^Lfyz4<*Cum)Vd|Kkv~*touh{;b=8`HN_SRiZ-O1HiE75@-E&+Qp78F> KUNA6D@DzRnmM`f5 literal 0 HcmV?d00001 diff --git a/backend/api/amenities/__pycache__/apps.cpython-310.pyc b/backend/api/amenities/__pycache__/apps.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..978070b756f8fd3c2252b16b456495261c00eab4 GIT binary patch literal 445 zcmYjOy-ve05I)B#3Z)ei>If2RmgE6Is09hOE^JvWx91eMP8{k+h_0~m0=xmQLt=MM0s)zUiWQ8(9bkm~6_6|T!ixyw zdq_K9lm#jChoh#sv303u)8N@BM#hlX4M->`7y?zZf@4&~$O$F($D>NsdZm@yf~?PQ zF6)`iaFSIPm2ug%o{id-z17O#x-T1@$={lB+VP1HH93UvT_LEXH9_wQ@z_eUi=3b; zWouSK5|AhZl8-~|1D1z0+(vv~iZP8v@MwdMDN~dqN>{trtzNVC9r_k| z4z8K<3SAOF&gC530mKIo9{{qROhydl;qPYkh$rbgi4c88br)!W0XMAT1?TJ=g8;$< zgHZ7@_!AZ(L_b&-KjA%=ai3H*DC3p{Pvwp95~GS099R*ku#A8c;eAlVh!XSzh!71R zhUCDC6b4A2`oWh5iRp0R$O1%6b?oiNJYwrihsR^N3Bqw&H>yYZ3jj9K!N0mvu4 zL3Ih5->hWF%x5@sWM!r3bjqy$vE~f(|F83PU8%gPOKH?fZfej@+S`1qjj4a;3%T4V z3%T6t9IJ6QtsLH_?Wfzl9|+;vMu?Oe251ug>%;33)7RWA8~RiT>Mn#I34!IEA%85y zT_?>k(@?n|-mGQwRVxF{u*Y+?YkTa^K)Ge3x2>*iGr?rP!HF4DEJQ=!;Ao_jo%3@( s4*KXUi~JBu+^(L&;@B?!POJ3k6C!$loFU3Nj}zX1ogkYB~qq delta 30 kcmZo+ZD8fj=jG*M0D>=h=^MF=7#Zy**DJ5VgJDWR;J^4X8sA_Yg%$w1@_YVw=d|N#ev_Ted?KS}p=5m*607sd5Dh z#2AFcNHg=^X!Pde#^V7&V`rP?JLZo<{#%XY5hH`h9*I}Q6hxC$T>{9y8Q>VxwT z(m~90m(Ks#!f)rIgT1(!^z%?{WVdqDT`(~))XViFD#gGNhq8I@%eW}DJj5oPn;>-Y zjf7$8DB<%$tepj6-9{Q%%B@p6qN?!P7`GSq@?i^|64GlSEp$3*h@woK`a^DJ)~TI= SdATN*Pmah59q|!uzP|~CowN2C%-7A XSg$NIwY<294XELk2uNn~eU_5|w3ZcN delta 45 zcmdnOy@H!JpO=@50SJy1rKhoMrKpO=@50SK71vNm$xWMuT4{FG6hsUUMQ7t<5~dPfKn delta 30 kcmZ3)I**k*pO=@50SGt~(>HS8WMuT3{FG6BvH;U00B0@-asU7T diff --git a/backend/amenities/migrations/__pycache__/0002_amenity_property.cpython-310.pyc b/backend/api/amenities/migrations/__pycache__/0002_amenity_property.cpython-310.pyc similarity index 59% rename from backend/amenities/migrations/__pycache__/0002_amenity_property.cpython-310.pyc rename to backend/api/amenities/migrations/__pycache__/0002_amenity_property.cpython-310.pyc index 765965948266e59dee76b0c31ed7afbe5532b93d..179ba828e538cfaa0f245078da416dd17ab6a027 100644 GIT binary patch delta 33 ncmbQlHjRxtpO=@50SK71vNm!nGckrw)@M>@D#)B1!n6+nXG#YT delta 30 kcmbQnHi?ZppO=@50SK<9r*Gs|W?~GUtk0xAIf`iy0A_**K>z>% diff --git a/backend/api/amenities/migrations/__pycache__/0003_remove_amenity_property_amenity_description.cpython-310.pyc b/backend/api/amenities/migrations/__pycache__/0003_remove_amenity_property_amenity_description.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6d025523b311431a95b8c4c0bc09642b93dee27a GIT binary patch literal 691 zcmZWn&2G~`5Z*s0w%bZv3Wx_l%B7Crh7c+jdZGu~lP@bLGYNLqUb9YsoZ*^tpMh7} zD<|FnwJI=cQyPh}c07NY@0;1RM@K0mIlfvgesadX2WMXtIj3~Gr=)-ZH>~D4uSG66 zJ7XX~eq|t$SMrO@C8!HFiGENmn+TuQ<boxvW z{#Linw&>PdKmHr>@m;8A99Zgxa$fcN0I-|8vJF#QQbjZ~MYE#h#+Zq839)uzg+5x8 zXyBZP#JX>wwNJICu{Q?EKGgcdrZAyt@BmwE0Gl~cbRsl3c!#z9h;Kq0AHN3ZEhj@R zxx~-wA(ICF!&1L7_bA{8b?vhEw#KZsRbg;ZtSppW(JZsJG{%0)X2pC(fLYO&*)TZ) zXZIJB(UzWT*Hid!S^oli%Q$JbF1(Hro$d*#mg`k0w%4jG!Xq5L?8o3AjbiSi&=m~3PUi1CZpdg`k0w%4jG!Xq5L?8o3AjbiSi&=m~3PUi1CZpdV+FO!!F=pdm}ql#c$eUzvL??zQCy)+CxX$ zSfY_6QE1697UPzfVqiyuxY^f zE#d>)ce*Y0kvwWoopHD~Cjy)Jo$jr3^r5$AcftVL^j5pS(4_BW7X3LlOU`+BxEhP4 LnrSMg@=^T&;$%eG literal 0 HcmV?d00001 diff --git a/backend/api/landlords/__pycache__/apps.cpython-310.pyc b/backend/api/landlords/__pycache__/apps.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..525f8595855b80771560c6eae76aa5f0731976c0 GIT binary patch literal 445 zcmYjOy-ve05I)B#N=qvw)D?*}OY#69)Pe*H>cW=Aa(hlm>%<{$gy;$@FTfl0mAo?X z3QU~a0zK)@_xs(C&0x?2BKE$_Kj{7R#vz4djELq2YuoKEFzsVYoqg7j|! zvTB>uFAXOce?ogiB7%@bZ0noE+#Ttft@d$zJ!L+YIaKy1hCC)JR zIFLa}GJ??u#0d|-BOVI!jbtJ3%+M&>fCn037nPa|X#u7CxvdPFSLarkxmQ0P9Uyx! z?N1N_WtgKZ;5Z{9yzKCRlUtlcfV&(50FE0RfhOSHTaqQfdku?kgKVqOCJ);5&hy^7 z|AY^o@FDPR@a{pRXM8JrzChUvj^SXbi%*#1QX78y*`Kdg#Z@gfe<5w4y^?*UQm93> z-0b)zV!H5ip{k{Hom?`t8U-eSHREf)@dEt1TwJhPR<0vTR>;wgiz!vC6qLFirBK9L zdYn>vRWo^~iEAjO$0qPWdQC~8{V@A^?}w>FxBpv6qZ8E zi!Z_r&S%rJ)BTTAdUQNJIdsFb>8JDKv*}^WXTOkn2}w8N&)dmTmts=tOD3T*E6oeb z)MBzOq}11woXuB|-Gr@+36!*HhXreY)yC@^<1eniQFa$Zj6#y)6mR1J%xwZ6PDvQV zxUoAObzH(PVRt>|d0WZdJ3iN{GDSXSb+sI~+Z%W&sB!$CZi`-l!o_deUcJLUd;}sz IDc&Lf0D{Zv`v3p{ literal 0 HcmV?d00001 diff --git a/backend/landlords/__pycache__/serializers.cpython-310.pyc b/backend/api/landlords/__pycache__/serializers.cpython-310.pyc similarity index 58% rename from backend/landlords/__pycache__/serializers.cpython-310.pyc rename to backend/api/landlords/__pycache__/serializers.cpython-310.pyc index cb697b6c3d5863bc41ce07077d09b44f7d33d3e3..f452d699173259d3d4e89f15c9eda50d69126428 100644 GIT binary patch delta 35 pcmcb>ew3X%pO=@50SK71vNm$BVq|ohyp2(fIk6yf^DD+@i~yDj3A6wJ delta 46 zcmX@geu14kpO=@50SKa1(>8LiVr2B4yp2(fuOKrgC%-&CDKR-aH7{lJea2^u03&t| AlK=n! diff --git a/backend/landlords/__pycache__/urls.cpython-310.pyc b/backend/api/landlords/__pycache__/urls.cpython-310.pyc similarity index 60% rename from backend/landlords/__pycache__/urls.cpython-310.pyc rename to backend/api/landlords/__pycache__/urls.cpython-310.pyc index e2f7caaa725836009bccfc3aad26855ae3f095c1..bd27afde8c75bc2d459e13a8b70ed7534c06a8d5 100644 GIT binary patch delta 34 ocmaFBe3h9ypO=@50SK71vNm#OGcsCFE@xC@PAtfryqeJz0EUPNHUIzs delta 45 zcmcc0{D7G|pO=@50SNpZ(>8KvGcvkOE@xEZE6B{r$uEyjN=(j9%}bfQfYB5H3`z|p diff --git a/backend/landlords/__pycache__/views.cpython-310.pyc b/backend/api/landlords/__pycache__/views.cpython-310.pyc similarity index 95% rename from backend/landlords/__pycache__/views.cpython-310.pyc rename to backend/api/landlords/__pycache__/views.cpython-310.pyc index 457ab5913f3834e0f6f673e470fdcb0d8762755c..56a045524f57c895a1716880d29cca04916fc1ab 100644 GIT binary patch delta 35 pcmeyS_e+mEpO=@50SK71vNm$BV_~$Jyo*JRIk6yf^L>`-LIA7a3LgLf delta 31 lcmeyR_f3yGpO=@50SGd<(l>IiV_~$Iyo*I`^Anb7LI90<2_*mk diff --git a/backend/landlords/admin.py b/backend/api/landlords/admin.py similarity index 100% rename from backend/landlords/admin.py rename to backend/api/landlords/admin.py diff --git a/backend/landlords/apps.py b/backend/api/landlords/apps.py similarity index 82% rename from backend/landlords/apps.py rename to backend/api/landlords/apps.py index 3beddd94..b08f29d1 100644 --- a/backend/landlords/apps.py +++ b/backend/api/landlords/apps.py @@ -3,4 +3,4 @@ class LandlordsConfig(AppConfig): default_auto_field = 'django.db.models.BigAutoField' - name = 'landlords' + name = 'api.landlords' diff --git a/backend/landlords/migrations/0001_initial.py b/backend/api/landlords/migrations/0001_initial.py similarity index 100% rename from backend/landlords/migrations/0001_initial.py rename to backend/api/landlords/migrations/0001_initial.py diff --git a/backend/landlords/migrations/0002_remove_landlord_name.py b/backend/api/landlords/migrations/0002_remove_landlord_name.py similarity index 100% rename from backend/landlords/migrations/0002_remove_landlord_name.py rename to backend/api/landlords/migrations/0002_remove_landlord_name.py diff --git a/backend/api/landlords/migrations/0003_landlord_company_address_landlord_company_name_and_more.py b/backend/api/landlords/migrations/0003_landlord_company_address_landlord_company_name_and_more.py new file mode 100644 index 00000000..b9fd3e50 --- /dev/null +++ b/backend/api/landlords/migrations/0003_landlord_company_address_landlord_company_name_and_more.py @@ -0,0 +1,48 @@ +# Generated by Django 5.0.6 on 2024-06-14 00:47 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('landlords', '0002_remove_landlord_name'), + ] + + operations = [ + migrations.AddField( + model_name='landlord', + name='company_address', + field=models.CharField(blank=True, max_length=255, null=True), + ), + migrations.AddField( + model_name='landlord', + name='company_name', + field=models.CharField(blank=True, max_length=255, null=True), + ), + migrations.AddField( + model_name='landlord', + name='date_of_birth', + field=models.DateField(blank=True, null=True), + ), + migrations.AddField( + model_name='landlord', + name='gender', + field=models.CharField(blank=True, max_length=10, null=True), + ), + migrations.AddField( + model_name='landlord', + name='phone_number', + field=models.CharField(blank=True, max_length=20, null=True), + ), + migrations.AddField( + model_name='landlord', + name='street_address', + field=models.CharField(blank=True, max_length=255, null=True), + ), + migrations.AlterField( + model_name='landlord', + name='is_active', + field=models.BooleanField(default=True), + ), + ] diff --git a/backend/properties/__init__.py b/backend/api/landlords/migrations/__init__.py similarity index 100% rename from backend/properties/__init__.py rename to backend/api/landlords/migrations/__init__.py diff --git a/backend/landlords/migrations/__pycache__/0001_initial.cpython-310.pyc b/backend/api/landlords/migrations/__pycache__/0001_initial.cpython-310.pyc similarity index 81% rename from backend/landlords/migrations/__pycache__/0001_initial.cpython-310.pyc rename to backend/api/landlords/migrations/__pycache__/0001_initial.cpython-310.pyc index 24e2e1af63901d908ec2f4fa0d406cabd9a72a25..df519f735399377ba357ddc2051c631e2f890f61 100644 GIT binary patch delta 34 ocmbOw&@aH9&&$ij00c~0SsS^ZvoZQj{>-MvoLG=KS)Khe0EL1H82|tP delta 45 zcmeAdm?glS&&$ij00h~mQ#W!yXJd?<{FzOSuOKrgC%-&CDKR-aH7{kd4EtvQCS4A# diff --git a/backend/api/landlords/migrations/__pycache__/0002_remove_landlord_name.cpython-310.pyc b/backend/api/landlords/migrations/__pycache__/0002_remove_landlord_name.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b81f37808abaea7c55209b8bc0e66c552fa5b197 GIT binary patch literal 530 zcmY*Wu~Ne@47DAnO+$My@d0dMXbLk2Ofb;_wlMhI$}LWvI3z6`Gpu|FzvPvPUtpjp zDY+KiN#`fYPfxZT3_^m&j?>u%CFHXPyT%b*qE|;4fB-clqY0(tng9dujew_U%3i&M z0ly=W|Al=dqAtwzyp&6A^J-eBcI_XjA_)b8*Xf)lp5m!r69a!|h&$jTX~*?$TDFL} zo{>2iTSDdfqtWO@=v*(gG%jchj^{E{*cxUQlo2&5yC`8CbzLADEQAY%!1~H4Joklo zTuD=R)(BLga!~nHtEyyp)9u}=%s#0rtqi!(7V2-i4^r-9y$Rp<@q^7&oY_De=(yEd#oL#Pah+39HiJal(5M|2FQtcLI_T8_hJY}Suer}C rqx>gWH`Q_ExgMlA(GFqK=x*{`g_~1N;DWQw^5^*Pq^kd<&kns`>qd!f literal 0 HcmV?d00001 diff --git a/backend/api/landlords/migrations/__pycache__/0003_landlord_company_address_landlord_company_name_and_more.cpython-310.pyc b/backend/api/landlords/migrations/__pycache__/0003_landlord_company_address_landlord_company_name_and_more.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b13d2c1514976d64618fad8f103003e562ec1f05 GIT binary patch literal 1034 zcmZ`&&2H2%5VrHPo21#c{0NCN2q~AQf-6ETAUM$roN}?eJKo*wI&rYGgIyJ8!fhU*0RmK# ziWao;3XhW41U&G+5byu?IV(4{jD{1XUvAh4%|io?%4QEe{+-}mb?b3G#GpT@bK_4)1p$Rg7s-u z^GevL5AEJWRSmDt7zfb8n0MzFs7>bEaEvuel$C#EQq;3{Zi9LyB|=Fj@1|4G^$Vw^ zkYLlkS(h9EZv|6RHZFBL&php>uTwO3FcUQheeNc!CdaZB+jRO|DJgipMN}iUZ|xh=53ogNet*j6suFpn7F;67 zrGnD%dX_h(lwS_1HiiXWNgcqrld==A121*hcn^_- Sjh=3X@{BrKj^Dm_&;JYbcpsSn literal 0 HcmV?d00001 diff --git a/backend/api/landlords/migrations/__pycache__/__init__.cpython-310.pyc b/backend/api/landlords/migrations/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4ab55b68235f35b0aa0b91217fc15b8ddaa22c17 GIT binary patch literal 167 zcmd1j<>g`k0w%4jG!Xq5L?8o3AjbiSi&=m~3PUi1CZpdg`k0w%4jG!Xq5L?8o3AjbiSi&=m~3PUi1CZpd2KczG$)edBGF%ytrVE_QwcqE_z literal 0 HcmV?d00001 diff --git a/backend/api/properties/__pycache__/admin.cpython-310.pyc b/backend/api/properties/__pycache__/admin.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..afa446991d4839dd34346acb80881a11a57bfcab GIT binary patch literal 272 zcmYjLK~BRk5M0Me6i{3748o!Q03cpaA#v-??QUDAc5K-}Rel3UzT_*XexWBe?S+wc zRx?`djGxc%fl)klyOHqFPc;iWrOb93}II$K2us~@GC)ZK{iLU&rNPbU#`2lTp z=4)t0t~5H+pT$iz@6iW}!?t-lT!z z55zmRuXK4)2k%HZ-)T!bee`G&zf-|j>rZN0ng2g&Iog+GZKX+&pv8r={1a MS*n?4FcS~*4^$jQnE(I) literal 0 HcmV?d00001 diff --git a/backend/api/properties/__pycache__/apps.cpython-310.pyc b/backend/api/properties/__pycache__/apps.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ff940adea21f2605b481d0f20fa125ff15431a33 GIT binary patch literal 448 zcmYjOy-ve05VqqKrKLp`>WajgC3%4gwIIP(A+cq#+@4e1I|1L6hMG#Qqh7^az`Kn_C|n7`pSw3 z;s=s;zA=lW)OV-W-k7>n%SG@U6GdZ!>_#XgDJT%ErUiqjh=CzW?1%S_v9j4H>Gmkw z3s{MIX)>5+l>w<;cCD7vc4Kap)UZ7hR%Q0DXqI+-!g(z!$+_=wjy0_gdY|*BR_H_I z9Aqh4z2O3pcp0F49AclO>Ed`h@iWdJO(pZntc1q=wE^XDnA|F@&2v5%i?ysF#}V@X z5zw?Qvo8%poNz^Vf+8U?P3X=yOPN1CY!z~wC^QV&|E>30_#vN+_d8sL`?&zvCnNR? Dg#vJp literal 0 HcmV?d00001 diff --git a/backend/api/properties/__pycache__/models.cpython-310.pyc b/backend/api/properties/__pycache__/models.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8396f8627a196e5ad9f09d790cce302d208b4739 GIT binary patch literal 1842 zcmZWp&2rl|5C%v}B4z5wj^o5mnxsjSRy|lRkjd0_>Q1JKC)2nWUNDdrmT7~e3P4We zQBU?vPVTiY&`Vwk*Pe9lt(SH|+OjeQ2jK2vcd^+07DcPoBsjW%oE-jLC*&{3ERO)0 z?{MlpTz~+TB%=wX1U&Gim-&g0G=V?{SuLrRbWPT?M$(|su&Ap zrt^O>bC}y^#y>DA@{u_@=y^8CCsNwlK=S;=Hpi86Dl~3IMb5Bj!U!8HA-NI2a-NAE zRV(Og?%*`{oY$c83h5{{+O|Oq(~L_tmV795sjQrG&%2@L-~_&k@OL9szLO#VKpgUk zH1l=jZNyJ`D)~SP^iUc&@!nbYD%>f<<3>XFd%le(V_9%urnvDsbf~)?4(4ulaO&r{ z7&0Tr^ql_Y&wRBy^MP)ngn3ALCFPsI)Mn(|JFd@YN@m`l^mo@51QYDsErsKO0G3ypU6Ki`bR}3`dM+zB_`{nfK>B*)E}o(7VrB5K0FaQ^!YgL-&7UV zT^nwXr|JQo{0OIZm1)v|Hu2k{XRT|%Y`dsFOPx!jo4d};wIU|YC4uf^$$~3rJVd#A zx>%keWgCoPP8jo8S#EQoQTQ)4?>k((nqT?nEB z@u7;tu7J=(m5yCSZEJyFGaU=N{??hNr{Yy^#7I>4v*AF1DvC_oXu!=;MRpb)!74#r z8*cE<@%Kd`1<$L%;;}HAaR&$iw)x6+NwtHoK$=%=W5Zv5eqBjdPg7+u)!01~#blbF zlrT}>xa+sB&^HuPVjXTu`~-KEt8`tvRxzPDW8N0(xE_yU&rOaYI@s|#b!e$6=uK*NE zu|z2W2`mXnkS$56q(IMH|A%Az%YVe?I2W<0sF$-(pn)!H#%S_quhLxdQPu<1cKikWG7 zt;oZP2cO>SH&NH;0s!yUmmHx!t~0*Ro>6weGXuS@N;5MAF1WDn$uB~O7wU35sDm%)HzxXz_5c6? literal 0 HcmV?d00001 diff --git a/backend/properties/__pycache__/urls.cpython-310.pyc b/backend/api/properties/__pycache__/urls.cpython-310.pyc similarity index 56% rename from backend/properties/__pycache__/urls.cpython-310.pyc rename to backend/api/properties/__pycache__/urls.cpython-310.pyc index b1a9e1ec0f3bcdb63bfb626ee89325dbcf2f2b5c..3c4dcea2253f2d58f9d360d371d9cd66baac78f4 100644 GIT binary patch delta 34 ocmcb>e3Y3xpO=@50SK71vNm$ZFf!Uq&R|qyPAtfrJcrQ)0D!Uw=>Px# delta 45 zcmX@ge1VxepO=@50SI2Yq;2GmVPtfloWZEZSCE;LlV2X6l$e~InwK(pBBKca7jg}C diff --git a/backend/properties/__pycache__/utils.cpython-310.pyc b/backend/api/properties/__pycache__/utils.cpython-310.pyc similarity index 68% rename from backend/properties/__pycache__/utils.cpython-310.pyc rename to backend/api/properties/__pycache__/utils.cpython-310.pyc index 983d4ca21a0e4f3325815ee38792db938d070186..da72adee9a31ff097c1e24c2fb6bfe2f09ccd216 100644 GIT binary patch delta 33 ncmey&@|}e%pO=@50SK71HgaucWVD@pfKiP(u^@BuQ^r03i>V1I delta 29 jcmey)@|lGzpO=@50SLBpO=@50SFYkvePbZIaGj|5dcEG B4I2Oe delta 40 ucmaE$bVG?ZpO=@50SJBwWu=|n$ZO5QXgS%FMQw92%TsPffz7c3%!~l(V+zm! diff --git a/backend/properties/admin.py b/backend/api/properties/admin.py similarity index 100% rename from backend/properties/admin.py rename to backend/api/properties/admin.py diff --git a/backend/properties/apps.py b/backend/api/properties/apps.py similarity index 82% rename from backend/properties/apps.py rename to backend/api/properties/apps.py index d434e067..a33f24ba 100644 --- a/backend/properties/apps.py +++ b/backend/api/properties/apps.py @@ -3,4 +3,4 @@ class PropertiesConfig(AppConfig): default_auto_field = 'django.db.models.BigAutoField' - name = 'properties' + name = 'api.properties' diff --git a/backend/properties/migrations/0001_initial.py b/backend/api/properties/migrations/0001_initial.py similarity index 100% rename from backend/properties/migrations/0001_initial.py rename to backend/api/properties/migrations/0001_initial.py diff --git a/backend/properties/migrations/0002_property_amenities.py b/backend/api/properties/migrations/0002_property_amenities.py similarity index 100% rename from backend/properties/migrations/0002_property_amenities.py rename to backend/api/properties/migrations/0002_property_amenities.py diff --git a/backend/properties/migrations/0003_remove_property_amenities.py b/backend/api/properties/migrations/0003_remove_property_amenities.py similarity index 100% rename from backend/properties/migrations/0003_remove_property_amenities.py rename to backend/api/properties/migrations/0003_remove_property_amenities.py diff --git a/backend/properties/migrations/0004_property_latitude_property_longitude.py b/backend/api/properties/migrations/0004_property_latitude_property_longitude.py similarity index 100% rename from backend/properties/migrations/0004_property_latitude_property_longitude.py rename to backend/api/properties/migrations/0004_property_latitude_property_longitude.py diff --git a/backend/api/properties/migrations/0005_property_amenities_property_available_rooms_and_more.py b/backend/api/properties/migrations/0005_property_amenities_property_available_rooms_and_more.py new file mode 100644 index 00000000..a7d65658 --- /dev/null +++ b/backend/api/properties/migrations/0005_property_amenities_property_available_rooms_and_more.py @@ -0,0 +1,74 @@ +# Generated by Django 5.0.6 on 2024-06-14 01:04 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('amenities', '0003_remove_amenity_property_amenity_description'), + ('properties', '0004_property_latitude_property_longitude'), + ] + + operations = [ + migrations.AddField( + model_name='property', + name='amenities', + field=models.ManyToManyField(blank=True, to='amenities.amenity'), + ), + migrations.AddField( + model_name='property', + name='available_rooms', + field=models.PositiveIntegerField(default=1), + ), + migrations.AddField( + model_name='property', + name='bathrooms', + field=models.PositiveIntegerField(default=1), + ), + migrations.AddField( + model_name='property', + name='bedrooms', + field=models.PositiveIntegerField(default=1), + ), + migrations.AddField( + model_name='property', + name='description', + field=models.TextField(blank=True, null=True), + ), + migrations.AddField( + model_name='property', + name='first_deposit', + field=models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True), + ), + migrations.AddField( + model_name='property', + name='main_image', + field=models.ImageField(blank=True, null=True, upload_to='property_images/'), + ), + migrations.AddField( + model_name='property', + name='monthly_deposit', + field=models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True), + ), + migrations.AddField( + model_name='property', + name='pets_allowed', + field=models.BooleanField(default=False), + ), + migrations.AddField( + model_name='property', + name='property_type', + field=models.CharField(blank=True, max_length=100, null=True), + ), + migrations.AddField( + model_name='property', + name='status', + field=models.CharField(default='available', max_length=20), + ), + migrations.AddField( + model_name='property', + name='virtual_tour_link', + field=models.URLField(blank=True, null=True), + ), + ] diff --git a/backend/api/properties/migrations/__init__.py b/backend/api/properties/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/backend/properties/migrations/__pycache__/0001_initial.cpython-310.pyc b/backend/api/properties/migrations/__pycache__/0001_initial.cpython-310.pyc similarity index 80% rename from backend/properties/migrations/__pycache__/0001_initial.cpython-310.pyc rename to backend/api/properties/migrations/__pycache__/0001_initial.cpython-310.pyc index d2726a47dc93ee27e325d14d0bafaa8ca6edc1d8..caa276f9fbf42c8de595d5a5162d25066c1bb3d4 100644 GIT binary patch delta 34 ocmey!{*0YFpO=@50SK71vNm$xXJYi9{F+IPIk6yfvOM!80GL1taR2}S delta 45 zcmaFH{*j$KpO=@50SM+Aq;2HB&%_ut`8AUoUqNP0PJVfOQetv;YF^4@5#~z(GHVW< diff --git a/backend/properties/migrations/__pycache__/0002_property_amenities.cpython-310.pyc b/backend/api/properties/migrations/__pycache__/0002_property_amenities.cpython-310.pyc similarity index 55% rename from backend/properties/migrations/__pycache__/0002_property_amenities.cpython-310.pyc rename to backend/api/properties/migrations/__pycache__/0002_property_amenities.cpython-310.pyc index 1a9358ca3c821582994fb17c455b299db16d5c1a..fd8800926104707e4820e2878c4607ad181a67a6 100644 GIT binary patch delta 34 ocmeBV?PcZ8=jG*M00Jhhtc~0|7#X7`A7NBuPAtfr{E~420DVyi{Qv*} delta 30 kcmeBW?PTT7=jG*M00Pd$^o`s*7#YJRA7NCR{El%x0AmFQ`v3p{ diff --git a/backend/api/properties/migrations/__pycache__/0003_remove_property_amenities.cpython-310.pyc b/backend/api/properties/migrations/__pycache__/0003_remove_property_amenities.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bff94bc03e5aae7518c29e151243e79d36bacca5 GIT binary patch literal 554 zcmZuvJx{|h5cO9|8d?b!*xAC+RInn%1QQj4EsN#WZgJ|wA!$LKVdaPLm%K9Z7Z@n# zl+q$`l25*O=lAYx+io{PVB|O(-(ZB^eXwl|f(uyn5jcq?HYmp_#^?%3BIyf~RN;&~ z)09YdhvMJ^>QIbblKa-T<7th;t~I z8wL9g=MQsXe36f&Dpes>F#_3&z&LLAR^|3lU20{di+oF~dEZdA2l>W*isatrD#>jo zj2ernmAV$iBq_Bq_9+>P(G+MCQR-wfRX*ZXXC-c(%HNbNCOa_HWf82lN|&!&5jdC5S~AKXT0{>OLhtQB?Jj+E;~qp8$u*OL`VTe$>!oqtL^Ibw%s#5bhj6b zI009mc>)f3lRQITbMh-hN|fpu+vAN8Ep@y4tDmX*s@$^I>v*`1-_6e6C!Y70yX>wA zFAs3*TX=v6zVLE?=;y&O@V%cr2q1jxLCE}R_$C~N5dG$*trgmOX<$1!pD1d$EVOOs z5}43qr`lat@bUn+zUO-$^M*cn!vK5;Cc!Xd(X<5^l(naO(1JGXEdz*`8$3Zgh7Rm6 z{T;OXLA3Wl^Z?NWBe$S`De?gE4x)!}1XxB z<@!0IJ&g4Q?k_LJ`l`}=4cFnDOPSq3{Gj^!I^#)q*oSYC_M0|&vf&%aPiW2xZaCBS zHm>i8V!6Cvq=pxyRI+5sEVckJJyyJQ?Q*?a>z#j!{&yM&fh{$2U^|E`CKY7kO<2{! zrk=h$+-7mI{xHUFjRY-bHZU>`aY)=?kOI{$To>M_e zLC08iC#Nq6a4bx#V;2SiUJx{yu$O~Po%LO3X;?+6Et7dEBn4um?dP&E=VGz>uI-l0 zXhMaM&lxh1#QE9F_cnJuVEJFjb?;DSKgRvHP&*w7zv7JMPw+AEXqF7HgLu&*|Db z{{7dV*XC|O>*wPSPu+1Py5sLx*}2SFmdhy>I0`cfT+?EbmE4hUSu@00 z^A=?|&Uc&P-A?EZwBfg&JVFaV))YG_7s|beZQS}b9g`k0w%4jG!Xq5L?8o3AjbiSi&=m~3PUi1CZpdg`kf@5>C(?IlN5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;!Hmenx(7s(x;M zR$@+ST4Hv7N@j6lUb=okW=>9ixqeb&a&~H7ihg22rhZXsS!QZ^v3`7fW?p7Ve7s&k Xg`kf@5>C)9iutV-N=!FabFZKwK;UBvKes7;_kM8KW2(8B&;n88n$+0!0}# z8E>&BrsQVk`DrrU;!DX&%uCPLOU}rYMX<^nvWB$f~vN%avDXq;eU5MpImXKoqwCj(0 zWs~ZqW(eYsXHQT>B%~2N_~tQl!)_m+TL-?I&;IY*YW`zfblEO&<Yx15ViL^Y0_5WLp|o2OL7NKgS}~$h#Ng2^%qne zIP#Z#gcE;(6EoRTWmbNAGh=(6pVsvIU54@P$K~u7XY4m6+Yw>%3YU9^pqS#CRXpdM zc%XwS%)<>2byUT9%-I{JA{E~-6$3AmuVJ35WWt8&A3V>7+$WV$pdGSw(kvC!4btq) zng!TqHKkqK@i6~AR)OVQu{?mVj37o#6u%AfbdzTfc?Vfn1uDGd`3~|PDMH>?iArx+ zzN<1+)bYtjxGLZp=XXpkP!%*_(FBs2DwxToZqAYStckFwF)56nrw;eaQSPj}S!kav?rrch<6Jw#6*Y99u zLn@?4hm)hjnI%{34%Hu@8CNvL6}+t*n1ekjKr5eE*%bBM_m5=*=S2l=xjVIh z1tnx-_vs3H_!jI@8Y3jQ9K9uD`+T4G=nFQT(_!X2szhVVNL{pIAE75B*Zyv9)SA+& qenOpl+Y5N;k$fM2Aon(xZb{fEA{{<^(HiuUegl^w^cV?w8vX;(SJ%@3 literal 0 HcmV?d00001 diff --git a/backend/api/reviews/admin.py b/backend/api/reviews/admin.py new file mode 100644 index 00000000..8c38f3f3 --- /dev/null +++ b/backend/api/reviews/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/backend/api/reviews/apps.py b/backend/api/reviews/apps.py new file mode 100644 index 00000000..c67f4b29 --- /dev/null +++ b/backend/api/reviews/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class ReviewsConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'api.reviews' diff --git a/backend/api/reviews/migrations/0001_initial.py b/backend/api/reviews/migrations/0001_initial.py new file mode 100644 index 00000000..ec6bd80e --- /dev/null +++ b/backend/api/reviews/migrations/0001_initial.py @@ -0,0 +1,25 @@ +# Generated by Django 5.0.6 on 2024-06-14 01:51 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('properties', '0005_property_amenities_property_available_rooms_and_more'), + ] + + operations = [ + migrations.CreateModel( + name='Review', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('rating', models.PositiveIntegerField(default=0)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('property', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='properties.property')), + ], + ), + ] diff --git a/backend/api/reviews/migrations/0002_initial.py b/backend/api/reviews/migrations/0002_initial.py new file mode 100644 index 00000000..df40c203 --- /dev/null +++ b/backend/api/reviews/migrations/0002_initial.py @@ -0,0 +1,22 @@ +# Generated by Django 5.0.6 on 2024-06-14 01:51 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('reviews', '0001_initial'), + ('students', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='review', + name='user', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='students.student'), + ), + ] diff --git a/backend/api/reviews/migrations/__init__.py b/backend/api/reviews/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/backend/api/reviews/migrations/__pycache__/0001_initial.cpython-310.pyc b/backend/api/reviews/migrations/__pycache__/0001_initial.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ff5794ebc05788bfc7d79009893f9ef80f95f4dd GIT binary patch literal 967 zcmYjQ&2G~`5VqG&;y6ivphCb62?4pp<-h?6p_Z1S3R)rBQ!cAbW@6T{y6bjLaEGZSVq)}oXuFHAF2fN3$d zzT3;<*rQ$KB(TadWZ(`xV6i*&v5_=w7HlN}xb!rj39XesVGxk54Q&WlE@>UoLh^Sj ztw&l1yGbu;B^${mY{2G1+f^9;2$Fxt@2+u9vnN~B@rNqL#+}+)M!LJQV zE;7ueb=)#7giOUKMXr^~3NCWsnbK&QpKu}Z!Y~O(h8-XFebW{5Qt`1yQ6iYmOv_B@ zC7AR){I1%%-G~sm^E=n@jk#lvy1%L_G zfG_Xf)G}Bbsl>L*IrRZcG^|u)@atR?i76DP{cRKQDm~{Wn<|h6#ffGzP1Qv-65}Z$kHkzyy6RUE-HdBQ-G9!ns~pUh+WrtN+QmZ> zf#Wmg`B#2}xjSsb-Ei-_?2rF9xT?tq9J@ZS?-o?*nxYTD;PD z-PzG}I(?q&M)$g?C=ho27O?5N)~BA<-{o1g?XdlPbO9@;P;{^z-k^PKXw6_P#5^H1BNa=GLMdoXqcxWR_NEHrj4ZGzcw z25{~!Yo&AJbJL<;HE;38`cM|l%2)w&8xDYoS{t0rF3)DKUfbAga8LJl);^)?LH&A{ zel#_vwJD1Vm&MwE?&zL$qpQkXr}JX5CJbq@(dnMD^lot}k@w<2Ub4Aq-P3SO>yAl< zObH0mv5o%6htY?DhuS;vJL{>-4o`M$ PzT~dETU{uQ__6#4+*rl3 literal 0 HcmV?d00001 diff --git a/backend/api/reviews/migrations/__pycache__/__init__.cpython-310.pyc b/backend/api/reviews/migrations/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..931458c27c897c9db838c68fc9328aaeadc21631 GIT binary patch literal 165 zcmd1j<>g`kf@5>C(?IlN5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;!HAenx(7s(x;M zR$@+ST4Hv7N@j6lUb=okW=>9ixqeb&a&~H7ihg22rhZXsS!QZ^v3_o5dQoCYW`16= ietdjpUS>&ryk0@&Ee@O9{FKt1R6CFj#Y{kgg#iHT{3!zf literal 0 HcmV?d00001 diff --git a/backend/api/reviews/models.py b/backend/api/reviews/models.py new file mode 100644 index 00000000..3ba1d986 --- /dev/null +++ b/backend/api/reviews/models.py @@ -0,0 +1,13 @@ +from django.db import models +from api.students.models import Student +from api.properties.models import Property + + +class Review(models.Model): + user = models.ForeignKey(Student, on_delete=models.CASCADE) + property = models.ForeignKey(Property, on_delete=models.CASCADE) + rating = models.PositiveIntegerField(default=0) + created_at = models.DateTimeField(auto_now_add=True) + + def __str__(self): + return f'Review by {self.user.email} for {self.property.name}' \ No newline at end of file diff --git a/backend/api/reviews/tests.py b/backend/api/reviews/tests.py new file mode 100644 index 00000000..7ce503c2 --- /dev/null +++ b/backend/api/reviews/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/backend/api/reviews/views.py b/backend/api/reviews/views.py new file mode 100644 index 00000000..e69de29b diff --git a/backend/api/students/__init__.py b/backend/api/students/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/backend/api/students/__pycache__/__init__.cpython-310.pyc b/backend/api/students/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9d8ea4c55e94da2a4d954abd8773e9e0c44c8fd0 GIT binary patch literal 155 zcmd1j<>g`kf`49ixqeb&a&~H7ihg22rhairX-aBdNwI!>d}dx|NqoFs YLFFwDo80`A(wtN~kh#T7K!Sw<09V*0IsgCw literal 0 HcmV?d00001 diff --git a/backend/api/students/__pycache__/admin.cpython-310.pyc b/backend/api/students/__pycache__/admin.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..76d6fcde7bf620b0b640022562280231cc4397e8 GIT binary patch literal 196 zcmYj}K@Ng25Jjh`i7~-&4L0-u8ubKj+_@`E(L&oH6k@!K7w}4KU3mo;#(|YT`Tyrn zGLPbT1+4F*F8AE8ar`UdabSmp0|A8vC(c3uMkh#TZ@xk*hJ`|B{4tG&HCD=BC@aW! zt;yRF@Pu~GHN|HmujI6JR4J=VRTG-PAF?sl(oN>7sI^C_8Y4s3qxM~p6FqD0!*c5g Nd#iVXd0}KH@B`rfF%kd( literal 0 HcmV?d00001 diff --git a/backend/api/students/__pycache__/apps.cpython-310.pyc b/backend/api/students/__pycache__/apps.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4dca305d8f715f2b26d7cccede910e3610f42407 GIT binary patch literal 442 zcmYjOy-ve05I)B#N=wUtx+1Y=Np^%#3leNyx@EE4o>S5~ai|j^y23-S@BqA$S0-M8 ziE|r7PrCE{e)nTD8V!JG{ISX3>HYG?F@T?Tv~A3Np)~G>vMv(amCWLvi-f3Tsf2I?A*iC&ULOka)Jok&&QayE z)s2vZBXSSqLLd8tZJ$Qli=V6X(UdAJ&01>8-xw?`jgr=d*5)}~$mK>=n9>00-vDIP zHmP5>oKXDz>w}Efxv;P|(H2*g)x;|`h<1c4D;1I_A7gBw0 AApigX literal 0 HcmV?d00001 diff --git a/backend/api/students/__pycache__/models.cpython-310.pyc b/backend/api/students/__pycache__/models.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e76d69bc8af3e524c796502b172720d65bf9581e GIT binary patch literal 1004 zcmZ8g&u-H&7`NlJO}n(s*x&$ML8^q-7nsln>!wL;f|XrzvE15gvpRNXCyeb1*S!Qc zcpgr^a_TE^fzQb{CM@~O@8|EoKSy`F9R%yyx5e2{g3vEd9?eGZh|J@ts9cIfp;nv-2~}crETA9<6F-= z>+XNN2fPo~9f+I&Ugv8(2Hu6pk1F2dUhnw^Ptwg9N*{9!jjp@axG1?$#qmeqZmF`1 zQmpxP{z3t*1EM!*&-{-!uJrr(OL?o z>Im)3Qg}w$C*k@>OkI7{Ue>y1eK#)gHPeSJ_fE&7ljGf^5#2u=z1wsBlhKFM!;{fo z&Bx!7c>`jD&u5&TW^*NI;iG}8wWokBDW>V_Q;e<^WQ1*~5v*GRaS}^txeQSAT z{BPsmvwaRCLLrH9j1%00osfjYBnc861`)0-j|UCc=I0PzZ}Ew#?)d2~pK4W@Y_e4i hwN7B*M@5z6zj|x*5)>}luBZ4K`vRIEVie;|@)zpL8%O{E literal 0 HcmV?d00001 diff --git a/backend/api/students/admin.py b/backend/api/students/admin.py new file mode 100644 index 00000000..8c38f3f3 --- /dev/null +++ b/backend/api/students/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/backend/api/students/apps.py b/backend/api/students/apps.py new file mode 100644 index 00000000..133c1998 --- /dev/null +++ b/backend/api/students/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class StudentsConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'api.students' diff --git a/backend/api/students/migrations/0001_initial.py b/backend/api/students/migrations/0001_initial.py new file mode 100644 index 00000000..849a2f8b --- /dev/null +++ b/backend/api/students/migrations/0001_initial.py @@ -0,0 +1,47 @@ +# Generated by Django 5.0.6 on 2024-06-14 01:51 + +import django.contrib.auth.models +import django.utils.timezone +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('auth', '0012_alter_user_first_name_max_length'), + ] + + operations = [ + migrations.CreateModel( + name='Student', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), + ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')), + ('first_name', models.CharField(blank=True, max_length=150, verbose_name='first name')), + ('last_name', models.CharField(blank=True, max_length=150, verbose_name='last name')), + ('is_staff', models.BooleanField(default=False, help_text='Designates whether the user can log into this admin site.', verbose_name='staff status')), + ('date_joined', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date joined')), + ('email', models.EmailField(max_length=254, unique=True)), + ('password', models.CharField(max_length=255)), + ('phone_number', models.CharField(blank=True, max_length=20, null=True)), + ('date_of_birth', models.DateField(blank=True, null=True)), + ('gender', models.CharField(blank=True, max_length=10, null=True)), + ('street_address', models.CharField(blank=True, max_length=255, null=True)), + ('institution', models.CharField(blank=True, max_length=255, null=True)), + ('is_active', models.BooleanField(default=True)), + ('groups', models.ManyToManyField(blank=True, related_name='student_groups', to='auth.group')), + ('user_permissions', models.ManyToManyField(blank=True, related_name='student_permissions', to='auth.permission')), + ], + options={ + 'verbose_name': 'user', + 'verbose_name_plural': 'users', + 'abstract': False, + }, + managers=[ + ('objects', django.contrib.auth.models.UserManager()), + ], + ), + ] diff --git a/backend/api/students/migrations/__init__.py b/backend/api/students/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/backend/api/students/migrations/__pycache__/0001_initial.cpython-310.pyc b/backend/api/students/migrations/__pycache__/0001_initial.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..31713d727216749e8b1481dab19835ce7d01c899 GIT binary patch literal 1977 zcmZWq&5s*36rY()l1Vn%O?S83Qa(CB3xtnkTcA)0p+ZX$pskQvF1d`H*qJ!%v8T4D z+szfOd*#Fdxba``cle5gv?uOJusqwd9}*LdDfV$xi;Y!uR7COCv& z6Sr{tD4s_+0j%S&4(=W`09ga13oClKkJlZt0mvGx8Q@EJ(;-`D$aalfuB~?PmD=hm zARW?M_Lu9+4g3PWb`*j47XcmMm%!W0PJYFCx{lMM5VWs4Da5aV{&g4W1|XMQemC9v zH|iB{o~?MRMy{VB!~Y>~1JVWkJ1)w*AZ>#59vPSDpOTSq|Iyf?E|7{ z&LNgc^#W-as7kFWT_BYr#!^^XP^D}KrUz6nM5R;mykvAnH9JfZsB%tu4yL3Stp;b# zQ>Brv6lBrHWR5DPO=m$^nQ8J|`((Q3yd3`s*{wW~TB3#xxnUFTo)hMcI<8u~WaXxA zwMlGU8qMdcyBBIYSP)1{+T46qGsG=9Ddk%DVi7JVPZiZe0X125T9P)_j5 z38@!`k=%sTd^$~1Aj*#a1px3Jn{un-^l3#*QUW^%LgM2Ss|~%jS1tsHovVr|k;mIs z<4bjFIj|o3F0`0uQ!4cW{8}o!s+ALt!O-49W?gAXh|Unkk|<@?C|8>5%3c_z1C*ed zrq2k3wh5b7E=5%;Yvvj+^YW@|yLRM+Q`&oyFx!H@!y+xrz;*J4b}(C~ZZ3eU4d?3| zF|oBXO*=v}c+$2m_HS0QN+M7MX1ZAhmt@6AmYH6bJ*^OPhb}X1%BhCaV|tjBmO(zFM9Ij~vUcAcw>^8k z%7#UHpVRy^IEW8zSkr$1Ogy0l@nY|DAs9j2OP%`*B>l97mx$*AYSok}lV~tm!CspN z7YC;Mg>97D$a?hCjXlHPD!@f6MWq2w_t>A2o9H9r5ajCbL>%4&W_<)O5numoOp z&rRYeYQ!gTGYYq(&G7WM6Ar?4kOnnk=bK^lSF|04Q5gR-XhkRSpUH{yHf)<~o}5u# z-N?0x|Ds77$6T%#IPykk+;wUgPu*s@{c%3e>-V#7tdryuzyF`Yr!Y{qh$KoN$DPK1 Dm4{>j literal 0 HcmV?d00001 diff --git a/backend/api/students/migrations/__pycache__/__init__.cpython-310.pyc b/backend/api/students/migrations/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ef6c2467d38a172ceafd25c97ad337b9cccf29a0 GIT binary patch literal 166 zcmd1j<>g`kf`49ixqeb&a&~H7ihg22rhairX-aBdNwI!zW_nR#NoIat jv3`7fW?p7Ve7s&kr(N*$qj~A7{s*B{3llg^+{*ffT{@Y+sUV{SoYQ zAgfk$DRi{kAB1$fZb%zqleRzDnk=i3HZg?y$EH=yRdmY1-cV zaQul0R`NRczQ6Z*f6vGJJkRCQP2$o6%eCgZ2@J#h=r{XWSlR2bPGG&K4p*TmJ^Vsm z@WKDUf59&{>K5LBJ35BY%+5YE)HhntNaF9T;7nVXrY`)S_|Nfo*2M#O&`nlh z%^krcx5#rBQWQnG89vSnJR5aWZf_6e>v4HW$~8cvAG+7uPy0PS_ny2xt82R&$b5{; zOMB>kPiqy{(h*Dv=?E7WWKbpt^7eXME?>YKYN^6(nczY)vA`t-o|Dg~8SQb2VPl+3 zg-hj4EwX%+4MjO7nMlM^3>%Lyu|$$9BujY*Jf2?K6QKRn>D^V>o>-8LWi(;v3=fm! zVu?jgJ7FnLzH;Oe6X8WcnT^`^1D3 zu?04c)QCiqTq+ePU5O(N%c?*Pc>M#e{$8KUM|%SsV@)3zn~)dHa6k`#20w+%@HUj- z0F1&Z_}g{y^O{x|#oP!{@PSiUD~7?3vBs5P{n?#Hy$fW?r8ddvtTlQM$hlzC7DiZa z*7uomPEh|^+M(BX12!$pGstN%K9xc?a;!>y1I;9c)j_?}qy-Z)vK&-a9g;8Ie;Mp( zAqd2efO|3cIXnSBf`5WPLaMw9_rh<&!F90~I<^~{n}D`o{UYiOEzLlSqm=e-UOh3m zrgv0-vWgD{Yb|FiFIrrdR*R+j-_;MRKUo)Fug=sNKpP-r0vZp;4g=@{M1+fS0tz36 zTbDW)o@e88*}2YI1F!)Cc})X#Y&U=oU{*wF=eO4zfD@QCS=wZqI;je4X0%zmLc}bK z(`IZNv7?f%k$~M8{0#mP{tEsOz6V9f!{cy2>|Pfkbkq?BthuSc5If8Utfg6#ku}7| zab}&;J7B{qel1uF2VnquU=QqqHrNas*2TLuRFxh8!l8^^%Gjxl9r9>ySH?DFv@4@+ zW8^#chV%}?u!=tj))N0E{y=OH*NG%CMsyN}b@8@2LprK3(AJ%A-C;IP$`&G3&h1?Y z(bZRIZ5gAQEQ{(?Q3dvwQR;+-YVANMn=|K;%mo>PEUE$av?D-ASAmB%`J_`^vaJmP zoZUtK%A=!z>?%kjqZvAnjSOnBA<(Y2j(mS+$;j&)yZ`?1pc6%T9d-kQ?KL0Q7%ls@ z{S8@h!hGHID*mqVGvkc09lKHW7sD03enmV_T;>{ZtIGwhrte(!f*XL?OWL*6A^mw0 zG-ghYjpe2oIcM0(MK+0eCLL~?c9P>NBEq7$PRuePJ}J!GN%=9mG{?mwTr#)KMQ!d{ zm`}txCZ3Lk@&WD~K>Gb8Xf>cCoOcFYz@|5P>W$V>n`HBX#ybam;9gTV(iiH37_`(J zwp^>8-S#^1w&@c7JN$t0ZR1$g2Zl$6HGNRm4>;`WE8=T9-R*Vp2fEC1v=6tAj)Kdl z1UaLZNkO>^P;s$scxohgVuU;qJTNvw+ACu1q{Gff>?9wTKAHjD(koM-L8>_e>ZL1F zARyabOLG!918j9A*-v7Rflj?M*el(i0z=!n#K9ii+Sdn`d!&2EP=4u@K0OAOcIMR& zJ1KA%1;rD0zCR6S%o2VQJOac9xcR@qTWjR^0QKWF1NB|QrCK9^k1_c84w%&a13o8T zN1aiw-eyA`R`nCZUk!ED?^helzchcv2w^ z_>5F@`Z6xs=ci}sFq4k+=S!(q=XE(YiP?vOae5lm_m-#rB)LyhB^T9-3zip$aO=bb zxO_&rc-fMYtxt@c$nuJNw$`Mc2F0H>=g3uQI7P?v-I!Q7ePw{hcE<%n^oKW&4Iechj_=uc1inr{4fux*BR)`hm zl{bK`NI~FC7QHEei)?-WCN{gfe0oQ`X8B}FKyMEVi4-rO8q9_H7#k(WwIUv4`8b1S z=JHCoi^|p7SRyXWN9EU#Vgaf%7B~UD^F*VG3mmFpp+o|S)@&w6f%+b`#0X0ZMF)&! zJAstI3h7jyC*{L)A{J5akY=NdkVq$)C?9_t1}wrF*v_2o`VfygK;}H z%$@`|ZZ?}yy~0e`9_cNp`;vLnfwykTh3?jx`cr%TfnlfFWWiul4QqM7`r5WN;uq#V z(|ab%y6DGs`im>#Pcx$F2yQ*%1fo;Pzgjn}b>(W7lIwz>4zshf?!skSyHPKV9~?PN z+6xy;_S(sb@nVo2wYhdB6)I(`{xEJmj<^KMaoMyy;uH3JSSsZ979Q!X$fw+Xd$b%W z#3>JKcfQ&15^i-m!4*zPG=+y2KKToiOyQ!E4G$(+fsfB^oFsvZi zPJ#L;4F9S!}bl*uj#n~5e>z60MvPCg%ac-2peFl(+`spwgaRsR2)skZ6 zDKvC3UXj+Cm8SZ=1f!Izp#e~vIXi+|FCc25EVYuuH!CEH15d~uLB-!!EWKot`^k(4 z<$s=(Y$$h11x>Q`O0E6752B`~1*vrE*;UHD@XHOE*Wd4R`6C{swW**buKbH2I}2Ubvcv#7_;0c)mj7`LLvN<3CxU$q%fdjeT29~}qg^*z+?v@3mYZ|L$Kt4DWkH&CvX98zS*;l=;tR}DKDvA~sT+Hh5X#2$vx|KeWl%lM UatrO=Fw2n#Qzcc8)BzVNBBvn*`h8_LiD3Uua)y zlYw3$eKoc`pGf&LGTX=kCG1)ir+-R55q50gfg&-qYe=!Y!tn(Q`ndn&bjBF z^Si%$xaXYemb-e{xwg+YP6!GAD>k+ttPRHetJ(icW z2i#0|IZ}1%9ck)bhnec!5G0%7t)f(x77C)11x3sd{2ep+E&hOCuzR0im)-MqdL+@*LvC|^(%{-fOcUI}8~6==jvu0qDyEzIAvDuUbBLEQS*L3Z zzUwiQA8#JvW!L^X-C~aKo#y^qKTizU&JZ8O3HExfdj$6(*Kf{U=LyHUSfuX@JHm|6 zYkS+akNb*2QZ-$++0Jn1YWi*G@;d=4rPFY+U|br8fN}a1cv~YexXoFWd!m-;a;^mZ zREkDn^>qs(wZ0sJi$KG%c0oGYZM=7k3$&geh0V?}o+Cao$lEC%_N=&P9@AVG9A)uq zafDu=ap4m(Xy1hmZj%>DaYg8-QY;3mu}W@suCP~?Jq6vyyJ_fd36oqDT;XMUfJ%`F ztQhAEP8Jy@VSBNrtMFq@pK|F8 zM#ghlpwxKl68EOZYD~bp1n=Ts_=oAMZexIb4_kH~fD^2&h?lY4#G5R71HtNn^@eD} zZQN#_pAfogiH<$b9czNCJGkDkoBrx8H0A2neN|gK?c*6!Ka)NtPcjKH?63F_+Ke46 diff --git a/backend/landlords/__pycache__/__init__.cpython-310.pyc b/backend/landlords/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 1271db0783543771a045ad78e078da239736fdb3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 167 zcmd1j<>g`kf`pT)X(0MBh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o6vDKO;XkRX;aB zD={ZEEipSkC9^m&FI~SNGbbm%Tt6u>IXg8k1-OBgNBA$raL1Ky*g$}E!po(U0t!&B@M@`~K-rfc6{^oM zFP}tP9e7%_GFJw?4F~y0&4UTxD8ge~=PT$<*wAcEVTg7W3!cffCqS2CIYOE2fVqjd zv1!2gCE^9gNBgW#zBYzb`Qb$Vx=qc^=W>n#R2;qw{Y>3-73zh=9AZsvUQ Q)!}0NG1Y7nF_G8m7sJR&<^TWy diff --git a/backend/landlords/__pycache__/apps.cpython-310.pyc b/backend/landlords/__pycache__/apps.cpython-310.pyc deleted file mode 100644 index e4192a6c3e219643f77b1e3f6cc959573111de83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 452 zcmYjNy-ve05I)B#3jGlh>WaijmgEHxYC$Rs>cW=Aa(hlm>%<{$gkXhd;2n4+Z-|Lk zVB*{#=t+0J@9y*G^O?b*3uK=cdHzo4mj{Oy5*U%&a|#H^G?Xl33~m7f`%pH&G`o>gwv6%bHp)mp@ayz7;AY%x0n`In>EJRK!p*y*g6>8I<-HN=N z;Zjx$li(~V4JvJu>tZo(*Je^EjqX_Q`O~=LA|WbSDj{4~2%@*z=Y1g_Td8-QQ&hQZ z^;$?05&1?X^t}&g{6;q6XOcdcQl+I?N=^Kg!NSrUXO=IqQyRUg}6Zoe+`+taS)}xw>F1NqA@;kI%un$B23xJ1m A*#H0l diff --git a/backend/landlords/__pycache__/models.cpython-310.pyc b/backend/landlords/__pycache__/models.cpython-310.pyc deleted file mode 100644 index d600a8519df3c5a07fc2f6dacecedf24c2c2dbd3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 594 zcmYjP-EPw`6t?3eOG5_I;A(GBgjyZ|p-n7Vd3rG)$p;<3dj&d}W}1Ry{)sVS#4@JL5B z42ozKeYiQ#%jyRSApR)X#dgp9S2SgB zJZ9kCld$uRc_gGR$n>m~3vKgiTDx}TAE_cS1%lV zK#0esG<9Z;Kou$nl~1**N`^Px-kr+qle*T*fD3G)Hq(8Q@&MzF`bnY(o2e+XsWd8) za|^nX`7A25G4?r{$mtwuH&C>&ZM%xLON(%_Gf_4*MVrtxJ}h2JjupFjszX#hVcc7J u9Yz`Te*IMw9f#cYA;sc$2$N=n#=mWLZPf(MKVR?R0>1#M>gO4-BmM^m$c}9Q diff --git a/backend/landlords/migrations/__pycache__/__init__.cpython-310.pyc b/backend/landlords/migrations/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 820128053fd2f95477310306bbe284b0718f26df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 178 zcmd1j<>g`kf`pT)X(0MBh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10WKO;XkRX;aB zD={ZEEipSkC9^m&FI~SNGbbm%Tt6u>IXg8k1$5-bb=J})j4 diff --git a/backend/landlords/models.py b/backend/landlords/models.py deleted file mode 100644 index d3b2fe70..00000000 --- a/backend/landlords/models.py +++ /dev/null @@ -1,11 +0,0 @@ -from django.db import models -from django.contrib.auth.models import AbstractUser - - -class Landlord(AbstractUser): - username = None - email = models.EmailField(unique=True) - password = models.CharField(max_length=255) - - USERNAME_FIELD = 'email' - REQUIRED_FIELDS = [] \ No newline at end of file diff --git a/backend/pillow_backend/__pycache__/__init__.cpython-310.pyc b/backend/pillow_backend/__pycache__/__init__.cpython-310.pyc index bde9ec4573ebfcb867cb2857e0cc0abd3aa70748..bc144dd181d21853b4bbf951b57169aaa02b8201 100644 GIT binary patch delta 27 hcmZ3(IG2$-pO=@50SK71vL^t# delta 27 hcmbQsxQ3BCpO=@50SFXo;wN(3F#1pQFrApE4**Ws21x(_ diff --git a/backend/pillow_backend/__pycache__/settings.cpython-310.pyc b/backend/pillow_backend/__pycache__/settings.cpython-310.pyc index 9b68a45b47e497438e080e8ceef72f4de0b74e03..aee55f2aa26ba62af3b09563ada8c8c2ce648ead 100644 GIT binary patch delta 138 zcmca5)+o-G&&$ij00gBAv(uObHu6nkV&tE^kZFNO6>nlere02BUP?}WQA%+YABbB} zlwXiqRFaum43SREP0h;$b9q40#U-UFsd**ERooz6QEFLcYWe0QW^NWn{>^#pn#{aH ZK$})F6qy34BGbuBxH1`qCi8Lo008c!Dt`a~ delta 108 zcmZn^za_?(&&$ij00j4VveGW_Z{(ZA#K=2&A=3iITbwzGc_}&hMJdI%xC)B$3sQ?p zGE<9haVF-b=4Aqzn>(4gS=fYtdaFDpGqQSyDJsSyMQn zY%U<18^lg$jp9h*31-mb-Po~-DUUC)AX7glF)t-2zbK_xze)(m*Msx*N{e!et9U_b zic3mUQu9iHO87zCf};F_)S{BiRG@$`NDo2)q6utpVs2_)CPWd~;K_~5JH&*54rO8B P5fEVHVc}tfK#t!4thqlx delta 180 zcmZqTJj1ivN85kaeILLq<$Z-JT;)sdbPSPCBjLl4`EGe9+tSMX| zb~;NGM+$c^gC@_$DVvzwxpEToQgZT(Qi}Df_~2~4(xRN=D(-@!{DRb?lFU?~BtL=! lk>yIvP0h=MNb*hI!n{L70B9=<1CM|JBM%D?BM5T*0RWLvEwKOq diff --git a/backend/pillow_backend/__pycache__/wsgi.cpython-310.pyc b/backend/pillow_backend/__pycache__/wsgi.cpython-310.pyc index d28ae2b07392bd717103a211f5a5f072d343b3df..a8638710674f1a9838886950d51ff6f04e9be897 100644 GIT binary patch delta 30 kcmX@hvX6y3pO=@50SK71vNm$xWMs6N{FKpjvL=%X0BdUpD*ylh delta 30 kcmdnTa+ZZVpO=@50SFXo;x}^NWMuT7{FKpjGB=Yk0CEBckN^Mx diff --git a/backend/pillow_backend/settings.py b/backend/pillow_backend/settings.py index 8141c7de..5ee91950 100644 --- a/backend/pillow_backend/settings.py +++ b/backend/pillow_backend/settings.py @@ -42,9 +42,11 @@ 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', - 'landlords', - 'properties', - 'amenities', + 'api.landlords', + 'api.properties', + 'api.amenities', + 'api.students', + 'api.reviews', 'corsheaders', 'rest_framework', 'rest_framework_simplejwt', diff --git a/backend/pillow_backend/urls.py b/backend/pillow_backend/urls.py index 1ff54c75..06af2132 100644 --- a/backend/pillow_backend/urls.py +++ b/backend/pillow_backend/urls.py @@ -20,8 +20,9 @@ urlpatterns = [ path('admin/', admin.site.urls), - path('landlords/', include('landlords.urls')), - path('properties/', include('properties.urls')), - path('amenities/', include('amenities.urls')), + path('api/landlords/', include('api.landlords.urls')), + path('api/students/', include('api.landlords.urls')), + path('api/properties/', include('api.properties.urls')), + path('api/amenities/', include('api.amenities.urls')), ] diff --git a/backend/properties/__pycache__/__init__.cpython-310.pyc b/backend/properties/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index c2bad403955d2ae84b5b70816cc83abe760b459d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 173 zcmd1j<>g`k0!Ov9G!Xq5L?8o3AjbiSi&=m~3PUi1CZpdWHa^HWN5Qtd!C6*B<|76t&wxGPQo diff --git a/backend/properties/__pycache__/admin.cpython-310.pyc b/backend/properties/__pycache__/admin.cpython-310.pyc deleted file mode 100644 index 12fc3f219c37e0174f0a707c9ad7aed6776a103c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 283 zcmYk0!AiqG5Qb;7Nr=*lk6{qHFHnj{Pa=5hMYf$u-E=n_b|aFf@D=pvEA7=&U%``; zR*FB&KYTyK%=r2I5?JrIO*3-;p5VVE!yQ+=VM9P+!HKmHfEh}gIk}bsNVNG!LGp9T z^Czf_15ZOOQlZhA?jTN7JqF)X7{-UXOjp?IZs!+U-wnZRLdG+xbRNmZkWY|DGf=7m z?Mxgfd_lP2_-H@(>cu-!&bQi9qxT+7`HiMbCmcL2EO0oa| diff --git a/backend/properties/__pycache__/apps.cpython-310.pyc b/backend/properties/__pycache__/apps.cpython-310.pyc deleted file mode 100644 index 78d84f0ab12aa20e0575674dcb0c091e6ae11707..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 460 zcmYjN!A`?43{9F2m2Q&|+7*ctQZMZfAhdx57c?Pp>m|zObaYFb(5ymmg^%DD_Di{P z;ukpKbc4;39Y6c|$*~>|V}drhD2h*fzdSg!5WyJTo?`$4RFR72l#)9F0k97OOwxCj z2M|7zr1y<1l2CU%G3G|sMY)*!%ArvNV{|*hAW2Sv;55w{1bGMyRYG_2&}bu@bt&yu zB7%__M|JBReC8D@>d#4i;HBYR7$^OGcjMu8g`KXL1B!| z_A6x`r{=X`sOv9kk1#|eq!I0E(}cPH?uVY+1bzX}-mkLF`dD+(<@Qfk{+8AY4#3nhqQ9aS z{z89>uRZY>dTD2N2?Sd+J7drD8*ka^#01vw$CJ^nOUNHoR+k6LTOhLyOb|g8$!SU{ z5sq+`le?)4G7+BgazFJc`9Op(f(s%7NhiU%n}#AhAW3us{v@F`$V(xWxuK1^HkRcO zP8b(LOJl$y`os&NN-c)yvby|R#TW>EEhtKv<75$ zfK_BcCiI;Ca2Kv#U$}y9!U=Oga%#z~yvkpYb7vAPXhs&!FZvTlM4(=G-@1?pSTRmQ zje%{~R9ebviMfryAgks=+LkJdaU=R>4qfU19X!L2W#YkCs*&}$9vd4>PwH=^$|1Oy z#Wl4p#)gU;!`L8g4|~8+ng(m&zMGc+Zr5ky_ZQP^efPH z4-dPAu9xsR`Fh`Wi~E8%2SQ6-G+nRgTd~*_c){Guc)!n zuko^T3-?ee1dSQLPpG3ALCNP_FOB^;m`12}L qrg<*CWoon4OsFZ%|BU0RBdnyZi>Pspb{df0;8aWmtX=1S=Kcpb9~`>? diff --git a/backend/properties/__pycache__/serializers.cpython-310.pyc b/backend/properties/__pycache__/serializers.cpython-310.pyc deleted file mode 100644 index c0f6ed95681a81b51b3a07ed7b48ba7dcb788b1d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 642 zcmZuu!A=4(5N)^JWktY*7)|_xy|6!E42cI%5EE{DX)5jNLYHC-A#lZ?@h|+2UOn*( zo}BI~U~rOoJ2P$H%)Hg@b`ybx_j&#S-%s#AMj`8i+a7>G0xMMF3}Yk$K~zwZj9~PD z1Qp>M5~0Ksx+PgCq7h0OJ9vW;7_#_WUPozFoz3dBi43Mg@j31K=T>>r5DF9TIvZ` zGUrn*3d?8D>AX-%uhJ(zp30f{N!dQFl`5o7kA&>a*N*xrBcQh)VnlI_O$WkZLQTWB zjXj)s@a4lOb=3B?5Wu_j)5oZbtBPN_W29ZM+`!r^ZKfuG3ofeGv-PeQ1HbD*{_5#} UU0i%yYj)>??`z!kF_gu5vWoXpo%fJtr*I&+gB<#_v$QF8f@T3TIzix)ehzx_jwcDnp{P> z$zrW0@zg+C$3+sAsn+Hp8pY!&(nf1Z(fZ;d6n7-6rprGXd*x%ru~7?G?K=8|aj_5{ tql}6#f6-(IA-8SFu&3$4sF}RM*E246yGUUDg`k0!Ov9G!Xq5L?8o3AjbiSi&=m~3PUi1CZpd