Skip to content

Commit

Permalink
added hidden textarea
Browse files Browse the repository at this point in the history
smashed invalid attributes of hidden widgets
  • Loading branch information
Adam Groszer committed Dec 11, 2008
1 parent a437b20 commit c20b354
Show file tree
Hide file tree
Showing 5 changed files with 84 additions and 10 deletions.
30 changes: 30 additions & 0 deletions src/z3c/form/browser/text.txt
Expand Up @@ -54,3 +54,33 @@ Adding some more attributes to the widget will make it display more:
>>> print widget.render()
<input type="text" id="id" name="name" class="text-widget"
style="color: blue" value="value" />


Check DISPLAY_MODE:

>>> template = os.path.join(os.path.dirname(z3c.form.browser.__file__),
... 'text_display.pt')
>>> factory = z3c.form.widget.WidgetTemplateFactory(template)
>>> zope.component.provideAdapter(factory,
... (zope.interface.Interface, IDefaultBrowserLayer, None, None, None),
... IPageTemplate, name='display')

>>> widget.value = u'foobar'
>>> widget.style = None
>>> widget.mode = interfaces.DISPLAY_MODE
>>> print widget.render()
<span id="id" class="text-widget">foobar</span>

Check HIDDEN_MODE:

>>> template = os.path.join(os.path.dirname(z3c.form.browser.__file__),
... 'text_hidden.pt')
>>> factory = z3c.form.widget.WidgetTemplateFactory(template)
>>> zope.component.provideAdapter(factory,
... (zope.interface.Interface, IDefaultBrowserLayer, None, None, None),
... IPageTemplate, name='hidden')

>>> widget.value = u'foobar'
>>> widget.mode = interfaces.HIDDEN_MODE
>>> print widget.render()
<input id="id" name="name" value="foobar" class="hidden-widget" type="hidden" />
15 changes: 5 additions & 10 deletions src/z3c/form/browser/text_hidden.pt
@@ -1,18 +1,13 @@
<div xmlns="http://www.w3.org/1999/xhtml"
xmlns:tal="http://xml.zope.org/namespaces/tal"
tal:omit-tag="">
<input id="" name="" value="" class="hidden-widget" size="" alt="" title=""
tabindex="" disabled="" readonly="" accesskey="" maxlength=""
type="hidden"
tal:omit-tag="">
<input id="" name="" value="" class="hidden-widget" title=""
tabindex="" accesskey=""
type="hidden"
tal:attributes="id view/id;
name view/name;
title view/title;
alt view/alt;
tabindex view/tabindex;
disabled view/disabled;
readonly view/readonly;
accesskey view/accesskey;
maxlength view/maxlength;
value view/value;
size view/size" />
value view/value" />
</div>
29 changes: 29 additions & 0 deletions src/z3c/form/browser/textarea.txt
Expand Up @@ -52,3 +52,32 @@ Adding some more attributes to the widget will make it display more:

>>> print widget.render()
<textarea id="id" name="name" class="textarea-widget">value</textarea>

Check DISPLAY_MODE:

>>> template = os.path.join(os.path.dirname(z3c.form.browser.__file__),
... 'textarea_display.pt')
>>> factory = z3c.form.widget.WidgetTemplateFactory(template)
>>> zope.component.provideAdapter(factory,
... (zope.interface.Interface, IDefaultBrowserLayer, None, None, None),
... IPageTemplate, name='display')

>>> widget.value = u'foobar'
>>> widget.mode = interfaces.DISPLAY_MODE
>>> print widget.render()
<span id="id" class="textarea-widget">foobar</span>

Check HIDDEN_MODE:

>>> template = os.path.join(os.path.dirname(z3c.form.browser.__file__),
... 'textarea_hidden.pt')
>>> factory = z3c.form.widget.WidgetTemplateFactory(template)
>>> zope.component.provideAdapter(factory,
... (zope.interface.Interface, IDefaultBrowserLayer, None, None, None),
... IPageTemplate, name='hidden')

>>> widget.value = u'foobar'
>>> widget.mode = interfaces.HIDDEN_MODE
>>> print widget.render()
<input class="hidden-widget" id="id" name="name"
type="hidden" value="foobar">
7 changes: 7 additions & 0 deletions src/z3c/form/browser/textarea.zcml
Expand Up @@ -36,4 +36,11 @@
template="textarea_input.pt"
/>

<z3c:widgetTemplate
mode="hidden"
widget="z3c.form.interfaces.ITextAreaWidget"
layer="z3c.form.interfaces.IFormLayer"
template="textarea_hidden.pt"
/>

</configure>
13 changes: 13 additions & 0 deletions src/z3c/form/browser/textarea_hidden.pt
@@ -0,0 +1,13 @@
<div xmlns="http://www.w3.org/1999/xhtml"
xmlns:tal="http://xml.zope.org/namespaces/tal"
tal:omit-tag="">
<input id="" name="" value="" class="hidden-widget" title=""
tabindex="" accesskey=""
type="hidden"
tal:attributes="id view/id;
name view/name;
title view/title;
tabindex view/tabindex;
accesskey view/accesskey;
value view/value" />
</div>

0 comments on commit c20b354

Please sign in to comment.