registerRule( 'checkEmail', 'function', 'Piwik_Form_isValidEmailString'); $this->registerRule( 'fieldHaveSameValue', 'function', 'Piwik_Form_fieldHaveSameValue'); $this->init(); } abstract function init(); function getElementList() { $listElements=array(); foreach($this->a_formElements as $title => $a_parameters) { foreach($a_parameters as $parameters) { if($parameters[1] != 'headertext' && $parameters[1] != 'submit') { // case radio : there are two labels but only record once, unique name if( !isset($listElements[$title]) || !in_array($parameters[1], $listElements[$title])) { $listElements[$title][] = $parameters[1]; } } } } return $listElements; } function addElements( $a_formElements, $sectionTitle = '' ) { foreach($a_formElements as $parameters) { call_user_func_array(array(&$this , "addElement"), $parameters ); } $this->a_formElements = array_merge( $this->a_formElements, array( $sectionTitle => $a_formElements ) ); } function addRules( $a_formRules) { foreach($a_formRules as $parameters) { call_user_func_array(array(&$this , "addRule"), $parameters ); } } } function Piwik_Form_fieldHaveSameValue($element, $value, $arg) { $value2 = Piwik_Common::getRequestVar( $arg, '', 'string'); return $value === $value2; } function Piwik_Form_isValidEmailString( $element, $value ) { return Piwik::isValidEmailString($value); }