/** * Creates as much languages as possible */ public function setUp() { parent::setUp(); $this->languageService = $this->getRepository()->getContentLanguageService(); $languageCreate = $this->languageService->newLanguageCreateStruct(); $languageCreate->enabled = true; // SKIP If using sqlite, PHP 5.3 and 64bit, tests will fail as int column seems to be limited to 32bit on 64bit if (PHP_VERSION_ID < 50400 && PHP_INT_SIZE === 8) { $setupFactory = $this->getSetupFactory(); if ($setupFactory instanceof LegacySetupFactory && $setupFactory->getDB() === 'sqlite') { $this->markTestSkipped("Skip on Sqlite, PHP 5.3 and 64bit, as int column is limited to 32bit on 64bit"); } } // Create as much languages as possible for ($i = count($this->languageService->loadLanguages()) + 1; $i <= 8 * PHP_INT_SIZE - 2; ++$i) { $languageCreate->name = "Language {$i}"; $languageCreate->languageCode = sprintf("lan-%02d", $i); try { $this->createdLanguages[] = $this->languageService->createLanguage($languageCreate); } catch (\Exception $e) { if (PHP_INT_SIZE === 8 && $i === 32) { throw new \Exception("PHP/HHVM is 64bit, but seems INT column in db only supports 32bit", 0, $e); } throw new \Exception("Unknown issue on iteration {$i}, PHP_INT_SIZE: " . PHP_INT_SIZE, 0, $e); } } }
public function getConfig() { $languages = array(); foreach ($this->languageService->loadLanguages() as $language) { $languages[] = array('id' => $language->id, 'name' => $language->name, 'languageCode' => $language->languageCode, 'enabled' => $language->enabled); } return $languages; }
protected function getSelectionChoices() { $choices = []; foreach ($this->languageService->loadLanguages() as $language) { $choices[$language->languageCode] = $language->name; } return $choices; }
/** * Renders the language list. * * @return \Symfony\Component\HttpFoundation\Response */ public function listAction() { $languageList = $this->languageService->loadLanguages(); $deleteFormsByLanguageId = []; foreach ($languageList as $language) { $languageId = $language->id; $deleteFormsByLanguageId[$languageId] = $this->createForm(new LanguageDeleteType($this->languageService), ['languageId' => $languageId])->createView(); } return $this->render('eZPlatformUIBundle:Language:list.html.twig', ['canEdit' => $this->isGranted(new Attribute('language', 'edit')), 'canAssign' => $this->isGranted(new Attribute('language', 'assign')), 'languageList' => $languageList, 'deleteFormsByLanguageId' => $deleteFormsByLanguageId]); }
/** * Creates as much languages as possible */ public function setUp() { parent::setUp(); $this->languageService = $this->getRepository()->getContentLanguageService(); $languageCreate = $this->languageService->newLanguageCreateStruct(); $languageCreate->enabled = true; // Create as much languages as possible for ($i = count($this->languageService->loadLanguages()) + 1; $i <= 8 * PHP_INT_SIZE - 2; ++$i) { $languageCreate->name = "Language {$i}"; $languageCreate->languageCode = sprintf("lan-%02d", $i); $this->createdLanguages[] = $this->languageService->createLanguage($languageCreate); } }
/** * @inheritdoc */ public function visit(TreeNodeInterface $node, &$data) { $languages = $this->languageService->loadLanguages(); $existingLanguageCodes = []; foreach ($languages as $language) { $existingLanguageCodes[] = $language->languageCode; } // If language already exists, skip it if (in_array($data['language_code'], $existingLanguageCodes)) { return; } $struct = $this->languageService->newLanguageCreateStruct(); $this->fillValueObject($struct, $data); $this->languageService->createLanguage($struct); }
/** * Loads all Languages * * @return \eZ\Publish\API\Repository\Values\Content\Language[] */ public function loadLanguages() { return $this->service->loadLanguages(); }