/** * Test created siteaccess URLs for given conditions * */ public function testCreateSiteaccessUrls() { $installer = new eZSiteInstaller(); /* * Access type: URL * */ $params = array('siteaccess_list' => array('ezwebin_site'), 'access_type' => 'url', 'access_type_value' => 'ezwebin_site', 'exclude_port_list' => array(), 'host' => '', 'host_prepend_siteaccess' => false); $siteaccessURLs = $installer->createSiteaccessUrls($params); $this->assertEquals($siteaccessURLs, array('ezwebin_site' => array('url' => 'localhost/ezwebin_site'))); /* * Access type: HOST * */ $params = array('siteaccess_list' => array('ezwebin_site'), 'access_type' => 'host', 'access_type_value' => 'ezwebin.site.host', 'exclude_port_list' => array(), 'host' => '', 'host_prepend_siteaccess' => false); $siteaccessURLs = $installer->createSiteaccessUrls($params); $this->assertEquals($siteaccessURLs, array('ezwebin_site' => array('url' => 'ezwebin.site.host', 'host' => 'ezwebin.site.host'))); /* * Access type: PORT * */ $params = array('siteaccess_list' => array('ezwebin_site'), 'access_type' => 'port', 'access_type_value' => '81', 'exclude_port_list' => array(), 'host' => '', 'host_prepend_siteaccess' => false); $siteaccessURLs = $installer->createSiteaccessUrls($params); $this->assertEquals($siteaccessURLs, array('ezwebin_site' => array('url' => 'localhost:81', 'port' => '81'))); /* * Access type: HOST * Language siteaccess * Host with prepended siteaccess name * */ $params = array('siteaccess_list' => array('eng'), 'access_type' => 'host', 'access_type_value' => 'ezwebin.site.host', 'exclude_port_list' => array(), 'host' => '', 'host_prepend_siteaccess' => true); $siteaccessURLs = $installer->createSiteaccessUrls($params); $this->assertEquals($siteaccessURLs, array('eng' => array('url' => 'eng.ezwebin.site.host', 'host' => 'eng.ezwebin.site.host'))); /* * Access type: PORT * Excluded port 81 */ $params = array('siteaccess_list' => array('ezwebin_site'), 'access_type' => 'port', 'access_type_value' => '81', 'exclude_port_list' => array('81'), 'host' => '', 'host_prepend_siteaccess' => false); $siteaccessURLs = $installer->createSiteaccessUrls($params); $this->assertEquals($siteaccessURLs, array('ezwebin_site' => array('url' => 'localhost:82', 'port' => '82'))); }
installPackages($packageList, $installParameters); $webinInstaller->install(); $siteaccessUrls = $webinInstaller->setting('siteaccess_urls'); } else { // // BC for eZWebin < 1.3 // $siteInstaller = new eZSiteInstaller(); $params['locales'] = $params['all_language_codes']; // 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);