<?xml version="1.0"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Forum posts to 'Archive'</title>
		<link>http://www.silverstripe.org/archive/rss</link>
		<atom:link href="http://www.silverstripe.org/archive/rss" rel="self" type="application/rss+xml" />
		<description></description>

		
		<item>
			<title>required Fields within CheckableOption - CompositeField</title>
			<link>http://www.silverstripe.org/archive/show/137841#post137841</link>
			<description>&lt;p&gt;I've some side effects using required fields within this&lt;br /&gt;CheckableOption Field which is part of forum code.&lt;/p&gt;&lt;p&gt;&lt;div class=&quot;codesnippet&quot;&gt;&lt;p&gt;$fs-&amp;gt;push(new CheckableOption(&quot;EmailPublic&quot;, new EmailField('Email','Email *',&quot;&quot;)),false);&lt;br /&gt;    $fs-&amp;gt;push( new CheckableOption('CountryPublic',new TextField('Country','Country *'),true,true));&lt;br /&gt;    $fs-&amp;gt;push(new PasswordField(&quot;Password&quot;, &quot;Passwort *&quot;));&lt;br /&gt;    ...&lt;br /&gt;    $validator = new RequiredFields('Email','Password',...)&lt;/p&gt;&lt;/div&gt;&lt;/p&gt;&lt;p&gt;if i send the form without javascript (hack-test) and don't fill out Email, there's no response&lt;br /&gt;under the field like 'you have to fill out Email' or so...&lt;br /&gt;if i leave out Password anything is' fine.&lt;br /&gt;same Problem with Country...&lt;/p&gt;&lt;p&gt;And some strange things happen also if javascript is enabled in the client.&lt;br /&gt;the red error-text doesn't disappear sometimes, although there's entered text and the field was left by clicking in some other field.&lt;/p&gt;&lt;p&gt;i know that CheckableOption is not part of the core of ss.&lt;br /&gt;But it feels to me, that there is something wrong with handling required fields...&lt;br /&gt;i can hack in code, if someone could give me a hint where to search for...&lt;/p&gt;&lt;p&gt;fe: there's the code for &lt;br /&gt;&lt;div class=&quot;codesnippet&quot;&gt;&lt;p&gt;class CheckableOption extends CompositeField {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;protected $childField, $checkbox;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;function __construct($checkName, $childField, $value = &quot;&quot;, $readonly = false) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if( $readonly )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$this-&amp;gt;checkbox = new CheckboxFieldDisabled($checkName, &quot;&quot;, $value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$this-&amp;gt;checkbox = new CheckboxField($checkName, &quot;&quot;, $value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$this-&amp;gt;childField = $childField;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$this-&amp;gt;children = new FieldSet(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$this-&amp;gt;childField,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$this-&amp;gt;checkbox&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;function FieldHolder() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return FormField::FieldHolder();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;function Title() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return $this-&amp;gt;childField-&amp;gt;Title();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;function Field() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return $this-&amp;gt;childField-&amp;gt;Field() . ' ' . $this-&amp;gt;checkbox-&amp;gt;Field();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;/p&gt;&lt;/div&gt;&lt;br /&gt;no special thing done for required fields, so either the problem is deeper (CompositeElement)&lt;br /&gt;or there has to be something more done in CheckableOption&lt;/p&gt;&lt;br&gt;&lt;br&gt;Posted to: required Fields within CheckableOption - CompositeField &lt;a href=&quot;http://www.silverstripe.org/archive/show/137841#post137841&quot;&gt;Show Thread&lt;/a&gt; | &lt;a href=&quot;http://www.silverstripe.org/archive/show/137841#post137841&quot;&gt;Post Reply&lt;/a&gt;</description>
			<pubDate>Fri, 08 Aug 2008 02:11:16 +1200</pubDate>
			<dc:creator>zyko</dc:creator>
			<guid>http://www.silverstripe.org/archive/show/137841#post137841</guid>
		</item>
		

	</channel>
</rss>