HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //usr/lib/python3/dist-packages/twisted/python/__pycache__/formmethod.cpython-38.pyc
U


W[�,�@s�dZddlZddlmZGdd�de�ZGdd�de�ZeGdd	�d	��ZGd
d�de�ZGdd
�d
e�Z	Gdd�de�Z
Gdd�de�ZGdd�de�ZGdd�de�Z
Gdd�de
�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGd d!�d!e�ZGd"d#�d#e�ZGd$d%�d%e�Zd&d'�ZGd(d)�d)e�ZGd*d+�d+e�ZeGd,d-�d-��ZeGd.d/�d/��ZeGd0d1�d1��ZdS)2z�
Form-based method objects.

This module contains support for descriptive method signatures that can be used
to format methods.
�N)�	_oldStylec@seZdZdZdd�ZdS)�
FormExceptionz/An error occurred calling the form method.
    cOstj|f|��||_dS�N)�	Exception�__init__Zdescriptions)�self�args�kwargs�r
�;/usr/lib/python3/dist-packages/twisted/python/formmethod.pyrszFormException.__init__N)�__name__�
__module__�__qualname__�__doc__rr
r
r
rrsrc@seZdZdZdS)�
InputErrorz,
    An error occurred with some input.
    N�rr
rrr
r
r
rrsrc@sHeZdZdZdZddd�Zdd�Zddd	�Zd
d�Zdd
�Z	dd�Z
dS)�ArgumentzBase class for form arguments.N�cCs>||_||_|dkr|j}||_||_||_|s4i}||_dSr)�name�	allowNone�defaultDefault�default�	shortDesc�longDesc�hints)rrrrrrrr
r
rr(szArgument.__init__cKs|j�|�dSr)r�update)rr	r
r
r�addHints5szArgument.addHintscCs|j�||�Sr)r�get)rrrr
r
r�getHint8szArgument.getHintcCs|jp|j��Sr)rr�
capitalize�rr
r
r�getShortDescription;szArgument.getShortDescriptioncCs
|jpdS)N�)rr r
r
r�getLongDescription>szArgument.getLongDescriptioncCstd��dS)z(Convert the value to the correct format.zimplement in subclassN)�NotImplementedError�r�valr
r
r�coerceAszArgument.coerce)NNNNr)N)rr
rrrrrrr!r#r'r
r
r
rr!s�


rc@s.eZdZdZdZdZdZd
dd�Zdd	�ZdS)�StringzA single string.
    r"rNrc			Cs(tj|||||||d�||_||_dS)N)rrrrr)rr�min�max)	rrrrrrrr)r*r
r
rrMs�zString.__init__cCsRt|�}t|�|jkr$td|j��|jdkrJt|�|jkrJtd|j��t|�S)N�)Value must be at least %s characters long�(Value must be at most %s characters long)�str�lenr)rr*)rr&�sr
r
rr'Tsz
String.coerce)NNNNrrN)	rr
rrrr)r*rr'r
r
r
rr(Fs�
r(c@seZdZdZdS)�TextzA long string.
    Nrr
r
r
rr0]sr0c@seZdZdZdS)�Passwordz2A string which should be obscured when input.
    Nrr
r
r
rr1bsr1c@seZdZdZdd�ZdS)�VerifiedPasswordzCA string that should be obscured when input and needs verification.cCsvt|�dks|d|dkr$td��t|d�}t|�|jkrLtd|j��|jdkrrt|�|jkrrtd|j��|S)N�rrz%Please enter the same password twice.r+r,)r.rr-r)r*)rZvalsr/r
r
rr'jszVerifiedPassword.coerceN)rr
rrr'r
r
r
rr2gsr2c@seZdZdZdS)�HiddenzSA string which is not displayed.

    The passed default is used as the value.
    Nrr
r
r
rr4usr4c@s&eZdZdZdZddd�Zdd�ZdS)	�IntegerzA single integer.
    Nrc	Cst�|||||||�dSr�rr�rrrrrrrr
r
rr�s�zInteger.__init__cCsB|��s|jrdSz
t|�WStk
r<td|��YnXdS)Nz5%s is not valid, please enter a whole number, e.g. 10)�stripr�int�
ValueErrorrr%r
r
rr'�s
zInteger.coerce)rNNNN�rr
rrrrr'r
r
r
rr5|s�

r5c@seZdZddd�Zdd�ZdS)�IntegerRangerNc			Cs(||_||_tj|||||||d�dS)N)rrrrr)r)r*r5r)	rrr)r*rrrrrr
r
rr�s�zIntegerRange.__init__cCsZt�||�}|jr|dkr|S||jkr:td||jf��||jkrVtd||jf��|S)Nz/Value %s is too small, it should be at least %sz.Value %s is too large, it should be at most %s)r5r'rr)rr*)rr&�resultr
r
rr'�s

zIntegerRange.coerce)rNNNN�rr
rrr'r
r
r
rr<�s
�
r<c@s"eZdZdZddd�Zdd�ZdS)�FloatNrc	Cst�|||||||�dSrr6r7r
r
rr�s�zFloat.__init__cCsB|��s|jrdSz
t|�WStk
r<td|��YnXdS)NzInvalid float: %s)r8r�floatr:rr%r
r
rr'�s
zFloat.coerce)rNNNN)rr
rrrr'r
r
r
rr?�s�
r?c@s.eZdZdZggddddfdd�Zdd�ZdS)�Choicea�
    The result of a choice between enumerated types.  The choices should
    be a list of tuples of tag, value, and description.  The tag will be
    the value returned if the user hits "Submit", and the description
    is the bale for the enumerated type.  default is a list of all the
    values (seconds element in choices).  If no defaults are specified,
    initially the first item will be selected.  Only one item can (should)
    be selected at once.
    Nrc	Cs<||_|r |s |�|dd�tj|||||||d�dS)Nrr�r)�choices�appendrr)rrrCrrrrrr
r
rr�szChoice.__init__cCs2|jD]\}}}||kr|Sqtd|��dS)NzInvalid Choice: %s)rCr)rZinIdentZidentr&Zdescr
r
rr'�s
z
Choice.coerce�rr
rrrr'r
r
r
rrA�s	�
rAc@s"eZdZdZd	dd�Zdd�ZdS)
�Flagsa�
    The result of a checkbox group or multi-menu.  The flags should be a
    list of tuples of tag, value, and description. The tag will be
    the value returned if the user hits "Submit", and the description
    is the bale for the enumerated type.  default is a list of all the
    values (second elements in flags).  If no defaults are specified,
    initially nothing will be selected.  Several items may be selected at
    once.
    r
Nrc	Cs"||_tj|||||||d�dS�NrB)�flagsrr)rrrHrrrrrr
r
rr�szFlags.__init__cCsN|sgSg}|D]8}|jD] \}}}||kr|�|�qqtd|��q|S)NzInvalid Flag: %s)rHrDr)rZ
inFlagKeysZoutFlagsZ	inFlagKeyZflagKeyZflagValZflagDescr
r
rr'�s
zFlags.coerce)r
r
NNNrrEr
r
r
rrF�s	�
rFc@seZdZdS)�
CheckGroupN�rr
rr
r
r
rrI�srIc@seZdZdS)�
RadioGroupNrJr
r
r
rrK�srKc@seZdZdd�ZdS)�BooleancCs$|sdSt|���}|dkr dSdS)Nr)Zno�n�fZfalse�0r)r-�lower)rZinValZlInValr
r
rr'�szBoolean.coerceN)rr
rr'r
r
r
rrL�srLc@seZdZddd�Zdd�ZdS)�FilerNc	Cstj||d||||d�dSrGr6)rrrrrrr
r
rrs�z
File.__init__cCs"|s|jrdS|r|Std��dS)NzInvalid File)rr)r�filer
r
rr'
s

zFile.coerce)rNNNr>r
r
r
rrQs�
rQcCst|�}|dkrt�|S)Nr)r9r:)�xr
r
r�positiveIntsrTc@s&eZdZdZdZddd�Zdd�ZdS)	�Datez#A date -- (year, month, day) tuple.NrcCs(t�||||||�||_|s$d|_dS)N)i�rr)rrrrr7r
r
rrsz
Date.__init__cCs�t|�dkr|jrdSztt|�\}}}Wntk
rFtd��YnX||fdkrvt�|�sltd|��n
|||fSztj|}Wnt	k
r�td��YnX||kr�td��|||fS)z(Return tuple of ints (year, month, day).)r"r"r"NzInvalid date)r3�z%d was not a leap year)
�tupler�maprTr:r�calendarZisleap�mdays�
IndexError)rrZyearZmonthZdayrZr
r
rr'&s"

zDate.coerce)rNNNNr;r
r
r
rrUs�
rUc@s0eZdZdZdgdddddfdd�Zdd�ZdS)	�Submitz0Submit button or a reasonable facsimile thereof.)r\ZsubmitzSubmit formrNcCs&tj||||||d�||_||_dS)N)rCrrr)rArr�reset)rrrCr]rrrrr
r
rr@s�zSubmit.__init__cCs|jr|sdSt�||�SdSr)rrAr')r�valuer
r
rr'Gs
z
Submit.coercerEr
r
r
rr\=s�
r\c@seZdZdZdS)�PresentationHintz(
    A hint to a particular system.
    Nrr
r
r
rr_Osr_c@s*eZdZdZdd�Zdd�Zd
dd�Zd	S)�MethodSignaturez$
    A signature of a callable.
    cGs
||_dS)z	
        N)�methodSignature)rZsigListr
r
rr]szMethodSignature.__init__cCs"|jD]}|j|kr|SqdSr)rar)rr�ar
r
r�getArgumentbs

zMethodSignature.getArgumentFcCst|||�Sr)�
FormMethod)r�callable�takesRequestr
r
r�methodgszMethodSignature.methodN)F)rr
rrrrcrgr
r
r
rr`Wsr`c@s*eZdZdZd
dd�Zdd�Zdd�Zd	S)rdz#A callable object with a signature.FcCs||_||_||_dSr)�	signaturererf)rrhrerfr
r
rrpszFormMethod.__init__cCst|jj�Sr)rWrhrar r
r
r�getArgsuszFormMethod.getArgscOs|j||�Sr)re)rr�kwr
r
r�callxszFormMethod.callN)F)rr
rrrrirkr
r
r
rrdls
rd)rrYZtwisted.python._oldstylerrrrrr(r0r1r2r4r5r<r?rArFrIrKrLrQrTrUr\r_r`rdr
r
r
r�<module>s:$	#