本文整理汇总了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();
}