コード例 #1
0
ファイル: Factory.php プロジェクト: ppiedaderawnet/concrete5
 public function createDefaultEntity()
 {
     $tree = new SiteTree();
     $tree->setSiteHomePageID(HOME_CID);
     $locale = new Locale();
     $locale->setLanguage('en');
     $locale->setCountry('US');
     $locale->setSiteTree($tree);
     $site = new Site($this->config);
     $site->setSiteHandle('default');
     $site->setIsDefault(true);
     $tree->setLocale($locale);
     return $site;
 }
コード例 #2
0
ファイル: Service.php プロジェクト: ppiedaderawnet/concrete5
 public function installDefault($locale = null)
 {
     if (!$locale) {
         $locale = Localization::BASE_LOCALE;
     }
     $siteConfig = $this->config->get('site');
     $defaultSite = array_get($siteConfig, 'default');
     $factory = new Factory($this->config);
     $site = $factory->createEntity();
     $site->setSiteHandle(array_get($siteConfig, "sites.{$defaultSite}.handle"));
     $site->setIsDefault(true);
     $data = explode('_', $locale);
     $locale = new Locale();
     $locale->setSite($site);
     $locale->setIsDefault(true);
     $locale->setLanguage($data[0]);
     $locale->setCountry($data[1]);
     $tree = new SiteTree();
     $tree->setSiteHomePageID(HOME_CID);
     $tree->setLocale($locale);
     $locale->setSiteTree($tree);
     $site->getLocales()->add($locale);
     $service = $this->app->make('site/type');
     $type = $service->getDefault();
     $site->setType($type);
     $this->entityManager->persist($site);
     $this->entityManager->flush();
     return $site;
 }