Newscoop\Entity\Repository\SnippetRepository::save PHP Метод

save() публичный Метод

public save ( Snippet $snippet )
$snippet Newscoop\Entity\Snippet
    public function save(Snippet $snippet)
    {
        if (!$snippet->hasName()) {
            throw new \InvalidArgumentException("Snippet name cannot be empty");
        }
        foreach ($snippet->getFields()->toArray() as $field) {
            if ($field->isRequired()) {
                if (!$field->hasData()) {
                    throw new \InvalidArgumentException("SnippetField: '" . $field->getFieldName() . "' requires a value");
                }
            }
        }
        if ($snippet->getTemplate()->hasController()) {
            $object = $snippet->getTemplate()->executeController($snippet);
            $snippet = $object->getSnippet();
        }
        $em = $this->getEntityManager();
        $em->persist($snippet);
        $em->flush();
    }