+
    5j                     d    ^ RI t ^ RIHtHt ^ RIHt ^ RIHt ^RIH	t	H
t
HtHtHt R tR tR tR# )	    N)renderget_object_or_404)	Paginator)Q)CityPlaceSimilarPlace
PlaceImageImageFeaturec                    \         P                  P                  4       P                  R 4      p. pV FF  p\        P                  P                  VR7      P                  4       pVP                  RVRV/4       KH  	  RV/p\        V RV4      # )name)place__citycity	top_image	city_datazplaces/city_list.html)	r   objectsallorder_byr
   filterfirstappendr   )requestcitiesr   r   r   contexts   &     ?/Users/jokubas/Desktop/KTU/big_data/engineering/places/views.py	city_listr      s    \\((0FI&&--$-?EEG	D
 	  	YG '2G<<    c                    \        \        VR 7      pV P                  P                  RR4      P	                  4       pV P                  P                  RR4      pV P                  P                  RR4      pVR8X  d   RpMRpVR9  d   Tp\
        P                  P                  VR	7      P                  R
R4      pV'       d   VP                  VR7      pVR8X  d   TP                  VR8X  d   RMR4      pMTP                  VR8X  d   RMR4      p\        V^4      pV P                  P                  R^4      p	VP                  V	4      p
RVRV
RVRVRVRVP                  4       /p\        V RV4      # ))slugq sortscoreorderr   ascdesc)r   
categoriesimages)name__icontainsz-namez-interest_scoreinterest_scorepager   page_objquerytotal_countzplaces/city_detail.html)r%   r&   )r   r   GETgetstripr   r   r   prefetch_relatedr   r   get_pagecountr   )r   r   r   r-   r"   r$   default_order	places_qs	paginatorpage_numberr,   r   s   &&          r   city_detailr9      sV   T-DKKOOC$**,E;;??67+DKKOOGR(E v~O#$$$$/@@xXI$$U$;	v~&&%vWM	&&EVO'8Qab	)R(I++//&!,K!!+.H 	Hy(G '4g>>r   c                    \        \        P                  P                  R R4      VR7      p\        P                  P                  VRR7      P                  R4      P                  R4      P                  R4      R,          p\        P                  P                  VR	R7      P                  R4      P                  R4      P                  R4      R
,          p\        P                  P                  VRR7      P                  R4      P                  R4      P                  R4      R
,          pVP                  P                  4       p. pV'       d   \        P                  P                  VP                  R7      P                  4       pV'       d    \        P                  ! VP                  4      p	\        ^ \!        V	4      ^4       Fs  p
\#        W,          ^,          4      \#        W^,           ,          ^,          4      \#        W^,           ,          ^,          4      rpVP%                  RVR VR VR 24       Ku  	  RVRVRVRVR	VRVRVP)                  4       /p\+        V RV4      #   \&         d     L8i ; i)r'   r(   )pk
structural)
main_placemethodsimilar_place__citysimilar_place__imagesz-score:N
   Nimage_same_city:N   Nimage_other_city)
image_path#02xplaceprimary_imagecolor_palettestructural_similargoogle_maps_urlzplaces/place_detail.html)r   r   r   r2   r	   r   select_relatedr   r(   r   r   rE   jsonloadsfeature_vectorrangelenintr   	Exceptionget_google_maps_urlr   )r   place_idrH   rK   rB   rD   rI   rJ   featvecirgbr   s   &&             r   place_detailr]   >   s&   &&|X>E 		5	6	-	.		1	2	(	C		!  		5):	;	-	.		1	2	(	B		   		5);	<	-	.		1	2	(	B		   LL&&(M M##**m6N6N*OUUWjj!4!45q#c(A.A!#&3,/S1X^1Dc#PQc(UX.FY!A!((1QsGAc71S')BC / 	0?,5446G '5w??  s   B-I( (I65I6)rN   django.shortcutsr   r   django.core.paginatorr   django.db.modelsr   modelsr   r   r	   r
   r   r   r9   r]    r   r   <module>rc      s(     6 +  G G=$?N8@r   