/** * @param array $resource * @param ResourceType $resourceType * @param PluginBundle $pluginBundle */ private function updateIcons(array $resource, ResourceType $resourceType, PluginBundle $pluginBundle) { $resourceIcon = $this->em->getRepository('ClarolineCoreBundle:Resource\\ResourceIcon')->findOneByMimeType('custom/' . $resourceType->getName()); if (null === $resourceIcon) { $resourceIcon = new ResourceIcon(); $resourceIcon->setMimeType('custom/' . $resourceType->getName()); } if (isset($resource['icon'])) { $ds = DIRECTORY_SEPARATOR; $webBundleDir = "{$this->kernelRootDir}{$ds}..{$ds}web{$ds}bundles"; $webPluginDir = "{$webBundleDir}{$ds}{$pluginBundle->getAssetsFolder()}"; $webPluginImgDir = "{$webPluginDir}{$ds}images"; $webPluginIcoDir = "{$webPluginImgDir}{$ds}icons"; $this->fileSystem->mkdir(array($webBundleDir, $webPluginDir, $webPluginImgDir, $webPluginIcoDir)); $this->fileSystem->copy("{$pluginBundle->getImgFolder()}{$ds}{$resource['icon']}", "{$webPluginIcoDir}{$ds}{$resource['icon']}"); $resourceIcon->setRelativeUrl("bundles/{$pluginBundle->getAssetsFolder()}/images/icons/{$resource['icon']}"); } else { $defaultIcon = $this->em->getRepository('ClarolineCoreBundle:Resource\\ResourceIcon')->findOneByMimeType('custom/default'); $resourceIcon->setRelativeUrl($defaultIcon->getRelativeUrl()); } $resourceIcon->setShortcut(false); $this->em->persist($resourceIcon); $this->im->createShortcutIcon($resourceIcon); }
/** * @param array $resource * @param ResourceType $resourceType * @param PluginBundle $pluginBundle */ private function updateIcons(array $resource, ResourceType $resourceType, PluginBundle $pluginBundle) { $resourceIcon = $this->em->getRepository('ClarolineCoreBundle:Resource\\ResourceIcon')->findOneByMimeType('custom/' . $resourceType->getName()); if (null === $resourceIcon) { $resourceIcon = new ResourceIcon(); $resourceIcon->setMimeType('custom/' . $resourceType->getName()); } if (isset($resource['icon'])) { $resourceIcon->setRelativeUrl("bundles/{$pluginBundle->getAssetsFolder()}/images/icons/{$resource['icon']}"); } else { $defaultIcon = $this->em->getRepository('ClarolineCoreBundle:Resource\\ResourceIcon')->findOneByMimeType('custom/default'); $resourceIcon->setRelativeUrl($defaultIcon->getRelativeUrl()); } $resourceIcon->setShortcut(false); $this->em->persist($resourceIcon); $this->im->createShortcutIcon($resourceIcon); }