Back to index

python-weblib  1.3.9
Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions
pyweblib.forms.File Class Reference
Inheritance diagram for pyweblib.forms.File:
Inheritance graph
[legend]
Collaboration diagram for pyweblib.forms.File:
Collaboration graph
[legend]

List of all members.

Public Member Functions

def inputHTML
def inputHTML
def idAttrStr
def labelHTML
def getValue
def setDefault
def setRegex
def setValue
def setCharset
def titleHTML
def valueHTML

Public Attributes

 size
 value
 name
 text
 maxLen
 maxValues
 required
 accessKey
 inputHTMLTemplate
 valueHTMLTemplate
 charset
 default

Static Public Attributes

string mimeType = 'application/octet-stream'

Private Member Functions

def _validateFormat
def _encodeValue

Detailed Description

File upload field
<input type="file">

Definition at line 349 of file forms.py.


Member Function Documentation

def pyweblib.forms.File._encodeValue (   self,
  value 
) [private]
Return Unicode object or string to be stored in self.value

Reimplemented from pyweblib.forms.Field.

Definition at line 360 of file forms.py.

00360 
00361   def _encodeValue(self,value):
00362     """
00363     Return Unicode object or string to be stored in self.value
00364     """
00365     return value

def pyweblib.forms.File._validateFormat (   self,
  value 
) [private]
Binary data is assumed to be valid all the time

Reimplemented from pyweblib.forms.Field.

Definition at line 356 of file forms.py.

00356 
00357   def _validateFormat(self,value):
00358     """Binary data is assumed to be valid all the time"""
00359     return

def pyweblib.forms.Field.getValue (   self) [inherited]
Returns self.value in case of multi-valued input or
self.value[0] if only one value is allowed.

Definition at line 103 of file forms.py.

00103 
00104   def getValue(self):
00105     """
00106     Returns self.value in case of multi-valued input or
00107     self.value[0] if only one value is allowed.
00108     """
00109     if self.maxValues>1:
00110       return self.value
00111     else:
00112       return self.value[0]

def pyweblib.forms.Field.idAttrStr (   self,
  id_value 
) [inherited]

Definition at line 93 of file forms.py.

00093 
00094   def idAttrStr(self,id_value):
00095     if id_value is None:
00096       return ''
00097     else:
00098       return 'id="%s" ' % (id_value)

Here is the caller graph for this function:

def pyweblib.forms.Input.inputHTML (   self,
  default = None,
  id_value = None,
  title = None 
) [inherited]

Reimplemented in pyweblib.forms.Password.

Definition at line 304 of file forms.py.

00304 
00305   def inputHTML(self,default=None,id_value=None,title=None):
00306     return self.inputHTMLTemplate % (
00307       '<input %stitle="%s" name="%s" %s maxlength="%d" size="%d" value="%s">' % (
00308         self.idAttrStr(id_value),
00309         self.titleHTML(title),
00310         self.name,
00311         self._accessKeyAttr(),
00312         self.maxLen,
00313         self.size,
00314         self._defaultHTML(default)
00315       )
00316     )
00317 

Here is the call graph for this function:

def pyweblib.forms.File.inputHTML (   self,
  default = None,
  id_value = None,
  title = None,
  mimeType = None 
)

Definition at line 366 of file forms.py.

00366 
00367   def inputHTML(self,default=None,id_value=None,title=None,mimeType=None):
00368     return self.inputHTMLTemplate % (
00369       '<input type="file" %stitle="%s" name="%s" %s accept="%s">' % (
00370         self.idAttrStr(id_value),
00371         self.titleHTML(title),
00372         self.name,
00373         self._accessKeyAttr(),
00374         mimeType or self.mimeType
00375       )
00376     )
00377 

Here is the call graph for this function:

def pyweblib.forms.Field.labelHTML (   self,
  labelText = None,
  for_value = None 
) [inherited]

Definition at line 99 of file forms.py.

00099 
00100   def labelHTML(self,labelText=None,for_value=None):
00101     labelText = (labelText or self.text).encode(self.charset)
00102     return '<label for="%s">%s</label>' % (for_value or self.name,labelText)

def pyweblib.forms.Field.setCharset (   self,
  charset 
) [inherited]
Define the character set of the user's input.

Definition at line 212 of file forms.py.

00212 
00213   def setCharset(self,charset):
00214     """Define the character set of the user's input."""
00215     self.charset = charset

def pyweblib.forms.Field.setDefault (   self,
  default 
) [inherited]
Set the default of a field.

Mainly this is used by the application if self.default shall
be changed after initializing the field object.

Reimplemented in pyweblib.forms.Radio.

Definition at line 113 of file forms.py.

00113 
00114   def setDefault(self,default):
00115     """
00116     Set the default of a field.
00117 
00118     Mainly this is used by the application if self.default shall
00119     be changed after initializing the field object.
00120     """
00121     if type(default)==types.ListType:
00122       self.default = [i for i in default if i!=None]
00123     else:
00124       self.default = default or ''

Here is the caller graph for this function:

def pyweblib.forms.Field.setRegex (   self,
  pattern 
) [inherited]
Set the regex pattern for validating this field.

Mainly this is used if self._re shall be changed after
the field object was initialized.

pattern
Either a string containing a regex pattern,
a tuple (pattern string, pattern options) or None.
If None regex checking in _validateFormat is switched off
(not recommended).

Reimplemented in pyweblib.forms.Textarea.

Definition at line 138 of file forms.py.

00138 
00139   def setRegex(self,pattern):
00140     """
00141     Set the regex pattern for validating this field.
00142 
00143     Mainly this is used if self._re shall be changed after
00144     the field object was initialized.
00145 
00146     pattern
00147         Either a string containing a regex pattern,
00148         a tuple (pattern string, pattern options) or None.
00149         If None regex checking in _validateFormat is switched off
00150         (not recommended).
00151     """
00152     patternstring,patternoptions = self._patternAndOptions(pattern)
00153     if patternstring is None:
00154       # Regex checking is completely switched off
00155       self._re = None
00156     else:
00157       # This is a Unicode input field
00158       patternoptions = patternoptions | re.U
00159       self._re = re.compile('%s$' % patternstring,patternoptions)

Here is the call graph for this function:

def pyweblib.forms.Field.setValue (   self,
  value 
) [inherited]
Store the user's value into the field object.

This method can be used to modify the user's value
before storing it into self.value.

Definition at line 196 of file forms.py.

00196 
00197   def setValue(self,value):
00198     """
00199     Store the user's value into the field object.
00200 
00201     This method can be used to modify the user's value
00202     before storing it into self.value.
00203     """
00204     value = self._encodeValue(value)
00205     # Check if input is valid
00206     # Length valid?
00207     self._validateLen(value)
00208     # Format valid?
00209     self._validateFormat(value)
00210     self._validateMaxValue()
00211     self.value.append(value)

Here is the call graph for this function:

def pyweblib.forms.Field.titleHTML (   self,
  title 
) [inherited]
HTML output of default.

Definition at line 220 of file forms.py.

00220 
00221   def titleHTML(self,title):
00222     """HTML output of default."""
00223     return escapeHTML(title or self.text).encode(self.charset)

Here is the call graph for this function:

Here is the caller graph for this function:

def pyweblib.forms.Field.valueHTML (   self) [inherited]
HTML output of self.value using the HTML template string
in self.valueHTMLTemplate.

Reimplemented in pyweblib.forms.Keygen, pyweblib.forms.Password, and pyweblib.forms.Textarea.

Definition at line 228 of file forms.py.

00228 
00229   def valueHTML(self):
00230     """
00231     HTML output of self.value using the HTML template string
00232     in self.valueHTMLTemplate.
00233     """
00234     return [
00235       self.valueHTMLTemplate % v
00236       for v in self.value
00237     ]
00238 


Member Data Documentation

Definition at line 78 of file forms.py.

Definition at line 83 of file forms.py.

Reimplemented in pyweblib.forms.Radio.

Definition at line 121 of file forms.py.

Definition at line 79 of file forms.py.

Reimplemented in pyweblib.forms.Radio.

Definition at line 75 of file forms.py.

Definition at line 76 of file forms.py.

string pyweblib.forms.File.mimeType = 'application/octet-stream' [static]

Definition at line 354 of file forms.py.

Definition at line 73 of file forms.py.

Definition at line 77 of file forms.py.

Definition at line 299 of file forms.py.

Definition at line 74 of file forms.py.

Definition at line 72 of file forms.py.

Definition at line 80 of file forms.py.


The documentation for this class was generated from the following file: