예제 #1
0
function createTranslationSiteAccesses($params)
{
    foreach ($params['locales'] as $locale) {
        // Prepare 'SiteLanguageList':
        // make $locale as 'top priority language'
        // and append 'primary language' as fallback language.
        $primaryLanguage = $params['primary_language'];
        $languageList = array($locale);
        if ($locale != $primaryLanguage) {
            $languageList[] = $primaryLanguage;
        }
        eZSiteInstaller::createSiteAccess(array('src' => array('siteaccess' => $params['user_siteaccess']), 'dst' => array('siteaccess' => eZSiteInstaller::languageNameFromLocale($locale), 'settings' => array('site.ini' => array('RegionalSettings' => array('Locale' => $locale, 'ContentObjectLocale' => $locale, 'TextTranslation' => $locale != 'eng-GB' ? 'enabled' : 'disabled', 'SiteLanguageList' => $languageList))))));
    }
}
예제 #2
0
 // extra siteaccess based on languages info, like 'eng', 'rus', ...
 $params['language_based_siteaccess_list'] = $siteInstaller->languageNameListFromLocaleList($params['locales']);
 $params['user_siteaccess_list'] = array_merge(array($params['user_siteaccess']), $params['language_based_siteaccess_list']);
 $params['all_siteaccess_list'] = array_merge($params['user_siteaccess_list'], $params['admin_siteaccess']);
 $params['main_site_design'] = 'ezwebin';
 // Create siteaccesses URLs
 $siteaccessUrls = array('admin' => $siteInstaller->createSiteaccessUrls(array('siteaccess_list' => array($params['admin_siteaccess']), 'access_type' => $accessType, 'port' => $adminAccessTypeValue, 'host' => $params['host'])), 'user' => $siteInstaller->createSiteaccessUrls(array('siteaccess_list' => array($params['user_siteaccess']), 'access_type' => $accessType, 'port' => $accessTypeValue, 'host' => $params['host'])), 'translation' => $siteInstaller->createSiteaccessUrls(array('siteaccess_list' => $params['language_based_siteaccess_list'], 'access_type' => $accessType, 'port' => $accessTypeValue + 1, 'host' => $params['host'], 'exclude_port_list' => array($adminAccessTypeValue, $accessTypeValue))));
 $params['siteaccess_urls'] = $siteaccessUrls;
 // prepare 'admin_url' for 'eZSiteINISettings'. Will unset it later.
 $params['siteaccess_urls']['admin_url'] = $siteaccessUrls['admin']['ezwebin_site_admin']['url'];
 // Include setting files
 $settingsFiles = $package->attribute('settings-files');
 foreach ($settingsFiles as $settingsFileName) {
     include_once installScriptDir($packageRepository) . '/settings/' . $settingsFileName;
 }
 $siteInstaller->createSiteAccess(array('src' => array('siteaccess' => $adminSiteaccess), 'dst' => array('siteaccess' => 'ezwebin_site_admin')));
 $siteInstaller->createSiteAccess(array('src' => array('siteaccess' => $userSiteaccess), 'dst' => array('siteaccess' => 'ezwebin_site')));
 // Call user function for additional setup tasks.
 if (function_exists('eZSitePreInstall')) {
     eZSitePreInstall();
 }
 installPackages($packageList, $installParameters);
 $settings = array();
 $settings[] = array('settings_dir' => 'settings/siteaccess/' . $params['user_siteaccess'], 'groups' => eZSiteINISettings($params));
 $settings[] = array('settings_dir' => 'settings/siteaccess/' . $params['admin_siteaccess'], 'groups' => eZSiteAdminINISettings($params));
 $settings[] = array('settings_dir' => 'settings/override', 'groups' => eZSiteCommonINISettings($params));
 foreach ($settings as $settingsGroup) {
     resetINI($settingsGroup, 'override.ini');
     $siteInstaller->updateINIFiles($settingsGroup);
 }
 // 'admin_url' is not needed anymore.