public function import(array $tagGroupDefinitions, $force = false)
{
Craft::log(Craft::t('Importing TagGroups'));
$tagGroups = Craft::app()->tags->getAllTagGroups('handle');
foreach ($tagGroupDefinitions as $tagGroupHandle => $tagGroupDefinition) {
$tagGroup = array_key_exists($tagGroupHandle, $tagGroups) ? $tagGroups[$tagGroupHandle] : new TagGroupModel();
unset($tagGroups[$tagGroupHandle]);
$this->populateTagGroup($tagGroup, $tagGroupDefinition, $tagGroupHandle);
if (!Craft::app()->tags->saveTagGroup($tagGroup)) {
// Save taggroup via craft
$this->addErrors($tagGroup->getAllErrors());
continue;
}
}
if ($force) {
foreach ($tagGroups as $tagGroup) {
Craft::app()->tags->deleteTagGroupById($tagGroup->id);
}
}
return $this->getResultModel();
}