Mercurial > traipse_dev
diff plugins/cherrypy/lib/defaultformmask.py @ 0:4385a7d0efd1 grumpy-goblin
Deleted and repushed it with the 'grumpy-goblin' branch. I forgot a y
author | sirebral |
---|---|
date | Tue, 14 Jul 2009 16:41:58 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugins/cherrypy/lib/defaultformmask.py Tue Jul 14 16:41:58 2009 -0500 @@ -0,0 +1,97 @@ +""" +Copyright (c) 2004, CherryPy Team (team@cherrypy.org) +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of the CherryPy Team nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +""" + +""" +Default mask for the form.py module +""" + +def defaultMask(field): + res="<tr><td valign=top>%s</td>"%field.label + if field.typ=='text': + res+='<td><input name="%s" type=text value="%s" size=%s></td>'%(field.name, field.currentValue, field.size) + elif field.typ=='forced': + res+='<td><input name="%s" type=hidden value="%s">%s</td>'%(field.name, field.currentValue, field.currentValue) + elif field.typ=='password': + res+='<td><input name="%s" type=password value="%s"></td>'%(field.name, field.currentValue) + elif field.typ=='select': + res+='<td><select name="%s">'%field.name + for option in field.optionList: + if type(option)==type(()): + optionId, optionLabel=option + if optionId==field.currentValue or str(optionId)==field.currentValue: res+="<option selected value=%s>%s</option>"%(optionId, optionLabel) + else: res+="<option value=%s>%s</option>"%(optionId, optionLabel) + else: + if option==field.currentValue: res+="<option selected>%s</option>"%option + else: res+="<option>%s</option>"%option + res+='</select></td>' + elif field.typ=='textarea': + # Size is colsxrows + if field.size==15: size="15x15" + else: size=field.size + cols, rows=size.split('x') + res+='<td><textarea name="%s" rows="%s" cols="%s">%s</textarea></td>'%(field.name, rows, cols, field.currentValue) + elif field.typ=='submit': + res+='<td><input type=submit value="%s"></td>'%field.name + elif field.typ=='hidden': + if type(field.currentValue)==type([]): currentValue=field.currentValue + else: currentValue=[field.currentValue] + res="" + for value in currentValue: + res+='<input name="%s" type=hidden value="%s">'%(field.name, value) + return res + elif field.typ=='checkbox' or field.typ=='radio': + res+='<td>' + # print "##### currentValue:", field.currentValue # TBC + for option in field.optionList: + if type(option)==type(()): optionValue, optionLabel=option + else: optionValue, optionLabel=option, option + res+='<input type="%s" name="%s" value="%s"'%(field.typ, field.name, optionValue) + if type(field.currentValue)==type([]): + if optionValue in field.currentValue: res+=' checked' + else: + if optionValue==field.currentValue: res+=' checked' + res+='> %s<br />'%optionLabel + res+='</td>' + if field.errorMessage: + res+="<td><font color=red>%s</font></td>"%field.errorMessage + else: + res+="<td> </td>" + return res+"</tr>" +def hiddenMask(field): + if type(field.currentValue)==type([]): currentValue=field.currentValue + else: currentValue=[field.currentValue] + res="" + for value in currentValue: + res+='<input name="%s" type=hidden value="%s">'%(field.name, value) + return res +def defaultHeader(label): + return "<table>" +def defaultFooter(label): + return "</table>" +def echoMask(label): + return label