protected static function createResourceType($name, $isExportable = true, Plugin $plugin = null) { $type = new ResourceType(); $type->setName($name); $type->setExportable($isExportable); if ($plugin) { $type->setPlugin($plugin); } self::create($name, $type); }
/** * @param array $resourceConfiguration * @param Plugin $plugin * @param PluginBundle $pluginBundle * * @return ResourceType */ private function persistResourceTypes($resourceConfiguration, Plugin $plugin, PluginBundle $pluginBundle) { $resourceType = new ResourceType(); $resourceType->setName($resourceConfiguration['name']); $resourceType->setExportable($resourceConfiguration['is_exportable']); $resourceType->setPlugin($plugin); $this->em->persist($resourceType); $this->mm->addDefaultPerms($resourceType); $this->persistCustomAction($resourceConfiguration['actions'], $resourceType); $this->setResourceTypeDefaultMask($resourceConfiguration['default_rights'], $resourceType); $this->persistIcons($resourceConfiguration, $resourceType, $pluginBundle); $this->persistActivityRules($resourceConfiguration['activity_rules'], $resourceType); return $resourceType; }
private function resourceType($name) { $type = $this->om->getRepository('ClarolineCoreBundle:Resource\\ResourceType')->findOneByName($name); if (!$type) { $type = new ResourceType(); $type->setName($name); $type->setDefaultMask(1); $type->setPlugin($this->websitePlugin()); $this->om->persist($type); } return $type; }