/** * Renders a participation form. This form is ready to be echo'ed in your template */ function render() { global $thinkedit; // add content $this->form->add('<h1>'); $this->form->add($this->title); $this->form->add('</h1>'); // In all cases, build form UI foreach ($this->content->field as $field) { if ($field->isUsedIn('participation') && $field->getType() != 'id') { $this->form->add('<div class="participation_field">'); $this->form->add('<div class="participation_field_title">'); if ($field->isRequired() || $field->isTitle()) { $this->form->add('<span class="participation_field_required">*</span>'); } $this->form->add($field->getTitle() . ' : '); $this->form->add('</div>'); if ($field->getHelp()) { $this->form->add('<div class="participation_field_help">'); $this->form->add($field->getHelp()); $this->form->add('</div>'); } if ($this->form->isSent() && $field->getErrorMessage()) { $this->form->add('<div class="participation_field_error">'); $this->form->add($field->getErrorMessage()); $this->form->add('</div>'); } $this->form->add('<div class="participation_field_ui">'); $this->form->add($field->renderUi()); $this->form->add('</div>'); $this->form->add('</div>'); } } // add captcha if needed if ($this->enable_captcha) { require_once ROOT . '/class/captcha.class.php'; $captcha = new captcha(); $this->form->add('<div class="participation_field">'); $this->form->add('<div class="participation_field_title">'); $this->form->add('<span class="participation_field_required">*</span>'); $this->form->add($this->captcha_title); $this->form->add('</div>'); $this->form->add('<div class="participation_field_help">'); $this->form->add($this->captcha_help); $this->form->add('</div>'); if ($this->form->isSent()) { if (isset($_REQUEST['captcha']) && $_REQUEST['captcha'] != $captcha->get()) { $this->form->add('<div class="participation_field_error">'); $this->form->add($this->captcha_error); $this->form->add('</div>'); $captcha->reset(); } } if (isset($_REQUEST['captcha'])) { $captcha_entered = $_REQUEST['captcha']; } else { $captcha_entered = ''; } $this->form->add('<div class="participation_field_ui">'); $this->form->add('<br/>'); $this->form->add('<img src="' . $captcha->render() . '">'); $this->form->add('<br/> <br/>'); $this->form->add('Code : <input type="text" name="captcha" value="' . $captcha_entered . '">'); $this->form->add('</div>'); $this->form->add('</div>'); } return $this->form->render(); }