Esempio n. 1
0
 /**
  * Returns the HTML for the parameter input.
  * 
  * @since 1.9
  * 
  * @return string
  */
 public function getHtml()
 {
     $valueList = array();
     if (is_array($this->param->getAllowedValues())) {
         $valueList = $this->param->getAllowedValues();
     }
     if ($valueList === array()) {
         switch ($this->param->getType()) {
             case 'char':
             case 'float':
             case 'integer':
             case 'number':
                 $html = $this->getNumberInput();
                 break;
             case 'boolean':
                 $html = $this->getBooleanInput();
                 break;
             case 'string':
             default:
                 $html = $this->getStrInput();
                 break;
         }
     } else {
         $html = $this->param->isList() ? $this->getCheckboxListInput($valueList) : $this->getSelectInput($valueList);
     }
     return $html;
 }
Esempio n. 2
0
 /**
  * @since 1.0
  *
  * @param Options $options
  *
  * @return ValueParser
  */
 public function getValueParser(Options $options)
 {
     $parser = $this->definition->getValueParser();
     if (get_class($parser) === 'ValueParsers\\NullParser') {
         $parserType = $options->isStringlyTyped() ? 'string-parser' : 'typed-parser';
         // TODO: inject factory
         $parserClass = ParamDefinitionFactory::singleton()->getComponentForType($this->definition->getType(), $parserType);
         if ($parserClass !== 'ValueParsers\\NullParser') {
             $parser = new $parserClass(new \ValueParsers\ParserOptions());
         }
     }
     return $parser;
 }