"""Default mask for the form.py module""" import warnings warnings.warn("cherrypy.lib.defaultformmask is deprecated and might disappear in future versions of CherryPy", DeprecationWarning, stacklevel = 2) from xml.sax.saxutils import quoteattr as q def selected(value): """If value is True, return a valid XHTML 'selected' attribute, else ''.""" if value: return ' selected="selected" ' return '' def checked(value): """If value is True, return a valid XHTML 'checked' attribute, else ''.""" if value: return ' checked="checked" ' return '' def defaultMask(field): res = ["", "%s" % field.label] if field.typ == 'text': res.append('' % (q(field.name), q(field.currentValue), q(field.size))) elif field.typ == 'forced': res.append('%s' % (q(field.name), q(field.currentValue), field.currentValue)) elif field.typ == 'password': res.append('' % (q(field.name), q(field.currentValue))) elif field.typ == 'select': res.append('') elif field.typ == 'textarea': # Size is cols x rows if field.size == 15: size = "15x15" else: size = field.size cols, rows = size.split('x') res.append('' % (q(field.name), rows, cols, field.currentValue)) elif field.typ == 'submit': res.append('' % q(field.name)) elif field.typ == 'hidden': if isinstance(field.currentValue, list): vals = field.currentValue else: vals = [field.currentValue] i = '' % q(field.name) return ''.join([i % q(v) for v in vals]) elif field.typ in ('checkbox', 'radio'): res.append('') for option in field.optionList: if isinstance(option, tuple): val, label = option else: val, label = option, option if isinstance(field.currentValue, list): c = checked(val in field.currentValue) else: c = checked(val == field.currentValue) res.append('  %s
' % (field.typ, q(field.name), q(val), c, label)) res.append('') if field.errorMessage: res.append("%s" % field.errorMessage) else: res.append(" ") res.append("") return "\n".join(res) def hiddenMask(field): if isinstance(field.currentValue, list): currentValue = field.currentValue else: currentValue = [field.currentValue] return "\n".join(['' % (q(field.name), q(value)) for value in currentValue]) def defaultHeader(label): return "" def defaultFooter(label): return "
" def echoMask(label): return label