本文整理匯總了PHP中eZPublishSDK::version方法的典型用法代碼示例。如果您正苦於以下問題:PHP eZPublishSDK::version方法的具體用法?PHP eZPublishSDK::version怎麽用?PHP eZPublishSDK::version使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類eZPublishSDK
的用法示例。
在下文中一共展示了eZPublishSDK::version方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: eZMail
function eZMail()
{
$this->Mail = new ezpMail();
$this->ReceiverElements = array();
$this->From = false;
$this->CcElements = array();
$this->BccElements = array();
$this->ReplyTo = false;
$this->Subject = false;
$this->BodyText = false;
$this->ExtraHeaders = array();
$this->TextCodec = false;
$this->MessageID = false;
// Sets some default values
$version = eZPublishSDK::version();
$this->MIMEVersion = '1.0';
$this->ContentType = array( 'type' => 'text/plain',
'charset' => $this->usedCharset(),
'transfer-encoding' => '8bit',
'disposition' => 'inline',
'boundary' => false );
$this->UserAgent = "eZ Publish, Version $version";
$ini = eZINI::instance();
if ( $ini->hasVariable( 'MailSettings', 'ContentType' ) )
$this->setContentType( $ini->variable( 'MailSettings', 'ContentType' ) );
}
示例2: initialize
protected static function initialize($force = false)
{
if (self::$initialized && !$force) {
return;
}
// starting with version 4.1, this is available in the Setup|System Info page
if (version_compare('4.1', eZPublishSDK::version()) <= 0) {
self::$view_groups['PHP']['php']['hidden'] = true;
}
$ini = eZINI::instance('file.ini');
$h = $ini->variable('ClusteringSettings', 'FileHandler');
if (in_array($h, array('ezfs', 'eZFSFileHandler', 'eZFS2FileHandler'))) {
self::$view_groups['eZPublish']['cachestats']['disabled'] = false;
self::$view_groups['eZPublish']['cachesearch']['disabled'] = false;
self::$view_groups['eZPublish']['storagestats']['disabled'] = false;
}
if (in_array($h, array('eZDFSFileHandler'))) {
self::$view_groups['eZPublish']['cachestats']['disabled'] = false;
self::$view_groups['eZPublish']['storagestats']['disabled'] = false;
}
/*if ( isset( $GLOBALS['_PHPA'] ) )
{
self::$view_groups['PHP']['phpaccelerator'];
}
else if ( extension_loaded( 'Turck MMCache' ) )
{
$operatorValue = 'mmcache';
}*/
if (extension_loaded('eAccelerator')) {
self::$view_groups['PHP']['eaccelerator']['disabled'] = false;
}
if (extension_loaded('apc')) {
self::$view_groups['PHP']['apc']['disabled'] = false;
}
if (function_exists('accelerator_get_status') || function_exists('opcache_get_status')) {
self::$view_groups['PHP']['acceleratorplus']['disabled'] = false;
}
/*else if ( extension_loaded( 'Zend Performance Suite' ) )
{
$operatorValue = 'performancesuite';
}*/
if (extension_loaded('xcache')) {
self::$view_groups['PHP']['xcache']['disabled'] = false;
}
if (extension_loaded('wincache')) {
self::$view_groups['PHP']['wincache']['disabled'] = false;
}
$db = eZDB::instance();
if ($db->databaseName() == 'mysql') {
self::$view_groups['QA']['databaseqa']['disabled'] = false;
/// @todo is this the correct way to check?
if (function_exists('mysqli_get_client_stats')) {
self::$view_groups['PHP']['mysqli']['disabled'] = false;
}
}
self::$initialized = true;
}
示例3: get
function get($oid)
{
$internaloid = preg_replace('/\\.0$/', '', $oid);
switch ($internaloid) {
case '3.1':
return array('oid' => $oid, 'type' => eZSNMPd::TYPE_STRING, 'value' => eZPublishSDK::version());
case '3.2':
return array('oid' => $oid, 'type' => eZSNMPd::TYPE_STRING, 'value' => eZSNMPd::VERSION);
case '3.3':
return array('oid' => $oid, 'type' => eZSNMPd::TYPE_STRING, 'value' => $GLOBALS['eZCurrentAccess']['name']);
}
return self::NO_SUCH_OID;
// oid not managed
}
示例4: setParameters
function setParameters( $parameters = array() )
{
$timestamp = time();
if ( isset( $_SERVER['HOSTNAME'] ) )
$host = $_SERVER['HOSTNAME'];
else if ( isset( $_SERVER['HTTP_HOST'] ) )
$host = $_SERVER['HTTP_HOST'];
else
$host = 'localhost';
$packaging = array( 'timestamp' => $timestamp,
'host' => $host,
'packager' => false );
$ezpublishVersion = eZPublishSDK::version( true );
$ezpublishNamedVersion = eZPublishSDK::version( false, false, true );
$ezpublish = array( 'version' => $ezpublishVersion,
'named-version' => $ezpublishNamedVersion );
$defaults = array( 'name' => false,
'development' => eZPackage::DEVELOPMENT,
'summary' => false,
'description' => false,
'vendor' => false,
'vendor-dir' => false,
'priority' => false,
'type' => false,
'extension' => false,
'install_type' => 'install',
'ezpublish' => $ezpublish,
'maintainers' => array(),
'packaging' => $packaging,
'source' => false,
'documents' => array(),
'groups' => array(),
'changelog' => array(),
'file-list' => array(),
'simple-file-list' => array(),
'version-number' => false,
'release-number' => false,
'release-timestamp' => false,
'licence' => false,
'state' => false,
'dependencies' => array( 'provides' => array(),
'requires' => array(),
'obsoletes' => array(),
'conflicts' => array() ),
'install' => array(),
'uninstall' => array() );
$this->PolicyCache = array();
$this->InstallData = array();
$this->Parameters = array_merge( $defaults, $parameters );
}
示例5: initialize
protected static function initialize()
{
// starting with version 4.1, this is available in the Setup|System Info page
if (version_compare('4.1', eZPublishSDK::version()) <= 0 && !count(ezSysinfoClusterManager::clusterNodes())) {
self::$view_groups['php']['hidden'] = true;
}
/*if ( isset( $GLOBALS['_PHPA'] ) )
{
self::$view_groups['PHP']['phpaccelerator'];
}
else if ( extension_loaded( 'Turck MMCache' ) )
{
$operatorValue = 'mmcache';
}*/
if (extension_loaded('eAccelerator')) {
self::$view_groups['eaccelerator']['disabled'] = false;
}
if (extension_loaded('apc')) {
self::$view_groups['apc']['disabled'] = false;
}
if (function_exists('accelerator_get_status') || function_exists('opcache_get_status')) {
self::$view_groups['acceleratorplus']['disabled'] = false;
}
/*else if ( extension_loaded( 'Zend Performance Suite' ) )
{
$operatorValue = 'performancesuite';
}*/
if (extension_loaded('xcache')) {
self::$view_groups['xcache']['disabled'] = false;
}
if (extension_loaded('wincache')) {
self::$view_groups['wincache']['disabled'] = false;
}
$db = eZDB::instance();
if ($db->databaseName() == 'mysql') {
/// @todo is this the correct way to check?
if (function_exists('mysqli_get_client_stats')) {
self::$view_groups['mysqli']['disabled'] = false;
}
}
// a bit hackish
if (count(ezSysinfoClusterManager::clusterNodes()) && !ezSysinfoClusterManager::isClusterSlaveRequest()) {
foreach (self::$view_groups as &$viewDefinition) {
if (@$viewDefinition['cluster_mode'] != '') {
$viewDefinition['script'] = $viewDefinition['cluster_mode'];
}
}
}
}
示例6: eZStepSiteTypes
function eZStepSiteTypes($tpl, $http, $ini, &$persistenceList)
{
$ini = eZINI::instance('package.ini');
$indexURL = trim($ini->variable('RepositorySettings', 'RemotePackagesIndexURL'));
if ($indexURL === '') {
$indexURL = trim($ini->variable('RepositorySettings', 'RemotePackagesIndexURLBase'));
if (substr($indexURL, -1, 1) !== '/') {
$indexURL .= '/';
}
$indexURL .= eZPublishSDK::version(false, false, false) . '/' . eZPublishSDK::version() . '/';
}
$this->IndexURL = $indexURL;
if (substr($this->IndexURL, -1, 1) == '/') {
$this->XMLIndexURL = $this->IndexURL . 'index.xml';
} else {
$this->XMLIndexURL = $this->IndexURL . '/index.xml';
}
$this->eZStepInstaller($tpl, $http, $ini, $persistenceList, 'site_types', 'Site types');
}
示例7: __construct
function __construct()
{
$this->ReceiverElements = array();
$this->MobileElements = array();
$this->From = false;
$this->CcElements = array();
$this->BccElements = array();
$this->ReplyTo = false;
$this->Subject = false;
$this->BodyText = false;
$this->ExtraHeaders = array();
$this->TextCodec = false;
$this->MessageID = false;
$this->Date = false;
// Sets some default values
$version = eZPublishSDK::version();
$this->MIMEVersion = '1.0';
$this->ContentType = array('type' => 'text/plain', 'charset' => eZTextCodec::internalCharset(), 'transfer-encoding' => '8bit', 'disposition' => 'inline', 'boundary' => false);
$this->UserAgent = "eZ publish, Version {$version}";
$ini = eZINI::instance();
// HACK! Ignore system content type
//if ( $ini->hasVariable( 'MailSettings', 'ContentType' ) )
// $this->setContentType( $ini->variable( 'MailSettings', 'ContentType' ) );
if (!defined('EZ_MAIL_LINE_SEPARATOR')) {
$ini = eZINI::instance('site.ini');
$ending = $ini->variable('MailSettings', 'HeaderLineEnding');
if ($ending == 'auto') {
$sys = eZSys::instance();
// For windows we use \r\n which is the endline defined in RFC 2045
if ($sys->osType() == 'win32') {
$separator = "\r\n";
} else {
$separator = "\n";
}
} else {
$separator = urldecode($ending);
}
define('EZ_MAIL_LINE_SEPARATOR', $separator);
}
}
示例8: alias
static function alias()
{
return eZPublishSDK::version();
}
示例9: generateRegistration
function generateRegistration($mailTpl, $comments)
{
$databaseMap = eZSetupDatabaseMap();
$databaseInfo = $this->PersistenceList['database_info'];
$databaseInfo['info'] = $databaseMap[$databaseInfo['type']];
$regionalInfo = $this->PersistenceList['regional_info'];
if (!isset($regionalInfo['languages'])) {
$regionalInfo['languages'] = array();
}
// $demoData = $this->PersistenceList['demo_data'];
$emailInfo = $this->PersistenceList['email_info'];
$siteTemplates = array();
$siteType = $this->chosenSiteType();
/* $typeFunctionality = eZSetupFunctionality( $siteType['identifier'] );
$additionalPackages = array();
if ( isset( $this->PersistenceList['additional_packages'] ) )
$additionalPackages = $this->PersistenceList['additional_packages'];
$extraFunctionality = array_merge( $additionalPackages,
$typeFunctionality['required'] );
$extraFunctionality = array_unique( $extraFunctionality );*/
$url = $siteType['url'];
if (!preg_match("#^[a-zA-Z0-9]+://(.*)\$#", $url)) {
$url = 'http://' . $url;
}
$currentURL = $url;
$adminURL = $url;
if ($siteType['access_type'] == 'url') {
$url .= '/' . $siteType['access_type_value'];
$adminURL .= '/' . $siteType['admin_access_type_value'];
} else {
if ($siteType['access_type'] == 'hostname') {
$url = eZHTTPTool::createRedirectURL('http://' . $siteType['access_type_value']);
$adminURL = eZHTTPTool::createRedirectURL('http://' . $siteType['admin_access_type_value']);
} else {
if ($siteType['access_type'] == 'port') {
$url = eZHTTPTool::createRedirectURL($currentURL, array('override_port' => $siteType['access_type_value']));
$adminURL = eZHTTPTool::createRedirectURL($currentURL, array('override_port' => $siteType['admin_access_type_value']));
}
}
}
$siteType['url'] = $url;
$siteType['admin_url'] = $adminURL;
//$siteType['extra_functionality'] = $extraFunctionality;
$testsRun = $this->PersistenceList['tests_run'];
$imageMagickProgram = $this->PersistenceList['imagemagick_program'];
$imageGDExtension = $this->PersistenceList['imagegd_extension'];
$phpVersion = $this->PersistenceList['phpversion'];
$webserverInfo = false;
if (function_exists('apache_get_version')) {
$webserverInfo = array('version' => apache_get_version());
}
$systemInfo = new eZSysInfo();
$systemInfo->scan();
$optionalTests = eZSetupOptionalTests();
$testTable = eZSetupTestTable();
$runResult = eZSetupRunTests($optionalTests, 'eZSetup:init:send_registration', $this->PersistenceList);
$testResults = $runResult['results'];
$testResult = $runResult['result'];
$successCount = $runResult['success_count'];
$persistenceData = $runResult['persistence_list'];
// Send e-mail
$mailTpl->setVariable('comments', $comments);
$mailTpl->setVariable('database_info', $databaseInfo);
$mailTpl->setVariable('regional_info', $regionalInfo);
// $mailTpl->setVariable( 'demo_data', $demoData );
$mailTpl->setVariable('email_info', $emailInfo);
$mailTpl->setVariable('site_type', $siteType);
$mailTpl->setVariable('tests_run', $testsRun);
$mailTpl->setVariable('imagemagick_program', $imageMagickProgram);
$mailTpl->setVariable('imagegd_extension', $imageGDExtension);
$mailTpl->setVariable('phpversion', $phpVersion);
$mailTpl->setVariable('webserver', $webserverInfo);
$mailTpl->setVariable('system', $systemInfo);
$mailTpl->setVariable('os', array('name' => php_uname()));
$mailTpl->setVariable('optional_tests', $testResults);
$mailTpl->setVariable("version", array("text" => eZPublishSDK::version(), "major" => eZPublishSDK::majorVersion(), "minor" => eZPublishSDK::minorVersion(), "release" => eZPublishSDK::release()));
return $mailTpl->fetch('design:setup/registration_email.tpl');
}
示例10: strReplaceByArray
Returns array with replacements
*/
function strReplaceByArray($searches = array(), $subjects = array())
{
$retArray = array();
foreach ($subjects as $key => $subject) {
if (is_array($subject)) {
$retArray[$key] = strReplaceByArray($searches, $subject);
} else {
$retArray[$key] = str_replace(array_keys($searches), $searches, $subject);
}
}
return $retArray;
}
$ezinfo = eZPublishSDK::version(true);
$whatIsEzPublish = 'eZ Publish is a professional PHP application framework with advanced
CMS (content management system) functionality. As a CMS its most notable
featureis its revolutionary, fully customizable and extendable content
model. Thisis also what makes eZ Publish suitable as a platform for
general PHP development,allowing you to rapidly create professional
web-based applications.
Standard CMS functionality (such as news publishing, e-commerce and
forums) are already implemented and ready to use. Standalone libraries
can be used for cross-platform database-independent browser-neutral
PHP projects. Because eZ Publish is a web-based application, it can
be accessed from anywhere you have an internet connection.';
$license = 'This copy of eZ Publish is distributed under the terms and conditions of
the GNU General Public License (GPL). Briefly summarized, the GPL gives
you the right to use, modify and share this copy of eZ Publish. If you
示例11: validateVersion
function validateVersion()
{
$versionValidated = false;
$ezversion = eZPublishSDK::version();
if ($this->MinVersion !== false) {
if ($this->MaxVersion !== false) {
if (version_compare($this->MinVersion, $ezversion, 'le') && version_compare($this->MaxVersion, $ezversion, 'ge')) {
return true;
}
return false;
}
if (version_compare($this->MinVersion, $ezversion, 'le')) {
return true;
}
return false;
} else {
if (version_compare($this->MaxVersion, $ezversion, 'ge')) {
return true;
}
return false;
}
}
示例12: generateRegistration
/**
* @param \eZTemplate $mailTpl
* @param array $userData
*
* @return array|null|string
*/
function generateRegistration( eZTemplate $mailTpl, array $userData )
{
$databaseMap = eZSetupDatabaseMap();
$databaseInfo = $this->PersistenceList['database_info'];
$databaseInfo['info'] = $databaseMap[$databaseInfo['type']];
$regionalInfo = $this->PersistenceList['regional_info'];
if ( !isset( $regionalInfo['languages'] ) )
$regionalInfo['languages'] = array();
$emailInfo = $this->PersistenceList['email_info'];
$siteType = $this->chosenSiteType();
$url = $siteType['url'];
if ( !preg_match( "#^[a-zA-Z0-9]+://(.*)$#", $url ) )
{
$url = 'http://' . $url;
}
$currentURL = $url;
$adminURL = $url;
if ( $siteType['access_type'] == 'url' )
{
$url .= '/' . $siteType['access_type_value'];
$adminURL .= '/' . $siteType['admin_access_type_value'];
}
else if ( $siteType['access_type'] == 'hostname' )
{
$url = eZHTTPTool::createRedirectURL( 'http://' . $siteType['access_type_value'] );
$adminURL = eZHTTPTool::createRedirectURL( 'http://' . $siteType['admin_access_type_value'] );
}
else if ( $siteType['access_type'] == 'port' )
{
$url = eZHTTPTool::createRedirectURL( $currentURL, array( 'override_port' => $siteType['access_type_value'] ) );
$adminURL = eZHTTPTool::createRedirectURL( $currentURL, array( 'override_port' => $siteType['admin_access_type_value'] ) );
}
$siteType['url'] = $url;
$siteType['admin_url'] = $adminURL;
$testsRun = $this->PersistenceList['tests_run'];
$imageMagickProgram = $this->PersistenceList['imagemagick_program'];
$imageGDExtension = $this->PersistenceList['imagegd_extension'];
$phpVersion = $this->PersistenceList['phpversion'];
$phpVersion['sapi'] = PHP_SAPI;
$webserverInfo = false;
if ( function_exists( 'apache_get_version' ) )
{
$webserverInfo = array( 'version' => apache_get_version() );
}
else if ( !empty( $_SERVER['SERVER_SOFTWARE'] ) )
{
$webserverInfo = array( 'version' => $_SERVER['SERVER_SOFTWARE'] );
}
$systemInfo = new eZSysInfo();
$systemInfo->scan();
$optionalTests = eZSetupOptionalTests();
$runResult = eZSetupRunTests( $optionalTests, 'eZSetup:init:send_registration', $this->PersistenceList );
$testResults = $runResult['results'];
// Generate email body e-mail
$mailTpl->setVariable( 'user_data', $userData );
$mailTpl->setVariable( 'database_info', $databaseInfo );
$mailTpl->setVariable( 'regional_info', $regionalInfo );
$mailTpl->setVariable( 'email_info', $emailInfo );
$mailTpl->setVariable( 'site_type', $siteType );
$mailTpl->setVariable( 'tests_run', $testsRun );
$mailTpl->setVariable( 'imagemagick_program', $imageMagickProgram );
$mailTpl->setVariable( 'imagegd_extension', $imageGDExtension );
$mailTpl->setVariable( 'phpversion', $phpVersion );
$mailTpl->setVariable( 'webserver', $webserverInfo );
$mailTpl->setVariable( 'system', $systemInfo );
$mailTpl->setVariable( 'os', array( 'name' => php_uname() ) );
$mailTpl->setVariable( 'optional_tests', $testResults );
$mailTpl->setVariable( "version", array( "text" => eZPublishSDK::version(),
"major" => eZPublishSDK::majorVersion(),
"minor" => eZPublishSDK::minorVersion(),
"release" => eZPublishSDK::release() ) );
return $mailTpl->fetch( 'design:setup/registration_email.tpl' );
}
示例13: foreach
$meta = $ini->variable('SiteSettings', 'MetaDataArray');
if (!isset($meta['description'])) {
$metaDescription = "";
if (isset($moduleResult['path']) and is_array($moduleResult['path'])) {
foreach ($moduleResult['path'] as $pathPart) {
if (isset($pathPart['text'])) {
$metaDescription .= $pathPart['text'] . " ";
}
}
}
$meta['description'] = $metaDescription;
}
$site['uri'] = $oldURI;
$site['redirect'] = false;
$site['meta'] = $meta;
$site['version'] = eZPublishSDK::version();
$site['page_title'] = $module->title();
$tpl->setVariable("site", $site);
if ($ini->variable('DebugSettings', 'DisplayDebugWarnings') == 'enabled') {
// Make sure any errors or warnings are reported
if (isset($GLOBALS['eZDebugError']) and $GLOBALS['eZDebugError']) {
eZAppendWarningItem(array('error' => array('type' => 'error', 'number' => 1, 'count' => $GLOBALS['eZDebugErrorCount']), 'identifier' => 'ezdebug-first-error', 'text' => ezpI18n::tr('index.php', 'Some errors occurred, see debug for more information.')));
}
if (isset($GLOBALS['eZDebugWarning']) and $GLOBALS['eZDebugWarning']) {
eZAppendWarningItem(array('error' => array('type' => 'warning', 'number' => 1, 'count' => $GLOBALS['eZDebugWarningCount']), 'identifier' => 'ezdebug-first-warning', 'text' => ezpI18n::tr('index.php', 'Some general warnings occured, see debug for more information.')));
}
}
if ($userObjectRequired) {
$currentUser = eZUser::currentUser();
$tpl->setVariable("current_user", $currentUser);
$tpl->setVariable("anonymous_user_id", $ini->variable('UserSettings', 'AnonymousUserID'));
示例14: array
$script->shutdown(1);
}
$params = array('use_defaults' => false, 'server' => $dbHost, 'user' => $dbUser, 'socket' => $dbSocket, 'password' => $dbPassword, 'database' => $dbName);
$db = eZDB::instance($dbType, $params, true);
if (!$db->isConnected()) {
$str = "Failed to connect to database: {$dbType}://{$dbUser}@{$dbHost}";
$cli->error($str);
$script->shutdown(1);
}
eZDB::setInstance($db);
// Only continue if the database is using the same version as the PHP code
$rows = $db->arrayQuery("SELECT * FROM ezsite_data WHERE name = 'ezpublish-version'");
if (count($rows) > 0) {
$version = $rows[0]['value'];
if (version_compare($version, eZPublishSDK::version()) != 0) {
$cli->error("Version '{$version}' in database '{$dbName}' is different from the running version " . eZPublishSDK::version());
$script->shutdown(1);
}
}
}
$script->setUser($userLogin, $userPassword);
$script->initialize();
$alreadyCreated = false;
$createdPackages = array();
foreach ($commandList as $commandItem) {
$command = $commandItem['command'];
if ($command == 'list') {
$fetchParameters = array();
if ($repositoryID) {
$fetchParameters['repository_id'] = $repositoryID;
$cli->output("The list of packages in the repository " . $cli->stylize('dir', $fetchParameters['repository_id']) . ":");
示例15: templateOperatorDownload
function templateOperatorDownload($tpl, &$persistentData, $stepData)
{
$singleOperator = $persistentData['single-operator'];
$useInput = $persistentData['use-input'];
$useOutput = $persistentData['use-output'];
$parameterCheck = $persistentData['parameter-check'];
$useInput = true;
$useOutput = false;
$parameterCheck = 2;
$operatorName = $persistentData['name'];
$className = $persistentData['class-name'];
if (!$className) {
$fullClassName = 'Template' . strtoupper($operatorName[0]) . substr($operatorName, 1) . 'Operator';
} else {
$fullClassName = $className;
}
$filename = strtolower($fullClassName) . '.php';
$description = $persistentData['description'];
$creator = $persistentData['creator-name'];
$example = $persistentData['example-code'];
$brief = '';
$full = '';
$lines = explode("\n", $description);
if (count($lines) > 0) {
$brief = $lines[0];
$full = implode("\n", array_slice($lines, 1));
}
$tpl->setVariable('full_class_name', $fullClassName);
$tpl->setVariable('class_name', $className);
$tpl->setVariable('file_name', $filename);
$tpl->setVariable('operator_name', $operatorName);
$tpl->setVariable('example_code', $example);
$tpl->setVariable('creator_name', $creator);
$tpl->setVariable('description_brief', $brief);
$tpl->setVariable('description_full', $full);
$tpl->setVariable('single_operator', $singleOperator);
$tpl->setVariable('use_input', $useInput);
$tpl->setVariable('use_output', $useOutput);
$tpl->setVariable('parameter_check', $parameterCheck);
$content = $tpl->fetch('design:setup/templateoperator_code.tpl');
$contentLength = strlen($content);
$mimeType = 'application/octet-stream';
$version = eZPublishSDK::version();
header("Pragma: ");
header("Cache-Control: ");
header("Content-Length: {$contentLength}");
header("Content-Type: {$mimeType}");
header("X-Powered-By: eZ Publish {$version}");
header("Content-Disposition: attachment; filename={$filename}");
header("Content-Transfer-Encoding: binary");
ob_end_clean();
print $content;
fflush();
eZExecution::cleanExit();
}