All notable changes to this project will be documented in this file. The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Cache storage format in
Internal\Framework\Module\Cache\FilesystemModuleCache
toJSON
- Show 404 error but not redirect to index on accessing not existing product PR-871
- Switched to default PDO result set types when using PHP8.1
- Ensure \OxidEsales\EshopCommunity\Application\Model\NewsSubscribed::getOptInStatus int result type
- Increase the size of OXCONTENT fields in oxcontents table #0006831
- Change broken "Requirements" links to current shop documentation PR-877
- Fix static cache variable usage in
Model\Article::getCategory
PR-803 - Fix not initialized category case possible in
Model\Article::getCategory
PR-803
OxidEsales\EshopCommunity\Application\Model\UserPayment
redundant methods:load
andinsert
7.0.0-rc.1 - 2021-07-07
- Support for MySQL v8.0
- Console Shop installer commands:
oe:setup:shop
oe:setup:demodata
oe:admin:create-user
oe:license:add
oe:license:clear
- Console module installer commands:
oe:module:install
oe:module:uninstall
- Export for newsletter recipients list
- Saving tracking URL per Shipping Method
- Interface for file upload management
Internal\Framework\FileSystem\ImageHandlerInterface
- Psalm integration PR-766
- Support for single language map file PR-449
- Performance improvement in
Core\Field
PR-771 - Logging for:
- Update symfony components to version 5
- Storage of module source files:
- don't copy files to the
source/modules
directory - copy assets to the shop
out
directory - change translations loading source for themes
- use relative path for module template file path in
metadata.php
- use new module configuration parameter
moduleSource
- don't copy files to the
- Rename deprecated methods prefixed with a single underscore
- Extend
oxNew
signature for static analysis PR-744 - Change default value for
oxpublic
field inoxuserbaskets
- Optimize configuration loading PR-787
- Update a list of bots (
aRobots
array in config) PR-853 - Generation of currency URL PR-750
autocomplete
for SMTP fields in admin template PR-794- Move functionality to
Utility
classes:- hash service to
Internal\Utility\Hash
- email validation service to
Internal\Utility\Email\EmailValidatorServiceInterface
- hash service to
- Behaviour of
Core\UtilsFile::processFiles()
with enabled configuration for alternative image URL - Database fields:
oxvalue
field inoxconfig
table changed fromblob
totext
oxvalue
field inoxuserpayments
table changed fromblob
totext
- Templates and blocks:
source/Application/views/admin/tpl/shop_license.tpl
source/Application/views/admin/tpl/shop_main.tpl
PR-730:admin_shop_main_leftform
admin_shop_main_rightform
-
Support:
- MySQL v5.5, v5.6
- Database encoding
- Metadata versions 1, 1.1, 1.2 see list
- Module
source-directory
andtarget-directory
incomposer.json
see list blacklist-filter
for composer typeoxideshop-module
see list- Two stars
**
in composerblacklist-filter
Path
parameter inmoduleConfiguration
see listUNIT...
prefixes in tested method calls
-
Feature:
-
Functionality:
- Newsletter email management see list
- Betanote see list
- Console commands for module configuration management:
oe:module:install-configuration
oe:module:uninstall-configuration
- PHP version checker
- MySQL version check in Setup
- Resetting the PHP
error_reporting()
level in theShopControl
PR-728 - Smarty plugin
assign_adv
with correspondingTemplateLogic
service - Usage of concatenation in translation files PR-729
- Version information in copyright string PR-813
- Old update procedure related check PR-829
-
Class:
Application\Controller\Admin\DynEconda
Application\Controller\Admin\DynamicInterface
Application\Controller\Admin\DynamicScreenController
Application\Controller\Admin\DynamicScreenList
Application\Controller\Admin\DynamicScreenLocal
Application\Model\FileCheckerResult
Application\Model\FileCheckerResult
Application\Model\FileChecker
Application\Model\FileChecker
Conf
Core\Contract\IModuleValidator
Core\Edition\EditionPathProvider
Core\Edition\EditionRootPathProvider
Core\Edition\EditionSelector
Core\Exception\LanguageException
Core\Module\ModuleExtensionsCleaner
Core\Module\ModuleMetadataValidator
Core\Module\ModuleSmartyPluginDirectoryValidator
Core\Module\ModuleTemplateBlockContentReader
Core\Module\ModuleTemplateBlockPathFormatter
Core\Module\ModuleTemplatePathCalculator
Core\Module\ModuleTranslationPathFinder
Core\Module\ModuleValidatorFactory
Core\Routing\Module\ClassProviderStorage
Internal\Framework\Module\Setup\Handler\TemplatesModuleSettingHandler
Internal\Transition\Adapter\TemplateLogic\AssignAdvancedLogic
-
Method:
Application\Component\UserComponent::_changeUser_noRedirect()
Application\Component\Widget::getCompareItemsCnt()
Application\Controller\Admin\AdminController::_getShopVersionNr()
Application\Controller\Admin\AdminController::getServiceUrl()
Application\Controller\Admin\AdminDetailsController::_generateTextEditor()
Application\Controller\Admin\AdminDetailsController::_getPlainEditor()
Application\Controller\Admin\DiagnosticsMain::_checkOxidFiles()
Application\Controller\Admin\DiagnosticsMain::_getFileCheckReport()
Application\Controller\Admin\DiagnosticsMain::_getFilesToCheck()
Application\Controller\Admin\ModuleConfiguration::_getModuleForConfigVars()
Application\Controller\Admin\ModuleConfiguration::_loadMetadataConfVars()
Application\Controller\Admin\NavigationTree::_addDynLinks()
Application\Controller\Admin\NavigationTree::_checkDynFile()
Application\Controller\Admin\NavigationTree::_getDynMenuLang()
Application\Controller\Admin\NavigationTree::_getDynMenuUrl()
Application\Controller\Admin\OrderList::storno()
Application\Controller\Admin\ShopRdfa::submitUrl()
Application\Model::_getAmountPriceList()
Application\Model\Article::_assignPersistentParam()
Application\Model\Article::getPersParams()
Application\Model\Basket::_addedNewItem()
Application\Model\Basket::_canSaveBasket()
Application\Model\Diagnostics::getFileCheckerExtensionList()
Application\Model\Diagnostics::getFileCheckerPathList()
Application\Model\Diagnostics::setFileCheckerExtensionList()
Application\Model\Diagnostics::setFileCheckerPathList()
Application\Model\Order::getFormattedeliveryCost()
Application\Model\User::_getShopSelect()
Application\Model\User::_ldapLogin()
Application\Model\UserPayment::getPaymentKey()
Application\Model\Voucher::_getCategoryDiscoutValue()
Application\Model\Voucher::_getGenericDiscoutValue()
Application\Model\Voucher::_getProductDiscoutValue()
Core\Base::getConfig()
Core\Base::setConfig()
Core\Config::getActiveViewsNames()
Core\Config::getDecodeValueQuery()
Core\Config::getEdition()
Core\Config::getModuleTemplatePathCalculator()
Core\Config::getModulesDir()
Core\Config::getRequestEscapedParameter()
Core\Config::getRequestParameter()
Core\Config::getRequestRawParameter()
Core\Config::getRevision()
Core\Config::getVersion()
Core\Config::parseModuleChains()
Core\Controller\BaseController::getClassName()
Core\Controller\BaseController::getRevision()
Core\Controller\BaseController::setClassName()
Core\Email::getConfig()
Core\Email::setConfig()
Core\Exception\ExceptionHandler::displayOfflinePage()
Core\Exception\ExceptionHandler::getLogFileName()
Core\Exception\ExceptionHandler::setIDebug()
Core\Exception\ExceptionHandler::setLogFileName()
Core\Exception\ExceptionHandler::writeExceptionToLog()
Core\Exception\StandardException::debugOut()
Core\Exception\StandardException::getLogFileName()
Core\Exception\StandardException::setLogFileName()
Core\Language::_appendModuleLangFiles()
Core\Language::_getActiveModuleInfo()
Core\Language::_getDisabledModuleInfo()
Core\Language::getModuleTranslationPathFinder()
Core\Module::getConfigBlDoNotDisableModuleOnError()
Core\Module\Module::getMetaDataVersion()
Core\Module\Module::getMetadataPath()
Core\Module\Module::getModuleFullPath()
Core\Module\Module::getModulePath()
Core\Module\ModuleChainsGenerator::disableModule()
Core\Module\ModuleChainsGenerator::filterInactiveExtensions()
Core\Module\ModuleChainsGenerator::getDisabledModuleIds()
Core\Module\ModuleChainsGenerator::getModuleDirectoryByModuleId()
Core\Module\ModuleList::getModuleTemplates()
Core\Module\ModuleSmartyPluginDirectories::add()
Core\Module\ModuleSmartyPluginDirectories::getWithRelativePath()
Core\Module\ModuleSmartyPluginDirectories::remove()
Core\OnlineCaller::_castExceptionAndWriteToLog()
Core\OnlineModuleVersionNotifier::_getModules()
Core\ShopControl::_getFrontendStartController()
Core\ShopControl::_getStartController()
Core\ShopControl::_stopMonitor()
Core\SystemEventHandler::getConfig()
Core\SystemRequirements::checkMysqlVersion()
Core\SystemRequirements::checkPhpVersion()
Core\SystemRequirements::getConfig()
Core\Utils::getRemoteCachePath()
Core\Utils::logger()
Core\Utils::redirectOffline()
Core\Utils::writeToLog()
Core\UtilsObject::getModuleVar()
Core\UtilsObject::getShopId()
Core\UtilsObject::resetModuleVars()
Core\UtilsObject::setModuleVar()
Core\UtilsView::_getTemplateBlock()
Core\ViewConfig::getConfig()
Core\ViewConfig::getServiceUrl()
Core\ViewConfig::getSession()
Core\ViewConfig::getSessionId()
bootstrap.php::writeToLog()
cmpart()
getDb()
getRequestUrl()
getSession()
getStr()
overridablefunctions.php::getViewName()
setSession()
-
Property:
Application\Controller\Admin\AdminController::$_sShopVersion
Application\Controller\Admin\NavigationTree::$_sDynIncludeUrl
Application\Model\Article::$_aPersistParam
Application\Model\Delivery::_isForArticle
Application\Model\Diagnostics::$_aFileCheckerExtensionList
Application\Model\Diagnostics::$_aFileCheckerPathList
Application\Model\OrderArticle::$_aOrderCache
Application\Model\UserPayment::$_sPaymentKey
Core\Base::$_oConfig
Core\Base::$_oRights
Core\Base::$_oSession
Core\Config::$sConfigKey
Core\Email::$SMTP_PORT
Core\Email::$Version
Core\Email::$_oConfig
Core\Exception\ExceptionHandler::$_sFileName
Core\Exception\StandardException::$_sFileName
Core\Language::$_aActiveModuleInfo
Core\Language::$_aDisabledModuleInfo
Core\Language::$moduleTranslationPathFinder
Core\Session::$_blStarted
Core\ShopControl::$_blHandlerSet
Core\WidgetControl::$_blHandlerSet
-
Constant:
Application\Controller\Admin\ShopController::SHOP_ID
Core\Config::DEFAULT_CONFIG_KEY
Internal\Framework\Config\DataObject\ShopConfigurationSetting::MODULE_TEMPLATES
-
Configuration parameter:
blDoNotDisableModuleOnError
iUtfMode
sConfigKey
sOXIDPHP
-
Template:
source/Application/views/admin/tpl/dyn_econda.tpl
source/Application/views/admin/tpl/dynscreen.tpl
source/Application/views/admin/tpl/dynscreen_list.tpl
source/Application/views/admin/tpl/dynscreen_local.tpl
source/Application/views/admin/tpl/version_checker_result.tpl
-
Language constant:
DYNSCREEN_LIST_SERVICE
DYNSCREEN_LOCAL_TEXT
DYNSCREEN_LOCAL_TITLE
DYNSCREEN_TITLE
DYN_ECONDA_ACTIVE
DYN_ECONDA_ATTENTION
DYN_ECONDA_COPY_FILE
ERROR_MESSAGE_CONNECTION_NOLDAPBIND
ERROR_MESSAGE_CONNECTION_NOLDAP
LOAD_DYN_CONTENT_NOTICE
MOD_PHP_VERSION
NAVIGATION_NEWVERSIONAVAILABLE
NEWSLETTER_SELECTION_SENDNEWS
NEWSLETTER_SELECTION_USEDGROUP
NEWSLETTER_SEND_SEND1
NEWSLETTER_SEND_SEND2
NEWSLETTER_SEND_TITLE
SHOP_SYSTEM_LDAP
SYSREQ_MYSQL_VERSION
SYSREQ_PHP_VERSION
TOOLTIPS_NEWNEWSLETTER
USER_MAIN_LDAP
mxdynscreenlocal
-
Data in
initial_data.sql
:admin-user
entrytheme:flow
default values
- Throw exception in
getLanguageAbbr
method if no abbreviation is available by specific id PR-802 - Checking if multilanguage base table from configuration exists, before trying to generate its views PR-754
- Fix not working actions and promotions #0005526
- Refactor calls to deprecated
getStr
PR-758 - Fixe usages of deprecated methods
getConfig
andgetSession
PR-721 - Improve
oxseo::OXOBJECTID
index to fit current queries PR-466 - Replace BC classes with namespaced ones PR-772
- Ensure
out/pictures/generated
directory exists PR-789 - Improve gitignore
- Fix special chars escape problem
in
simplexml::addChild
PR-793 - Fix new version check url protocol PR-852
- Add timestamp for CSS and JS files included from module #0005746 PR-493
- Improve various docs, variable and other coding style problems:
-
PHP 8.1 support
-
Updated Symfony components
6.10.2 - Unreleased
- Error in coupon series during misconfiguration of value PR-887
- Error in multishop case, triggering return of wrong values from cookies #0007306 PR-888
- Extend default VAT check service response errors list #0007308 PR-889
6.10.1 - 2022-02-02
- Updated doc links to the latest release PR-877
- Selection window to add an item to a discount is empty #0007204
- Improved reset password token generation algorithm #0006394
6.10.0 - 2021-12-02
- Configuration option
deactivateSmartyForCmsContent
to prevent Smarty from processing content added via CMS - Method
OxidEsales\EshopCommunity\Core\Model\BaseModel::getRawFieldData()
- Allows throwing own exception messages in admin login PR-882
- Update
symfony/expression-language
component - Execution of
smarty_function_oxeval
will be prevented withdeactivateSmartyForCmsContent
switched on - Visibility of
OxidEsales\EshopCommunity\Core\Email::getRenderer
changed from private to protected PR-846
- Text message on
Payment Methods > RDFa
tab - Docblock and other coding style fixes:
- Fix db fetchmode in SeoEncoder::loadFromDb PR-879
- Fix admin login box position and sizing PR-880
- Improve utf8 email handling #0007275
- Module configuration can't process theme-specific template extensions
- Support for PHP 7.3
Core\Model\BaseModel
methods:assignRecord()
getRecordByQuery()
6.9.0 - 2021-07-27
- Added Northern Ireland due to Brexit regulations PR-872
- Use not extended OxidEsales\Eshop\Core\Module\Module in module chain generator error case. PR-863
- Remove duplicated/redundant error message in case of InputException in UserComponent. PR-713
- Docblock in SystemInfoController. PR-864
- Typo in Model/ActionList::fetchExistsActivePromotion method SQL. PR-867
- SettingChangedEvent dispatch moved to module setting dao, so its triggered during module settings change in admin. PR-860
- SQL performance issue in oxDeliverySetList::_getFilterSelect #0006247 PR-865
- Fix css style of password type fields in admin #0007249 PR-873
- Fix password checking script in admin module settings #0007249 PR-874
- Fix moduleSettings existence requirement in environment file #0007241 PR-868
- Fix cached delivery rules reuse PR-869
- Management of Newsletter emails:
Application\Controller\Admin\NewsletterList
Application\Controller\Admin\NewsletterMain
Application\Controller\Admin\NewsletterPlain
Application\Controller\Admin\NewsletterPreview
Application\Controller\Admin\NewsletterSelectionAjax
Application\Controller\Admin\NewsletterSelection
Application\Controller\Admin\NewsletterSend
Application\Model\Newsletter
Application\Controller\Admin\NewsletterMain::save()
Core\Email::sendNewsletterMail()
Application\Controller\AccountNewsletterController::_blNewsletter
- Language constants
NEWSLETTER_DONE_GOTONEWSLETTE
NEWSLETTER_DONE_NEWSSEND
NEWSLETTER_DONE_TITLE
NEWSLETTER_MAIN_MODEL
NEWSLETTER_PLAIN_TEXT
NEWSLETTER_PREVIEW_HTML
NEWSLETTER_PREVIEW_PLAINTEXT
NEWSLETTER_SELECTION_SELMAILRESAVER
NEWSLETTER_SUBJECT
tbclnewsletter_main
tbclnewsletter_plain
tbclnewsletter_preview
tbclnewsletter_selection
- Method
Core\UtilsFile::_copyFile()
Core\UtilsFile::_moveImage()
6.8.0 - 2021-04-13
- Support PHP 8.0
- Support PHP 7.1 and 7.2
6.7.2 - 2021-07-21
- Update PHPMailer to v6.5.0
- Usage of
tpl
request parameter inApplication\Component\UserComponent
- Input parsing in
assign_adv
Smarty plugin
6.7.1 - 2021-04-13
- Fix order remark create date reset during review saving in admin with German time format #0007217 PR-857
6.7.0 - 2021-03-25
- Support for Module source-directory and target-directory in composer.json
- Method:
OxidEsales\EshopCommunity\Internal\Framework\Module\Install\DataObject\OxidEshopPackage::getPackageSourcePath()
OxidEsales\EshopCommunity\Internal\Framework\Module\Install\DataObject\OxidEshopPackage::getTargetDirectory()
OxidEsales\EshopCommunity\Internal\Framework\Module\Install\DataObject\OxidEshopPackage::setTargetDirectory()
OxidEsales\EshopCommunity\Internal\Framework\Module\Install\DataObject\OxidEshopPackage::getSourceDirectory()
- Method:
OxidEsales\EshopCommunity\Core\Config::getModulesDir()
Path
parameter from moduleConfiguration:OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration::getPath()
OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration::setPath()
- Console commands for module configuration management:
oe:module:install-configuration
oe:module:uninstall-configuration
- Reset voucher reservations after logout PR-845
- Remove wrong docblock on OrderArticle model assign method PR-850
- Disable browser autocomplete for user passwords in admin interface PR-851
- Do not reuse already initialized widget control on widget loading PR-757
- Module template cache is not cleared on deactivation
- Wrong voucher calculation - discount sharing between user's baskets #0006854
6.6.0 - 2020-11-10
- Add remove module configuration command
- Support symfony's optional class for named services
- Add index to oxuser:oxrights to fix performance issue for oxuser table
- Streamlined lang files for work with translation platforms PR-833
- Improve English translations PR-843
- Use of two stars (**) for filter strings in modules composer blacklist-filter.
- Econda smarty plugin:
- Classes:
OxidEsales\Eshop\Core\Smarty\Plugin\Emos
OxidEsales\Eshop\Core\Smarty\Plugin\EmosAdapter
OxidEsales\Eshop\Core\Smarty\Plugin\EmosItem
- Classes:
- Language Constants:
NAVIGATION_NEWVERSIONAVAILABLE
UPDATEAPP_DIRNOTDELETED_WARNING
\OxidEsales\EshopCommunity\Core\Module\ModuleTemplatePathCalculator
\OxidEsales\EshopCommunity\Core\Config::getModuleTemplatePathCalculator()
\OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Handler\TemplatesModuleSettingHandler
\OxidEsales\EshopCommunity\Internal\Framework\Config\DataObject\ShopConfigurationSetting::MODULE_TEMPLATES
\OxidEsales\EshopCommunity\Core\Module\ModuleTemplateBlockContentReader
\OxidEsales\EshopCommunity\Core\Module\ModuleTemplateBlockPathFormatter
- Config option
aModuleTemplates
- Support of metadata version 1, 1.1 and 1.2
- Class:
OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration\ClassWithoutNamespace
OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataMapper\ModuleConfiguration\ClassesWithoutNamespaceDataMapper
OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Handler\ShopConfigurationClassesWithoutNamespaceHandler
OxidEsales\EshopCommunity\Core\Autoload\ModuleAutoload
- Method:
OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration::addClassWithoutNamespace
OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration::getClassesWithoutNamespace
OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration::hasClassWithoutNamespaces
OxidEsales\EshopCommunity\Internal\Framework\Module\MetaData\Dao\MetaDataNormalizer::lowerCaseFileClassesNames
OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Validator\EventsValidator::isNamespacedClass
OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\EventSubscriber\DispatchLegacyEventsSubscriber::invalidateModuleCache
- Constant:
OxidEsales\EshopCommunity\Internal\Framework\Config\DataObject\ShopConfigurationSetting::MODULE_CLASSES_WITHOUT_NAMESPACES
- Class:
OxidEsales\EshopCommunity\Core\Module\ModuleTranslationPathFinder
OxidEsales\EshopCommunity\Core\Language
:- Property:
$_aActiveModuleInfo
$_aDisabledModuleInfo
$moduleTranslationPathFinder
- Method:
_appendModuleLangFiles()
_getActiveModuleInfo()
_getDisabledModuleInfo()
getModuleTranslationPathFinder()
- Property:
OxidEsales\EshopCommunity\Core\Utils::getRemoteCachePath()
OxidEsales\EshopCommunity\Core\ViewConfig::getServiceUrl()
OxidEsales\EshopCommunity\Application\Controller\Admin\NavigationTree::$_sDynIncludeUrl
- Language constants
DYN_ECONDA_ACTIVE
DYN_ECONDA_ATTENTION
DYN_ECONDA_COPY_FILE
DYNSCREEN_TITLE
DYNSCREEN_LIST_SERVICE
LOAD_DYN_CONTENT_NOTICE
DYNSCREEN_LOCAL_TITLE
DYNSCREEN_LOCAL_TEXT
mxdynscreenlocal
- Module blacklist-filter functionality
OxidEsales\EshopCommunity\Internal\Framework\Module\Install\DataObject\OxidEshopPackage::getBlackListFilters()
OxidEsales\EshopCommunity\Internal\Framework\Module\Install\DataObject\OxidEshopPackage::setBlackListFilters()
- Impossible save module settings from the admin area if module has services.yaml #0007180
- Collect unique article ids for seo links update #0007167
- Fix OXID in _set tables has wrong collation #0007084
6.5.6 - 2020-07-16
- Add module migrations
- New language constants in
Application/translations/[de/en]/lang.php
PR-821PAGE_TITLE_START
- PHPCodeSniffer and PSR12 Coding guidelines
- Price alert is renamed to wished price
- MariaDB column default values must be trimmed PR-796
- Keep track of action type in Article model onChange method
- Module class extensions cannot be sorted in backend #0007116
- Take oxsort field into account for showing cross-seling articles PR-738
- Fix second page of article list load via SEO #0007014 PR-740
- Fix using special symbols in smtp password PR-806
- Fix docblocks
- Fix Shop deletes savedbasket from all subshops when discarding reservation basket #0007136
- Fix a bug with composer uninstall if module has custom source #0007137
- Fix composer update changes module state in yaml #0007130
- jQuery UI updated to v1.12.1
- Imports in
generated_services.yaml
changed from absolute paths to relative - Updated PHPMailer to v6.1.6
- Make module deactivation possible if module service is missing in generated_services.yaml
- News feature:
- Classes:
Application/Component/NewsComponent
Application/Controller/Admin/AdminNews
Application/Controller/Admin/NewsList
Application/Controller/Admin/NewsMainAjax
Application/Controller/Admin/NewsMain
Application/Controller/Admin/NewsText
Application/Controller/NewsController
Application/Model/NewsList
Application/Model/News
- Config options:
blFooterShowNews
bl_perfLoadNewsOnlyStart
bl_perfLoadNews
sCntOfNewsLoaded
- Language Constants:
LATEST_NEWS_AND_UPDATES_AT
LATEST_NEWS_NOACTIVENEWS
NEWS_LIST_MENUITEM
NEWS_LIST_MENUSUBITEM
NEWS_LIST_SHORTTEXT
NEWS_LIST_TITLE
NEWS_MAIN_NOTSHOWFORGROUP
NEWS_MAIN_SHORTDESC
NEWS_MAIN_SHOWFORGROUP
NEWS
ORDER_REMARK_NEWS
PAGE_TITLE_NEWS
SHOP_CONFIG_CNTOFNEWS
SHOP_MALL_MALLINHERIT_OXNEWS
SHOP_PERF_LOADNEWSONLYSTART
SHOP_PERF_LOADNEWS
USER_REMARK_NEWS
mxnews
tbclnews_main
tbclnews_mall
tbclnews_text
TOOLTIPS_NEWNEWS
- Classes:
6.5.5 - 2020-05-05
- Methods starting with underscore have been deprecated, these methods will be renamed
6.5.4 - 2020-04-21
- Betanote:
- Class:
OxidEsales\EshopCommunity\Application\Component\Widget\BetaNote
- Method:
OxidEsales\EshopCommunity\Core\Controller\BaseController::showBetaNote()
- Class:
- Suggest (Recommend Product) feature:
- Class
OxidEsales\EshopCommunity\Application\Controller\SuggestController
- Method:
OxidEsales\EshopCommunity\Core\ViewConfig::getShowSuggest
OxidEsales\EshopCommunity\Core\Email::sendSuggestMail
- Property:
OxidEsales\EshopCommunity\Core\Email::$_sSuggestTemplate
OxidEsales\EshopCommunity\Core\Email::$_sSuggestTemplatePlain
- Language Constants:
CARD_TO
CHECK
MESSAGE_ENTER_YOUR_ADDRESS_AND_MESSAGE
MESSAGE_RECOMMEND_CLICK_ON_SEND
PRODUCT_POST_CARD_FROM
RECOMMENDED_PRODUCTS
SHOP_CONFIG_ALLOW_SUGGEST_ARTICLE
HELP_SHOP_CONFIG_ALLOW_SUGGEST_ARTICLE
- Class
- Change visibility of Session::setSessionCookie to protected for overwriting possibility PR-785
- Use cache directory from config file for the container cache: #0007111
- Get the correct path to admin menu file: #0007126
6.5.3 - 2020-03-25
- Issue with module controllers validator
- Option
blSessionUseCookies
is no longer used in the Session class
6.5.2 - 2020-03-16
OxidEsales\EshopCommunity\Application\Model\Article::getDeliveryDate()
PR-768- Language Constants:
SYSREQ_MYSQL_VERSION
- Issue with session ID regeneration on user registration
- Problem with guest account update during checkout: #0007109
OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Handler\ShopConfigurationModuleSettingHandler
6.5.1 - 2020-02-25
OxidEsales\Eshop\Core\Config::getDecodeValueQuery()
OxidEsales\Eshop\Core\Config::$sConfigKey
OxidEsales\EshopCommunity\Core\Base::$_oRights
OxidEsales\Eshop\Core\Config::DEFAULT_CONFIG_KEY
Conf
OxidEsales\Eshop\Core\Session::$_blStarted
OxidEsales\Eshop\Application\Model\UserPayment::$_sPaymentKey
OxidEsales\Eshop\Application\Model\UserPayment::getPaymentKey()
OxidEsales\EshopCommunity\Core\SystemRequirements::checkMysqlVersion()
OxidEsales\EshopCommunity\Core\SystemRequirements::checkPhpVersion()
OxidEsales\EshopCommunity\Core\MailValidator
- Language Constants:
SYSREQ_PHP_VERSION
MOD_PHP_VERSION
- Credit Card:
- Class:
OxidEsales\Eshop\Core\CreditCardValidator
- Function:
OxidEsales\Eshop\Application\Controller\PaymentController::_filterDynData()
OxidEsales\Eshop\Application\Model\UserPayment::setStoreCreditCardInfo()
OxidEsales\Eshop\Application\Model\UserPayment::getStoreCreditCardInfo()
OxidEsales\Eshop\Application\Controller\PaymentController::getCreditYears()
OxidEsales\Eshop\Application\Controller\PaymentController::getDynDataFiltered()
- Property:
OxidEsales\Eshop\Core\InputValidator::$_aRequiredCCFields
OxidEsales\Eshop\Core\InputValidator::$_aPossibleCCType
OxidEsales\Eshop\Application\Controller\PaymentController::$_blDynDataFiltered
OxidEsales\Eshop\Application\Model\UserPayment::$_blStoreCreditCardInfo
OxidEsales\Eshop\Application\Controller\PaymentController::$_aCreditYears
- Language Constants:
CREDITCARD
PAYMENT_CREDITCARD
SHOP_CONFIG_STORECREDITCARDINFO
PAYMENT_RDFA_CREDITCARD
PAYMENT_RDFA_MASTERCARD
PAYMENT_RDFA_VISA
PAYMENT_RDFA_AMERICANEXPRESS
PAYMENT_RDFA_DINERSCLUB
PAYMENT_RDFA_DISCOVER
PAYMENT_RDFA_JCB
PAGE_CHECKOUT_PAYMENT_CREDITCARD
CARD_SECURITY_CODE_DESCRIPTION
HELP_SHOP_CONFIG_ATTENTION
CARD_MASTERCARD
CARD_SECURITY_CODE
CARD_VISA
- Class:
- Warnings in order discounts recalculation PR-742
- Require at least 3.4.26 DI component PR-746
- Fix return type annotation for
OxidEsales\EshopCommunity\Application\Model::load()
tobool
- Handle translated error message from validator in password change correctly PR-731
- Fix docblock and var name in NavigationController::_doStartUpChecks PR-751
- Support MariaDB (tested for MariaDB 10.4)
- Support PHP 7.3 and 7.4
- Utilizes Travis CI caching feature for faster builds
- Uninstall method for removing module
- Add possibility to overwrite the offline page PR-755
- Email validation extracted to service
OxidEsales\EshopCommunity\Internal\Domain\Email\EmailValidationService
- Events:
\OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Event\ServicesYamlConfigurationErrorEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\AfterAdminAjaxRequestProcessedEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\AfterRequestProcessedEvent
6.5.0 - 2019-11-07
- oe-console command: oe:module:apply-configuration
- Added new parameter to
executeQuery
method inSeoEncoder
which allows to pass prepared statements parameters OxidEsales\EshopCommunity\Internal\Framework\Database\QueryBuilderFactoryInterface
- Most of SELECT, DELETE, UPDATE and INSERT queries do use prepared statements
- Use 301(moved permanently) redirect on missing slash in the url - we had 302(moved temporary) earlier PR-722
- Updated jQuery library in admin panel to 3.4.1
OxidEsales\EshopCommunity\Core\DatabaseProvider
OxidEsales\EshopCommunity\Core\Database\Adapter\Doctrine\Database
OxidEsales\EshopCommunity\Core\Database\Adapter\Doctrine\ResultSet
OxidEsales\EshopCommunity\Core\Database\Adapter\DatabaseInterface
OxidEsales\EshopCommunity\Core\Database\Adapter\ResultSetInterface
OxidEsales\EshopCommunity\Application\Model\SmartyRenderer
OxidEsales\EshopCommunity\Core\Email:$_oSmarty
OxidEsales\EshopCommunity\Core\Email:_getSmarty()
OxidEsales\EshopCommunity\Core\UtilsView:getSmarty()
OxidEsales\EshopCommunity\Core\UtilsView:parseThroughSmarty()
OxidEsales\EshopCommunity\Core\UtilsView:_fillCommonSmartyProperties()
OxidEsales\EshopCommunity\Core\UtilsView:getSmartyPluginDirectories()
OxidEsales\EshopCommunity\Core\UtilsView:getShopSmartyPluginDirectories()
OxidEsales\EshopCommunity\Core\UtilsView:_smartyCompileCheck()
OxidEsales\EshopCommunity\Core\UtilsView:_smartyDefaultTemplateHandler()
oxfunctions:ox_get_template()
oxfunctions:ox_get_timestamp()
oxfunctions:ox_get_secure()
oxfunctions:ox_get_trusted()
- Metadata 1.2 support
- Fix issue with fetch_mode_changing. Bug 6892
- Improve gift registry search #0006698
- Fix admin query logging #0006999. Information will be written to
to
source/log/oxadmin.log
. - Removed hardcoded "http://" in oxexturl field edit #0006993 PR-726
6.4.0 - 2019-08-02
- Fixed return type in Basket::getDiscounts PR-659
- Remove unused variables, decrease complexity PR-668
- Cleanup return statement from ShopList model constructor PR-677
- Fix warning if discounts variable is not array PR-678
- Fix phpdoc types and set consistent returns in BaseController PR-676
- Fix checkIniSet method in SystemRequirements for php 7.2 PR-681
- Fixed bug maintenance mode when changing e-mail address as a guest #0006965
- Fixed bug no possibility to sort accessories of articles in backend #0003609
- Fix php 7.2 compatibility of tests.
- Fix Bank code validation bug in Direct Debit #0006939
- Incorrect default values from database-columns, if empty, on MariaDB PR-709 #0006914 #0006888
- Fix sql error in category sort ajax popup PR-707 #0006985
- Use oxideshop.log in place of EXCEPTION_LOG in comments/translations PR-708
- Fixed the code to fit PSR-2 PR-711
- Improved form validation #0006924
- Fix typo in comment PR-717 PR-719
- Remove unnecessary parameters in addErrorToDisplay function call in ForgetPasswordController PR-716
-
New methods:
OxidEsales\EshopCommunity\Core\Exception\ExceptionToDisplay::getValues
PR-660OxidEsales\EshopCommunity\Application\Model\Article::getStock
PR-640OxidEsales\EshopCommunity\Application\Controller\Admin::sortAccessoriesList()
#0003609OxidEsales\EshopCommunity\Application\Model\Article::getActionType
OxidEsales\EshopCommunity\Application\Model\Article::getStockStatusOnLoad
OxidEsales\EshopCommunity\Core\Base::dispatchEvent
-
Log a warnings for missused db method calls PR-649
-
New blocks:
-
Log missing translations PR-520
-
New features:
- Reset category filter 0002046
- OXID eShop console, which allows to register custom commands for modules and for components via
services.yaml
. - New command to activate module.
- New command to deactivate module.
- New oe-console command to install module configuration: oe:module:install-configuration
- New parameter in config file to change database connection charset -
dbCharset
PR-670
-
Events:
\OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Event\BeforeModuleDeactivationEvent
\OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Event\FinalizingModuleActivationEvent
\OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Event\FinalizingModuleDeactivationEvent
\OxidEsales\EshopCommunity\Internal\Framework\Config\Event\ShopConfigurationChangedEvent
\OxidEsales\EshopCommunity\Internal\Framework\Module\Setting\Event\SettingChangedEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\AfterModelDeleteEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\AfterModelInsertEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\AfterModelUpdateEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\AllCookiesRemovedEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\ApplicationExitEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\BasketChangedEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\BeforeHeadersSendEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\BeforeModelDeleteEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\BeforeModelUpdateEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\BeforeSessionStartEvent
\OxidEsales\EshopCommunity\Internal\Transition\ShopEvents\ViewRenderedEvent
\OxidEsales\EshopCommunity\Internal\Framework\Theme\Event\ThemeSettingChangedEvent
-
Interface:
\OxidEsales\EshopCommunity\Internal\Domain\Authentication\Bridge\PasswordServiceBridgeInterface
as the new default for hashing passwords. See https://docs.oxid-esales.com/developer/en/6.2/project/password_hashing.html
-
Constants
\OxidEsales\EshopCommunity\Application\Model\User::USER_COOKIE_SALT
-
Directory
- var/ directory, it contains files to which the application writes data during the course of its operation. Must be writable by the HTTP server and CLI user.
- category_main form layout improvements PR-585
- Split config parameter initialization from application initialization PR-628
- Increase default quantity of productimages to 12 (from 7) PR-514
- Make adding template blocks more fast andn reliable PR-580
- Change email encoding to base64 0006468 PR-697
- Support PHP 7.2
- Modules will not be disabled on class loading errors anymore, Error is just logged PR-661
- Use facts to calculate CE location PR-685
- Load SystemRequirements via oxNew PR-694
- Initialize the session only once PR-699
- Backwards compatibility break:
\OxidEsales\EshopCommunity\Application\Model\User::_dbLogin
will only called until the user successfully logs in the first time. Afterwards the password hash will have been recreated and a new authentication mechanism will be used. This breaks backwards compatibility for modules, which directly override_dbLogin
or one of the methods in the call stack. - Fix typo in ident for help near name/surname in
application/views/admin/tpl/shop_main.tpl
PR-701- Was
HELP_ENERAL_NAME
changed toHELP_GENERAL_NAME
- Was
- Drop support for PHP 7.0
- Use user from Order::validateOrder method in validatePayment as well PR-706
- Methods in the following classes return information based on the project configuration. See documentation about module installation
\OxidEsales\EshopCommunity\source\Module\Core\Module
\OxidEsales\EshopCommunity\source\Module\Core\ModuleList
- The variable
aDisabledModules
in database tableoxconfig
isn't used anymore. - The variable
aModulePaths
in database tableoxconfig
: Module path will be added on module activation and removed on module deactivation. - The classes in the folder
Core/Module/
now mainly use the project configuration as a basis for information. - File
metadata.php
in a module: the keyid
is mandatory and custom php code won't be executed any more. See Metadata documentation - Running tests on travis against all php versions PR-700
- Travis runs phpcs and tests scripts with calling the php directly, not relying on script shebang anymore.
- Updated Yui library components to version 2.9
- Do not trust input from outside for listtype. Catch PHP Fatal error and show normal page. PR-714
- Removed old not used blAutoSearchOnCat option from shop_config tab PR-654
- Removed unnecessary class imports PR-667
- Removed deprecated
\OxidEsales\EshopCommunity\Core\Email::$Version
use\PHPMailer\PHPMailer\PHPMailer::VERSION
instead - The value for the password salt will not be stored in the database column
oxuser.OXPASSSALT
anymore, but in the password hash itself
\OxidEsales\EshopCommunity\Application\Controller\StartController::getArticleList
\OxidEsales\EshopCommunity\Internal\Domain\Authentication\Bridge\PasswordServiceBridgeInterface
was added as the new default for hashing passwords. Hashing passwords with MD5 and SHA512 is still supported in order support login with older password hashes. Therefor the methods and classes below might not be compatible with the current passhword hash any more:\OxidEsales\EshopCommunity\Application\Model\User::_dbLogin
\OxidEsales\EshopCommunity\Application\Model\User::_getLoginQuery
\OxidEsales\EshopCommunity\Application\Model\User::_getLoginQueryHashedWithMD5
\OxidEsales\EshopCommunity\Application\Model\User::encodePassword
\OxidEsales\EshopCommunity\Core\Hasher
\OxidEsales\EshopCommunity\Core\PasswordHasher
\OxidEsales\EshopCommunity\Core\PasswordSaltGenerator
\OxidEsales\EshopCommunity\Core\Sha512Hasher
\OxidEsales\EshopCommunity\Application\Model\User::formQueryPartForMD5Password
\OxidEsales\EshopCommunity\Application\Model\User::formQueryPartForSha512Password
\OxidEsales\EshopCommunity\Core\Base::setConfig
\OxidEsales\EshopCommunity\Core\Base::getConfig
\OxidEsales\EshopCommunity\Core\Base::$_oSession
\OxidEsales\EshopCommunity\Core\Base::setSession
\OxidEsales\EshopCommunity\Core\Base::getSession
\OxidEsales\EshopCommunity\Core\Email::$_oConfig
\OxidEsales\EshopCommunity\Core\Email::setConfig
\OxidEsales\EshopCommunity\Core\Email::getConfig
blDoNotDisableModuleOnError
config optionOrderArticle::$_aOrderCache
\OxidEsales\EshopCommunity\Application\Controller\Admin\ModuleConfiguration::_getModuleForConfigVars
\OxidEsales\EshopCommunity\Application\Controller\Admin\ModuleConfiguration::__loadMetadataConfVars
\OxidEsales\EshopCommunity\Core\Module\ModuleChainsGenerator::filterInactiveExtensions()
Now, there are only extensions of active modules in the class chain. No need to filter inactive extensions any more.\OxidEsales\EshopCommunity\Core\Module\ModuleChainsGenerator::cleanModuleFromClassChain()
If you want to clean a module from the class chain, deactivate the module.\OxidEsales\EshopCommunity\Core\Module\ModuleChainsGenerator::getDisabledModuleIds()
UseOxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\Bridge\ShopConfigurationDaoBridgeInterface
instead to get inactive modules.\OxidEsales\EshopCommunity\Core\Module\ModuleChainsGenerator::getModuleDirectoryByModuleId()
Use\OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\Bridge\ShopConfigurationDaoBridgeInterface
instead.\OxidEsales\EshopCommunity\Core\Module\ModuleSmartyPluginDirectoryValidator
Validation was moved to Internal\Framework\Module package and will be executed during the module activation.\OxidEsales\EshopCommunity\Core\Module\ModuleSmartyPluginDirectoryRepository::save
Module smarty plugins directory are stored in project configuration file now. Use appropriate Dao to save them.\OxidEsales\EshopCommunity\Core\Module\ModuleSmartyPluginDirectories::getWithRelativePath
Module smarty plugins directory are stored in project configuration file now. Use appropriate Dao to get them.\OxidEsales\EshopCommunity\Core\Module\ModuleSmartyPluginDirectories::add
Module smarty plugins directory are stored in project configuration file now. Use appropriate Dao to add them.\OxidEsales\EshopCommunity\Core\Module\ModuleSmartyPluginDirectories::set
Module smarty plugins directory are stored in project configuration file now. Use appropriate Dao to set them.\OxidEsales\EshopCommunity\Core\Module\ModuleSmartyPluginDirectories::remove
Module smarty plugins directory are stored in project configuration file now. Use appropriate Dao to remove them.\OxidEsales\EshopCommunity\Core\Module\ModuleExtensionsCleaner::cleanExtensions
will use internal module services instead aModulePaths\OxidEsales\EshopCommunity\Core\Module\ModuleInstaller
Use service "OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Bridge\ModuleActivationBridgeInterface".\OxidEsales\EshopCommunity\Core\Module\Module
Use service 'OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\Bridge\ShopConfigurationDaoBridgeInterface'.\OxidEsales\EshopCommunity\Core\Module\ModuleList
Use service 'OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\Bridge\ShopConfigurationDaoBridgeInterface'.\OxidEsales\EshopCommunity\Core\Contract\IModuleValidator
Validation was moved to Internal\Framework\Module package and will be executed during the module activation.\OxidEsales\EshopCommunity\Core\Module\ModuleMetadataValidator
Validation was moved to Internal\Framework\Module package and will be executed during the module activation.\OxidEsales\EshopCommunity\Core\Module\ModuleCache
ModuleCache moved to Internal\Framework\Module package.\OxidEsales\EshopCommunity\Core\Module\ModuleExtensionsCleaner
The whole chain is updated during module activation and deactivation in the database. We do not need this functionality any more\OxidEsales\EshopCommunity\Core\Module\ModuleValidatorFactory
Module metadata validation moved to Internal\Framework\Module package\OxidEsales\EshopCommunity\Core\Routing\Module\ClassProviderStorage
UseOxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration\ModuleConfigurationDaoBridgeInterface
.\OxidEsales\EshopCommunity\Core\Contract\ClassProviderStorageInterface
UseOxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration\ModuleConfigurationDaoBridgeInterface
.
6.3.8 - Unreleased
6.3.7 - 2020-03-16
\OxidEsales\EshopCommunity\Application\Controller\StartController::getArticleList
- Fix the host for checking the SystemRequirements->fsockopen to working one #0006606 PR-556
- Fix more complex multiline query command detection PR-734
- Issue with session ID regeneration on user registration
6.3.6 - 2019-10-29
- Recover and use lost _preparePrice result in Article::_prepareModifiedPrice PR-720
- Load amount price list same way on frontend and backend #0006671 PR-712
- Show product active check in admin panel when activation date has been set #0006966
6.3.5 - 2019-07-30
6.3.4 - 2019-05-24
- Rename cust_lang.php files to cust_lang.php.dist
source/Application/views/admin/de/cust_lang.php.dist
source/Application/views/admin/en/cust_lang.php.dist
-
Fix Bank code validation bug in Direct Debit #0006939
-
Classes:
OxidEsales\EshopCommunity\Core\Module\ModuleInstaller
OxidEsales\EshopCommunity\source\Module\Core\Module
OxidEsales\EshopCommunity\source\Module\Core\ModuleList
OxidEsales\EshopCommunity\Core\Contract\IModuleValidator
OxidEsales\EshopCommunity\Core\Module\ModuleMetadataValidator
6.3.3 - 2019-04-16
- Ensure temp file in tmp directory PR-683
- Fix warning in inc_error.tpl PR-690
- Fix url protocol in version tags PR-696
- Use correct value for backing up the base language in email PR-692
- Read config parameter by getConfigParam, not by getRequestParam #0006968 PR-698
6.3.2 - 2019-01-22
- Add method SystemEventHandler::onShopEnd() to be called for finishing actions e.g. from ShopControl::pageClose().
- Call to SystemEventHandler::validateOnline() is now called as finishing action rather than startup.
\OxidEsales\EshopCommunity\Core\Email::$Version
This fixes a missing deprecation in PHPMailer, which is the parent class of\OxidEsales\EshopCommunity\Core\Email
. PHPMailer will be upgraded to version 6 in the next minor release of OXID eShop CE as PHPMailer 5 will be no longer maintained. Please note, that there are some breaking changes for code which extends\OxidEsales\EshopCommunity\Core\Email
. The impact should be really small, but you should be familiar with them, as there are also changes in the SMTP and POP3 classes. Please read the PHPMailer changelog
- Wrong behaviour from getOrderArticleSelectList when values from selectionlists and variantselections are selected PR-507 0006539
- Fix SQL file upload error Bug #5764
- Fixed admin login display in Windows 7 IE11 PR-671
- Fix content page data of 8th+ language edit PR-674
- Fix unusable shop after activation of a module with migrated metadata (v2) PR-663
- Fix issue with shop roles readonly. Bug 6851
6.3.1 - 2018-10-16
- New settings:
includeProductReviewLinksInEmail
defines, if a link to the product review is included in order confirmation email - Language constants
source/Application/views/admin/[de,en]/lang.php
:SHOP_CONFIG_INCLUDE_PRODUCT_REVIEW_LINKS_IN_ORDER_EMAIL
- Fix global variable name in startProfile PR-651
- Improve a check of module id in ModuleExtensionsCleaner::filterExtensionsByModuleId PR-662
- AccountReviewController extends correct AccountController PR-664
- Get correct oxid for attributes loaded by loadAttributesDisplayableInBasket PR-452
- Prevent usage of thankyou-controller in no order-context PR-665
- Send correct shop url to includeImages email template parser PR-545
- Wrong return value FrontendController.isVatIncluded PR-666 0006902
- Fix filecache write/read race conditions PR-658
- Fix wrong variant article price calculation in rss PR-498
- Fix Syntax error in admin css PR-669
6.3.0 - 2018-07-31
- New blocks in
admin/tpl/voucherserie_groups.tpl
admin_voucherserie_relations
admin_voucherserie_groups_form
admin_voucherserie_categories_form
admin_voucherserie_articles_form
- PSR3 Logger:
- New settings:
sLogLevel
inconfig.inc.php
- New methods:
OxidEsales\EshopCommunity\Core\Registry::getLogger
getLogger
inoverridablefunctions.php
- New settings:
- Possibility to configure contact form required fields:
- New settings:
contactFormRequiredFields
- New settings:
- Possibility for modules to add new smarty plugins:
- New settings:
moduleSmartyPluginDirectories
- New setting in module metadata.php
smartyPluginDirectories
- New settings:
- Module metadata version 2.1
- Support for PHP 7.0 and 7.1, PHP 5.6 not supported any more
- Method visibility changed from private to protected PR-636:
OxidEsales\EshopCommunity\Core\Session::isSerializedBasketValid
OxidEsales\EshopCommunity\Core\Session::isClassInSerializedObject
OxidEsales\EshopCommunity\Core\Session::isClassOrNullInSerializedObjectAfterField
OxidEsales\EshopCommunity\Core\Session::isUnserializedBasketValid
- Name attribute added to no wysiwyg textarea fields in admin
writeToLog
inbootstrap.php
\OxidEsales\Eshop\Application\Model\FileChecker::class
\OxidEsales\Eshop\Application\Model\FileCheckerResult::class
\OxidEsales\EshopCommunity\Application\Controller\Admin\DiagnosticsMain::_checkOxidFiles
\OxidEsales\EshopCommunity\Application\Controller\Admin\DiagnosticsMain::_getFileCheckReport
\OxidEsales\EshopCommunity\Application\Controller\Admin\DiagnosticsMain::_getFilesToCheck
\OxidEsales\EshopCommunity\Application\Model\Diagnostics::$_aFileCheckerExtensionList
\OxidEsales\EshopCommunity\Application\Model\Diagnostics::$_aFileCheckerPathList
\OxidEsales\EshopCommunity\Application\Model\Diagnostics::getFileCheckerExtensionList
\OxidEsales\EshopCommunity\Application\Model\Diagnostics::getFileCheckerPathList
\OxidEsales\EshopCommunity\Application\Model\Diagnostics::setFileCheckerExtensionList
\OxidEsales\EshopCommunity\Application\Model\Diagnostics::setFileCheckerPathList
\OxidEsales\EshopCommunity\Application\Model\FileChecker::class
\OxidEsales\EshopCommunity\Application\Model\FileCheckerResult::class
\OxidEsales\EshopCommunity\Core\Base::$_oConfig
\OxidEsales\EshopCommunity\Core\Exception\ExceptionHandler::$_iDebug
\OxidEsales\EshopCommunity\Core\Exception\ExceptionHandler::setIDebug
\OxidEsales\EshopCommunity\Core\Exception\ExceptionHandler::writeExceptionToLog
\OxidEsales\EshopCommunity\Core\Exception\ExceptionHandler::displayOfflinePage
\OxidEsales\EshopCommunity\Core\Exception\ExceptionHandler::displayDebugMessage
\OxidEsales\EshopCommunity\Core\Exception\ExceptionHandler::getFormattedException
\OxidEsales\EshopCommunity\Core\Exception\StandardException::debugOut
\OxidEsales\EshopCommunity\Core\OnlineCaller::_castExceptionAndWriteToLog
- Language constants
source/Application/views/admin/[de,en]/lang.php
:OXDIAG_CHKVERS_FULLREP
OXDIAG_CHKVERSION
OXDIAG_COLL_CHKV_FILE_GET
OXDIAG_COLL_CHKV_NOTINST
OXDIAG_COLLECT_CHKVERS
OXDIAG_COLLECT_CHKVERS_DURATION
OXDIAG_ERRORMESSAGEVERSIONDOESNOTEXIST
OXDIAG_ERRORMESSAGEWEBSERVICEISNOTREACHABLE
OXDIAG_ERRORMESSAGEWEBSERVICERETURNEDNOXML
OXDIAG_ERRORVERSIONCOMPARE
OXDIAG_FORM_LIST_ALL_FILES
OXDIAG_INTROINFORMATION
OXDIAG_INTROINFORMATION_DATA_TRANSMITTED
OXDIAG_INTROINFORMATION_FILENAME_TO_BE_CHECKED
OXDIAG_INTROINFORMATION_MD5_CHECKSUM
OXDIAG_INTROINFORMATION_MORE_INFORMATION
OXDIAG_INTROINFORMATION_NO_PERSONAL_INFO
OXDIAG_INTROINFORMATION_OXID_ESALES_BLOG
OXDIAG_INTROINFORMATION_REVISION_DETECTED
OXDIAG_INTROINFORMATION_VERSION_DETECTED
OXDIAG_OBSOLETE
- Use error_404_handler in article list controller in place of outdated 404 handling PR-643
- Fix indents in config.inc.php.dist PR-527
6.2.4 - 2019-10-29
6.2.3 - 2019-07-30
6.2.2 2019-02-21
- Fix issue with shop roles readonly. Bug 6851
6.2.1 - 2018-07-31
\OxidEsales\EshopCommunity\Application\Component\BasketComponent::getPersistedParameters
filter simplified to allow arrays in persparams PR-641
\OxidEsales\EshopCommunity\Application\Controller\FrontendController::isVatIncluded
Fixed notices and performance improved PR-642
6.2.0 - 2018-03-27
- Possibility to delete shipping address via new method:
OxidEsales\Eshop\Application\Component\UserComponent::deleteShippingAddress
- Possibility to delete user account via new methods:
OxidEsales\EshopCommunity\Application\Controller\AccountController::deleteAccount()
OxidEsales\EshopCommunity\Application\Controller\AccountController::isUserAllowedToDeleteOwnAccount()
OxidEsales\EshopCommunity\Application\Controller\AccountController::getAccountDeletionStatus()
- Possibility for shop users to manage their reviews, configurable by admin:
- New classes:
OxidEsales\EshopCommunity\Application\Controller\AccountReviewController
- New methods:
OxidEsales\EshopCommunity\Application\Controller\AccountController::isUserAllowedToManageOwnReviews
OxidEsales\EshopCommunity\Application\Controller\AccountController::getReviewAndRatingItemsCount
OxidEsales\EshopCommunity\Application\Controller\CompareController::isUserAllowedToManageOwnReviews
OxidEsales\EshopCommunity\Application\Controller\CompareController::getReviewAndRatingItemsCount
OxidEsales\EshopCommunity\Application\Model\Review::getProductReviewItemsCntByUserId
OxidEsales\EshopCommunity\Application\Model\Review::getReviewAndRatingListByUserId
- New language constants in
Application/translations/[de/en]/lang.php
:ERROR_REVIEW_AND_RATING_NOT_DELETED
MY_REVIEWS
- New language constants in
Application/views/admin/[de/en]/lang.php
:SHOP_CONFIG_ALLOW_USERS_MANAGE_REVIEWS
SHOP_CONFIG_ALLOW_USERS_MANAGE_PRODUCT_REVIEWS
- New classes:
- For displaying recommendations feature new method introduced:
OxidEsales\EshopCommunity\Core\ViewConfig::getShowSuggest()
- New settings which are configurable in admin area:
blAllowSuggestArticle
- it's possible to disable recommendation feature.blAllowUsersToDeleteTheirAccount
- it's possible to allow users to delete their account.blAllowUsersToManageTheirReviews
- it's possible to allow users to manage their reviews.
- New methods:
OxidEsales\EshopCommunity\Application\Model\User::isMallAdmin()
OxidEsales\EshopCommunity\Core\Registry::getRequest
PR-626
- Filter by working title in admin Selection lists list PR-632
- Article _oAmountPriceInfo list have unit prices calculated if quantity set for product PR-619
fbrutamountprice
andfnetamountprice
available for usage in template- prices already preformatted with current language/currency settings
\OxidEsales\Eshop\Application\Model\Order::finalizeOrder
triggers a complete re-validation of the selected payment method.
New private methods:\OxidEsales\EshopCommunity\Application\Model\Order::isValidPaymentId
\OxidEsales\EshopCommunity\Application\Model\Order::isValidPayment
- Loading for non widget classes via
widget.php
entry point have been declined. To allow a class to be loaded viawidget.php
it must extend\OxidEsales\Eshop\Application\Component\Widget\WidgetController
. SeoEncoderArticle::_prepareArticleTitle
now uses_getUrlExtension()
method in place of hardcoded.html
extension PR-634.- Add ^ to version constraint on doctrine/dbal PR-635
- Model performance micro optimizations PR-646
- Recommendations feature will be moved to separate module:
OxidEsales\EshopCommunity\Application\Controller\SuggestController
OxidEsales\EshopCommunity\Core\ViewConfig::getShowSuggest()
- Config option -
blAllowSuggestArticle
- Language constants:
SHOP_CONFIG_ALLOW_SUGGEST_ARTICLE
,HELP_SHOP_CONFIG_ALLOW_SUGGEST_ARTICLE
sOXIDPHP
parameter inconfig.inc.php
- Banner image upload is not working PR-624
- imagecreatefromjpeg can't handle sequential jpeg's correctly PR-627
- Support large module list in oxconfig table PR-633
- Use flow theme logo image in offline page PR-637
- Use correct performance checkbox for index page manufacturers PR-625
- VAT message for b2b users with valid company id PR-495
6.1.0 - 2018-01-23
- Added classes:
- Core\Form\FormFieldsTrimmer
- Core\Form\FormFieldsTrimmerInterface
- Template blocks:
- admin_article_variant_selectlist
- admin_article_variant_extended
- admin_article_variant_language_edit
- admin_article_variant_bottom_extended
- admin_order_remark_type
- admin_user_remark_type
- New methods:
OxidEsales\EshopCommunity\Core\InputValidator::addValidationError
OxidEsales\EshopCommunity\Application\Controller\Admin\ActionsMain::checkAccessToEditAction()
OxidEsales\EshopCommunity\Application\Controller\Admin\AdminController::isNewEditObject()
OxidEsales\EshopCommunity\Application\Model\Actions::isDefault()
OxidEsales\EshopCommunity\Core\Model\BaseModel::isPropertyLoaded()
OxidEsales\EshopCommunity\Application\Controller\TextEditorHandler::disableTextEditor()
OxidEsales\EshopCommunity\Application\Controller\TextEditorHandler::isTextEditorDisabled()
OxidEsales\EshopCommunity\Application\Controller\Admin\AdminDetailsController::configureTextEditorHandler()
OxidEsales\EshopCommunity\Application\Controller\Admin\AdminDetailsController::getTextEditorHandler()
- In voucher series generation, if Coupon Number radio button checked, the number is marked as Required now. PR-476
- Display full field names in product filter dropdown. PR-614
- Use getAdminTplLanguageArray() in Admin only. PR-592
- Delivery dates from past shouldn't be displayed. PR-543
- Readme.md and Contributing.md files are updated.
- CSS adapted in OXID eShop Setup to reflect new design, extracted styles to separate file
Setup/out/src/main.css
- The function isset on a not loaded property of a model with lazy loading loads the property if it's possible and returns true. To check if property is loaded use BaseModel::isPropertyLoaded()
- admin template
article_main.tpl
- \OxidEsales\EshopCommunity\Application\Controller\Admin\ArticleSeo::_getSaveObjectId
- \OxidEsales\EshopCommunity\Application\Component\Widget\ServiceMenu::getCompareItemsCnt
- \OxidEsales\EshopCommunity\Core\Utils::strRot13
- \OxidEsales\EshopCommunity\Core\InputValidator::_addValidationError
- \OxidEsales\EshopCommunity\Application\Model\Order::ORDER_STATE_INVALIDDElADDRESSCHANGED
- \OxidEsales\EshopCommunity\Application\Model\Diagnostics::$_sRevision
- \OxidEsales\EshopCommunity\Application\Model\Diagnostics::getRevision()
- \OxidEsales\EshopCommunity\Application\Model\Diagnostics::setRevision()
- \OxidEsales\EshopCommunity\Application\Model\FileChecker::$_sRevision
- \OxidEsales\EshopCommunity\Application\Model\FileChecker::setRevision()
- \OxidEsales\EshopCommunity\Application\Model\FileChecker::getRevision()
- \OxidEsales\EshopCommunity\Core\Config::getRevision()
- \OxidEsales\EshopCommunity\Core\Controller\BaseController::getRevision()
- 'Your market' selection was removed from Setup wizard, as this value is no longer evaluated
- Database transaction was removed from finalizeOrder method. Fixes bug #6736
- Missing translations
- Manufacturer Seo urls not properly stored in database
- Change robots.txt entry from "Disallow: /agb/" to "Disallow: /AGB/"
- Not trimmed ZIP-Codes"
- admin/oxajax.php needs to handle module not namespaced ajax container classes
- Compare links in lists do not work correctly
- Transparent gif looses transparency when generated to different size
- Additional cache variable for Article::getAttributesDisplayableInBasket PR-616
- RSS feed for categories not sorted desc by time
- VariantHandler always uses brutto price for MD Variants
- Expire SEO links for correct shop id PR-594
- Module with namespaces not working on Windows
6.0.0 - 2017-11-17
- in source/admin/oxajax.php ControllerClassNameResolver is not used for resolving container. Can't create custom drag&drop in mod
- admin/oxajax.php needs to handle module namespaced ajax container classes
- Disabled controls are not clearly visible as not writable
6.0.0-rc.3 - 2017-11-02
\OxidEsales\Eshop\Application\Controller\FrontendController::getUserSelectedSorting()
checks if element to sort is configured in Admin.- Removed
exec()
calls in setup. - Pagination has been changed: for example previously it was "Geschenke/100/", now it will be "Geschenke?pgNr=99". In addition these pages come with "robots" meta tag "noindex, follow".
\OxidEsales\Eshop\Application\Controller\Admin\AdminController::$_sShopVersion
\OxidEsales\Eshop\Application\Controller\Admin\AdminController::_getShopVersionNr()
\OxidEsales\Eshop\Core\Config::getVersion()
- In
oxshops
table field -OXVERSION
is deprecated. This field value will not be updated anymore and will contain "6.0.0" value. To retrieve correct shop versionOxidEsales\Eshop\Core\ShopVersion::getVersion()
must be used. \OxidEsales\Eshop\Core\Config::getEdition()
- In
oxshops
table field -OXEDITION
is deprecated. To retrieve OXID eShop edition facts component should be used:\OxidEsales\Facts\Facts::getEdition()
. \OxidEsales\Eshop\Application\Controller\Admin\ShopRdfa::submitUrl()
, because GR-Notify page feature was removed.\OxidEsales\Eshop\Application\Controller\Admin\ShopRdfa::getHttpResponseCode()
, because GR-Notify page feature was removed.- Template block in Application/views/admin/tpl/shop_rdfa.tpl -
admin_shop_rdfa_submiturl
, because GR-Notify page feature was removed. - Config option blLoadDynContents as it's part of dynamic pages.
\OxidEsales\Eshop\Core\ShopControl::$_blHandlerSet
. This property is not used anymore.\OxidEsales\Eshop\Core\WidgetControl::$_blHandlerSet
. This property is not used anymore.
- Dynamic pages related code including.
- GR-Notify page feature.
- https://bugs.oxid-esales.com/view.php?id=6474 with PR#457
- https://bugs.oxid-esales.com/view.php?id=6155 with PR#431
- https://bugs.oxid-esales.com/view.php?id=6579 with PR#487
- https://bugs.oxid-esales.com/view.php?id=6465 with PR #458
- https://bugs.oxid-esales.com/view.php?id=6683
- https://bugs.oxid-esales.com/view.php?id=6695
- https://bugs.oxid-esales.com/view.php?id=6716
6.0.0-rc.2 - 2017-08-15
- Integrate new Admin UI from digidesk backend UI Kit
- ddoe/wysiwyg-editor-module was added as requirement of OXID eShop Community Edition in composer.json
- Grace period reset email is sent on grace period reset.
- User and admin sessions are detached on E_ERROR type errors (in register_shutdown_function).
- Translation for GENERAL_ARTICLE_OXVARMAXPRICE, Pull Request 572, Pull Request 573
- Added mkdir if folders not exist in _copyFile method, Pull Request 590
- language constant
HELP_SHOP_CONFIG_SETORDELETECURRENCY
, Pull Request 547 - language constant
SHOP_CONFIG_SETORDELETECURRENCY
, Pull Request 547 - template
admin/tpl/shop_config.tpl
, Pull Request 547 - Css from admin login page moved to
out/admin/src/login.css
, Pull Request 558 - Database migrations and views regeneration is operating system independent which makes OXID eShop installable on Windows.
- Classes of the
\OxidEsales\Eshop\
namespace are real (empty) classes now and calledunified namespace classes
. - Pull Request 557: Remove duplicate directory separator
- Pull Request 561: Fixup basket wrapping calculation
- Introduce colon and ellipsis, Pull Request 579, Pull Request 581
- iUtfMode in config.inc.php. This property will be removed in the future as the shop will always use UTF-8.
- Class Core/Email: Rename $SMTP_PORT to $smtpPort, Pull Request 563
- Azure theme was extracted from the OXID eShop CE repository to separate repository.
- Azure theme should not be used for new projects.
- In case there is a need to use azure theme, install it via command:
composer require oxid-esales/azure-theme:^1.4.1
.
- Date formatting in EXCEPTION_LOG.txt: textual representation of the day was replaced by numerical representation (01 to 31)
- iUtfMode in config.inc.php: backwards compatibility restored. This setting was removed, but it is introduced again, as some modules still might use it.
- BaseModel::_update(): backwards compatibility restored. Returns always true on success or throws an exception.
- Removed duplicate directory separators in vendor directory calculation methods, Pull Request 557
- BaseController::executeFunction throws ERROR_MESSAGE_SYSTEMCOMPONENT_CLASSNOTFOUND for metadata v2 modules in some cases, #0006627
- Template directories local class cache is cleared on smarty reinitialization Change
- Change primary key of database table
oxstates
to composite, #0005029 - Issue with basket reservations causing wrong stock levels in high load scenarios, #0006102
- Deactivating a module which extends basket causes shop maintenance mode, #0006659
- Pass along shopid to call to _loadFromDb(), Pull Request 571
6.0.0-rc.1 - 2017-04-07
- Pull Request 425: Compatibility with Apache 2.4
- Metadata version 2.0
- Added classes and methods:
- ModuleChainsGenerator::getActiveChain()
- ModuleList::parseModuleChains()
- Core\Module\ModuleTranslationPathFinder
- Pull Request 550: replace intval with typecast
- Pull Request 555: Removed a commented debugging line
- Module section
extend
in the file metadata.php gets validated since metadata version 2.0. - Database columns were changed due to unification of OXID eShop editions.
- In case OXID development tools are installed, IDE Helper generator will be run on every composer install/update.
- Not loadable module classes are now shown in
Problematic files
section. - Only backwards compatible classes (e.g oxarticle) or classes from virtual namespace can be extended by modules.
- PayPal module, which is compatible with OXID eShop 6, has been added to the compilation.
- Changed templates and blocks:
- block
admin_order_overview_total
, fileadmin/tpl/order_overview.tpl
. - template
admin/tpl/order_article.tpl
- template
admin/tpl/order_overview.tpl
- template
admin/tpl/include/order_info.tpl
- block
- Azure theme is deprecated and in next release it will be removed from compilation.
- Deprecated classes and methods: Search for the notation
@deprecated
in the sourcecode. At a later time, please use this overview of source code documentation, pick the version you need and follow the link to it. On the navigation to the left hand side you will find a link calledDeprecated list
which leads you to the wanted information.
- config.inc.php options
iUtfMode
,sDefaultDatabaseConnection
andblSkipEuroReplace
because shop is utf-8. - config.inc.php option
vendorDirectory
. Instead the constant VENDOR_PATH was introduced.
- Module deactivation/deletion/cleanup issues fixed which occured because of namespaces in modules.
6.0-beta.3 - 2017-03-14
See
6.0-beta.2 - 2017-12-13
See
6.0-beta.1 - 2016-11-30
See