
    oi                        S SK Jr  S SK7  S SK7  S SKJ r  S SKJr  S SK Jr  S SK J	r	  S SK
7  S SK
Jr  S SKJr  S S	KJr  S S
K Jr  S SKr " S S\R$                  5      r " S S\R$                  5      r " S S\R$                  5      r " S S\R$                  5      r " S S\R.                  5      r " S S\R2                  5      r " S S\R6                  5      r " S S\R:                  5      r " S S\R2                  5      r " S S\R6                  5      r  " S  S!\R:                  5      r! " S" S#\R2                  5      r" " S$ S%\R2                  5      r# " S& S'\R2                  5      r$ " S( S)\R6                  5      r% " S* S+\R:                  5      r& " S, S-\R6                  5      r' " S. S/\R:                  5      r( " S0 S1\R2                  5      r) " S2 S3\R2                  5      r* " S4 S5\R6                  5      r+ " S6 S7\R:                  5      r, " S8 S9\R6                  5      r- " S: S;\R:                  5      r. " S< S=\R6                  5      r/ " S> S?\R:                  5      r0 " S@ SA\R6                  5      r1 " SB SC\R:                  5      r2 " SD SE\R6                  5      r3 " SF SG\R:                  5      r4 " SH SI\R2                  5      r5 " SJ SK\R6                  5      r6 " SL SM\R:                  5      r7 " SN SO\R6                  5      r8 " SP SQ\R:                  5      r9 " SR SS\R2                  5      r: " ST SU\Rv                  5      r< " SV SW\R6                  5      r= " SX SY\R:                  5      r> " SZ S[\R6                  5      r? " S\ S]\R:                  5      r@ " S^ S_\R6                  5      rA " S` Sa\R:                  5      rB " Sb Sc\R6                  5      rC " Sd Se\R:                  5      rD " Sf Sg\R6                  5      rE " Sh Si\R:                  5      rF " Sj Sk\R6                  5      rG " Sl Sm\R:                  5      rH " Sn So\R6                  5      rI " Sp Sq\R:                  5      rJ " Sr Ss\R6                  5      rK " St Su\R:                  5      rL " Sv Sw\R6                  5      rM " Sx Sy\R:                  5      rN " Sz S{\R6                  5      rO " S| S}\R:                  5      rP " S~ S\R6                  5      rQ " S S\R:                  5      rR " S S\R6                  5      rS " S S\R:                  5      rT " S S\R6                  5      rU " S S\R:                  5      rV " S S\R6                  5      rW " S S\R:                  5      rX " S S\R                  5      rZ " S S\R2                  5      r[ " S S\R                  5      r] " S S\R                  5      r_ " S S\R                  5      r` " S S\R:                  5      ra " S S\R2                  5      rb " S S\R:                  5      rc " S S\R6                  5      rd " S S\R:                  5      re " S S\R                  5      rf " S S\R6                  5      rg " S S\R:                  5      rh " S S\R6                  5      ri " S S\R:                  5      rj " S S\R                  5      rk " S S\R                  5      rl " S S\R                  5      rn " S S\R6                  5      ro " S S\R                  5      rp " S S\R6                  5      rq " S S\R                  5      rr " S S\R6                  5      rs " S S\R                  5      rt " S S\R6                  5      ru " S S\R                  5      rv " S S\R6                  5      rw " S S\R                  5      rx " S S\R6                  5      ry " S S\R:                  5      rz " S S\R6                  5      r{ " S S\R:                  5      r| " S S\R6                  5      r} " S S\R:                  5      r~ " S S\R6                  5      r " S S\R:                  5      r " S S\R6                  5      r " S S\R:                  5      r " S S\R6                  5      r " S S\R:                  5      r " S S\R6                  5      r " S S\R:                  5      r " S S\R6                  5      r " S S\R:                  5      r " S S\R6                  5      r " S S\R:                  5      rg)    )generics)*)rest_framework)DjangoFilterBackend)authentication)
exceptions)languageKey)JsonResponse)File)
paginationNc                       \ rS rSrS rSrg)APIKeyAuthentication   c                     UR                   R                  S5      nSnSnUb  U[        :X  a  SnOSnOSnU(       a  g [        R	                  SU/05      e)NapiKey FTzIn Valid API KeyzNo API Key Founderror)headersget
SECRET_KEYserializersValidationError)selfrequestr   errorMessageisRequestAuthenticateds        s/Users/waleedhassanin/Documents/snowflake_co_dev_github/snow_flake_back_end_deploy/mama_care_api/mama_care/views.pyauthenticate!APIKeyAuthentication.authenticate   s]    $$X.!&#)-&1-L!--w~.FGG     N__name__
__module____qualname____firstlineno__r   __static_attributes__r!   r    r   r   r      s    Hr    r   c                       \ rS rSrS rSrg)LoginAuthentication#   c                 h   UR                   R                  S5      nUR                   R                  S5      nSnSnUb  Ub  [        R                  R	                  US9R	                  US9nUR                  5       S:  a  US   n[        R                  R	                  UR                  S9R                  5       nUS	:X  aM  [        R                  R                  UR                  S9n	UR                  U:X  a  U	R                  U:X  a  S	nOS
nOSnOSnOSnU(       a  g [        R                  SU/05      e)Nphonepasswordr   F)r,   )parent_parentdetail__passwordr   parentIdTzphone and password is invalidzNo Records foundzphone and password is requiredr   )query_paramsr   Parentobjectsfilter__len__ParentDetailidexistsr,   r-   r   r   )
r   r   r,   r-   r   isValidselectedListparentisExistsparentDetails
             r   r    LoginAuthentication.authenticate$   s   $$((1''++J7!5!>>00u0=DDckDlL##%)%a'//66&))6LSSUt##/#7#7#;#;vyy#;#QL||u,1F1F(1R"&'F#5L1;L--w~.FGGr    r!   Nr"   r!   r    r   r)   r)   #   s    Hr    r)   c                   &    \ rS rSrS rS rS rSrg)DashboardTokenAuthenticationB   c                     Ub  US:w  a  ggNr   TFr!   r   tokens     r   
checkToken'DashboardTokenAuthentication.checkTokenD       {r    c                     US:X  a  gg)NadminTFr!   rD   s     r   checkAdminAuth+DashboardTokenAuthentication.checkAdminAuthJ       Gr    c                 &   UR                   R                  S5      nUR                   R                  S5      nSnSnU R                  U5      S:X  a!  US:X  a  U R                  U5      S:X  a  SnOSnOSnU(       a  g [        R                  S	U/05      e)
NisDashboardrE   Fr   T1zIn Valid TokenToken is requiredr   )r   r   rF   rK   r   r   )r   r   rO   rE   isAuthenticatedr   s         r   r   )DashboardTokenAuthentication.authenticateO   s    oo))-8##G,??5!T)c!&&u-5&*O#3L.L--w~.FGGr    r!   N)r#   r$   r%   r&   rF   rK   r   r'   r!   r    r   r@   r@   B   s    
Hr    r@   c                   8    \ rS rSrS rS rS rS rS rS r	Sr
g	)
MobileTokenAuthenticationb   c                 F     [        U5      $ ! [        [        4 a     g f = f)N)int
ValueError	TypeError)r   vals     r   tryParseInt%MobileTokenAuthentication.tryParseIntd   s'    	s8OI& 		s   
   c                 ^    U R                  U5      b  [        U5      nU[        U5      :X  a  gg)NTF)r\   getLanguageRecordrX   )r   
languageIdr[   s      r   checkLanguage'MobileTokenAuthentication.checkLanguagej   s/    J'3#J/Cc*o%r    c                     Ub  US:w  a  ggrC   r!   rD   s     r   rF   $MobileTokenAuthentication.checkTokenq   rH   r    c                     U R                  U5      bk  [        R                  R                  US9nUR	                  5       S:  a9  US   nUR
                  R                  [        U5      :X  a  UR                  U:X  a  ggg)N)rE   r   TF)	r\   ParentTokenr3   r4   r5   r0   r7   rX   rE   )r   rE   r0   parentTokenListselecteds        r   checkParentAuth)MobileTokenAuthentication.checkParentAuthw   ss    H%1)1188u8EO&&(1,*1-$$''3x=8X^^u=Tr    c                     US:X  a  gg)NguestTFr!   rD   s     r   checkGuestAuth(MobileTokenAuthentication.checkGuestAuth   rM   r    c                 l   UR                   R                  [        5      nUR                   R                  S5      nUR                  R                  S0 5      nUR                  S5      nUR                  R                  S5      nSnSnS n	Ub  Un	OUb  Un	U	bK  U R                  U5      S:X  a3  U R                  X95      S:X  a  SnO U R                  U5      S:X  a  SnOSnOS	nOS
nU R                  U5      n
U(       a"  U
(       a  g Sn[        R                  SU/05      e[        R                  SU/05      e)NrE   kwargspkr0   Fr   TzInvalid TokenrQ   Parent Id is requiredzLanguage is requiredr   )r   r   r	   parser_contextr1   rF   ri   rm   ra   r   r   )r   r   r`   rE   rp   
parentIdPK
parentIdFKrR   r   r0   isLanguageValids              r   r   &MobileTokenAuthentication.authenticate   s/   __((5
##G,''++Hb9ZZ%
))--j9
!!H#!Hu%-''74?&*O((/47&*O#2L22L,,Z85!117L>2JKK--w~.FGGr    r!   N)r#   r$   r%   r&   r\   ra   rF   ri   rm   r   r'   r!   r    r   rU   rU   b   s!    
&Hr    rU   c                        \ rS rSrSrSrSrSrg)StandardSetPagination      	page_sizei  r!   N)r#   r$   r%   r&   r|   page_size_query_parammax_page_sizer'   r!   r    r   ry   ry      s    I' r    ry   c                   R    \ rS rSr\/r\R                  R                  5       r	\
rSrg)DeviceOSTypeListMobileView   r!   N)r#   r$   r%   r&   r   authentication_classesDeviceOSTyper3   allquerysetDeviceOSTypeSerializerserializer_classr'   r!   r    r   r   r      s%    23##'')H-r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)DeviceOSTypeListDashboardView   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r'   r!   r    r   r   r      s(    24PQ##'')H-r    r   c                   X    \ rS rSr\\/rSr\R                  R                  5       r\rSrg)DeviceOSTypeDetailDashboardView   r7   r!   N)r#   r$   r%   r&   r   r@   r   lookup_fieldr   r3   r   r   r   r   r'   r!   r    r   r   r      s-    24PQL##'')H-r    r   c                   P    \ rS rSr\/r\R                  R                  SS9r	\
rSrg)LanguageListMobileView   T)	isEnabledr!   N)r#   r$   r%   r&   r   r   Languager3   r4   r   LanguageSerializerr   r'   r!   r    r   r   r      s*    23&&&6H)r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)LanguageListDashboardView   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r'   r!   r    r   r   r      s(    24PQ##%H)r    r   c                   X    \ rS rSr\\/r\R                  R                  5       r
Sr\rSrg)LanguageDetailDashboardView   r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r   r'   r!   r    r   r   r      s-    24PQ##%HL)r    r   c                   R    \ rS rSr\/r\R                  R                  5       r	\
rSrg)ChildTypeListMobileView   r!   N)r#   r$   r%   r&   r   r   	ChildTyper3   r   r   ChildTypeSerializerr   r'   r!   r    r   r   r      s%    23  $$&H*r    r   c                   R    \ rS rSr\/r\R                  R                  5       r	\
rSrg)GenderListMobileView   r!   N)r#   r$   r%   r&   r   r   Genderr3   r   r   GenderSerializerr   r'   r!   r    r   r   r      s#    23~~!!#H'r    r   c                   R    \ rS rSr\/r\R                  R                  5       r	\
rSrg)SymptomTypeListMobileView   r!   N)r#   r$   r%   r&   r   r   SymptomTyper3   r   r   SymptomTypeSerializerr   r'   r!   r    r   r   r      %    23""&&(H,r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)SymptomTypeListDashboardView   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r'   r!   r    r   r   r      (    24PQ""&&(H,r    r   c                   X    \ rS rSr\\/r\R                  R                  5       r
Sr\rSrg)SymptomTypeDetailDashboardView   r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r   r'   r!   r    r   r   r      -    24PQ""&&(HL,r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)$SymptomTypeLanguageListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   SymptomTypeLanguager3   r   r   SymptomTypeLanguageSerializerr   r'   r!   r    r   r   r     (    24PQ"**..0H4r    r   c                   X    \ rS rSr\\/r\R                  R                  5       r
Sr\rSrg)&SymptomTypeLanguageDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r   r'   r!   r    r   r   r     -    24PQ"**..0HL4r    r   c                   R    \ rS rSr\/r\R                  R                  5       r	\
rSrg)KickTrackerStatusListMobileViewi  r!   N)r#   r$   r%   r&   r   r   KickTrackerStatusr3   r   r   KickTrackerStatusSerializerr   r'   r!   r    r   r   r     %    23 ((,,.H2r    r   c                   R    \ rS rSr\/r\R                  R                  5       r	\
rSrg)BMICaseTypeListMobileViewi  r!   N)r#   r$   r%   r&   r   r   BMICaseTyper3   r   r   BMICaseTypeSerializerr   r'   r!   r    r   r   r     r   r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)BMICaseTypeListDashboardViewi$  r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r'   r!   r    r   r   r   $  r   r    r   c                   X    \ rS rSr\\/r\R                  R                  5       r
Sr\rSrg)BMICaseTypeDetailDashboardViewi*  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r   r'   r!   r    r   r   r   *  r   r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)$BMICaseTypeLanguageListDashboardViewi1  r!   N)r#   r$   r%   r&   r   r@   r   BMICaseTypeLanguager3   r   r   BMICaseTypeLanguageSerializerr   r'   r!   r    r   r   r   1  r   r    r   c                   X    \ rS rSr\\/r\R                  R                  5       r
Sr\rSrg)&BMICaseTypeLanguageDetailDashboardViewi7  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r   r'   r!   r    r   r   r   7  r   r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)BMICaseListDashboardViewiA  r!   N)r#   r$   r%   r&   r   r@   r   BMICaser3   r   r   BMICaseSerializerr   r'   r!   r    r   r   r   A  s&    24PQ""$H(r    r   c                   X    \ rS rSr\\/r\R                  R                  5       r
Sr\rSrg)BMICaseDetailDashboardViewiG  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r   r'   r!   r    r   r   r   G  s+    24PQ""$HL(r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg) BMICaseLanguageListDashboardViewiN  r!   N)r#   r$   r%   r&   r   r@   r   BMICaseLanguager3   r   r   BMICaseLanguageSerializerr   r'   r!   r    r   r   r   N  s(    24PQ&&**,H0r    r   c                   X    \ rS rSr\\/r\R                  R                  5       r
Sr\rSrg)"BMICaseLanguageDetailDashboardViewiT  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r   r'   r!   r    r   r   r   T  s-    24PQ&&**,HL0r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)"BMICaseWeightGainListDashboardViewi^  r!   N)r#   r$   r%   r&   r   r@   r   BMICaseWeightGainr3   r   r   BMICaseWeightGainSerializerr   r'   r!   r    r   r   r   ^  (    24PQ ((,,.H2r    r   c                   X    \ rS rSr\\/r\R                  R                  5       r
Sr\rSrg)$BMICaseWeightGainDetailDashboardViewid  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r   r'   r!   r    r   r   r   d  s-    24PQ ((,,.HL2r    r   c                   R    \ rS rSr\/r\R                  R                  5       r	\
rSrg)CalculationMethodListMobileViewil  r!   N)r#   r$   r%   r&   r   r   CalculationMethodr3   r   r   CalculationMethodSerializerr   r'   r!   r    r   r   r   l  r   r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)"CalculationMethodListDashboardViewir  r!   N)r#   r$   r%   r&   r   r@   r   r   r3   r   r   r   r   r'   r!   r    r   r   r   r  r   r    r   c                   X    \ rS rSr\\/rSr\R                  R                  5       r\rSrg)$CalculationMethodDetailDashboardViewix  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r3   r   r   r   r   r'   r!   r    r   r   r   x  s-    24PQL ((,,.H2r    r   c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)*CalculationMethodLanguageListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   CalculationMethodLanguager3   r   r   #CalculationMethodLanguageSerializerr   r'   r!   r    r   r   r     s(    24PQ(00446H:r    r   c                   X    \ rS rSr\\/rSr\R                  R                  5       r\rSrg),CalculationMethodLanguageDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r3   r   r   r   r   r'   r!   r    r   r   r     s-    24PQL(00446H:r    r   c                   X    \ rS rSr\/r\/r\R                  R                  5       r\rSrg)PregnancyWeekListMobileViewi  r!   N)r#   r$   r%   r&   r   r   r   filter_backendsPregnancyWeekr3   r   r   PregnancyWeekBasicSerializerr   r'   r!   r    r   r   r     s-    23*+O$$((*H3r    r   c                   \    \ rS rSr\/r\/rSr\	R                  R                  5       r\rSrg)PregnancyWeekDetailMobileViewi  r7   r!   N)r#   r$   r%   r&   r   r   r   r   r   r   r3   r   r   PregnancyWeekDetailSerializerr   r'   r!   r    r   r   r     s2    23*+OL$$((*H4r    r   c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)PregnancyWeekListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r3   r   r   r   r   r'   r!   r    r   r   r     s0    24PQ*+O$$((*H4r    r   c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg) PregnancyWeekDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r   r3   r   r   r   r   r'   r!   r    r   r   r     s5    24PQ*+OL$$((*H4r    r   c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)&PregnancyWeekLanguageListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   PregnancyWeekLanguager3   r   r   PregnancyWeekLanguageSerializerr   r'   r!   r    r   r   r     s0    24PQ*+O$,,002H6r    r   c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)(PregnancyWeekLanguageDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r   r3   r   r   r   r   r'   r!   r    r   r   r     s5    24PQ*+OL$,,002H6r    r   c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)!PregnancySymptomListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   PregnancySymptomr3   r   r   PregnancySymptomSerializerr   r'   r!   r    r   r  r    s0    24PQ*+O''++-H1r    r  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)#PregnancySymptomDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r  r3   r   r   r  r   r'   r!   r    r   r  r    s5    24PQ*+OL''++-H1r    r  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg))PregnancySymptomLanguageListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   PregnancySymptomLanguager3   r   r   "PregnancySymptomLanguageSerializerr   r'   r!   r    r   r  r    s0    24PQ*+O'//335H9r    r  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)+PregnancySymptomLanguageDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r	  r3   r   r   r
  r   r'   r!   r    r   r  r    s5    24PQ*+OL'//335H9r    r  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)#PregnancyCheckListListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   PregnancyCheckListr3   r   r   PregnancyCheckListSerializerr   r'   r!   r    r   r  r    0    24PQ*+O!))--/H3r    r  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)%PregnancyCheckListDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r  r3   r   r   r  r   r'   r!   r    r   r  r    5    24PQ*+OL!))--/H3r    r  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)+PregnancyCheckListLanguageListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   PregnancyCheckListLanguager3   r   r   $PregnancyCheckListLanguageSerializerr   r'   r!   r    r   r  r    0    24PQ*+O)11557H;r    r  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)-PregnancyCheckListLanguageDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r  r3   r   r   r  r   r'   r!   r    r   r  r    5    24PQ*+OL)11557H;r    r  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)#PregnancyNutritionListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   PregnancyNutritionr3   r   r   PregnancyNutritionSerializerr   r'   r!   r    r   r  r    r  r    r  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)%PregnancyNutritionDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r  r3   r   r   r   r   r'   r!   r    r   r"  r"    r  r    r"  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)+PregnancyNutritionLanguageListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   PregnancyNutritionLanguager3   r   r   $PregnancyNutritionLanguageSerializerr   r'   r!   r    r   r$  r$    r  r    r$  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)-PregnancyNutritionLanguageDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r%  r3   r   r   r&  r   r'   r!   r    r   r(  r(    r  r    r(  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)"PregnancyBabySizeListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   PregnancyBabySizer3   r   r   !PregnancyBabySizeDetailSerializerr   r'   r!   r    r   r*  r*    s0    24PQ*+O ((,,.H8r    r*  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)$PregnancyBabySizeDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r+  r3   r   r   r,  r   r'   r!   r    r   r.  r.    s5    24PQ*+OL ((,,.H8r    r.  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)*PregnancyBabySizeLanguageListDashboardViewi  r!   N)r#   r$   r%   r&   r   r@   r   r   r   PregnancyBabySizeLanguager3   r   r   #PregnancyBabySizeLanguageSerializerr   r'   r!   r    r   r0  r0    s0    24PQ*+O(00446H:r    r0  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg),PregnancyBabySizeLanguageDetailDashboardViewi  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r1  r3   r   r   r2  r   r'   r!   r    r   r4  r4    s5    24PQ*+OL(00446H:r    r4  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)MonthlyTipListDashboardViewi'  r!   N)r#   r$   r%   r&   r   r@   r   r   r   
MonthlyTipr3   r   r   MonthlyTipSerializerr   r'   r!   r    r   r6  r6  '  s0    24PQ*+O!!%%'H+r    r6  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)MonthlyTipDetailDashboardViewi-  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r7  r3   r   r   r8  r   r'   r!   r    r   r:  r:  -  s5    24PQ*+OL!!%%'H+r    r:  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)#MonthlyTipLanguageListDashboardViewi4  r!   N)r#   r$   r%   r&   r   r@   r   r   r   MonthlyTipLanguager3   r   r   MonthlyTipLanguageSerializerr   r'   r!   r    r   r<  r<  4  r  r    r<  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)%MonthlyTipLanguageDetailDashboardViewi:  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   r=  r3   r   r   r>  r   r'   r!   r    r   r@  r@  :  r  r    r@  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)TipListDashboardViewiC  r!   N)r#   r$   r%   r&   r   r@   r   r   r   Tipr3   r   r   TipSerializerr   r'   r!   r    r   rB  rB  C  s,    24PQ*+O{{ H$r    rB  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)TipDetailDashboardViewiI  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   rC  r3   r   r   rD  r   r'   r!   r    r   rF  rF  I  s1    24PQ*+OL{{ H$r    rF  c                   Z    \ rS rSr\\/r\/r\	R                  R                  5       r\rSrg)TipLanguageListDashboardViewiP  r!   N)r#   r$   r%   r&   r   r@   r   r   r   TipLanguager3   r   r   TipLanguageSerializerr   r'   r!   r    r   rH  rH  P  s0    24PQ*+O""&&(H,r    rH  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)TipLanguageDetailDashboardViewiV  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r   rI  r3   r   r   rJ  r   r'   r!   r    r   rL  rL  V  s5    24PQ*+OL""&&(H,r    rL  c                   l    \ rS rSr\R
                  " SSS9r\R
                  " SSS9r " S S5      rSr	g	)
SignInFilteri^  r.   exact
field_namelookup_exprr,   c                        \ rS rSr\rSS/rSrg)SignInFilter.Metaia  r,   r-   r!   N)r#   r$   r%   r&   r2   modelfieldsr'   r!   r    r   MetarT  a  s    
r    rW  r!   N)
r#   r$   r%   r&   filters
CharFilterr-   r,   rW  r'   r!   r    r   rN  rN  ^  s2    !!-LZabH'wGE
 
r    rN  c                   ^    \ rS rSr\\/r\/r\	r
\R                  R                  5       r\rSrg)ParentSignInMobileViewii  r!   N)r#   r$   r%   r&   r   r)   r   r   r   rN  filterset_classr2   r3   r   r   ParentSerializerr   r'   r!   r    r   r[  r[  i  s3    23FG*+O"O~~!!#H'r    r[  c                   (    \ rS rSr\/r\r/ rS r	Sr
g)&ParentForgetOrChangePasswordMobileViewip  c                 v    U R                  UR                  S9nUR                  SS9  UR                  5       nU$ )N)dataT)raise_exception)get_serializerra  is_validsave)r   r   argsrp   
serializerresults         r   post+ParentForgetOrChangePasswordMobileView.postu  s;    ((gll(;
D1"r    r!   N)r#   r$   r%   r&   r   r    ForgetOrChangePasswordSerializerr   r   ri  r'   r!   r    r   r_  r_  p  s    237Hr    r_  c                       \ rS rSr\/r\rSrg)ParentSignUpMobileViewi{  r!   N)	r#   r$   r%   r&   r   r   r]  r   r'   r!   r    r   rm  rm  {  s    23'r    rm  c                        \ rS rSr\\/r\rSr	g)ParentDetailSignUpMobileViewi  r!   N)
r#   r$   r%   r&   r   rU   r   ParentDetailSerializerr   r'   r!   r    r   ro  ro    s    23LM-r    ro  c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)ParentDataMobileViewi  r!   N)r#   r$   r%   r&   r   rU   r   r2   r3   r   r   r]  r   r'   r!   r    r   rr  rr    s&    24MN~~!!#H'r    rr  c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)ParentListDashboardViewi  r!   Nr#   r$   r%   r&   r   r@   r   r2   r3   r   r   r]  r   r'   r!   r    r   rt  rt    &    24PQ~~!!#H'r    rt  c                   T    \ rS rSr\\/r\R                  R                  5       r
\rSrg)ParentDetailDashboardViewi  r!   Nru  r!   r    r   rx  rx    rv  r    rx  c                   b    \ rS rSr\\/r\/r/ SQr	\
R                  R                  5       r\rSrg)ChildListMobileViewi  )r0   childTypeIdgenderIdr!   N)r#   r$   r%   r&   r   rU   r   r   r   filterset_fieldsChildr3   r   r   ChildSerializerr   r'   r!   r    r   rz  rz    s4    24MN*+O<}}  "H&r    rz  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg)ChildDetailMobileViewi  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r   r~  r3   r   r   r  r   r'   r!   r    r   r  r    s3    24MN*+OL}}  "H&r    r  c                   &    \ rS rSr\\/r/ rS rSr	g)SetAppForChildi  c                    UR                   R                  SS 5      nUS :X  a  [        R                  SS05      eUR                  nSU;  a  [        R                  SS05      eUS   n[        U5      U:w  a  [        R                  SS05      e[        R                  R                  US9R                  5       nUS:X  a  [        R                  SS05      eSU;  a  [        R                  SS05      eUS   n[        R                  R                  US9R                  5       nUS:X  a  [        R                  SS	05      eS
n	Sn
Sn[        R                  R                  US9R                  5       nUS:  a}  [        R                  R                  US9nUR                  S:X  aM  SUl        UR                  5         [        R                  R                  US9R                  SS9n
U
S:  a  SnOeSn	ObSn	O_US::  aY  [        R                  R                  US9nUR                  S:X  a*  UR                  S:X  a  SUl        UR                  5         SnOSn	US:X  a  [        R                  SU	/05      e[!        SU0SS9$ )Nr0   r   rr   zParent Id is invalid)r7   FchildIdzChild Id is requiredzChild Id is invalidr   r   r/      T)
isSelectedzNothing UpdatedzAlready Selected	isSuccess)safe)r1   r   r   r   ra  rX   r2   r3   r4   r8   r~  countr  re  excludeupdater
   )r   r   rf  rp   parentIdRequestjsonDataparentIdDatar<   r  r   recordCountr  
childCountrh   s                 r   ri  SetAppForChild.post  sf   !..22:dCd"--w7N.OPP<<X%--w7N.OPP
+</--w7M.NOO>>((L(9@@Bu--w7M.NOOH$--w7M.NOO9%==''7'3::<u--w7L.MNN	]]))\)BHHJ
>}}((G(4H""e+&*##mm33w3?FFTYFZ? $I#4L11_}}((G(4H""e+&&%/*.H'MMO $I1--w~.FGG[)45AAr    r!   N)
r#   r$   r%   r&   r   rU   r   r   ri  r'   r!   r    r   r  r    s    23LMH:Br    r  c                   `    \ rS rSr\\/r\/rS/r	\
R                  R                  5       r\rSrg)EmergencyContactListMobileViewi  r0   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  EmergencyContactr3   r   r   EmergencyContactSerializerr   r'   r!   r    r   r  r    s8    24MN*+O"|''++-H1r    r  c                   ^    \ rS rSr\\/r\/rSr	\
R                  R                  5       r\rSrg) EmergencyContactDetailMobileViewi  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r   r  r3   r   r   r  r   r'   r!   r    r   r  r    s5    24MN*+OL''++-H1r    r  c                   `    \ rS rSr\\/r\/rS/r	\
R                  R                  5       r\rSrg)ParentProfileListMobileViewi  r  r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ParentProfiler3   r   r   ParentProfileSerializerr   r'   r!   r    r   r  r    s8    24MN*+O!{$$((*H.r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)ParentProfileDetailMobileViewi
  r  r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r  
  s=    24MN*+O!{L$$((*H.r    r  c                   F   ^  \ rS rSrS rS rS rS rS rU 4S jr	Sr
U =r$ )	ParentFilteri  c                 f    [         R                  " SSS9US'   [         R                  " SSS9US'   U$ )NsymptomTypeIdrO  rP  symptomGroupIdrX  NumberFilterr   filterColumnss     r   getSymptomRowFilters!ParentFilter.getSymptomRowFilters  sA    )0)=)=&G*
o& +2*>*>'W+
&' r    c                 6    [         R                  " SSS9US'   U$ )N
date__daterO  rP  daterX  
DateFilterr  s     r   getKickTrackerGroupFilters'ParentFilter.getKickTrackerGroupFilters  s$     ' 2 2#!
f r    c                 6    [         R                  " SSS9US'   U$ )NkickTrackerGroupIdrO  rP  r  r  s     r   getKickTrackerRowFilters%ParentFilter.getKickTrackerRowFilters$  s%    .5.B.B+/
*+ r    c                 6    [         R                  " SSS9US'   U$ )NrE   rO  rP  )rX  rY  r  s     r   getUserDeviceFilters!ParentFilter.getUserDeviceFilters*  s$    !(!3!3G"
g r    c                 6    [         R                  " SSS9US'   U$ )Nr  rO  rP  r  r  s     r   getTodoFiltersParentFilter.getTodoFilters0  s$     ' 2 27!
f r    c                   > [         TU ]  " U0 UD6  U R                  R                  R	                  S5      nUR                  S5      nUS   n[        R                  " SSS9[        R                  " SSS9S.U l        US	:X  a=  S
[        R                  " SSS90U l        U R                  U R                  5      U l        g US:X  a!  U R                  U R                  5      U l        g US:X  a=  S
[        R                  " SSS90U l        U R                  U R                  5      U l        g US:X  a!  U R                  U R                  5      U l        g US:X  a!  U R                  U R                  5      U l        g g )N/_mobiler   "parentProfileId__childId__parentIdrO  rP  parentProfileId)r0   r  symptom_rowr0   2symptomGroupId__parentProfileId__childId__parentIdkick_tracker_groupkick_tracker_row6kickTrackerGroupId__parentProfileId__childId__parentIduser_devicetodo)super__init__r   pathstripsplitrX  r  r  r  r  r  r  )r   rf  rp   apiPath	__class__s       r   r  ParentFilter.__init__6  sZ   $)&),,##))#.--	*!*  ,,?W  '33,' 	
 m#G00S 'DL  44T\\BDL,,::4<<HDL**G00W 'DL  88FDL%44T\\BDL..t||<DL r    )rX  )r#   r$   r%   r&   r  r  r  r  r  r  r'   __classcell__)r  s   @r   r  r    s&    %= %=r    r  c                   f    \ rS rSr\\/r\/rS/r	\
r\R                  R                  S5      r\rSrg)SymptomGroupListMobileViewic  r  -dater!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ry   pagination_classSymptomGroupr3   order_byr   SymptomGroupSerializerr   r'   r!   r    r   r  r  c  sA    24MP*+O)*,##,,W5H-r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)SymptomGroupDetailMobileViewim  r  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r  m  s>    24MP*+O)*L##'')H-r    r  c                   b    \ rS rSr\\/r\/rSS/r	\
R                  R                  5       r\rSrg)SymptomRowListMobileViewiz  r  r  r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  
SymptomRowr3   r   r   SymptomRowSerializerr   r'   r!   r    r   r  r  z  s;    24MP*+O(9!!%%'H+r    r  c                   f    \ rS rSr\\/r\/rSS/r	Sr
\R                  R                  5       r\rSrg)SymptomRowDetailMobileViewi  r  r  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r    s@    24MP*+O(9L!!%%'H+r    r  c                   f    \ rS rSr\\/r\/rS/r	\
r\R                  R                  S5      r\rSrg)KickTrackerGroupListMobileViewi  r  r  r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ry   r  KickTrackerGroupr3   r  r   KickTrackerGroupSerializerr   r'   r!   r    r   r  r    sA    24MP*+O)*,''009H1r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg) KickTrackerGroupDetailMobileViewi  r  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r    s>    24MP*+O)*L''++-H1r    r  c                   f    \ rS rSr\\/r\/rS/r	\
r\R                  R                  S5      r\rSrg)KickTrackerRowListMobileViewi  r  r  r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ry   r  KickTrackerRowr3   r  r   KickTrackerRowSerializerr   r'   r!   r    r   r  r    sA    24MN*+O,-,%%..w7H/r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)KickTrackerRowDetailMobileViewi  r  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r    s>    24MP*+O,-L%%))+H/r    r  c                   f    \ rS rSr\\/r\/rS/r	\
r\R                  R                  S5      r\rSrg)WeightGainListMobileViewi  r  z-createdDater!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ry   r  
WeightGainr3   r  r   WeightGainSerializerr   r'   r!   r    r   r  r    sA    24MP*+O)*,!!**>:H+r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)WeightGainDetailMobileViewi  r  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r    s>    24MP*+O)*L!!%%'H+r    r  c                   f    \ rS rSr\\/r\/rS/r	\
r\R                  R                  S5      r\rSrg)OvulationListMobileViewi  r  -idr!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ry   r  	Ovulationr3   r  r   OvulationSerializerr   r'   r!   r    r   r  r    sA    24MP*+O)*,  ))%0H*r    r  c                   f    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  S5      r\rSrg)OvulationDetailMobileViewi  r  r7   r  r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r  r   r  r   r'   r!   r    r   r  r    s@    24MP*+O)*L  ))%0H*r    r  c                   f    \ rS rSr\\/r\/rS/r	\
r\R                  R                  S5      r\rSrg)OvulationListDashboardViewi  r  r  r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  ry   r  r  r3   r  r   r  r   r'   r!   r    r   r  r    sA    24PQ*+O)*,  ))%0H*r    r  c                   f    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  S5      r\rSrg)OvulationDetailDashboardViewi  r  r7   r  r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  r   r  r3   r  r   r  r   r'   r!   r    r   r  r    s@    24PQ*+O)*L  ))%0H*r    r  c                   d    \ rS rSr\\/r\/rS/r	\
r\R                  R                  5       r\rSrg)DueDateCalculatorListMobileViewi  r  r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ry   r  DueDateCalculatorr3   r   r   DueDateCalculatorSerializerr   r'   r!   r    r   r  r    s?    24MP*+O)*, ((,,.H2r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)!DueDateCalculatorDetailMobileViewi  r  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r    s>    24MP*+O)*L ((,,.H2r    r  c                   d    \ rS rSr\\/r\/rS/r	\
r\R                  R                  5       r\rSrg)"DueDateCalculatorListDashboardViewi
  r  r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  ry   r  r  r3   r   r   r  r   r'   r!   r    r   r  r  
  s?    24PQ*+O)*, ((,,.H2r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)$DueDateCalculatorDetailDashboardViewi  r  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r    s>    24PQ*+O)*L ((,,.H2r    r  c                       \ rS rSr\\/r\/rS/r	\
r\R                  R                  5       R                  S5      r\rSrg)NotesListMobileViewi  r  r  r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ry   r  Notesr3   r   r  r   NotesSerializerr   r'   r!   r    r   r  r    sH    24MP*+O)*,}}  "++E2H&r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)NotesDetailMobileViewi%  r  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r	  r   r'   r!   r    r   r  r  %  s<    24MP*+O)*L}}  "H&r    r  c                   `    \ rS rSr\\/r\/rS/r	\
R                  R                  5       r\rSrg)NotesListDashboardViewi.  r  r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  r  r3   r   r   r	  r   r'   r!   r    r   r  r  .  s7    24PQ*+O)*}}  "H&r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)NotesDetailDashboardViewi6  r  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  r   r  r3   r   r   r	  r   r'   r!   r    r   r  r  6  s<    24PQ*+O)*L}}  "H&r    r  c                       \ rS rSr\\/r\/rS/r	\
r\R                  R                  5       R                  S5      R                  S5      r\rSrg)AppointmentListMobileViewi?  r  dateTimeisDoner!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ry   r  Appointmentr3   r   r  r   AppointmentSerializerr   r'   r!   r    r   r  r  ?  sU    24MP*+O)*,""&&(11*=FFxPH,r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)AppointmentDetailMobileViewiH  r  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r  H  s>    24MP*+O)*L""&&(H,r    r  c                       \ rS rSr\\/r\/rS/r	\
r\R                  R                  5       R                  S5      R                  S5      r\rSrg)AppointmentListDashboardViewiQ  r  r  r  r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  ry   r  r  r3   r   r  r   r  r   r'   r!   r    r   r  r  Q  sU    24PQ*+O)*,""&&(11*=FFxPH,r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)AppointmentDetailDashboardViewiZ  r  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r  r  Z  s>    24PQ*+O)*L""&&(H,r    r  c                       \ rS rSr\\/r\/rS/r	\
r\R                  R                  5       R                  S5      R                  S5      r\rSrg)TodoListMobileViewig  r  r  r  r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  ry   r  Todor3   r   r  r   TodoSerializerr   r'   r!   r    r   r  r  g  sS    24MP*+O)*,||!**:6??IH%r    r  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)TodoDetailMobileViewip  r  r7   r!   N)r#   r$   r%   r&   r   rU   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r!  r!  p  s<    24MP*+O)*L||!H%r    r!  c                       \ rS rSr\\/r\/rS/r	\
r\R                  R                  5       R                  S5      R                  S5      r\rSrg)TodoListDashboardViewiy  r  r  r  r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  ry   r  r  r3   r   r  r   r  r   r'   r!   r    r   r#  r#  y  sS    24PQ*+O)*,||!**:6??IH%r    r#  c                   d    \ rS rSr\\/r\/rS/r	Sr
\R                  R                  5       r\rSrg)TodoDetailDashboardViewi  r  r7   r!   N)r#   r$   r%   r&   r   r@   r   r   r   r}  r   r  r3   r   r   r  r   r'   r!   r    r   r%  r%    s<    24PQ*+O)*L||!H%r    r%  )r   r   mama_care.modelsmama_care.serializersdjango_filtersrX  django_filters.rest_frameworkr   r   r   mama_care_api.settingsr	   django.httpr
   django.core.filesr   r   jsonBaseAuthenticationr   r)   r@   rU   PageNumberPaginationry   ListAPIViewr   ListCreateAPIViewr   RetrieveUpdateDestroyAPIViewr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   RetrieveAPIViewr   r   r   r   r   r  r  r  r  r  r  r  r  r  r"  r$  r(  r*  r.  r0  r4  r6  r:  r<  r@  rB  rF  rH  rL  	FilterSetrN  r[  GenericAPIViewr_  CreateAPIViewrm  ro  rr  rt  rx  rz  r  r  r  r  r  r  r  r  DestroyAPIViewr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r!  r#  r%  r!   r    r   <module>r8     s   #  # 4 = ) % $ . $ " % H><< H&H.;; H>H>#D#D H@JH A A JHXJ;; .!5!5 .
.H$>$> .
.h&K&K .*X11 ** : : **("G"G *+h22 +(8// (- 4 4 --8#=#= --X%J%J -58+E+E 55X-R-R 53h&:&: 3- 4 4 --8#=#= --X%J%J -58+E+E 55X-R-R 5)x99 ))!F!F )1x'A'A 11)N)N 13)C)C 338+P+P 33h&:&: 33)C)C 338+P+P 3;1K1K ;;83X3X ;4("6"6 45H$<$< 55X%?%? 55x'L'L 57X-G-G 77x/T/T 72(B(B 22(*O*O 2:0J0J ::(2W2W :4(*D*D 44H,Q,Q 4<(2L2L <<H4Y4Y <4(*D*D 44H,Q,Q 4<(2L2L <<H4Y4Y <9)C)C 998+P+P 9;1K1K ;;83X3X ;,("<"< ,,H$I$I ,4(*D*D 44H,Q,Q 4%855 %%XBB %-8#=#= --X%J%J -
7$$ 
(X11 (	X-D-D 	(X33 (.8#9#9 .(8@@ ((h22 (( E E ('(44 ''HAA '=BX,, =BF2X%?%? 22x'L'L 2/("<"< //H$I$I /H=7$$ H=`.!7!7 ..8#:#: .,x99 ,,!8!8 ,2X%?%? 22x'>'> 208#=#= 00X%<%< 0,x99 ,,!8!8 ,+h88 ++ 7 7 ++!;!; ++8#H#H +3h&@&@ 33(M(M 33)C)C 338+P+P 3'(44 ''HAA ''X77 ''xDD '- : : --("G"G --8#=#= --X%J%J -&33 &&8@@ &&H66 &&hCC &r    