Newscoop\Entity\Snippet\SnippetTemplate\SnippetTemplateField::setType PHP Method

setType() public method

Setter for type
public setType ( string $type ) : Newscoop\Entity\Snippet\SnippetTemplate\SnippetTemplateField
$type string Value to set
return Newscoop\Entity\Snippet\SnippetTemplate\SnippetTemplateField
    public function setType($type)
    {
        if (!in_array($type, array(self::TYPE_INT, self::TYPE_BOOL, self::TYPE_TEXT, self::TYPE_TEXTAREA, self::TYPE_URL))) {
            throw new \InvalidArgumentException("Invalid type");
        }
        $this->type = $type;
        return $this;
    }

Usage Example

Esempio n. 1
0
 /**
  * Create and add Snippet Template Field
  *
  * @param array  $parameters          Array with Parameters
  * @param string $parameters['name']  SnippetTemplateField name
  * @param string $parameters['type']  SnippetTemplateField type  (string | int | bool)
  * @param string $parameters['scope'] SnippetTemplateField scope (frontend | backend)
  *
  * @return Newscoop\Entity\Snippet\SnippetTemplate
  */
 public function createField(array $parameters)
 {
     if (!array_key_exists('name', $parameters)) {
         throw new \InvalidArgumentException("Name is not defined");
     }
     $defaultParams = array('type' => 'string', 'scope' => 'frontend');
     foreach ($defaultParams as $defaultParam => $defaultValue) {
         if (!array_key_exists($defaultParam, $parameters)) {
             $parameters[$defaultParam] = $defaultValue;
         }
     }
     $snippetTemplateField = new SnippetTemplateField();
     $snippetTemplateField->setName($parameters['name']);
     $snippetTemplateField->setType($parameters['type']);
     $snippetTemplateField->setScope($parameters['scope']);
     return $this->addField($snippetTemplateField);
 }