o
    Ci                     @   st  d dl mZ G dd dejZG dd dejZG dd deZG dd	 d	ejZG d
d dejZG dd dejZ	G dd dejZ
G dd deZG dd deZG dd deZG dd dejZG dd deZG dd deZG dd dejZG dd dejZG d d! d!ejZG d"d# d#eZG d$d% d%eZG d&d' d'eZG d(d) d)eZG d*d+ d+eZd,S )-    )modelsc                   @   s6   e Zd ZdZejddZejddZG dd dZdS )TimeAtzF
    Abstract base model to track creation and update timestamps.
    T)auto_now_add)auto_nowc                   @   s   e Zd ZdZdS )zTimeAt.MetaTN)__name__
__module____qualname__abstract r
   r
   (/var/www/html/premium_crap/api/models.pyMeta   s    r   N)	r   r   r   __doc__r   DateTimeField	createdAt	updatedAtr   r
   r
   r
   r   r      s
    r   c                   @      e Zd ZdZdZdZdS )
DeviceTypeAndroidIOSOtherN)r   r   r   ANDROIDr   OTHERr
   r
   r
   r   r          r   c                   @   s   e Zd ZejddZejdejdZej	ddZ
ejdddZejdddd	ZejdddZejdddZejdddd	Zd
d ZdS )Device   
max_length
   r   choicesFdefaultTnullblankr   r#   r$   c                 C      | j  d| j S Nz - )pkdeviceTokenselfr
   r
   r   __str__#      zDevice.__str__N)r   r   r   r   	CharFieldr)   r   r   
deviceTypeBooleanFieldisSubscriptionr   expireAtlastPurchaseToken	TextFieldoriginalTransactionIdappleTransactionId	productIdr,   r
   r
   r
   r   r      s    r   c                   @   s(   e Zd Ze ZejddZdd ZdS )Categoryz	category/)	upload_toc                 C      | j  S Nr(   r*   r
   r
   r   r,   +      zCategory.__str__N)	r   r   r   r   r4   description
ImageFieldimager,   r
   r
   r
   r   r8   '   s    r8   c                   @   sR   e Zd ZejeejdZe Z	ej
ddZej
ddZejdddZdd ZdS )	
Craptitude	on_deleter   r   Tr"   c                 C   r:   r;   r<   r*   r
   r
   r   r,   6   r=   zCraptitude.__str__N)r   r   r   r   
ForeignKeyr8   CASCADEcategoryPositiveIntegerFieldroundNumberr.   diaperPrefixdumpsterPrefixr   	deletedAtr,   r
   r
   r
   r   rA   /   s    rA   c                   @      e Zd ZdZdZdS )TeamNamezDiaper TeamzDumpster TeamN)r   r   r   DIAPERDUMPSTERr
   r
   r
   r   rM   :       rM   c                   @   s&   e Zd ZejdejddZdd ZdS )Team   T)r   r   uniquec                 C   r&   r'   r(   namer*   r
   r
   r   r,   B   r-   zTeam.__str__N)	r   r   r   r   r.   rM   r   rU   r,   r
   r
   r
   r   rQ   ?   s    rQ   c                   @   sD   e Zd ZejeejdZejeejdZ	eje
ejdZdd ZdS )GameSessionrB   c                 C   r:   r;   r<   r*   r
   r
   r   r,   K   r=   zGameSession.__str__N)r   r   r   r   rD   r   rE   devicer8   rF   rA   
craptituder,   r
   r
   r
   r   rV   F   s
    rV   c                   @   s@   e Zd ZejeejdZejeejdZ	ej
ddZdd ZdS )PlayerrB   r   r   c                 C   s   | j  d| j dS )Nz ()rT   r*   r
   r
   r   r,   T   s   zPlayer.__str__N)r   r   r   r   rD   rV   rE   sessionrQ   teamr.   rU   r,   r
   r
   r
   r   rY   O   s
    rY   c                   @   sL   e Zd ZejeejdZejeejdZ	eje
ejdZe Zdd ZdS )SentencerB   c                 C   r:   r;   r<   r*   r
   r
   r   r,   ^   r=   zSentence.__str__N)r   r   r   r   rD   rV   rE   r[   rQ   r\   rY   playerr4   textr,   r
   r
   r
   r   r]   X   s    r]   c                   @      e Zd ZdZdZdZdZdS )RatingScore            N)r   r   r   BOWEL_MOVEMENTURINAL_SPLASH	TINY_TOOTTOILET_FLUSHr
   r
   r
   r   ra   b   
    ra   c                   @   s>   e Zd ZejeejdZee	Z
e Ze Zdd ZdS )RatingrB   c                 C   r:   r;   r<   r*   r
   r
   r   r,   o   r=   zRating.__str__N)r   r   r   r   rD   rV   rE   r[   ManyToManyFieldr]   sentencerG   diaperScoredumpsterScorer,   r
   r
   r
   r   rk   i   s    
rk   c                   @   s0   e Zd ZejeejdZejddZ	dd Z
dS )CraptitudeHistoryrB   r   r    c                 C   r:   r;   r<   r*   r
   r
   r   r,   w   r=   zCraptitudeHistory.__str__N)r   r   r   r   rD   rV   rE   r[   IntegerFieldlevelCompletedr,   r
   r
   r
   r   rp   s   s    rp   c                   @   r`   )OptionChoicerb   rc   rd   re   N)r   r   r   PART_TWOPART_ONE_AND_PART_TWO
CRAPTITUDECATEGORYr
   r
   r
   r   rs   {   rj   rs   c                   @   r   )PlanTyperb   rc   rd   N)r   r   r   FREE_ACCESSBASIC_PREMIUMFULL_ACCESSr
   r
   r
   r   rx      r   rx   c                   @   rL   )
PlanPeriodFREEYEARN)r   r   r   r}   r~   r
   r
   r
   r   r|      rP   r|   c                   @   s|   e Zd ZejddZejddddZeje	dZ
ejddZejejejdZejd	d
dZejdejd
d
dZdd ZdS )Planc   r      rc   r   )
max_digitsdecimal_placesr!   r    )r   r!   d   T)r   rS   r   )r   r   r#   r$   c                 C   r:   r;   r<   r*   r
   r
   r   r,      r=   zPlan.__str__N)r   r   r   r   r.   rU   DecimalFieldprice	JSONFieldlistr>   rq   unlockCategoryrx   r   ry   typer7   r|   periodr,   r
   r
   r
   r   r      s    r   c                   @   s`   e Zd ZejeejdZejddZ	ejddZ
ejddZe Ze Ze Zdd ZdS )AndroidTransactionrB      r   c                 C   r:   r;   r<   r*   r
   r
   r   r,      r=   zAndroidTransaction.__str__N)r   r   r   r   rD   r   rE   rW   r.   r7   orderIdpurchaseTokenrq   notificationTyper   startAtr2   r,   r
   r
   r
   r   r      s    r   c                   @   s   e Zd ZejeejdddZejddZ	ejddddZ
ejddZejddddZejdddZe Ze ZejddddZejddddZejddddZdd	 Zd
S )AppleTransactionT)rC   r#   r$   r   r   r%   r"   2   c                 C   r:   r;   r<   r*   r
   r
   r   r,      r=   zAppleTransaction.__str__N)r   r   r   r   rD   r   rE   rW   r.   r7   r6   r5   webOrderLineItemIdr4   appleReceiptr   r   r2   environmenttransactionReasonr   r,   r
   r
   r
   r   r      s    r   c                   @   s   e Zd ZejeejdZejeejdZ	ej
ddZej
ddZe Ze Ze ZejddZe ZejddZej
ddZdd	 Zd
S )TransactionrB   r   r   r   r    T)r#   c                 C   r:   r;   r<   r*   r
   r
   r   r,      r=   zTransaction.__str__N)r   r   r   r   rD   r   rE   rW   r   planr.   r7   r   r4   r5   r6   r   
FloatFieldamountr   r   r2   r   r,   r
   r
   r
   r   r      s    r   c                   @   s>   e Zd ZejddZejdejdZej	dddZ
dd Zd	S )

AppVersionr   r   r   r   Tr"   c                 C   r:   r;   r<   r*   r
   r
   r   r,      r=   zAppVersion.__str__N)r   r   r   r   r.   versionCoder   r   r/   r   rK   r,   r
   r
   r
   r   r      s
    r   N)	django.dbr   Modelr   TextChoicesr   r   r8   rA   rM   rQ   rV   rY   r]   IntegerChoicesra   rk   rp   rs   rx   r|   r   r   r   r   r   r
   r
   r
   r   <module>   s,    		

