/**
* Set article webcode
*
* @param Newscoop\Entity\Article $article
* @param string $webcode
* @return void
*/
public function setArticleWebcode(Entity\Article $article, $webcode = null)
{
if (empty($webcode)) {
$webcode = $this->generateWebcode();
} else {
if (!$this->isUnique($webcode)) {
throw new \InvalidArgumentException("Webcode '{$webcode}' is in use.");
}
}
$webcode = new Entity\Webcode($webcode, $article);
$article->setWebcode($webcode);
$this->em->persist($webcode);
$this->em->flush();
}