Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
e58280e2c3 | |||
be2e298f6e | |||
22275a1a56 |
File diff suppressed because one or more lines are too long
@ -133,7 +133,9 @@ final class d3mod_activation extends d3_cfg_mod_main
|
||||
$aLicData = [];
|
||||
$this->_sNextStep = 'submitData';
|
||||
|
||||
$sKey = trim(Registry::get(Request::class)->getRequestEscapedParameter('licencekey'));
|
||||
// don't escape serial key with linebreaks
|
||||
$sKey = trim(Registry::get(Request::class)->getRequestParameter('licencekey'));
|
||||
|
||||
if ($this->getActivationType() == 'boughtoxidmodule'
|
||||
&& strlen($sKey) > 32
|
||||
) {
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -105,8 +105,10 @@ class d3decoder
|
||||
public function decodeUtf8(?string $encodedValue): mixed
|
||||
{
|
||||
return unserialize(
|
||||
utf8_decode(
|
||||
html_entity_decode($encodedValue ?? '', ENT_QUOTES)
|
||||
mb_convert_encoding(
|
||||
html_entity_decode($encodedValue ?? '', ENT_QUOTES),
|
||||
'ISO-8859-1',
|
||||
'UTF-8'
|
||||
)
|
||||
);
|
||||
}
|
||||
|
@ -101,10 +101,12 @@ class d3encoder
|
||||
*/
|
||||
public function encodeUtf8(mixed $decodedValue): string
|
||||
{
|
||||
return utf8_encode(
|
||||
return mb_convert_encoding(
|
||||
serialize(
|
||||
$decodedValue
|
||||
)
|
||||
),
|
||||
'UTF-8',
|
||||
'ISO-8859-1'
|
||||
);
|
||||
}
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -15,7 +15,9 @@
|
||||
|
||||
namespace D3\ModCfg\Application\Model\Log;
|
||||
|
||||
use D3\ModCfg\Application\Model\d3bitmask;
|
||||
use InvalidArgumentException;
|
||||
use Monolog\Logger;
|
||||
use Psr\Log\LogLevel;
|
||||
|
||||
class d3LogLevel extends LogLevel
|
||||
@ -102,7 +104,7 @@ class d3LogLevel extends LogLevel
|
||||
|
||||
public static function stringToIntLevel(string $stringLevel): int
|
||||
{
|
||||
return match ($stringLevel) {
|
||||
return match (trim(strtolower($stringLevel))) {
|
||||
LogLevel::EMERGENCY => self::EMERGENCY,
|
||||
LogLevel::ALERT => self::ALERT,
|
||||
LogLevel::CRITICAL => self::CRITICAL,
|
||||
@ -114,4 +116,20 @@ class d3LogLevel extends LogLevel
|
||||
default => throw new InvalidArgumentException('unknown loglevel '.$stringLevel)
|
||||
};
|
||||
}
|
||||
|
||||
public static function convertToMonologLevel(int $d3Loglevel): int
|
||||
{
|
||||
$bit = oxNew(d3bitmask::class);
|
||||
return match (true) {
|
||||
$bit->isBitSetByPosition( $d3Loglevel, self::DEBUG) => Logger::DEBUG,
|
||||
$bit->isBitSetByPosition( $d3Loglevel, self::INFO) => Logger::INFO,
|
||||
$bit->isBitSetByPosition( $d3Loglevel, self::NOTICE) => Logger::NOTICE,
|
||||
$bit->isBitSetByPosition( $d3Loglevel, self::WARNING) => Logger::WARNING,
|
||||
$bit->isBitSetByPosition( $d3Loglevel, self::ERROR) => Logger::ERROR,
|
||||
$bit->isBitSetByPosition( $d3Loglevel, self::CRITICAL) => Logger::CRITICAL,
|
||||
$bit->isBitSetByPosition( $d3Loglevel, self::ALERT) => Logger::ALERT,
|
||||
$bit->isBitSetByPosition( $d3Loglevel, self::EMERGENCY) => Logger::EMERGENCY,
|
||||
default => Logger::EMERGENCY, // no appropriate Monolog level
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -82,6 +82,16 @@ class d3log extends BaseModel implements d3LogInterface
|
||||
];
|
||||
|
||||
public $aLogGroups = [
|
||||
'debug' => [
|
||||
'DEBUG' => true,
|
||||
'INFO' => true,
|
||||
'NOTICE' => true,
|
||||
'WARNING' => true,
|
||||
'EMERGENCY' => true,
|
||||
'ALERT' => true,
|
||||
'CRITICAL' => true,
|
||||
'ERROR' => true,
|
||||
],
|
||||
'info' => [
|
||||
'INFO' => true,
|
||||
'NOTICE' => true,
|
||||
@ -782,13 +792,13 @@ class d3log extends BaseModel implements d3LogInterface
|
||||
$aLogTypes = Registry::get(Request::class)->getRequestEscapedParameter('logtypes');
|
||||
|
||||
/** set DEBUG mode */
|
||||
if ($aLogTypes && is_array($aLogTypes) && isset($aLogTypes['7'])) {
|
||||
$aLog['DEBUG'] = $aLogTypes['7'] ? true : false;
|
||||
if ($aLogTypes && is_array($aLogTypes) && isset($aLogTypes[d3LogLevel::DEBUG])) {
|
||||
$aLog['DEBUG'] = $aLogTypes[d3LogLevel::DEBUG] ? true : false;
|
||||
}
|
||||
|
||||
/** set TEST mode */
|
||||
if ($aLogTypes && is_array($aLogTypes) && isset($aLogTypes['8'])) {
|
||||
$aLog['TEST'] = $aLogTypes['8'] ? true : false;
|
||||
if ($aLogTypes && is_array($aLogTypes) && isset($aLogTypes[d3LogLevel::TEST])) {
|
||||
$aLog['TEST'] = $aLogTypes[d3LogLevel::TEST] ? true : false;
|
||||
}
|
||||
} else {
|
||||
return false;
|
||||
|
@ -69,30 +69,38 @@ class Object2DeliveryOrphans extends AbstractAction
|
||||
$oQB = $this->getQueryBuilder();
|
||||
$oQB->from('oxobject2delivery', $tableAlias)
|
||||
->leftJoin($tableAlias, 'oxarticles', 'art', $oQB->expr()->eq($tableAlias.'.oxobjectid', 'art.oxid'))
|
||||
->leftJoin($tableAlias, 'oxcategories', 'cat', $oQB->expr()->eq($tableAlias.'.oxobjectid', 'cat.oxid'))
|
||||
->leftJoin($tableAlias, 'oxdelivery', 'del', $oQB->expr()->eq($tableAlias.'.oxdeliveryid', 'del.oxid'))
|
||||
->leftJoin($tableAlias, 'oxcountry', 'cou', $oQB->expr()->eq($tableAlias.'.oxobjectid', 'cou.oxid'))
|
||||
->leftJoin($tableAlias, 'oxdeliveryset', 'des', $oQB->expr()->eq($tableAlias.'.oxdeliveryid', 'des.oxid'))
|
||||
->leftJoin($tableAlias, 'oxdeliveryset', 'des', $oQB->expr()->eq($tableAlias.'.oxobjectid', 'des.oxid'))
|
||||
->leftJoin($tableAlias, 'oxgroups', 'gro', $oQB->expr()->eq($tableAlias.'.oxobjectid', 'gro.oxid'))
|
||||
->leftJoin($tableAlias, 'oxuser', 'usr', $oQB->expr()->eq($tableAlias.'.oxobjectid', 'usr.oxid'))
|
||||
->where(
|
||||
$oQB->expr()->or(
|
||||
$oQB->expr()->isNull('del.oxid'),
|
||||
$oQB->expr()->and(
|
||||
$oQB->expr()->eq($tableAlias.'.oxtype', $oQB->createNamedParameter('oxarticles')),
|
||||
$oQB->expr()->or(
|
||||
$oQB->expr()->isNull('art.oxid'),
|
||||
$oQB->expr()->isNull('del.oxid')
|
||||
)
|
||||
$oQB->expr()->isNull('art.oxid')
|
||||
),
|
||||
$oQB->expr()->or(
|
||||
$oQB->expr()->isNull('cou.oxid'),
|
||||
$oQB->expr()->or(
|
||||
$oQB->expr()->and(
|
||||
$oQB->expr()->eq($tableAlias.'.oxtype', $oQB->createNamedParameter('oxcountry')),
|
||||
$oQB->expr()->isNull('del.oxid')
|
||||
),
|
||||
$oQB->expr()->and(
|
||||
$oQB->expr()->eq($tableAlias.'.oxtype', $oQB->createNamedParameter('oxdelset')),
|
||||
$oQB->expr()->isNull('des.oxid')
|
||||
)
|
||||
)
|
||||
$oQB->expr()->and(
|
||||
$oQB->expr()->eq($tableAlias.'.oxtype', $oQB->createNamedParameter('oxcategories')),
|
||||
$oQB->expr()->isNull('cat.oxid')
|
||||
),
|
||||
$oQB->expr()->and(
|
||||
$oQB->expr()->eq($tableAlias.'.oxtype', $oQB->createNamedParameter('oxcountry')),
|
||||
$oQB->expr()->isNull('cou.oxid')
|
||||
),
|
||||
$oQB->expr()->and(
|
||||
$oQB->expr()->eq($tableAlias.'.oxtype', $oQB->createNamedParameter('oxdelset')),
|
||||
$oQB->expr()->isNull('des.oxid')
|
||||
),
|
||||
$oQB->expr()->and(
|
||||
$oQB->expr()->eq($tableAlias.'.oxtype', $oQB->createNamedParameter('oxgroups')),
|
||||
$oQB->expr()->isNull('gro.oxid')
|
||||
),
|
||||
$oQB->expr()->and(
|
||||
$oQB->expr()->eq($tableAlias.'.oxtype', $oQB->createNamedParameter('oxuser')),
|
||||
$oQB->expr()->isNull('usr.oxid')
|
||||
)
|
||||
)
|
||||
);
|
||||
|
@ -37,7 +37,8 @@ class d3clrtmp extends Base
|
||||
protected $_iLimit;
|
||||
protected $_iLimitTimeStamp;
|
||||
protected $_blHideErrorMsg = false;
|
||||
protected $_sSmartyFolderName = 'smarty';
|
||||
protected $templateCacheFolderName = 'template_cache';
|
||||
protected $moduleCacheFolderName = 'modules';
|
||||
public $blUpdateViewCheck = false;
|
||||
public $blMallAdminCheck = true;
|
||||
|
||||
@ -80,10 +81,12 @@ class d3clrtmp extends Base
|
||||
$blRet = $this->_clearCache(null, true) && $this->updateViews();
|
||||
|
||||
if ($this->_d3GetSet()->getValue('blClrTmp_nofolderremove')) {
|
||||
$this->_getFileSystemHandler()->del_dir($this->getTmpPath($this->_sSmartyFolderName), false, true, true);
|
||||
$this->_createSmartyFolder();
|
||||
$this->_getFileSystemHandler()->del_dir($this->getTmpPath($this->templateCacheFolderName), false, true, true);
|
||||
$this->_createTemplateCacheFolder();
|
||||
}
|
||||
|
||||
$this->_createModuleCacheFolder();
|
||||
|
||||
if ((bool) Registry::get(ConfigFile::class)->getVar('iDebug')) {
|
||||
stopProfile(__METHOD__);
|
||||
}
|
||||
@ -108,7 +111,7 @@ class d3clrtmp extends Base
|
||||
|
||||
$sPattern = "%.*(?<!class_file_paths)\.{1}php$%"; // % is delimiter; all, except 'class_file_paths'
|
||||
|
||||
$blRet = (bool)$this->_clearCache($sPattern, false, $this->_sSmartyFolderName);
|
||||
$blRet = (bool)$this->_clearCache($sPattern, false, $this->templateCacheFolderName);
|
||||
if ((bool) Registry::get(ConfigFile::class)->getVar('iDebug')) {
|
||||
stopProfile(__METHOD__);
|
||||
}
|
||||
@ -505,11 +508,11 @@ class d3clrtmp extends Base
|
||||
$this->_getFileSystemHandler()->setIncludeRegExp(null);
|
||||
$this->_getFileSystemHandler()->setExcludeRegExp(null);
|
||||
|
||||
if (is_object($this->_d3GetSet()) && false == $this->_d3GetSet()->getValue('blClrTmp_nohtaccess')) {
|
||||
if ( is_object($this->_d3GetSet()) && !$this->_d3GetSet()->getValue( 'blClrTmp_nohtaccess' ) ) {
|
||||
$this->_createTmpHtaccess();
|
||||
}
|
||||
|
||||
$this->_createSmartyFolder();
|
||||
$this->_createTemplateCacheFolder();
|
||||
} else {
|
||||
$this->d3RunClrTmpCommand();
|
||||
$iDelItems = 1;
|
||||
@ -533,7 +536,7 @@ class d3clrtmp extends Base
|
||||
}
|
||||
$sFileName = $this->getTmpPath() . '.htaccess';
|
||||
|
||||
if (false == $this->_getFileSystemHandler()->exists($sFileName)) {
|
||||
if ( !$this->_getFileSystemHandler()->exists( $sFileName ) ) {
|
||||
$sContent =
|
||||
"# disabling file access\n<FilesMatch .*>\n<IfModule mod_authz_core.c>\nRequire all denied\n</IfModule>\n<IfModule !mod_authz_core.c>\norder allow,deny\ndeny from all\n</IfModule>".
|
||||
"\n</FilesMatch>\n\nOptions -Indexes";
|
||||
@ -552,14 +555,38 @@ class d3clrtmp extends Base
|
||||
* @throws d3ShopCompatibilityAdapterException
|
||||
* @throws d3_cfg_mod_exception
|
||||
*/
|
||||
protected function _createSmartyFolder()
|
||||
protected function _createTemplateCacheFolder()
|
||||
{
|
||||
if ((bool) Registry::get(ConfigFile::class)->getVar('iDebug')) {
|
||||
startProfile(__METHOD__);
|
||||
}
|
||||
$sFolder = $this->_getFileSystemHandler()->trailingslashit($this->getTmpPath() . $this->_sSmartyFolderName);
|
||||
$sFolder = $this->_getFileSystemHandler()->trailingslashit($this->getTmpPath() . $this->templateCacheFolderName);
|
||||
|
||||
if (false == $this->_getFileSystemHandler()->exists($sFolder)) {
|
||||
if ( ! $this->_getFileSystemHandler()->exists( $sFolder ) ) {
|
||||
$this->_getFileSystemHandler()->create_dir_tree($sFolder);
|
||||
}
|
||||
|
||||
if ((bool) Registry::get(ConfigFile::class)->getVar('iDebug')) {
|
||||
stopProfile(__METHOD__);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @throws DBALException
|
||||
* @throws DatabaseConnectionException
|
||||
* @throws DatabaseErrorException
|
||||
* @throws StandardException
|
||||
* @throws d3ShopCompatibilityAdapterException
|
||||
* @throws d3_cfg_mod_exception
|
||||
*/
|
||||
protected function _createModuleCacheFolder()
|
||||
{
|
||||
if ((bool) Registry::get(ConfigFile::class)->getVar('iDebug')) {
|
||||
startProfile(__METHOD__);
|
||||
}
|
||||
$sFolder = $this->_getFileSystemHandler()->trailingslashit($this->getTmpPath() . $this->moduleCacheFolderName);
|
||||
|
||||
if ( ! $this->_getFileSystemHandler()->exists( $sFolder ) ) {
|
||||
$this->_getFileSystemHandler()->create_dir_tree($sFolder);
|
||||
}
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -713,6 +713,7 @@ return [
|
||||
'D3_CFG_LOG_TYPE_WARNING' => 'Fehler und Warnungen',
|
||||
'D3_CFG_LOG_TYPE_NOTICE' => 'Fehler, Warnungen, Notizen',
|
||||
'D3_CFG_LOG_TYPE_INFO' => 'alle Fehler- und Infolevel',
|
||||
'D3_CFG_LOG_TYPE_DEBUG' => 'alle Fehler-, Info- und Debuglevel',
|
||||
'D3_CFG_LOG_TYPE_USERDEFINED' => 'benutzerdefiniert',
|
||||
|
||||
'D3_LOGTYPE_EMERGENCY' => 'eskalierende Fehler (Emergency)',
|
||||
|
@ -712,6 +712,7 @@ return [
|
||||
'D3_CFG_LOG_TYPE_WARNING' => 'errors and warnings',
|
||||
'D3_CFG_LOG_TYPE_NOTICE' => 'errors, warnings, notices',
|
||||
'D3_CFG_LOG_TYPE_INFO' => 'all error and info levels',
|
||||
'D3_CFG_LOG_TYPE_DEBUG' => 'all error, info and debug levels',
|
||||
'D3_CFG_LOG_TYPE_USERDEFINED' => 'user defined',
|
||||
|
||||
'D3_LOGTYPE_EMERGENCY' => 'escalating errors (Emergency)',
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,3 +1,7 @@
|
||||

|
||||
[](https://packagist.org/packages/d3/modcfg)
|
||||

|
||||
|
||||
[](README.md)
|
||||
[](README.en.md)
|
||||
|
||||
|
@ -1,3 +1,7 @@
|
||||

|
||||
[](https://packagist.org/packages/d3/modcfg)
|
||||

|
||||
|
||||
[](README.md)
|
||||
[](README.en.md)
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,2 +1,2 @@
|
||||
<?php ?><?php /** This Software is the property of DÂł Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Modul-Connector @version 7.1.1.1 SourceGuardian (24.10.2024) @author Daniel Seifert support@shopmodule.com @copyright (C) 2024, D3 Data Development @see https://www.d3data.de */ ?><?php
|
||||
if(!function_exists('sg_load')){$__v=phpversion();$__x=explode('.',$__v);$__v2=$__x[0].'.'.(int)$__x[1];$__u=strtolower(substr(php_uname(),0,3));$__ts=(@constant('PHP_ZTS') || @constant('ZEND_THREAD_SAFE')?'ts':'');$__f=$__f0='ixed.'.$__v2.$__ts.'.'.$__u;$__ff=$__ff0='ixed.'.$__v2.'.'.(int)$__x[2].$__ts.'.'.$__u;$__ed=@ini_get('extension_dir');$__e=$__e0=@realpath($__ed);$__dl=function_exists('dl') && function_exists('file_exists') && @ini_get('enable_dl') && !@ini_get('safe_mode');if($__dl && $__e && version_compare($__v,'5.2.5','<') && function_exists('getcwd') && function_exists('dirname')){$__d=$__d0=getcwd();if(@$__d[1]==':') {$__d=str_replace('\\','/',substr($__d,2));$__e=str_replace('\\','/',substr($__e,2));}$__e.=($__h=str_repeat('/..',substr_count($__e,'/')));$__f='/ixed/'.$__f0;$__ff='/ixed/'.$__ff0;while(!file_exists($__e.$__d.$__ff) && !file_exists($__e.$__d.$__f) && strlen($__d)>1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="<html><body>PHP script '".__FILE__."' is protected by <a href=\"https://www.sourceguardian.com/\">SourceGuardian</a> and requires a SourceGuardian loader '".$__f0."' to be installed.<br><br>1) <a href=\"".$__ixedurl."\" target=\"_blank\">Click here</a> to download the required '".$__f0."' loader from the SourceGuardian site<br>2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="<br>3) Edit ".$__ini." and add 'extension=".$__f0."' directive<br>4) Restart the web server";}}$__msg.="</body></html>";}die($__msg);exit();}}return sg_load('7A3737B357210ED1AAQAAAAhAAAABKgAAACABAAAAAAAAAD/fVLTT4wTj4Z+y5mWP8wHb5oTILiOxtPf1Os/IBYGQt1FrVrNi/CUYP2PzG8epIC5tHiNEv7kIdPyzT+6nLU/Btg9BlaN7eDr7HzJMT/VDCGxOwJfYP2QcgUq8iRbUja+LNMrToENWfSm3efIu281pGR14ls+5ToYiBz3hmklJX05gk/WEKw145Cq536vL0xJ8HZxnKnnPAeeOEc/suYJSk/0AFqMWKYXCAAAAOAAAABQPPYp3Nng4dkadcT5GR7nK5C1LyvKxaW9Q57+/XIxUHc/23hA6TIYHEm+QgYlGikBnVwsDXAiZr5CuaC/XM0kavT5rOZ0cEzmnG2MPXCoFeyzSxL1dyd7icamA9zTyOwKkndzQ37ZAORio221YdlOjs36EbtOYlqqBn10z++lvGQ/OAT0mZ2M2fBCwHBE4hgVHLnhZ6e6JmvLVRRvB+eiwzTd6JsD9k8Ejew5tFMiLd3m1HH+8LRh6pknUi+sq8zvuZ/Z9PutwOGbP96WVf6tgWrYcWBJMUZ0GGUjlaYPqFEAAADYAAAAozi8mfKQulSXjxgf9GiYnEOOW7ssBp3BbVQJc31MFYrDupcSBsTCUWW8Lgq/MhhGWUv1IGVq1Ej2PbXwpPWLyCdBv1/JEvqq/fU9F/doHwPoA9DPuxLEXyNHoAhp+11rwPq6cklZgFxSvG0wGFgUJlzNqL0qbd32SLrUrWl0tSEvgzEapt4nT4jfnFzPfKWgpzfxkCZg5BO3JwVHIFaawAY+17XY/LuNu27hMiFqtp/CpWKQ98L4cKkhB0VITkwn5rNcz9zX1u9e8vAxBoz0ji+fZPmDVETPUgAAANgAAAB3DAJezDRSxOann59dvXJ8Xy5jLHlIu5lOWTGW34CVRCKpo0OcltXn1DOoad4yFU9Vqf6RrkvBYVBQGLeW/MAoljqz2ZT8LUn4gNHBkG6yv3n4b4AnoJWyt3xVQzn1qeneQktEnaQVzn/O5TNAkucOaRiBkoGH9ykbTzHfT4yIvHtswZQmGGKysDoN8oCYe1BA0oRLfrQo0z2CJ4vPIN0tGeq0fU/enCHcHSBcelBW1brKCUr8ddXuL+k+55tXSwJsn5O1IejGZ4VWtT3t7vu5k4ZBZZQXBmcAAAAA');
|
||||
<?php ?><?php /** This Software is the property of DÂł Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Modul-Connector @version 7.2.0.0 SourceGuardian (02.07.2025) @author Daniel Seifert support@shopmodule.com @copyright (C) 2025, D3 Data Development @see https://www.d3data.de */ ?><?php
|
||||
if(!function_exists('sg_load')){$__v=phpversion();$__x=explode('.',$__v);$__v2=$__x[0].'.'.(int)$__x[1];$__u=strtolower(substr(php_uname(),0,3));$__ts=(@constant('PHP_ZTS') || @constant('ZEND_THREAD_SAFE')?'ts':'');$__f=$__f0='ixed.'.$__v2.$__ts.'.'.$__u;$__ff=$__ff0='ixed.'.$__v2.'.'.(int)$__x[2].$__ts.'.'.$__u;$__ed=@ini_get('extension_dir');$__e=$__e0=@realpath($__ed);$__dl=function_exists('dl') && function_exists('file_exists') && @ini_get('enable_dl') && !@ini_get('safe_mode');if($__dl && $__e && version_compare($__v,'5.2.5','<') && function_exists('getcwd') && function_exists('dirname')){$__d=$__d0=getcwd();if(@$__d[1]==':') {$__d=str_replace('\\','/',substr($__d,2));$__e=str_replace('\\','/',substr($__e,2));}$__e.=($__h=str_repeat('/..',substr_count($__e,'/')));$__f='/ixed/'.$__f0;$__ff='/ixed/'.$__ff0;while(!file_exists($__e.$__d.$__ff) && !file_exists($__e.$__d.$__f) && strlen($__d)>1){$__d=dirname($__d);}if(file_exists($__e.$__d.$__ff)) dl($__h.$__d.$__ff); else if(file_exists($__e.$__d.$__f)) dl($__h.$__d.$__f);}if(!function_exists('sg_load') && $__dl && $__e0){if(file_exists($__e0.'/'.$__ff0)) dl($__ff0); else if(file_exists($__e0.'/'.$__f0)) dl($__f0);}if(!function_exists('sg_load')){$__ixedurl='https://www.sourceguardian.com/loaders/download.php?php_v='.urlencode($__v).'&php_ts='.($__ts?'1':'0').'&php_is='.@constant('PHP_INT_SIZE').'&os_s='.urlencode(php_uname('s')).'&os_r='.urlencode(php_uname('r')).'&os_m='.urlencode(php_uname('m'));$__sapi=php_sapi_name();if(!$__e0) $__e0=$__ed;if(function_exists('php_ini_loaded_file')) $__ini=php_ini_loaded_file(); else $__ini='php.ini';if((substr($__sapi,0,3)=='cgi')||($__sapi=='cli')||($__sapi=='embed')){$__msg="\nPHP script '".__FILE__."' is protected by SourceGuardian and requires a SourceGuardian loader '".$__f0."' to be installed.\n\n1) Download the required loader '".$__f0."' from the SourceGuardian site: ".$__ixedurl."\n2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="\n3) Edit ".$__ini." and add 'extension=".$__f0."' directive";}}$__msg.="\n\n";}else{$__msg="<html><body>PHP script '".__FILE__."' is protected by <a href=\"https://www.sourceguardian.com/\">SourceGuardian</a> and requires a SourceGuardian loader '".$__f0."' to be installed.<br><br>1) <a href=\"".$__ixedurl."\" target=\"_blank\">Click here</a> to download the required '".$__f0."' loader from the SourceGuardian site<br>2) Install the loader to ";if(isset($__d0)){$__msg.=$__d0.DIRECTORY_SEPARATOR.'ixed';}else{$__msg.=$__e0;if(!$__dl){$__msg.="<br>3) Edit ".$__ini." and add 'extension=".$__f0."' directive<br>4) Restart the web server";}}$__msg.="</body></html>";}die($__msg);exit();}}return sg_load('7A3737B3B1210D79AAQAAAAhAAAABKgAAACABAAAAAAAAAD/kjJ3mDuVqzFqT9KElj+OBUQQiGGmNIsuZEQ9PpHw2zsCu9ftlFV1cTWUkpUc6DfRnT4GaS6hQqy0zU/DzG7o7ztPzm1wFrZoqlbmzLbz03bJQ/SXHII6I9aSCPBlachbdAohissm4oUj/BU908vqGni5Y/YWIMbamMFhOhHtbzR8s5QqVeWTtPihTHx4ZiaXQLulIriCPrs3U3i5igOSqoIzRo+DLcstCAAAAOAAAACCmccvPO0K2x0qQr3DSUln7j+NLDkCfoIhSIOzyvYFxuVFkb/XQEEu7jr9vvL40HNlSF9/SFcLAJaSYHlw8VgYNQsWUkY2bAlY0I+oYGBP7XFnLq+dWKw/HCdUs4PqfuUFnw72AGERmO4L0l2Elkjh3Dxa5DtMZTKtLVlZL5sZmPiZBfqIzQY3CBKuaEw+aOI947t4W2Uu0rE83ICMunJ/xswxL9m6jO+Vn2pYW2vQKFfOzxCRsaeJR5lwCkHv7plbDWl66exKcTgiUTzmnuy0xx8QagGTq8rFpnzTK8hEdlEAAADYAAAAmb4SbgDBHCaVCNr2w4s0e9ClGsqGkqIj2qPwBuwQ63wzGmcA56gHGbJSbKfH8hyifscM+/SAkRpISzB5xZOcFw07cyz1RNtOtEZO9ZM0iplPTZDnc/KETWsNinT8xUTMi/wF9P6z7yeHFyYHXtGmiLX8ht7jkIivY6TdvwyO7Kd874BiRguKTMzWBqgmK/PLNSeP7OymEcVCDIEuMfygtxe/rgnENroh5zIIeR5H4PWtRRTPImlXeHx+UrkGQAH7g0JY22JeuEWkPu6cob9gR31aklAwH3IEUgAAAOAAAAAbdyRF8JLAxE1hVyyhknbyUFj0bgt3zEsvjcbH/fvqB7HJqQdqu5kFXm2ML2yCDqyYCTP26+upBSg5xLPqflNAlt+f4o/PwdFchdFSmCP6UHSvbXt8S6EoqJqGWRWk8G4G6Ot+nHzWEgf9U5+h7+EKopWVHpZ+txOclsLhuVW1cCwvHPo0lZHangX13QIk1rLsreV5O/ynUkuM1NecE3T8WKY6nxH40ENQO4zKsi4BxjzwfOngoNRWN7wB4wTn03AbvuMX3XcZdWSF/MJ8iq/3b9S40dztY9giTwtbAhmm2FMAAADgAAAAYF6o/wlONIxiN4rxHOIPDFisbnEUxtcA//d0PEg4e48No449e++OLX+MMFhVToHymhyOUQnMOyazpuZ4qQtgz5IwW6Z5pt4SKbmpDj6Sr8J9eqNf+xbN9fL8lxVh01UCNkFr69L9Jm3SAClzZAcEjy9enUYS2tnOdtDvaQYjZ3Ywt1RexPEgjNMaPHytEUswl9iXHLJLHfz40QIfaRn1ZlsYLm6qoCVPdn7k3f9BaBMtprexbqMZM6WjIE5TZ0EKE6it9QYdYK96+kU1GnWAAeed00a4Bh5TMxQHGHOMDA0AAAAA');
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
Tests/unit/Application/Model/Log/LogLevelTest.php
Normal file
2
Tests/unit/Application/Model/Log/LogLevelTest.php
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user