Example #1
0
 /**
  *
  * @param array $value
  * @param Zend_View_Interface $view
  * @return string
  */
 public static function getHtml($value, Zend_View_Interface $view = null)
 {
     $value = json_decode($value, true);
     foreach (self::_getOptions() as $options) {
         switch ($options['type']) {
             case 'bool':
                 $html .= $view->formRadio('confValue[' . $options['name'] . ']', $value[$options['id']], null, array('1' => Axis::translate()->__(' Yes'), '0' => Axis::translate()->__(' No')));
                 break;
             case 'select':
                 $html .= $view->formSelect('confValue[' . $options['name'] . ']', $value[$options['id']], null, $options['config_options']);
                 break;
             case 'multiple':
                 $html .= '<br />';
                 foreach ($options['config_options'] as $key => $dataItem) {
                     $html .= $view->formCheckbox('confValue[' . $options['name'] . '][' . $key . ']', isset($value[$options['name']][$key]) && $value[$options['name']][$key] ? 1 : null, null, array(1, 0)) . " {$dataItem} <br /> ";
                 }
                 break;
             case 'text':
                 $html .= $view->formTextarea('confValue[' . $options['name'] . ']', $value[$options['id']], array('rows' => 8, 'cols' => 45));
                 break;
             default:
                 $html .= $view->formText('confValue[' . $options['name'] . ']', $value[$options['id']], array('size' => '50'));
         }
     }
     return $html;
 }
Example #2
0
 /**
  * Render form controls necessary for responding to a particular question
  *
  * TODO - This needs to be extended to deal with multi-select questions
  *
  * @param  ModelQuestionModel question response controls are being rendered for
  * @return string
  */
 public function renderResponse(ModelQuestionModel $question)
 {
     // if we are dealing with a virtual question, don't output a control
     if ($question->virtualQuestion) {
         return '';
     }
     $result = '';
     switch (substr($question->format, 0, 1)) {
         case 'T':
             $result .= $this->renderText($question);
             break;
         case 'D':
             $result .= $this->renderDate($question);
             break;
         case 'S':
             $result .= $this->renderSingleSelect($question);
             break;
         case '_':
             if ($question->format == '_questionGroup') {
                 return $result;
             }
         default:
             throw new Exception('Unknown question type');
     }
     $result .= '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
     $name = "response[{$question->questionID}][requireAttachment]";
     $result .= $this->view->formCheckbox($name, $question->hasAttachmentRequirement(), array('class' => 'requireAttachment'));
     $result .= $this->view->formLabel($name, 'Require Attachment');
     $name = "response[{$question->questionID}][noinclude]";
     $result .= $this->view->formCheckbox($name, $question->hasNoPreference(), array('class' => 'noinclude'));
     $result .= $this->view->formLabel($name, 'Do not include');
     return $result;
 }