o
    ;òÛi~  ã                   @   st   d dl mZ d dlmZ d dlmZ ddlmZ ddl	m
Z
 G dd„ deƒZG d	d
„ d
ejƒZG dd„ dejƒZdS )é    )Úforms)ÚModelChoiceField)Úgettext_lazyé   )ÚAccount)ÚTransactionc                   @   s   e Zd Zdd„ ZdS )ÚAccountChoiceFieldc                 C   s   |j › dtdƒ› d|jd›�S )Nz - ZBalancez: z.2f)ÚibanÚ_Úbalance)ÚselfÚaccount© r   úFC:\Users\Uzivatel\Documents\attachments\prilohy\bp_ib\banking\forms.pyÚlabel_from_instance
   s   z&AccountChoiceField.label_from_instanceN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   	   s    r   c                       s~   e Zd Zejdedƒd�Zejedƒdd�Zejedƒdej	d	d
id�d�Z
eedƒdd�Z‡ fdd„ZG dd„ dƒZ‡  ZS )ÚNewTransactionFormg{®Gáz„?ÚAmount)Ú	min_valueÚlabelÚBeneficiaryé   )r   Ú
max_lengthúInformation for beneficiaryFÚrowsÚ2©Úattrs)r   ÚrequiredÚwidgetz
Payer IBANN)r   Úquerysetc                    sn   t ƒ j|i |¤Ž tjj|d�| jd _tdƒ| jd jj	d< tdƒ| jd jj	d< tdƒ| jd	 jj	d< d S )
N)ÚuserÚ
payer_ibanr   ÚamountÚplaceholderr   Úbeneficiary_ibanr   Úinformation)
ÚsuperÚ__init__r   ÚobjectsÚfilterÚfieldsr"   r
   r!   r   )r   r#   ÚargsÚkwargs©Ú	__class__r   r   r*      s
   zNewTransactionForm.__init__c                   @   s0   e Zd ZeZg d¢ZedƒedƒedƒdœZdS )zNewTransactionForm.Meta)r$   r%   r'   r(   Úvariable_symbolÚspecific_symbolÚconstant_symbolzVariable symbolzSpecific symbolzConstant symbol)r2   r3   r4   N)r   r   r   r   Úmodelr-   r
   Úlabelsr   r   r   r   ÚMeta&   s    

ýr7   )r   r   r   r   Ú
FloatFieldr
   r%   Ú	CharFieldr'   ÚTextarear(   r   r$   r*   r7   Ú__classcell__r   r   r0   r   r      s    þýr   c                	   @   s2   e Zd Zejedƒddejddddœd�d�Zd	S )
ÚPaymentVerificationFormzVerification codeé   zform-control text-centerÚnumericzone-time-code)ÚclassZ	inputmodeÚautocompleter   )r   r   Ú
min_lengthr!   N)r   r   r   r   r9   r
   Ú	TextInputÚcoder   r   r   r   r<   8   s    ýÿ
ür<   N)Údjangor   Zdjango.formsr   Údjango.utils.translationr   r
   Zmodels.accountr   Zmodels.transactionr   r   Ú	ModelFormr   ÚFormr<   r   r   r   r   Ú<module>   s   *