diff --git a/.htaccess b/.htaccess index 891fbd1f18163..360a61895f3fa 100644 --- a/.htaccess +++ b/.htaccess @@ -32,7 +32,7 @@ ## adjust memory limit # php_value memory_limit 64M - php_value memory_limit 256M + php_value memory_limit 2048M php_value max_execution_time 18000 ############################################ @@ -176,7 +176,6 @@ order allow,deny deny from all - ############################################ ## If running in cluster environment, uncomment this ## http://developer.yahoo.com/performance/rules.html#etags diff --git a/CHANGELOG.md b/CHANGELOG.md index 4baa1101f39e9..5e9863bafdf42 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,50 @@ +2.0.0.0-dev57 +============= +* Fixed bugs: + * Fixed [MAP]: "Click for price" link is broken on the category page + * Fixed tax rule search on the grid + * Fixed redirect on dashboard if "Search", "Reset", "Export" buttons are clicked on several pages + * Fixed switching user to alternate store-view when clicking on the Category (with Add Store Code to Urls="Yes" in the config) + * Fixed printing Order/Shipping/Credit Memo from backend + * Fixed 404 Error on attempt to print Shipping Label + * Fixed duplication of JavaScript Resources in head on frontend + * Fixed inconsistency with disabled states on Configurable product page in the Plushe theme + * Fixed 3D Secure Information absence on Admin Order Info page + * Fixed possibility to download or revert Backup + * Fixed session fixation in user registration during checkout + * Fixed fatal error during login to backend + * Fixed inline translations in the Adminhtml area + * Fixed partial refunds/invoices in Payflow Pro + * Fixed the issue with ignoring area in design emulation + * Fixed order placing with virtual product using Express Checkout + * Fixed the error during order placement with Recurring profile payment + * Fixed wrong redirect after customer registration during multishipping checkout + * Fixed inability to crate shipping labels + * Fixed inability to switch language, if the default language is English + * Fixed an issue with incorrect XML appearing in cache after some actions on the frontend + * Fixed product export + * Fixed inability to configure memcache as session save handler +* GitHub requests: + * [#406](https://github.com/magento/magento2/pull/406) -- Remove cast to (int) for the varch increment_id + * [#425](https://github.com/magento/magento2/issues/425) -- Installation of dev53 fails + * [#324](https://github.com/magento/magento2/pull/324) -- ImportExport: Easier debugging +* Modularity improvements: + * Removed \Magento\App\Helper\HelperFactory + * Removed the "helper" method from the abstract block interface + * Layout page type config moved to library + * Design loader moved to library + * Theme label moved to library + * Remaining part from Adminhtml moved to the appropriate modules. Adminhtml module has been eliminated + * Core Session and Cookie models decomposed and moved to library + * \Magento\Stdlib\Cookie library created + * Session Manager and Session Config interfaces provided + * Session save handler interface created + * Session storage interface created, session does not extend \Magento\Object anymore + * Session validator interface created + * Session generic wrapper moved to library + * Messages functionality moved from the Session model as separate component, message manager interface created + * Sid resolver interface created to handle session sid from request + 2.0.0.0-dev56 ============= * Fixed bugs: @@ -23,7 +70,7 @@ * Ability to delete API integrations that were not created using configuration files * Removed System REST menu item and all associated UX flows: * Users, Roles, and Webhook Subscriptions sub-menu items were removed -* Removed the Webhook module +* Removed the Webhook module until it can be refactored to use the new Authorization service 2.0.0.0-dev55 ============= diff --git a/app/bootstrap.php b/app/bootstrap.php index ddb065617c087..91b0177713631 100644 --- a/app/bootstrap.php +++ b/app/bootstrap.php @@ -54,7 +54,6 @@ /**#@+ * Shortcut constants */ -define('DS', DIRECTORY_SEPARATOR); define('BP', dirname(__DIR__)); /**#@-*/ @@ -65,10 +64,10 @@ require_once __DIR__ . '/autoload.php'; \Magento\Autoload\IncludePath::addIncludePath(array( - BP . DS . 'app' . DS . 'code', - BP . DS . 'lib', + BP . '/app/code', + BP . '/lib', )); -$classMapPath = BP . DS . 'var/classmap.ser'; +$classMapPath = BP . '/var/classmap.ser'; if (file_exists($classMapPath)) { require_once BP . '/lib/Magento/Autoload/ClassMap.php'; $classMap = new \Magento\Autoload\ClassMap(BP); diff --git a/app/code/Magento/AdminNotification/Block/Grid/Renderer/Actions.php b/app/code/Magento/AdminNotification/Block/Grid/Renderer/Actions.php index 44e74e36cdeed..f41f44ce2a81c 100644 --- a/app/code/Magento/AdminNotification/Block/Grid/Renderer/Actions.php +++ b/app/code/Magento/AdminNotification/Block/Grid/Renderer/Actions.php @@ -28,6 +28,25 @@ class Actions extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer { + /** + * @var \Magento\Core\Helper\Url + */ + protected $_urlHelper; + + /** + * @param \Magento\Backend\Block\Context $context + * @param \Magento\Core\Helper\Url $urlHelper + * @param array $data + */ + public function __construct( + \Magento\Backend\Block\Context $context, + \Magento\Core\Helper\Url $urlHelper, + array $data = array() + ) { + $this->_urlHelper = $urlHelper; + parent::__construct($context, $data); + } + /** * Renders grid column * @@ -46,7 +65,7 @@ public function render(\Magento\Object $row) __('Mark as Read') .' | ' : ''; - $encodedUrl = $this->helper('Magento\Core\Helper\Url')->getEncodedUrl(); + $encodedUrl = $this->_urlHelper->getEncodedUrl(); return sprintf('%s%s%s', $readDetailsHtml, $markAsReadHtml, diff --git a/app/code/Magento/AdminNotification/Block/System/Messages.php b/app/code/Magento/AdminNotification/Block/System/Messages.php index c856cf0f7b23d..3e09a6e27437f 100644 --- a/app/code/Magento/AdminNotification/Block/System/Messages.php +++ b/app/code/Magento/AdminNotification/Block/System/Messages.php @@ -32,16 +32,24 @@ class Messages extends \Magento\Backend\Block\Template */ protected $_messages; + /** + * @var \Magento\Core\Helper\Data + */ + protected $_coreHelper; + /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\AdminNotification\Model\Resource\System\Message\Collection\Synchronized $messages + * @param \Magento\Core\Helper\Data $coreHelper * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\AdminNotification\Model\Resource\System\Message\Collection\Synchronized $messages, + \Magento\Core\Helper\Data $coreHelper, array $data = array() ) { + $this->_coreHelper = $coreHelper; parent::__construct($context, $data); $this->_messages = $messages; } @@ -124,7 +132,7 @@ protected function _getMessagesUrl() */ public function getSystemMessageDialogJson() { - return $this->helper('Magento\Core\Helper\Data')->jsonEncode(array( + return $this->_coreHelper->jsonEncode(array( 'systemMessageDialog' => array( 'autoOpen' => false, 'width' => 600, diff --git a/app/code/Magento/AdminNotification/Controller/Adminhtml/Notification.php b/app/code/Magento/AdminNotification/Controller/Adminhtml/Notification.php index e79c4a49bd58b..d031fa954b3e2 100644 --- a/app/code/Magento/AdminNotification/Controller/Adminhtml/Notification.php +++ b/app/code/Magento/AdminNotification/Controller/Adminhtml/Notification.php @@ -49,13 +49,12 @@ public function markAsReadAction() try { $this->_objectManager->create('Magento\AdminNotification\Model\NotificationService') ->markAsRead($notificationId); - $this->_session->addSuccess( - __('The message has been marked as Read.') - ); + $this->messageManager->addSuccess(__('The message has been marked as Read.')); } catch (\Magento\Core\Exception $e) { - $this->_session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_session->addException($e, + $this->messageManager->addException( + $e, __("We couldn't mark the notification as Read because of an error.") ); } @@ -92,7 +91,7 @@ public function massMarkAsReadAction() { $ids = $this->getRequest()->getParam('notification'); if (!is_array($ids)) { - $this->_session->addError(__('Please select messages.')); + $this->messageManager->addError(__('Please select messages.')); } else { try { foreach ($ids as $id) { @@ -103,13 +102,12 @@ public function massMarkAsReadAction() ->save(); } } - $this->_getSession()->addSuccess( - __('A total of %1 record(s) have been marked as Read.', count($ids)) - ); + $this->messageManager->addSuccess(__('A total of %1 record(s) have been marked as Read.', count($ids))); } catch (\Magento\Core\Exception $e) { - $this->_session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_session->addException($e, + $this->messageManager->addException( + $e, __("We couldn't mark the notification as Read because of an error.") ); } @@ -131,13 +129,14 @@ public function removeAction() try { $model->setIsRemove(1) ->save(); - $this->_session->addSuccess( + $this->messageManager->addSuccess( __('The message has been removed.') ); } catch (\Magento\Core\Exception $e) { - $this->_session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_session->addException($e, + $this->messageManager->addException( + $e, __("We couldn't remove the messages because of an error.") ); } @@ -152,9 +151,7 @@ public function massRemoveAction() { $ids = $this->getRequest()->getParam('notification'); if (!is_array($ids)) { - $this->_session->addError( - __('Please select messages.') - ); + $this->messageManager->addError(__('Please select messages.')); } else { try { foreach ($ids as $id) { @@ -165,14 +162,11 @@ public function massRemoveAction() ->save(); } } - $this->_getSession()->addSuccess( - __('Total of %1 record(s) have been removed.', count($ids)) - ); + $this->messageManager->addSuccess(__('Total of %1 record(s) have been removed.', count($ids))); } catch (\Magento\Core\Exception $e) { - $this->_session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_session->addException($e, - __("We couldn't remove the messages because of an error.")); + $this->messageManager->addException($e, __("We couldn't remove the messages because of an error.")); } } $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl($this->getUrl('*'))); diff --git a/app/code/Magento/AdminNotification/etc/adminhtml/menu.xml b/app/code/Magento/AdminNotification/etc/adminhtml/menu.xml index 1af3ee94b3bf9..6a4f223aad25c 100644 --- a/app/code/Magento/AdminNotification/etc/adminhtml/menu.xml +++ b/app/code/Magento/AdminNotification/etc/adminhtml/menu.xml @@ -27,6 +27,6 @@ --> - + diff --git a/app/code/Magento/AdminNotification/etc/adminhtml/routes.xml b/app/code/Magento/AdminNotification/etc/adminhtml/routes.xml index 01c3192ed6a12..ff863ec256f50 100644 --- a/app/code/Magento/AdminNotification/etc/adminhtml/routes.xml +++ b/app/code/Magento/AdminNotification/etc/adminhtml/routes.xml @@ -26,7 +26,7 @@ - + - \ No newline at end of file + diff --git a/app/code/Magento/AdminNotification/etc/module.xml b/app/code/Magento/AdminNotification/etc/module.xml index 8548afe579f6b..ae252d011f33d 100755 --- a/app/code/Magento/AdminNotification/etc/module.xml +++ b/app/code/Magento/AdminNotification/etc/module.xml @@ -27,11 +27,9 @@ - - diff --git a/app/code/Magento/Adminhtml/Block/Widget/Button.php b/app/code/Magento/Adminhtml/Block/Widget/Button.php deleted file mode 100644 index fac04979d7d8b..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Button.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget; - -class Button extends \Magento\Backend\Block\Widget\Button -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Container.php b/app/code/Magento/Adminhtml/Block/Widget/Container.php deleted file mode 100644 index 74e2ae7d7a3e7..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Container.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget; - -class Container extends \Magento\Backend\Block\Widget\Container -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Form/Container.php b/app/code/Magento/Adminhtml/Block/Widget/Form/Container.php deleted file mode 100644 index b194e05fb6e66..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Form/Container.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Form; - -class Container extends \Magento\Backend\Block\Widget\Form\Container -{ - protected $_blockGroup = 'Magento_Adminhtml'; -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Form/Element.php b/app/code/Magento/Adminhtml/Block/Widget/Form/Element.php deleted file mode 100644 index d57d85d353298..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Form/Element.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Form; - -class Element extends \Magento\Backend\Block\Widget\Form\Element -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Form/Element/Dependence.php b/app/code/Magento/Adminhtml/Block/Widget/Form/Element/Dependence.php deleted file mode 100644 index b1deb5f7acd31..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Form/Element/Dependence.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Form\Element; - -class Dependence extends \Magento\Backend\Block\Widget\Form\Element\Dependence -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Form/Element/Gallery.php b/app/code/Magento/Adminhtml/Block/Widget/Form/Element/Gallery.php deleted file mode 100644 index e5dce87b53139..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Form/Element/Gallery.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Form\Element; - -class Gallery extends \Magento\Backend\Block\Widget\Form\Element\Gallery -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Form/Renderer/Element.php b/app/code/Magento/Adminhtml/Block/Widget/Form/Renderer/Element.php deleted file mode 100644 index 38b8e3251a746..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Form/Renderer/Element.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Form\Renderer; - -class Element extends \Magento\Backend\Block\Widget\Form\Renderer\Element -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Form/Renderer/Fieldset.php b/app/code/Magento/Adminhtml/Block/Widget/Form/Renderer/Fieldset.php deleted file mode 100644 index 99285ba74a4a8..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Form/Renderer/Fieldset.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Form\Renderer; - -class Fieldset extends \Magento\Backend\Block\Widget\Form\Renderer\Fieldset -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Form/Renderer/Fieldset/Element.php b/app/code/Magento/Adminhtml/Block/Widget/Form/Renderer/Fieldset/Element.php deleted file mode 100644 index d7689b0fe24cb..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Form/Renderer/Fieldset/Element.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Form\Renderer\Fieldset; - -class Element - extends \Magento\Backend\Block\Widget\Form\Renderer\Fieldset\Element -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid.php b/app/code/Magento/Adminhtml/Block/Widget/Grid.php deleted file mode 100644 index 81aaf8597dd35..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget; - -class Grid extends \Magento\Backend\Block\Widget\Grid\Extended -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column.php deleted file mode 100644 index 0a94a823a30ae..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid; - -class Column extends \Magento\Backend\Block\Widget\Grid\Column -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/AbstractFilter.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/AbstractFilter.php deleted file mode 100644 index f1b5def35cff8..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/AbstractFilter.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class AbstractFilter - extends \Magento\Backend\Block\Widget\Grid\Column\Filter\AbstractFilter -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Checkbox.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Checkbox.php deleted file mode 100644 index c4b588bed1495..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Checkbox.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Checkbox - extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Checkbox -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Country.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Country.php deleted file mode 100644 index d40271a29ecdd..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Country.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Country - extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Country -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Date.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Date.php deleted file mode 100644 index 54e60bc7e112e..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Date.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Date extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Date -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Datetime.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Datetime.php deleted file mode 100644 index c542f50d91830..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Datetime.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Datetime - extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Datetime -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/FilterInterface.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/FilterInterface.php deleted file mode 100644 index c5237ef051649..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/FilterInterface.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -interface FilterInterface - extends \Magento\Backend\Block\Widget\Grid\Column\Filter\FilterInterface -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Massaction.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Massaction.php deleted file mode 100644 index 66637953647af..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Massaction.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Massaction - extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Massaction -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Price.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Price.php deleted file mode 100644 index 93bf93ec7185a..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Price.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Price extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Price -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Radio.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Radio.php deleted file mode 100644 index b3a0da3dcd64e..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Radio.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Radio extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Radio -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Range.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Range.php deleted file mode 100644 index 6ce0c118d4762..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Range.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Range extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Range -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Select.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Select.php deleted file mode 100644 index c06668058d97a..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Select.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Select extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Select -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Store.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Store.php deleted file mode 100644 index b1deb440c06ab..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Store.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Store extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Store -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Text.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Text.php deleted file mode 100644 index 0a980c1c2b522..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Text.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Text extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Text -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Theme.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Theme.php deleted file mode 100644 index 06dd4f193b368..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Filter/Theme.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Filter; - -class Theme extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Theme -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/AbstractRenderer.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/AbstractRenderer.php deleted file mode 100644 index 75a3412fdf61a..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/AbstractRenderer.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class AbstractRenderer - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Action.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Action.php deleted file mode 100644 index e62529f3ab913..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Action.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Action - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Action -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Checkbox.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Checkbox.php deleted file mode 100644 index bb4fe69e36f66..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Checkbox.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Checkbox - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Checkbox -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Concat.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Concat.php deleted file mode 100644 index ef3fe84173abb..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Concat.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Concat - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Concat -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Country.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Country.php deleted file mode 100644 index b31bdd9c9b59f..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Country.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Country - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Country -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Currency.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Currency.php deleted file mode 100644 index e0d2dfc3e56bd..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Currency.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Currency - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Currency -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Date.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Date.php deleted file mode 100644 index 79d03bf48a610..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Date.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Date extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Date -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.php deleted file mode 100644 index e9971e67ec92b..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Datetime - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Datetime -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Input.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Input.php deleted file mode 100644 index 7b3b401526fc0..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Input.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Input - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Input -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Ip.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Ip.php deleted file mode 100644 index a2e200db66e55..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Ip.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Ip extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Ip -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Longtext.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Longtext.php deleted file mode 100644 index c61973cf5816a..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Longtext.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Longtext - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Longtext -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Massaction.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Massaction.php deleted file mode 100644 index e244b5336897a..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Massaction.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Massaction - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Massaction -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Number.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Number.php deleted file mode 100644 index b8d7fdf297a17..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Number.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Number - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Number -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Options.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Options.php deleted file mode 100644 index 045027096dff7..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Options.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Options - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Options -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Price.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Price.php deleted file mode 100644 index 6c0b60ac111c8..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Price.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Price - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Price -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Radio.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Radio.php deleted file mode 100644 index 40d94c01a3e6e..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Radio.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Radio - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Radio -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/RendererInterface.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/RendererInterface.php deleted file mode 100644 index 3332a7b88eb62..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/RendererInterface.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -interface RendererInterface - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\RendererInterface -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Select.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Select.php deleted file mode 100644 index d2487c6ec4c01..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Select.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Select - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Select -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Store.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Store.php deleted file mode 100644 index bed9d2d8d4b01..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Store.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Store - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Store -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Text.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Text.php deleted file mode 100644 index e85825c2242af..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Text.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Text extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Text -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Wrapline.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Wrapline.php deleted file mode 100644 index 25299aaf29f55..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Column/Renderer/Wrapline.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Column\Renderer; - -class Wrapline - extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Wrapline -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Container.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Container.php deleted file mode 100644 index 190fdd789a3b4..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Container.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid; - -class Container extends \Magento\Backend\Block\Widget\Grid\Container -{ - protected $_blockGroup = 'Magento_Adminhtml'; -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction.php deleted file mode 100644 index 6d77c30c1862a..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid; - -class Massaction extends \Magento\Adminhtml\Block\Widget\Grid\Massaction\AbstractMassaction -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/AbstractMassaction.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/AbstractMassaction.php deleted file mode 100644 index 7787fa5970bdd..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/AbstractMassaction.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Massaction; - -class AbstractMassaction extends \Magento\Backend\Block\Widget\Grid\Massaction\Extended -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/Item.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/Item.php deleted file mode 100644 index 0478be3692caa..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/Item.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Massaction; - -class Item extends \Magento\Backend\Block\Widget\Grid\Massaction\Item -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/AdditionalInterface.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/AdditionalInterface.php deleted file mode 100644 index 78a7a826f636f..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/AdditionalInterface.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Massaction\Item\Additional; - -interface AdditionalInterface - extends \Magento\Backend\Block\Widget\Grid\Massaction\Item\Additional\AdditionalInterface -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/DefaultAdditional.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/DefaultAdditional.php deleted file mode 100644 index f79959b40340e..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Massaction/Item/Additional/DefaultAdditional.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid\Massaction\Item\Additional; - -class DefaultAdditional - extends \Magento\Backend\Block\Widget\Grid\Massaction\Item\Additional\DefaultAdditional -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Grid/Serializer.php b/app/code/Magento/Adminhtml/Block/Widget/Grid/Serializer.php deleted file mode 100644 index 3cc589d377c5d..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Grid/Serializer.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Grid; - -class Serializer extends \Magento\Backend\Block\Widget\Grid\Serializer -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/Tab/TabInterface.php b/app/code/Magento/Adminhtml/Block/Widget/Tab/TabInterface.php deleted file mode 100644 index d0516ac8c7bd7..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/Tab/TabInterface.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\Tab; - -interface TabInterface extends \Magento\Backend\Block\Widget\Tab\TabInterface -{ - -} diff --git a/app/code/Magento/Adminhtml/Block/Widget/View/Container.php b/app/code/Magento/Adminhtml/Block/Widget/View/Container.php deleted file mode 100644 index a7640e48a4917..0000000000000 --- a/app/code/Magento/Adminhtml/Block/Widget/View/Container.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @deprecated Moved to module Magento_Backend - */ -namespace Magento\Adminhtml\Block\Widget\View; - -class Container extends \Magento\Backend\Block\Widget\View\Container -{ - protected $_blockGroup = 'Magento_Adminhtml'; -} diff --git a/app/code/Magento/Adminhtml/i18n/de_DE.csv b/app/code/Magento/Adminhtml/i18n/de_DE.csv deleted file mode 100644 index 5e27124f3b68a..0000000000000 --- a/app/code/Magento/Adminhtml/i18n/de_DE.csv +++ /dev/null @@ -1,1144 +0,0 @@ -" The customer does not exist in the system anymore.","Der Kunde ist im System nicht mehr vorhanden." -" You will need to navigate to your ","Begeben Sie sich zu Ihrem" -" [deleted]"," [gelöscht]" -" and "," und " -" and go to the "," und gehen Sie nach " -" sections for your Hosted Checkout Pages."," Abschnitte für Ihre Hosted-Checkout-Seiten" -"%s (Default Template from Locale)","%s (Standardvorlage von Gebietsschema)" -"%s cache type(s) disabled.","%s Cachetyp(en) deaktiviert." -"%s cache type(s) enabled.","%s Cachetyp(en) aktiviert." -"%s cache type(s) refreshed.","%s Cachetyp(en) aktualisiert." -"(For Type ""Local Server"" need to use relative path to Magento install var/export or var/import, e.g. var/export, var/import, var/export/some/dir, var/import/some/dir)","(yp ""Lokaler Server"" muss die relative Pfadangabe zu Magento install var/export oder var/import nutzen, z.B. var/export, var/import, var/export/some/dir, var/import/some/dir)" -"(For US 2-letter state names)","(Für USA Bundesstaatabkürzungen aus 2 Buchstaben)" -"(If left empty will be auto-generated)","(Wert wird automatisch generiert, wenn leer)" -"(Leave empty for first spreadsheet)","(Frei lassen bei erstem Tabellenkalkulationsblatt)" -"(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)","(Produkte werden zu diesem Laden hinzugefügt/aktualisiert, wenn die Spalte 'Laden' leer ist oder in der Importdatei fehlt.)" -"(Shift-)Click or drag to change value","Zum Ändern des Wertes (Umschalt-)klicken oder ziehen." -"(Starting with)","(Beginnt mit)" -"(When 'No', only mapped fields will be imported. When mapping, use 'column1', 'column2', etc.)","(Bei ""Nein"" werden nur die gemappten Felder importiert. Benutzen sie beim Übernehmen der Felder 'spalte1', 'spalte2', etc.)" -"(You have to increase php memory_limit before changing this value)","(Sie müssen das php-Speicherlimit erhöhen, bevor Sie diesen Wert ändern können.)" -"(\\t for tab)","(\t für Tab)" -"* - If indexing is in progress, it will be killed and new indexing process will start.","* - Wenn die Indexerstellung in Bearbeitung ist, wird sie abgebrochen und ein neuer Indexerstellungsprozess wird gestartet." -"- Click on any of the time parts to increase it","- Klicken Sie auf einen Zeitanteil, um ihn zu erhöhen." -"- Hold mouse button on any of the above buttons for faster selection.","- Halten Sie die Maustaste auf eine der obigen Schaltflächen, um die Auswahl zu beschleunigen." -"- Use the %s buttons to select month","- Wählen Sie den Monat mit den %s-Schaltflächen aus." -"- Use the %s, %s buttons to select year","- Wählen Sie das Jahr mit den %s-Schaltflächen aus." -"- or Shift-click to decrease it","- oder Umschalt-Klicken Sie, um den Wert zu verringern" -"- or click and drag for faster selection.","- oder Klicken und Ziehen Sie, um die Auswahl schneller zu treffen." -"-- Not Selected --","-- Nicht gewählt --" -"-- Please Select --","-- Bitte auswählen --" -"-- Please Select Billing Agreement--","-- Bitte Rechnungsvereinbarung auswählen --" -"-- Please Select a Category --","-- Bitte eine Kategorie auswählen --" -"-- Please select --","-- Bitte auswählen --" -"--Please Select--","-- Bitte auswählen --" -"1 Hour","1 Stunde" -"1. set up","1. einrichten" -"12 Hours","12 Stunden" -"12h AM/PM","12h AM/PM" -"2 Hours","2 Stunden" -"2. customize","2. anpassen" -"24 Hours","24 Stunden" -"24h","24h" -"2YTD","2 Jahr bis Datum" -"6 Hours","6 Stunden" -"

404 Error

Page not found.

","

404 Fehler

Seite nicht gefunden.

" -"Attention: Captcha is case sensitive.","Achtung: Beim Captcha Groß- und Kleinschreibung beachten." -"A user with the same user name or email aleady exists.","Ein Benutzer mit demselben Benutzernamen oder derselben E-Mail-Adresse ist bereits vorhanden." -"API Key","API-Schlüssel" -"API Key Confirmation","Bestätigung API-Schlüssel" -"ASCII","ASCII" -"Abandoned Carts","Aufgegebene Einkaufswagen" -"About the calendar","Über den Kalender" -"Access Denied","Zugriff verweigert" -"Access denied","Zugriff verweigert" -"Access denied.","Zugriff verweigert." -"Account Created in:","Konto erstellt in:" -"Account Created on (%s):","Konto erstellt am (%s):" -"Account Created on:","Konto erstellt am:" -"Account Information","Kontoinformationen" -"Account Status","Kontostatus" -"Account status","Kontostatus" -"Action","Aktion" -"Actions","Aktionen" -"Actions XML","Aktionen XML" -"Active","Aktiv" -"Add","Hinzufügen" -"Add \Exception","Ausnahme hinzufügen" -"Add Field Mapping","Feldzuordnung hinzufügen" -"Add Field with URL:","Feld mit folgender URL hinzufügen:" -"Add New","Neues hinzufügen" -"Add New Image","Neues Bild hinzufügen" -"Add New Profile","Neues Profil hinzufügen" -"Add New Role","Neue Rolle hinzufügen" -"Add New Template","Neue Vorlage hinzufügen" -"Add New URL Rewrite","Neues URL-Rewrite hinzufügen" -"Add New User","Neuen Benutzer hinzufügen" -"Add New Variable","Neue Variable hinzufügen" -"Add Products","Produkte hinzufügen" -"Add URL Rewrite","URL-Rewrite hinzufügen" -"Add URL Rewrite for a Category","URL-Rewrite für eine Kategorie hinzufügen" -"Add URL Rewrite for a Product","URL-Rewrite für ein Produkt hinzufügen" -"Add after","Hinzufügen nach" -"Additional Cache Management","Verwaltung von zusätzlichem Cache" -"Address Type:","Adressentyp:" -"Admin","Admin" -"Advanced Admin Section","Erweiterter Admin-Bereich" -"Advanced Profiles","Erweiterte Profile" -"Advanced Section","Erweiterter Bereich" -"All","Alle" -"All Allowed Countries","Alle erlaubten Länder" -"All Cache","Alle Caches" -"All Files","Alle Dateien" -"All Reviews","Alle Beurteilungen" -"All Store Views","Alle Ladenansichten" -"All Websites","Alle Websites" -"All countries","Alle Länder" -"All fields","Alle Felder" -"All possible rates were fetched, please click on ""Save"" to apply","Alle verfügbaren Preise wurden geladen, bitte klicken sie auf ""Speichern"" um diese zu übernehmen." -"All rates were fetched, please click on ""Save"" to apply","Alle Preise wurden geladen, bitte klicken sie auf ""Speichern"" um diese zu übernehmen." -"All valid rates have been saved.","Alle gültigen Tarife wurden gespeichert." -"Always (during development)","Immer (während der Entwicklung)" -"Amounts","Beträge" -"An error has occurred while syncronizing media storages.","Während der Synchronisation der Speichermedien ist ein Fehler aufgetreten." -"An error occurred while clearing the JavaScript/CSS cache.","Beim Leeren des JavaScript/CSS-Caches ist ein Fehler aufgetreten." -"An error occurred while clearing the image cache.","Beim Leeren des Bild-Caches ist ein Fehler aufgetreten." -"An error occurred while deleting URL Rewrite.","Beim Löschen des URL-Rewrites ist ein Fehler aufgetreten." -"An error occurred while deleting email template data. Please review log and try again.","Beim Löschen der E-Mail-Vorlagendaten ist ein Fehler aufgetreten. Überprüfen Sie das Protokoll und versuchen Sie es erneut." -"An error occurred while deleting record(s).","Ein Fehler ist bei der Eintragungslöschung aufgetreten." -"An error occurred while deleting this role.","Beim Löschen dieser Rolle ist ein Fehler aufgetreten." -"An error occurred while deleting this set.","Beim Löschen dieser Menge ist ein Fehler aufgetreten." -"An error occurred while deleting this template.","Beim Löschen dieser Vorlage ist ein Fehler aufgetreten." -"An error occurred while finishing process. Please refresh the cache","Beim Fertigstellen des Vorgangs ist ein Fehler aufgetreten. Aktualisieren Sie den Cache." -"An error occurred while rebuilding the CatalogInventory Stock Status.","Beim erneuten Aufbau des CatalogInventory-Bestandsstatus ist ein Fehler aufgetreten." -"An error occurred while rebuilding the catalog index.","Beim erneuten Aufbau des Katalogindexes ist ein Fehler aufgetreten." -"An error occurred while rebuilding the flat catalog category.","Beim erneuten Aufbau der Flat Catalog-Kategorie ist ein Fehler aufgetreten." -"An error occurred while rebuilding the flat product catalog.","Beim erneuten Aufbau des Flat Product Catalog ist ein Fehler aufgetreten." -"An error occurred while rebuilding the search index.","Beim erneuten Aufbau des Suchindexes ist ein Fehler aufgetreten." -"An error occurred while refreshing the Catalog Rewrites.","Beim Aktualisieren der Katalog-Rewrites ist ein Fehler aufgetreten." -"An error occurred while refreshing the Layered Navigation indices.","Beim Aktualisieren der Layered Navigation-Indizes ist ein Fehler aufgetreten." -"An error occurred while refreshing the catalog rewrites.","Während des Neuladens der umgeschriebenen Kataloge ist ein Fehler aufgetreten." -"An error occurred while refreshing the layered navigation indices.","Während des Neuladens der Layered Navigation ist ein Fehler aufgetreten." -"An error occurred while saving URL Rewrite.","Beim Speichern des URL-Rewrites ist ein Fehler aufgetreten." -"An error occurred while saving account.","Beim Speichern des Kontos ist ein Fehler aufgetreten." -"An error occurred while saving review.","Beim Speichern der Bewertung ist ein Fehler aufgetreten." -"An error occurred while saving the customer.","Beim Speichern des Kunden ist ein Fehler aufgetreten." -"An error occurred while saving this configuration:","Beim Speichern der Konfiguration ist ein Fehler aufgetreten." -"An error occurred while saving this role.","Beim Speichern dieser Rolle ist ein Fehler aufgetreten." -"An error occurred while saving this template.","Beim Speichern dieser Vorlage ist ein Fehler aufgetreten." -"An error occurred while updating the selected review(s).","Beim Aktualisieren der ausgewählten Beurteilung(en) ist ein Fehler aufgetreten." -"Any","Beliebig" -"Any Attribute Set","Attributmenge beliebig" -"Any Group","Gruppe beliebig" -"Any Status","Status beliebig" -"Any Store","Laden beliebig" -"Any Type","Typ beliebig" -"Any Visibility","Sichtbarkeit beliebig" -"Any data created since the backup was made will be lost including admin users, customers and orders.","Sämtliche seit dem Backup erstellten Daten gehen verloren, einschließlich der Administratoren, Kunden und Bestellungen." -"Archive file name:","Dateinamen archivieren:" -"Are you sure that you want to delete this template?","Diese Vorlage wirklich löschen?" -"Are you sure that you want to strip tags?","Tags wirklich entfernen?" -"Are you sure you want to do this?","Diesen Vorgang wirklich ausführen?" -"Are you sure you want to proceed?","Sind Sie sicher, dass Sie fortfahren möchten?" -"Area","Bereich" -"As low as:","Unterster Wert:" -"Assigned","Zugewiesen" -"Attribute Set Name:","Name der Attributmenge:" -"Attributes","Attribute" -"Automatic","Automatisch" -"Average","Durchschnittlicher Bestellungsbetrag" -"Average Orders","Bestellungen durchschnittlich" -"BINARY","BINÄR" -"Back","Zurück" -"Back to Login","Zurück zur Anmeldung" -"Backup","Sichern" -"Backup Name","Backup-Name" -"Backup options","Backup-Optionen" -"Backups","Sicherungskopien" -"Base currency","Basiswährung" -"Bcc","Bcc" -"Bestsellers","Am meisten verkauft" -"Billing Address","Rechnungsanschrift" -"Billing Address: ","Rechnungsanschrift:" -"Billing Agreement","Rechnungsvereinbarung" -"Billing Agreements","Rechnungsvereinbarungen" -"Block Information","Information sperren" -"Both (without and with tax)","Beides (mit und ohne Steuern)" -"Both IPN and PDT","Sowohl IPN als auch PDT" -"Browse Files...","Dateien durchsuchen ..." -"Bundle with dynamic pricing cannot include custom defined options. Options will not be saved.","Bündelung mit dynamischer Preisgebung darf keine benutzerdefinierten Optionen enthalten. Optionen werden nicht gespeichert." -"CMS","CMS" -"CRITICAL","kritisch" -"CSV","CSV" -"CSV / Tab separated","CSV / Tab-getrennt" -"Cache Control","Cache-Steuerung" -"Cache Control (beta)","Cache-Steuerung (beta)" -"Cache Management","Cache-Verwaltung" -"Cache Type","Cache-Typ" -"Cancel","Abbrechen" -"Cannot add new comment.","Neuer Kommentar kann nicht hinzugefügt werden." -"Cannot add tracking number.","Trackingnummer kann nicht hinzugefügt werden." -"Cannot create an invoice without products.","Rechnung kann nicht ohne Produkte erstellt werden." -"Cannot create credit memo for the order.","Gutschrift für die Bestellung kann nicht erstellt werden." -"Cannot delete the design change.","Designänderung kann nicht gelöscht werden." -"Cannot delete tracking number.","Trackingnummer kann nicht gelöscht werden." -"Cannot do shipment for the order separately from invoice.","Lieferung für die Bestellung kann nicht von der Rechnung getrennt erfolgen." -"Cannot do shipment for the order.","Lieferung für die Bestellung kann nicht ausgeführt werden." -"Cannot initialize shipment for adding tracking number.","Lieferung kann nicht initialisiert werden - Trackingnummer hinzugefügt." -"Cannot initialize shipment for delete tracking number.","Lieferung kann nicht initialisiert werden - Trackingnummer gelöscht." -"Cannot load track with retrieving identifier.","Track kann nicht mit Abrufkennzeichen geladen werden." -"Cannot retrieve tracking number detail.","Trackingnummerdetail kann nicht abgerufen werden." -"Cannot save shipment.","Lieferung kann nicht gespeichert werden." -"Cannot save the credit memo.","Die Gutschrift kann nicht gespeichert werden." -"Cannot send shipment information.","Die Lieferdaten können nicht gesendet werden." -"Cannot update item quantity.","Artikelmenge kann nicht aktualisiert werden." -"Cannot update the item\'s quantity.","Artikelmenge kann nicht aktualisiert werden." -"Catalog","Katalog" -"Catalog Price Rules","Katalogpreisregeln" -"Catalog Rewrites","Katalog-Rewrites" -"Categories","Kategorien" -"Category:","Kategorie:" -"Chart is disabled. If you want to enable chart, click here.","Chart ist deaktiviert. Wenn Sie den Chart aktivieren wollen, klicken Sie hier ." -"Checkbox","Kontrollkästchen" -"Child Transactions","Kindertransaktionen" -"Choose Store View:","Shopansicht auswählen:" -"Choose an attribute","Ein Attribut auswählen" -"Chosen category does not associated with any website, so url rewrite is not possible.","Gewählte Kategorie ist mit keiner Webseite verbunden, ein Überschreiben der URL ist nicht möglich." -"Chosen product does not associated with any website, so url rewrite is not possible.","Gewähltes Produkt ist mit keiner Webseite verbunden, ein Überschreiben der URL ist nicht möglich." -"Clear","Auswahl aufheben" -"Close","Schließen" -"Comment text field cannot be empty.","Das Textfeld für Kommentare darf nicht leer sein." -"Complete","Abgeschlossen" -"Configuration","Konfiguration" -"Confirm New Password","Neues Passwort bestätigen" -"Confirmed email:","Bestätigte E-Mail-Adresse:" -"Connect with the Magento Community","Mit der Magento-Community verbinden" -"Continue","Weiter" -"Continuous","Durchgängig" -"Convert to Plain Text","In unformatierten Text konvertieren" -"Cookie (unsafe)","Cookie (unsicher)" -"Country","Land" -"Country:","Land:" -"Coupons","Coupons" -"Create","Erstellen" -"Create DB Backup","DB-Sicherungskopie erstellen" -"Create New Attribute","Neues Attribut erstellen" -"Create URL Rewrite:","URL-Rewrite erstellen:" -"Created At","Erstellt um" -"Credit Card %s","Kreditkarten" -"Credit Memo History","Gutschriftverlauf" -"Credit Memo Totals","Gutschriftensummen" -"Credit Memos","Gutschriften" -"Credit memo #%s comment added","Gutschrift #%s Kommentar hinzugefügt" -"Credit memo #%s created","Gutschrift #%s erstellt" -"Credit memo\'s total must be positive.","Die Summe aller Gutschriften muss positiv sein." -"Currency","Währung" -"Currency ""%s"" is used as %s in %s.","Währung ""%s"" wird verwendet als %s in %s." -"Currency Information","Währungsdaten" -"Currency Setup Section","Bereich für Währungseinstellung" -"Current Configuration Scope:","Aktueller Konfigurationsumfang:" -"Current Month","Aktueller Monat" -"Custom","Benutzerdefiniert" -"Custom Variable ""%s""","Benutzerdefinierte Variable ""% s""" -"Custom Variables","Benutzerdefinierte Variablen" -"Customer","Kunde" -"Customer Group:","Kundengruppe:" -"Customer Groups","Kundengruppen" -"Customer","Kundenname" -"Customer Reviews","Kundenbeurteilungen" -"Customer Shopping Carts","Einkaufswagen von Kunden" -"Customer Since:","Kunde seit:" -"Customer Tax Classes","Kundensteuerklassen" -"Customer with the same email already exists.","Ein Kunde mit derselben E-Mail-Adresse ist bereits vorhanden." -"Customers","Kunden" -"Customers by Orders","Kunden nach Anzahl der Bestellungen" -"Customers by Orders Total","Kunden nach Summe der Bestellungen" -"DHTML Date/Time Selector","DHTML Datums-/Uhrzeitauswahltool" -"Dashboard","Dashboard" -"Data Format","Datenformat" -"Data transfer:","Datenübertragung:" -"Database","Datenbank" -"Date","Datum" -"Date & Time","Datum & Uhrzeit" -"Added","Hinzugefügt am (Datum)" -"Updated","Aktualisiert am (Datum)" -"Date selection:","Datumsauswahl:" -"Date selector","Datumsauswahltool" -"Day","Tag" -"Decimal separator:","Dezimaltrennzeichen:" -"Default (Admin) Values","Standardwerte (Admin)" -"Default Billing Address","Standardrechnungsadresse" -"Default Config","Standardkonfig." -"Default Template from Locale","Standardvorlage von Gebietsschema" -"Default Values","Standardwerte" -"Default display currency ""%s"" is not available in allowed currencies.","Im Display angezeigte Währung ""% s"" ist nicht in zugelassenen Währungen verfügbar." -"Default scope","Standardumfang" -"Delete","Löschen" -"Delete %s","%s löschen" -"Delete %s '%s'","%s '%s' löschen" -"Delete File","Datei löschen" -"Delete Image","Bild löschen" -"Delete Profile","Profil löschen" -"Delete Role","Rolle löschen" -"Delete Store","Laden löschen" -"Delete Store View","Ladenansicht löschen" -"Delete Template","Vorlage löschen" -"Delete User","Benutzer löschen" -"Delete Website","Website löschen" -"Description","Beschreibung" -"Design","Design" -"Design Section","Design-Bereich" -"Details","Details" -"Developer Section","Entwicklerbereich" -"Direction:","Richtung:" -"Disable","Deaktivieren" -"Disabled","Deaktiviert" -"Display %s first","%s zuerst anzeigen" -"Display default currency","Standardwährung anzeigen" -"Distributed under GNU LGPL. See %s for details.","Vertrieb unter GNU LGPL. Zu Details siehe %s." -"Do you really want to KILL parallel process and start new indexing process?","Parallelprozess wirklich BEENDEN und neuen Indexerstellungsprozess starten?" -"Do you really want to proceed?","Möchten Sie wirklich fortfahren?" -"Download","Download" -"Downloads","Downloads" -"Drag to move","Zum Verschieben ziehen" -"Drop-down","Dropdown" -"Edit","Bearbeiten" -"Edit Design Change","Designänderung bearbeiten" -"Edit Email Template","E-Mail-Vorlage bearbeiten" -"Edit Order","Ordner bearbeiten" -"Edit Queue","Warteschlange bearbeiten" -"Edit Review","Bewertung aufbereiten" -"Edit Role","Rolle bearbeiten" -"Edit Store View","Ladenansicht bearbeiten" -"Edit System Template","Systemvorlage bearbeiten" -"Edit Template","Vorlage bearbeiten" -"Edit URL Rewrite","URL-Rewrite bearbeiten" -"Edit User","Nutzer aufbereiten" -"Edit User '%s'","Benutzer '%s' bearbeiten" -"Edit Website","Website bearbeiten" -"Email","E-Mail" -"Email Address:","Email-Adresse:" -"Email Preview","E-Mail-Vorschau" -"Email to a Friend","E-Mail an einen Freund" -"Email:","E-Mail:" -"Enable","Aktivieren" -"Enabled","Aktiviert" -"Enclose Values In:","Werte einschließen in:" -"Entity Attributes","Entitätenattribute" -"Entity Type","Entitätstyp" -"Entity type:","Art der Organisation:" -"Error","Fehler" -"Excel XML","Excel-XML" -"Excl. Tax","Ausschl. Steuer" -"Exclude media folder from backup","Medienordner vom Backup ausnehmen" -"Export","Export" -"Export CSV","CSV exportieren" -"Export Filters","Filter exportieren" -"Export to:","Exportieren an:" -"Export:","Export:" -"FTP Host","FTP-Host" -"FTP Host[:Port]","FTP Host[:Port]" -"FTP Login","FTP Login" -"FTP Password","FTP Passwort" -"FTP credentials","FTP-Berechtigungen" -"Failed to add a product to cart by id ""%s"".","Kein Produkt in den Warenkorb von ID ""% s"" gelegt." -"Failed to cancel the billing agreement.","Stornierung der Zahlungsvereinbarung fehlgeschlagen." -"Failed to clear the JavaScript/CSS cache.","Leeren des JavaScript/CSS-Caches fehlgeschlagen." -"Failed to delete the billing agreement.","Aufheben der Zahlungsvereinbarung fehlgeschlagen." -"Failed to update the profile.","Aktualisierung des Profils fehlgeschlagen." -"Field","Feld" -"Field Mapping","Feldzuordnung" -"File","Datei" -"File Information","Dateiinformation" -"File System","Dateisystem" -"File mode","Dateimodus" -"File name:","Dateiname:" -"File size should be more than 0 bytes","Dateigröße sollte mehr als 0 Byte betragen." -"Finished profile execution.","Profilausführung fertig." -"First Invoice Created Date","Erstellungsdatum der ersten Rechnung" -"First Name","Vorname" -"First Name is required field.","Vorname ist ein Pflichtfeld." -"First Name:","Vorname:" -"Fixed","Feststehend" -"Flush Catalog Images Cache","Katalogbildercache leeren" -"Flush JavaScript/CSS Cache","JavaScript/CSS-Cache leeren" -"For category","Für Kategorie" -"For latest version visit: %s","Neueste Version siehe: %s" -"For product","Für Produkt" -"Forgot Admin Password","Admin-Passwort vergessen" -"Forgot your password?","Passwort vergessen?" -"Forgot your user name or password?","Haben Sie Ihren Benutzernamen oder Ihr Passwort vergessen?" -"From","von" -"GLOBAL","ALLGEMEIN" -"Gb","GB" -"General Information","Allgemeine Angaben" -"General Section","Allgemeiner Bereich" -"Get Image Base64","Get Image Base64" -"Get help for this page","Hilfe zu dieser Seite einholen" -"Global Attribute","Allgemeines Attribut" -"Global Record Search","Globale Eintragssuche" -"Global Search","Allgemeine Suche" -"Go Today","Heute aktiv werden" -"Go to messages inbox","Zum Posteingang" -"Go to notifications","Zu den Benachrichtigungen" -"Google Base","Google Base" -"Google Sitemaps","Google Sitemaps" -"Grand Total","Rechnungsbetrag" -"Grid (default) / List","Tabelle (Standard)/Liste" -"Grid Only","Grid Only" -"Group:","Gruppe:" -"Guest","Gast" -"HTTP (unsecure)","HTTP (unsicher)" -"HTTPS (SSL)","HTTPS (SSL)" -"Help Us Keep Magento Healthy - Report All Bugs","Helfen Sie uns, Magento sauber zu halten - Melden Sie alle Fehler" -"Helper attributes should not be used in custom layout updates.","Helfereigenschaften sollten nicht in den benutzerdefinierten Layoutaktualisierungen verwendet werden." -"Helper for options rendering doesn't implement required interface.","Hilfsfunktion für Wiedergabemöglichkeiten richtet erforderliche Schnittstelle nicht ein." -"Home","Startseite" -"ID","ID" -"ID Path","ID-Pfad" -"IP Address","IP-Adresse" -"IPN (Instant Payment Notification) Only","Nur IPN (Sofortzahlungsbenachrichtigung)" -"If there is an account associated with %s you will receive an email with a link to reset your password.","Wenn ein Konto mit %s verknüpft ist, erhalten Sie eine E-Mail mit einem Link für das Resetten Ihres Passworts." -"If this message persists, please contact the store owner.","Wenn diese Meldung weiterhin angezeigt wird, wenden Sie sich bitte an den Ladeneigentümer." -"Images (.gif, .jpg, .png)","Bilder (.gif, .jpg, .png)" -"Images Cache","Bildercache" -"Import","Importieren" -"Import Service","Importdienst" -"Import and Export","Importieren und exportieren" -"Import and Export Tax Rates","Steuersätze importieren und exportieren" -"Import/Export","Importieren/Exportieren" -"Import/Export Advanced","Import/Export Erweitert" -"Import/Export Profile","Profil importieren/exportieren" -"Important: ","Wichtig:" -"Imported %s records","Importierte %s Datensätze" -"In","In" -"In Database:","In Datenbank:" -"In File:","In Datei:" -"Inactive","Inaktiv" -"Incl. Tax","Einschl. Steuern" -"Incoming Message","Eingehende Nachricht" -"Insert Variable...","Variable einfügen..." -"Interactive","Interaktiv" -"Interface Locale: %s","Interface Locale: %s" -"Invalid Form Key. Please refresh the page.","Ungültiger Formularschlüssel. Aktualisieren Sie die Seite." -"Invalid Import Service Specified","Ungültiger Importdienst angegeben" -"Invalid POST data (please check post_max_size and upload_max_filesize settings in your php.ini file).","Ungültige POST-Daten (prüfen Sie die Einstellungen für post_max_size und upload_max_filesize in Ihrer php.ini-Datei)." -"Invalid Secret Key. Please refresh the page.","Ungültiger Geheimschlüssel. Aktualisieren Sie die Seite." -"Invalid User Name or Password.","Benutzername oder Passwort ungültig." -"Invalid directory: %s","Ungültiges Verzeichnis: %s" -"Invalid email address ""%s"".","Ungültige E-Mail-Adresse ""%s""." -"Invalid email address.","Ungültige E-Mail-Adresse." -"Invalid file: %s","Ungültige Datei: %s" -"Invalid input data for %s => %s rate","Ungültige Eingabedaten für %s => %s Rate" -"Invalid parent block for this block","Ungültiger Elternblock für diesen Block" -"Invalid parent block for this block.","Ungültiger übergeordneter Block für diesen Block." -"Invalid password reset token.","Ungültiger Token für das Resetten des Passworts." -"Invalid sender name ""%s"". Please use only visible characters and spaces.","Ungültiger Absendername ""%s"". Bitte verwenden Sie nur lesbare Zeichen und Leerzeichen." -"Invalid timezone","Ungültige Zeitzone" -"Invalidated","Ungültig gemacht" -"Inventory Stock Status","Vorratsbestand Status" -"Invoice #%s comment added","Rechnung #%s - Kommentar hinzugefügt" -"Invoice #%s created","Rechnung #%s erstellt" -"Invoice History","Rechnungsverlauf" -"Invoice Totals","Rechnungssummen" -"Invoice canceling error.","Fehler beim Stornieren der Rechnung." -"Invoice capturing error.","Fehler beim Erfassen der Rechnung." -"Invoice voiding error.","Fehler beim Ungültigmachen der Rechnung." -"Invoices","Rechnungen" -"Is Closed","Ist geschlossen" -"Issue Number","Ausstellnummer" -"Items","Elemente" -"JavaScript seems to be disabled in your browser.","JavaScript scheint in Ihrem Browser deaktiviert zu sein." -"JavaScript/CSS","JavaScript/CSS" -"JavaScript/CSS Cache","JavaScript/CSS-Cache" -"Kb","KB" -"Last 24 Hours","Letzte 24 Stunden" -"Last 5 Orders","Letzte 5 Bestellungen" -"Last 5 Search Terms","Letzte 5 Suchbegriffe" -"Last 7 Days","Letzte 7 Tage" -"Last Credit Memo Created Date","Datum der letzten Gutschrifterstellung" -"Last Invoice Created Date","Datum der letzten Rechnungserstellung" -"Last Logged In (%s):","Zuletzt angemeldet (%s):" -"Last Logged In:","Letzte Anmeldung:" -"Last Name","Nachname" -"Last Name is required field.","Das Feld 'Nachname' muss ausgefüllt werden." -"Last Name:","Nachname:" -"Last updated: %s. To refresh last day\'s statistics, click here.","Zuletzt aktualisiert: %s. Um die Statistiken von gestern zu aktualisieren, klicken Sie hier." -"Latest Message:","Neueste Meldung:" -"Layered Navigation Indices","Layered Navigation-Indizes" -"Layered Navigation Indices were refreshed.","Layered Navigation Indices wurden aktualisiert." -"Leave empty to use tax identifier","Frei lassen, um Steuernummer einzusetzen" -"Lifetime Sales","Gesamtumsatz" -"Lifetime statistics have been updated.","Lebenslange Statistik wurde aktualisiert." -"Links","Links" -"Links with associated products will retain only after saving current product.","Links mit verknüpften Produkten werden nur beibehalten, nachdem das aktuelle Produkt gespeichert wurde." -"List (default) / Grid","Liste (Standard)/Tabelle" -"List Only","Nur Liste" -"Load Template","Vorlage laden" -"Load default template","Standardvorlage laden" -"Loading...","Laden ..." -"Local Server","Lokaler Server" -"Local/Remote Server","Lokaler Server/Remote-Server" -"Locale","Gebietsschema" -"Log Out","Abmelden" -"Log in to Admin Panel","Beim Admin-Panel anmelden" -"Log into Magento Admin Page","Bei der Magento Admin-Seite anmelden" -"Logged in as %s","Angemeldet als %s" -"Login","Login" -"Low Stock","Vorratsbestand niedrig" -"MAJOR","größer" -"MINOR","KLEINER" -"MS Excel XML","MS Excel XML" -"Magento Admin","Magento Admin" -"Magento Commerce - Administrative Panel","Magento Commerce - Verwaltungspanel" -"Magento Connect","Magento Connect" -"Magento Connect Manager","Magento Connect-Manager" -"Magento Logo","Magento-Logo" -"Magento is a trademark of X.commerce, Inc. Copyright © %s X.commerce, Inc.","Magento ist ein Warenzeichen von X.commerce, Inc. Copyright © %s X.commerce, Inc." -"Magento root directory","Magento-Rootverzeichnis" -"Magento ver. %s","Magento Version %s" -"Magento® is a trademark of X.commerce, Inc.
Copyright © %s X.commerce, Inc.","Magento® ist ein Warenzeichen von X.commerce, Inc.
Copyright © %s X.commerce, Inc." -"Make sure that data encoding in the file is consistent and saved in one of supported encodings (UTF-8 or ANSI).","Achten Sie darauf, dass die Datenkodierung in der Datei konsistent ist und in einem unterstützten Kodierungsformat gespeichert wird (UTF-8 oder ANSI)." -"Manage Attribute Sets","Attributmengen verwalten" -"Manage Attributes","Attribute verwalten" -"Manage Categories","Kategorien verwalten" -"Manage Content","Inhalt verwalten" -"Manage Currency Rates","Wechselkurse verwalten" -"Manage Customers","Kunden verwalten" -"Manage Ratings","Bewertungen verwalten" -"Manage Stores","Läden verwalten" -"Manage Tax Rules","Steuerregeln verwalten" -"Manage Tax Zones and Rates","Steuergebiete und -sätze verwalten" -"Manual","Manuell" -"Matched Expression","Übereinstimmender Ausdruck" -"Mb","MB" -"Media (.avi, .flv, .swf)","Medien (.avi, .flv, .swf)" -"Media storages synchronization has completed!","Synchronisation des Medienspeichers fertiggestellt!" -"Messages Inbox","Eingehende Nachrichten" -"Month","Monat" -"Most Viewed","Am häufigsten angezeigt" -"Most Viewed Products","Meistgesehene Produkte" -"Multiple Select","Mehrfachauswahl" -"My Account","Mein Konto" -"N/A","N.Z." -"NOTICE","Hinweis" -"Name","Name" -"Name:","Name:" -"Never (production)","Nie (Produktion)" -"New ","Neu" -"New API Key","Neuer API-Schlüssel" -"New Accounts","Neue Konten" -"New Attribute","Neues Attribut" -"New Block","Neuer Block" -"New Category","Neue Kategorie" -"New Class","Neue Klasse" -"New Condition","Neue Bedingung" -"New Custom Variable","Neue Kundenvariable" -"New Customer","Neuer Kunde" -"New Customers","Neue Kunden" -"New Design Change","Neue Designänderung" -"New Email Template","Neue Email-Vorlage" -"New Group","Neue Gruppe" -"New Invoice","Neue Rechnung" -"New Item Type","Neuer Elementtyp" -"New Memo","Neues Memo" -"New Memo for #%s","Neues Memo für #%s" -"New Page","Neue Seite" -"New Password","Neues Passwort" -"New Profile","Neues Profil" -"New Rate","Neue Rate" -"New Rating","Neue Bewertung" -"New Review","Neue Beurteilung" -"New Role","Neue Rolle" -"New Rule","Neue Regel" -"New Search","Neue Suche" -"New Set","Neuer Satz" -"New Shipment","Neue Lieferung" -"New Sitemap","Neue Sitemap" -"New Store View","Neue Ladenansicht" -"New System Template","Neue Systemvorlage" -"New Template","Neue Vorlage" -"New User","Neuer Benutzer" -"New Variable","Neue Variable" -"New Website","Neue Website" -"New password field cannot be empty.","Das Feld für das neue Passwort kann nicht leer sein." -"Newsletter","Newsletter" -"Newsletter Problems","Newsletter-Probleme" -"Newsletter Queue","Newsletter-Warteschlange" -"Newsletter Subscribers","Newsletter-Abonnenten" -"Newsletter Templates","Newsletter-Vorlagen" -"Next month (hold for menu)","Folgemonat (für Menü gedrückt halten)" -"Next year (hold for menu)","Nächstes Jahr (halten für Menü)" -"No","Nein" -"No (price without tax)","Nein (Preis vor Steuern)" -"No Data","Keine Daten" -"No Data Found","Keine Daten gefunden" -"No Templates Found","Keine Vorlagen gefunden" -"No change","Keine Änderung" -"No customer id defined.","Keine Kunden-ID definiert." -"No information available.","Keine Informationen verfügbar." -"No profile loaded...","Kein Profil geladen..." -"No records found for this period.","Keine Datensätze gefunden für diesen Zeitraum." -"No records found.","Keine Datensätze gefunden." -"No report code specified.","Kein Berichtcode angegeben." -"No search keywords.","Keine Suchstichwörter." -"No search modules were registered","Keine registrierten Suchmodule" -"No wishlist item id defined.","Keine Wunschlisten-ID definiert." -"None","Keins" -"Note:","Hinweis:" -"Notes","Hinweise" -"Notifications","Benachrichtigungen:" -"Orders","Zahl der Bestellungen" -"Uses","Zahl der Verwendungen" -"Views","Anzahl der Ansichten" -"Number of records:","Zahl der Datensätze:" -"OK","OK" -"Old rate:","Alter Satz:" -"One or more media files failed to be synchronized during the media storages syncronization process. Refer to the log file for details.","Eine oder mehrere Mediendateien konnten nicht synchronisiert werden während der Synchronisation des Medienspeichers. Sie finden mehr Details in den Logdateien." -"One or more of the Cache Types are invalidated:","Mindestens ein Cache-Typ wurde für ungültig befunden:" -"Online Customers","Online-Kunden" -"Only Once (version upgrade)","Nur einmal (Upgrade der Version)" -"Only attributes with scope ""Global"", input type ""Dropdown"" and Use To Create Configurable Product ""Yes"" are available.","Nur Einstellungen im Anwendungsbereich ""Global"", der Eingabetyp ""Dropdown"" und Verwenden, um ein konfigurierbares Produkt zu erstellen ""Ja"" sind verfügbar." -"Only mapped fields","Nur zugeordnete Felder" -"Optional","Optional" -"Options","Optionen" -"Order","Bestellung" -"Order %s","Bestellnr. %s" -"Order %s (%s)","Auftrag #%s (%s)" -"Order Created Date","Datum der Auftragserstellung" -"Order ID","Auftrags-ID" -"Order Totals","Bestellsummen" -"Order Updated Date","Datum der Auftragsaktualisierung" -"Order Updated Date report is real-time, does not need statistics refreshing.","Der Bericht über das Datum der Auftragsaktualisierung wird in Echtzeit erstellt; die Statistik braucht nicht aktualisiert zu werden." -"Orders","Bestellungen" -"Original Magento attribute names in first row:","Ursprüngliche Magento-Attributnamen in erster Zeile:" -"Out of stock","Ausverkauft" -"PDT (Payment Data Transfer) Only","Nur PDT (Zahlungsdatenübertragung)" -"Package Extensions","Paketerweiterungen" -"Pages","Seiten" -"Parent Product Thumbnail","Miniaturbild für Elternprodukt" -"Parent Transaction ID","Transaktions-ID für Eltern" -"Passive mode","Passiver Modus" -"Password","Passwort" -"Password Confirmation","Passwortbestätigung" -"Password confirmation must be same as password.","Kennwort-Bestätigung stimmt nicht mit Kennwort überein." -"Password must be at least of %d characters.","Das Passwort muss mindestens %d Zeichen lang sein." -"Password must include both numeric and alphabetic characters.","Das Passwort muss sowohl numerische als auch alphabetische Zeichen enthalten." -"Password:","Kennwort:" -"Path:","Pfad:" -"PayPal Manager","PayPal-Manager" -"Payment method instance is not available.","Zahlungsforminstanz ist nicht verfügbar." -"Payment method is not available.","Zahlungsform ist nicht verfügbar." -"Payment method must be specified.","Angabe der Zahlungsmethode erforderlich." -"Pending Reviews","Ausstehende Beurteilungen" -"Per Item","Je Element" -"Per Order","Je Bestellung" -"Percent","Prozent" -"Performed At","Ausgeführt Um" -"Interval","Zeitraum" -"Permanent (301)","Ständig (301)" -"Permissions","Rechte" -"Personal Information","Persönliche Angaben" -"Phone:","Telefon:" -"Please Select","Bitte auswählen" -"Please confirm site switching. All data that hasn\'t been saved will be lost.","Bestätigen Sie den Website-Wechsel. Alle nicht gespeicherten Daten gehen verloren." -"Please enter 6 or more characters.","Geben Sie mindestens 6 Zeichen ein." -"Please enter a number greater than 0 in this field.","Geben Sie in dieses Feld eine Zahl ein, die größer als 0 ist." -"Please enter a valid $ amount. For example $100.00.","Geben Sie einen gültigen Betrag in $ ein. Beispiel: $100,00." -"Please enter a valid URL. For example http://www.example.com or www.example.com","Geben Sie eine gültige URL ein. Beispiel: http://www.beispiel.com oder www.beispiel.com." -"Please enter a valid URL. http:// is required","Geben Sie eine gültige URL ein. Sie müssen http:// angeben." -"Please enter a valid credit card number.","Geben Sie bitte eine gültige Kreditkartennummer ein." -"Please enter a valid date.","Geben Sie ein gültiges Datum ein." -"Please enter a valid email address. For example johndoe@domain.com.","Geben Sie eine gültige E-Mail-Adresse ein. Beispiel: johndoe@domain.com." -"Please enter a valid email.","Geben Sie bitte ein gültige Email-Adresse an." -"Please enter a valid number in this field.","Geben Sie eine gültige Zahl in dieses Feld ein." -"Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890.","Geben Sie eine gültige Telefonnummer ein. Beispiel: (123) 456-7890 oder 123-456-7890." -"Please enter a valid social security number. For example 123-45-6789.","Geben Sie eine gültige Steuernummer ein. Beispiel: 012-34-5678-90." -"Please enter a valid value from list","Geben Sie einen gültigen Wert aus der Liste ein." -"Please enter a valid value, ex: 10,20,30","Geben Sie einen gültigen Wert ein, Beispiel: 10,20,30" -"Please enter a valid zip code.","Geben Sie eine gültige PLZ ein." -"Please enter a valid zip code. For example 90602 or 90602-1234.","Geben Sie eine gültige Postleitzahl ein. Beispiel: 90602." -"Please enter another credit card number to complete your purchase.","Bitte geben Sie eine andere Kreditkarten-Nummer ein, um Ihren Kauf abzuschließen." -"Please enter password","Bitte Passwort eingeben" -"Please enter password to confirm rollback.","Zum Bestätigen des Zurücksetzens bitte Passwort eingeben" -"Please enter valid password.","Geben Sie ein gültiges Passwort ein." -"Please make sure that all global admin search modules are installed and activated.","Stellen Sie sicher, dass alle allgemeinen Admin-Suchmodule installiert und aktiviert sind." -"Please make sure that your changes were saved before running the profile.","Vergewissern Sie sich, dass vor Ausführung des Profils Ihre Änderungen gespeichert wurden." -"Please make sure your passwords match.","Achten Sie darauf, dass Ihre Passwörter übereinstimmen." -"Please select State/Province.","Wählen Sie bitte Staat/Bundesland aus." -"Please select a customer.","Wählen Sie einen Kunden aus." -"Please select a store.","Wählen Sie einen Laden aus." -"Please select an option.","Bitte wählen Sie eine Option." -"Please select catalog searches.","Wählen Sie Katalogsuchen aus." -"Please select customer(s).","Wählen Sie (einen) Kunden aus." -"Please select message(s).","Bitte Nachricht(en) auswählen." -"Please select one of the above options.","Wählen Sie bitte eine der obigen Optionen aus." -"Please select one of the options.","Wählen Sie eine der Optionen aus." -"Please select review(s).","Wählen Sie (eine) Beurteilung aus." -"Please specify backup creation options","Bitte die Optionen für die Ausführung des Backups bestimmen" -"Please specify the admin custom URL.","Geben Sie bitte die Admin-URL des Kunden ein." -"Please try to logout and sign in again.","Melden Sie sich ab und melden Sie sich dann erneut an." -"Please type the letters from the image:","Bitte geben Sie die Buchstaben auf diesem Bild ein:" -"Please use in this field only ""a-z,0-9,_"".","Bitte verwenden Sie in diesem Feld nur ""a-z,0-9._""." -"Please use letters only (a-z) in this field.","Benutzen Sie in diesem Feld bitte nur Buchstaben (a-z)." -"Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas.","Bitte verwenden Sie in diesem Feld nur Zahlen. Vermeiden Sie bitte Leerzeichen und andere Zeichen, wie Punkt oder Komma." -"Please use only letters (a-z or A-Z), numbers (0-9) or spaces in this field.","Geben Sie in dieses Feld bitte nur Buchstaben (a-z or A-Z), Ziffern (0-9) oder Leerzeichen ein." -"Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed.","Benutzen Sie in diesem Feld bitte nur Buchstaben (a-z) oder Ziffern (0-9). Erlaubt sind weder Leer- noch andere Zeichen." -"Please use only letters (a-z) or numbers (0-9) or spaces and # only in this field.","Geben Sie nur Buchstaben (a-z) oder Zahlen (0-9) oder Leerzeichen und das Rautenzeichen (#) in dieses Feld ein." -"Please use this date format: dd/mm/yyyy. For example 17/03/2006 for the 17th of March, 2006.","Verwenden Sie dieses Datumsformat: tt.mm.jjjj. Beispiel: 17.03.2006 für den 17. März 2006." -"Please wait while the indexes are being refreshed.","Die Indizes werden aktualisiert. Bitte haben Sie einen Moment Geduld." -"Please wait, loading...","Daten werden geladen, bitte warten ..." -"Please wait...","Bitte warten..." -"Popular","Beliebt" -"Position of Watermark for %s","Position des Wasserzeichens für %s" -"Pregenerated product images files.","Vorgenerierte Produktbilddateien." -"Prev. month (hold for menu)","Vormonat (für Menü gedrückt halten)" -"Prev. year (hold for menu)","Vorheriges Jahr (halten für Menü)" -"Preview","Vorschau" -"Preview Template","Vorlagenvorschau" -"Price","Preis" -"Price alert subscription was saved.","Preiswarnungsabo wurde gespeichert." -"Price:","Preis:" -"Processed %s%% %s/%d records","Verarbeitete %s%% %s/%d Datensätze" -"Product","Produkt" -"Product","Produktbezeichnung" -"Product Reviews","Produktbeurteilungen" -"Product Tax Classes","Produktsteuerklassen" -"Product Thumbnail Itself","Produktvorschau selbst" -"Product is not loaded.","Produkt wurde nicht geladen." -"Product:","Produkt:" -"Products","Produkte" -"Products Bestsellers Report","Bericht meistverkaufte Produkte" -"Products Most Viewed Report","Bericht zu den meistgesehenen Produkten" -"Products Ordered","Bestellte Produkte" -"Products in Carts","Produkte im Einkaufswagen" -"Profile Action","Profilaktion" -"Profile Actions XML","Profilaktionen XML" -"Profile Direction","Profilrichtung" -"Profile History","Profilverlauf" -"Profile Information","Profilinformationen" -"Profile Name","Profilname" -"Profile Payments","Profilzahlungen" -"Profile Schedule","Profile-Termine" -"Profile Wizard","Profil-Assistent" -"Profiles","Profile" -"Promo","Werbeaktion" -"Promotions","Werbeaktionen" -"Purchased Item","Gekaufter Artikel" -"Put store on the maintenance mode while backup creation","Versetzen Sie vor einer Sicherung den Speicher in den Wartungsmodus" -"Put store on the maintenance mode while rollback processing","Während der Durchführung der Wiederherstellung auf den Wartungsmodus verlassen" -"Quantity","Stückzahl" -"Queue Refresh","Warteschlange aktualisieren" -"Queued... Cancel","In Warteschlange ... Abbrechen" -"Radio Buttons","Optionsschaltflächen" -"Rates","Kurse" -"Read details","Details lesen" -"Rebuild","Erneut aufbauen" -"Rebuild Catalog Index","Katalogindex erneut aufbauen" -"Rebuild Flat Catalog Category","Flat Catalog-Kategorie erneut aufbauen" -"Rebuild Flat Catalog Product","Flat Catalog-Produkt erneut aufbauen" -"Recent Orders","Letzte Bestellungen" -"Recent statistics have been updated.","Neueste Statistiken sind aktualisiert worden." -"Recurring Profile View","Wiederkehrende Profilansicht" -"Recursive Dir","Rekursives Verz." -"Redirect","Umleiten" -"Reference","Verweis" -"Reference ID","Verweis-ID" -"Refresh","Aktualisieren" -"Refresh Now*","Jetzt aktualisieren*" -"Refresh Statistics","Statistiken aktualisieren" -"Region/State","Region/Staat" -"Regular Price:","Normalpreis:" -"Release","Freigeben" -"Release Stability","Stabilität freigeben" -"Release Version","Version freigeben" -"Reload captcha","Captcha neu laden" -"Remote FTP","Remote-FTP" -"Remove","Entfernen" -"Reports","Berichte" -"Request Path","Anforderungspfad" -"Required","Erforderlich" -"Reset","Zurücksetzen" -"Reset Filter","Filter zurücksetzen" -"Reset Password","Passwort zurücksetzen" -"Reset a Password","Passwort zurücksetzen" -"Resize","Größe ändern" -"Resource Access","Zugriff auf Ressource" -"Resources","Mittel" -"Results","Ergebenisse" -"Retrieve Password","Passwort abrufen" -"Return Html Version","HTML-Version ausgeben" -"Revenue","Umsatz" -"Reviews","Beurteilungen" -"Reviews and Ratings","Beurteilungen und Bewertungen" -"Rewrite Rules","Rewrite-Regeln" -"Role ID","Rollen-ID" -"Role Info","Rollen-Info" -"Role Information","Rollen-Informationen" -"Role Name","Rollenname" -"Role Resources","Rollen-Ressourcen" -"Role Users","Rollenbenutzer" -"Roles","Rollen" -"Roles Resources","Rollen-Ressourcen" -"Rotate CCW","Gegen den Uhrzeigersinn drehen" -"Rotate CW","Im Uhrzeigersinn drehen" -"Run","Ausführen" -"Run Profile","Profil ausführen" -"Run Profile Inside This Window","Profil in diesem Fenster ausführen" -"Run Profile in Popup","Profil in Popup ausführen" -"Running... Kill","Wird ausgeführt ... Beenden" -"SKU","Artikelposition" -"SKU:","SKU:" -"SSL Error: Invalid or self-signed certificate","SSL-Fehler: Ungültiges oder selbstsigniertes Zertifikat" -"Sales","Verkäufe" -"Sales Report","Umsatzbericht" -"Samples","Proben" -"Save","Speichern" -"Save & Generate","Sichern & Generieren" -"Save Account","Konto speichern" -"Save Cache Settings","Cache-Einstellungen speichern" -"Save Config","Konfig. speichern" -"Save Currency Rates","Wechselkurse speichern" -"Save Profile","Profil speichern" -"Save Role","Rolle speichern" -"Save Template","Vorlage speichern" -"Save User","Benutzer speichern" -"Save and Continue Edit","Speichern und Bearbeiten fortsetzen" -"Search","Suche" -"Search Index","Suchindex" -"Search Term","Suchbegriff" -"Search Terms","Suchbegriffe" -"Select","Auswählen" -"Select All","Alle auswählen" -"Select Category","Kategorie auswählen" -"Select Date","Datum selektieren" -"Select Range","Bereich auswählen" -"Select date","Datum wählen" -"Selected allowed currency ""%s"" is not available in installed currencies.","Die gewählte erlaubte Währung ""%s"" ist nicht in den installierten Währungen verfügbar." -"Selected base currency is not available in installed currencies.","Ausgewählte Basiswährung fehlt unter den installierten Währungen." -"Selected default display currency is not available in allowed currencies.","Die gewählte angezeigte Standardwährung ist nicht in den zulässigen Währungen verfügbar." -"Selected default display currency is not available in installed currencies.","Ausgewählte Standard-Anzeigewährung fehlt unter den installierten Währungen." -"Self-assigned roles cannot be deleted.","Selbst zugeordnete Rollen können nicht gelöscht werden." -"Sender","Absender" -"Separate Email","Separate E-Mail" -"Service Settings","Service-Einstellungen" -"Set up & Customize","Installation & Anpassung" -"Shipment #%s comment added","Lieferun Nr. %s - Kommentar hinzugefügt" -"Shipment #%s created","Sendung #%s erstellt" -"Shipment Comments","Lieferungskommentare" -"Shipment History","Lieferungsverlauf" -"Shipments","Lieferungen" -"Shipping","Lieferung" -"Shipping Address","Lieferadresse" -"Shipping Address: ","Versandadresse:" -"Shipping Origin","Herkunft der Lieferung" -"Shipping Price","Versandkosten" -"Shipping address selection is not applicable","Ausgewählte Lieferadresse ist nicht zutreffend" -"Shipping method must be specified.","Die Angabe der Versandart ist erforderlich." -"Shipping method selection is not applicable","Auswahl der Versandmethode ist nicht anwendbar" -"Shopping Cart","Einkaufswagen" -"Shopping Cart Price Rules","Preisvorschriften für den Einkaufswagen" -"Shopping Cart from %s","Einkaufswagen von %s" -"Show By","Einkaufen nach" -"Show Report For:","Bericht anzeigen für:" -"Show Reviews","Kurze Beurteilungen" -"Sitemap Information","Sitempa-Informationen" -"Size for %s","Größe für %s" -"Skip Category Selection","Kategorieauswahl überspringen" -"Some items in this order have different invoice and shipment types. You can create shipment only after the invoice is created.","Einige Artikel in dieser Bestellung haben unterschiedliche Rechnungs- und Liefertypen. Sie können eine Lieferung erst erstellen, nachdem eine Rechnung erstellt wurde." -"Some of the ordered items do not exist in the catalog anymore and will be removed if you try to edit the order.","Einige der bestellten Artikel werden nicht mehr im Katalog angeboten und werden entfernt, falls Sie versuchen, den Auftrag zu bearbeiten." -"Sorry, this feature is coming soon...","Leider ist dieses Angebot erst in Kürze erhältlich ..." -"Special Price:","Sezialpreis:" -"Specific Countries","Spezifische Länder" -"Specified","Angegeben" -"Specified profile does not exist.","Angegebenes Profil nicht vorhanden." -"Spreadsheet Name:","Name des Tabellenkalkulationsblattes:" -"Start Date","Startdatum" -"Starting profile execution, please wait...","Profilausführung wird gestartet, bitte warten ..." -"State/Province:","Bundesstaat/Provinz:" -"Static Blocks","Statische Blöcke" -"Status","Status" -"Status:","Status:" -"Stock Quantity:","Vorratsmenge:" -"Stock notification was saved.","Bestandsmeldung gesichert." -"Store","Laden" -"Store Email Addresses Section","Email-Adressdaten speichern" -"Store View","Ladenansicht" -"Store:","Speicher:" -"Stores","Läden" -"Subject","Betreff" -"Submit","Absenden" -"Subpackage cannot be conflicting.","Teilpaket darf nicht im Konflikt stehen." -"Subtotal","Zwischensumme" -"Switch/Solo/Maestro Only","Nur Switch/Solo/Maestro" -"Synchronization is required.","Synchronisation ist erforderlich." -"Synchronization of media storages has been successfully completed.","Synchronisation von Medien-Speichern wurde erfolgreich abgeschlossen." -"Synchronize","Synchronisieren" -"Synchronizing %s to %s","Synchronisierung von %s bis %s" -"Synchronizing...","Synchronisierung..." -"System","System" -"System Section","Systembereich" -"System busy","System belegt" -"Target Path","Zielpfad" -"Tax","Steuern" -"Tb","TB" -"Template","Vorlage" -"Template Content","Vorlageninhalt" -"Template Information","Vorlageninformation" -"Template","Vorlagenname" -"Template Styles","Vorlagenstile" -"Template Subject","Vorlagenthema" -"Template Type","Vorlagentyp" -"Temporary (302)","Temporary (302)" -"Terms and Conditions","AGB" -"Text","Text" -"The Catalog Rewrites were refreshed.","Die Katalog-Rewrites wurden aktualisiert." -"The CatalogInventory Stock Status has been rebuilt.","Der Status des Katalogbestandes ist aktualisiert worden." -"The Comment Text field cannot be empty.","Das Kommentarfeld ist auszufüllen." -"The Flat Catalog Product was rebuilt","Das Flat Catalog-Produkt wurde neu aufgebaut." -"The JavaScript/CSS cache has been cleaned.","Der JavaScript/CSS-Cache wurde bereinigt." -"The JavaScript/CSS cache has been cleared.","Der JavaScript/CSS-Cache ist bereinigt worden." -"The Layered Navigation indexing has been queued.","Die Layered Navigation-Indexerstellung wurde in die Warteschlange gestellt." -"The Layered Navigation indexing queue has been canceled.","Die Warteschlange für die Layered Navigation-Indexerstellung wurde storniert." -"The Layered Navigation indices were refreshed.","Die Layered Navigation-Indizes wurden aktualisiert." -"The Layered Navigation process has been queued to be killed.","Der Layered Navigation-Vorgang wurde zum Beenden in die Warteschlange gestellt." -"The Magento cache storage has been flushed.","Der Magento-Cachespeicher ist geleert worden." -"The URL Rewrite has been deleted.","Das URL-Rewrite wurde gelöscht." -"The URL Rewrite has been saved.","Das URL-Rewrite wurde gespeichert." -"The account has been saved.","Das Konto wurde gespeichert." -"The archive can be uncompressed with %s on Windows systems","Das Archiv kann mit % s auf Windows-Systemen dekomprimiert werden." -"The attribute set has been removed.","Die Attributmenge wurde entfernt." -"The backup's creation process will take time.","Das Erstellen der Sicherungskopie dauert einige Zeit." -"The billing agreement has been canceled.","Die Rechnungsvereinbarung wurde storniert." -"The billing agreement has been deleted.","Die Rechnungsvereinbarung wurde gelöscht." -"The cache storage has been flushed.","Der Cache-Speicher wurde geleert." -"The carrier needs to be specified.","Der Spediteur muss spezifiziert werden." -"The catalog index has been rebuilt.","Der Katalogindex wurde neu aufgebaut." -"The catalog rewrites have been refreshed.","Die Katalog-Rewrites wurden aktualisiert." -"The configuration has been saved.","Die Konfiguration wurde gespeichert." -"The credit memo has been canceled.","Die Gutschrift wurde storniert." -"The credit memo has been created.","Die Gutschrift wurde erstellt." -"The credit memo has been voided.","Die Gutschrift ist nicht länger gültig." -"The custom variable has been deleted.","Die benutzerdefinierte Variable wurde gelöscht." -"The custom variable has been saved.","Die Kundenvariable ist gespeichert worden." -"The customer has been deleted.","Der Kunde wurde gelöscht." -"The customer has been saved.","Der Kunde ist gespeichert worden." -"The design change has been deleted.","Die Designänderung wurde gelöscht." -"The design change has been saved.","Die Designänderung wurde gespeichert." -"The email address is empty.","Die E-Mail-Adresse ist leer." -"The email template has been deleted.","Die Emailvorlage ist gelöscht worden." -"The email template has been saved.","Die E-Mail-Vorlage wurde gespeichert." -"The flat catalog category has been rebuilt.","Die Flat Catalog Category ist neu erstellt worden." -"The group node name must be specified with field node name.","Der Gruppen-Node-Name muss mit dem Feld-Node-Namen angegeben werden." -"The image cache was cleaned.","Der Bild-Cache wurde bereinigt." -"The image cache was cleared.","Der Bild-Cache wurde geleert." -"The invoice and shipment have been created.","Die Rechnung und die Lieferung wurden erstellt." -"The invoice and the shipment have been created. The shipping label cannot be created at the moment.","Rechnung und Versand wurden erstellt. Das Versandetikett kann derzeit nicht erstellt werden." -"The invoice has been canceled.","Die Rechnung wurde storniert." -"The invoice has been captured.","Die Rechnung wurde erfasst." -"The invoice has been created.","Die Rechnung wurde erstellt." -"The invoice has been voided.","Die Rechnung ist für nichtig erklärt worden." -"The invoice no longer exists.","Die Rechnung ist nicht mehr vorhanden." -"The item %s (SKU %s) does not exist in the catalog anymore.","Der Artikel %s (SKU %s) ist nicht mehr im Katalog vorhanden." -"The order does not allow creating an invoice.","Der Auftrag erlaubt keine Rechnungserstellung." -"The order no longer exists.","Der Auftrag besteht nicht mehr." -"The profile has been deleted.","Das Profil wurde gelöscht." -"The profile has been saved.","Das Profil ist gespeichert worden." -"The profile has been updated.","Das Profil wurde aktualisiert." -"The profile has no changes.","Das Profil hat keine Änderungen." -"The profile you are trying to save no longer exists","Das Profil, das Sie speichern wollen, ist nicht mehr vorhanden" -"The rating has been deleted.","Die Bewertung ist gelöscht worden." -"The rating has been saved.","Die Bewertung wurde gespeichert." -"The role has been deleted.","Die Rolle wurde gelöscht." -"The role has been saved.","Die Rolle wurde gespeichert." -"The role has been successfully saved.","Die Rolle wurde erfolgreich gespeichert." -"The search index has been rebuilt.","Der Suchindex wurde neu aufgebaut." -"The shipment has been created.","Die Lieferung wurde erstellt." -"The shipment has been sent.","Die Sendung ist ausgeliefert worden." -"The shipping label has been created.","Das Versandlabel wurde erstellt." -"The transaction details have been updated.","Die Transaktionsdetails sind aktualisiert worden." -"The user has been deleted.","Der Benutzer wurde gelöscht." -"The user has been saved.","Der Benutzer ist gespeichert worden." -"Themes JavaScript and CSS files combined to one file.","Themes JavaScript- und CSS-Dateien in eine Datei kombiniert." -"There is an error in one of the option rows.","In einer der Optionszeilen ist ein Fehler." -"This Account is","Dieses Konto ist" -"This Email template no longer exists.","Diese E-Mail-Vorlage existiert nicht mehr." -"This Role no longer exists","Diese Rolle gibt es nicht mehr." -"This Role no longer exists.","Diese Rolle existiert nicht mehr." -"This account is","Dieses Konto ist" -"This account is inactive.","Dieses Konto ist inaktiv." -"This action cannot be undone.","Diese Aktion kann nicht rückgängig gemacht werden." -"This attribute set does not have attributes which we can use for configurable product","Diese Attributmenge enthält keine Attribute, die wir für konfigurierbare Produkte verwenden können." -"This attribute shares the same value in all the stores","Dieses Attribut hat denselben Wert in allen Läden." -"This is a demo store. Any orders placed through this store will not be honored or fulfilled.","Dies ist ein Demo-Handel. In diesem Geschäft aufgegebene Bestellungen werden weder akzeptiert noch ausgeführt." -"This is a required field.","Dies ist ein Pflichtfeld." -"This product is currently disabled.","Dieses Produkt ist zur Zeit deaktiviert." -"This report depends on timezone configuration. Once timezone is changed, the lifetime statistics need to be refreshed.","Dieser Bericht hängt von der Zeitzonenkonfiguration ab. Nachdem die Zeitzone geändert wurde, müssen die Lebenszeitstatistiken aktualisiert werden." -"This section is not allowed.","Kein Zugang zu diesem Bereich." -"This user no longer exists.","Dieser Benutzer existiert nicht mehr." -"Time","Zeit" -"Time selection:","Gewählte Zeit:" -"Time:","Zeit:" -"Timeout limit for response from synchronize process was reached.","Zeitlimit für die Antwort auf den Synchronisierungsvorgang wurde überschritten." -"To","Nach" -"To cancel pending authorizations and release amounts that have already been processed during this payment, click Cancel.","Zum Abbrechen anhängiger Genehmigungen und zur Freigabe von Beträge, die bereits während dieser Zahlung bearbeitet wurden, klicken Sie auf Abbrechen." -"To use PayPal Payflow Link you must configure some settings in your Payflow account by logging into","Um den Payflow Link zu benutzen, müssen Sie Ihr Payflow Link-Konto auf der Paypal-Website konfigurieren." -"To use PayPal Payments Advanced you must configure some settings in your PayPal Payments Advanced account by logging into","Um PayPal Payments Advanced zu nutzen, müssen Sie einige Einstellungen in Ihrem PayPal Payments Advanced-Konto vornehmen, indem Sie sich einloggen" -"Toggle Editor","Zum Editor wechseln" -"Tools","Werkzeuge" -"Top 5 Search Terms","Oberste 5 Suchbegriffe" -"Total","Gesamt" -"Total Invoiced","Rechnungssumme" -"Total","Auftrags-Gesamtbetrag" -"Total Refunded","Erstattete Summe" -"Total of %d record(s) have been deleted.","Insgesamt %d Datensatz/Datensätze wurde(n) gelöscht." -"Total of %d record(s) have been updated.","Insgeamt %d Datensätze wurden aktualisiert." -"Total of %d record(s) were canceled.","Insgesamt %d Eintragung(en) wurden gelöscht." -"Total of %d record(s) were deleted","Insgesamt wurde(n) %d Aufzeichnung(en) gelöscht" -"Total of %d record(s) were deleted.","Ingesamt wurde(n) %d Aufzeichnung(en) gelöscht" -"Total of %d record(s) were updated","Insgeamt wurde(n) %d Aufzeichnung(en) aktualisiert" -"Total of %d record(s) were updated.","Insgeamt wurde(n) %d Aufzeichnung(en) aktualisiert" -"Track Order","Bestellung verfolgen" -"Track this shipment","Diese Lieferung verfolgen" -"Tracking number %s for %s assigned","Auftragsverfolgungsnummer %s für %s zugeordnet" -"Tracking number cannot be empty.","Nummer zum Verlaufsstatus kann nicht leer sein." -"Transaction Data","Transaktionsdaten" -"Transaction Details","Transaktionsdetails" -"Transaction ID","Transaktions-ID" -"Transaction Type","Transaktionstyp" -"Transactional Emails","E-Mails zur Transaktion" -"Transactions","Transaktionen" -"Type","Typ" -"Type:","Typ:" -"URL Rewrite","URL-Rewrite" -"URL Rewrite Information","URL-Rewrite-Information" -"URL Rewrite Management","URL-Rewrite-Verwaltung" -"Unable to cancel the credit memo.","Gutschrift kann nicht storniert werden." -"Unable to find a Email Template to delete.","Keine E-Mail-Vorlage zum Löschen gefunden." -"Unable to find a user to delete.","Kein zu löschender Benutzer auffindbar." -"Unable to initialize import model","Importmodell kann nicht initialisiert werden." -"Unable to refresh lifetime statistics.","Lebenszeitstatistik kann nicht aktualisiert werden." -"Unable to refresh recent statistics.","Letzte Statistik kann nicht aktualisiert werden." -"Unable to save Cron expression","Chron. Ausdruck kann nicht gespeichert werden." -"Unable to save the cron expression.","Chron. Ausdruck kann nicht gespeichert werden." -"Unable to save the invoice.","Rechnung kann nicht gespeichert werden." -"Unable to send the invoice email.","E-Mail mit Rechnung kann nicht gesendet werden." -"Unable to send the shipment email.","Versand-Email kann nicht gesendet werden." -"Unable to update transaction details.","Die Angaben zu Ihrer Transaktion konnten nicht aktualisiert werden." -"Unable to void the credit memo.","Gutschrift kann nicht ungültig gemacht werden." -"Unknown","Unbekannt" -"Unlimited","Unbegrenzt" -"Update","Aktualisieren" -"Updated At","Aktualisiert um" -"Upload File","Datei hochladen" -"Upload Files","Dateien hochladen" -"Upload HTTP Error","HTTP-Fehler hochladen" -"Upload I/O Error","Ein-/Ausgabefehler beim Hochladen" -"Upload Security Error","Security-Fehler hochladen" -"Upload import file","Importdatei hochladen" -"Uploaded file is larger than %.2f kilobytes allowed by server","Hochgeladene Datei ist %.2f Kilobytes größer als der Server ermöglicht." -"Use All Available Attributes","Alle verfügbaren Attribute verwenden" -"Use Config Settings","Konfig.-Einstellungen verwenden" -"Use Default","Standard verwenden" -"Use Default Value","Standardwert verwenden" -"Use Default Variable Values","Standardvariablenwerte verwenden" -"Use FTP Connection","FTP-Verbindung verwenden" -"Use Website","Website verwenden" -"Used Currently For","Zurzeit verwendet für" -"Used as Default For","Als Standard Genutzt Für" -"User Email","Benutzer-Email" -"User ID","Benutzer-ID" -"User Info","Benutzerinfo" -"User Information","Benutzer-Information" -"User Name","Benutzername" -"User Name is required field.","Das Feld 'Benutzername' muss ausgefüllt werden." -"User Name:","Benutzername:" -"User Password","Benutzerpasswort" -"User Role","Benutzerrolle" -"User Roles","Benutzerrollen" -"User Roles Information","Informationen zu Benutzerrollen" -"User name","Benutzername" -"Users","Benutzer" -"VAT Number is Invalid","Umsatzsteuer-Identifikationsnummer ist Ungültig" -"VAT Number is Valid","Umsatzsteuer-Identifikationsnummer ist Gültig" -"Validation Results","Prüfergebnisse" -"Value","Wert" -"Value Delimiter:","Wertbegrenzer:" -"Variable","Variable" -"Variable Code","Variabler Code" -"Variable HTML Value","Variabler HTML-Wert" -"Variable ID","Variablen-ID" -"Variable Name","Name der Variablen" -"Variable Plain Value","Einfacher Variablenwert" -"View Actions XML","XML mit Aktionen anzeigen" -"View Full Size","Gesamtgröße ansehen" -"View Memo","Memo anzeigen" -"View Memo for #%s","Siehe Memo für #%s" -"View Shipment","Lieferung anzeigen" -"View Statistics For:","Statistiken einsehen für:" -"Visibility:","Sichtbarkeit:" -"Warning","Warnung" -"Warning! Empty value can cause problems with CSV format.","Warnhinweis! Ein leerer Wert kann Probleme beim CSV-Format verursachen." -"Warning!\r\nThis action will remove this user from already assigned role\r\nAre you sure?","Warnmeldung!\r\nDurch diese Aktion wird dieser Benutzer von einer bereits zugewiesenen Rolle entfernt.\r\nAktion dennoch ausführen?" -"Warning!\r\nThis action will remove those users from already assigned roles\r\nAre you sure?","Warnung!\r\nSie sind dabei, diese Anwender von bereits zugeordneten Rollen zu entfernen\r\nSind Sie sicher?" -"Warning: Please do not close the window during importing/exporting data","Warnhinweis: Schließen Sie das Fenster nicht, während Daten importiert/exportiert werden." -"Watermark File for %s","Wasserzeichendatei für %s" -"We appreciate our merchants\' feedback, please take our survey to provide insight on the features you would like included in Magento. Remove this notification","Das Feedback unserer\' Händler ist uns wichtig, bitte Nehmen Sie an unserer Umfrage teil, um uns einen Einblick in die Funktionen zu vermitteln, die Sie sich in Magento wünschen. Diese Mitteilung entfernen" -"We\'re in our typing table, coding away more features for Magento. Thank you for your patience.","Wir arbeiten zurzeit an der Entwicklung neuer Angebote für Magento. Vielen Dank für Ihre Geduld." -"Web Section","Webbereich" -"Web Services","Webdienste" -"Web services","Web Services" -"Website","Website" -"What is this?","Was ist das?" -"Wishlist Report","Wunschlistenbericht" -"Wishlist item is not loaded.","Der Artikel auf der Wunschliste wird nicht geladen." -"Wrong account specified.","Falsches Konto angegeben." -"Wrong billing agreement ID specified.","Falsche Zahlungsvereinbarungs-ID angegeben." -"Wrong column format.","Falsches Spaltenformat." -"Wrong newsletter template.","Falsche Newsletter-Vorlage." -"Wrong quote item.","Falsches Inhaltselement." -"Wrong tab configuration.","Fehlerhafte Konfiguration der Registerkarte." -"Wrong transaction ID specified.","Falsche Transaktions-ID angegeben." -"XML","XML" -"XML data is invalid.","XML-Daten sind ungültig." -"XML object is not instance of ""Magento\Simplexml\Element"".","XML-Objekt ist kein ""Magento\Simplexml\Element""." -"YTD","Jahr bis Datum" -"Year","Jahr" -"Yes","Ja" -"Yes (301 Moved Permanently)","Ja (301 dauerhaft entfernt)" -"Yes (302 Found)","Ja (302 gefunden)" -"Yes (only price with tax)","Ja (nur Preis mit Steuer)" -"You cannot delete your own account.","Sie können Ihren eigenen Account nicht löschen." -"You have %s unread message(s).","Sie haben %s ungelesene Nachricht(en)." -"You have %s unread message(s). Go to messages inbox.","Sie haben %s ungelesene Nachricht(en). Gehen Sie zum Posteingang." -"You have %s, %s and %s unread messages. Go to messages inbox.","Sie haben %s, %s und %s ungelesene Nachrichten. Gehen Sie zum Posteingang." -"You have logged out.","Sie haben sich abgemeldet." -"You have not enough permissions to use this functionality.","Sie haben keine ausreichenden Berechtigungen für die Verwendung dieser Funktion." -"You must have JavaScript enabled in your browser to utilize the functionality of this website.","Sie müssen JavaScript in Ihrem Browser aktiviert haben, damit die Funktionen der Webseite ordnungsgemäß genutzt werden können." -"You need to specify order items.","Sie müssen Bestellartikel angeben." -"You will need to wait when the action ends.","Sie werden das Ende der Aktion abwarten müssen." -"Your answers contain duplicates.","Ihre Antworten enthalten Duplikate." -"Your password has been updated.","Ihr Passwort wurde geändert." -"Your password reset link has expired.","Der Link für das Resetten Ihres Passworts ist abgelaufen." -"Your server PHP settings allow you to upload files not more than %s at a time. Please modify post_max_size (currently is %s) and upload_max_filesize (currently is %s) values in php.ini if you want to upload larger files.","Die PHP-Einstellungen Ihres Servers ermöglichen Ihnen das Hochladen von Dateien mit maximal %s gleichzeitig. Bitte ändern Sie die Werte für post_max_size (aktueller Wert: %s) und upload_max_filesize (aktueller Wert: %s) in der php.ini-Datei, wenn Sie größere Dateien hochladen möchten." -"Your web server is configured incorrectly. As a result, configuration files with sensitive information are accessible from the outside. Please contact your hosting provider.","Ihr Webserver ist falsch konfiguriert. Als Ergebnis sind Konfigurationsdateien mit sensiblen Informationen von außen zugänglich. Bitte kontaktieren Sie Ihren Hosting-Anbieter." -"Zip/Postal Code","Postleitzahl" -"Zip/Postal Code:","Postleitzahl:" -"[ deleted ]","[gelöscht]" -"[GLOBAL]","[GLOBAL]" -"[STORE VIEW]","[LADENANSICHT]" -"[WEBSITE]","[WEBSEITE]" -"b","b" -"close","schließen" -"critical","kritisch" -"example: ""sitemap/"" or ""/"" for base path (path must be writeable)","Beispiel: ""Sitemap/"" oder ""/"" für den Basis-Pfad (Pfad muss beschreibbar sein)" -"example: sitemap.xml","example: sitemap.xml" -"failed","fehlgeschlagen" -"from","von" -"major","größer" -"minor","kleiner" -"notice","Bemerkung" -"store(%s) scope","Laden(%s)-Umfang" -"successful","erfolgreich" -"to","bis" -"website(%s) scope","Website(%s)-Umfang" -"{{base_url}} is not recommended to use in a production environment to declare the Base Unsecure URL / Base Secure URL. It is highly recommended to change this value in your Magento configuration.","{{base_url}} wird nicht empfohlen, in einer Produktionsumgebung zu verwenden, um die Base als Unsichere URL / Base Sicher URL zu erklären. Es wird dringend empfohlen, diesen Wert in Ihrer Magento-Konfiguration zu ändern." diff --git a/app/code/Magento/Adminhtml/i18n/en_US.csv b/app/code/Magento/Adminhtml/i18n/en_US.csv deleted file mode 100644 index 1ed1af94ffb71..0000000000000 --- a/app/code/Magento/Adminhtml/i18n/en_US.csv +++ /dev/null @@ -1,1162 +0,0 @@ -" The customer does not exist in the system anymore."," The customer does not exist in the system anymore." -" You will need to navigate to your "," You will need to navigate to your " -" [deleted]"," [deleted]" -" and "," and " -" and go to the "," and go to the " -" sections for your Hosted Checkout Pages."," sections for your Hosted Checkout Pages." -"%s (Default Template from Locale)","%s (Default Template from Locale)" -"%s cache type(s) disabled.","%s cache type(s) disabled." -"%s cache type(s) enabled.","%s cache type(s) enabled." -"%s cache type(s) refreshed.","%s cache type(s) refreshed." -"(For Type ""Local Server"" need to use relative path to Magento install var/export or var/import, e.g. var/export, var/import, var/export/some/dir, var/import/some/dir)","(For Type ""Local Server"" need to use relative path to Magento install var/export or var/import, e.g. var/export, var/import, var/export/some/dir, var/import/some/dir)" -"(For US 2-letter state names)","(For US 2-letter state names)" -"(If left empty will be auto-generated)","(If left empty will be auto-generated)" -"(Leave empty for first spreadsheet)","(Leave empty for first spreadsheet)" -"(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)","(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)" -"(Shift-)Click or drag to change value","(Shift-)Click or drag to change value" -"(Starting with)","(Starting with)" -"(When 'No', only mapped fields will be imported. When mapping, use 'column1', 'column2', etc.)","(When 'No', only mapped fields will be imported. When mapping, use 'column1', 'column2', etc.)" -"(You have to increase php memory_limit before changing this value)","(You have to increase php memory_limit before changing this value)" -"(\\t for tab)","(\\t for tab)" -"* - If indexing is in progress, it will be killed and new indexing process will start.","* - If indexing is in progress, it will be killed and new indexing process will start." -"- Click on any of the time parts to increase it","- Click on any of the time parts to increase it" -"- Hold mouse button on any of the above buttons for faster selection.","- Hold mouse button on any of the above buttons for faster selection." -"- Use the %s buttons to select month","- Use the %s buttons to select month" -"- Use the %s, %s buttons to select year","- Use the %s, %s buttons to select year" -"- or Shift-click to decrease it","- or Shift-click to decrease it" -"- or click and drag for faster selection.","- or click and drag for faster selection." -"-- Not Selected --","-- Not Selected --" -"-- Please Select --","-- Please Select --" -"-- Please Select Billing Agreement--","-- Please Select Billing Agreement--" -"-- Please Select a Category --","-- Please Select a Category --" -"-- Please select --","-- Please select --" -"--Please Select--","--Please Select--" -"1 Hour","1 Hour" -"1. set up","1. set up" -"12 Hours","12 Hours" -"12h AM/PM","12h AM/PM" -"2 Hours","2 Hours" -"2. customize","2. customize" -"24 Hours","24 Hours" -"24h","24h" -"2YTD","2YTD" -"6 Hours","6 Hours" -"

404 Error

Page not found.

","

404 Error

Page not found.

" -"Attention: Captcha is case sensitive.","Attention: Captcha is case sensitive." -"A user with the same user name or email aleady exists.","A user with the same user name or email aleady exists." -"API Key","API Key" -"API Key Confirmation","API Key Confirmation" -"ASCII","ASCII" -"Abandoned Carts","Abandoned Carts" -"About the calendar","About the calendar" -"Access Denied","Access Denied" -"Access denied","Access denied" -"Access denied.","Access denied." -"Account Created in:","Account Created in:" -"Account Created on (%s):","Account Created on (%s):" -"Account Created on:","Account Created on:" -"Account Information","Account Information" -"Account Status","Account Status" -"Account status","Account status" -"Action","Action" -"Actions","Actions" -"Actions XML","Actions XML" -"Active","Active" -"Add","Add" -"Add \Exception","Add \Exception" -"Add Field Mapping","Add Field Mapping" -"Add Field with URL:","Add Field with URL:" -"Add New","Add New" -"Add New Image","Add New Image" -"Add New Profile","Add New Profile" -"Add New Role","Add New Role" -"Add New Template","Add New Template" -"Add New URL Rewrite","Add New URL Rewrite" -"Add New User","Add New User" -"Add New Variable","Add New Variable" -"Add Products","Add Products" -"Add URL Rewrite","Add URL Rewrite" -"Add URL Rewrite for a Category","Add URL Rewrite for a Category" -"Add URL Rewrite for a Product","Add URL Rewrite for a Product" -"Add after","Add after" -"Additional Cache Management","Additional Cache Management" -"Address Type:","Address Type:" -"Admin","Admin" -"Advanced Admin Section","Advanced Admin Section" -"Advanced Profiles","Advanced Profiles" -"Advanced Section","Advanced Section" -"All","All" -"All Allowed Countries","All Allowed Countries" -"All Cache","All Cache" -"All Files","All Files" -"All Reviews","All Reviews" -"All Store Views","All Store Views" -"All Websites","All Websites" -"All countries","All countries" -"All fields","All fields" -"All possible rates were fetched, please click on ""Save"" to apply","All possible rates were fetched, please click on ""Save"" to apply" -"All rates were fetched, please click on ""Save"" to apply","All rates were fetched, please click on ""Save"" to apply" -"All valid rates have been saved.","All valid rates have been saved." -"Always (during development)","Always (during development)" -"Amounts","Amounts" -"An error has occurred while syncronizing media storages.","An error has occurred while syncronizing media storages." -"An error occurred while clearing the JavaScript/CSS cache.","An error occurred while clearing the JavaScript/CSS cache." -"An error occurred while clearing the image cache.","An error occurred while clearing the image cache." -"An error occurred while deleting URL Rewrite.","An error occurred while deleting URL Rewrite." -"An error occurred while deleting email template data. Please review log and try again.","An error occurred while deleting email template data. Please review log and try again." -"An error occurred while deleting record(s).","An error occurred while deleting record(s)." -"An error occurred while deleting this role.","An error occurred while deleting this role." -"An error occurred while deleting this set.","An error occurred while deleting this set." -"An error occurred while deleting this template.","An error occurred while deleting this template." -"An error occurred while finishing process. Please refresh the cache","An error occurred while finishing process. Please refresh the cache" -"An error occurred while rebuilding the CatalogInventory Stock Status.","An error occurred while rebuilding the CatalogInventory Stock Status." -"An error occurred while rebuilding the catalog index.","An error occurred while rebuilding the catalog index." -"An error occurred while rebuilding the flat catalog category.","An error occurred while rebuilding the flat catalog category." -"An error occurred while rebuilding the flat product catalog.","An error occurred while rebuilding the flat product catalog." -"An error occurred while rebuilding the search index.","An error occurred while rebuilding the search index." -"An error occurred while refreshing the Catalog Rewrites.","An error occurred while refreshing the Catalog Rewrites." -"An error occurred while refreshing the Layered Navigation indices.","An error occurred while refreshing the Layered Navigation indices." -"An error occurred while refreshing the catalog rewrites.","An error occurred while refreshing the catalog rewrites." -"An error occurred while refreshing the layered navigation indices.","An error occurred while refreshing the layered navigation indices." -"An error occurred while saving URL Rewrite.","An error occurred while saving URL Rewrite." -"An error occurred while saving account.","An error occurred while saving account." -"An error occurred while saving review.","An error occurred while saving review." -"An error occurred while saving the customer.","An error occurred while saving the customer." -"An error occurred while saving this configuration:","An error occurred while saving this configuration:" -"An error occurred while saving this role.","An error occurred while saving this role." -"An error occurred while saving this template.","An error occurred while saving this template." -"An error occurred while updating the selected review(s).","An error occurred while updating the selected review(s)." -"Any","Any" -"Any Attribute Set","Any Attribute Set" -"Any Group","Any Group" -"Any Status","Any Status" -"Any Store","Any Store" -"Any Type","Any Type" -"Any Visibility","Any Visibility" -"Any data created since the backup was made will be lost including admin users, customers and orders.","Any data created since the backup was made will be lost including admin users, customers and orders." -"Archive file name:","Archive file name:" -"Are you sure that you want to delete this template?","Are you sure that you want to delete this template?" -"Are you sure that you want to strip tags?","Are you sure that you want to strip tags?" -"Are you sure you want to do this?","Are you sure you want to do this?" -"Are you sure you want to proceed?","Are you sure you want to proceed?" -"Area","Area" -"As low as:","As low as:" -"Assigned","Assigned" -"Attribute Set Name:","Attribute Set Name:" -"Attributes","Attributes" -"Automatic (equalize price ranges)","Automatic (equalize price ranges)" -"Automatic (equalize product counts)","Automatic (equalize product counts)" -"Average","Average" -"Average Orders","Average Orders" -"BINARY","BINARY" -"Back","Back" -"Back to Login","Back to Login" -"Backup","Backup" -"Backup Name","Backup Name" -"Backup options","Backup options" -"Backups","Backups" -"Base currency","Base currency" -"Bcc","Bcc" -"Bestsellers","Bestsellers" -"Billing Address","Billing Address" -"Billing Address: ","Billing Address: " -"Billing Agreement","Billing Agreement" -"Billing Agreements","Billing Agreements" -"Block Information","Block Information" -"Both (without and with tax)","Both (without and with tax)" -"Both IPN and PDT","Both IPN and PDT" -"Browse Files...","Browse Files..." -"Bundle with dynamic pricing cannot include custom defined options. Options will not be saved.","Bundle with dynamic pricing cannot include custom defined options. Options will not be saved." -"CMS","CMS" -"CRITICAL","CRITICAL" -"CSV","CSV" -"CSV / Tab separated","CSV / Tab separated" -"Cache Control","Cache Control" -"Cache Control (beta)","Cache Control (beta)" -"Cache Management","Cache Management" -"Cache Type","Cache Type" -"Cancel","Cancel" -"Cannot add new comment.","Cannot add new comment." -"Cannot add tracking number.","Cannot add tracking number." -"Cannot create an invoice without products.","Cannot create an invoice without products." -"Cannot create credit memo for the order.","Cannot create credit memo for the order." -"Cannot delete the design change.","Cannot delete the design change." -"Cannot delete tracking number.","Cannot delete tracking number." -"Cannot do shipment for the order separately from invoice.","Cannot do shipment for the order separately from invoice." -"Cannot do shipment for the order.","Cannot do shipment for the order." -"Cannot initialize shipment for adding tracking number.","Cannot initialize shipment for adding tracking number." -"Cannot initialize shipment for delete tracking number.","Cannot initialize shipment for delete tracking number." -"Cannot load track with retrieving identifier.","Cannot load track with retrieving identifier." -"Cannot retrieve tracking number detail.","Cannot retrieve tracking number detail." -"Cannot save shipment.","Cannot save shipment." -"Cannot save the credit memo.","Cannot save the credit memo." -"Cannot send shipment information.","Cannot send shipment information." -"Cannot update item quantity.","Cannot update item quantity." -"Cannot update the item\'s quantity.","Cannot update the item\'s quantity." -"Card Verification Number","Card Verification Number" -"Catalog","Catalog" -"Catalog Price Rules","Catalog Price Rules" -"Catalog Rewrites","Catalog Rewrites" -"Categories","Categories" -"Category:","Category:" -"Chart is disabled. If you want to enable chart, click here.","Chart is disabled. If you want to enable chart, click here." -"Checkbox","Checkbox" -"Child Transactions","Child Transactions" -"Choose Store View:","Choose Store View:" -"Choose an attribute","Choose an attribute" -"Chosen category does not associated with any website, so url rewrite is not possible.","Chosen category does not associated with any website, so url rewrite is not possible." -"Chosen product does not associated with any website, so url rewrite is not possible.","Chosen product does not associated with any website, so url rewrite is not possible." -"Clear","Clear" -"Close","Close" -"Comment text field cannot be empty.","Comment text field cannot be empty." -"Complete","Complete" -"Configuration","Configuration" -"Confirm New Password","Confirm New Password" -"Confirmed email:","Confirmed email:" -"Connect with the Magento Community","Connect with the Magento Community" -"Continue","Continue" -"Convert to Plain Text","Convert to Plain Text" -"Cookie (unsafe)","Cookie (unsafe)" -"Country","Country" -"Country:","Country:" -"Coupons","Coupons" -"Create","Create" -"Create DB Backup","Create DB Backup" -"Create New Attribute","Create New Attribute" -"Create URL Rewrite:","Create URL Rewrite:" -"Created At","Created At" -"Credit Card %s","Credit Card %s" -"Credit Card Number","Credit Card Number" -"Credit Card Number: xxxx-%s","Credit Card Number: xxxx-%s" -"Credit Card Type","Credit Card Type" -"Credit Card Type: %s","Credit Card Type: %s" -"Credit Memo History","Credit Memo History" -"Credit Memo Totals","Credit Memo Totals" -"Credit Memos","Credit Memos" -"Credit memo #%s comment added","Credit memo #%s comment added" -"Credit memo #%s created","Credit memo #%s created" -"Credit memo\'s total must be positive.","Credit memo\'s total must be positive." -"Currency","Currency" -"Currency ""%s"" is used as %s in %s.","Currency ""%s"" is used as %s in %s." -"Currency Information","Currency Information" -"Currency Setup Section","Currency Setup Section" -"Current Configuration Scope:","Current Configuration Scope:" -"Current Month","Current Month" -"Custom","Custom" -"Custom Variable ""%s""","Custom Variable ""%s""" -"Custom Variables","Custom Variables" -"Customer","Customer" -"Customer Group:","Customer Group:" -"Customer Groups","Customer Groups" -"Customer","Customer" -"Customer Reviews","Customer Reviews" -"Customer Shopping Carts","Customer Shopping Carts" -"Customer Since:","Customer Since:" -"Customer Tax Classes","Customer Tax Classes" -"Customer with the same email already exists.","Customer with the same email already exists." -"Customers","Customers" -"Customers by Orders","Customers by Orders" -"Customers by Orders Total","Customers by Orders Total" -"DHTML Date/Time Selector","DHTML Date/Time Selector" -"Dashboard","Dashboard" -"Data Format","Data Format" -"Data transfer:","Data transfer:" -"Database","Database" -"Date","Date" -"Date & Time","Date & Time" -"Added","Added" -"Updated","Updated" -"Date selection:","Date selection:" -"Date selector","Date selector" -"Day","Day" -"Decimal separator:","Decimal separator:" -"Default (Admin) Values","Default (Admin) Values" -"Default Billing Address","Default Billing Address" -"Default Config","Default Config" -"Default Template from Locale","Default Template from Locale" -"Default Values","Default Values" -"Default display currency ""%s"" is not available in allowed currencies.","Default display currency ""%s"" is not available in allowed currencies." -"Default scope","Default scope" -"Delete","Delete" -"Delete %s","Delete %s" -"Delete %s '%s'","Delete %s '%s'" -"Delete File","Delete File" -"Delete Image","Delete Image" -"Delete Profile","Delete Profile" -"Delete Role","Delete Role" -"Delete Store","Delete Store" -"Delete Store View","Delete Store View" -"Delete Template","Delete Template" -"Delete User","Delete User" -"Delete Website","Delete Website" -"Description","Description" -"Design","Design" -"Design Section","Design Section" -"Details","Details" -"Developer Section","Developer Section" -"Direction:","Direction:" -"Disable","Disable" -"Disabled","Disabled" -"Display %s first","Display %s first" -"Display default currency","Display default currency" -"Distributed under GNU LGPL. See %s for details.","Distributed under GNU LGPL. See %s for details." -"Do you really want to KILL parallel process and start new indexing process?","Do you really want to KILL parallel process and start new indexing process?" -"Do you really want to proceed?","Do you really want to proceed?" -"Download","Download" -"Downloads","Downloads" -"Drag to move","Drag to move" -"Drop-down","Drop-down" -"Edit","Edit" -"Edit Design Change","Edit Design Change" -"Edit Email Template","Edit Email Template" -"Edit Order","Edit Order" -"Edit Queue","Edit Queue" -"Edit Review","Edit Review" -"Edit Role","Edit Role" -"Edit Store View","Edit Store View" -"Edit System Template","Edit System Template" -"Edit Template","Edit Template" -"Edit URL Rewrite","Edit URL Rewrite" -"Edit User","Edit User" -"Edit User '%s'","Edit User '%s'" -"Edit Website","Edit Website" -"Email","Email" -"Email Address:","Email Address:" -"Email Preview","Email Preview" -"Email to a Friend","Email to a Friend" -"Email:","Email:" -"Enable","Enable" -"Enabled","Enabled" -"Enclose Values In:","Enclose Values In:" -"Entity Attributes","Entity Attributes" -"Entity Type","Entity Type" -"Entity type:","Entity type:" -"Error","Error" -"Excel XML","Excel XML" -"Excl. Tax","Excl. Tax" -"Exclude media folder from backup","Exclude media folder from backup" -"Expiration Date","Expiration Date" -"Expiration Date: %s/%s","Expiration Date: %s/%s" -"Export","Export" -"Export CSV","Export CSV" -"Export Filters","Export Filters" -"Export to:","Export to:" -"Export:","Export:" -"FTP Host","FTP Host" -"FTP Host[:Port]","FTP Host[:Port]" -"FTP Login","FTP Login" -"FTP Password","FTP Password" -"FTP credentials","FTP credentials" -"Failed to add a product to cart by id ""%s"".","Failed to add a product to cart by id ""%s""." -"Failed to cancel the billing agreement.","Failed to cancel the billing agreement." -"Failed to clear the JavaScript/CSS cache.","Failed to clear the JavaScript/CSS cache." -"Failed to delete the billing agreement.","Failed to delete the billing agreement." -"Failed to update the profile.","Failed to update the profile." -"Field","Field" -"Field Mapping","Field Mapping" -"File","File" -"File Information","File Information" -"File System","File System" -"File mode","File mode" -"File name:","File name:" -"File size should be more than 0 bytes","File size should be more than 0 bytes" -"Finished profile execution.","Finished profile execution." -"First Invoice Created Date","First Invoice Created Date" -"First Name","First Name" -"First Name is required field.","First Name is required field." -"First Name:","First Name:" -"Fixed","Fixed" -"Flush Catalog Images Cache","Flush Catalog Images Cache" -"Flush JavaScript/CSS Cache","Flush JavaScript/CSS Cache" -"For category","For category" -"For latest version visit: %s","For latest version visit: %s" -"For product","For product" -"Forgot Admin Password","Forgot Admin Password" -"Forgot your password?","Forgot your password?" -"Forgot your user name or password?","Forgot your user name or password?" -"From","From" -"GLOBAL","GLOBAL" -"Gb","Gb" -"General Information","General Information" -"General Section","General Section" -"Get Image Base64","Get Image Base64" -"Get help for this page","Get help for this page" -"Global Attribute","Global Attribute" -"Global Record Search","Global Record Search" -"Global Search","Global Search" -"Go Today","Go Today" -"Go to messages inbox","Go to messages inbox" -"Go to notifications","Go to notifications" -"Google Base","Google Base" -"Google Content","Google Content" -"Google Sitemaps","Google Sitemaps" -"Grand Total","Grand Total" -"Grid (default) / List","Grid (default) / List" -"Grid Only","Grid Only" -"Group:","Group:" -"Guest","Guest" -"HTTP (unsecure)","HTTP (unsecure)" -"HTTPS (SSL)","HTTPS (SSL)" -"Help Us Keep Magento Healthy - Report All Bugs","Help Us Keep Magento Healthy - Report All Bugs" -"Helper attributes should not be used in custom layout updates.","Helper attributes should not be used in custom layout updates." -"Helper for options rendering doesn't implement required interface.","Helper for options rendering doesn't implement required interface." -"Home","Home" -"ID","ID" -"ID Path","ID Path" -"IP Address","IP Address" -"IPN (Instant Payment Notification) Only","IPN (Instant Payment Notification) Only" -"If there is an account associated with %s you will receive an email with a link to reset your password.","If there is an account associated with %s you will receive an email with a link to reset your password." -"If this message persists, please contact the store owner.","If this message persists, please contact the store owner." -"Images (.gif, .jpg, .png)","Images (.gif, .jpg, .png)" -"Images Cache","Images Cache" -"Import","Import" -"Import Service","Import Service" -"Import and Export","Import and Export" -"Import and Export Tax Rates","Import and Export Tax Rates" -"Import/Export","Import/Export" -"Import/Export Advanced","Import/Export Advanced" -"Import/Export Profile","Import/Export Profile" -"Important: ","Important: " -"Imported %s records","Imported %s records" -"In","In" -"In Database:","In Database:" -"In File:","In File:" -"Inactive","Inactive" -"Incl. Tax","Incl. Tax" -"Incoming Message","Incoming Message" -"Insert Variable...","Insert Variable..." -"Interactive","Interactive" -"Interface Locale: %s","Interface Locale: %s" -"Invalid Form Key. Please refresh the page.","Invalid Form Key. Please refresh the page." -"Invalid Import Service Specified","Invalid Import Service Specified" -"Invalid POST data (please check post_max_size and upload_max_filesize settings in your php.ini file).","Invalid POST data (please check post_max_size and upload_max_filesize settings in your php.ini file)." -"Invalid Secret Key. Please refresh the page.","Invalid Secret Key. Please refresh the page." -"Invalid User Name or Password.","Invalid User Name or Password." -"Invalid directory: %s","Invalid directory: %s" -"Invalid email address ""%s"".","Invalid email address ""%s""." -"Invalid email address.","Invalid email address." -"Invalid file: %s","Invalid file: %s" -"Invalid input data for %s => %s rate","Invalid input data for %s => %s rate" -"Invalid parent block for this block","Invalid parent block for this block" -"Invalid parent block for this block.","Invalid parent block for this block." -"Invalid password reset token.","Invalid password reset token." -"Invalid sender name ""%s"". Please use only visible characters and spaces.","Invalid sender name ""%s"". Please use only visible characters and spaces." -"Invalid timezone","Invalid timezone" -"Invalidated","Invalidated" -"Inventory Stock Status","Inventory Stock Status" -"Invoice #%s comment added","Invoice #%s comment added" -"Invoice #%s created","Invoice #%s created" -"Invoice History","Invoice History" -"Invoice Totals","Invoice Totals" -"Invoice canceling error.","Invoice canceling error." -"Invoice capturing error.","Invoice capturing error." -"Invoice voiding error.","Invoice voiding error." -"Invoices","Invoices" -"Is Closed","Is Closed" -"Issue Number","Issue Number" -"Items","Items" -"JavaScript seems to be disabled in your browser.","JavaScript seems to be disabled in your browser." -"JavaScript/CSS","JavaScript/CSS" -"JavaScript/CSS Cache","JavaScript/CSS Cache" -"Kb","Kb" -"Last 24 Hours","Last 24 Hours" -"Last 5 Orders","Last 5 Orders" -"Last 5 Search Terms","Last 5 Search Terms" -"Last 7 Days","Last 7 Days" -"Last Credit Memo Created Date","Last Credit Memo Created Date" -"Last Invoice Created Date","Last Invoice Created Date" -"Last Logged In (%s):","Last Logged In (%s):" -"Last Logged In:","Last Logged In:" -"Last Name","Last Name" -"Last Name is required field.","Last Name is required field." -"Last Name:","Last Name:" -"Last updated: %s. To refresh last day\'s statistics, click here.","Last updated: %s. To refresh last day\'s statistics, click here." -"Latest Message:","Latest Message:" -"Layered Navigation Indices","Layered Navigation Indices" -"Layered Navigation Indices were refreshed.","Layered Navigation Indices were refreshed." -"Leave empty to use tax identifier","Leave empty to use tax identifier" -"Lifetime Sales","Lifetime Sales" -"Lifetime statistics have been updated.","Lifetime statistics have been updated." -"Links","Links" -"Links with associated products will retain only after saving current product.","Links with associated products will retain only after saving current product." -"List (default) / Grid","List (default) / Grid" -"List Only","List Only" -"Load Template","Load Template" -"Load default template","Load default template" -"Loading...","Loading..." -"Local Server","Local Server" -"Local/Remote Server","Local/Remote Server" -"Locale","Locale" -"Log Out","Log Out" -"Log in to Admin Panel","Log in to Admin Panel" -"Log into Magento Admin Page","Log into Magento Admin Page" -"Logged in as %s","Logged in as %s" -"Login","Login" -"Low Stock","Low Stock" -"MAJOR","MAJOR" -"MINOR","MINOR" -"MS Excel XML","MS Excel XML" -"Magento Admin","Magento Admin" -"Magento Commerce - Administrative Panel","Magento Commerce - Administrative Panel" -"Magento Connect","Magento Connect" -"Magento Connect Manager","Magento Connect Manager" -"Magento Logo","Magento Logo" -"Magento is a trademark of X.commerce, Inc. Copyright © %s X.commerce, Inc.","Magento is a trademark of X.commerce, Inc. Copyright © %s X.commerce, Inc." -"Magento root directory","Magento root directory" -"Magento ver. %s","Magento ver. %s" -"Magento® is a trademark of X.commerce, Inc.
Copyright © %s X.commerce, Inc.","Magento® is a trademark of X.commerce, Inc.
Copyright © %s X.commerce, Inc." -"Make sure that data encoding in the file is consistent and saved in one of supported encodings (UTF-8 or ANSI).","Make sure that data encoding in the file is consistent and saved in one of supported encodings (UTF-8 or ANSI)." -"Manage Attribute Sets","Manage Attribute Sets" -"Manage Attributes","Manage Attributes" -"Manage Categories","Manage Categories" -"Manage Content","Manage Content" -"Manage Currency Rates","Manage Currency Rates" -"Manage Customers","Manage Customers" -"Manage Ratings","Manage Ratings" -"Manage Stores","Manage Stores" -"Manage Tax Rules","Manage Tax Rules" -"Manage Tax Zones and Rates","Manage Tax Zones and Rates" -"Manual","Manual" -"Matched Expression","Matched Expression" -"Mb","Mb" -"Media (.avi, .flv, .swf)","Media (.avi, .flv, .swf)" -"Media storages synchronization has completed!","Media storages synchronization has completed!" -"Messages Inbox","Messages Inbox" -"Month","Month" -"Most Viewed","Most Viewed" -"Most Viewed Products","Most Viewed Products" -"Multiple Select","Multiple Select" -"My Account","My Account" -"N/A","N/A" -"NOTICE","NOTICE" -"Name","Name" -"Name on Card","Name on Card" -"Name on the Card: %s","Name on the Card: %s" -"Name:","Name:" -"Never (production)","Never (production)" -"New ","New " -"New API Key","New API Key" -"New Accounts","New Accounts" -"New Attribute","New Attribute" -"New Block","New Block" -"New Category","New Category" -"New Class","New Class" -"New Condition","New Condition" -"New Custom Variable","New Custom Variable" -"New Customer","New Customer" -"New Customers","New Customers" -"New Design Change","New Design Change" -"New Email Template","New Email Template" -"New Group","New Group" -"New Invoice","New Invoice" -"New Item Type","New Item Type" -"New Memo","New Memo" -"New Memo for #%s","New Memo for #%s" -"New Page","New Page" -"New Password","New Password" -"New Profile","New Profile" -"New Rate","New Rate" -"New Rating","New Rating" -"New Review","New Review" -"New Role","New Role" -"New Rule","New Rule" -"New Search","New Search" -"New Set","New Set" -"New Shipment","New Shipment" -"New Sitemap","New Sitemap" -"New Store View","New Store View" -"New System Template","New System Template" -"New Template","New Template" -"New User","New User" -"New Variable","New Variable" -"New Website","New Website" -"New attribute set mapping","New attribute set mapping" -"New password field cannot be empty.","New password field cannot be empty." -"Newsletter","Newsletter" -"Newsletter Problems","Newsletter Problems" -"Newsletter Queue","Newsletter Queue" -"Newsletter Subscribers","Newsletter Subscribers" -"Newsletter Templates","Newsletter Templates" -"Next month (hold for menu)","Next month (hold for menu)" -"Next year (hold for menu)","Next year (hold for menu)" -"No","No" -"No (price without tax)","No (price without tax)" -"No Data","No Data" -"No Data Found","No Data Found" -"No Templates Found","No Templates Found" -"No change","No change" -"No customer id defined.","No customer id defined." -"No information available.","No information available." -"No profile loaded...","No profile loaded..." -"No records found for this period.","No records found for this period." -"No records found.","No records found." -"No report code specified.","No report code specified." -"No search keywords.","No search keywords." -"No search modules were registered","No search modules were registered" -"No wishlist item id defined.","No wishlist item id defined." -"None","None" -"Note:","Note:" -"Notes","Notes" -"Notifications","Notifications" -"Orders","Orders" -"Uses","Uses" -"Views","Views" -"Number of records:","Number of records:" -"OK","OK" -"Old rate:","Old rate:" -"One or more media files failed to be synchronized during the media storages syncronization process. Refer to the log file for details.","One or more media files failed to be synchronized during the media storages syncronization process. Refer to the log file for details." -"One or more of the Cache Types are invalidated:","One or more of the Cache Types are invalidated:" -"Online Customers","Online Customers" -"Only Once (version upgrade)","Only Once (version upgrade)" -"Only attributes with scope ""Global"", input type ""Dropdown"" and Use To Create Configurable Product ""Yes"" are available.","Only attributes with scope ""Global"", input type ""Dropdown"" and Use To Create Configurable Product ""Yes"" are available." -"Only mapped fields","Only mapped fields" -"Optional","Optional" -"Options","Options" -"Order","Order" -"Order %s","Order %s" -"Order %s (%s)","Order %s (%s)" -"Order Created Date","Order Created Date" -"Order ID","Order ID" -"Order Totals","Order Totals" -"Order Updated Date","Order Updated Date" -"Order Updated Date report is real-time, does not need statistics refreshing.","Order Updated Date report is real-time, does not need statistics refreshing." -"Orders","Orders" -"Original Magento attribute names in first row:","Original Magento attribute names in first row:" -"Out of stock","Out of stock" -"PDT (Payment Data Transfer) Only","PDT (Payment Data Transfer) Only" -"Package Extensions","Package Extensions" -"Pages","Pages" -"Parent Product Thumbnail","Parent Product Thumbnail" -"Parent Transaction ID","Parent Transaction ID" -"Passive mode","Passive mode" -"Password","Password" -"Password Confirmation","Password Confirmation" -"Password confirmation must be same as password.","Password confirmation must be same as password." -"Password must be at least of %d characters.","Password must be at least of %d characters." -"Password must include both numeric and alphabetic characters.","Password must include both numeric and alphabetic characters." -"Password:","Password:" -"Path:","Path:" -"PayPal Manager","PayPal Manager" -"Payment method instance is not available.","Payment method instance is not available." -"Payment method is not available.","Payment method is not available." -"Payment method must be specified.","Payment method must be specified." -"Pending Reviews","Pending Reviews" -"Per Item","Per Item" -"Per Order","Per Order" -"Percent","Percent" -"Performed At","Performed At" -"Interval","Interval" -"Permanent (301)","Permanent (301)" -"Permissions","Permissions" -"Personal Information","Personal Information" -"Phone:","Phone:" -"Please Select","Please Select" -"Please confirm site switching. All data that hasn\'t been saved will be lost.","Please confirm site switching. All data that hasn\'t been saved will be lost." -"Please enter 6 or more characters.","Please enter 6 or more characters." -"Please enter a number greater than 0 in this field.","Please enter a number greater than 0 in this field." -"Please enter a valid $ amount. For example $100.00.","Please enter a valid $ amount. For example $100.00." -"Please enter a valid URL. For example http://www.example.com or www.example.com","Please enter a valid URL. For example http://www.example.com or www.example.com" -"Please enter a valid URL. http:// is required","Please enter a valid URL. http:// is required" -"Please enter a valid credit card number.","Please enter a valid credit card number." -"Please enter a valid date.","Please enter a valid date." -"Please enter a valid email address. For example johndoe@domain.com.","Please enter a valid email address. For example johndoe@domain.com." -"Please enter a valid email.","Please enter a valid email." -"Please enter a valid number in this field.","Please enter a valid number in this field." -"Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890.","Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890." -"Please enter a valid social security number. For example 123-45-6789.","Please enter a valid social security number. For example 123-45-6789." -"Please enter a valid value from list","Please enter a valid value from list" -"Please enter a valid value, ex: 10,20,30","Please enter a valid value, ex: 10,20,30" -"Please enter a valid zip code.","Please enter a valid zip code." -"Please enter a valid zip code. For example 90602 or 90602-1234.","Please enter a valid zip code. For example 90602 or 90602-1234." -"Please enter another credit card number to complete your purchase.","Please enter another credit card number to complete your purchase." -"Please enter password","Please enter password" -"Please enter password to confirm rollback.","Please enter password to confirm rollback." -"Please enter valid password.","Please enter valid password." -"Please make sure that all global admin search modules are installed and activated.","Please make sure that all global admin search modules are installed and activated." -"Please make sure that your changes were saved before running the profile.","Please make sure that your changes were saved before running the profile." -"Please make sure your passwords match.","Please make sure your passwords match." -"Please select State/Province.","Please select State/Province." -"Please select a customer.","Please select a customer." -"Please select a store.","Please select a store." -"Please select an option.","Please select an option." -"Please select catalog searches.","Please select catalog searches." -"Please select customer(s).","Please select customer(s)." -"Please select message(s).","Please select message(s)." -"Please select one of the above options.","Please select one of the above options." -"Please select one of the options.","Please select one of the options." -"Please select review(s).","Please select review(s)." -"Please specify backup creation options","Please specify backup creation options" -"Please specify the admin custom URL.","Please specify the admin custom URL." -"Please try to logout and sign in again.","Please try to logout and sign in again." -"Please type the letters from the image:","Please type the letters from the image:" -"Please use in this field only ""a-z,0-9,_"".","Please use in this field only ""a-z,0-9,_""." -"Please use letters only (a-z) in this field.","Please use letters only (a-z) in this field." -"Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas.","Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas." -"Please use only letters (a-z or A-Z), numbers (0-9) or spaces in this field.","Please use only letters (a-z or A-Z), numbers (0-9) or spaces in this field." -"Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed.","Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed." -"Please use only letters (a-z) or numbers (0-9) or spaces and # only in this field.","Please use only letters (a-z) or numbers (0-9) or spaces and # only in this field." -"Please use this date format: dd/mm/yyyy. For example 17/03/2006 for the 17th of March, 2006.","Please use this date format: dd/mm/yyyy. For example 17/03/2006 for the 17th of March, 2006." -"Please wait while the indexes are being refreshed.","Please wait while the indexes are being refreshed." -"Please wait, loading...","Please wait, loading..." -"Please wait...","Please wait..." -"Popular","Popular" -"Position of Watermark for %s","Position of Watermark for %s" -"Pregenerated product images files.","Pregenerated product images files." -"Prev. month (hold for menu)","Prev. month (hold for menu)" -"Prev. year (hold for menu)","Prev. year (hold for menu)" -"Preview","Preview" -"Preview Template","Preview Template" -"Price","Price" -"Price alert subscription was saved.","Price alert subscription was saved." -"Price:","Price:" -"Processed %s%% %s/%d records","Processed %s%% %s/%d records" -"Product","Product" -"Product","Product" -"Product Reviews","Product Reviews" -"Product Tax Classes","Product Tax Classes" -"Product Thumbnail Itself","Product Thumbnail Itself" -"Product is not loaded.","Product is not loaded." -"Product:","Product:" -"Products","Products" -"Products Bestsellers Report","Products Bestsellers Report" -"Products Most Viewed Report","Products Most Viewed Report" -"Products Ordered","Products Ordered" -"Products in Carts","Products in Carts" -"Profile Action","Profile Action" -"Profile Actions XML","Profile Actions XML" -"Profile Direction","Profile Direction" -"Profile History","Profile History" -"Profile Information","Profile Information" -"Profile Name","Profile Name" -"Profile Payments","Profile Payments" -"Profile Schedule","Profile Schedule" -"Profile Wizard","Profile Wizard" -"Profiles","Profiles" -"Promo","Promo" -"Promotions","Promotions" -"Purchased Item","Purchased Item" -"Put store on the maintenance mode while backup creation","Put store on the maintenance mode while backup creation" -"Put store on the maintenance mode while rollback processing","Put store on the maintenance mode while rollback processing" -"Quantity","Quantity" -"Queue Refresh","Queue Refresh" -"Queued... Cancel","Queued... Cancel" -"Radio Buttons","Radio Buttons" -"Rates","Rates" -"Read details","Read details" -"Rebuild","Rebuild" -"Rebuild Catalog Index","Rebuild Catalog Index" -"Rebuild Flat Catalog Category","Rebuild Flat Catalog Category" -"Rebuild Flat Catalog Product","Rebuild Flat Catalog Product" -"Recent Orders","Recent Orders" -"Recent statistics have been updated.","Recent statistics have been updated." -"Recurring Profile View","Recurring Profile View" -"Recursive Dir","Recursive Dir" -"Redirect","Redirect" -"Reference","Reference" -"Reference ID","Reference ID" -"Refresh","Refresh" -"Refresh Now*","Refresh Now*" -"Refresh Statistics","Refresh Statistics" -"Region/State","Region/State" -"Regular Price:","Regular Price:" -"Release","Release" -"Release Stability","Release Stability" -"Release Version","Release Version" -"Reload captcha","Reload captcha" -"Remote FTP","Remote FTP" -"Remove","Remove" -"Reports","Reports" -"Request Path","Request Path" -"Required","Required" -"Reset","Reset" -"Reset Filter","Reset Filter" -"Reset Password","Reset Password" -"Reset a Password","Reset a Password" -"Resize","Resize" -"Resource Access","Resource Access" -"Resources","Resources" -"Results","Results" -"Retrieve Password","Retrieve Password" -"Return Html Version","Return Html Version" -"Revenue","Revenue" -"Reviews","Reviews" -"Reviews and Ratings","Reviews and Ratings" -"Rewrite Rules","Rewrite Rules" -"Role ID","Role ID" -"Role Info","Role Info" -"Role Information","Role Information" -"Role Name","Role Name" -"Role Resources","Role Resources" -"Role Users","Role Users" -"Roles","Roles" -"Roles Resources","Roles Resources" -"Rotate CCW","Rotate CCW" -"Rotate CW","Rotate CW" -"Run","Run" -"Run Profile","Run Profile" -"Run Profile Inside This Window","Run Profile Inside This Window" -"Run Profile in Popup","Run Profile in Popup" -"Running... Kill","Running... Kill" -"SKU","SKU" -"SKU:","SKU:" -"SSL Error: Invalid or self-signed certificate","SSL Error: Invalid or self-signed certificate" -"Sales","Sales" -"Sales Report","Sales Report" -"Samples","Samples" -"Save","Save" -"Save & Generate","Save & Generate" -"Save Account","Save Account" -"Save Cache Settings","Save Cache Settings" -"Save Config","Save Config" -"Save Currency Rates","Save Currency Rates" -"Save Profile","Save Profile" -"Save Role","Save Role" -"Save Template","Save Template" -"Save User","Save User" -"Save and Continue Edit","Save and Continue Edit" -"Search","Search" -"Search Index","Search Index" -"Search Term","Search Term" -"Search Terms","Search Terms" -"Select","Select" -"Select All","Select All" -"Select Category","Select Category" -"Select Date","Select Date" -"Select Range","Select Range" -"Select date","Select date" -"Selected allowed currency ""%s"" is not available in installed currencies.","Selected allowed currency ""%s"" is not available in installed currencies." -"Selected base currency is not available in installed currencies.","Selected base currency is not available in installed currencies." -"Selected default display currency is not available in allowed currencies.","Selected default display currency is not available in allowed currencies." -"Selected default display currency is not available in installed currencies.","Selected default display currency is not available in installed currencies." -"Self-assigned roles cannot be deleted.","Self-assigned roles cannot be deleted." -"Sender","Sender" -"Separate Email","Separate Email" -"Service Settings","Service Settings" -"Set up & Customize","Set up & Customize" -"Shipment #%s comment added","Shipment #%s comment added" -"Shipment #%s created","Shipment #%s created" -"Shipment Comments","Shipment Comments" -"Shipment History","Shipment History" -"Shipments","Shipments" -"Shipping","Shipping" -"Shipping Address","Shipping Address" -"Shipping Address: ","Shipping Address: " -"Shipping Origin","Shipping Origin" -"Shipping Price","Shipping Price" -"Shipping address selection is not applicable","Shipping address selection is not applicable" -"Shipping method must be specified.","Shipping method must be specified." -"Shipping method selection is not applicable","Shipping method selection is not applicable" -"Shopping Cart","Shopping Cart" -"Shopping Cart Price Rules","Shopping Cart Price Rules" -"Shopping Cart from %s","Shopping Cart from %s" -"Show By","Show By" -"Show Report For:","Show Report For:" -"Show Reviews","Show Reviews" -"Sitemap Information","Sitemap Information" -"Size for %s","Size for %s" -"Skip Category Selection","Skip Category Selection" -"Some items in this order have different invoice and shipment types. You can create shipment only after the invoice is created.","Some items in this order have different invoice and shipment types. You can create shipment only after the invoice is created." -"Some of the ordered items do not exist in the catalog anymore and will be removed if you try to edit the order.","Some of the ordered items do not exist in the catalog anymore and will be removed if you try to edit the order." -"Sorry, this feature is coming soon...","Sorry, this feature is coming soon..." -"Special Price:","Special Price:" -"Specific Countries","Specific Countries" -"Specified","Specified" -"Specified profile does not exist.","Specified profile does not exist." -"Spreadsheet Name:","Spreadsheet Name:" -"Start Date","Start Date" -"Starting profile execution, please wait...","Starting profile execution, please wait..." -"State/Province:","State/Province:" -"Static Blocks","Static Blocks" -"Status","Status" -"Status:","Status:" -"Stock Quantity:","Stock Quantity:" -"Stock notification was saved.","Stock notification was saved." -"Store","Store" -"Store Email Addresses Section","Store Email Addresses Section" -"Store View","Store View" -"Store:","Store:" -"Stores","Stores" -"Subject","Subject" -"Submit","Submit" -"Subpackage cannot be conflicting.","Subpackage cannot be conflicting." -"Subtotal","Subtotal" -"Switch/Solo card issue number: %s","Switch/Solo card issue number: %s" -"Switch/Solo card start Date: %s/%s","Switch/Solo card start Date: %s/%s" -"Switch/Solo/Maestro Only","Switch/Solo/Maestro Only" -"Switch/Solo/Maestro(UK Domestic) Only","Switch/Solo/Maestro(UK Domestic) Only" -"Switch/Solo/Maestro(UK Domestic) card issue number: %s","Switch/Solo/Maestro(UK Domestic) card issue number: %s" -"Switch/Solo/Maestro(UK Domestic) card start Date: %s/%s","Switch/Solo/Maestro(UK Domestic) card start Date: %s/%s" -"Symbol","Symbol" -"Synchronization is required.","Synchronization is required." -"Synchronization of media storages has been successfully completed.","Synchronization of media storages has been successfully completed." -"Synchronize","Synchronize" -"Synchronizing %s to %s","Synchronizing %s to %s" -"Synchronizing...","Synchronizing..." -"System","System" -"System Section","System Section" -"System busy","System busy" -"Target Path","Target Path" -"Tax","Tax" -"Tb","Tb" -"Template","Template" -"Template Content","Template Content" -"Template Information","Template Information" -"Template","Template" -"Template Styles","Template Styles" -"Template Subject","Template Subject" -"Template Type","Template Type" -"Temporary (302)","Temporary (302)" -"Terms and Conditions","Terms and Conditions" -"Text","Text" -"The Catalog Rewrites were refreshed.","The Catalog Rewrites were refreshed." -"The CatalogInventory Stock Status has been rebuilt.","The CatalogInventory Stock Status has been rebuilt." -"The Comment Text field cannot be empty.","The Comment Text field cannot be empty." -"The Flat Catalog Product was rebuilt","The Flat Catalog Product was rebuilt" -"The JavaScript/CSS cache has been cleaned.","The JavaScript/CSS cache has been cleaned." -"The JavaScript/CSS cache has been cleared.","The JavaScript/CSS cache has been cleared." -"The Layered Navigation indexing has been queued.","The Layered Navigation indexing has been queued." -"The Layered Navigation indexing queue has been canceled.","The Layered Navigation indexing queue has been canceled." -"The Layered Navigation indices were refreshed.","The Layered Navigation indices were refreshed." -"The Layered Navigation process has been queued to be killed.","The Layered Navigation process has been queued to be killed." -"The Magento cache storage has been flushed.","The Magento cache storage has been flushed." -"The URL Rewrite has been deleted.","The URL Rewrite has been deleted." -"The URL Rewrite has been saved.","The URL Rewrite has been saved." -"The account has been saved.","The account has been saved." -"The archive can be uncompressed with %s on Windows systems","The archive can be uncompressed with %s on Windows systems" -"The attribute set has been removed.","The attribute set has been removed." -"The backup's creation process will take time.","The backup's creation process will take time." -"The billing agreement has been canceled.","The billing agreement has been canceled." -"The billing agreement has been deleted.","The billing agreement has been deleted." -"The cache storage has been flushed.","The cache storage has been flushed." -"The carrier needs to be specified.","The carrier needs to be specified." -"The catalog index has been rebuilt.","The catalog index has been rebuilt." -"The catalog rewrites have been refreshed.","The catalog rewrites have been refreshed." -"The configuration has been saved.","The configuration has been saved." -"The credit memo has been canceled.","The credit memo has been canceled." -"The credit memo has been created.","The credit memo has been created." -"The credit memo has been voided.","The credit memo has been voided." -"The custom variable has been deleted.","The custom variable has been deleted." -"The custom variable has been saved.","The custom variable has been saved." -"The customer has been deleted.","The customer has been deleted." -"The customer has been saved.","The customer has been saved." -"The design change has been deleted.","The design change has been deleted." -"The design change has been saved.","The design change has been saved." -"The email address is empty.","The email address is empty." -"The email template has been deleted.","The email template has been deleted." -"The email template has been saved.","The email template has been saved." -"The flat catalog category has been rebuilt.","The flat catalog category has been rebuilt." -"The group node name must be specified with field node name.","The group node name must be specified with field node name." -"The image cache was cleaned.","The image cache was cleaned." -"The image cache was cleared.","The image cache was cleared." -"The invoice and shipment have been created.","The invoice and shipment have been created." -"The invoice and the shipment have been created. The shipping label cannot be created at the moment.","The invoice and the shipment have been created. The shipping label cannot be created at the moment." -"The invoice has been canceled.","The invoice has been canceled." -"The invoice has been captured.","The invoice has been captured." -"The invoice has been created.","The invoice has been created." -"The invoice has been voided.","The invoice has been voided." -"The invoice no longer exists.","The invoice no longer exists." -"The item %s (SKU %s) does not exist in the catalog anymore.","The item %s (SKU %s) does not exist in the catalog anymore." -"The order does not allow creating an invoice.","The order does not allow creating an invoice." -"The order no longer exists.","The order no longer exists." -"The profile has been deleted.","The profile has been deleted." -"The profile has been saved.","The profile has been saved." -"The profile has been updated.","The profile has been updated." -"The profile has no changes.","The profile has no changes." -"The profile you are trying to save no longer exists","The profile you are trying to save no longer exists" -"The rating has been deleted.","The rating has been deleted." -"The rating has been saved.","The rating has been saved." -"The role has been deleted.","The role has been deleted." -"The role has been saved.","The role has been saved." -"The role has been successfully saved.","The role has been successfully saved." -"The search index has been rebuilt.","The search index has been rebuilt." -"The shipment has been created.","The shipment has been created." -"The shipment has been sent.","The shipment has been sent." -"The shipping label has been created.","The shipping label has been created." -"The transaction details have been updated.","The transaction details have been updated." -"The user has been deleted.","The user has been deleted." -"The user has been saved.","The user has been saved." -"Themes JavaScript and CSS files combined to one file.","Themes JavaScript and CSS files combined to one file." -"There is an error in one of the option rows.","There is an error in one of the option rows." -"This Account is","This Account is" -"This Email template no longer exists.","This Email template no longer exists." -"This Role no longer exists","This Role no longer exists" -"This Role no longer exists.","This Role no longer exists." -"This account is","This account is" -"This account is inactive.","This account is inactive." -"This action cannot be undone.","This action cannot be undone." -"This attribute set does not have attributes which we can use for configurable product","This attribute set does not have attributes which we can use for configurable product" -"This attribute shares the same value in all the stores","This attribute shares the same value in all the stores" -"This is a demo store. Any orders placed through this store will not be honored or fulfilled.","This is a demo store. Any orders placed through this store will not be honored or fulfilled." -"This is a required field.","This is a required field." -"This product is currently disabled.","This product is currently disabled." -"This report depends on timezone configuration. Once timezone is changed, the lifetime statistics need to be refreshed.","This report depends on timezone configuration. Once timezone is changed, the lifetime statistics need to be refreshed." -"This section is not allowed.","This section is not allowed." -"This user no longer exists.","This user no longer exists." -"Time","Time" -"Time selection:","Time selection:" -"Time:","Time:" -"Timeout limit for response from synchronize process was reached.","Timeout limit for response from synchronize process was reached." -"To","To" -"To cancel pending authorizations and release amounts that have already been processed during this payment, click Cancel.","To cancel pending authorizations and release amounts that have already been processed during this payment, click Cancel." -"To use PayPal Payflow Link you must configure some settings in your Payflow account by logging into","To use PayPal Payflow Link you must configure some settings in your Payflow account by logging into" -"To use PayPal Payments Advanced you must configure some settings in your PayPal Payments Advanced account by logging into","To use PayPal Payments Advanced you must configure some settings in your PayPal Payments Advanced account by logging into" -"Toggle Editor","Toggle Editor" -"Tools","Tools" -"Top 5 Search Terms","Top 5 Search Terms" -"Total","Total" -"Total Invoiced","Total Invoiced" -"Total","Total" -"Total Refunded","Total Refunded" -"Total of %d record(s) have been deleted.","Total of %d record(s) have been deleted." -"Total of %d record(s) have been updated.","Total of %d record(s) have been updated." -"Total of %d record(s) were canceled.","Total of %d record(s) were canceled." -"Total of %d record(s) were deleted","Total of %d record(s) were deleted" -"Total of %d record(s) were deleted.","Total of %d record(s) were deleted." -"Total of %d record(s) were updated","Total of %d record(s) were updated" -"Total of %d record(s) were updated.","Total of %d record(s) were updated." -"Track Order","Track Order" -"Track this shipment","Track this shipment" -"Tracking number %s for %s assigned","Tracking number %s for %s assigned" -"Tracking number cannot be empty.","Tracking number cannot be empty." -"Transaction Data","Transaction Data" -"Transaction Details","Transaction Details" -"Transaction ID","Transaction ID" -"Transaction Type","Transaction Type" -"Transactional Emails","Transactional Emails" -"Transactions","Transactions" -"Try Magento Go for Free","Try Magento Go for Free" -"Type","Type" -"Type:","Type:" -"URL Rewrite","URL Rewrite" -"URL Rewrite Information","URL Rewrite Information" -"URL Rewrite Management","URL Rewrite Management" -"Unable to cancel the credit memo.","Unable to cancel the credit memo." -"Unable to find a Email Template to delete.","Unable to find a Email Template to delete." -"Unable to find a user to delete.","Unable to find a user to delete." -"Unable to initialize import model","Unable to initialize import model" -"Unable to refresh lifetime statistics.","Unable to refresh lifetime statistics." -"Unable to refresh recent statistics.","Unable to refresh recent statistics." -"Unable to save Cron expression","Unable to save Cron expression" -"Unable to save the cron expression.","Unable to save the cron expression." -"Unable to save the invoice.","Unable to save the invoice." -"Unable to send the invoice email.","Unable to send the invoice email." -"Unable to send the shipment email.","Unable to send the shipment email." -"Unable to update transaction details.","Unable to update transaction details." -"Unable to void the credit memo.","Unable to void the credit memo." -"Unknown","Unknown" -"Unlimited","Unlimited" -"Update","Update" -"Updated At","Updated At" -"Upload File","Upload File" -"Upload Files","Upload Files" -"Upload HTTP Error","Upload HTTP Error" -"Upload I/O Error","Upload I/O Error" -"Upload Security Error","Upload Security Error" -"Upload import file","Upload import file" -"Uploaded file is larger than %.2f kilobytes allowed by server","Uploaded file is larger than %.2f kilobytes allowed by server" -"Use All Available Attributes","Use All Available Attributes" -"Use Config Settings","Use Config Settings" -"Use Default","Use Default" -"Use Default Value","Use Default Value" -"Use Default Variable Values","Use Default Variable Values" -"Use FTP Connection","Use FTP Connection" -"Use Website","Use Website" -"Used Currently For","Used Currently For" -"Used as Default For","Used as Default For" -"User Email","User Email" -"User ID","User ID" -"User Info","User Info" -"User Information","User Information" -"User Name","User Name" -"User Name is required field.","User Name is required field." -"User Name:","User Name:" -"User Password","User Password" -"User Role","User Role" -"User Roles","User Roles" -"User Roles Information","User Roles Information" -"User name","User name" -"Users","Users" -"VAT Number is Invalid","VAT Number is Invalid" -"VAT Number is Valid","VAT Number is Valid" -"Validation Results","Validation Results" -"Value","Value" -"Value Delimiter:","Value Delimiter:" -"Variable","Variable" -"Variable Code","Variable Code" -"Variable HTML Value","Variable HTML Value" -"Variable ID","Variable ID" -"Variable Name","Variable Name" -"Variable Plain Value","Variable Plain Value" -"View Actions XML","View Actions XML" -"View Full Size","View Full Size" -"View Memo","View Memo" -"View Memo for #%s","View Memo for #%s" -"View Shipment","View Shipment" -"View Statistics For:","View Statistics For:" -"Visibility:","Visibility:" -"Warning","Warning" -"Warning! Empty value can cause problems with CSV format.","Warning! Empty value can cause problems with CSV format." -"Warning!\r\nThis action will remove this user from already assigned role\r\nAre you sure?","Warning!\r\nThis action will remove this user from already assigned role\r\nAre you sure?" -"Warning!\r\nThis action will remove those users from already assigned roles\r\nAre you sure?","Warning!\r\nThis action will remove those users from already assigned roles\r\nAre you sure?" -"Warning: Please do not close the window during importing/exporting data","Warning: Please do not close the window during importing/exporting data" -"Watermark File for %s","Watermark File for %s" -"We appreciate our merchants\' feedback, please take our survey to provide insight on the features you would like included in Magento. Remove this notification","We appreciate our merchants\' feedback, please take our survey to provide insight on the features you would like included in Magento. Remove this notification" -"We\'re in our typing table, coding away more features for Magento. Thank you for your patience.","We\'re in our typing table, coding away more features for Magento. Thank you for your patience." -"Web Section","Web Section" -"Web Services","Web Services" -"Web services","Web services" -"Website","Website" -"What is this?","What is this?" -"Wishlist Report","Wishlist Report" -"Wishlist item is not loaded.","Wishlist item is not loaded." -"Wrong account specified.","Wrong account specified." -"Wrong billing agreement ID specified.","Wrong billing agreement ID specified." -"Wrong column format.","Wrong column format." -"Wrong newsletter template.","Wrong newsletter template." -"Wrong quote item.","Wrong quote item." -"Wrong tab configuration.","Wrong tab configuration." -"Wrong transaction ID specified.","Wrong transaction ID specified." -"XML","XML" -"XML data is invalid.","XML data is invalid." -"XML object is not instance of ""Magento\Simplexml\Element"".","XML object is not instance of ""Magento\Simplexml\Element""." -"YTD","YTD" -"Year","Year" -"Yes","Yes" -"Yes (301 Moved Permanently)","Yes (301 Moved Permanently)" -"Yes (302 Found)","Yes (302 Found)" -"Yes (only price with tax)","Yes (only price with tax)" -"You cannot delete your own account.","You cannot delete your own account." -"You have %s unread message(s).","You have %s unread message(s)." -"You have %s unread message(s). Go to messages inbox.","You have %s unread message(s). Go to messages inbox." -"You have %s, %s and %s unread messages. Go to messages inbox.","You have %s, %s and %s unread messages. Go to messages inbox." -"You have logged out.","You have logged out." -"You have not enough permissions to use this functionality.","You have not enough permissions to use this functionality." -"You must have JavaScript enabled in your browser to utilize the functionality of this website.","You must have JavaScript enabled in your browser to utilize the functionality of this website." -"You need to specify order items.","You need to specify order items." -"You will need to wait when the action ends.","You will need to wait when the action ends." -"Your answers contain duplicates.","Your answers contain duplicates." -"Your password has been updated.","Your password has been updated." -"Your password reset link has expired.","Your password reset link has expired." -"Your server PHP settings allow you to upload files not more than %s at a time. Please modify post_max_size (currently is %s) and upload_max_filesize (currently is %s) values in php.ini if you want to upload larger files.","Your server PHP settings allow you to upload files not more than %s at a time. Please modify post_max_size (currently is %s) and upload_max_filesize (currently is %s) values in php.ini if you want to upload larger files." -"Your web server is configured incorrectly. As a result, configuration files with sensitive information are accessible from the outside. Please contact your hosting provider.","Your web server is configured incorrectly. As a result, configuration files with sensitive information are accessible from the outside. Please contact your hosting provider." -"Zip/Postal Code","Zip/Postal Code" -"Zip/Postal Code:","Zip/Postal Code:" -"[ deleted ]","[ deleted ]" -"[GLOBAL]","[GLOBAL]" -"[STORE VIEW]","[STORE VIEW]" -"[WEBSITE]","[WEBSITE]" -"b","b" -"close","close" -"critical","critical" -"example: ""sitemap/"" or ""/"" for base path (path must be writeable)","example: ""sitemap/"" or ""/"" for base path (path must be writeable)" -"example: sitemap.xml","example: sitemap.xml" -"failed","failed" -"from","from" -"major","major" -"minor","minor" -"notice","notice" -"store(%s) scope","store(%s) scope" -"successful","successful" -"to","to" -"website(%s) scope","website(%s) scope" -"{{base_url}} is not recommended to use in a production environment to declare the Base Unsecure URL / Base Secure URL. It is highly recommended to change this value in your Magento configuration.","{{base_url}} is not recommended to use in a production environment to declare the Base Unsecure URL / Base Secure URL. It is highly recommended to change this value in your Magento configuration." diff --git a/app/code/Magento/Adminhtml/i18n/es_ES.csv b/app/code/Magento/Adminhtml/i18n/es_ES.csv deleted file mode 100644 index 39bf86f8596da..0000000000000 --- a/app/code/Magento/Adminhtml/i18n/es_ES.csv +++ /dev/null @@ -1,1144 +0,0 @@ -" The customer does not exist in the system anymore.","El cliente ya no existe en el sistema." -" You will need to navigate to your ","Necesitas ir a tu" -" [deleted]"," [eliminado]" -" and "," y " -" and go to the "," e ir al " -" sections for your Hosted Checkout Pages."," secciones para tus páginas de verificación alojadas." -"%s (Default Template from Locale)","%s (Plantilla Predeterminada en Ubicación Local)" -"%s cache type(s) disabled.","%s tipo(s) de caché desactivado(s)." -"%s cache type(s) enabled.","%s tipo(s) de caché activado(s)." -"%s cache type(s) refreshed.","%s tipo(s) de caché actualizado(s)." -"(For Type ""Local Server"" need to use relative path to Magento install var/export or var/import, e.g. var/export, var/import, var/export/some/dir, var/import/some/dir)","(Para el Tipo ""Servidor Local"") necesitas usar una ruta relativa para instalar Magento var/export o var/import, ej. var/export, var/import, var/export/some/dir, var/import/some/dir)" -"(For US 2-letter state names)","(Para los nombres de estado de 2 letras de los EE.UU.)" -"(If left empty will be auto-generated)","(Se generará automáticamente si se deja en blanco)" -"(Leave empty for first spreadsheet)","(Dejar en blanco para la primera hoja de cálculo)" -"(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)","(Los productos se añadirán/actualizarán en esta tienda si la columna 'tienda' está vacía o no aparece en el fichero de importación.)" -"(Shift-)Click or drag to change value","Pulse (Shift-) o arrastre para modificar el valor" -"(Starting with)","(Comenzando con)" -"(When 'No', only mapped fields will be imported. When mapping, use 'column1', 'column2', etc.)","(Cuando 'No', solo los campos mapeados se importarán. Al hacer los mapas, usa 'column1', 'column2', etc.)" -"(You have to increase php memory_limit before changing this value)","(Debe aumentar el límite de memoria php antes de modificar este valor)" -"(\\t for tab)","(\t para tabular)" -"* - If indexing is in progress, it will be killed and new indexing process will start.","* - Si está ejecutándose un indexado, será interrumpido y empezará un nuevo proceso de indexado." -"- Click on any of the time parts to increase it","- Pulse sobre cualquiera de los fragmentos de tiempo para aumentarlo" -"- Hold mouse button on any of the above buttons for faster selection.","- Mantenga pulsado el botón del ratón sobre cualquiera de los botones de arriba para obtener una selección más rápida." -"- Use the %s buttons to select month","- Utilice los botones %s para seleccionar el mes" -"- Use the %s, %s buttons to select year","- Utilice los botones %s, %s para seleccionar el año" -"- or Shift-click to decrease it","- o pulse Shift para disminuirlo" -"- or click and drag for faster selection.","- o pulse y arrastre para obtener una selección más rápida." -"-- Not Selected --","-- Sin seleccionar --" -"-- Please Select --","-- Por favor seleccione --" -"-- Please Select Billing Agreement--","-- Por favor, Seleccione el Acuerdo de Facturación--" -"-- Please Select a Category --","-- Por favor, Elija una Categoría --" -"-- Please select --","--Por favor, selecciona--" -"--Please Select--","--Seleccione--" -"1 Hour","1 Hora" -"1. set up","1. configuración" -"12 Hours","12 Horas" -"12h AM/PM","12h AM/PM" -"2 Hours","2 Horas" -"2. customize","2. personalización" -"24 Hours","24 Horas" -"24h","24h" -"2YTD","2YTD" -"6 Hours","6 Horas" -"

404 Error

Page not found.

","

Error 404

Página no encontrada.

" -"Attention: Captcha is case sensitive.","Atención: Captcha es sensible al uso de mayúsculas y minúsculas." -"A user with the same user name or email aleady exists.","Ya existe un usuario con el mismo nombre de usuario o correo electrónico." -"API Key","Clave API" -"API Key Confirmation","Confirmación de Clave API" -"ASCII","ASCII" -"Abandoned Carts","Carros Abandonados" -"About the calendar","Sobre el calendario" -"Access Denied","Acceso denegado" -"Access denied","Acceso denegado" -"Access denied.","Acceso denegado" -"Account Created in:","Cuenta Creada en:" -"Account Created on (%s):","Cuenta Creada en (%s):" -"Account Created on:","Cuenta Creada en:" -"Account Information","Información de Cuenta" -"Account Status","Estado de la cuenta" -"Account status","Estado de la cuenta" -"Action","Acción" -"Actions","Acciones" -"Actions XML","Acciones XML" -"Active","Activo" -"Add","Agregar" -"Add \Exception","Añadir Excepción" -"Add Field Mapping","Añadir Mapeo de Campo" -"Add Field with URL:","Añadir Campo con URL:" -"Add New","Añadir Nuevo" -"Add New Image","Añadir Nueva Imagen" -"Add New Profile","Añadir Nuevo Perfil" -"Add New Role","Añadir Nuevo Papel" -"Add New Template","Agregar nueva plantilla" -"Add New URL Rewrite","Añadir Nueva Reescritura de URL" -"Add New User","Añadir Nuevo Usuario" -"Add New Variable","Añadir Nueva Variable" -"Add Products","Añadir productos" -"Add URL Rewrite","Añadir Reescritura de URL" -"Add URL Rewrite for a Category","Añadir Reescritura de URL para una Categoría" -"Add URL Rewrite for a Product","Añadir Reescritura de URL para un Producto" -"Add after","Añadir después" -"Additional Cache Management","Gestión de Caché Adicional" -"Address Type:","Tipo de dirección:" -"Admin","Administrar" -"Advanced Admin Section","Sección de Adminsitración Avanzada" -"Advanced Profiles","Perfiles Avanzados" -"Advanced Section","Sección Avanzada" -"All","Todo" -"All Allowed Countries","Todos los Paises Aceptados" -"All Cache","Todo Cache" -"All Files","Todos los Archivos" -"All Reviews","Todas las Revisiones" -"All Store Views","Todas las vistas de tienda" -"All Websites","Todos los Sitios Web" -"All countries","Todos los países" -"All fields","Todos los campos" -"All possible rates were fetched, please click on ""Save"" to apply","Todas las tarifas posibles se recuperaron, por favor, haz clic en ""Guardar"" para aplicarlas." -"All rates were fetched, please click on ""Save"" to apply","Todas las tarifas se recuperaron. por favor, haz clic en ""Guardar"" para aplicarlas" -"All valid rates have been saved.","Todas las tarifas válidas han sido guardadas" -"Always (during development)","Siempre (durante el desarrollo)" -"Amounts","Cantidades" -"An error has occurred while syncronizing media storages.","Ha ocurrido un error mientras se sincronizaban los soportes audiovisuales." -"An error occurred while clearing the JavaScript/CSS cache.","Un error ocurrió mientras se borraba el cache de JavaScript/CSS." -"An error occurred while clearing the image cache.","Un error ocurrió mientras se borraba el cache de imagen" -"An error occurred while deleting URL Rewrite.","Ha habido un error al borrar la URL, reescribela." -"An error occurred while deleting email template data. Please review log and try again.","Un error ocurrió mientras se borraba la plantilla de datos de e-mail. Por favor revisa el usuario e intente otra vez." -"An error occurred while deleting record(s).","Ha habido un error al borrar el(los) historial(es)." -"An error occurred while deleting this role.","Un error ocurrió mientras se borraba esta función." -"An error occurred while deleting this set.","Un error ocurrió mientras se borraba este modelo." -"An error occurred while deleting this template.","Un error ocurrió mientras se borraba esta plantilla." -"An error occurred while finishing process. Please refresh the cache","Un error ocurrió mientras se finalizaba el proceso. Por favor actualice el cache." -"An error occurred while rebuilding the CatalogInventory Stock Status.","Un error ocurrió mientras se reconstruia el estado del catálogo-inventario" -"An error occurred while rebuilding the catalog index.","Un error ocurrió mientras se reconstruía el índice del catálogo." -"An error occurred while rebuilding the flat catalog category.","Un error ocurrió mientras se reconstruía la categoría catálogo." -"An error occurred while rebuilding the flat product catalog.","Un error ocurrió mientras se reconstruía el catálogo de producto." -"An error occurred while rebuilding the search index.","Un error ocurrió mientras se reconstruía el índice buscador." -"An error occurred while refreshing the Catalog Rewrites.","Un error ocurrió mientras se actualizaba los correcciones en el catálogo." -"An error occurred while refreshing the Layered Navigation indices.","Se produjo un error al actualizar los índices de navegación por capas." -"An error occurred while refreshing the catalog rewrites.","Ha ocurrido un error al actualizar la reescritura de los catálogos." -"An error occurred while refreshing the layered navigation indices.","Ha ocurrido un error al actualizar los índices de navegación por capas." -"An error occurred while saving URL Rewrite.","Ha habido un error al guardar la URL, reescribela." -"An error occurred while saving account.","Se produjo un error al guardar la cuenta" -"An error occurred while saving review.","Ha habido un error al guardar la reseña." -"An error occurred while saving the customer.","Se produjo un error al guardar el cliente." -"An error occurred while saving this configuration:","Se produjo un error al guardar esta configuración:" -"An error occurred while saving this role.","Se produjo un error al guardar esta profesión." -"An error occurred while saving this template.","Se produjo un error al salvar este modelo." -"An error occurred while updating the selected review(s).","Se produjo un error al actualizar la(s) revisión(es) seleccionada(s)." -"Any","Cualquier" -"Any Attribute Set","Cualquier Atributo Establecido." -"Any Group","Todos los grupos" -"Any Status","Todos los estados" -"Any Store","Cualquier Tienda." -"Any Type","Todos los tipos" -"Any Visibility","Todas las visualizaciones" -"Any data created since the backup was made will be lost including admin users, customers and orders.","Cualquier archivo creado desde la creación de la copia de seguridad se perderá, incluyendo usuarios administradores, clientes y pedidos." -"Archive file name:","Nombre del archivo:" -"Are you sure that you want to delete this template?","¿Está seguro de que quiere borrar esta plantilla?" -"Are you sure that you want to strip tags?","¿Está seguro de que quiere eliminar las etiquetas?" -"Are you sure you want to do this?","¿Estás seguro de querer hacer esto?" -"Are you sure you want to proceed?","¿Estás seguro de que quieres continuar?" -"Area","Área" -"As low as:","Tan bajo como:" -"Assigned","Asignado" -"Attribute Set Name:","Nombre del conjunto de atributos:" -"Attributes","Atributos" -"Automatic","Automático" -"Average","Cantidad orden media" -"Average Orders","Órdenes promedias" -"BINARY","BINARIO" -"Back","Volver" -"Back to Login","Volver a Conexión" -"Backup","Copia de respaldo" -"Backup Name","Nombre de la copia de seguridad" -"Backup options","Opciones de la copia de seguridad" -"Backups","Copias de seguridad" -"Base currency","Moneda base" -"Bcc","CO" -"Bestsellers","Los más vendidos" -"Billing Address","Dirección de facturación" -"Billing Address: ","Dirección de facturación:" -"Billing Agreement","Acuerdo de facturación" -"Billing Agreements","Contratos de facturación" -"Block Information","Información de bloque" -"Both (without and with tax)","Ambos (con y sin impuestos)" -"Both IPN and PDT","Tanto IPN como PDT" -"Browse Files...","Examinar archivos..." -"Bundle with dynamic pricing cannot include custom defined options. Options will not be saved.","Un lote con precio dinámico no puede incluir opciones personalizadas. No se grabarán las opciones." -"CMS","CMS" -"CRITICAL","crítico" -"CSV","CSV" -"CSV / Tab separated","CSV / separado por tabuladores" -"Cache Control","Control de memoria caché" -"Cache Control (beta)","Control de memoria caché (beta)" -"Cache Management","Gestión de Caché." -"Cache Type","Tipo de memoria caché" -"Cancel","Cancelar" -"Cannot add new comment.","No se puede agregar un nuevo comentario." -"Cannot add tracking number.","No se puede agregar un número de seguimiento." -"Cannot create an invoice without products.","No se puede crear una factura sin productos." -"Cannot create credit memo for the order.","No se puede crear una nota de crédito para el pedido." -"Cannot delete the design change.","No se puede eliminar el cambio de diseño." -"Cannot delete tracking number.","No se puede eliminar el número de seguimiento." -"Cannot do shipment for the order separately from invoice.","No se pueden hacer envíos para el pedido independientemente de la factura." -"Cannot do shipment for the order.","No se pueden hacer envíos para el pedido." -"Cannot initialize shipment for adding tracking number.","No se puede inicializar el envío para agregar el número de seguimiento." -"Cannot initialize shipment for delete tracking number.","No se puede inicializar el envío para eliminar el número de seguimiento." -"Cannot load track with retrieving identifier.","No se puede cargar el seguimiento con el identificador de recuperación." -"Cannot retrieve tracking number detail.","No se puede recuperar el detalle del número de seguimiento." -"Cannot save shipment.","No se puede guardar el envío." -"Cannot save the credit memo.","No se puede guardar la nota de crédito." -"Cannot send shipment information.","No se puede enviar información del envío." -"Cannot update item quantity.","No se puede actualizar la cantidad de artículos." -"Cannot update the item\'s quantity.","No se puede actualizar la cantidad del artículo." -"Catalog","Catálogo" -"Catalog Price Rules","Catálogo de Normas sobre Precios" -"Catalog Rewrites","Reescrituras de catálogo" -"Categories","Categorías" -"Category:","Categoría:" -"Chart is disabled. If you want to enable chart, click here.","Tabla deshabilitada. Si quere habilitar la tabla, pulse here." -"Checkbox","Casilla de verificación" -"Child Transactions","Transacciones hija" -"Choose Store View:","Selecciona Vista de la Tienda:" -"Choose an attribute","Elija un atributo" -"Chosen category does not associated with any website, so url rewrite is not possible.","La categoría elegida no está asociada con ninguna página web, así que no es posible reescribir la url." -"Chosen product does not associated with any website, so url rewrite is not possible.","El producto elegido no está asociado con ninguna página web, así que no es posible reescribir la url." -"Clear","Limpiar" -"Close","cerrar" -"Comment text field cannot be empty.","El campo de texto de comentarios no puede quedar vacío." -"Complete","Completo" -"Configuration","Configuración" -"Confirm New Password","Confirmar Nueva Contraseña" -"Confirmed email:","Correo electrónico confirmado:" -"Connect with the Magento Community","Conectarse con la comunidad Magento" -"Continue","Continuar" -"Continuous","Continuo" -"Convert to Plain Text","Convertir a texto sin formato" -"Cookie (unsafe)","Cookie (no segura)" -"Country","País" -"Country:","País:" -"Coupons","Cupones" -"Create","Crear." -"Create DB Backup","Crear Copia de Seguridad de la Base de Datos" -"Create New Attribute","Crear Nuevo Atributo" -"Create URL Rewrite:","Crear Reestructura de URL:" -"Created At","Creado en" -"Credit Card %s","%s de la tarjeta de crédito" -"Credit Memo History","Historial de facturas rectificativas" -"Credit Memo Totals","Total de las facturas rectificativas" -"Credit Memos","Facturas rectificativas" -"Credit memo #%s comment added","%s Comentario añadido en la nota de crédito" -"Credit memo #%s created","Creada nota de crédito #%s" -"Credit memo\'s total must be positive.","El total de la nota de crédito debe ser positivo." -"Currency","Divisa" -"Currency ""%s"" is used as %s in %s.","Moneda ""%s"" es usada como %s en %s." -"Currency Information","Información sobre la Divisa" -"Currency Setup Section","Sección de Configuración de Divisa" -"Current Configuration Scope:","Rango de configuración actual:" -"Current Month","Mes Actual" -"Custom","Personalizado" -"Custom Variable ""%s""","""%s"" customizados variables" -"Custom Variables","Variables personalizadas" -"Customer","Cliente" -"Customer Group:","Grupo de clientes:" -"Customer Groups","Grupos de Cliente" -"Customer","Nombre del Cliente" -"Customer Reviews","Revisiones de Cliente" -"Customer Shopping Carts","Carritos de la Compra del Cliente" -"Customer Since:","Cliente desde:" -"Customer Tax Classes","Tipos de impuestos del cliente" -"Customer with the same email already exists.","Ya existe un cliente con el mismo correo electrónico." -"Customers","Clientes" -"Customers by Orders","Clientes por número de pedidos." -"Customers by Orders Total","Clientes por total de pedidos" -"DHTML Date/Time Selector","Selector de fecha/hora DHTML" -"Dashboard","Panel de control" -"Data Format","Formato de la fecha" -"Data transfer:","Transferencia de datos:" -"Database","Base de datos" -"Date","Fecha" -"Date & Time","Fecha y Hora" -"Added","Añadido el día" -"Updated","Fecha de actualización" -"Date selection:","Elección de la fecha:" -"Date selector","Selector de fechas" -"Day","Día" -"Decimal separator:","Separador de decimales:" -"Default (Admin) Values","Valores iniciales (de admin.)" -"Default Billing Address","Dirección de Facturación por Defecto" -"Default Config","Configuración por Defecto" -"Default Template from Locale","Configuración Regional de la Plantilla por Defecto" -"Default Values","Valores por Defecto" -"Default display currency ""%s"" is not available in allowed currencies.","""%s"" de la moneda por defecto no disponible en monedas permitdas." -"Default scope","Ámbito por defecto." -"Delete","Eliminar" -"Delete %s","Borrar %s" -"Delete %s '%s'","Borrar %s '%s'" -"Delete File","Borrar Archivo" -"Delete Image","Borrar Imagen" -"Delete Profile","Borrar Perfil" -"Delete Role","Borrar Rol" -"Delete Store","Eliminar tienda" -"Delete Store View","Eliminar vista de la tienda" -"Delete Template","Eliminar plantilla" -"Delete User","Borrar Usuario" -"Delete Website","Eliminar página web" -"Description","Descripción" -"Design","Diseño" -"Design Section","Sección de diseño" -"Details","Detalles" -"Developer Section","Sección para desarrolladores" -"Direction:","Dirección:" -"Disable","Desactivar" -"Disabled","Deshabilitado" -"Display %s first","Mostrar %s primero" -"Display default currency","Mostrar moneda predeterminada" -"Distributed under GNU LGPL. See %s for details.","Distribuido según la LGPL de GNU. Para más información véase %s." -"Do you really want to KILL parallel process and start new indexing process?","¿Desea anular todos los procesos paralelos y comenzar un nuevo proceso de indexación?" -"Do you really want to proceed?","¿De verdad que quieres seguir?" -"Download","Descargar" -"Downloads","Descargas." -"Drag to move","Arrastrar para mover" -"Drop-down","Desplegable" -"Edit","Editar" -"Edit Design Change","Editar Diseñar cambio" -"Edit Email Template","Editar plantilla de correo electrónico" -"Edit Order","Editar pedido" -"Edit Queue","Editar cola" -"Edit Review","Editar Comentario" -"Edit Role","Modificar el rol" -"Edit Store View","Editar vista de la tienda" -"Edit System Template","Editar plantilla del sistema" -"Edit Template","Editar plantilla" -"Edit URL Rewrite","Editar Reescritura de URL" -"Edit User","Editar Usuario" -"Edit User '%s'","Modificar usuario «%s»" -"Edit Website","Editar página web" -"Email","Correo electrónico" -"Email Address:","Dirección de Correo Electrónico:" -"Email Preview","Vista previa de email" -"Email to a Friend","Escribir un Email a un amigo" -"Email:","Email:" -"Enable","Habilitar" -"Enabled","Habilitado" -"Enclose Values In:","Adjuntar valores en:" -"Entity Attributes","Atributos de la Entidad" -"Entity Type","Tipo de Entidad" -"Entity type:","Tipo de entidad:" -"Error","Error" -"Excel XML","Excel XML" -"Excl. Tax","Impuestos no incluidos" -"Exclude media folder from backup","Excluir carpetas de archivos multimedia para la copia de seguridad" -"Export","Exportar" -"Export CSV","Exportar CSV" -"Export Filters","Exportar Filtros" -"Export to:","Exportar a:" -"Export:","Exportar:" -"FTP Host","Servidor FTP" -"FTP Host[:Port]","Servidor FTP[:Puerto]" -"FTP Login","Inicio de sesión FTP" -"FTP Password","Contraseña FTP" -"FTP credentials","Credenciales FTP" -"Failed to add a product to cart by id ""%s"".","Fallo en añadir producto a la cesta por ""%s"" de id." -"Failed to cancel the billing agreement.","No se pudo cancelar el acuerdo de pago." -"Failed to clear the JavaScript/CSS cache.","No se pudo borrar la memoria caché de JavaScript/CSS." -"Failed to delete the billing agreement.","No se pudo eliminar el acuerdo de pago." -"Failed to update the profile.","No se ha podido actualizar el perfil." -"Field","Campo" -"Field Mapping","Mapeo del área" -"File","Archivo" -"File Information","Información de Archivo" -"File System","Sistema de archivos" -"File mode","Modo de archivo" -"File name:","Nombre del archivo:" -"File size should be more than 0 bytes","El tamaño del archivo debe ser mayor a 0 bytes" -"Finished profile execution.","Ejecución del perfil finalizada" -"First Invoice Created Date","Fecha de Creación de la Primera Factura" -"First Name","Nombre" -"First Name is required field.","El campo Nombre es obligatorio." -"First Name:","Nombre:" -"Fixed","Fijo" -"Flush Catalog Images Cache","Limpiar la caché de imágenes de catálogo" -"Flush JavaScript/CSS Cache","Limpiar la caché del JavaScrip/CSS" -"For category","Para la categoría" -"For latest version visit: %s","Para la última versión visita: %s" -"For product","Para el producto" -"Forgot Admin Password","Ha olvidado la contraseña de Administrador" -"Forgot your password?","¿Olvidaste tu contraseña?" -"Forgot your user name or password?","¿Ha olvidado el usuario o la contraseña?" -"From","desde" -"GLOBAL","GLOBAL" -"Gb","Gb" -"General Information","Información general" -"General Section","Sección general" -"Get Image Base64","Obtener imagen Base64" -"Get help for this page","Consiga ayuda para esta página" -"Global Attribute","Atributo global" -"Global Record Search","Búsqueda de registro global" -"Global Search","Búsqueda global" -"Go Today","Ir a Hoy" -"Go to messages inbox","Ir al buzón de entrada de mensajes" -"Go to notifications","Ir a notificaciones" -"Google Base","Google Base" -"Google Sitemaps","Google Sitemaps" -"Grand Total","Suma total" -"Grid (default) / List","Cuadrícula (por omisión) / lista" -"Grid Only","Solo cuadrícula" -"Group:","Grupo:" -"Guest","Invitado" -"HTTP (unsecure)","HTTP (inseguro)" -"HTTPS (SSL)","HTTPS (SSL)" -"Help Us Keep Magento Healthy - Report All Bugs","Ayúdanos a Mantener Magento Saludable - Informar de Todos los Errores" -"Helper attributes should not be used in custom layout updates.","Los atributos del asistente no se deberían utilizar en las actualizaciones de diseños personalizados." -"Helper for options rendering doesn't implement required interface.","El asistente para la ejecución de opciones no implementa la interfaz solicitada." -"Home","Inicio" -"ID","Identificación" -"ID Path","Ruta de la ID" -"IP Address","Dirección IP" -"IPN (Instant Payment Notification) Only","Sólo IPN (notificación de pago instantánea)" -"If there is an account associated with %s you will receive an email with a link to reset your password.","Si hay una cuenta asociada con %s recibirás un correo electrónico con un enlace para reiniciar tu contraseña." -"If this message persists, please contact the store owner.","Si persiste este mensaje póngase en contacto con el dueño de la tienda." -"Images (.gif, .jpg, .png)","Imágenes (.gif, .jpg, .png)" -"Images Cache","Caché de Imágenes" -"Import","Importar" -"Import Service","Importar servicio" -"Import and Export","Importación y exportación" -"Import and Export Tax Rates","Impuestos de importación y exportación" -"Import/Export","Importación/exportación" -"Import/Export Advanced","Importar/Exportar Avanzados" -"Import/Export Profile","Perfil de importación/exportación" -"Important: ","Importante:" -"Imported %s records","Registros importados de %s" -"In","En" -"In Database:","En base de datos:" -"In File:","En el Archivo:" -"Inactive","Inactivo" -"Incl. Tax","Impuestos incluidos" -"Incoming Message","Mensaje nuevo" -"Insert Variable...","Insertar variable..." -"Interactive","Interactivo" -"Interface Locale: %s","Configuración regional de interfaz: %s" -"Invalid Form Key. Please refresh the page.","Clave de Formulario No Válida. Por favor, actualice la página." -"Invalid Import Service Specified","Se Especificó un Servicio de Importación No Válido." -"Invalid POST data (please check post_max_size and upload_max_filesize settings in your php.ini file).","Datos introducidos no válidos (compruebe la configuración de entrada_tamaño_máximo y carga_tamañodearchivo_máximo en su archivo php.ini)." -"Invalid Secret Key. Please refresh the page.","Clave Secreta No Válida. Por favor, actualice la página." -"Invalid User Name or Password.","La contraseña o nombre usuario no son correctos." -"Invalid directory: %s","Directorio inválido: %s" -"Invalid email address ""%s"".","Dirección de mail ""%s"" no válida." -"Invalid email address.","Dirección de correo electrónico no válida." -"Invalid file: %s","Archivo no válido: %s" -"Invalid input data for %s => %s rate","Datos de entrada no válidos para %s => %s tasa" -"Invalid parent block for this block","Bloque principal no válido para este bloque" -"Invalid parent block for this block.","Bloque padre no válido para este bloque." -"Invalid password reset token.","La contraseña no es correcta, reinicia el token." -"Invalid sender name ""%s"". Please use only visible characters and spaces.","Nombre de remitente ""%s"" no válido. Por favor, utilice solo caracteres visibles y espacios." -"Invalid timezone","Zona horaria no válida" -"Invalidated","Invalidado" -"Inventory Stock Status","Estado de Existencias de Inventario" -"Invoice #%s comment added","Comentario de factura #%s añadido" -"Invoice #%s created","Factura #%s creada" -"Invoice History","Historial de Facturas" -"Invoice Totals","Total de la factura" -"Invoice canceling error.","Error de cancelación de factura." -"Invoice capturing error.","Error de captura de factura." -"Invoice voiding error.","Error de anulación de factura." -"Invoices","Facturas" -"Is Closed","Está cerrado" -"Issue Number","Número de Emisión" -"Items","Artículos." -"JavaScript seems to be disabled in your browser.","Puede que JavaScript esté deshabilitado en tu navegador." -"JavaScript/CSS","JavaScript/CSS" -"JavaScript/CSS Cache","JavaScript/CSS Caché" -"Kb","Kb" -"Last 24 Hours","Últimas 24 Horas" -"Last 5 Orders","Últimos 5 pedidos." -"Last 5 Search Terms","Últimas 5 búsquedas." -"Last 7 Days","Últimos 7 Días" -"Last Credit Memo Created Date","Fecha de Creación de la Última Factura de Abono" -"Last Invoice Created Date","Fecha de Creación de la Última Factura" -"Last Logged In (%s):","Última conexión (%s):" -"Last Logged In:","Último inicio de sesión:" -"Last Name","Apellido" -"Last Name is required field.","El campo Apellido es obligatorio." -"Last Name:","Apellido:" -"Last updated: %s. To refresh last day\'s statistics, click here.","Última actualización: %s. Para refrescar las estadísticas del último día, pinche aquí." -"Latest Message:","Último mensaje:" -"Layered Navigation Indices","Índices de Navegación en Capas" -"Layered Navigation Indices were refreshed.","Los índices de la navegación por capas se han refrescado." -"Leave empty to use tax identifier","Deje en blanco para identificación fiscal" -"Lifetime Sales","Ventas de por vida" -"Lifetime statistics have been updated.","Se actualizaron las estadísticas de vigencia." -"Links","Enlaces" -"Links with associated products will retain only after saving current product.","Los enlaces a los productos relacionados sólo quedarán registrados tras guardar el producto actual." -"List (default) / Grid","Lista (por defecto) / cuadrícula" -"List Only","Lista Solamente" -"Load Template","Cargar Plantilla" -"Load default template","Cargar plantilla por defecto" -"Loading...","Cargando..." -"Local Server","Servidor local" -"Local/Remote Server","Servidor local/remoto" -"Locale","Configuración regional" -"Log Out","Cerrar sesión" -"Log in to Admin Panel","Iniciar Sesión en el Panel de Administración" -"Log into Magento Admin Page","Iniciar Sesión en la Página de Administración de Magento" -"Logged in as %s","Sesión iniciada como %s" -"Login","Iniciar sesión" -"Low Stock","Existencias Bajas" -"MAJOR","mayor" -"MINOR","MENOR" -"MS Excel XML","MS Excel XML" -"Magento Admin","Administración de Magento" -"Magento Commerce - Administrative Panel","Magento Commerce - Panel de administración" -"Magento Connect","Magento Connect" -"Magento Connect Manager","Administrador de Magento Connect" -"Magento Logo","Logotipo de Magento" -"Magento is a trademark of X.commerce, Inc. Copyright © %s X.commerce, Inc.","Magento es una marca registrada de X.commerce, Inc. Copyright © %s X.commerce, Inc." -"Magento root directory","Directorio raíz Magento" -"Magento ver. %s","Magento versión %s" -"Magento® is a trademark of X.commerce, Inc.
Copyright © %s X.commerce, Inc.","Magento® es una marca registrada de X.commerce, Inc.
Copyright ©: %s X.commerce, Inc." -"Make sure that data encoding in the file is consistent and saved in one of supported encodings (UTF-8 or ANSI).","Asegúrese de que la codificación de los datos en el archivo es consistente y han sido guardados en alguno de los códigos admitidos (UTF-8 o ANSI)." -"Manage Attribute Sets","Administrar conjuntos de atributos" -"Manage Attributes","Administrar atributos" -"Manage Categories","Gestionar categorías" -"Manage Content","Administre Contenido" -"Manage Currency Rates","Gestionar Tasa de Moneda" -"Manage Customers","Gestionar Clientes" -"Manage Ratings","Administrar puntuaciones" -"Manage Stores","Gestionar Tiendas" -"Manage Tax Rules","Gestión de las normas fiscales" -"Manage Tax Zones and Rates","Administrar zonas y tasas impositivas" -"Manual","Manual" -"Matched Expression","Expresión de coincidencia" -"Mb","Mb" -"Media (.avi, .flv, .swf)","Archivos multimedia (.avi, .flv, swf)" -"Media storages synchronization has completed!","¡Se ha completado la sincronización del almacenamiento de contenido!" -"Messages Inbox","Bandeja de entrada de mensajes" -"Month","Mes" -"Most Viewed","Los Más Vistos" -"Most Viewed Products","Productos Más Vistos" -"Multiple Select","Elección múltiple" -"My Account","Mi cuenta" -"N/A","N/A" -"NOTICE","aviso" -"Name","Nombre" -"Name:","Nombre:" -"Never (production)","Nunca (producción)" -"New ","Nuevo" -"New API Key","Nueva clave de API" -"New Accounts","Nuevas Cuentas" -"New Attribute","Nuevo Atributo" -"New Block","Nuevo bloque" -"New Category","Nueva categoría" -"New Class","Nueva clase" -"New Condition","Nueva condición" -"New Custom Variable","Nueva variable personalizada" -"New Customer","Nuevo cliente" -"New Customers","Nuevos Clientes" -"New Design Change","Nuevo cambio de diseño" -"New Email Template","Plantilla de nuevo correo" -"New Group","Nuevo grupo" -"New Invoice","Nueva Factura" -"New Item Type","Nuevo tipo de artículo" -"New Memo","Nueva nota" -"New Memo for #%s","Nueva nota para n.º %s" -"New Page","Nueva Página" -"New Password","Nueva Contraseña" -"New Profile","Nuevo perfil" -"New Rate","Nueva tasa" -"New Rating","Nueva puntuación" -"New Review","Nueva Revisión" -"New Role","Nuevo rol" -"New Rule","Nueva Regla" -"New Search","Nueva búsqueda" -"New Set","Nuevo Conjunto" -"New Shipment","Nuevo Envío" -"New Sitemap","Nuevo mapa del sitio web" -"New Store View","Nueva vista de tienda" -"New System Template","Nueva plantilla del sistema" -"New Template","Nueva Plantilla" -"New User","Nuevo usuario" -"New Variable","Nueva variable" -"New Website","Nuevo Sitio Web" -"New password field cannot be empty.","El campo de nueva contraseña no puede estar en blanco." -"Newsletter","Boletín de noticias" -"Newsletter Problems","Problemas del Boletín" -"Newsletter Queue","Cola de Boletín de Noticias" -"Newsletter Subscribers","Suscriptores de Boletín de Noticias" -"Newsletter Templates","Plantillas de Boletín de Noticias" -"Next month (hold for menu)","Próximo mes (mantener para menú)" -"Next year (hold for menu)","Año siguiente (mantenga presionado para ver menú)" -"No","No" -"No (price without tax)","No (precio sin impuestos)" -"No Data","Sin datos" -"No Data Found","No se han encontrado datos" -"No Templates Found","No se Encontraron Plantillas" -"No change","Sin cambios" -"No customer id defined.","No se ha definido ningún id de cliente." -"No information available.","No hay información disponible." -"No profile loaded...","No hay perfil cargado..." -"No records found for this period.","No se han encontrado registros para este período." -"No records found.","No se han encontrado registros." -"No report code specified.","No se especificó el código de informe." -"No search keywords.","No hay palabras de búsqueda." -"No search modules were registered","No se han registrado módulos de búsqueda" -"No wishlist item id defined.","No se ha definido ningún id de artículo de lista de intención de compra." -"None","Ninguno" -"Note:","Nota:" -"Notes","Notas" -"Notifications","Notificaciones" -"Orders","Número de pedidos" -"Uses","Número de Usos" -"Views","Número de visualizaciones" -"Number of records:","Número de registros:" -"OK","Aceptar" -"Old rate:","Tasa anterior:" -"One or more media files failed to be synchronized during the media storages syncronization process. Refer to the log file for details.","Ha fallado la sincronización de uno o más ficheros de contenido durante el proceso de sincronización del almacenamiento de contenido. Revise el fichero de log para ver más detalles." -"One or more of the Cache Types are invalidated:","Están invalidados uno o más de los tipos de caché:" -"Online Customers","Clientes conectados" -"Only Once (version upgrade)","Solo una vez (actualización de la versión)" -"Only attributes with scope ""Global"", input type ""Dropdown"" and Use To Create Configurable Product ""Yes"" are available.","Solo están disponibles los atributos con alcance ""Global"", tipo de selección ""Lista desplegable"" y los de tipo Utilizar para Crear Producto Configurable ""Si""." -"Only mapped fields","Sólo campos mapeados" -"Optional","Opcional" -"Options","Opciones" -"Order","Pedido" -"Order %s","Pedido #%s" -"Order %s (%s)","Pedido #%s (%s)" -"Order Created Date","Fecha de creación del pedido" -"Order ID","Solicitar ID" -"Order Totals","Solicitar totales" -"Order Updated Date","Fecha de actualización del pedido" -"Order Updated Date report is real-time, does not need statistics refreshing.","El informe de la fecha de actualización del pedido se hace en tiempo real, así que no es necesario actualizar la estadística." -"Orders","Pedidos" -"Original Magento attribute names in first row:","Nombres originales de atributos Magento en la primera fila:" -"Out of stock","Sin existencias" -"PDT (Payment Data Transfer) Only","Sólo PDT (transmisión de datos de pago)" -"Package Extensions","Extensiones de paquete" -"Pages","Páginas" -"Parent Product Thumbnail","Miniatura del producto padre" -"Parent Transaction ID","ID de la transacción de origen" -"Passive mode","Modo pasivo" -"Password","Contraseña" -"Password Confirmation","Confirmación de contraseña" -"Password confirmation must be same as password.","La confirmación de contraseña debe ser igual que la contraseña." -"Password must be at least of %d characters.","La contraseña debe tener al menos %d caracteres." -"Password must include both numeric and alphabetic characters.","La contraseña debe contener letras y números." -"Password:","Contraseña:" -"Path:","Ruta:" -"PayPal Manager","Gestor de PayPal" -"Payment method instance is not available.","No está disponible la instancia del método de pago." -"Payment method is not available.","No está disponible el método de pago." -"Payment method must be specified.","Se debe especificar el método de pago." -"Pending Reviews","Revisiones Pendientes" -"Per Item","Por artículo" -"Per Order","Por Pedido" -"Percent","Porcentaje" -"Performed At","Realizo en" -"Interval","Período" -"Permanent (301)","Permanente (301)" -"Permissions","Permisos" -"Personal Information","Información Personal" -"Phone:","Teléfono:" -"Please Select","Seleccionar, por favor." -"Please confirm site switching. All data that hasn\'t been saved will be lost.","Confirme el cambio de sitio. Se perderán todos los datos que no se hayan guardado." -"Please enter 6 or more characters.","Ingrese 6 o más caracteres." -"Please enter a number greater than 0 in this field.","Ingrese un número mayor que 0 en este campo." -"Please enter a valid $ amount. For example $100.00.","Ingrese un monto válido en $. Por ejemplo: $100.00." -"Please enter a valid URL. For example http://www.example.com or www.example.com","Ingrese una dirección URL válida. Por ejemplo: http://www.ejemplo.com o www.ejemplo.com" -"Please enter a valid URL. http:// is required","Ingrese una dirección URL válida. El prefijo http:// es obligatorio" -"Please enter a valid credit card number.","Por favor, introduce un número de tarjeta de crédito válido." -"Please enter a valid date.","Ingrese una fecha válida." -"Please enter a valid email address. For example johndoe@domain.com.","Ingrese una dirección de correo electrónico válida. Por ejemplo: juanperez@dominio.com." -"Please enter a valid email.","Por favor, escriba un email válido." -"Please enter a valid number in this field.","Ingrese un número válido en este campo." -"Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890.","Ingrese un número de teléfono válido. Por ejemplo: (123) 456-7890 o 123-456-7890." -"Please enter a valid social security number. For example 123-45-6789.","Ingrese un número de seguro social válido. Por ejemplo: 123-45-6789." -"Please enter a valid value from list","Ingrese un valor válido de la lista" -"Please enter a valid value, ex: 10,20,30","Ingrese un valor válido, por ej., 10, 20, 30" -"Please enter a valid zip code.","Por favor, introduce un código postal válido." -"Please enter a valid zip code. For example 90602 or 90602-1234.","Ingrese un código postal válido. Por ejemplo: 90602 o 90602-1234." -"Please enter another credit card number to complete your purchase.","Escriba el número de otra tarjeta de crédito para terminar su compra." -"Please enter password","Por favor introduce la contraseña" -"Please enter password to confirm rollback.","Por favor introduce la contraseña para confirmar la restauración." -"Please enter valid password.","Ingrese una contraseña válida." -"Please make sure that all global admin search modules are installed and activated.","Asegúrese de que todos los módulos de búsqueda de administración global estén instalados y activados." -"Please make sure that your changes were saved before running the profile.","Por favor, asegúrate de que los cambios se guardan antes de iniciar el perfil." -"Please make sure your passwords match.","Asegúrese de que sus contraseñas coincidan." -"Please select State/Province.","Por favor, selecciona Estado/Provincia." -"Please select a customer.","Seleccione un cliente." -"Please select a store.","Seleccione una tienda." -"Please select an option.","Por favor selecciona una opción." -"Please select catalog searches.","Seleccione búsquedas de catálogos." -"Please select customer(s).","Seleccione clientes." -"Please select message(s).","Por favor, seleccione mensaje(s)." -"Please select one of the above options.","Por favor, selecciona una de las opciones anteriores." -"Please select one of the options.","Seleccione una de las opciones." -"Please select review(s).","Seleccione reseñas." -"Please specify backup creation options","Por favor especifica las opciones de creación de la copia de seguridad" -"Please specify the admin custom URL.","Por favor, especifica la dirección URL personalizada de administración." -"Please try to logout and sign in again.","Intente cerrar sesión y volver a iniciarla." -"Please type the letters from the image:","Por favor escribe las letras de la imagen:" -"Please use in this field only ""a-z,0-9,_"".","En este campo sólo se pueden escribir letras, números y guiones bajos (""a-z,0-9,_"")." -"Please use letters only (a-z) in this field.","Por favor, utiliza solo las letras (a-z) en este campo." -"Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas.","En este campo sólo se pueden escribir números. Evite los espacios en blanco u otros caracteres, como los puntos o las comas, por ejemplo." -"Please use only letters (a-z or A-Z), numbers (0-9) or spaces in this field.","Por favor, utilice solo letras (a-z o A-Z), números (0-9) o espacios en este campo." -"Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed.","Por favor, utiliza solo letras (a-z) o números (0-9) en este campo. No se permiten espacios u otros caracteres." -"Please use only letters (a-z) or numbers (0-9) or spaces and # only in this field.","Utilice sólo letras (a-z) o números (0-9), o espacios y números en este campo." -"Please use this date format: dd/mm/yyyy. For example 17/03/2006 for the 17th of March, 2006.","Utilice este formato de fecha: dd/mm/aaaa. Por ejemplo, 17/03/2006 para el 17 de marzo de 2006." -"Please wait while the indexes are being refreshed.","Espere mientras se actualizan los índices." -"Please wait, loading...","Espera, por favor. Cargando...." -"Please wait...","Por favor, espera..." -"Popular","Popular" -"Position of Watermark for %s","Posición de la marca de agua para %s" -"Pregenerated product images files.","Archivos de imágenes de producto generadas previamente." -"Prev. month (hold for menu)","Mes anterior (mantener para menú)" -"Prev. year (hold for menu)","Año anterior (mantenga presionado para ver el menú)" -"Preview","Vista previa" -"Preview Template","Vista previa de la plantilla" -"Price","Precio" -"Price alert subscription was saved.","Se guardó la suscripción de alerta de precio." -"Price:","Precio:" -"Processed %s%% %s/%d records","Procesados %s%% %s/%d registros" -"Product","Producto" -"Product","Nombre de Producto" -"Product Reviews","Opiniones de Producto" -"Product Tax Classes","Clases de Impuestos a Productos" -"Product Thumbnail Itself","Imagen en miniatura del producto" -"Product is not loaded.","El producto no está cargado." -"Product:","Producto:" -"Products","Productos" -"Products Bestsellers Report","Informe de Productos Más Vendidos" -"Products Most Viewed Report","Informe de productos con más visualizaciones" -"Products Ordered","Productos Encargados" -"Products in Carts","Productos en Carritos" -"Profile Action","Acción del perfil" -"Profile Actions XML","XML de las acciones del perfil" -"Profile Direction","Dirección del perfil" -"Profile History","Historial del perfil" -"Profile Information","Información de perfil" -"Profile Name","Nombre de perfil" -"Profile Payments","Pagos del perfil" -"Profile Schedule","Programación del perfil" -"Profile Wizard","Asistente del perfil" -"Profiles","Perfiles" -"Promo","Promoción" -"Promotions","Promociones" -"Purchased Item","Artículo Comprado" -"Put store on the maintenance mode while backup creation","Ponga la tienda en el modo de mantenimiento mientras se crea la copia de seguridad" -"Put store on the maintenance mode while rollback processing","Pon la tienda en modo de mantenimiento mientras se procesa la restauración" -"Quantity","Cantidad" -"Queue Refresh","Actualizar la cola" -"Queued... Cancel","En cola... cancelar" -"Radio Buttons","Botones de selección" -"Rates","Tasas" -"Read details","Leer detalles" -"Rebuild","Reconstruir" -"Rebuild Catalog Index","Reconstruir índice del catálogo" -"Rebuild Flat Catalog Category","Reconstruir Categoría Catálogo Plano" -"Rebuild Flat Catalog Product","Reconstruir Producto Catálogo Plano" -"Recent Orders","Pedidos recientes" -"Recent statistics have been updated.","Se han actualizado las estadísticas recientes." -"Recurring Profile View","Vista de perfil recurrente" -"Recursive Dir","Dir Repetitivo" -"Redirect","Redirigir" -"Reference","Referencia" -"Reference ID","ID de referencia" -"Refresh","Actualizar" -"Refresh Now*","Actualizar ahora*" -"Refresh Statistics","Actualizar Estadísticas" -"Region/State","Región/Provincia" -"Regular Price:","Precio habitual:" -"Release","Versión" -"Release Stability","Estabilidad de la versión" -"Release Version","Lanzar Versión" -"Reload captcha","Volver a cargar captcha" -"Remote FTP","FTP remoto" -"Remove","Eliminar" -"Reports","Informes" -"Request Path","Solicitud de ruta" -"Required","Obligatorio" -"Reset","Reiniciar" -"Reset Filter","Restablecer Filtro" -"Reset Password","Reiniciar contraseña" -"Reset a Password","Restablecer contraseña" -"Resize","Redimensionar" -"Resource Access","Acceso a recursos" -"Resources","Recursos" -"Results","Resultados" -"Retrieve Password","Recuperar Contraseña" -"Return Html Version","Volver a la versión html" -"Revenue","Ingresos" -"Reviews","Reseñas" -"Reviews and Ratings","Revisiones y Valoraciones" -"Rewrite Rules","Volver a escribir reglas" -"Role ID","ID del rol" -"Role Info","Información del rol" -"Role Information","Información de la función" -"Role Name","Nombre de la función" -"Role Resources","Recursos de la función" -"Role Users","Usuario con roles" -"Roles","Roles" -"Roles Resources","Recursos de roles" -"Rotate CCW","Girar a la izquierda" -"Rotate CW","Girar a la derecha" -"Run","Ejecutar" -"Run Profile","Ejecutar el perfil" -"Run Profile Inside This Window","Ejecutar el perfil en esta ventana" -"Run Profile in Popup","Ejecutar el perfil en una nueva ventana" -"Running... Kill","Ejecutar.......Detener" -"SKU","SKU (Número de Referencia)" -"SKU:","SKU:" -"SSL Error: Invalid or self-signed certificate","Error SSL: certificado inválido o autofirmado" -"Sales","Ventas" -"Sales Report","Informe de ventas" -"Samples","Ejemplos" -"Save","Guardar" -"Save & Generate","Grabar y generar" -"Save Account","Guardar cuenta" -"Save Cache Settings","Guardar los ajustes caché" -"Save Config","Guardar configuración" -"Save Currency Rates","Guardar tasas de cambio" -"Save Profile","Guardar perfil" -"Save Role","Guardar función" -"Save Template","Guardar Plantilla" -"Save User","Guardar usuario" -"Save and Continue Edit","Guardar y continuar editando" -"Search","Buscar" -"Search Index","Índice de Búsqueda" -"Search Term","Plazo de búsqueda" -"Search Terms","Buscar Términos" -"Select","Seleccionar" -"Select All","Seleccionar todo" -"Select Category","Seleccionar Categoría" -"Select Date","Seleccionar Fechas" -"Select Range","Seleccionar Rango" -"Select date","Seleccionar fecha" -"Selected allowed currency ""%s"" is not available in installed currencies.","La divisa permitida seleccionada ""%s"" no está disponible en las divisas instaladas." -"Selected base currency is not available in installed currencies.","La moneda base seleccionada no está disponible en las monedas instaladas." -"Selected default display currency is not available in allowed currencies.","La divisa seleccionada en la pantalla predeterminada no está disponible entre las instaladas." -"Selected default display currency is not available in installed currencies.","La moneda seleccionada por defecto para mostrar no está disponible entre las monedas instaladas." -"Self-assigned roles cannot be deleted.","Los roles autoasignados no se pueden borrar." -"Sender","Remitente" -"Separate Email","Correo aparte" -"Service Settings","Configuración del servicio" -"Set up & Customize","Configuración y personalización" -"Shipment #%s comment added","El comentario al envío #%s ha sido añadido" -"Shipment #%s created","Se creó el envío #%s" -"Shipment Comments","Comentarios de Envío" -"Shipment History","Historial de Envíos" -"Shipments","Envíos" -"Shipping","Envío" -"Shipping Address","Dirección de Envío" -"Shipping Address: ","Dirección de" -"Shipping Origin","Origen del envío" -"Shipping Price","Precio de Envío" -"Shipping address selection is not applicable","La selección de dirección de envío no es aplicable" -"Shipping method must be specified.","El método de envío debe ser especificado." -"Shipping method selection is not applicable","La selección del método de envío no es aplicable" -"Shopping Cart","Cesta de la Compra" -"Shopping Cart Price Rules","Reglas de Precios del Carrito de Compra" -"Shopping Cart from %s","Carro de compra de %s" -"Show By","Mostrar Por" -"Show Report For:","Mostrar informe de:" -"Show Reviews","Mostrar Análisis" -"Sitemap Information","Información del Mapa de la Web" -"Size for %s","Tamaño de %s" -"Skip Category Selection","Saltar Selección de Categoría" -"Some items in this order have different invoice and shipment types. You can create shipment only after the invoice is created.","Algunos artículos de este pedido tienen diferentes tipos de factura y envío. Sólo puede crearse el envío una vez se haya creado la factura." -"Some of the ordered items do not exist in the catalog anymore and will be removed if you try to edit the order.","Algunos de los artículos solicitados no existen ya en el catálogo y serán eliminados si intentas modificar el pedido." -"Sorry, this feature is coming soon...","Lo siento, esta prestación pronto estará disponible..." -"Special Price:","Precio especial:" -"Specific Countries","Especifique países" -"Specified","Especificado" -"Specified profile does not exist.","No existe el perfil solicitado." -"Spreadsheet Name:","Nombre de la Hoja de cálculo:" -"Start Date","Fecha de Inicio" -"Starting profile execution, please wait...","Comenzando la ejecución del perfil, espere por favor..." -"State/Province:","Estado/Provincia:" -"Static Blocks","Bloques estáticos" -"Status","Progreso" -"Status:","Situación:" -"Stock Quantity:","Cantidad en Existencias:" -"Stock notification was saved.","Se ha guardado la notificación de stock." -"Store","Tienda" -"Store Email Addresses Section","Almacenar Sección de Direcciones de Correo Electrónico" -"Store View","Ver Tienda" -"Store:","Tienda:" -"Stores","Tiendas" -"Subject","Asunto" -"Submit","Enviar" -"Subpackage cannot be conflicting.","El Subpaquete no puede estar en conflicto" -"Subtotal","Subtotal" -"Switch/Solo/Maestro Only","Únicamente Switch/Solo/Maestro" -"Synchronization is required.","Se requiere sincronización." -"Synchronization of media storages has been successfully completed.","La sincronización de los almacenamientos de medios se ha completado correctamente." -"Synchronize","Sincronizar" -"Synchronizing %s to %s","Sincronizando %s con %s" -"Synchronizing...","Sincronizando..." -"System","Sistema" -"System Section","Selección de Sistema" -"System busy","El sistema está ocupado" -"Target Path","Ruta objetivo" -"Tax","Impuestos" -"Tb","Tb" -"Template","Plantilla" -"Template Content","Contenido de la plantilla" -"Template Information","Información de Plantilla" -"Template","Nombre de la plantilla" -"Template Styles","Estilos de plantilla" -"Template Subject","Tema de la plantilla" -"Template Type","Tipo de plantilla" -"Temporary (302)","Temporal (302)" -"Terms and Conditions","Términos y Condiciones" -"Text","Texto" -"The Catalog Rewrites were refreshed.","La Reescritura del Catálogo ha sido refrescada." -"The CatalogInventory Stock Status has been rebuilt.","Se ha reconstruido el Estado del Stock del Inventario de Catálogo." -"The Comment Text field cannot be empty.","El campo Comentar Texto no puede estar vacío." -"The Flat Catalog Product was rebuilt","El Cátalogo Plano de Producto ha sido reconstruido" -"The JavaScript/CSS cache has been cleaned.","La cache de JavaScript/CSS se ha limpiado" -"The JavaScript/CSS cache has been cleared.","Se ha limpiado la caché de JavaScript/CSS." -"The Layered Navigation indexing has been queued.","La Indexación de la Navegación por Capas se ha puesto en cola." -"The Layered Navigation indexing queue has been canceled.","La cola de indexación de la Navegación por Capas ha sido cancelada" -"The Layered Navigation indices were refreshed.","Los índices de Navegación por Capas han sido refrescados." -"The Layered Navigation process has been queued to be killed.","El proceso de Navegación por Capas ha sido puesto en cola para su finalización." -"The Magento cache storage has been flushed.","Se ha vaciado el almacenamiento de caché de Magento." -"The URL Rewrite has been deleted.","La URL Reescrita ha sido borrada" -"The URL Rewrite has been saved.","La URL Reescrita ha sido guardada" -"The account has been saved.","La cuenta se ha guardado." -"The archive can be uncompressed with %s on Windows systems","El archivo se puede descomprimir con %s en sistemas Windows" -"The attribute set has been removed.","Se eliminó el conjunto de atributos." -"The backup's creation process will take time.","El proceso de creación de la copia de seguridad llevará tiempo." -"The billing agreement has been canceled.","Se canceló el acuerdo de facturación." -"The billing agreement has been deleted.","Se eliminó el acuerdo de facturación." -"The cache storage has been flushed.","Se borró el almacenamiento de memoria caché." -"The carrier needs to be specified.","Necesita especificarse el transportista." -"The catalog index has been rebuilt.","Se reconstruyó el índice del catálogo." -"The catalog rewrites have been refreshed.","Se actualizaron las reescrituras del catálogo." -"The configuration has been saved.","Se guardó la configuración." -"The credit memo has been canceled.","Se canceló la nota de crédito." -"The credit memo has been created.","Se creó la nota de crédito." -"The credit memo has been voided.","La nota de crédito ha sido cancelada." -"The custom variable has been deleted.","Se eliminó la variable personalizada." -"The custom variable has been saved.","Se ha guardado la variable personalizada." -"The customer has been deleted.","Se eliminó el cliente." -"The customer has been saved.","Se ha guardado el cliente." -"The design change has been deleted.","Se eliminó el cambio de diseño." -"The design change has been saved.","Se guardó el cambio de diseño." -"The email address is empty.","La dirección de correo electrónico está vacía." -"The email template has been deleted.","Se ha eliminado la plantilla de correo electrónico." -"The email template has been saved.","Se guardó la plantilla de correo electrónico." -"The flat catalog category has been rebuilt.","Se ha reconstruido la categoría de catálogo plana." -"The group node name must be specified with field node name.","Debe especificarse el nombre del nodo grupal con el nombre del nodo de campo." -"The image cache was cleaned.","Se borró la memoria caché de la imagen." -"The image cache was cleared.","Se borró la memoria caché de la imagen." -"The invoice and shipment have been created.","Se creó la factura y el envío." -"The invoice and the shipment have been created. The shipping label cannot be created at the moment.","La factura y el envío se han creado. La etiqueta de envío no se puede crear en este momento." -"The invoice has been canceled.","Se canceló la factura." -"The invoice has been captured.","Se capturó la factura." -"The invoice has been created.","La factura ha sido creada." -"The invoice has been voided.","La factura se ha anulado." -"The invoice no longer exists.","La factura ya no existe." -"The item %s (SKU %s) does not exist in the catalog anymore.","El artículo %s (SKU %s) ya no existe en el catálogo." -"The order does not allow creating an invoice.","El pedido no permite crear una factura." -"The order no longer exists.","El pedido ya no existe." -"The profile has been deleted.","Se eliminó el perfil." -"The profile has been saved.","Se ha guardado el perfil." -"The profile has been updated.","El perfil ha sido actualizado." -"The profile has no changes.","El perfil no ha cambiado." -"The profile you are trying to save no longer exists","El perfil que está intentando guardar ya no existe" -"The rating has been deleted.","Se ha eliminado la valoración." -"The rating has been saved.","Se guardó la puntuación." -"The role has been deleted.","Se eliminó el rol." -"The role has been saved.","Se guardó el rol." -"The role has been successfully saved.","Se guardó correctamente el rol." -"The search index has been rebuilt.","Se reconstruyó el índice de búsqueda." -"The shipment has been created.","Se creó el en" -"The shipment has been sent.","Se ha enviado el pedido." -"The shipping label has been created.","Se ha creado la etiqueta de envío." -"The transaction details have been updated.","Se han actualizado los detalles de la transacción." -"The user has been deleted.","Se eliminó el usuario." -"The user has been saved.","Se ha guardado el usuario." -"Themes JavaScript and CSS files combined to one file.","Archivos de tema de JavaScript y CSS combinados en un archivo." -"There is an error in one of the option rows.","Se produjo un error en una de las filas de opción." -"This Account is","Esta cuenta es" -"This Email template no longer exists.","Esta plantilla de correo electrónico ya no existe." -"This Role no longer exists","Este Rol ya no existe" -"This Role no longer exists.","Este rol ya no existe." -"This account is","Esta cuenta es" -"This account is inactive.","Esta cuenta está inactiva." -"This action cannot be undone.","Esta acción no se puede deshacer." -"This attribute set does not have attributes which we can use for configurable product","Este conjunto de atributos no tiene atributos que podamos utilizar para un producto configurable" -"This attribute shares the same value in all the stores","Este atributo comparte el mismo valor en todas las tiendas" -"This is a demo store. Any orders placed through this store will not be honored or fulfilled.","Esta es una tienda de demostración. Cualquier pedido que se realice a través de esta tienda no será tramitado o completado." -"This is a required field.","Este es un campo obligatorio." -"This product is currently disabled.","Este producto está desactivado actualmente." -"This report depends on timezone configuration. Once timezone is changed, the lifetime statistics need to be refreshed.","Este informe depende de la configuración de la zona horaria. Una vez que se cambia la zona horaria, el periodo de extensión de las estadísticas ha de ser actualizado." -"This section is not allowed.","Esta sección no está permitida." -"This user no longer exists.","Este usuario ya no existe." -"Time","Hora" -"Time selection:","Selección de hora:" -"Time:","Hora:" -"Timeout limit for response from synchronize process was reached.","Se ha alcanzado el límite de tiempo de espera del proceso de sincronización." -"To","A" -"To cancel pending authorizations and release amounts that have already been processed during this payment, click Cancel.","Para cancelar autorizaciones pendientes y liberar importes que ya se han procesado durante este pago, haga clic en Cancelar." -"To use PayPal Payflow Link you must configure some settings in your Payflow account by logging into","Para usar Payflow Link, debe configurar su cuenta de Payflow Link en el sitio web de Paypal." -"To use PayPal Payments Advanced you must configure some settings in your PayPal Payments Advanced account by logging into","Para usar Pagos Avanzados de PayPal debes configurar algunas opciones de tu cuenta de Pagos Avanzados de PayPal iniciando sesión." -"Toggle Editor","Cambiar a editor" -"Tools","Herramientas" -"Top 5 Search Terms","5 Artículos Más Buscados" -"Total","Total" -"Total Invoiced","Total facturado" -"Total","Cantidad total del pedido" -"Total Refunded","Total reembolsado" -"Total of %d record(s) have been deleted.","Total de % registrado se ha eliminado." -"Total of %d record(s) have been updated.","Un total de %d registro(s) ha(n) sido actualizado(s)." -"Total of %d record(s) were canceled.","Se ha cancelado un total de %d registro(s)." -"Total of %d record(s) were deleted","Se han eliminado un total de %d registro(s)" -"Total of %d record(s) were deleted.","Se han eliminado un total de %d registro(s)." -"Total of %d record(s) were updated","Se han actualizado un total de %d registro(s)" -"Total of %d record(s) were updated.","Se han actualizado un total de %d registro(s)." -"Track Order","Rastrear un Pedido" -"Track this shipment","Rastrear este envío" -"Tracking number %s for %s assigned","Número de seguimiento %s asignado para %s" -"Tracking number cannot be empty.","El número de seguimiento no puede estar vacío." -"Transaction Data","Datos de la Transacción" -"Transaction Details","Detalles de la transacción" -"Transaction ID","Número de identificación de la transacción" -"Transaction Type","Tipo de Transacción" -"Transactional Emails","Emails Transaccionales" -"Transactions","Transacciones" -"Type","Tipo" -"Type:","Tipo:" -"URL Rewrite","Reescritura de la URL" -"URL Rewrite Information","Información de reescritura de URL" -"URL Rewrite Management","Administración de la reescritura de la URL" -"Unable to cancel the credit memo.","Deshabilitar cancelación de nota de crédito." -"Unable to find a Email Template to delete.","Deshabilitar encontrar plantilla de email para eliminar." -"Unable to find a user to delete.","No se puede encontrar un usuario para eliminar." -"Unable to initialize import model","Incapaz de iniciar el modelo de importación" -"Unable to refresh lifetime statistics.","Incapaz de volver a cargar estadísticas totales." -"Unable to refresh recent statistics.","Imposible actualizar las estadísticas" -"Unable to save Cron expression","Imposible guardar la expresión Cron" -"Unable to save the cron expression.","No se puede guardar la expresión de cron." -"Unable to save the invoice.","Imposible guardar la factura." -"Unable to send the invoice email.","Imposible mandar la factura por correo electrónico." -"Unable to send the shipment email.","No ha sido posible mandar el correo electrónico de envío." -"Unable to update transaction details.","No es posible actualizar la información de la transación." -"Unable to void the credit memo.","Imposible anular la nota de crédito." -"Unknown","Desconocido" -"Unlimited","Ilimitado" -"Update","Actualizar" -"Updated At","Hora de actualización" -"Upload File","Cargar Archivo" -"Upload Files","Subir archivos" -"Upload HTTP Error","Error HTTP de carga" -"Upload I/O Error","Cargar Error I/O" -"Upload Security Error","Error de seguridad de carga" -"Upload import file","Cargar archivo importado" -"Uploaded file is larger than %.2f kilobytes allowed by server","El archivo subido es mayor de los %.2f kb que permite el servidor" -"Use All Available Attributes","Utilizar todas las características disponibles" -"Use Config Settings","Usar Opciones de Configuración" -"Use Default","El uso por defecto" -"Use Default Value","Utilizar Valor por Defecto" -"Use Default Variable Values","Utilizar los valores variables por defecto" -"Use FTP Connection","Usar conexión FTP" -"Use Website","Utilizar el sitio web" -"Used Currently For","Utilizado actualmente para" -"Used as Default For","Utilizado por defecto para" -"User Email","Dirección de correo del cliente" -"User ID","ID de Usuario" -"User Info","Información del usuario" -"User Information","Información de usuario" -"User Name","Nombre de usuario" -"User Name is required field.","El nombre del usuario es un campo obligatorio." -"User Name:","Nombre usuario:" -"User Password","Contraseña del usuario" -"User Role","Profesión del usuario" -"User Roles","Papeles de Usuario" -"User Roles Information","Información de profesión del usuario" -"User name","Nombre de usuario" -"Users","Usuarios" -"VAT Number is Invalid","El número de IVA es inválido" -"VAT Number is Valid","El número de IVA es válido" -"Validation Results","Resultados de Validación" -"Value","Valor" -"Value Delimiter:","Separador de valores:" -"Variable","Variable" -"Variable Code","Código Variable" -"Variable HTML Value","Valor de HTML Variable" -"Variable ID","ID de variable" -"Variable Name","Nombre Variable" -"Variable Plain Value","Valor Simple Variable" -"View Actions XML","Ver Acciones XML" -"View Full Size","Ver a tamaño completo" -"View Memo","Ver Memorándum" -"View Memo for #%s","Ver el memorándum de #%s" -"View Shipment","Ver Envío" -"View Statistics For:","Ver estadísticas de:" -"Visibility:","Visibilidad:" -"Warning","Aviso" -"Warning! Empty value can cause problems with CSV format.","Atención: los valores vacíos pueden causar problemas con el formato CSV." -"Warning!\r\nThis action will remove this user from already assigned role\r\nAre you sure?","¡Atención!\r\nLa acción eliminará al usuario de un rol ya asignado.\r\n¿Está seguro?" -"Warning!\r\nThis action will remove those users from already assigned roles\r\nAre you sure?","¡Atención!\r\nEsta acción borrará aquellos usuarios de los roles ya asignados\r\n¿Está seguro?" -"Warning: Please do not close the window during importing/exporting data","Atención: No cierre la ventana mientras importa/exporta datos" -"Watermark File for %s","Archivo de Marca de Agua de %s" -"We appreciate our merchants\' feedback, please take our survey to provide insight on the features you would like included in Magento. Remove this notification","Agradecemos los comentarios de nuestros vendedores. Por favor, rellene nuestra encuesta para indicarnos las funcionalidades que querría ver en Magento. Eliminar esta notificación" -"We\'re in our typing table, coding away more features for Magento. Thank you for your patience.","Estamos en nuestro escritorio, codificando más características para Magento. Gracias por su paciencia." -"Web Section","Sección Web" -"Web Services","Servicios Web" -"Web services","Servicios web" -"Website","Sitio web" -"What is this?","¿Qué es esto?" -"Wishlist Report","Informe de lista de deseos" -"Wishlist item is not loaded.","El artículo de la lista de intención de compra no está cargado." -"Wrong account specified.","La cuenta especificada es errónea." -"Wrong billing agreement ID specified.","Se ha especificado un ID de acuerdo de facturación no válido." -"Wrong column format.","Formato de columna erróneo." -"Wrong newsletter template.","Plantilla de boletín de noticias errónea." -"Wrong quote item.","Artículo mal expresado." -"Wrong tab configuration.","Configuración de pestañas no válido." -"Wrong transaction ID specified.","ID de transacción especificada errónea." -"XML","XML" -"XML data is invalid.","dato XML inválido" -"XML object is not instance of ""Magento\Simplexml\Element"".","El objeto XML no es un caso de ""Magento\Simplexml\Element""." -"YTD","YTD" -"Year","Año" -"Yes","Sí" -"Yes (301 Moved Permanently)","Sí (301 Movidos Permanentemente)" -"Yes (302 Found)","Sí (302 Encontrados)" -"Yes (only price with tax)","Si (solo el precio con impuestos)" -"You cannot delete your own account.","No puede borrar su propia cuenta." -"You have %s unread message(s).","Tiene %s mensaje(s) sin leer." -"You have %s unread message(s). Go to messages inbox.","Tienes %s mensaje(s) sin leer. Ir a la bandeja de entrada." -"You have %s, %s and %s unread messages. Go to messages inbox.","Tienes %s, %s y %s mensajes sin leer. Ir a la bandeja de entrada." -"You have logged out.","Se ha desconectado." -"You have not enough permissions to use this functionality.","No tiene suficientes permisos para usar esta función." -"You must have JavaScript enabled in your browser to utilize the functionality of this website.","Debe tener activado JavaScript en su navegador para utilizar la funcionalidad de esta página web." -"You need to specify order items.","Tiene que especificar objetos de orden." -"You will need to wait when the action ends.","Tendrá que esperar cuando termine la acción." -"Your answers contain duplicates.","Sus respuestas contienen duplicados." -"Your password has been updated.","Se ha actualizado su contraseña." -"Your password reset link has expired.","El enlace para reiniciar la contraseña ha caducado." -"Your server PHP settings allow you to upload files not more than %s at a time. Please modify post_max_size (currently is %s) and upload_max_filesize (currently is %s) values in php.ini if you want to upload larger files.","La configuración del PHP de su servidor sólo le permite subir archivos de no más de %s de una vez. Modifique los valores de post_max_size (actualmente es %s) y upload_max_filesize (actualmente es %s) de php.ini si quiere subir archivos mayores." -"Your web server is configured incorrectly. As a result, configuration files with sensitive information are accessible from the outside. Please contact your hosting provider.","Tu servidor web está configurado incorrectamente. Como resultado, los ficheros de configuración con información confidencial son accesibles desde fuera. Por favor, contacta a tu proveedor de alojamiento." -"Zip/Postal Code","Código postal" -"Zip/Postal Code:","Código postal:" -"[ deleted ]","[ eliminado ]" -"[GLOBAL]","[GLOBAL]" -"[STORE VIEW]","[VISTA DE TIENDA]" -"[WEBSITE]","[PÁGINA WEB]" -"b","b" -"close","cerrar" -"critical","crítico" -"example: ""sitemap/"" or ""/"" for base path (path must be writeable)","ejemplo: ""sitemap/"" o ""/"" para la ruta base (la ruta debe poder reescribirse)" -"example: sitemap.xml","ejemplo: sitemap.xml" -"failed","error" -"from","de" -"major","mayor" -"minor","menor" -"notice","aviso" -"store(%s) scope","ámbito de almacenamiento(%s)" -"successful","exitoso" -"to","para" -"website(%s) scope","ámbito de página web(%s)" -"{{base_url}} is not recommended to use in a production environment to declare the Base Unsecure URL / Base Secure URL. It is highly recommended to change this value in your Magento configuration.","{{base_url}} no recomienda usarse en un ambiente de producción para declarar la URL Base Insegura / URL Base Segura. Es altamente recomendable cambiar este valor en tu configuración de Magento." diff --git a/app/code/Magento/Adminhtml/i18n/fr_FR.csv b/app/code/Magento/Adminhtml/i18n/fr_FR.csv deleted file mode 100644 index ec17ff90df427..0000000000000 --- a/app/code/Magento/Adminhtml/i18n/fr_FR.csv +++ /dev/null @@ -1,1144 +0,0 @@ -" The customer does not exist in the system anymore.","Le client n'existe plus dans le système." -" You will need to navigate to your ","Vous aurez besoin de vous diriger vers votre" -" [deleted]","[supprimé]" -" and "," et " -" and go to the "," et d'aller à " -" sections for your Hosted Checkout Pages."," les sections de vos pages de sortie hébergées." -"%s (Default Template from Locale)","%s (Modèle par Défaut de la Configuration Locale)" -"%s cache type(s) disabled.","Type(s) de cache %s désactivé(s)" -"%s cache type(s) enabled.","Type(s) de cache %s activé(s)" -"%s cache type(s) refreshed.","Type(s) de cache %s rafraîchi(s)." -"(For Type ""Local Server"" need to use relative path to Magento install var/export or var/import, e.g. var/export, var/import, var/export/some/dir, var/import/some/dir)","(pour le type ""Serveur local"", nécessaire d'utiliser le chemin relatif vers l'installation de Magento var/export ou var/import, e.g. var/export, var/import, var/export/some/dir, var/import/some/dir)" -"(For US 2-letter state names)","(Pour noms d'Etats US à 2 lettres)" -"(If left empty will be auto-generated)","(si laissé vide, sera généré automatiquement)" -"(Leave empty for first spreadsheet)","(Laisser vide pour premier tableur)" -"(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)","(Les produits seront ajoutés/actualisés à cette boutique si la colonne ""boutique"" est vide ou fait défaut dans le fichier d'importation.)" -"(Shift-)Click or drag to change value","Cliquez + SHIFT ou faites glisser pour modifier la valeur" -"(Starting with)","(Commençant par)" -"(When 'No', only mapped fields will be imported. When mapping, use 'column1', 'column2', etc.)","(Lorsque ""Non"", seuls les champs taggés seront importés. Lors du tag, utilisez ""colonne1"", colonne2"", etc)" -"(You have to increase php memory_limit before changing this value)","(Vous devez augmenter la limite de mémoire php avant de modifier cette valeur)" -"(\\t for tab)","(\t pour tabulation)" -"* - If indexing is in progress, it will be killed and new indexing process will start.","* - Si l'indexation est en cours, elle sera annulée et une nouvelle indexation commencera." -"- Click on any of the time parts to increase it","- Cliquez sur n'importe quelle partie de l'heure pour l'augmenter" -"- Hold mouse button on any of the above buttons for faster selection.","- Maintenez le bouton de la souris enfoncé sur n'importe lequel des boutons ci-dessus pour accélérer la sélection." -"- Use the %s buttons to select month","- Utilisez les boutons %s pour sélectionner le mois" -"- Use the %s, %s buttons to select year","- Utilisez les boutons %s, %s pour sélectionner l'année" -"- or Shift-click to decrease it","- ou Cliquez + SHIFT pour la diminuer" -"- or click and drag for faster selection.","- ou cliquez et faites glisser pour accélérer la sélection." -"-- Not Selected --","-- Non Sélectionné --" -"-- Please Select --","-- Sélectionnez --" -"-- Please Select Billing Agreement--","-- Veuillez sélectionner un accord de facturation--" -"-- Please Select a Category --","-- Sélectionnez une catégorie --" -"-- Please select --","-- Veuillez sélectionner --" -"--Please Select--","--Veuillez sélectionner--" -"1 Hour","1 Heure" -"1. set up","1. installation" -"12 Hours","12 Heures" -"12h AM/PM","12h AM/PM" -"2 Hours","2 Heures" -"2. customize","2. personnaliser" -"24 Hours","24 Heures" -"24h","24h" -"2YTD","Jusqu'à ce jour" -"6 Hours","6 Heures" -"

404 Error

Page not found.

","

404 Error

Page not found.

" -"Attention: Captcha is case sensitive.","Attention:Captcha est sensible à la casse." -"A user with the same user name or email aleady exists.","Un utilisateur avec le même nom d'utilisateur ou le même email existe déjà." -"API Key","Clé API" -"API Key Confirmation","Confirmation Clé API" -"ASCII","ASCII" -"Abandoned Carts","Paniers abandonnés" -"About the calendar","Au sujet du calendrier" -"Access Denied","Accès refusé" -"Access denied","Accès refusé" -"Access denied.","Accès refusé." -"Account Created in:","Compte créé dans:" -"Account Created on (%s):","Compte créé sur (%s):" -"Account Created on:","Compte créé sur:" -"Account Information","Informations du compte" -"Account Status","Statut Compte" -"Account status","Statut du compte" -"Action","Action" -"Actions","Action" -"Actions XML","Actions XML" -"Active","Actif" -"Add","Ajouter" -"Add \Exception","Ajouter \Exception" -"Add Field Mapping","Ajouter Mappage Champ" -"Add Field with URL:","Ajouter Champ avec URL:" -"Add New","Ajouter nouveau" -"Add New Image","Ajouter Nouvelle Image" -"Add New Profile","Ajouter Nouveau Profil" -"Add New Role","Ajouter Nouveau Rôle" -"Add New Template","Ajouter un nouveau modèle" -"Add New URL Rewrite","Ajouter Réécriture Nouvelle URL" -"Add New User","Ajouter Nouvel Utilisateur" -"Add New Variable","Ajouter Nouvelle Variable" -"Add Products","Ajouter produits" -"Add URL Rewrite","Ajouter Réécriture URL" -"Add URL Rewrite for a Category","Ajouter Réécriture URL pour une Catégorie" -"Add URL Rewrite for a Product","Ajouter Réécriture URL pour un Produit" -"Add after","Ajouter après" -"Additional Cache Management","Gestion Cache Additionnel" -"Address Type:","Type d'Adresse:" -"Admin","Admin" -"Advanced Admin Section","Section Avancée Administrateur" -"Advanced Profiles","Profils Avancés" -"Advanced Section","Section Avancée" -"All","Tous" -"All Allowed Countries","Tous les Pays Possibles" -"All Cache","Tout le Cache" -"All Files","Tous les Fichiers" -"All Reviews","Tous les avis" -"All Store Views","Toutes les vues de la boutique" -"All Websites","Tous les sites web" -"All countries","Tous les pays" -"All fields","Tous les champs" -"All possible rates were fetched, please click on ""Save"" to apply","Tous les taux possibles ont été estimés, veuillez cliquer sur ""Enregistrer"" pour appliquer" -"All rates were fetched, please click on ""Save"" to apply","Tous les taux ont été estimés, cliquez sur ""Enregistrer"" pour appliquer" -"All valid rates have been saved.","Tous les taux valides ont été sauvegardés." -"Always (during development)","Toujours (durant le développement)" -"Amounts","Montants" -"An error has occurred while syncronizing media storages.","Une erreur est survenue lors de la synchronisation." -"An error occurred while clearing the JavaScript/CSS cache.","Une erreur s'est produite lors de la suppression du cache JavaScript/CSS." -"An error occurred while clearing the image cache.","Une erreur s'est produite lors de la suppression du cache de l'image." -"An error occurred while deleting URL Rewrite.","Un erreur s'est produite lors de l'effacement de URL de réécriture." -"An error occurred while deleting email template data. Please review log and try again.","Une erreur s'est produite lors de la suppression des données du modèle d'email. Consultez le journal des erreurs et réessayez." -"An error occurred while deleting record(s).","Une erreur s'est produite lors de l'effacement des enregistrements." -"An error occurred while deleting this role.","Une erreur s'est produite lors de la suppression de ce rôle." -"An error occurred while deleting this set.","Une erreur s'est produite lors de la suppression de ce jeu." -"An error occurred while deleting this template.","Une erreur s'est produite lors de la suppression de ce modèle." -"An error occurred while finishing process. Please refresh the cache","Une erreur s'est produite lors de la finalisation du processus. Rafraîchissez le cache" -"An error occurred while rebuilding the CatalogInventory Stock Status.","Une erreur s'est produite lors de la reconstitution du Statut de l'Inventaire du Stock du Catalogue." -"An error occurred while rebuilding the catalog index.","Une erreur s'est produite lors de la la reconstitution de l'indexation du catalogue." -"An error occurred while rebuilding the flat catalog category.","Une erreur s'est produite lors de la reconstitution de la catégorie du flat catalog" -"An error occurred while rebuilding the flat product catalog.","Une erreur s'est produite lors de la reconstitution du flat catalog produit." -"An error occurred while rebuilding the search index.","Une erreur s'est produite lors de la reconstitution de l'index de recherche." -"An error occurred while refreshing the Catalog Rewrites.","Une erreur s'est produite lors du rafraîchissement des réécritures catalogue." -"An error occurred while refreshing the Layered Navigation indices.","Une erreur s'est produite lors du rafraîchissement des indices de navigation multicouches." -"An error occurred while refreshing the catalog rewrites.","Une erreur est survenue lors de l'actualisation des catalogues." -"An error occurred while refreshing the layered navigation indices.","Une erreur est survenue lors de l'actualisation des indices de navigation;" -"An error occurred while saving URL Rewrite.","Une erreur s'est produite lors de la sauvegarde de l'URL de réécriture." -"An error occurred while saving account.","Une erreur s'est produite lors de la sauvegarde du compte." -"An error occurred while saving review.","Une erreur s'est produite lors de la sauvegarde de la vérification." -"An error occurred while saving the customer.","Une erreur s'est produite lors de la sauvegarde du client." -"An error occurred while saving this configuration:","Une erreur s'est produite lors de la sauvegarde de cette configuration:" -"An error occurred while saving this role.","Une erreur s'est produite lors de la sauvegarde de ce rôle." -"An error occurred while saving this template.","Une erreur s'est produite lors de la sauvegarde de ce modèle." -"An error occurred while updating the selected review(s).","Une erreur s'est produite lors de l'actualisation des commentaires sélectionnés." -"Any","Indifférent" -"Any Attribute Set","N'importe quel jeu d'attributs." -"Any Group","N'importe quel groupe." -"Any Status","N'importe quel Statut" -"Any Store","N'importe quelle Boutique" -"Any Type","N'importe quel Type" -"Any Visibility","N'importe quelle Visibilité" -"Any data created since the backup was made will be lost including admin users, customers and orders.","Toutes les données crées depuis la sauvegarde seront perdues, y compris les utilisateurs-administrateurs, les clients et les commandes." -"Archive file name:","Nom du fichier d'archive:" -"Are you sure that you want to delete this template?","Voulez-vous vraiment supprimer ce modèle ?" -"Are you sure that you want to strip tags?","Êtes-vous sûr de vouloir enlever les tags?" -"Are you sure you want to do this?","Êtes-vous sûrs de vouloir faire celà?" -"Are you sure you want to proceed?","Etes-vous certain(e) de vouloir continuer?" -"Area","Zone" -"As low as:","Aussi bas que :" -"Assigned","Assigné" -"Attribute Set Name:","Nom du jeu d'attributs:" -"Attributes","Attributs" -"Automatic","Automatique" -"Average","Montant Moyen des Commandes" -"Average Orders","Commandes moyennes" -"BINARY","BINAIRE" -"Back","Retour" -"Back to Login","Retour à la connexion" -"Backup","Sauvegarde" -"Backup Name","Nom de la sauvegarde" -"Backup options","Options de sauvegarde" -"Backups","Sauvegardes" -"Base currency","Monnaie de base" -"Bcc","Liste des destinataires cachée." -"Bestsellers","Meilleures ventes" -"Billing Address","Adresse de facturation" -"Billing Address: ","Adresse de facturation :" -"Billing Agreement","Accord de facturation" -"Billing Agreements","Accords de facturation" -"Block Information","Bloquer l'information" -"Both (without and with tax)","Les deux (avec et sans les taxes)" -"Both IPN and PDT","IPN et PDT" -"Browse Files...","Parcourir..." -"Bundle with dynamic pricing cannot include custom defined options. Options will not be saved.","Les ensembles comprenant une tarification dynamique ne peuvent pas comprendre d'option personnalisée. Les options ne seront pas enregistrées." -"CMS","CMS" -"CRITICAL","critique" -"CSV","CSV (valeurs séparées par des virgules)" -"CSV / Tab separated","CSV / Séparé par onglets" -"Cache Control","Cache-control" -"Cache Control (beta)","Cache-control (beta)" -"Cache Management","Gestion du cache" -"Cache Type","Type de cache" -"Cancel","Annuler" -"Cannot add new comment.","Impossible d'ajouter un nouveau commentaire." -"Cannot add tracking number.","Impossible d'ajouter un numéro de suivi." -"Cannot create an invoice without products.","Impossible de créer une facture sans produit." -"Cannot create credit memo for the order.","Impossible de créer la note de crédit pour la commande." -"Cannot delete the design change.","Impossible de supprimer la modification du design." -"Cannot delete tracking number.","Impossible de supprimer le numéro de suivi." -"Cannot do shipment for the order separately from invoice.","Impossible d'effectuer l'envoi et la facture de la commande séparément." -"Cannot do shipment for the order.","Impossible d'effectuer l'envoi pour la commande." -"Cannot initialize shipment for adding tracking number.","Impossible d'initialiser l'envoi pour ajouter un numéro de suivi." -"Cannot initialize shipment for delete tracking number.","Impossible d'initialiser l'envoi pour supprimer un numéro de suivi." -"Cannot load track with retrieving identifier.","Ne peut pas récupérer l'identifiant pour charger le suivi" -"Cannot retrieve tracking number detail.","Impossible de récupérer le détail du numéro de suivi." -"Cannot save shipment.","Impossible d'enregistrer l'envoi." -"Cannot save the credit memo.","Impossible d'enregistrer la note de crédit." -"Cannot send shipment information.","Impossible d'envoyer les informations sur l'envoi." -"Cannot update item quantity.","Impossible de mettre à jour la quantité d'articles." -"Cannot update the item\'s quantity.","Impossible de mettre à jour la quantité de cet article." -"Catalog","Catalogue" -"Catalog Price Rules","Règles de prix du catalogue" -"Catalog Rewrites","Réécritures catalogue" -"Categories","Catégories" -"Category:","Catégorie :" -"Chart is disabled. If you want to enable chart, click here.","Graphique désactivé. Si vous souhaitez l'activer, cliquez ici." -"Checkbox","Case à cocher" -"Child Transactions","Transactions enfant" -"Choose Store View:","Sélectionner la vue de la boutique :" -"Choose an attribute","Choisir un attribut" -"Chosen category does not associated with any website, so url rewrite is not possible.","La catégorie choisie n'est associée à aucun site Web, la réécriture de l'URL n'est donc pas possible." -"Chosen product does not associated with any website, so url rewrite is not possible.","Le produit choisi n'est associé à aucun site Web, la réécriture de l'URL n'est donc pas possible." -"Clear","Effacer" -"Close","fermer" -"Comment text field cannot be empty.","Le champ de texte du commentaire ne peut pas être vide." -"Complete","Terminer" -"Configuration","Configuration" -"Confirm New Password","Confirmer le nouveau mot de passe" -"Confirmed email:","E-mail confirmé :" -"Connect with the Magento Community","Connexion avec Magento Community" -"Continue","Continuer" -"Continuous","Continu(e)" -"Convert to Plain Text","Convertir en texte intégral" -"Cookie (unsafe)","Cookie (dangereux)" -"Country","Pays" -"Country:","Pays :" -"Coupons","Coupons" -"Create","Créer" -"Create DB Backup","Créer une sauvegarde de la base de données" -"Create New Attribute","Créer un nouvel attribut" -"Create URL Rewrite:","Créer une réécriture d'URL :" -"Created At","Créé à" -"Credit Card %s","Carte bancaire %s" -"Credit Memo History","Historique des notes de crédit" -"Credit Memo Totals","Total des notes de crédit" -"Credit Memos","Avoirs" -"Credit memo #%s comment added","Commentaire ajouté à la note de crédit #%s" -"Credit memo #%s created","Note de crédit #%s créée" -"Credit memo\'s total must be positive.","Le total des notes de crédit doit être positif." -"Currency","Monnaie" -"Currency ""%s"" is used as %s in %s.","La monnaie ""%s"" est utilisée comme %s dans %s." -"Currency Information","Informations sur la devise" -"Currency Setup Section","Section d'installation de devises" -"Current Configuration Scope:","Portée actuelle des options :" -"Current Month","Mois actuel" -"Custom","Personnalisé" -"Custom Variable ""%s""","Variable personnalisée ""%s""" -"Custom Variables","Variables sur mesure" -"Customer","Client" -"Customer Group:","Groupe de clients :" -"Customer Groups","Groupes de clients" -"Customer","Nom du client" -"Customer Reviews","Avis du client" -"Customer Shopping Carts","Panier du client" -"Customer Since:","Client depuis :" -"Customer Tax Classes","Classes de taxe client" -"Customer with the same email already exists.","Un client avec le même e-mail existe déjà." -"Customers","Clients" -"Customers by Orders","Clients par nombre de commandes" -"Customers by Orders Total","Clients par total des commandes" -"DHTML Date/Time Selector","Sélecteur de date/heure DHTML" -"Dashboard","Tableau de bord" -"Data Format","Format des données" -"Data transfer:","Transfert de données :" -"Database","Base de données" -"Date","Date" -"Date & Time","Date & Heure" -"Added","Date ajoutée" -"Updated","Date de mise à jour" -"Date selection:","Sélection de la date :" -"Date selector","Sélecteur de date" -"Day","Jour" -"Decimal separator:","Séparateur de décimales :" -"Default (Admin) Values","Valeurs par défaut (Admin)" -"Default Billing Address","Adresse de facturation par défaut" -"Default Config","Config par défaut" -"Default Template from Locale","Modèle par défaut de Locale" -"Default Values","Valeurs par défaut" -"Default display currency ""%s"" is not available in allowed currencies.","Monnaie d'affichage apr défaut ""%s"" ne fait pas partie des monnaies autorisées." -"Default scope","Portée par défaut" -"Delete","Supprimer" -"Delete %s","Supprimer %s" -"Delete %s '%s'","Supprimer %s '%s'" -"Delete File","Supprimer fichier" -"Delete Image","Supprimer l'image" -"Delete Profile","Supprimer profil" -"Delete Role","Supprimer modèle" -"Delete Store","Supprimer le magasin" -"Delete Store View","Supprimer la vue du magasin" -"Delete Template","Supprimer le modèle" -"Delete User","Supprimer utilisateur" -"Delete Website","Supprimer le site" -"Description","Description" -"Design","Design" -"Design Section","Section de design" -"Details","Détails" -"Developer Section","Section développeur" -"Direction:","Direction :" -"Disable","Désactiver" -"Disabled","Désactivé" -"Display %s first","Afficher %s en premier" -"Display default currency","Afficher la devise par défaut" -"Distributed under GNU LGPL. See %s for details.","Distribué sous la licence GNU LGPL. Voir %s pour plus de détails." -"Do you really want to KILL parallel process and start new indexing process?","Voulez-vous vraiment ARRÊTER les processus parallèles et commencer un nouveau processus d'indexation ?" -"Do you really want to proceed?","Voulez-vous vraiment continuer?" -"Download","Téléchargement" -"Downloads","Téléchargements" -"Drag to move","Faire glisser pour déplacer" -"Drop-down","Menu déroulant" -"Edit","Modifier" -"Edit Design Change","Éditer les changements de design" -"Edit Email Template","Modifier le modèle d'e-mail" -"Edit Order","Modifier la commande" -"Edit Queue","Modifier la file d'attente" -"Edit Review","Modifier le rapport" -"Edit Role","Modifier modèle" -"Edit Store View","Éditer la vue du magasin" -"Edit System Template","Modifier modèle système" -"Edit Template","Modifier le modèle" -"Edit URL Rewrite","Modifier la réécriture d'URL" -"Edit User","Modifier l'utilisateur" -"Edit User '%s'","Modifier l'utilisateur '%s'" -"Edit Website","Éditer le site web" -"Email","Email" -"Email Address:","Adresse e-mail:" -"Email Preview","Prévisualisation de l'e-mail" -"Email to a Friend","Envoyer à un ami par email" -"Email:","Email :" -"Enable","Activer" -"Enabled","Actif" -"Enclose Values In:","Joindre les valeurs dans :" -"Entity Attributes","Attributs de l'entité" -"Entity Type","Type d'entité" -"Entity type:","Type d'entité :" -"Error","Erreur" -"Excel XML","Excel XML" -"Excl. Tax","Taxe non comprise" -"Exclude media folder from backup","Exclure les fichiers médias de la sauvegarde" -"Export","Exporter" -"Export CSV","Exporter en CSV" -"Export Filters","Filtres d'exportation" -"Export to:","Exporter vers" -"Export:","Exporter:" -"FTP Host","Hôte FTP" -"FTP Host[:Port]","Hôte FTP [:Port]" -"FTP Login","Connexion FTP" -"FTP Password","Mot de passe FTP" -"FTP credentials","Certificats FTP" -"Failed to add a product to cart by id ""%s"".","Echec de l'ajout du produit au panier ""%s""" -"Failed to cancel the billing agreement.","L'annulation du tarif précédemment accepté a échoué." -"Failed to clear the JavaScript/CSS cache.","Échec de l'effacement du cache JavaScript/CSS." -"Failed to delete the billing agreement.","L'effacement du tarif précédemment accepté a échoué." -"Failed to update the profile.","Échec de la mise à jour du profil." -"Field","Champ" -"Field Mapping","Mappage de champ" -"File","Fichier" -"File Information","Informations du fichier" -"File System","Système de fichier" -"File mode","Mode de fichier" -"File name:","Nom de fichier :" -"File size should be more than 0 bytes","La taille du fichier doit dépasser 0 bytes." -"Finished profile execution.","Exécution du profil terminée." -"First Invoice Created Date","Date de création de la première facture" -"First Name","Prénom" -"First Name is required field.","Il est obligatoire de remplir le champ du prénom." -"First Name:","Prénom :" -"Fixed","Fixé" -"Flush Catalog Images Cache","Effacer le cache image du catalogue" -"Flush JavaScript/CSS Cache","Effacer le cache JavaScript/CSS" -"For category","Pour la catégorie" -"For latest version visit: %s","Pour la version de la dernière visite: %s" -"For product","Pour le produit" -"Forgot Admin Password","Mot de passe administrateur oublié" -"Forgot your password?","Mot de passe oublié ?" -"Forgot your user name or password?","Mot de passe ou nom d'utilisateur oublié ?" -"From","de" -"GLOBAL","GLOBAL" -"Gb","La G.B." -"General Information","Informations générales" -"General Section","Section générale" -"Get Image Base64","Encoder les images en base 64" -"Get help for this page","Obtenir de l'aide pour cette page" -"Global Attribute","Attribut global" -"Global Record Search","Enregistrement global des recherches" -"Global Search","Recherche globale" -"Go Today","Aller à aujourd'hui" -"Go to messages inbox","Aller à la boite de réception" -"Go to notifications","Aller aux notifications" -"Google Base","Google Base" -"Google Sitemaps","Google Sitemaps" -"Grand Total","Total final" -"Grid (default) / List","Grille (par défaut) / Liste" -"Grid Only","Grille uniquement" -"Group:","Groupe :" -"Guest","Invité" -"HTTP (unsecure)","HTTP (non-sécurisé)" -"HTTPS (SSL)","HTTPS (SSL) (Secure Socket Layer: confidentialité, intégrité, authentification)" -"Help Us Keep Magento Healthy - Report All Bugs","Aidez-nous à maintenir le bon fonctionnement de Magento: signalez tout dysfonctionnement." -"Helper attributes should not be used in custom layout updates.","Les attributs helper ne doivent pas être utilisés dans les mises à jour des dispositions personnalisées." -"Helper for options rendering doesn't implement required interface.","Helper pour le rendu des options n'implante pas l'interface requise." -"Home","Accueil" -"ID","ID" -"ID Path","ID du chemin" -"IP Address","Adresse IP" -"IPN (Instant Payment Notification) Only","NPI (Notification de Paiement Instantanée) seulement" -"If there is an account associated with %s you will receive an email with a link to reset your password.","S'il y a un compte associé à %s, vous recevrez un courriel contenant un lien pour réinitialiser votre mot de passe." -"If this message persists, please contact the store owner.","Si ce message persiste, veuillez contacter le propriétaire de la boutique." -"Images (.gif, .jpg, .png)","Images (.gif, .jpg, .png)" -"Images Cache","Cache d'image" -"Import","Importer" -"Import Service","Service d'importation" -"Import and Export","Importation et exportation" -"Import and Export Tax Rates","Taux d'imposition des importations et des exportations." -"Import/Export","Import/Export" -"Import/Export Advanced","Importation/exportation avancée" -"Import/Export Profile","Profil Import/Export" -"Important: ","Important :" -"Imported %s records","Enregistrements %s importés" -"In","Dans" -"In Database:","Dans la base de données :" -"In File:","Dans le fichier:" -"Inactive","Désactivé" -"Incl. Tax","Taxe comprise" -"Incoming Message","Message entrant" -"Insert Variable...","Insérez une variable" -"Interactive","Interactif" -"Interface Locale: %s","Interface locale: %s" -"Invalid Form Key. Please refresh the page.","Forme de clé invalide. Veuillez rafraîchir la page." -"Invalid Import Service Specified","Le service d'importation spécifié est invalide" -"Invalid POST data (please check post_max_size and upload_max_filesize settings in your php.ini file).","POST data invalide (veuillez vérifier les réglages post_max_size et upload_max_filesize dans votre fichier php.ini)." -"Invalid Secret Key. Please refresh the page.","Clé secrète invalide. Veuillez rafraîchir la page." -"Invalid User Name or Password.","Nom d'utilisateur ou mot de passe invalide." -"Invalid directory: %s","Répertoire invalide: %s" -"Invalid email address ""%s"".","Adresse email invalide ""%s""" -"Invalid email address.","Adresse email invalide." -"Invalid file: %s","Fichier invalide : %s" -"Invalid input data for %s => %s rate","Données entrées invalides pour %s => %s du tarif" -"Invalid parent block for this block","Bloc parent invalide pour ce bloc" -"Invalid parent block for this block.","Bloc parent invalide pour ce bloc." -"Invalid password reset token.","Preuve de réinitialisation de mot de passe invalide." -"Invalid sender name ""%s"". Please use only visible characters and spaces.","Nom de l'expéditeur invalide ""%s"". Veuillez n'utiliser que des caractères visibles et des espaces" -"Invalid timezone","Fuseau horaire invalide" -"Invalidated","Invalidé" -"Inventory Stock Status","Statut de l'inventaire des stocks" -"Invoice #%s comment added","Ajout d'un commentaire sur la facture #%s" -"Invoice #%s created","La facture #%s a été créée." -"Invoice History","Historique des factures" -"Invoice Totals","Totaux de facture" -"Invoice canceling error.","Erreur d'annulation de la facture." -"Invoice capturing error.","Erreur de capture de la facture." -"Invoice voiding error.","Erreur d'annulation de la facture." -"Invoices","Factures" -"Is Closed","Est fermé" -"Issue Number","Numéro de livraison" -"Items","Articles" -"JavaScript seems to be disabled in your browser.","Le JavaScript semble être désactivé sur votre navigateur." -"JavaScript/CSS","JavaScript/CSS" -"JavaScript/CSS Cache","Cache JavaScript/CSS" -"Kb","Kb" -"Last 24 Hours","Dernières 24 Heures" -"Last 5 Orders","5 Dernières Commandes" -"Last 5 Search Terms","5 Derniers Termes de Recherche" -"Last 7 Days","Ces 7 derniers jours" -"Last Credit Memo Created Date","Date du dernier avoir créé" -"Last Invoice Created Date","Date de la dernière facture créée" -"Last Logged In (%s):","Dernière connexion (%s):" -"Last Logged In:","Dernière connexion en:" -"Last Name","Nom" -"Last Name is required field.","Le nom de famille est un champ obligatoire." -"Last Name:","Nom de Famille:" -"Last updated: %s. To refresh last day\'s statistics, click here.","Dernière mise à jour : ""%s"" Pour mettre à jour les statistiques du dernier jour, cliquez ici." -"Latest Message:","Dernier message:" -"Layered Navigation Indices","Indice de navigation par niveaux" -"Layered Navigation Indices were refreshed.","Les indices de navigation par couches ont été rafraîchis." -"Leave empty to use tax identifier","Laisser vide pour utiliser l'identifiant taxe" -"Lifetime Sales","Ventes totales" -"Lifetime statistics have been updated.","Les statistiques de durée de vie ont été mises à jour." -"Links","Liens" -"Links with associated products will retain only after saving current product.","Les liens avec les produits associés seront retenus seulement après la sauvegarde du produit actuel." -"List (default) / Grid","Liste (par défaut) / Grille" -"List Only","Liste seule" -"Load Template","Charger le modèle" -"Load default template","Télécharger le formulaire -type par défaut" -"Loading...","Chargement..." -"Local Server","Serveur local" -"Local/Remote Server","Serveur Local/Distant" -"Locale","Paramètres régionaux" -"Log Out","Se déconnecter" -"Log in to Admin Panel","Se connecter en administrateur" -"Log into Magento Admin Page","Se connecter à la page Administration de Magento" -"Logged in as %s","Connecté en tant que %s" -"Login","Connexion" -"Low Stock","Stock bas" -"MAJOR","majeur" -"MINOR","MINEUR" -"MS Excel XML","MS Excel XML" -"Magento Admin","Administrateur de Magento" -"Magento Commerce - Administrative Panel","Commerce Magento - Membres Administratifs" -"Magento Connect","Magento Connect" -"Magento Connect Manager","Magento Connect Manager" -"Magento Logo","Logo de Magento" -"Magento is a trademark of X.commerce, Inc. Copyright © %s X.commerce, Inc.","Magento est une marque de X.commerce, Inc. Copyright © %s X.commerce, Inc." -"Magento root directory","Répertoire racine Magento" -"Magento ver. %s","Magento ver. %s" -"Magento® is a trademark of X.commerce, Inc.
Copyright © %s X.commerce, Inc.","Magento® est une marque déposée de X.commerce, Inc.
Copyright © %s X.commerce, Inc." -"Make sure that data encoding in the file is consistent and saved in one of supported encodings (UTF-8 or ANSI).","Assurez vous que les données d'encodage de ce fichier sont cohérentes et enrigistrées dans un des types d'encodage supportés (UTF-8 ou ANSI)." -"Manage Attribute Sets","Gérer les jeux d'attributs" -"Manage Attributes","Gérer attributs" -"Manage Categories","Gérer les catégories" -"Manage Content","Gérer le contenu" -"Manage Currency Rates","Gérer les taux de devises" -"Manage Customers","Gérer les utilisateurs" -"Manage Ratings","Gérer les Notes" -"Manage Stores","Gérer boutiques" -"Manage Tax Rules","Gérer les règles d'imposition" -"Manage Tax Zones and Rates","Gérer les taxes et les taux par zone" -"Manual","Manuel" -"Matched Expression","Expression correspondante" -"Mb","Mo" -"Media (.avi, .flv, .swf)","Media (.avi, .flv, .swf)" -"Media storages synchronization has completed!","La synchronisation des média est terminée !" -"Messages Inbox","Boîtes des messages entrants" -"Month","Mois" -"Most Viewed","Les plus vus" -"Most Viewed Products","Produits les plus regardés" -"Multiple Select","Choix multiple" -"My Account","Mon compte" -"N/A","non applicable" -"NOTICE","notice" -"Name","Nom" -"Name:","Nom :" -"Never (production)","Jamais (production)" -"New ","Nouveau" -"New API Key","Nouvelle Clé API" -"New Accounts","Nouveaux comptes" -"New Attribute","Nouvel attribut" -"New Block","Nouveau bloc" -"New Category","Nouvelle catégorie" -"New Class","Nouvelle classe" -"New Condition","Nouvelle Condition" -"New Custom Variable","Nouvelle variable personnalisable" -"New Customer","Nouvel utilisateur" -"New Customers","Nouveaux utilisateurs" -"New Design Change","Changement de nouveau dessin" -"New Email Template","Nouveau formulaire-type de courriel." -"New Group","Nouveau groupe" -"New Invoice","Nouvelle facture" -"New Item Type","Type de nouvel article" -"New Memo","Nouveau mémo" -"New Memo for #%s","Nouveau mémo pour #%s" -"New Page","Nouvelle page" -"New Password","Nouveau mot de passe" -"New Profile","Nouveau profil" -"New Rate","Nouveau taux" -"New Rating","Nouvelle note" -"New Review","Nouvel avis" -"New Role","Nouveau rôle" -"New Rule","Nouvelle règle" -"New Search","Nouvelle recherche" -"New Set","Nouvelle configuration" -"New Shipment","Nouvelle livraison" -"New Sitemap","Nouveau plan du site" -"New Store View","Vue nouvelle boutique" -"New System Template","Nouveau modèle de livraison" -"New Template","Nouveau modèle" -"New User","Nouvel utilisateur" -"New Variable","Nouvelle variable" -"New Website","Nouveau site Internet" -"New password field cannot be empty.","Le champ nouveau mot de passe ne peut pas être vide." -"Newsletter","Bulletin d'information" -"Newsletter Problems","Erreurs dans le bulletin d'information" -"Newsletter Queue","Fille d'attente de la newsletter" -"Newsletter Subscribers","Abonnés à la newsletter" -"Newsletter Templates","Modèles de newsletter" -"Next month (hold for menu)","Nouveau mois (maintenez la pression pour revenir au menu)" -"Next year (hold for menu)","Année prochaine (patienter pour le menu)" -"No","Non" -"No (price without tax)","Non (tarifs hors taxes)" -"No Data","Pas de données" -"No Data Found","Pas de données trouvées" -"No Templates Found","Aucun modèle trouvé" -"No change","Pas de modification" -"No customer id defined.","Pas d'identifiant utilisateur défini." -"No information available.","Aucune information disponible." -"No profile loaded...","Aucun profil téléchargé" -"No records found for this period.","Pas d'enregistrement pour cette période." -"No records found.","Aucun enregistrement trouvé." -"No report code specified.","Aucun code de rapport indiqué." -"No search keywords.","Aucun mot clé de recherche." -"No search modules were registered","Aucun module de recherche n'a été enregistré" -"No wishlist item id defined.","Par d'identifiant d'objet liste de souhaits défini." -"None","Aucun" -"Note:","Note :" -"Notes","Notes" -"Notifications","Notifications" -"Orders","Nombre de commandes" -"Uses","Nombre d'utilisations" -"Views","Nombre de vues" -"Number of records:","Nombre d'enregistrements :" -"OK","OK" -"Old rate:","Ancien taux :" -"One or more media files failed to be synchronized during the media storages syncronization process. Refer to the log file for details.","Un ou plusieurs fichiers n'ont pas pu être synchronisées durant le processus. Référez-vous au fichier log pour plus de détails." -"One or more of the Cache Types are invalidated:","Un ou plusieurs type(s) de cache sont invalidés :" -"Online Customers","Utilisateurs en ligne" -"Only Once (version upgrade)","Une seule fois (mise à niveau de la version)" -"Only attributes with scope ""Global"", input type ""Dropdown"" and Use To Create Configurable Product ""Yes"" are available.","Seuls les attributs concernant ""Global"", entrée de type ""Dropdown"", et utilisés pour créer des produits configurables ""Oui"" sont disponibles<" -"Only mapped fields","Champs mappés uniquement" -"Optional","En supplément" -"Options","Options" -"Order","Commande" -"Order %s","Commande #%s" -"Order %s (%s)","Commande N°%s (%s)" -"Order Created Date","Date de création de la commande" -"Order ID","ID de la commande" -"Order Totals","Total commandes" -"Order Updated Date","Date de mise à jour de la commande" -"Order Updated Date report is real-time, does not need statistics refreshing.","La date de mise à jour de la commande est temps réel, il n'y a pas besoin de rafraîchir les statistiques." -"Orders","Commandes" -"Original Magento attribute names in first row:","Nom d'attributs originaaux Magento dans la première ligne :" -"Out of stock","Epuisé" -"PDT (Payment Data Transfer) Only","TDP (Transfer des données de paiement) seulement" -"Package Extensions","Extensions du paquet" -"Pages","Pages" -"Parent Product Thumbnail","Miniature du produit parent" -"Parent Transaction ID","Identifiant de la transaction parente" -"Passive mode","Mode passif" -"Password","Mot de passe" -"Password Confirmation","Confirmation du mot de passe" -"Password confirmation must be same as password.","Le mot de passe de confirmation doit être le même que le mot de passe initial." -"Password must be at least of %d characters.","Le mot de passe doit être d'au moins %d caractères." -"Password must include both numeric and alphabetic characters.","Le mot de passe doit contenir des caractères numériques et alphabétiques." -"Password:","Mot de passe:" -"Path:","Chemin:" -"PayPal Manager","Gérant PayPal" -"Payment method instance is not available.","La méthode de paiement n'est pas disponible." -"Payment method is not available.","La méthode de paiement n'est pas disponible." -"Payment method must be specified.","Le mode de paiement doit être précisé." -"Pending Reviews","Avis en attente" -"Per Item","Par article" -"Per Order","Par commande" -"Percent","pour cent" -"Performed At","Fait à" -"Interval","Période" -"Permanent (301)","Permanent (301)" -"Permissions","Autorisations" -"Personal Information","Information personnelle" -"Phone:","Téléphone :" -"Please Select","Veuillez sélectionner" -"Please confirm site switching. All data that hasn\'t been saved will be lost.","Veuillez confirmer le changement de site. Toutes les données qui n'ont pas été sauvegardées seront perdues." -"Please enter 6 or more characters.","Veuillez entrer 6 caractères ou plus." -"Please enter a number greater than 0 in this field.","Veuillez entrer un nombre plus grand que 0 dans ce champ." -"Please enter a valid $ amount. For example $100.00.","Veuillez entrer un montant en $ valide. Par exemple 100 $." -"Please enter a valid URL. For example http://www.example.com or www.example.com","Veuillez entrer un URL valide. Par exemple http://www.exemple.com ou www.exemple.com" -"Please enter a valid URL. http:// is required","Veuillez entrer un URL valide. http:// est requis" -"Please enter a valid credit card number.","Veuillez taper un numéro de carte de crédit valide." -"Please enter a valid date.","Veuillez entrer une date valide." -"Please enter a valid email address. For example johndoe@domain.com.","Veuillez entrer une adresse courriel valide. Par exemple pierremaistre@domaine.com." -"Please enter a valid email.","Veuillez taper une adresse e-mail valide." -"Please enter a valid number in this field.","Veuillez entrer un numéro valide dans ce champ." -"Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890.","Veuillez entrer un numéro de téléphone valide. Par exemple (123) 456-7890 ou 123-456-7890." -"Please enter a valid social security number. For example 123-45-6789.","Veuillez entrer un numéro de sécurité sociale valide. Par exemple 123-54-6789." -"Please enter a valid value from list","Veuillez entrer une valeur valide à partir de la liste" -"Please enter a valid value, ex: 10,20,30","Veuillez entrer une valeur valide, ex : 10,20,30" -"Please enter a valid zip code.","Veuillez taper un code postal valide." -"Please enter a valid zip code. For example 90602 or 90602-1234.","Veuillez entrer un code postal valide. Par exemple 90602 ou 90602-1234." -"Please enter another credit card number to complete your purchase.","Veuillez entrer un autre numéro de carte bancaire pour compléter votre commande." -"Please enter password","Veuillez taper votre mot de passe" -"Please enter password to confirm rollback.","Veuillez taper votre mot de passe pour confirmer la restauration." -"Please enter valid password.","Veuillez entrer un mot de passe valide." -"Please make sure that all global admin search modules are installed and activated.","Veuillez vous assurer que tous les modules de recherche globale sont installés et activés." -"Please make sure that your changes were saved before running the profile.","Veuillez vous assurer que vos modifications ont été sauvegardées avant d'exécuter le profil." -"Please make sure your passwords match.","Veuillez vérifier que votre mot de passe fonctionne." -"Please select State/Province.","Veuillez choisir l'état/la province." -"Please select a customer.","Veuillez sélectionner un utilisateur." -"Please select a store.","Veuillez sélectionner une boutique." -"Please select an option.","Veuillez sélectionner une option." -"Please select catalog searches.","Veuillez sélectionner des recherches du catalogue." -"Please select customer(s).","Veuillez sélectionner le(s) client(s)." -"Please select message(s).","Veuillez sélectionner des messages." -"Please select one of the above options.","Veuillez sélectionner l'un des choix ci-dessus." -"Please select one of the options.","Veuillez sélectionner l'une des options." -"Please select review(s).","Veuillez sélectionner les avis." -"Please specify backup creation options","Veuillez préciser les options de création de la sauvegarde" -"Please specify the admin custom URL.","Veuillez préciser la nouvelle URL d'aminnistration." -"Please try to logout and sign in again.","Veuillez essayer de vous déconnecter, puis de vous connecter à nouveau." -"Please type the letters from the image:","Veuillez taper les lettres de l'image:" -"Please use in this field only ""a-z,0-9,_"".","Veuillez n'utiliser que ""a-z,0-9,_"". dans ce champ." -"Please use letters only (a-z) in this field.","Veuillez n'utiliser que des lettres (de ""a"" à ""z"") dans ce champ." -"Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas.","Veuillez n'utiliser que des chiffres dans ce champ. Evitez les espaces et autres caractères tels que des points ou des virgules." -"Please use only letters (a-z or A-Z), numbers (0-9) or spaces in this field.","Veuillez n'utiliser que des lettres (a-z ou A-Z), chiffres (0-9) ou espaces dans ce champs." -"Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed.","Veuillez n'utiliser que des lettres (de ""a"" à ""z"") ou des chiffres (de ""0"" à ""9"") dans ce champ. Aucun espace ou autre caractère n'est autorisé." -"Please use only letters (a-z) or numbers (0-9) or spaces and # only in this field.","Veuillez utiliser seulement des lettres (a-z) ou des chiffres (0-9) ou des espaces et # dans ce champ." -"Please use this date format: dd/mm/yyyy. For example 17/03/2006 for the 17th of March, 2006.","Veuillez utiliser ce format de date: dd/mm/yyyy. Par exemple 29/04/1960 pour le 29th of April, 1960." -"Please wait while the indexes are being refreshed.","Veuillez patienter durant l'actualisation des index." -"Please wait, loading...","En cours de chargement, veuillez patienter..." -"Please wait...","Veuillez patienter..." -"Popular","Populaire" -"Position of Watermark for %s","Position du filigrane pour %s" -"Pregenerated product images files.","Fichiers images produit pré-générées" -"Prev. month (hold for menu)","Mois préc. (maintenez la pression pour revenir au menu)" -"Prev. year (hold for menu)","Année préc. (patienter pour le menu)" -"Preview","Aperçu" -"Preview Template","Prévisualiser le modèle" -"Price","Prix" -"Price alert subscription was saved.","La souscription à l'alerte de prix a été enregistrée." -"Price:","Prix:" -"Processed %s%% %s/%d records","Enregistrements %s%% %s/%d traités" -"Product","Produit" -"Product","Nom du produit" -"Product Reviews","Avis sur le produit" -"Product Tax Classes","Classes des produits pour les taxes" -"Product Thumbnail Itself","Cliqué réduit du produit lui-même" -"Product is not loaded.","Le produit n'est pas chargé." -"Product:","Produit:" -"Products","Produits" -"Products Bestsellers Report","Rapport des meilleures ventes" -"Products Most Viewed Report","Rapport concernant les produits les plus vus" -"Products Ordered","Produits commandés" -"Products in Carts","Produits dans le panier." -"Profile Action","Action de profil" -"Profile Actions XML","Actions XML du profil" -"Profile Direction","Direction du produit" -"Profile History","Historique du profil" -"Profile Information","Information sur le profil" -"Profile Name","Nom du profil" -"Profile Payments","Paiements du profil" -"Profile Schedule","Calendrier du profil" -"Profile Wizard","Assistant du profil" -"Profiles","Profils" -"Promo","Promo" -"Promotions","Promotions" -"Purchased Item","Article acheté" -"Put store on the maintenance mode while backup creation","Mettre le magasin en mode de maintenance pendant la création de la sauvegarde" -"Put store on the maintenance mode while rollback processing","Placer le magasin en mode maitenance pendant que la restauration s'effectue." -"Quantity","Quantité" -"Queue Refresh","Rafraîchissement de la liste d'attente" -"Queued... Cancel","En liste d'attente ... Annuler." -"Radio Buttons","Boutons radios" -"Rates","Taux" -"Read details","Lire détails" -"Rebuild","Reconstruire" -"Rebuild Catalog Index","Reconstruire l'index du catalogue" -"Rebuild Flat Catalog Category","Reconstruire les catégories du catalogue" -"Rebuild Flat Catalog Product","Reconstruire les produits du catalogue" -"Recent Orders","Commandes récentes" -"Recent statistics have been updated.","Les statistiques récentes on été sauvegardées." -"Recurring Profile View","Consultations multiples de ce profil." -"Recursive Dir","Répertoire récursif" -"Redirect","Rediriger" -"Reference","Référence" -"Reference ID","Identifiant Référence" -"Refresh","Rafraîchir" -"Refresh Now*","Actualiser maintenant*" -"Refresh Statistics","Rafraîchir les statistiques" -"Region/State","Région/État" -"Regular Price:","Prix habituel:" -"Release","Sortie" -"Release Stability","Sortir stable" -"Release Version","Version récente" -"Reload captcha","Téléarger à nouveau Captcha" -"Remote FTP","FTP à distance" -"Remove","Supprimer" -"Reports","Rapports" -"Request Path","Chemin demandé" -"Required","Requis" -"Reset","Réinitialiser" -"Reset Filter","Mettre à zéro le filtre" -"Reset Password","Réinitialiser le mot de passe" -"Reset a Password","Réinitialiser un mot de passe" -"Resize","Redimensionner" -"Resource Access","Accès aux ressources" -"Resources","Ressources" -"Results","Résultats" -"Retrieve Password","Récupérer votre mot de passe" -"Return Html Version","Retourner à la version HTML" -"Revenue","Revenu" -"Reviews","Commentaires" -"Reviews and Ratings","Avis et évaluations" -"Rewrite Rules","Réécrire les règles" -"Role ID","Identité du rôle" -"Role Info","Infos sur le rôle" -"Role Information","Informations du rôle" -"Role Name","Nom du rôle" -"Role Resources","Ressources du rôle" -"Role Users","Utilisateurs rôles" -"Roles","Rôles" -"Roles Resources","Ressources du rôle" -"Rotate CCW","Tourner CCW" -"Rotate CW","Tourner CW" -"Run","Exécuter" -"Run Profile","Exécuter profil" -"Run Profile Inside This Window","Exécuter le profil dans cette fenêtre" -"Run Profile in Popup","Exécuter le profil dans une pop-up" -"Running... Kill","En cours d'exécution... Arrêter" -"SKU","UGS" -"SKU:","UGS:" -"SSL Error: Invalid or self-signed certificate","Erreur SSL : certificat invalide" -"Sales","Ventes" -"Sales Report","Rapport de ventes" -"Samples","Échantillons" -"Save","Enregistrer" -"Save & Generate","Sauvegarder et générer" -"Save Account","Sauvegarder le compte" -"Save Cache Settings","Sauvegarder les options du cache" -"Save Config","Sauvegarder la configuration" -"Save Currency Rates","Sauvegarder les taux de conversion des monnaies" -"Save Profile","Sauvegarder le profil" -"Save Role","Sauvegarder le rôle" -"Save Template","Sauvegarder le formulaire-type" -"Save User","Sauvegarder l'utilisateur" -"Save and Continue Edit","Sauvegarder et continuer l'édition" -"Search","Rechercher" -"Search Index","Rechercher l'index" -"Search Term","Terme de recherche" -"Search Terms","Rechercher les conditions" -"Select","Sélectionner" -"Select All","Sélectionner tout" -"Select Category","Sélectionner catégorie" -"Select Date","Sélectionner la date" -"Select Range","Sélectionner la portée" -"Select date","Sélectionner date" -"Selected allowed currency ""%s"" is not available in installed currencies.","La monnaie autorisée sélectionnée ""%s"" n'est pas disponible dans les monnaies installées." -"Selected base currency is not available in installed currencies.","La devise de base sélectionnée n'est pas disponible parmi les devises inscrites dans le système." -"Selected default display currency is not available in allowed currencies.","La monnaie d'affichage par défaut sélectionnée n'est pas disponible dans les monnaies installées." -"Selected default display currency is not available in installed currencies.","L'affichage dans la devise choisie par défaut n'est pas disponible parmi les devises inscrites dans le système." -"Self-assigned roles cannot be deleted.","Les rôles attribués par soi-même ne peuvent être effacés." -"Sender","Expéditeur" -"Separate Email","Email séparée" -"Service Settings","Réglages du service" -"Set up & Customize","Configurez et personnalisez" -"Shipment #%s comment added","Commentaire ajouté sur l'expédition #%s" -"Shipment #%s created","Expédition #%s crée" -"Shipment Comments","Commentaires sur l'expédition" -"Shipment History","Historique de l'expédition" -"Shipments","Expéditions" -"Shipping","Expédition" -"Shipping Address","Adresse d'expédition" -"Shipping Address: ","Adresse d'expédition:" -"Shipping Origin","Origine de l'expédition" -"Shipping Price","Frais de port:" -"Shipping address selection is not applicable","L'adresse d'expédition sélectionnée n'est pas disponible" -"Shipping method must be specified.","Le mode d'expédition doit être précisé." -"Shipping method selection is not applicable","Le mode d'expédition choisi est impossible dans ce cas." -"Shopping Cart","Panier" -"Shopping Cart Price Rules","Règles s'appliquant aux paniers" -"Shopping Cart from %s","Panier de %s" -"Show By","Montrer par" -"Show Report For:","Afficher le rapport pour :" -"Show Reviews","Montrer les avis" -"Sitemap Information","Plan du site" -"Size for %s","Taille de %s" -"Skip Category Selection","Passer la sélection de catégorie" -"Some items in this order have different invoice and shipment types. You can create shipment only after the invoice is created.","Certains éléments dans cette commande ont des types de facture et d'expédition différents. Vous pouvez créer l'expédition seulement après avoir créé la facture." -"Some of the ordered items do not exist in the catalog anymore and will be removed if you try to edit the order.","Certains des articles commandés n'existent plus dans le catalogue et seront supprimés si vous voulez bien modifier la commande." -"Sorry, this feature is coming soon...","Désolé, cette fonction arrive bientôt..." -"Special Price:","Prix spécial:" -"Specific Countries","Pays spécifiques" -"Specified","Spécifié" -"Specified profile does not exist.","Le profil indiqué n'existe pas." -"Spreadsheet Name:","Nom du la feuille de calcul" -"Start Date","Date de début" -"Starting profile execution, please wait...","Démarrage de l'exécution de profil, veuillez patienter..." -"State/Province:","État/Région" -"Static Blocks","Blocs statiques" -"Status","Statut" -"Status:","Statut" -"Stock Quantity:","Quantité en stock :" -"Stock notification was saved.","La notification du stock a été sauvegardée." -"Store","Magasin" -"Store Email Addresses Section","Rubrique contenant les adresses e-mail des magasins" -"Store View","Vue du magasin" -"Store:","Magasin:" -"Stores","Boutiques" -"Subject","Sujet" -"Submit","Soumettre" -"Subpackage cannot be conflicting.","Le subpackage ne peut pas être contradictoire." -"Subtotal","Sous-total" -"Switch/Solo/Maestro Only","Switch/Solo/Maestro seulement" -"Synchronization is required.","La synchronisation est nécessaire." -"Synchronization of media storages has been successfully completed.","La synchronisation du staockage médias a été effectuée avec succès." -"Synchronize","Synchroniser" -"Synchronizing %s to %s","Synchronisation de %s et %s" -"Synchronizing...","Synchronisation en cours...." -"System","Système" -"System Section","Section système" -"System busy","Le système est occupé" -"Target Path","Chemin cible" -"Tax","Taxe" -"Tb","Tb" -"Template","Modèle visuel" -"Template Content","Contenu du modèle" -"Template Information","Formulaire-type d'information" -"Template","Nom du template" -"Template Styles","Styles de modèle" -"Template Subject","Sujet du modèle" -"Template Type","Type de modèle" -"Temporary (302)","Temporaire (302)" -"Terms and Conditions","Termes et conditions" -"Text","Texte" -"The Catalog Rewrites were refreshed.","Les réécritures du catalogue ont été actualisées." -"The CatalogInventory Stock Status has been rebuilt.","Le statut du stock de l'inventaire-catalogue a été repensé." -"The Comment Text field cannot be empty.","Le champ de commentaire doit être rempli." -"The Flat Catalog Product was rebuilt","Le produit fixe du catalogue a été reconstruit." -"The JavaScript/CSS cache has been cleaned.","Le cache JavaScript/CSS a été effacé." -"The JavaScript/CSS cache has been cleared.","Le cache JavaScript/CSS a été enlevé." -"The Layered Navigation indexing has been queued.","L'index de la navigation par niveaux a été mis en queue." -"The Layered Navigation indexing queue has been canceled.","La mise en queue de l'index de la navigation par niveaux a été annulée." -"The Layered Navigation indices were refreshed.","Les index sous-jacents de la navigation ont été rafraîchis." -"The Layered Navigation process has been queued to be killed.","La réalisation de la navigation par niveaux a été mise en queue pour être annulée." -"The Magento cache storage has been flushed.","Le stockage du cache Magento a été purgé." -"The URL Rewrite has been deleted.","La réécriture d'URL a été supprimée." -"The URL Rewrite has been saved.","La réécriture d'URL a été enregistrée." -"The account has been saved.","Le compte a été enregistré." -"The archive can be uncompressed with %s on Windows systems","Les archives peuvent être décompressées par le biais de %s sur les système Windows" -"The attribute set has been removed.","L'ensemble d'attributs a été supprimé." -"The backup's creation process will take time.","La création de la sauvegarde va prendre du temps." -"The billing agreement has been canceled.","L'accord de facturation a été annulé." -"The billing agreement has been deleted.","L'accord de facturation a été supprimé." -"The cache storage has been flushed.","Le stockage du cache a été vidé." -"The carrier needs to be specified.","Le transporteur doit être spécifié." -"The catalog index has been rebuilt.","L'index du catalogue a été reconstruit." -"The catalog rewrites have been refreshed.","Les réécritures du catalogue ont été réactualisées." -"The configuration has been saved.","La configuration a été enregistrée." -"The credit memo has been canceled.","L'avoir a été annulé." -"The credit memo has been created.","L'avoir a été créé." -"The credit memo has been voided.","Le mémo de crédit a été vidé." -"The custom variable has been deleted.","La variable courante a été supprimée." -"The custom variable has been saved.","La variable personnelle a été sauvegardée." -"The customer has been deleted.","Le client a été supprimé." -"The customer has been saved.","Le client a été sauvegardé." -"The design change has been deleted.","Le changement de forme a été supprimé." -"The design change has been saved.","Le changement de forme a été enregistré." -"The email address is empty.","L'adresse email est vide." -"The email template has been deleted.","Le formulaire-type du courriel a été effacé." -"The email template has been saved.","Le modèle d'email a été enregistré." -"The flat catalog category has been rebuilt.","La catégorie du catalogue neutre a été réparée." -"The group node name must be specified with field node name.","Le nom du noeud du groupe doit être défini dans le champ nom du noeud." -"The image cache was cleaned.","L'image cache a été nettoyée." -"The image cache was cleared.","L'image cache a été vidée." -"The invoice and shipment have been created.","La facture et l'envoi ont été créés." -"The invoice and the shipment have been created. The shipping label cannot be created at the moment.","La facture et l'expédition ont été créés. Le label d'expédition ne peut pas être créé à ce moment." -"The invoice has been canceled.","La facture a été annulée." -"The invoice has been captured.","La facture a été capturée." -"The invoice has been created.","La facture a été créée." -"The invoice has been voided.","La facture a été annulée." -"The invoice no longer exists.","La facture n'existe plus." -"The item %s (SKU %s) does not exist in the catalog anymore.","L'objet %s (SKU %s) n'existe plus dans la catalogue." -"The order does not allow creating an invoice.","La commande n'autorise pas la création de facture." -"The order no longer exists.","La commande a disparu." -"The profile has been deleted.","Le profil a été supprimé." -"The profile has been saved.","Le profil a été sauvegardé." -"The profile has been updated.","Le profil a été mis à jour." -"The profile has no changes.","Le profil ne comporte aucune modification." -"The profile you are trying to save no longer exists","Le profil que vous essayez d'enregistrer n'existe plus" -"The rating has been deleted.","L'évaluation a été effacée." -"The rating has been saved.","L'évaluation a été enregistrée." -"The role has been deleted.","Le modèle a été supprimé." -"The role has been saved.","Le modèle a été enregistré." -"The role has been successfully saved.","Le modèle a été enregistré avec succès." -"The search index has been rebuilt.","L'index de recherche a été refait." -"The shipment has been created.","L'envoi a été créé." -"The shipment has been sent.","La commande a été expédiée." -"The shipping label has been created.","L'étiquette d'expédition a été créée." -"The transaction details have been updated.","Les détails de la transaction ont été mis a jour." -"The user has been deleted.","L'utilisateur a été supprimé." -"The user has been saved.","L'utilisateur a été sauvegardé." -"Themes JavaScript and CSS files combined to one file.","Themes JavaScript et fichiers CSS combinés en un fichier." -"There is an error in one of the option rows.","Il y a un erreur dans les rangées des choix." -"This Account is","Le compte est" -"This Email template no longer exists.","Ce modèle d'email n'existe plus." -"This Role no longer exists","Ce rôle n'existe plus." -"This Role no longer exists.","Ce rôle n'existe plus." -"This account is","Ce compte est" -"This account is inactive.","Ce compte est inactif." -"This action cannot be undone.","Cette action ne peut être annulée." -"This attribute set does not have attributes which we can use for configurable product","Ce jeu d'attributs n'a pas d'attributs que nous pouvons utiliser pour un produit paramétrable" -"This attribute shares the same value in all the stores","Cet attribut a la même valeur dans tous les magasins" -"This is a demo store. Any orders placed through this store will not be honored or fulfilled.","Il ne s'agit que d'un magasin de démonstration. Toute commande passée par l'intermédiaire de ce magasin ne sera pas honorée ou satisfaite." -"This is a required field.","Ceci est un champ requis." -"This product is currently disabled.","Ce produit est pour l'instant désactivé." -"This report depends on timezone configuration. Once timezone is changed, the lifetime statistics need to be refreshed.","Ce rapport dépend de la configuration du fuseau horaire. Une fois le fuseau horaire modifié, les statistiques de durée de vie nécessiteront une réactualisation." -"This section is not allowed.","Cette rubrique est interdite." -"This user no longer exists.","Cet utilisateur n'existe plus." -"Time","Heure" -"Time selection:","Sélection de l'heure:" -"Time:","Heure:" -"Timeout limit for response from synchronize process was reached.","La limite de délai d'attente pour la réponse du processus de synchronisation a été atteinte." -"To","A" -"To cancel pending authorizations and release amounts that have already been processed during this payment, click Cancel.","Pour annuler les autorisations en attente et libérer les montants qui ont déjà été traités au cours de ce paiement, cliquez sur Annuler." -"To use PayPal Payflow Link you must configure some settings in your Payflow account by logging into","Pour utiliser Payflow Link, vous devez configurer votre compte Payflow Link sur le site de Paypal." -"To use PayPal Payments Advanced you must configure some settings in your PayPal Payments Advanced account by logging into","Pour utiliser PayPal Payments Advanced , vous devez configurer des paramètres de votre compte PayPal Payments Advanced en vous connectant." -"Toggle Editor","Editeur de bouton" -"Tools","Outils" -"Top 5 Search Terms","5 termes les plus recherchés" -"Total","Total" -"Total Invoiced","Total facturé" -"Total","Somme totale de la commande" -"Total Refunded","Total remboursé" -"Total of %d record(s) have been deleted.","Un total de %d entrée(s) ont été supprimées." -"Total of %d record(s) have been updated.","Un total de %d article(s) a/ont été mis à jour." -"Total of %d record(s) were canceled.","Au total, %d enregistrement(s) ont été annulés." -"Total of %d record(s) were deleted","Un total de %d enregistrements ont été supprimés." -"Total of %d record(s) were deleted.","Un total de %d enregistrements ont été supprimés." -"Total of %d record(s) were updated","Un total de %d enregistrements ont été mis à jour." -"Total of %d record(s) were updated.","Un total de %d enregistrements ont été mis à jour." -"Track Order","Suivre la commande" -"Track this shipment","Suivre cette expédition" -"Tracking number %s for %s assigned","Numéro de suivi %s attribué %s pour" -"Tracking number cannot be empty.","Le numéro de suivi ne peut pas être vide." -"Transaction Data","Données de transaction" -"Transaction Details","Détails de la transaction" -"Transaction ID","ID de la transaction" -"Transaction Type","Type de transaction" -"Transactional Emails","Emails de transaction" -"Transactions","Transactions" -"Type","Type" -"Type:","Type:" -"URL Rewrite","Réécriture URL" -"URL Rewrite Information","Informations de réécriture d'URL" -"URL Rewrite Management","Gestion de la réécriture URL" -"Unable to cancel the credit memo.","Impossible d'annuler l'avoir." -"Unable to find a Email Template to delete.","Impossible de trouver un modèle d'email à supprimer." -"Unable to find a user to delete.","Impossible de trouver un utilisateur à effacer." -"Unable to initialize import model","Impossible d'initialiser le modèle importé" -"Unable to refresh lifetime statistics.","Impossible de réactualiser les statistiques de durée de vie" -"Unable to refresh recent statistics.","Impossible de réactualiser les statistiques récentes." -"Unable to save Cron expression","Impossible de sauvegarder l'expression Cron" -"Unable to save the cron expression.","Impossible de sauvegarder l'expression cron." -"Unable to save the invoice.","Impossible d'enregistrer la facture." -"Unable to send the invoice email.","Impossible d'envoyer la facture électronique." -"Unable to send the shipment email.","Impossible d'envoyer le courriel d'expédition." -"Unable to update transaction details.","Impossible de mettre à jour les détails de transactions." -"Unable to void the credit memo.","Impossible d'annuler l'avoir." -"Unknown","Inconnu" -"Unlimited","Illimité" -"Update","Mettre à jour" -"Updated At","Mis à jour à" -"Upload File","Télécharger le fichier" -"Upload Files","Envoyer des fichiers" -"Upload HTTP Error","Télécharger l'erreur HTTP" -"Upload I/O Error","Erreur d'envoi E/S (Entrée/Sortie)" -"Upload Security Error","Télécharger l'erreur de sécurité" -"Upload import file","Envoyer un fichier d'importation" -"Uploaded file is larger than %.2f kilobytes allowed by server","Le fichier téléchargé est plus volumineux que les %.2f kilobytes autorisés par le serveur" -"Use All Available Attributes","Utiliser tous les attributs disponibles" -"Use Config Settings","Utiliser les Paramètres de Configuration" -"Use Default","Utiliser par défaut." -"Use Default Value","Utiliser la Valeur par Défaut" -"Use Default Variable Values","Utiliser les valeurs variables par défaut" -"Use FTP Connection","Utilisez la connexion FTP" -"Use Website","Utiliser le site web" -"Used Currently For","Actuellement utilisé pour" -"Used as Default For","Utilisé par défaut pour" -"User Email","Adresse E-mail de l'utilisateur" -"User ID","ID utilisateur" -"User Info","Info sur l'utilisateur" -"User Information","Informations sur les utilisateurs" -"User Name","Nom d'utilisateur" -"User Name is required field.","Le nom d'utilisateur est requis" -"User Name:","Nom d'utilisateur :" -"User Password","Mot de passe utilisateur" -"User Role","Modèle d'utilisateur" -"User Roles","Modèles d'utilisateur" -"User Roles Information","Information sur les modèles utilisateur" -"User name","Nom d'utilisateur" -"Users","Utilisateurs" -"VAT Number is Invalid","Le numéro de TVA est invalide" -"VAT Number is Valid","Le numéro de TVA est valide" -"Validation Results","Résultats validation" -"Value","Valeur" -"Value Delimiter:","Délimiteur de valeur :" -"Variable","Variable" -"Variable Code","Code variable" -"Variable HTML Value","Valeur HTML variable" -"Variable ID","Identité changeante" -"Variable Name","Nom de la variable" -"Variable Plain Value","Valeur simple de la variable" -"View Actions XML","Voir les actions XML" -"View Full Size","Voir en taille réelle" -"View Memo","Voir la note" -"View Memo for #%s","Voir le mémo #%s" -"View Shipment","Voir l'envoi" -"View Statistics For:","Voir les statistiques pour:" -"Visibility:","Visibilité :" -"Warning","Avertissement" -"Warning! Empty value can cause problems with CSV format.","Attention! Une valeur vide peut causer des problèmes avec le format CSV." -"Warning!\r\nThis action will remove this user from already assigned role\r\nAre you sure?","Attention!\r\n Cette action défera cet utilisateur de son rôle déjà assigné\r\nEtes-vous sûr ?" -"Warning!\r\nThis action will remove those users from already assigned roles\r\nAre you sure?","Attention!\r\n Cette action supprimera les rôles ont déjà été attribués aux utilisateurs concernés\r\nÊtes-vous certain(e) de vouloir continuer?" -"Warning: Please do not close the window during importing/exporting data","Attention: Veuillez ne pas fermer la fenêtre pendant l'importation ou l'exportation de données" -"Watermark File for %s","Fichier Filigrane pour %s" -"We appreciate our merchants\' feedback, please take our survey to provide insight on the features you would like included in Magento. Remove this notification","Nous apprécions les remarques de nos revendeurs\', ainsi veuillez avoir l'obligeance de remplir notre enquête afin de nous faire connaître les améliorations que vous souhaiteriez voir apportées à Magento.Supprimer ce message" -"We\'re in our typing table, coding away more features for Magento. Thank you for your patience.","Nous sommes devant notre bureau, programmant de nouvelles fonctions pour Magento. Merci pour votre patience." -"Web Section","Section Web" -"Web Services","Services Web" -"Web services","Services web" -"Website","Site" -"What is this?","Qu'est-ce que c'est ?" -"Wishlist Report","Rapport de liste cadeaux" -"Wishlist item is not loaded.","L'article désiré n'a pas été chargé." -"Wrong account specified.","Le compte indiqué est erroné." -"Wrong billing agreement ID specified.","Le numéro indiqué de la facturation acceptée est erroné." -"Wrong column format.","Mauvais format de colonne." -"Wrong newsletter template.","Mauvais modèle de lettre de diffusion" -"Wrong quote item.","Mauvais objet" -"Wrong tab configuration.","L'onglet de configuration est erroné." -"Wrong transaction ID specified.","Mauvais identifiant transaction défini." -"XML","XML" -"XML data is invalid.","Données XML invalides" -"XML object is not instance of ""Magento\Simplexml\Element"".","L'objet XML n'est pas une instance de ""Magento\Simplexml\Element""" -"YTD","Année en cours" -"Year","Année" -"Yes","Oui" -"Yes (301 Moved Permanently)","Oui (301 déplacé de façon permanente)" -"Yes (302 Found)","Oui (302 trouvé)" -"Yes (only price with tax)","Oui (tarifs TTC uniquement)" -"You cannot delete your own account.","Vous ne pouvez pas effacer votre propre compte." -"You have %s unread message(s).","Vous avez %s message(s) non lu(s)." -"You have %s unread message(s). Go to messages inbox.","Vous avez %s messages non lus. Aller à la boite de réception." -"You have %s, %s and %s unread messages. Go to messages inbox.","Vous avez %s, %s et %s messages non lus. Aller à la boite de réception." -"You have logged out.","Vous vous êtes déconnecté(e)." -"You have not enough permissions to use this functionality.","Vous n'avez pas les permissions suffisantes pour utiliser cette fonctionnalité." -"You must have JavaScript enabled in your browser to utilize the functionality of this website.","Vous devez avoir activé le JavaScript dans votre navigateur pour utiliser les fonctionnalités de ce site web." -"You need to specify order items.","Vous devez spécifier les articles de la commande." -"You will need to wait when the action ends.","Vous devrez attendre jusqu'à la fin de l'action." -"Your answers contain duplicates.","Vous avez des réponses en double." -"Your password has been updated.","Votre mot de passe a été mis à jour." -"Your password reset link has expired.","Votre lien de réinitialisation de mot de passe a expiré." -"Your server PHP settings allow you to upload files not more than %s at a time. Please modify post_max_size (currently is %s) and upload_max_filesize (currently is %s) values in php.ini if you want to upload larger files.","Les paramètres de votre serveur PHP ne vous permettent pas de télécharger plus de %s fichiers à la fois sur le serveur. Modifiez les valeurs post_max_size (actuellement %s) et upload_max_filesize (actuellement %s) dans php.ini si vous voulez télécharger des fichiers plus volumineux sur le serveur." -"Your web server is configured incorrectly. As a result, configuration files with sensitive information are accessible from the outside. Please contact your hosting provider.","Votre serveur web n'est pas configuré correctement. Par conséquent, les fichiers de configuration contenant des informations sensibles sont accessibles de l'extérieur. Veuillez contacter votre hébergeur." -"Zip/Postal Code","Code postal" -"Zip/Postal Code:","Code postal:" -"[ deleted ]","[ supprimé ]" -"[GLOBAL]","[GLOBAL]" -"[STORE VIEW]","[ VUE BOUTIQUE ]" -"[WEBSITE]","[SITE WEB]" -"b","o" -"close","fermer" -"critical","critique" -"example: ""sitemap/"" or ""/"" for base path (path must be writeable)","exemple: ""sitemap/"" ou ""/"" pour le répertoire de base (doit être accessible en écriture)" -"example: sitemap.xml","Exemple: sitemap.xml" -"failed","échoué" -"from","de" -"major","majeur" -"minor","mineur" -"notice","notice" -"store(%s) scope","périmètre boutique (%s)" -"successful","réussi" -"to","à" -"website(%s) scope","périmètre site internet (%s)" -"{{base_url}} is not recommended to use in a production environment to declare the Base Unsecure URL / Base Secure URL. It is highly recommended to change this value in your Magento configuration.","{{base_url}} n'est pas recommandé pour déclarer Base Unsecure URL / Base Secure URL dans un environnement de production. Il est fortement recommandé de changer cette valeur dans votre configuration de Magento." diff --git a/app/code/Magento/Adminhtml/i18n/nl_NL.csv b/app/code/Magento/Adminhtml/i18n/nl_NL.csv deleted file mode 100644 index 635f28d6f2351..0000000000000 --- a/app/code/Magento/Adminhtml/i18n/nl_NL.csv +++ /dev/null @@ -1,1144 +0,0 @@ -" The customer does not exist in the system anymore.","Deze klant staat niet meer in het systeem." -" You will need to navigate to your ","U zult moeten navigeren naar uw" -" [deleted]"," [verwijderd]" -" and "," en " -" and go to the "," en ga naar de " -" sections for your Hosted Checkout Pages."," sectie voor uw Hosted Checkout Pagina's." -"%s (Default Template from Locale)","%s (Standaard sjabloon van Lokale)" -"%s cache type(s) disabled.","%s cache type(s) uitgeschakeld." -"%s cache type(s) enabled.","%s cache type(s) ingeschakeld." -"%s cache type(s) refreshed.","%s cache type(s) herladen." -"(For Type ""Local Server"" need to use relative path to Magento install var/export or var/import, e.g. var/export, var/import, var/export/some/dir, var/import/some/dir)","(Voor ""Local Server"" Type moet u het desbetreffende pad naar Magento install var/export of var/import gebruiken, b.v. var/export, var/import, var/export/some/dir, var/import/some/dir)" -"(For US 2-letter state names)","(Voor VS 2-letter staatsnamen)" -"(If left empty will be auto-generated)","(Indien leeg gelaten wordt dit automatisch gegenereerd)" -"(Leave empty for first spreadsheet)","(Laat leeg voor de eerste spreadsheet)" -"(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)","(Producten worden toegevoegd/geüpdatet aan deze winkel, indien de 'winkel' kolom leeg of niet aanwezig is in het import bestand.)" -"(Shift-)Click or drag to change value","(Shift-)Klik of sleep om de waarde te veranderen" -"(Starting with)","(Beginnende met)" -"(When 'No', only mapped fields will be imported. When mapping, use 'column1', 'column2', etc.)","(Bij 'Nee', worden alleen in kaart gebrachte velden geïmporteerd. Wanneer in kaart gebracht, gebruik kolom1, kolom2, enz.)" -"(You have to increase php memory_limit before changing this value)","(U moet uw PHP memory_limit verhogen voordat u deze waarde verhoogt)" -"(\\t for tab)","(\\t voor tabblad)" -"* - If indexing is in progress, it will be killed and new indexing process will start.","* - Indien een indexeringproces bezig is zal deze worden gestopt en een nieuw proces worden begonnen." -"- Click on any of the time parts to increase it","- Klik op een van de tijd gedeeltes om deze te verhogen" -"- Hold mouse button on any of the above buttons for faster selection.","- Houd de muisknop op een van de bovenstaande knoppen om sneller te selecteren" -"- Use the %s buttons to select month","- Gebruik de %s knoppen om de maand te selecteren" -"- Use the %s, %s buttons to select year","- Gebruik de %s, %s knoppen om het jaar te selecteren" -"- or Shift-click to decrease it","- of Shift-klik om het te verlagen" -"- or click and drag for faster selection.","- of klik en sleep voor snelle selectie." -"-- Not Selected --","-- Niet geselecteerd --" -"-- Please Select --","-- Selecteer alstublieft --" -"-- Please Select Billing Agreement--","-- Selecteer Factureringsovereenkomst" -"-- Please Select a Category --","-- Selecteer een Categorie --" -"-- Please select --","-- Selecteer a.u.b. --" -"--Please Select--","--Selecteer alstublieft--" -"1 Hour","1 Uur" -"1. set up","1. instellen" -"12 Hours","12 Uur" -"12h AM/PM","12h AM/PM" -"2 Hours","2 Uur" -"2. customize","2. aanpassen" -"24 Hours","24 Uur" -"24h","24u" -"2YTD","2JTD" -"6 Hours","6 Uur" -"

404 Error

Page not found.

","

404 Error

Pagina niet gevonden.

" -"Attention: Captcha is case sensitive.","Attention: Captcha is hoofdletter gevoelig" -"A user with the same user name or email aleady exists.","Er bestaat al een gebruiker met dezelfde naam of hetzelfde e-mailadres." -"API Key","API Sleutel" -"API Key Confirmation","API Sleutel Bevestiging" -"ASCII","ASCII" -"Abandoned Carts","Verlaten winkelwagens" -"About the calendar","Over de kalender" -"Access Denied","Toegang Geweigerd" -"Access denied","Toegang gewijgerd" -"Access denied.","Toegang geweigerd." -"Account Created in:","Account Gecreëerd in:" -"Account Created on (%s):","Account Gecreëerd op (%s):" -"Account Created on:","Account Gecreëerd op:" -"Account Information","Accountinformatie" -"Account Status","Account Status" -"Account status","Account status" -"Action","Actie" -"Actions","Acties" -"Actions XML","Acties XML" -"Active","Actief" -"Add","Toevoegen" -"Add \Exception","Voeg uitzondering toe" -"Add Field Mapping","Veldmapping Toevoegen" -"Add Field with URL:","Veld met URL toevoegen:" -"Add New","Nieuwe Toevoegen" -"Add New Image","Nieuw Plaatje Toevoegen" -"Add New Profile","Nieuw Profiel Toevoegen" -"Add New Role","Nieuwe Rol Toevoegen" -"Add New Template","Nieuw Sjabloon Toevoegen" -"Add New URL Rewrite","Voeg Nieuwe URL Herschrijving Toe" -"Add New User","Voeg Nieuwe Gebruiker Toe" -"Add New Variable","Voeg Nieuwe Variabele Toe" -"Add Products","Producten toevoegen" -"Add URL Rewrite","Voeg URL Herschrijving Toe" -"Add URL Rewrite for a Category","Voeg URL Herschrijving toe voor een Categorie" -"Add URL Rewrite for a Product","Voeg URL Herschrijving toe voor een Product" -"Add after","Voeg toe na" -"Additional Cache Management","Extra Cache Beheer" -"Address Type:","Adrestype:" -"Admin","Admin" -"Advanced Admin Section","Geavanceerde Admin Sectie" -"Advanced Profiles","Geavanceerde Profielen" -"Advanced Section","Geavanceerde Sectie" -"All","Alles" -"All Allowed Countries","Alle Toegestane Landen" -"All Cache","Alle Cache" -"All Files","Alle Bestanden" -"All Reviews","Alle Recensies" -"All Store Views","Alle Winkelbezichtigingen" -"All Websites","Alle Websites" -"All countries","Alle landen" -"All fields","Alle velden" -"All possible rates were fetched, please click on ""Save"" to apply","Alle mogelijke cijfers zijn opgehaald, klik op ""Save"" om toe te passen" -"All rates were fetched, please click on ""Save"" to apply","Alle cijfers zijn opgehaald, klik op ""Save"" om toe te passen" -"All valid rates have been saved.","Alle geldige aantallen zijn opgeslagen." -"Always (during development)","Altijd (tijdens ontwikkeling)" -"Amounts","Hoeveelheden" -"An error has occurred while syncronizing media storages.","Een fout heeft zich voorgedaan tijdens het synchroniseren van het mediageheugen." -"An error occurred while clearing the JavaScript/CSS cache.","Er is een fout opgetreden tijdens het opschonen van de JavaScript/CSS opslagplaats." -"An error occurred while clearing the image cache.","Er is een fout opgetreden tijdens het opschonen van de afbeeldingopslagplaats." -"An error occurred while deleting URL Rewrite.","er is een fout opgetreden tijdens het verwijderen van URL Rewrite." -"An error occurred while deleting email template data. Please review log and try again.","Er is een fout opgetreden tijdens het verwijderen van e-mail sjabloondata. Bekijk de log en probeer opnieuw." -"An error occurred while deleting record(s).","Er is een fout opgetreden tijdens het verwijderen van data." -"An error occurred while deleting this role.","Er is een fout opgetreden tijdens het verwijderen van deze role." -"An error occurred while deleting this set.","Er is een fout opgetreden tijdens het verwijderen van deze set." -"An error occurred while deleting this template.","Er is een fout opgetreden tijdens het verwijderen van dit sjabloon." -"An error occurred while finishing process. Please refresh the cache","Er is een fout opgetreden tijdens het afsluiten. Ververs de opslagplaats." -"An error occurred while rebuilding the CatalogInventory Stock Status.","Er is een fout opgetreden tijdens het herbouwen van de CatalogInventory Stock Status." -"An error occurred while rebuilding the catalog index.","Er is een fout opgetreden tijdens het herbouwen van de catalogus index." -"An error occurred while rebuilding the flat catalog category.","Er is een fout opgetreden tijdens het herbouwen van de flat catalogus categorie." -"An error occurred while rebuilding the flat product catalog.","Er is een fout opgetreden tijdens het herbouwen van de flat product catalogus" -"An error occurred while rebuilding the search index.","Er is een fout opgetreden tijdens het herbouwen van de zoekindex." -"An error occurred while refreshing the Catalog Rewrites.","Er is een fout opgetreden tijdens het verversen van de Catalog Rewrites." -"An error occurred while refreshing the Layered Navigation indices.","Er is een fout opgetreden tijdens het verversen van de Layered Navigation indices." -"An error occurred while refreshing the catalog rewrites.","Een fout heeft zich voorgedaan tijdens het verversen van de catalogus." -"An error occurred while refreshing the layered navigation indices.","Een fout heeft zich voorgedaan tijdens het verversen van de gelaagde navigatie indexen." -"An error occurred while saving URL Rewrite.","Er is een fout opgetreden tijdens het opslaan van URL Rewrite" -"An error occurred while saving account.","Fout voorgekomen bij opslaan van account." -"An error occurred while saving review.","Er is een fout opgetreden tijdens het opslaan van de beoordeling." -"An error occurred while saving the customer.","Fout voorgekomen bij opslaan klant." -"An error occurred while saving this configuration:","Fout voorgekomen bij opslaan van deze configuratie:" -"An error occurred while saving this role.","Fout voorgekomen bij opslaan van deze rol." -"An error occurred while saving this template.","Fout voorgekomen bij opslaan van dit sjabloon." -"An error occurred while updating the selected review(s).","Fout voorgekomen bij het updaten van de geselecteerde beoordeling(en)." -"Any","Iedere" -"Any Attribute Set","Iedere attribuut set" -"Any Group","Iedere groep" -"Any Status","Iedere status" -"Any Store","Iedere winkel" -"Any Type","Ieder type" -"Any Visibility","Iedere zichtbaarheid" -"Any data created since the backup was made will be lost including admin users, customers and orders.","Alle data dat gecreëerd is sinds de backup is gemaakt zal verloren gaan inclusief admin gebruikers, klanten en orders." -"Archive file name:","Archiveer bestandsnaam:" -"Are you sure that you want to delete this template?","Weet je zeker dat je dit sjabloon wilt verwijderen?" -"Are you sure that you want to strip tags?","Weet je zeker dat je de tags wilt verwijderen?" -"Are you sure you want to do this?","Weet je zeker dat je dit wilt doen?" -"Are you sure you want to proceed?","Weet u zeker dat u door wilt gaan?" -"Area","Gebied" -"As low as:","Zo laag als:" -"Assigned","Toegewezen" -"Attribute Set Name:","Attribuut set naam:" -"Attributes","Attributen" -"Automatic","Automatisch" -"Average","Gemiddeld Orderbedrag" -"Average Orders","Gemiddelde Orders" -"BINARY","BINAIR" -"Back","Terug" -"Back to Login","Terug naar Inloggen" -"Backup","Backup" -"Backup Name","Backup Naam" -"Backup options","Backup opties" -"Backups","Backups" -"Base currency","Basisvaluta" -"Bcc","Bcc" -"Bestsellers","Bestsellers" -"Billing Address","Facturatieadres" -"Billing Address: ","Factuuradres:" -"Billing Agreement","Facturatieovereenkomst:" -"Billing Agreements","Facturatieovereenkomsten:" -"Block Information","Blok Informatie" -"Both (without and with tax)","Beiden (zonder en met btw)" -"Both IPN and PDT","Zowel IPN als PDT" -"Browse Files...","Blader door Bestanden..." -"Bundle with dynamic pricing cannot include custom defined options. Options will not be saved.","Bundel met dynamische prijzen kan geen op maat gedefinieerde opties bevatten. Opties zullen niet opgeslagen worden." -"CMS","CMS" -"CRITICAL","KRITIEK" -"CSV","CSV" -"CSV / Tab separated","CSV / Tabel gescheiden" -"Cache Control","Cache-controle" -"Cache Control (beta)","Cache-controle (beta)" -"Cache Management","Beheer cache" -"Cache Type","Cache-type" -"Cancel","Annuleren" -"Cannot add new comment.","Kan geen nieuw commentaar toevoegen." -"Cannot add tracking number.","Kan geen volgnummer toevoegen." -"Cannot create an invoice without products.","Kan geen factuur aanmaken zonder producten." -"Cannot create credit memo for the order.","Kan geen kredietnota voor de order aanmaken." -"Cannot delete the design change.","Kan de ontwerpverandering niet verwijderen." -"Cannot delete tracking number.","Kan volgnummer niet verwijderen." -"Cannot do shipment for the order separately from invoice.","Kan de verzending voor de bestelling niet los van de factuur doen." -"Cannot do shipment for the order.","Kan geen verzending van de bestelling doen." -"Cannot initialize shipment for adding tracking number.","Kan de verzending niet beginnen voor het toevoegen van volgnummer." -"Cannot initialize shipment for delete tracking number.","Kan de verzending niet beginnen voor het verwijderen van volgnummer." -"Cannot load track with retrieving identifier.","Kan het volgen niet laden met het ophalen van id." -"Cannot retrieve tracking number detail.","Kan detail van het volgnummer niet ophalen." -"Cannot save shipment.","Kan verzending niet opslaan." -"Cannot save the credit memo.","Kan kredietnota niet opslaan." -"Cannot send shipment information.","Kan verzendingsinformatie niet verzenden." -"Cannot update item quantity.","Kan product hoeveelheid niet updaten." -"Cannot update the item\'s quantity.","Kan de product hoeveelheid niet updaten." -"Catalog","Catalogus" -"Catalog Price Rules","Catalogus prijs regels" -"Catalog Rewrites","Catalogus herschrijvingen" -"Categories","Categoriën" -"Category:","Categorie:" -"Chart is disabled. If you want to enable chart, click here.","Grafiek is uitgeschakeld. Indien u de grafiek wilt inschakelen, klik here." -"Checkbox","Selectie vakje" -"Child Transactions","Kinder transacties" -"Choose Store View:","Selecteer winkel aanzicht:" -"Choose an attribute","Kies een attribuut" -"Chosen category does not associated with any website, so url rewrite is not possible.","Gekozen categorie komt met geen enkele website overeen, de url herschrijving is daarom niet mogelijk." -"Chosen product does not associated with any website, so url rewrite is not possible.","Gekozen product komt met geen enkele website overeen, de url herschrijving is daarom niet mogelijk," -"Clear","Haal weg" -"Close","Sluiten" -"Comment text field cannot be empty.","Comment tekstbox kan niet leeg zijn." -"Complete","Compleet" -"Configuration","Configuratie" -"Confirm New Password","Bevestig nieuw wachtwoord" -"Confirmed email:","Bevestigd e-mail:" -"Connect with the Magento Community","Verbind met de Magento Gemeenschap" -"Continue","Doorgaan" -"Continuous","Continu" -"Convert to Plain Text","Verander naar Gewone Tekst" -"Cookie (unsafe)","Cookie (onveilig)" -"Country","Land" -"Country:","Land:" -"Coupons","Waardebonnen" -"Create","Maak aan" -"Create DB Backup","Maak DB Back-up" -"Create New Attribute","Maak Nieuw Attribuut" -"Create URL Rewrite:","Maak URL Herschrijving:" -"Created At","Gecreëerd op" -"Credit Card %s","Credit Card %s" -"Credit Memo History","Creditnota Geschiedenis" -"Credit Memo Totals","Creditnota Totaal" -"Credit Memos","Creditnotas" -"Credit memo #%s comment added","Creditnota #%s commentaar toegevoegd" -"Credit memo #%s created","Creditnota #%s aangemaakt" -"Credit memo\'s total must be positive.","Totaal van creditmemo's moet positief zijn." -"Currency","Munteenheid" -"Currency ""%s"" is used as %s in %s.","Valuta ""%s"" wordt gebruikt als %s in %s." -"Currency Information","Valutainformatie" -"Currency Setup Section","Sectie voor instellen valuta" -"Current Configuration Scope:","Bereik van huidige configuratie:" -"Current Month","Huidige maand" -"Custom","Zelfgekozen" -"Custom Variable ""%s""","Gepersonaliseerde Variabele ""%s""" -"Custom Variables","Zelfgekozen variabelen" -"Customer","Klant" -"Customer Group:","Klantgroep:" -"Customer Groups","Klantgroepen" -"Customer","Naam klant" -"Customer Reviews","Klantbeoordelingen" -"Customer Shopping Carts","Klantwinkelmandjes" -"Customer Since:","Klant sinds:" -"Customer Tax Classes","Belastingtarieven klant" -"Customer with the same email already exists.","Klant met dit emailadres bestaat reeds." -"Customers","Klanten" -"Customers by Orders","Klanten op volgorde van aantal bestellingen" -"Customers by Orders Total","Klanten op volgorde van totaal bestellingen" -"DHTML Date/Time Selector","DHTML Datum/tijd selectie" -"Dashboard","Dashboard" -"Data Format","Dataformat" -"Data transfer:","Dataoverdracht:" -"Database","Database" -"Date","Datum" -"Date & Time","Datum & tijd" -"Added","Datum Toegevoegd" -"Updated","Bijgewerkt op datum" -"Date selection:","Datumselectie:" -"Date selector","Datumselector:" -"Day","Dag" -"Decimal separator:","Scheidingsteken decimalen:" -"Default (Admin) Values","Standaard (admin) waardes" -"Default Billing Address","Standaard betalingsadres" -"Default Config","Standaardconfiguratie" -"Default Template from Locale","Standaardsjabloon van locale" -"Default Values","Standaardwaardes" -"Default display currency ""%s"" is not available in allowed currencies.","Standaard weergegeven valuta ""%s"" is niet beschikbaar in toegestane valuta." -"Default scope","Standaardbereik" -"Delete","Verwijderen" -"Delete %s","Verwijder %s" -"Delete %s '%s'","Verwijder %s '%s'" -"Delete File","Verwijder bestand" -"Delete Image","Verwijder beeld" -"Delete Profile","Profiel verwijderen" -"Delete Role","Verwijder Rol" -"Delete Store","Verwijder Winkel" -"Delete Store View","Verwijder Winkel Aanzicht" -"Delete Template","Verwijder Template" -"Delete User","Verwijder Gebruiker" -"Delete Website","Verwijder Website" -"Description","Beschrijving" -"Design","Ontwerp" -"Design Section","Ontwerp Sectie" -"Details","Details" -"Developer Section","Ontwikkelaar Sectie" -"Direction:","Richting:" -"Disable","Maak onbruikbaar" -"Disabled","Uitgeschakeld" -"Display %s first","Geef %s eerst weer" -"Display default currency","Geef standaard muntsoort weer" -"Distributed under GNU LGPL. See %s for details.","Gedistrubueerd onder GNU LGPL. Zie %s voor details." -"Do you really want to KILL parallel process and start new indexing process?","Weet u zeker dat u het parallele proces wilt AFSLUITEN en een nieuw indexeringsproces wilt starten?" -"Do you really want to proceed?","Wilt u echt doorgaan?" -"Download","Download" -"Downloads","Downloads" -"Drag to move","Sleep om te verplaatsen" -"Drop-down","Drop-down" -"Edit","Bewerken" -"Edit Design Change","Bewerk Ontwerp Verandering" -"Edit Email Template","Bewerk E-mail Sjabloon" -"Edit Order","Bestelling bewerken" -"Edit Queue","Bewerk Rij" -"Edit Review","Bewerk Recensie" -"Edit Role","Bewerk Rol" -"Edit Store View","Bewerk Voorraad View" -"Edit System Template","Bewerk Systeem Sjabloon" -"Edit Template","Bewerk Sjabloon" -"Edit URL Rewrite","Bewerk URL Rewrite" -"Edit User","Bewerk Gebruiker" -"Edit User '%s'","Bewerk Gebruiker ""%s'" -"Edit Website","Bewerk Website" -"Email","Email" -"Email Address:","E-mailadres:" -"Email Preview","E-mail Preview" -"Email to a Friend","E-mail Vriend" -"Email:","E-mail" -"Enable","Maak bruikbaar" -"Enabled","Aan" -"Enclose Values In:","Sluit Waarden In:" -"Entity Attributes","Eenheidattributen" -"Entity Type","Eenheid Type" -"Entity type:","Type eenheid" -"Error","Fout" -"Excel XML","Excel XML" -"Excl. Tax","Excl. BTW" -"Exclude media folder from backup","Sluit de media map uit van de backup" -"Export","Export" -"Export CSV","Exporteer CSV" -"Export Filters","Exporteer Filters" -"Export to:","Exporteer naar:" -"Export:","Exporteer:" -"FTP Host","FTP Host" -"FTP Host[:Port]","FTP Host[:Port]" -"FTP Login","FTP Login" -"FTP Password","FTP wachtwoord" -"FTP credentials","FTP referenties" -"Failed to add a product to cart by id ""%s"".","Product toevoegen aan winkelwagen door I.D. is mislukt ""%s""." -"Failed to cancel the billing agreement.","Kon de facturatie-overeenkomst niet annuleren." -"Failed to clear the JavaScript/CSS cache.","Kon het JavaScript/CSS niet uit de cache verwijderen." -"Failed to delete the billing agreement.","Kon de facturatieovereenkomst niet verwijderen." -"Failed to update the profile.","Was niet in staat het profiel te updaten." -"Field","Veld" -"Field Mapping","Veld Mapping" -"File","Bestand" -"File Information","Bestand informatie" -"File System","Bestanden Systeem" -"File mode","Bestandsmodus" -"File name:","Bestandsnaam:" -"File size should be more than 0 bytes","Bestandsgrootte moet groter zijn dan 0 bytes" -"Finished profile execution.","Klaar met het uitvoeren van het profiel." -"First Invoice Created Date","Datum Eerste Factuur" -"First Name","Voornaam" -"First Name is required field.","Voornaam is een vereist veld." -"First Name:","Voornaam" -"Fixed","Gemaakt" -"Flush Catalog Images Cache","Flush Catalogus Afbeeldingenopslagplaats" -"Flush JavaScript/CSS Cache","Flush JavaScript/CSS Opslagplaats" -"For category","Voor categorie" -"For latest version visit: %s","Zie voor de laatste versie: %s" -"For product","Voor product" -"Forgot Admin Password","Beheerderswachtwoord vergeten" -"Forgot your password?","Uw wachtwoord vergeten?" -"Forgot your user name or password?","Gebruikersnaam of wachtwoord vergeten?" -"From","Van" -"GLOBAL","GLOBAAL" -"Gb","Gb" -"General Information","Algemene informatie" -"General Section","Algemene Sectie" -"Get Image Base64","Krijg Afbeelding Base64" -"Get help for this page","Hulp krijgen voor deze pagina" -"Global Attribute","Globaal Attribuut" -"Global Record Search","Globaal records zoeken" -"Global Search","Globale zoektocht" -"Go Today","Ga Vandaag" -"Go to messages inbox","Ga naar inbox" -"Go to notifications","Ga naar meldingen" -"Google Base","Google Base" -"Google Sitemaps","Google Sitemaps" -"Grand Total","Totaal" -"Grid (default) / List","Grid (vaststaand) / Lijst" -"Grid Only","Alleen Rooster" -"Group:","Groep:" -"Guest","Gast" -"HTTP (unsecure)","HTTP (onbeveiligd)" -"HTTPS (SSL)","HTTPS (SSL)" -"Help Us Keep Magento Healthy - Report All Bugs","Help ons Magento gezond te houden - rapporteer alle bugs" -"Helper attributes should not be used in custom layout updates.","Help attributen moeten niet gebruikt worden in gebruikelijke layout updates." -"Helper for options rendering doesn't implement required interface.","Help voor optie verduidelijking implementeert gevraagde interface niet." -"Home","Thuis" -"ID","ID" -"ID Path","ID Pad" -"IP Address","IP Adres" -"IPN (Instant Payment Notification) Only","Alleen IPN (Onmiddellijke Betaling Notificatie)" -"If there is an account associated with %s you will receive an email with a link to reset your password.","Als er een rekening geassocieerd is met %s ontvangt u een email met een link om uw wachtwoord te herstellen." -"If this message persists, please contact the store owner.","Neem contact op met de winkeleigenaar indien dit bericht aanhoudt." -"Images (.gif, .jpg, .png)","Afbeeldingen (.gif, .jpg, .png)" -"Images Cache","Afbeeldingen Voorraad" -"Import","Import" -"Import Service","Importeer dienst" -"Import and Export","Importeren en exporteren" -"Import and Export Tax Rates","Import en Export Belastingtarieven" -"Import/Export","Import/Export" -"Import/Export Advanced","Import/Export Geavanceerd" -"Import/Export Profile","Import/Export Profiel" -"Important: ","Belangrijk:" -"Imported %s records","Geïmporteerde %s gegevens" -"In","In" -"In Database:","In databse:" -"In File:","In bestand:" -"Inactive","Inactief" -"Incl. Tax","Incl. BTW" -"Incoming Message","Inkomend Bericht" -"Insert Variable...","Voeg Variabel in..." -"Interactive","Interactief" -"Interface Locale: %s","Interface locatie-instelling: %s" -"Invalid Form Key. Please refresh the page.","Ongeldig Formaat Sleutel. Gelieve de pagina te herladen." -"Invalid Import Service Specified","Ongeldige Import Service Geselecteerd" -"Invalid POST data (please check post_max_size and upload_max_filesize settings in your php.ini file).","Ongeldige POST data (kijk post_max_size en upload_max_filesize instellingen na in uw php.ini file)." -"Invalid Secret Key. Please refresh the page.","Ongeldige Geheime Sleutel. Ververs de pagina." -"Invalid User Name or Password.","Ongeldige Gebruikersnaam of Wachtwoord." -"Invalid directory: %s","Ongeldige directory: %s" -"Invalid email address ""%s"".","Ongeldig e-mailadres ""%s""." -"Invalid email address.","Ongeldig e-mailadres." -"Invalid file: %s","Ongeldig bestand: %s" -"Invalid input data for %s => %s rate","Ongeldige invoerdata voor %s => %s tarief" -"Invalid parent block for this block","Ongeldig hoofdblok voor dit blok" -"Invalid parent block for this block.","Ongeldig bron blok voor dit blok." -"Invalid password reset token.","Ongeldige wachtwoord herstel token" -"Invalid sender name ""%s"". Please use only visible characters and spaces.","Ongeldige naam van verzender ""%s"". Gebruik a.u.b. alleen zichtbare karakters en spaties." -"Invalid timezone","Ongeldige tijdzone" -"Invalidated","Ongeldig gemaakt" -"Inventory Stock Status","Inventarislijst status" -"Invoice #%s comment added","Factuur #%s commentaar toegevoegd" -"Invoice #%s created","Factuur #%s aangemaakt" -"Invoice History","Factuurhistorie" -"Invoice Totals","Totaal facturen" -"Invoice canceling error.","Factuur annuleringsfout." -"Invoice capturing error.","Factuur ophaal fout." -"Invoice voiding error.","Factuur vernietiging fout." -"Invoices","Facturen" -"Is Closed","Is gesloten" -"Issue Number","Uitgave Nummer" -"Items","Artikelen" -"JavaScript seems to be disabled in your browser.","JavaScript lijkt uitgeschakeld te zijn in uw browser." -"JavaScript/CSS","Javascript/CSS" -"JavaScript/CSS Cache","Javascript/CSS Cache" -"Kb","Kb" -"Last 24 Hours","Afgelopen 24 uur" -"Last 5 Orders","Laatste 5 bestellingen" -"Last 5 Search Terms","Laatste 5 zoektermen" -"Last 7 Days","Laatste 7 Dagen" -"Last Credit Memo Created Date","Laatste Kredietnota Aanmaak Datum" -"Last Invoice Created Date","Laatste factuur creatie datum" -"Last Logged In (%s):","Laatst ingelogd in (%s):" -"Last Logged In:","Laatste login:" -"Last Name","Achternaam" -"Last Name is required field.","Achternaam is een verplicht veld." -"Last Name:","Achternaam:" -"Last updated: %s. To refresh last day\'s statistics, click here.","Laatste update: %s. Om de statistieken van de voorgaande dag te verversen, klik hier." -"Latest Message:","Laatste boodschap:" -"Layered Navigation Indices","Gelaagde Navigatie Indices" -"Layered Navigation Indices were refreshed.","Gelaagde Navigatie Indices zijn ververst." -"Leave empty to use tax identifier","Laat dit veld leeg om het belastingidentificatienummer te gebruiken" -"Lifetime Sales","Lifetime Verkopen" -"Lifetime statistics have been updated.","Lifetime statistieken zijn geupdate." -"Links","Links" -"Links with associated products will retain only after saving current product.","Links met gerelateerde producten worden slechts behouden na het opslaan van huidige product." -"List (default) / Grid","Lijst (standaard) / Rooster" -"List Only","Alleen Lijst" -"Load Template","Laad Sjabloon" -"Load default template","Laad standaard sjabloon" -"Loading...","Aan het laden..." -"Local Server","Lokale Server" -"Local/Remote Server","Lokale/Op afstand Server" -"Locale","Lokaal" -"Log Out","Uitloggen" -"Log in to Admin Panel","Log in op het Administratie Bedieningspaneel" -"Log into Magento Admin Page","Inloggen bij Magento administratiepagina" -"Logged in as %s","Ingelogd als %s" -"Login","Log in" -"Low Stock","Lage Voorraad" -"MAJOR","MAJOR" -"MINOR","MINOR" -"MS Excel XML","MS Excel XML" -"Magento Admin","Magento Administrator" -"Magento Commerce - Administrative Panel","Magento Commerce - Administratiepaneel" -"Magento Connect","Magento Connect" -"Magento Connect Manager","Magento Connect Manager" -"Magento Logo","Magento Logo" -"Magento is a trademark of X.commerce, Inc. Copyright © %s X.commerce, Inc.","Magento is een handelsmerk van X.commerce, Inc. Copyright © %s X.commerce, Inc." -"Magento root directory","Magento root directory" -"Magento ver. %s","Magento ver. %s" -"Magento® is a trademark of X.commerce, Inc.
Copyright © %s X.commerce, Inc.","Magento® is een handelsmerk van X.commerce, Inc.
Copyright © %s X.commerce, Inc." -"Make sure that data encoding in the file is consistent and saved in one of supported encodings (UTF-8 or ANSI).","Zorg ervoor dat de data die is gecodeerd in het bestand consistent is en opgeslagen in één van de ondersteunde coderingen. (UTF-8 of ANSI)." -"Manage Attribute Sets","Beheer Attribuut Sets" -"Manage Attributes","Attributen beheren" -"Manage Categories","Beheer Categorieën" -"Manage Content","Content beheren" -"Manage Currency Rates","Beheer Wisselkoersen" -"Manage Customers","Beheer Klanten" -"Manage Ratings","Beheer Ratings" -"Manage Stores","Beheer Winkels" -"Manage Tax Rules","Manage Belasting Regels" -"Manage Tax Zones and Rates","Belastingzones en -tarieven beheren" -"Manual","Handmatig" -"Matched Expression","Bijpassende Expressie" -"Mb","Mb" -"Media (.avi, .flv, .swf)","Media (.avi, .flv, .swf)" -"Media storages synchronization has completed!","Mediageheugen synchronisatie voltooid!" -"Messages Inbox","Berichten Postvak In" -"Month","Maand" -"Most Viewed","Meest bekeken" -"Most Viewed Products","Meest bekeken producten" -"Multiple Select","Multiple Selecteer" -"My Account","Mijn account" -"N/A","Nvt" -"NOTICE","OPMERKING" -"Name","Naam" -"Name:","Naam:" -"Never (production)","Nooit (productie)" -"New ","Nieuw" -"New API Key","Nieuwe API-sleutel" -"New Accounts","Nieuwe Accounts" -"New Attribute","Nieuw Attribuut" -"New Block","Nieuw blok" -"New Category","Nieuwe Categorie" -"New Class","Nieuwe Klasse" -"New Condition","Nieuwe Conditie" -"New Custom Variable","Nieuw Aangepast Variabel" -"New Customer","Nieuwe Klant" -"New Customers","Nieuwe Klanten" -"New Design Change","Nieuwe Ontwerpverandering" -"New Email Template","Nieuw E-mail Sjabloon" -"New Group","Nieuwe Groep" -"New Invoice","Nieuwe Factuur" -"New Item Type","Nieuw Item Type" -"New Memo","Nieuwe Nota" -"New Memo for #%s","Nieuwe Nota voor #%s" -"New Page","Nieuwe Pagina" -"New Password","Nieuw Wachtwoord" -"New Profile","Nieuw Profiel" -"New Rate","Nieuw Tarief" -"New Rating","Nieuwe beoordeling" -"New Review","Nieuwe Review" -"New Role","Nieuwe Rol" -"New Rule","Nieuwe Regel" -"New Search","Nieuwe Zoekopdracht" -"New Set","Nieuwe Reeks" -"New Shipment","Nieuwe Verzending" -"New Sitemap","Nieuwe Sitemap" -"New Store View","Nieuwe Winkel Bezichtiging" -"New System Template","Nieuw Systeemtemplate" -"New Template","Nieuw Sjabloon" -"New User","Nieuwe Gebruiker" -"New Variable","Nieuw Variabele" -"New Website","Nieuwe Website" -"New password field cannot be empty.","Nieuw wachtwoord veld mag niet leeg zijn" -"Newsletter","Nieuwsbrief" -"Newsletter Problems","Nieuwsbrief Problemen" -"Newsletter Queue","Nieuwsbrief Wachtrij" -"Newsletter Subscribers","Nieuwsbrief abonnees" -"Newsletter Templates","Nieuwsbrief sjablonen" -"Next month (hold for menu)","Volgende maand (houd ingedrukt voor menu)" -"Next year (hold for menu)","Volgend jaar (houd ingedrukt voor menu)" -"No","Nee" -"No (price without tax)","Nee (prijs zonder BTW)" -"No Data","Geen Data" -"No Data Found","Geen gegevens gevonden" -"No Templates Found","Geen sjablonen gevonden" -"No change","Geen verandering" -"No customer id defined.","Geen klant identificatie." -"No information available.","Geen informatie beschikbaar." -"No profile loaded...","Geen profiel geladen..." -"No records found for this period.","Geen registraties gevonden voor deze periode." -"No records found.","Geen bestanden gevonden." -"No report code specified.","Geen meldingscode gespecificeerd." -"No search keywords.","Geen zoek sleutelwoorden." -"No search modules were registered","Er werden geen zoekmodules geregistreerd." -"No wishlist item id defined.","Geen verlanglijst identificatie." -"None","Geen" -"Note:","Aantekening:" -"Notes","Aantekeningen" -"Notifications","Notificaties" -"Orders","Aantal Orders" -"Uses","Aantal Gebruiken" -"Views","Aantal keer bekeken" -"Number of records:","Aantal archieven:" -"OK","OK" -"Old rate:","Oude tarief:" -"One or more media files failed to be synchronized during the media storages syncronization process. Refer to the log file for details.","Eén of meer mediabestanden zijn niet gesynchroniseerd tijdens het mediageheugen synchronisatieproces. Ga naar het logbestand voor details." -"One or more of the Cache Types are invalidated:","Een of meer van de cache types zijn niet meer geldig:" -"Online Customers","Online Klanten" -"Only Once (version upgrade)","Slechts eenmalig (versie bijwerken)" -"Only attributes with scope ""Global"", input type ""Dropdown"" and Use To Create Configurable Product ""Yes"" are available.","Alleen eigenschappen met ""Global"" scope, input type ""Dropdown"" en Use To Create Configurable Product ""Ja"" zijn beschikbaar." -"Only mapped fields","Alleen gemapte velden" -"Optional","Optioneel" -"Options","Opties" -"Order","Bestelling" -"Order %s","Bestelling #%s" -"Order %s (%s)","Bestelling #%s (%s)" -"Order Created Date","Bestelling aangemaakt op datum" -"Order ID","ID Bestelling" -"Order Totals","Totalen Bestelling" -"Order Updated Date","Bestelling bijgewerkt op datum" -"Order Updated Date report is real-time, does not need statistics refreshing.","Bestelling Aangepaste Datum rapport is real-time, deze hoeft niet statisch vernieuwd te worden." -"Orders","Bestellingen" -"Original Magento attribute names in first row:","Originele Magento attributennamen in de eerste rij:" -"Out of stock","Uit voorraad" -"PDT (Payment Data Transfer) Only","PDT (Betaling Informatie Overdracht) Alleen" -"Package Extensions","Pakket Uitbreidingen" -"Pages","Pagina's" -"Parent Product Thumbnail","Hoofdproduct Thumbnail" -"Parent Transaction ID","Ouder transactie ID" -"Passive mode","Passieve modus" -"Password","Wachtwoord" -"Password Confirmation","Wachtwoord Confirmatie" -"Password confirmation must be same as password.","Wachtwoord confirmatie moet het zelfde zijn als wachtwoord." -"Password must be at least of %d characters.","Wachtwoord moet ten minste %d tekens lang zijn." -"Password must include both numeric and alphabetic characters.","Wachtwoord moet zowel nummers als letters bevatten." -"Password:","Wachtwoord:" -"Path:","Pad:" -"PayPal Manager","PayPal manager" -"Payment method instance is not available.","Betalingsmethode niet beschikbaar" -"Payment method is not available.","Betalingsmethode is niet beschikbaar." -"Payment method must be specified.","Betalingsmethode moet gekozen worden." -"Pending Reviews","In afwachting van beoordelingen" -"Per Item","Per Stuk" -"Per Order","Per Bestelling" -"Percent","Procent" -"Performed At","Uitgevoerd Op" -"Interval","Periode" -"Permanent (301)","Permanent (301)" -"Permissions","Toestemmingen" -"Personal Information","Persoonlijke Informatie" -"Phone:","Telefoon:" -"Please Select","Selecteer A.U.B." -"Please confirm site switching. All data that hasn\'t been saved will be lost.","Bevestig a.u.b. site switching. Alle data die niet zijn opgeslagen, zullen verdwijnen." -"Please enter 6 or more characters.","Voer 6 of meer karakters in." -"Please enter a number greater than 0 in this field.","Voer a.u.b. een getal groter dan 0 in in dit veld." -"Please enter a valid $ amount. For example $100.00.","Voer a.u.b. een geldig € hoeveelheid in. Bijvoorbeeld €100,00." -"Please enter a valid URL. For example http://www.example.com or www.example.com","Voer a.u.b. een geldige YRL in. Bijvoorbeeld http://www.voorbeeld.com of www.voorbeeld.com" -"Please enter a valid URL. http:// is required","Voer a.u.b. een geldige URL in. http:// is vereist" -"Please enter a valid credit card number.","Voer geldig creditcard nummer in." -"Please enter a valid date.","Voer a.u.b. een geldige datum in." -"Please enter a valid email address. For example johndoe@domain.com.","Voer a.u.b. een geldig e-mailadres in. Bijvoorbeeld johndoe@domain.com." -"Please enter a valid email.","Voer a.u.b. een geldig e-mailadres in." -"Please enter a valid number in this field.","Voer in dit veld een geldig nummer in." -"Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890.","Voer een geldig telefoonnummer in. Bijvoorbeeld (123) 456-7890 of 123-456-7890." -"Please enter a valid social security number. For example 123-45-6789.","Voer a.u.b. een geldig burgerservicenummer in. Bijvoorbeeld 123-45-6789." -"Please enter a valid value from list","Voer een geldige invoer van de lijst in" -"Please enter a valid value, ex: 10,20,30","Voer a.u.b. een geldige waarde in, v.b. 10, 20, 30" -"Please enter a valid zip code.","Voer een geldige postcode in." -"Please enter a valid zip code. For example 90602 or 90602-1234.","Voer a.u.b. een geldige postcode in. Bijvoorbeeld 1234 AB." -"Please enter another credit card number to complete your purchase.","Voer alstublieft een ander creditcardnummer in om uw aankoop te voltooien." -"Please enter password","Voer aub uw wachtwoord in" -"Please enter password to confirm rollback.","Voer aub uw wachtwoord in om de rollback te bevestigen." -"Please enter valid password.","Voer a.u.b. een geldig wachtwoord in." -"Please make sure that all global admin search modules are installed and activated.","Zorg dat alle global admin search modules geïnstalleerd en geactiveerd zijn." -"Please make sure that your changes were saved before running the profile.","Zorg dat al uw veranderingen opgeslagen zijn voordat u het profiel uitvoert." -"Please make sure your passwords match.","Let er alstublieft op dat de wachtwoorden overeenkomen." -"Please select State/Province.","Selecteer Staat/Provincie." -"Please select a customer.","Selecteer een klant." -"Please select a store.","Selecteer a.u.b. een winkel." -"Please select an option.","Selecteer alstublieft een optie." -"Please select catalog searches.","Selecteer alstublieft catalogus zoekopdrachten." -"Please select customer(s).","Selecteer a.u.b. (een) klant(en)" -"Please select message(s).","Selecteer alstublieft boodschap(pen)." -"Please select one of the above options.","Selecteer alstublieft een van de bovenstaande opties." -"Please select one of the options.","Selecteer a.u.b. één van de opties." -"Please select review(s).","Selecteer alstublieft recentie(s)." -"Please specify backup creation options","Specificeer aub de backup creatie opties" -"Please specify the admin custom URL.","Specificeer a.u.b. de admin standaard URL." -"Please try to logout and sign in again.","Probeer uit te loggen en log opnieuw in." -"Please type the letters from the image:","Voer aub de letters van de afbeelding in:" -"Please use in this field only ""a-z,0-9,_"".","Gebruikt in dit veld alleen ""a-z,0-9,_""." -"Please use letters only (a-z) in this field.","Gebruik alstublieft alleen letters (a-z) in dit veld." -"Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas.","Gebruik alleen getallen in dit veld. Vermijd spaties of andere tekens zoals punten of komma's." -"Please use only letters (a-z or A-Z), numbers (0-9) or spaces in this field.","Gelieve alleen de letters (a-z of A-Z), nummers (0-9) en/of spaties in dit veld te gebruiken." -"Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed.","Gebruik a.u.b. alleen letters (a-z) of nummers (0-9) in dit veld. Spaties en andere karakters zijn niet toegestaan." -"Please use only letters (a-z) or numbers (0-9) or spaces and # only in this field.","Gebruik alstublieft alleen letters (a-z) of nummers (0-9) of spaties en # in dit veld." -"Please use this date format: dd/mm/yyyy. For example 17/03/2006 for the 17th of March, 2006.","Gebruik het volgende datumformaat: dd/mm/jjjj. Bijvoorbeeld 17/03/2006 voor 17 maart 2006." -"Please wait while the indexes are being refreshed.","Wacht alstublieft terwijl de indexen worden vernieuwd." -"Please wait, loading...","Wacht alstublieft, aan het laden..." -"Please wait...","Even geduld..." -"Popular","Populair" -"Position of Watermark for %s","Positie van Watermerk voor %s" -"Pregenerated product images files.","Gegenereerde product afbeeldingsbestanden." -"Prev. month (hold for menu)","Vorige maand (vasthouden voor menu)" -"Prev. year (hold for menu)","Vorig jaar (houd ingedrukt voor menu)" -"Preview","Preview" -"Preview Template","Voorbeeld sjabloon" -"Price","Prijs" -"Price alert subscription was saved.","Prijsnotificatie abonnement werd opgeslagen." -"Price:","Prijs:" -"Processed %s%% %s/%d records","Verwerkte %s%% %s/%d bestanden" -"Product","Product" -"Product","Productnaam" -"Product Reviews","Productbeoordelingen" -"Product Tax Classes","Product Belasting Klassen" -"Product Thumbnail Itself","Product Miniatuurweergave Zelf" -"Product is not loaded.","Product is niet geladen." -"Product:","Product:" -"Products","Producten" -"Products Bestsellers Report","Producten Bestsellers Rapport" -"Products Most Viewed Report","Verslag meest bekeken producten" -"Products Ordered","Bestelde Producten" -"Products in Carts","Producten in Wagens" -"Profile Action","Profiel Actie" -"Profile Actions XML","Profiel Acties XML" -"Profile Direction","Profiel Richting" -"Profile History","Profielgeschiedenis" -"Profile Information","Profielinformatie" -"Profile Name","Profielnaam" -"Profile Payments","Profiel Betalingen" -"Profile Schedule","Profiel Schema" -"Profile Wizard","Profiel Wizard" -"Profiles","Profielen" -"Promo","Promotie" -"Promotions","Promoties" -"Purchased Item","Aangeschaft Artikel" -"Put store on the maintenance mode while backup creation","Zet de store in onderhoudsmodus tijdens het maken van back-ups" -"Put store on the maintenance mode while rollback processing","Zet de winkel in de onderhoudsmodus tijdens het rollback proces" -"Quantity","Hoeveelheid" -"Queue Refresh","Verversing Rij" -"Queued... Cancel","In de Wachtrij... Annuleer" -"Radio Buttons","Radio Knoppen" -"Rates","Tarieven" -"Read details","Lees details" -"Rebuild","Herbouwen" -"Rebuild Catalog Index","Herbouw Catalogus Index" -"Rebuild Flat Catalog Category","Herbouw Flat Catalogus Categorie" -"Rebuild Flat Catalog Product","Herbouw Plat Catalogus Product" -"Recent Orders","Recente Bestellingen" -"Recent statistics have been updated.","Recente statistieken zijn geüpdatet." -"Recurring Profile View","Herhaalde Profiel View" -"Recursive Dir","Recursieve Dir" -"Redirect","Doorverwijzing" -"Reference","Referentie" -"Reference ID","Referentie ID" -"Refresh","Ververs" -"Refresh Now*","Vernieuw Nu*" -"Refresh Statistics","Statistieken verversen" -"Region/State","Regio/Staat" -"Regular Price:","Normale prijs:" -"Release","Uitgave" -"Release Stability","Geef Stabiliteit Vrij" -"Release Version","Uitgave Versie" -"Reload captcha","Herlaad captcha" -"Remote FTP","Afgelegen FTP" -"Remove","Verwijderen" -"Reports","Verslagen" -"Request Path","Vraag Pad op" -"Required","Benodigd" -"Reset","Opnieuw" -"Reset Filter","Stel Filter Opnieuw in" -"Reset Password","Herstel Wachtwoord" -"Reset a Password","Wachtwoord opnieuw instellen" -"Resize","Formaat Veranderen" -"Resource Access","Toegang tot hulpbron" -"Resources","Hulpbronnen" -"Results","Resultaten" -"Retrieve Password","Wachtwoord Opvragen" -"Return Html Version","Keer HTML Versie Terug" -"Revenue","Omzet" -"Reviews","Reviews" -"Reviews and Ratings","Beoordelingen en waarderingen" -"Rewrite Rules","Regels herschrijven" -"Role ID","Rol ID" -"Role Info","Rol Informatie" -"Role Information","Rolinformatie" -"Role Name","Rolnaam" -"Role Resources","Rol Bronnen" -"Role Users","Rol gebruikers" -"Roles","Rollen" -"Roles Resources","Rollen hulpbronnen" -"Rotate CCW","Draai CCW" -"Rotate CW","CW roteren" -"Run","Run" -"Run Profile","Profiel uitvoeren" -"Run Profile Inside This Window","Profiel runnen in dit scherm" -"Run Profile in Popup","Profiel runnen in popup scherm" -"Running... Kill","Werkende... Afbreken" -"SKU","SKU" -"SKU:","SKU:" -"SSL Error: Invalid or self-signed certificate","SSL Fout: Ongeldig of zelfondertekend certificaat" -"Sales","Verkoop" -"Sales Report","Verkooprapport" -"Samples","Monsters" -"Save","Opslaan" -"Save & Generate","Sla op & Genereer" -"Save Account","Bewaar Account" -"Save Cache Settings","Bewaar Opslag Instellingen" -"Save Config","Sla Configuratie op" -"Save Currency Rates","Bewaar Huidige Waarden" -"Save Profile","Profiel opslaan" -"Save Role","Sla Rol op" -"Save Template","Sjabloon Opslaan" -"Save User","Bewaar Gebruiker" -"Save and Continue Edit","Opslaan en doorgaan met bewerken" -"Search","Zoeken" -"Search Index","Zoekindex" -"Search Term","Zoek Woord" -"Search Terms","Zoek Voorwaarden" -"Select","Selecteren" -"Select All","Selecteer Alles" -"Select Category","Selecteer Categorie" -"Select Date","Selecteer Datum" -"Select Range","Gebied selecteren" -"Select date","Selecteer datum" -"Selected allowed currency ""%s"" is not available in installed currencies.","Geselecteerde toegestane munteenheid ""%s"" is niet beschikbaar in de geïnstalleerde munteenheden." -"Selected base currency is not available in installed currencies.","De gekozen basis valuta is niet beschikbaar in de geïnstalleerde valuta's." -"Selected default display currency is not available in allowed currencies.","Geselecteerde vaststaande display valuta is niet beschikbaar in toegestane valuta." -"Selected default display currency is not available in installed currencies.","De gekozen weer te geven valuta is niet beschikbaar in de geïnstalleerde valuta's." -"Self-assigned roles cannot be deleted.","Zelf-toegewezen rollen kunnen niet verwijderd worden." -"Sender","Verzender" -"Separate Email","Afgezonderde E-mail" -"Service Settings","Service-instellingen" -"Set up & Customize","Instellen en personaliseren" -"Shipment #%s comment added","Verzending #%s commentaar toegevoegd" -"Shipment #%s created","Verzending #%s gecreëerd" -"Shipment Comments","Verzending Commentaar" -"Shipment History","Verzending geschiedenis" -"Shipments","Verzendingen" -"Shipping","Verzending" -"Shipping Address","Verzendingsadres" -"Shipping Address: ","Verzendadres:" -"Shipping Origin","Verzending Herkomst" -"Shipping Price","Verzendkosten" -"Shipping address selection is not applicable","Verzendadres selectie is niet van toepassing" -"Shipping method must be specified.","Verzendingsmethode moet gekozen worden." -"Shipping method selection is not applicable","Verzendmethode selectie is niet van toepassing" -"Shopping Cart","Winkelmandje" -"Shopping Cart Price Rules","Winkelwagen Berekeningsregels" -"Shopping Cart from %s","Winkelwagen van %s" -"Show By","Tonen op" -"Show Report For:","Toon Verslag Van:" -"Show Reviews","Laat Beoordelingen Zien" -"Sitemap Information","Sitemap Informatie" -"Size for %s","Rangschikken naar %s" -"Skip Category Selection","Sla Categorie Selectie over" -"Some items in this order have different invoice and shipment types. You can create shipment only after the invoice is created.","Some zaken in deze bestelling hebben verschillende factuur- en bezorgtypes. U kunt alleen een bezorging maken na het maken van de rekening." -"Some of the ordered items do not exist in the catalog anymore and will be removed if you try to edit the order.","Sommige van de bestelde artikelen bestaan niet meer in de catalogus en zullen verwijderd worden als u de bestelling aanpast." -"Sorry, this feature is coming soon...","Sorry, deze optie komt binnenkort..." -"Special Price:","Speciale prijs:" -"Specific Countries","Specifieke Landen" -"Specified","Gespecificeerd" -"Specified profile does not exist.","Gespecificeerd profiel bestaat niet." -"Spreadsheet Name:","Naam spreadsheet:" -"Start Date","Begindatum" -"Starting profile execution, please wait...","Bezig met het beginnen van de uitvoering van het profiel, wacht u alstublieft..." -"State/Province:","Staat/Provincie:" -"Static Blocks","Statische blokken" -"Status","Status" -"Status:","Status:" -"Stock Quantity:","Hoeveelheid in voorraad:" -"Stock notification was saved.","Voorraad notificatie opgeslagen." -"Store","Winkel" -"Store Email Addresses Section","Sla E-mail Adres Sectie op" -"Store View","Aanblik winkel" -"Store:","Sla op:" -"Stores","Warenhuizen" -"Subject","Onderwerp" -"Submit","Bevestig" -"Subpackage cannot be conflicting.","Subpakket mag niet conflicteren." -"Subtotal","Subtotaal" -"Switch/Solo/Maestro Only","Alleen Switch/Solo/Maestro" -"Synchronization is required.","Synchronisatie is nodig." -"Synchronization of media storages has been successfully completed.","Synchronisatie van mediaopslag is succesvol voltooid." -"Synchronize","Synchroniseer" -"Synchronizing %s to %s","Aan het synchroniseren van %s tot s%" -"Synchronizing...","Aan het synchroniseren..." -"System","Systeem" -"System Section","Systeem Sectie" -"System busy","Systeem bezig" -"Target Path","Doelpad" -"Tax","Belasting" -"Tb","Tb" -"Template","Sjabloon" -"Template Content","Inhoud sjabloon" -"Template Information","Sjabloon informatie" -"Template","Naam sjabloon" -"Template Styles","Sjabloon Stijlen" -"Template Subject","Sjabloon Onderwerp" -"Template Type","Sjabloon Type" -"Temporary (302)","Tijdelijk (302)" -"Terms and Conditions","Voorwaarden" -"Text","Tekst" -"The Catalog Rewrites were refreshed.","De Catalogus Rewrites zijn ververst." -"The CatalogInventory Stock Status has been rebuilt.","De Catalogus Inventaris Voorraad Status is herbouwd." -"The Comment Text field cannot be empty.","U kunt het Opmerking Tekstveld niet leeglaten." -"The Flat Catalog Product was rebuilt","Het Flat Catalogus Product is verbouwd." -"The JavaScript/CSS cache has been cleaned.","De JavaScript/CSS opslagplaats is opgeschoond." -"The JavaScript/CSS cache has been cleared.","De JavaScript/CSS opslagplaats is opgeruimd." -"The Layered Navigation indexing has been queued.","De Layered Navigation indexering staat in de wachtrij." -"The Layered Navigation indexing queue has been canceled.","De Layered Navigation indexering wachtrij is geannuleerd." -"The Layered Navigation indices were refreshed.","De Layered Navigatie indexen zijn verversd." -"The Layered Navigation process has been queued to be killed.","Het Layered Navigation proces staat in de wachtrij." -"The Magento cache storage has been flushed.","De Magento cache opslag is gespoeld." -"The URL Rewrite has been deleted.","De URL Rewrite is verwijderd." -"The URL Rewrite has been saved.","De URL Rewrite is opgeslagen." -"The account has been saved.","De account is bewaard." -"The archive can be uncompressed with %s on Windows systems","Het archief kan worden uitgepakt met %s op Windows systemen" -"The attribute set has been removed.","De attribuutset is verwijderd." -"The backup's creation process will take time.","Het maken van een back-up zal tijd innemen." -"The billing agreement has been canceled.","De betalingsovereenkomst is geannuleerd." -"The billing agreement has been deleted.","De betaalovereenkomst is verwijderd." -"The cache storage has been flushed.","De cache opslag is gespoeld." -"The carrier needs to be specified.","De vervoerder moet gespecificeerd worden." -"The catalog index has been rebuilt.","De catalogusindex in herbouwd." -"The catalog rewrites have been refreshed.","De catalogus rewrites is verversd." -"The configuration has been saved.","De configuratie is opgeslagen." -"The credit memo has been canceled.","De kredietnota is geannuleerd." -"The credit memo has been created.","Het kredietgeheugen is gemaakt." -"The credit memo has been voided.","De kredietnota is vervallen." -"The custom variable has been deleted.","De standaard variabele is verwijderd." -"The custom variable has been saved.","De custom variabele is opgeslagen." -"The customer has been deleted.","De klant is verwijderd." -"The customer has been saved.","De klant is bewaard." -"The design change has been deleted.","De ontwerpverandering is verwijderd." -"The design change has been saved.","De ontwerpverandering is opgeslagen." -"The email address is empty.","Het email-adres is leeg." -"The email template has been deleted.","De email-template is verwijderd." -"The email template has been saved.","Het e-mailsjabloon is bewaard." -"The flat catalog category has been rebuilt.","De platte cataloguscategorie is herbouwd." -"The group node name must be specified with field node name.","De groepsnode naam moet gespecificeerd worden met een veldnode naam." -"The image cache was cleaned.","Het afbeeldingencache werd opgeschoond." -"The image cache was cleared.","De afbeeldingcache is geschoond." -"The invoice and shipment have been created.","De factuur en verzending zijn aangemaakt." -"The invoice and the shipment have been created. The shipping label cannot be created at the moment.","De factuur en de verzending is gemaakt. De verzendlavel kan nu niet worden gemaakt." -"The invoice has been canceled.","De factuur is geannuleerd." -"The invoice has been captured.","De factuur is berekend." -"The invoice has been created.","De rekening is gemaakt." -"The invoice has been voided.","De factuur is nietig verklaard." -"The invoice no longer exists.","De factuur bestaat niet meer." -"The item %s (SKU %s) does not exist in the catalog anymore.","Het product %s (SKU %s) bestaat niet meer in de catalogus." -"The order does not allow creating an invoice.","De bestelling staat het maken van een factuur niet toe." -"The order no longer exists.","De bestelling bestaat niet meer." -"The profile has been deleted.","Het profiel is verwijderd." -"The profile has been saved.","Het profiel is opgeslagen." -"The profile has been updated.","Het profiel is geüpdatet." -"The profile has no changes.","Het profiel bevat geen wijzigingen." -"The profile you are trying to save no longer exists","Het profiel dat u probeert op te slaan bestaat niet meer" -"The rating has been deleted.","De waardering is verwijderd." -"The rating has been saved.","De waardering is opgeslagen." -"The role has been deleted.","De rol is verwijderd." -"The role has been saved.","De rol is bewaard." -"The role has been successfully saved.","De rol is opgeslagen." -"The search index has been rebuilt.","De zoekindex is opnieuw samengesteld." -"The shipment has been created.","De verzending is aangemaakt." -"The shipment has been sent.","De bestelling is verzonden." -"The shipping label has been created.","Het verzendingslabel is aangemaakt." -"The transaction details have been updated.","De transactiegegevens zijn bijgewerkt." -"The user has been deleted.","De gebruiker is verwijderd." -"The user has been saved.","De gebruiker is opgeslagen." -"Themes JavaScript and CSS files combined to one file.","Thema's JavaScript en CSS bestanden gecombineerd tot een bestand." -"There is an error in one of the option rows.","Er is een fout in één van de optie rijen." -"This Account is","Dit account is" -"This Email template no longer exists.","Deze e-mailsjabloon bestaat niet langer." -"This Role no longer exists","Deze rol bestaat niet meer" -"This Role no longer exists.","Deze rol bestaat niet meer." -"This account is","Dit account is" -"This account is inactive.","Dit account is niet actief." -"This action cannot be undone.","Deze actie kan niet ongedaan worden gemaakt." -"This attribute set does not have attributes which we can use for configurable product","Deze attributenset heeft geen attributen die we voor een configureerbaar product kunnen gebruiken" -"This attribute shares the same value in all the stores","Dit attribuut deelt dezelfde waarde in alle winkels" -"This is a demo store. Any orders placed through this store will not be honored or fulfilled.","Dit is een demo winkel. Geplaatste bestellingen bij deze winkel worden niet gehonoreerd of uitgevoerd." -"This is a required field.","Dit is een verplicht veld." -"This product is currently disabled.","Dit product is momenteel niet aanwezig." -"This report depends on timezone configuration. Once timezone is changed, the lifetime statistics need to be refreshed.","Dit rapport hangt af van tijdzone configuratie. Zodra tijdzone is veranderd, moeten de lifetime statistieken verversd worden." -"This section is not allowed.","Deze sectie is niet toegestaan." -"This user no longer exists.","De gebruiker bestaat niet langer meer." -"Time","Tijd" -"Time selection:","Tijdselectie:" -"Time:","Tijd:" -"Timeout limit for response from synchronize process was reached.","Timeout limiet voor respons van synchroniseerproces is bereikt." -"To","Naar" -"To cancel pending authorizations and release amounts that have already been processed during this payment, click Cancel.","Om wachtende autorisaties te annuleren en bedragen vrij te geven die tijdens deze betaling zijn verwerkt, druk op Annuleer." -"To use PayPal Payflow Link you must configure some settings in your Payflow account by logging into","Om Payflow Link te kunnen gebruiken, dient u een Payflow Link account te configureren op de website van PayPal." -"To use PayPal Payments Advanced you must configure some settings in your PayPal Payments Advanced account by logging into","Om Paypal Payments Advanced te gebruiken moet u eerst een aantal instellingen in uw Paypal Payments Advanced rekening configureren door in te loggen op" -"Toggle Editor","Toggle Editor" -"Tools","Gereedschap" -"Top 5 Search Terms","Top 5 Zoektermen" -"Total","Totaal" -"Total Invoiced","Totaal gefactureerd" -"Total","Totale Bestellingshoeveelheid" -"Total Refunded","Totaal Terugbetaald" -"Total of %d record(s) have been deleted.","Er zijn in totaal %d dossier(s) verwijderd" -"Total of %d record(s) have been updated.","Er zijn in totaal %d dossier(s) bijgewerkt" -"Total of %d record(s) were canceled.","Totaal van %d record(s) zijn geannuleerd." -"Total of %d record(s) were deleted","Totaal van %d verslag(en) zijn gewist" -"Total of %d record(s) were deleted.","Totaal van %d verslag(en) zijn gewist." -"Total of %d record(s) were updated","Totaal van %d verslag(en) zijn bijgewerkt" -"Total of %d record(s) were updated.","Totaal van %d verslag(en) zijn bijgewerkt." -"Track Order","Volg Order" -"Track this shipment","Track deze verzending" -"Tracking number %s for %s assigned","Volgnummer %s voor %s toegewezen" -"Tracking number cannot be empty.","Volgnummer kan niet leeg zijn." -"Transaction Data","Transactie Data" -"Transaction Details","Transactie Details" -"Transaction ID","Transactie ID" -"Transaction Type","Transactie Type" -"Transactional Emails","Transactionele Emails" -"Transactions","Transacties" -"Type","Type" -"Type:","Type:" -"URL Rewrite","URL Herschrijving" -"URL Rewrite Information","URL Herschrijf Informatie" -"URL Rewrite Management","URL Herschrijf Management" -"Unable to cancel the credit memo.","Niet mogelijk om creditnota te annuleren." -"Unable to find a Email Template to delete.","Kan geen Email-Template vinden om te verwijderen." -"Unable to find a user to delete.","Kan geen gebruiker vinden om te verwijderen." -"Unable to initialize import model","Kan importmodel niet initialiseren" -"Unable to refresh lifetime statistics.","Kan levensduur statistieken niet vernieuwen." -"Unable to refresh recent statistics.","Kan recente statistieken niet vernieuwen." -"Unable to save Cron expression","Niet instaat om Cron expressie op te slaan" -"Unable to save the cron expression.","Kan de cron uitdrukking niet opslaan." -"Unable to save the invoice.","Niet instaat om factuur op te slaan." -"Unable to send the invoice email.","Kan geen factuur email sturen." -"Unable to send the shipment email.","Niet instaat om verzending e-mail te versturen." -"Unable to update transaction details.","Onmogelijk om transactie details te updaten." -"Unable to void the credit memo.","Niet instaat om creditnota te vernietigen." -"Unknown","Onbekend" -"Unlimited","Onbeperkt" -"Update","Update" -"Updated At","Geüpdate At" -"Upload File","Bestand uploaden" -"Upload Files","Upload Bestanden" -"Upload HTTP Error","Upload HTTP Fout" -"Upload I/O Error","Upload I/O Fout" -"Upload Security Error","Upload Beveiligingsfout" -"Upload import file","Upload belangrijk bestand" -"Uploaded file is larger than %.2f kilobytes allowed by server","Het geüploade bestand is groter dan de %.2f kilobytes die de server toestaat" -"Use All Available Attributes","Gebruik Alle Beschikbare Attributen" -"Use Config Settings","Gebruik Configuratiesettings" -"Use Default","Gebruik Standaard" -"Use Default Value","Standaardwaarde gebruiken" -"Use Default Variable Values","Gebruik Standaard Variabele Waarden" -"Use FTP Connection","Gebruik FTP Connectie" -"Use Website","Gebruik Website" -"Used Currently For","Momenteel Gebruikt Voor" -"Used as Default For","Standaard Gebruikt Voor" -"User Email","Email van Gebruiker" -"User ID","Gebruikers ID" -"User Info","Gebuikersinformatie" -"User Information","Gebruikersinformatie" -"User Name","Gebruikersnaam" -"User Name is required field.","Gebruikersnaam is verplicht veld." -"User Name:","Gebruikersnaam:" -"User Password","Gebruikerswachtwoord" -"User Role","Rol van gebruiker" -"User Roles","Rollen van gebruiker" -"User Roles Information","Gebruiker Rol Informatie" -"User name","Gebruikersnaam" -"Users","Gebruikers" -"VAT Number is Invalid","Btw-nummer is ongeldig." -"VAT Number is Valid","Btw-nummer is geldig." -"Validation Results","Validatie Resultaten" -"Value","Waarde" -"Value Delimiter:","Waarde scheidingsteken:" -"Variable","Variabele" -"Variable Code","Variabele Code" -"Variable HTML Value","Variabele HTML Waarde" -"Variable ID","Variabele ID" -"Variable Name","Naam variabele" -"Variable Plain Value","Variabele Basis Waarde" -"View Actions XML","Zie Acties XML" -"View Full Size","Zie Volledig Formaat" -"View Memo","Zie Memo" -"View Memo for #%s","Bekijk memo voor #%s" -"View Shipment","Bekijk verzending:" -"View Statistics For:","Bekijk Statistieken voor:" -"Visibility:","Zichtbaarheid:" -"Warning","Waarschuwing" -"Warning! Empty value can cause problems with CSV format.","Waarschuwing! Lege waarde kan problemen veroorzaken met CSV format." -"Warning!\r\nThis action will remove this user from already assigned role\r\nAre you sure?","Waarschuwing! Deze actie verwijdert deze gebruiker van de al bestaande rol. Weet u het zeker?" -"Warning!\r\nThis action will remove those users from already assigned roles\r\nAre you sure?","Waarschuwing! Deze actie zal de gebruikers verwijderen die al zijn toegewezen. Weet u het zeker?" -"Warning: Please do not close the window during importing/exporting data","Waarschuwing: Sluit dit venster niet tijdens het im-/exporteren van data" -"Watermark File for %s","Watermerk Bestand voor %s" -"We appreciate our merchants\' feedback, please take our survey to provide insight on the features you would like included in Magento. Remove this notification","Wij waarderen feedback van onze handelaars, doe a.u.b. ons onderzoek om ons inzicht te verschaffen in de functies die u graag in Magento zou willen zien. Verwijder deze notitie" -"We\'re in our typing table, coding away more features for Magento. Thank you for your patience.","Wij zijn druk aan het werk, bezig met het schrijven van nieuwe functies van Magento. Bedankt voor uw geduld." -"Web Section","Web Sectie" -"Web Services","Web Diensten" -"Web services","Web diensten" -"Website","Website" -"What is this?","Wat is dit?" -"Wishlist Report","Wishlist Rapport" -"Wishlist item is not loaded.","Verlanglijst product is niet geladen." -"Wrong account specified.","Foute rekening gespecificeerd." -"Wrong billing agreement ID specified.","Verkeerde betalingsovereenkomst ID gespecificeerd." -"Wrong column format.","Verkeerd kolomformaat." -"Wrong newsletter template.","Verkeerde nieuwsbrief sjabloon." -"Wrong quote item.","Verkeerde quote item." -"Wrong tab configuration.","Verkeerde tab configuratie." -"Wrong transaction ID specified.","Verkeerde transactie ID gespecificeerd." -"XML","XML" -"XML data is invalid.","XML data is ongeldig." -"XML object is not instance of ""Magento\Simplexml\Element"".","XML object is geen voorbeeld van ""Magento\Simplexml\Element""." -"YTD","YTD" -"Year","Jaar" -"Yes","Ja" -"Yes (301 Moved Permanently)","Ja (301 Permanent Verplaatst)" -"Yes (302 Found)","Ja (302 Gevonden)" -"Yes (only price with tax)","Ja (alleen prijs met belasting)" -"You cannot delete your own account.","U kunt uw eigen account niet verwijderen." -"You have %s unread message(s).","U heeft %s ongelezen boodschap(pen)." -"You have %s unread message(s). Go to messages inbox.","U heeft %s ongelezen bericht(en). Ga naar berichten inbox." -"You have %s, %s and %s unread messages. Go to messages inbox.","U heeft %s, %s en %s ongelezen berichten. Ga naar berichten inbox." -"You have logged out.","U bent uitgelogd." -"You have not enough permissions to use this functionality.","U heeft niet genoeg toegang om deze functie te gebruiken." -"You must have JavaScript enabled in your browser to utilize the functionality of this website.","U moet JavaScript in uw browser hebben ingeschakeld om de functionaliteit van de website te gebruiken." -"You need to specify order items.","U moet order artikelen specificeren." -"You will need to wait when the action ends.","U zult moeten wachten wanneer de actie voltooid is." -"Your answers contain duplicates.","Uw antwoorden bevatten duplicaten." -"Your password has been updated.","Uw wachtwoord is geupdate." -"Your password reset link has expired.","Uw wachtwoord herstel link is verlopen." -"Your server PHP settings allow you to upload files not more than %s at a time. Please modify post_max_size (currently is %s) and upload_max_filesize (currently is %s) values in php.ini if you want to upload larger files.","Uw server PHP settings staan uploadbestanden toe die niet groter zijn dan %s per keer. Pas de post_max_size (is nu %s) en upload_max_filesize (is nu %s) waarden in php.ini aan als u grotere bestanden wilt uploaden." -"Your web server is configured incorrectly. As a result, configuration files with sensitive information are accessible from the outside. Please contact your hosting provider.","Uw webserver is verkeerd geconfigureerd. Daarom zijn geconfigureerde bestanden met gevoelige informatie toegankelijk voor de buitenwereld. Neem contact op met uw provider." -"Zip/Postal Code","Zip/Postcode" -"Zip/Postal Code:","Postcode:" -"[ deleted ]","[ verwijderd ]" -"[GLOBAL]","[GLOBAAL]" -"[STORE VIEW]","[WINKEL OVERZICHT]" -"[WEBSITE]","[WEBSITE]" -"b","b" -"close","sluit" -"critical","kritiek" -"example: ""sitemap/"" or ""/"" for base path (path must be writeable)","voorbeeld: ""sitemap/"" of ""/"" voor basispad (pad moet beschrijfbaar zijn)" -"example: sitemap.xml","voorbeeld: sitmap.xml" -"failed","mislukt" -"from","van" -"major","groot" -"minor","klein" -"notice","merk op" -"store(%s) scope","winkel(%s) omvang" -"successful","succesvol" -"to","naar" -"website(%s) scope","website(%s) omvang" -"{{base_url}} is not recommended to use in a production environment to declare the Base Unsecure URL / Base Secure URL. It is highly recommended to change this value in your Magento configuration.","Het is niet aanbevolen {{base_url}} te gebruiken in een productieomgeving Base Unsecure URL / Base Secure URL aan te geven. Het is zeer aanbevolen deze waarde in uw magento configuratiete veranderen." diff --git a/app/code/Magento/Adminhtml/i18n/pt_BR.csv b/app/code/Magento/Adminhtml/i18n/pt_BR.csv deleted file mode 100644 index 35173c1d8e309..0000000000000 --- a/app/code/Magento/Adminhtml/i18n/pt_BR.csv +++ /dev/null @@ -1,1144 +0,0 @@ -" The customer does not exist in the system anymore.","O cliente não existe mais no sistema." -" You will need to navigate to your ","Você precisará navegar para seu" -" [deleted]"," [suprimido]" -" and "," e " -" and go to the "," e ir para as " -" sections for your Hosted Checkout Pages."," seções para as suas Páginas de Checkout Hospedadas" -"%s (Default Template from Locale)","%s (Modelo Padrão de Locale)" -"%s cache type(s) disabled.","%s tipo(s) cache com deficiência." -"%s cache type(s) enabled.","%s tipo(s) cache habilitado." -"%s cache type(s) refreshed.","%s tipo(s) cache atualizado." -"(For Type ""Local Server"" need to use relative path to Magento install var/export or var/import, e.g. var/export, var/import, var/export/some/dir, var/import/some/dir)","(Para Tipo ""Servidor Local"" necessário utilizar caminho relativo para instalar Magento var/export ou var/import, por exemplo var/export, var/import, var/export/some/dir, var/import/some/dir)" -"(For US 2-letter state names)","(Para EUA nomes de 2 letras de estados)" -"(If left empty will be auto-generated)","(Se deixado vazio será gerado automaticamente)" -"(Leave empty for first spreadsheet)","(Deixe em branco para primeira folha de cálculo)" -"(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)","(Os produtos serão adicionados/atualizados a esta loja, se a coluna 'loja' estiver em branco ou ausente no arquivo de importação.)" -"(Shift-)Click or drag to change value","(Shift-)Clique ou arraste para mudar o valor" -"(Starting with)","(Começando com)" -"(When 'No', only mapped fields will be imported. When mapping, use 'column1', 'column2', etc.)","(Quando 'Não', apenas campos mapeados serão importados. Quando mapeando, use 'coluna1', 'coluna2', etc.)" -"(You have to increase php memory_limit before changing this value)","(Você tem que aumentar o memory_limit php antes de alterar este valor)" -"(\\t for tab)","(\\t para tabulação)" -"* - If indexing is in progress, it will be killed and new indexing process will start.","* - Se a indexação está em andamento, será morta e novo processo de indexação vai começar." -"- Click on any of the time parts to increase it","- Clique em qualquer uma das partes da hora para a aumentar" -"- Hold mouse button on any of the above buttons for faster selection.","- Segure o botão do rato sobre qualquer um dos botões acima para selecionar rapidamente." -"- Use the %s buttons to select month","- Use os botões %s para selecionar o mês" -"- Use the %s, %s buttons to select year","- Use os botões %s, %s para selecionar o ano" -"- or Shift-click to decrease it","- Ou clique-Shift para diminuir" -"- or click and drag for faster selection.","- ou clique e arraste para uma seleção mais rápida." -"-- Not Selected --","-- Não selecionado --" -"-- Please Select --","- Por Favor Selecione -" -"-- Please Select Billing Agreement--","-- Por Favor, Escolha o Acordo de Cobrança--" -"-- Please Select a Category --","-- Por Favor, Escolha uma Categoria --" -"-- Please select --","-- Selecione --" -"--Please Select--","--Por Favor, Escolha--" -"1 Hour","1 Hora" -"1. set up","1. configurar" -"12 Hours","12 Horas" -"12h AM/PM","12h/00h" -"2 Hours","2 Horas" -"2. customize","2. personalizar" -"24 Hours","24 Horas" -"24h","24h" -"2YTD","2YTD" -"6 Hours","6 Horas" -"

404 Error

Page not found.

","

Erro 404

Página não encontrada.

" -"Attention: Captcha is case sensitive.","Attention: Captcha diferencia maiúsculas e minúsculas." -"A user with the same user name or email aleady exists.","Já existe um usuário com o mesmo nome ou e-mail." -"API Key","Chave API" -"API Key Confirmation","Confirmação de Chave API" -"ASCII","ASCII" -"Abandoned Carts","Carrinhos de Compras Abandonados" -"About the calendar","Sobre o calendário" -"Access Denied","Acesso negado" -"Access denied","Acesso negado" -"Access denied.","Acesso negado." -"Account Created in:","Conta criada em:" -"Account Created on (%s):","Conta criada em (%s):" -"Account Created on:","Conta criada em:" -"Account Information","Informações da Conta" -"Account Status","Status da conta" -"Account status","Status da conta" -"Action","Ação" -"Actions","Ações" -"Actions XML","Ações XML" -"Active","Ativo" -"Add","Adicionar" -"Add \Exception","Adicionar exceção" -"Add Field Mapping","Adicionar mapeamento de campo" -"Add Field with URL:","Adicionar campo com o URL:" -"Add New","Adicione Novo" -"Add New Image","Adicionar nova imagem" -"Add New Profile","Adicionar novo perfil" -"Add New Role","Adicionar nova função" -"Add New Template","Adicionar novo modelo" -"Add New URL Rewrite","Adicionar Novo Rewrite de URL" -"Add New User","Adicionar Novo Usuário" -"Add New Variable","Adicionar Nova Variável" -"Add Products","Adicionar produtos" -"Add URL Rewrite","Adicionar Rewrite de URL" -"Add URL Rewrite for a Category","Adicionar Rewrite de URL para uma Categoria" -"Add URL Rewrite for a Product","Adicionar Rewrite de URL para um Produto" -"Add after","Adicionar depois" -"Additional Cache Management","Gerenciamento de Cache Adicional" -"Address Type:","Tipo de Endereço:" -"Admin","Admin" -"Advanced Admin Section","Seção de Administrador Avançado" -"Advanced Profiles","Perfis Avançados" -"Advanced Section","Seção Avançada" -"All","Todos" -"All Allowed Countries","Todos os Países Permitidos" -"All Cache","Todo o Cache" -"All Files","Todos os Arquivos" -"All Reviews","Todas as Revisões" -"All Store Views","Todas as Visualizações da Loja" -"All Websites","Todos os sites" -"All countries","Todos os países" -"All fields","Todos os campos" -"All possible rates were fetched, please click on ""Save"" to apply","Todas as tarifas possíveis foram obtidas, por favor clique em ""Salvar"" para aplicar" -"All rates were fetched, please click on ""Save"" to apply","Todas as tarifas foram obtidas, por favor clique em ""Salvar"" para aplicar" -"All valid rates have been saved.","Todas as tarifas válidas foram salvas." -"Always (during development)","Sempre (durante desenvolvimento)" -"Amounts","Quantidades" -"An error has occurred while syncronizing media storages.","Ocorreu um erro enquanto sincronizando armazenamentos de mídia." -"An error occurred while clearing the JavaScript/CSS cache.","Ocorreu um erro ao limpar a cache JavaScript/CSS." -"An error occurred while clearing the image cache.","Ocorreu um erro ao limpar a cache de imagem." -"An error occurred while deleting URL Rewrite.","Ocorreu um erro ao excluir URL Escreva novamente" -"An error occurred while deleting email template data. Please review log and try again.","Ocorreu um erro durante a exclusão de dados modelo de e-mail. Por favor analise o registro e tente novamente." -"An error occurred while deleting record(s).","Ocorreu um erro ao excluir registro(s)." -"An error occurred while deleting this role.","Ocorreu um erro ao excluir este papel." -"An error occurred while deleting this set.","Ocorreu um erro ao excluir este conjunto." -"An error occurred while deleting this template.","Ocorreu um erro ao excluir este modelo." -"An error occurred while finishing process. Please refresh the cache","Ocorreu um erro ao finalizar o processo. Por favor atualize a cache" -"An error occurred while rebuilding the CatalogInventory Stock Status.","Ocorreu um erro durante a reconstrução do Catálogo INventário do estado das unidades." -"An error occurred while rebuilding the catalog index.","Ocorreu um erro durante a reconstrução do índice do catálogo." -"An error occurred while rebuilding the flat catalog category.","Ocorreu um erro durante a reconstrução da categoria plana do catálogo." -"An error occurred while rebuilding the flat product catalog.","Ocorreu um erro durante a reconstrução do produto plano do catálogo." -"An error occurred while rebuilding the search index.","Ocorreu um erro durante a reconstrução do índice de pesquisa." -"An error occurred while refreshing the Catalog Rewrites.","Ocorreu um erro durante a atualização do Catálogo Rewrites." -"An error occurred while refreshing the Layered Navigation indices.","Ocorreu um erro durante a atualização dos índices de Navegação em Camadas." -"An error occurred while refreshing the catalog rewrites.","Ocorreu um erro durante a atualização dos reescritos do catálogo." -"An error occurred while refreshing the layered navigation indices.","Ocorreu um erro ao atualizar os índices de navegação em camadas." -"An error occurred while saving URL Rewrite.","Ocorreu um erro ao salvar URL Escreva novamente." -"An error occurred while saving account.","Ocorreu um erro ao salvar conta." -"An error occurred while saving review.","Ocorreu um erro ao salvar revisão." -"An error occurred while saving the customer.","Ocorreu um erro ao salvar o cliente." -"An error occurred while saving this configuration:","Ocorreu um erro ao salvar esta configuração:" -"An error occurred while saving this role.","Ocorreu um erro ao salvar este papel." -"An error occurred while saving this template.","Ocorreu um erro ao salvar este modelo." -"An error occurred while updating the selected review(s).","Ocorreu um erro durante a atualização da revisão selecionada." -"Any","Qualquer um" -"Any Attribute Set","Qualquer Conjunto de Atributos" -"Any Group","Qualquer Grupo" -"Any Status","Qualquer Estado" -"Any Store","Qualquer Loja" -"Any Type","Qualquer Tipo" -"Any Visibility","Qualquer Visibilidade" -"Any data created since the backup was made will be lost including admin users, customers and orders.","Qualquer dado criado desde a realização do backup será perdido, incluindo usuários admin, clientes e pedidos." -"Archive file name:","Nome do ficheiro de arquivo:" -"Are you sure that you want to delete this template?","Tem certeza de que deseja apagar este modelo?" -"Are you sure that you want to strip tags?","Tem certeza que você quer retirar tags?" -"Are you sure you want to do this?","Tem certeza de que quer fazer isso?" -"Are you sure you want to proceed?","Você tem certeza que deseja continuar?" -"Area","Área" -"As low as:","A partir de:" -"Assigned","Atribuído" -"Attribute Set Name:","Atribuir Nome de Conjunto:" -"Attributes","Atributos" -"Automatic","Automático" -"Average","Total do pedido médio" -"Average Orders","Pedido médio" -"BINARY","BINÁRIO" -"Back","Voltar" -"Back to Login","Voltar à Entrada" -"Backup","Backup" -"Backup Name","Nome do Backup" -"Backup options","Opções de backup" -"Backups","Cópias de segurança" -"Base currency","Moeda base" -"Bcc","CCO" -"Bestsellers","Mais vendidos" -"Billing Address","Endereço de faturamento" -"Billing Address: ","Endereço de faturamento:" -"Billing Agreement","Contrato de faturamento" -"Billing Agreements","Contratos de faturamento" -"Block Information","Informações de bloco" -"Both (without and with tax)","Ambos (com e sem impostos)" -"Both IPN and PDT","IPN e PDT" -"Browse Files...","Pesquisar arquivos..." -"Bundle with dynamic pricing cannot include custom defined options. Options will not be saved.","O pacote com preço dinâmico não pode incluir opções personalizadas definidas. As opções não serão salvas." -"CMS","SGC" -"CRITICAL","CRÍTICO" -"CSV","CSV" -"CSV / Tab separated","CSV / Tab separados" -"Cache Control","Controle de Cache" -"Cache Control (beta)","Controle de Cache (beta)" -"Cache Management","Gerenciamento de Cache" -"Cache Type","Tipo de Cache" -"Cancel","Cancelar" -"Cannot add new comment.","Não é possível adicionar um novo comentário." -"Cannot add tracking number.","Não é possível adicionar número de rastreamento." -"Cannot create an invoice without products.","Não é possível criar uma fatura sem produtos." -"Cannot create credit memo for the order.","Não é possível criar uma nota de crédito para a ordem." -"Cannot delete the design change.","Não é possível apagar a mudança de desenho." -"Cannot delete tracking number.","Não é possível apagar o número de rastreamento." -"Cannot do shipment for the order separately from invoice.","Não é possível fazer envio para a ordem separadamente da fatura." -"Cannot do shipment for the order.","Não é possível fazer envio para a ordem." -"Cannot initialize shipment for adding tracking number.","Não é possível inicializar envio para adicionar número de rastreamento." -"Cannot initialize shipment for delete tracking number.","Não é possível inicializar envio para apagar número de rastreamento." -"Cannot load track with retrieving identifier.","Não é possível carregar pista com identificador de recuperação." -"Cannot retrieve tracking number detail.","Não é possível recuperar detalhes do número de rastreamento." -"Cannot save shipment.","Não é possível salvar envio." -"Cannot save the credit memo.","Não é possível salvar a nota de crédito." -"Cannot send shipment information.","Não é possível enviar informações de envio." -"Cannot update item quantity.","Não é possível atualizar a quantidade do item." -"Cannot update the item\'s quantity.","Não é possível atualizar a quantidade do item." -"Catalog","Catálogo" -"Catalog Price Rules","Regras de Preço do Catálogo" -"Catalog Rewrites","Reescrituras de Catálogo" -"Categories","Categorias" -"Category:","Categoria:" -"Chart is disabled. If you want to enable chart, click here.","A opção Tabela está desativada. Para ativá-la, clique aqui." -"Checkbox","Caixa de Seleção" -"Child Transactions","Transações Inferiores" -"Choose Store View:","Escolha a exibição de loja:" -"Choose an attribute","Escolha um atributo" -"Chosen category does not associated with any website, so url rewrite is not possible.","A categoria escolhida não está associada a nenhum website; não é possível, portanto, reescrever a url." -"Chosen product does not associated with any website, so url rewrite is not possible.","O produto escolhido não está associado a nenhum website; não é possível, portanto, reescrever a url." -"Clear","Limpar" -"Close","Fechar" -"Comment text field cannot be empty.","O campo de texto Comentário não pode ser deixado em branco." -"Complete","Completar" -"Configuration","Configuração" -"Confirm New Password","Confirmar a nova senha" -"Confirmed email:","E-mail confirmado:" -"Connect with the Magento Community","Conecte-se com a Comunidade Magento" -"Continue","Continue" -"Continuous","Contínuo" -"Convert to Plain Text","Converter para Texto Simples" -"Cookie (unsafe)","Cookie (não seguro)" -"Country","País" -"Country:","País:" -"Coupons","Cupons" -"Create","Criar" -"Create DB Backup","Criar DB Backup" -"Create New Attribute","Criar Novo Atributo" -"Create URL Rewrite:","Criar Reescritura de URL:" -"Created At","Criada Em" -"Credit Card %s","Cartão de Crédito %s" -"Credit Memo History","Histórico de Notas de Crédito" -"Credit Memo Totals","Totais da Nota de Crédito" -"Credit Memos","Notas de Crédito" -"Credit memo #%s comment added","Comentário de nota de crédito #%s adicionado" -"Credit memo #%s created","Nota de crédito #%s criada" -"Credit memo\'s total must be positive.","O total da nota de crédito deve ser positivo." -"Currency","Moeda" -"Currency ""%s"" is used as %s in %s.","Moeda ""%s"" é usada como %s em %s." -"Currency Information","Informação de moeda" -"Currency Setup Section","Seção de Configuração de Moeda" -"Current Configuration Scope:","Escopo da Configuração Atual:" -"Current Month","Mês corrente" -"Custom","Personalizado" -"Custom Variable ""%s""","Variável Personalizada ""%s""" -"Custom Variables","Variáveis de Personalização." -"Customer","Cliente" -"Customer Group:","Grupo do Cliente:" -"Customer Groups","Grupos do cliente" -"Customer","Nome do Cliente" -"Customer Reviews","Resenhas de Cliente" -"Customer Shopping Carts","Carrinhos de Compras dos Clientes" -"Customer Since:","Cliente desde:" -"Customer Tax Classes","Classes de Taxa do Cliente" -"Customer with the same email already exists.","Já existe um cliente com o mesmo email." -"Customers","Clientes" -"Customers by Orders","Clientes por Número de Pedidos" -"Customers by Orders Total","Clientes por Total dos Pedidos" -"DHTML Date/Time Selector","Seletor de Data/Hora DHTML" -"Dashboard","Painel" -"Data Format","Formato dos Dados" -"Data transfer:","Transferência de Dados:" -"Database","Base de Dados" -"Date","Data" -"Date & Time","Data & Hora" -"Added","Data de Adição" -"Updated","Data de Atualização" -"Date selection:","Seleção de data:" -"Date selector","Seletor de data" -"Day","Dia" -"Decimal separator:","Separador decimal:" -"Default (Admin) Values","Valores (de Admin) Padrão" -"Default Billing Address","Endereço padrão de faturamento" -"Default Config","Config Padrão" -"Default Template from Locale","Modelo Padrão do Locale" -"Default Values","Valores padrão" -"Default display currency ""%s"" is not available in allowed currencies.","Moeda de exibição padrão ""%s"" não está disponível nas moedas permitidas." -"Default scope","Escopo padrão" -"Delete","Excluir" -"Delete %s","Apagar %s" -"Delete %s '%s'","Apagar %s '%s'" -"Delete File","Apagar Arquivo" -"Delete Image","Apagar Imagem" -"Delete Profile","Apagar Perfil" -"Delete Role","Apagar Papel" -"Delete Store","Apagar Loja" -"Delete Store View","Apagar Visão de Loja" -"Delete Template","Apagar Modelo" -"Delete User","Apagar Usuário" -"Delete Website","Apagar Site Web" -"Description","Descrição" -"Design","Design" -"Design Section","Seção de Design" -"Details","Detalhes" -"Developer Section","Seção de Desenvolvedor" -"Direction:","Direção:" -"Disable","Desativar" -"Disabled","Desativado" -"Display %s first","Mostrar primeiro %s" -"Display default currency","Mostrar moeda predifinida" -"Distributed under GNU LGPL. See %s for details.","Distribuído sob a GNU LGPL. Veja %s para detalhes." -"Do you really want to KILL parallel process and start new indexing process?","Você realmente quer MATAR o processo paralelo e iniciar um novo processo de indexação?" -"Do you really want to proceed?","Você realmente deseja continuar?" -"Download","Baixar" -"Downloads","Transferências" -"Drag to move","Arraste para mover" -"Drop-down","Suspenso" -"Edit","Editar" -"Edit Design Change","Editar alteração de design" -"Edit Email Template","Editar modelo de e-mail" -"Edit Order","Editar Ordem (Pedido)" -"Edit Queue","Editar fila" -"Edit Review","Editar análise" -"Edit Role","Editar funçõa" -"Edit Store View","Editar visualização de loja" -"Edit System Template","Editar modelo de sistema" -"Edit Template","Editar modelo" -"Edit URL Rewrite","Editar o novo URL" -"Edit User","Editar usuário" -"Edit User '%s'","Editar usuário ""%s""" -"Edit Website","Editar site" -"Email","E-mail" -"Email Address:","Endereço de e-mail:" -"Email Preview","Visualização por e-mail" -"Email to a Friend","Enviar por e-mail a um amigo" -"Email:","E-mail:" -"Enable","Ativar" -"Enabled","Ativado" -"Enclose Values In:","Anexar valores:" -"Entity Attributes","Atributos da entidade" -"Entity Type","Tipo de entidade" -"Entity type:","Tipo de entidade:" -"Error","Erro" -"Excel XML","Excel XML" -"Excl. Tax","Excluir taxas" -"Exclude media folder from backup","Excluir pasta mídia do backup" -"Export","Exportar" -"Export CSV","Exportar CSV" -"Export Filters","Exportar filtros" -"Export to:","Exportar para:" -"Export:","Exportar:" -"FTP Host","Host FTP" -"FTP Host[:Port]","FTP Anfitrião[:Porta] (FTP Host[:Port])" -"FTP Login","Login FTP" -"FTP Password","Senha FTP" -"FTP credentials","Credenciais FTP" -"Failed to add a product to cart by id ""%s"".","Falha ao adicionar um produto ao carrinho de id ""%s""." -"Failed to cancel the billing agreement.","Falha ao cancelar o contrato de faturamento." -"Failed to clear the JavaScript/CSS cache.","Falha ao limpar acache JavaScript/CSS." -"Failed to delete the billing agreement.","Falha ao apagar o acordo de faturamento." -"Failed to update the profile.","Falha ao atualizar o perfil." -"Field","Campo" -"Field Mapping","Mapeamento de campo" -"File","Arquivo" -"File Information","Informação do Arquivo" -"File System","Arquivo de Sistema" -"File mode","Modo de Arquivo" -"File name:","Nome do arquivo:" -"File size should be more than 0 bytes","Tamanho do arquivo deve ser superior a 0 bytes" -"Finished profile execution.","Execução de perfil terminada." -"First Invoice Created Date","Data de criação do primeiro invoice" -"First Name","Primeiro nome" -"First Name is required field.","Nome Próprio é um campo obrigatório." -"First Name:","Primeiro nome:" -"Fixed","Fixado" -"Flush Catalog Images Cache","Limpar cache de imagens do catálogo" -"Flush JavaScript/CSS Cache","Limpar cache de JavaScript/CSS" -"For category","Para categoria" -"For latest version visit: %s","Para última versão, visitar: %s" -"For product","Para produto" -"Forgot Admin Password","Esqueci a senha de administrador" -"Forgot your password?","Esqueceu sua senha?" -"Forgot your user name or password?","Esqueceu seu nome de usuário ou senha?" -"From","De" -"GLOBAL","GLOBAL" -"Gb","Gb" -"General Information","Informações gerais" -"General Section","Seção Geral" -"Get Image Base64","Obter Imagem Base64" -"Get help for this page","Receber ajuda para esta página" -"Global Attribute","Atributo Global" -"Global Record Search","Busca Global de Registros" -"Global Search","Busca Global" -"Go Today","Ir Hoje" -"Go to messages inbox","Ir para caixa de entrada" -"Go to notifications","Ir para notificações" -"Google Base","Google Base" -"Google Sitemaps","Sitemaps Google" -"Grand Total","Total geral" -"Grid (default) / List","Grade (padrão) / Lista" -"Grid Only","Somente Grade" -"Group:","Grupo:" -"Guest","Convidado" -"HTTP (unsecure)","HTTP (inseguro)" -"HTTPS (SSL)","HTTPS (SSL)" -"Help Us Keep Magento Healthy - Report All Bugs","Ajude-nos a manter a Magento em forma - Informe qualquer defeito" -"Helper attributes should not be used in custom layout updates.","Não se devem usar atributos da ajuda em atualizações personalizadas de layout." -"Helper for options rendering doesn't implement required interface.","A ajuda para processamento de opções não implementa a interface necessária." -"Home","Início" -"ID","Identidade" -"ID Path","Caminho de identificação" -"IP Address","Endereço de IP" -"IPN (Instant Payment Notification) Only","Somente NIP (Notificação Instantânea de Pagamento)" -"If there is an account associated with %s you will receive an email with a link to reset your password.","Se houver uma conta associada a %s você receberá um email com um link para reconfigurar a sua senha." -"If this message persists, please contact the store owner.","Se esta mensagem persistir, favor contatar dono da loja." -"Images (.gif, .jpg, .png)","Imagens (.gif, .jpg, .png)" -"Images Cache","Cache de Imagens" -"Import","Importar" -"Import Service","Serviço de Importação" -"Import and Export","Importação e Exportação" -"Import and Export Tax Rates","Alíquotas de Importação e Exportação" -"Import/Export","Importação/Exportação" -"Import/Export Advanced","Importação/Exportação Avançado" -"Import/Export Profile","Perfil de Importação/Exportação" -"Important: ","Importante:" -"Imported %s records","Registros %s importados" -"In","Em" -"In Database:","Na Base de Dados:" -"In File:","No Arquivo:" -"Inactive","Inativo" -"Incl. Tax","Incluir taxas" -"Incoming Message","Mensagem Nova" -"Insert Variable...","Inserir Variável..." -"Interactive","Interativo" -"Interface Locale: %s","Configuração Regional da Interface: %s" -"Invalid Form Key. Please refresh the page.","Chave de Formulário Inválida. Favor atualizar a página." -"Invalid Import Service Specified","Especificação Inválida de Serviço de Importação" -"Invalid POST data (please check post_max_size and upload_max_filesize settings in your php.ini file).","Dados inválidos POST (por favor verifique as configurações post_max_size e upload_max_filesize no seu arquivo php.ini)." -"Invalid Secret Key. Please refresh the page.","Chave secreta inválida. Atualize a página." -"Invalid User Name or Password.","Nome de Usuário ou Senha Inválido" -"Invalid directory: %s","Diretório inválido: %s" -"Invalid email address ""%s"".","Endereço de email inválido ""%s""." -"Invalid email address.","Endereço de e-mail inválido." -"Invalid file: %s","Arquivo inválido: %s" -"Invalid input data for %s => %s rate","Dados inválido de entrada para %s => taxa de %s" -"Invalid parent block for this block","Bloco pai inválido para este bloco" -"Invalid parent block for this block.","Bloco-pai inválido para este bloco." -"Invalid password reset token.","Senha inválida reconfigure vale." -"Invalid sender name ""%s"". Please use only visible characters and spaces.","Nome ""%s"" de remetente inválido. Por favor use apenas caracteres visíveis e espaços." -"Invalid timezone","Fuso horário inválido" -"Invalidated","Invalidado" -"Inventory Stock Status","Estado do Inventário de Estoque" -"Invoice #%s comment added","Comentário adicionado à fatura nº %s" -"Invoice #%s created","Fatura #%s criada" -"Invoice History","História da Fatura" -"Invoice Totals","Totais da Fatura" -"Invoice canceling error.","Erro de cancelamento da fatura." -"Invoice capturing error.","Erro ao registrar fatura." -"Invoice voiding error.","Erro ao anular fatura." -"Invoices","Faturas" -"Is Closed","Está Fechado" -"Issue Number","Número de Emissão" -"Items","Itens" -"JavaScript seems to be disabled in your browser.","O JavaScript parece estar desativado no seu navegador." -"JavaScript/CSS","JavaScript/CSS" -"JavaScript/CSS Cache","Cache JavaScript/CSS" -"Kb","Kb" -"Last 24 Hours","Últimas 24 Horas" -"Last 5 Orders","Últimos 5 Pedidos" -"Last 5 Search Terms","Últimos 5 Termos de Pesquisa" -"Last 7 Days","Últimos 7 Dias" -"Last Credit Memo Created Date","Data de Criação do Último Memorando de Crédito" -"Last Invoice Created Date","Data da Última Fatura Criada" -"Last Logged In (%s):","Último Login Em (%s):" -"Last Logged In:","Último Acesso:" -"Last Name","Último nome" -"Last Name is required field.","Sobrenome é um campo obrigatório." -"Last Name:","Último nome:" -"Last updated: %s. To refresh last day\'s statistics, click here.","Última actualização: %s. Para atualizar as estatísticas dos últimos dias, clique aqui." -"Latest Message:","Última Mensagem:" -"Layered Navigation Indices","Índices de Navegação por Camadas" -"Layered Navigation Indices were refreshed.","Índices de Navegação por Camadas foram atualizados." -"Leave empty to use tax identifier","Deixe em branco para usar identificador de impostos" -"Lifetime Sales","Vendas de Vida Inteira" -"Lifetime statistics have been updated.","Estatísticas de vida inteira foram atualizadas" -"Links","Ligações" -"Links with associated products will retain only after saving current product.","Ligações com produtos associados reterão apenas depois de salvar produto atual." -"List (default) / Grid","Lista (padrão) / Rede" -"List Only","Apenas Lista" -"Load Template","Carregar Modelo" -"Load default template","Carregar modelo predifinido" -"Loading...","Carregando..." -"Local Server","Servidor Local" -"Local/Remote Server","Servidor Local/Remoto" -"Locale","Locale" -"Log Out","Sair" -"Log in to Admin Panel","Entrar no Painel de Administração" -"Log into Magento Admin Page","Entrar na Página de Administração Magento" -"Logged in as %s","Conetado como %s" -"Login","Conectar-se" -"Low Stock","Baixo Estoque" -"MAJOR","PRINCIPAL" -"MINOR","MENOR" -"MS Excel XML","MS Excel XML" -"Magento Admin","Administração Magento" -"Magento Commerce - Administrative Panel","Comércio Magento - Painel Administrativo" -"Magento Connect","Conexão Magento" -"Magento Connect Manager","Gerenciador de Conexão Magento" -"Magento Logo","Logo Magento" -"Magento is a trademark of X.commerce, Inc. Copyright © %s X.commerce, Inc.","Magento é uma marca comercial da X.commerce, Inc.© Direitos Autorais©, %s X.commerce, Inc." -"Magento root directory","Diretório raiz Magento" -"Magento ver. %s","Ver. %s Magento" -"Magento® is a trademark of X.commerce, Inc.
Copyright © %s X.commerce, Inc.","Magento® é uma marca comercial da X.commerce, Inc.
Copyright © %s X.commerce, Inc." -"Make sure that data encoding in the file is consistent and saved in one of supported encodings (UTF-8 or ANSI).","Certifique-se que a codificação de dados no arquivo é consistente e salva em uma das codificações suportadas (UTF-8 ou ANSI)." -"Manage Attribute Sets","Gerenciar Conjuntos de Atributos" -"Manage Attributes","Gerenciar Atributos" -"Manage Categories","Gerenciar Categorias" -"Manage Content","Gerenciar conteúdo" -"Manage Currency Rates","Gerenciar Taxas de Câmbio" -"Manage Customers","Gerenciar clientes" -"Manage Ratings","Gerenciar Classificações" -"Manage Stores","Gerenciar Lojas" -"Manage Tax Rules","Gerenciar Regras de Imposto" -"Manage Tax Zones and Rates","Gerenciar Zonas de Imposto e Taxas" -"Manual","Manual" -"Matched Expression","Expressão Combinada" -"Mb","Mb" -"Media (.avi, .flv, .swf)","Mídias (.avi, .flv, .swf)" -"Media storages synchronization has completed!","Concluída a sincronização dos armazenamentos de mídias!" -"Messages Inbox","Caixa de Entrada de Mensagens" -"Month","Mês" -"Most Viewed","Mais vistos" -"Most Viewed Products","Produtos Mais Vistos" -"Multiple Select","Múltipla escolha" -"My Account","Minha Conta" -"N/A","Indisponível" -"NOTICE","AVISO" -"Name","Nome" -"Name:","Nome:" -"Never (production)","Nunca (produção)" -"New ","Novo" -"New API Key","Nova Chave API" -"New Accounts","Novas Contas" -"New Attribute","Novo atributo" -"New Block","Novo Bloco" -"New Category","Nova Categoria" -"New Class","Nova Classe" -"New Condition","Nova Condição" -"New Custom Variable","Nova Variável Personalizada" -"New Customer","Novo Cliente" -"New Customers","Novos clientes" -"New Design Change","Nova Alteração de Design" -"New Email Template","Novo Modelo de Email" -"New Group","Novo Grupo" -"New Invoice","Nova Fatura" -"New Item Type","Novo Tipo de Item" -"New Memo","Nova Nota" -"New Memo for #%s","Nova Nota para #%s" -"New Page","Nova página" -"New Password","Nova senha" -"New Profile","Novo Perfil" -"New Rate","Nova Taxa" -"New Rating","Nova avaliação" -"New Review","Nova Resenha" -"New Role","Nova Função" -"New Rule","Nova Regra" -"New Search","Nova Busca" -"New Set","Novo Conjunto" -"New Shipment","Nova Remessa" -"New Sitemap","Novo Sitemap" -"New Store View","Nova Visualização de Loja" -"New System Template","Novo Modelo de Sistema" -"New Template","Novo Modelo" -"New User","Novo Usuário" -"New Variable","Nova Variável" -"New Website","Novo Website" -"New password field cannot be empty.","O campo de preenchimento de nova senha não pode ser deixado em branco." -"Newsletter","Newsletter" -"Newsletter Problems","Problemas com Newsletter" -"Newsletter Queue","Fila do Boletim Informativo" -"Newsletter Subscribers","Assinantes do Boletim Informativo" -"Newsletter Templates","Modelos de Boletim Informativo" -"Next month (hold for menu)","Próximo mês (segurar para menu)" -"Next year (hold for menu)","Próximo ano (segurar para menu)" -"No","Não" -"No (price without tax)","Não (preço sem imposto)" -"No Data","Nenhum Dado" -"No Data Found","Nenhum Dado Encontrado" -"No Templates Found","Nenhum Modelo Encontrado" -"No change","Sem alterações" -"No customer id defined.","Não definida uma identificação de cliente." -"No information available.","Nenhuma informação disponível" -"No profile loaded...","Nenhum perfil carregado..." -"No records found for this period.","Nenhum registro encontrado para este período." -"No records found.","Nenhum registro encontrado." -"No report code specified.","Nenhum código de relatório especificado." -"No search keywords.","Nenhuma palavra-chave de busca." -"No search modules were registered","Não foram registrados módulos de busca." -"No wishlist item id defined.","Não foi definido item de lista de desejos." -"None","Nenhum" -"Note:","Observação:" -"Notes","Observações" -"Notifications","Notificações" -"Orders","Número de pedidos" -"Uses","Número de Usuários" -"Views","Número de Visualizações" -"Number of records:","Número de registros:" -"OK","OK" -"Old rate:","Valor antigo:" -"One or more media files failed to be synchronized during the media storages syncronization process. Refer to the log file for details.","Um ou mais arquivos de mídia deixaram de ser sincronizados durante o processo de sincronização de armazenamento de mídia. Consulte o arquivo de registro para obter detalhes." -"One or more of the Cache Types are invalidated:","Está invalidado um ou mais Tipo de Cache." -"Online Customers","Clientes Conectados" -"Only Once (version upgrade)","Somente Uma Vez (atualização da versão)" -"Only attributes with scope ""Global"", input type ""Dropdown"" and Use To Create Configurable Product ""Yes"" are available.","Apenas atributos de âmbito ""Global"", tipo de entrada ""Dropdown"" e ""Sim"" Use Para Criar Produto Configurável estão disponíveis." -"Only mapped fields","Somente campos mapeados" -"Optional","Opcional" -"Options","Opções" -"Order","Pedido" -"Order %s","Pedido #%s" -"Order %s (%s)","Ordem #%s (%s)" -"Order Created Date","Data de Criação do Pedido" -"Order ID","ID da Ordem" -"Order Totals","Totais da Ordem" -"Order Updated Date","Data de Atualização do Pedido" -"Order Updated Date report is real-time, does not need statistics refreshing.","Relatório dos Dados de Atualização da Ordem em tempo real, não precisa de atualizar as estatísticas." -"Orders","Ordens" -"Original Magento attribute names in first row:","Nomes originais de atributo Magento na primeira linha:" -"Out of stock","Fora de estoque" -"PDT (Payment Data Transfer) Only","Apenas TDP (Transferência de Dados de Pagamento)" -"Package Extensions","Extensões da Embalagem" -"Pages","Páginas" -"Parent Product Thumbnail","Miniatura do Produto Parental" -"Parent Transaction ID","ID da Transação Parental" -"Passive mode","Modo passivo" -"Password","Senha" -"Password Confirmation","Confirmação de Senha" -"Password confirmation must be same as password.","Confirmação de senha tem de ser a mesma que a senha." -"Password must be at least of %d characters.","Senha deve ser de pelo menos %d caracteres." -"Password must include both numeric and alphabetic characters.","Senha deve conter caracteres numéricos e alfabéticos." -"Password:","Senha:" -"Path:","Caminho:" -"PayPal Manager","Gerenciador PayPal" -"Payment method instance is not available.","Instância de método de pagamento não está disponível." -"Payment method is not available.","Método de pagamento não está disponível." -"Payment method must be specified.","Método de pagamento deve ser especificado." -"Pending Reviews","Comentários Pendentes" -"Per Item","Por Item" -"Per Order","Por Ordem" -"Percent","Percentagem" -"Performed At","Realizado Em" -"Interval","Período" -"Permanent (301)","Permanente (301)" -"Permissions","Permissões" -"Personal Information","Informações pessoais" -"Phone:","Telefone:" -"Please Select","Por Favor Selecione" -"Please confirm site switching. All data that hasn\'t been saved will be lost.","Por favor confirme a mudança de site. Todos os dados que não tenham sido salvos serão perdidos." -"Please enter 6 or more characters.","Por favor insira 6 ou mais caracteres." -"Please enter a number greater than 0 in this field.","Por favor insira um número maior que 0 neste campo." -"Please enter a valid $ amount. For example $100.00.","Por favor introduza uma quantidade válida de $. Por exemplo $100,00." -"Please enter a valid URL. For example http://www.example.com or www.example.com","Por favor insira uma URL válida. Por exemplo http://www.exemplo.com ou www.exemplo.com" -"Please enter a valid URL. http:// is required","Por favor insira uma URL válida. http:// é necessário" -"Please enter a valid credit card number.","Por favor insira um número válido de cartão de crédito." -"Please enter a valid date.","Por favor insira uma data válida." -"Please enter a valid email address. For example johndoe@domain.com.","Por favor insira um endereço de e-mail válido. Por exemplo joao@domain.com." -"Please enter a valid email.","Por favor insira um e-mail válido." -"Please enter a valid number in this field.","Por favor insira um número válido neste campo." -"Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890.","Por favor insira um número de telefone válido. Por exemplo (123) 456-7890 ou 123-456-7890." -"Please enter a valid social security number. For example 123-45-6789.","Por favor insira um número válido de segurança social. Por exemplo 123-45-6789." -"Please enter a valid value from list","Insira um valor válido da lista" -"Please enter a valid value, ex: 10,20,30","Por favor insira um valor válido, ex: 10,20,30" -"Please enter a valid zip code.","Por favor insira um código postal válido." -"Please enter a valid zip code. For example 90602 or 90602-1234.","Por favor insira um código postal válido. Por exemplo 90602 ou 90602-1234." -"Please enter another credit card number to complete your purchase.","Por favor insira outro número de cartão de crédito para concluir a sua compra." -"Please enter password","Por favor insira a senha" -"Please enter password to confirm rollback.","Por favor insira a senha para confirmar redução." -"Please enter valid password.","Por favor insira uma senha válida." -"Please make sure that all global admin search modules are installed and activated.","Por favor certifique-se que todos os módulos de pesquisa de administração global estão instalados e ativados." -"Please make sure that your changes were saved before running the profile.","Por favor certifique-se que suas alterações foram salvas antes de executar o perfil." -"Please make sure your passwords match.","Por favor certifique-se que suas senhas coincidem." -"Please select State/Province.","Por favor selecione Estado/Província." -"Please select a customer.","Por favor selecione um cliente." -"Please select a store.","Por favor selecione uma loja." -"Please select an option.","Por favor selecione uma opção." -"Please select catalog searches.","Por favor selecione pesquisas de catálogo." -"Please select customer(s).","Por favor selecione cliente(s)." -"Please select message(s).","Por favor selecione mensagem/mensagens." -"Please select one of the above options.","Por favor selecione uma das opções acima." -"Please select one of the options.","Por favor selecione uma das opções." -"Please select review(s).","Por favor selecione comentário(s)." -"Please specify backup creation options","Por favor especifique opções de criação de backup." -"Please specify the admin custom URL.","Por favor especifique o URL de administração personalizada." -"Please try to logout and sign in again.","Por favor tente sair e entrar novamente." -"Please type the letters from the image:","Por favor digite as letras da imagem:" -"Please use in this field only ""a-z,0-9,_"".","Por favor use neste campo apenas ""a-z,0-9,_""." -"Please use letters only (a-z) in this field.","Por favor use apenas letras (a-z) neste campo." -"Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas.","Por favor use apenas números nesse campo. Por favor evite espaços ou outros caracteres tais como pontos ou vírgulas." -"Please use only letters (a-z or A-Z), numbers (0-9) or spaces in this field.","Por favor use somente letras (a-z ou A-Z), números (0-9) ou espaços neste campo." -"Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed.","Por favor use apenas letras (a-z) ou números (0-9) apenas neste campo. Espaços ou outros caracteres não são permitidos." -"Please use only letters (a-z) or numbers (0-9) or spaces and # only in this field.","Por favor use apenas letras (a-z) ou números (0-9) ou espaços e # apenas neste campo." -"Please use this date format: dd/mm/yyyy. For example 17/03/2006 for the 17th of March, 2006.","Por favor utilize este formato de data: dd/mm/aaaa. Por exemplo 17/03/2006 para 17 de Março de 2006." -"Please wait while the indexes are being refreshed.","Por favor aguarde enquanto os índices estão sendo atualizados." -"Please wait, loading...","Por favor aguarde, carregando..." -"Please wait...","Por favor aguarde..." -"Popular","Popular" -"Position of Watermark for %s","Posição da Marca d'Água para %s" -"Pregenerated product images files.","Arquivos de imagens do produto pré-gerados." -"Prev. month (hold for menu)","Mês prévio (segure para menu)" -"Prev. year (hold for menu)","Ano anterior (segure para menu)" -"Preview","Visualizar" -"Preview Template","Visualização do Modelo" -"Price","Preço" -"Price alert subscription was saved.","Alerta de preço de subscrição foi salvo." -"Price:","Preço:" -"Processed %s%% %s/%d records","Registros %s%% %s/%d processados" -"Product","Produto" -"Product","Nome do produto" -"Product Reviews","Comentários sobre Produto" -"Product Tax Classes","Classe de Imposto do Produto" -"Product Thumbnail Itself","Miniatura do Produto em Si" -"Product is not loaded.","O produto não está carregado." -"Product:","Produto:" -"Products","Produtos" -"Products Bestsellers Report","Relatório dos Produtos Mais Vendidos" -"Products Most Viewed Report","Relatório dos produtos mais vistos" -"Products Ordered","Produtos Encomendados" -"Products in Carts","Produtos em Carrinhos" -"Profile Action","Ação de Perfil" -"Profile Actions XML","Perfil de Ações XML" -"Profile Direction","Direção de Perfil" -"Profile History","Histórico do Perfil" -"Profile Information","Informação do Perfil" -"Profile Name","Nome do Perfil" -"Profile Payments","Pagamentos de Perfil" -"Profile Schedule","Horário do Perfil" -"Profile Wizard","Wizard de Perfil" -"Profiles","Perfis" -"Promo","Promoção" -"Promotions","Promoções" -"Purchased Item","Item Comprado" -"Put store on the maintenance mode while backup creation","Colocar loja em modo de manutenção durante a criação do backup" -"Put store on the maintenance mode while rollback processing","Coloque a loja em modo de manutenção durante o processamento da reversão" -"Quantity","Quantidade" -"Queue Refresh","Atualizar a Fila de Espera" -"Queued... Cancel","Em fila de espera... Cancelar" -"Radio Buttons","Botões de Opção" -"Rates","Valores" -"Read details","Ler detalhes" -"Rebuild","Refazer" -"Rebuild Catalog Index","Refazer Índice de Catálogo" -"Rebuild Flat Catalog Category","Reconstruir Categoria de Catálogo Único" -"Rebuild Flat Catalog Product","Refazer Produto de Catálogo Simplificado" -"Recent Orders","Pedidos Recentes" -"Recent statistics have been updated.","As estatísticas recentes foram atualizadas." -"Recurring Profile View","Visualização de Perfil Recorrente" -"Recursive Dir","Diretório Recursivo" -"Redirect","Redirecionar" -"Reference","Referência" -"Reference ID","Identificação de Referência" -"Refresh","Atualizar" -"Refresh Now*","Atualizar Agora*" -"Refresh Statistics","Atualizar Estatísticas" -"Region/State","Região/Estado" -"Regular Price:","Preço Normal:" -"Release","Lançamento" -"Release Stability","Liberar Estabilidade" -"Release Version","Versão de Lançamento" -"Reload captcha","Recarregar captcha" -"Remote FTP","FTP Remoto" -"Remove","Remover" -"Reports","Relatórios" -"Request Path","Solicitar Caminho" -"Required","Obrigatório" -"Reset","Redefinir" -"Reset Filter","Reiniciar Filtro" -"Reset Password","Reconfigurar Senha" -"Reset a Password","Redefinir uma senha" -"Resize","Redimensionar" -"Resource Access","Acesso a Recursos" -"Resources","Recursos" -"Results","Resultados" -"Retrieve Password","Recuperar Senha" -"Return Html Version","Retornar Versão HTML" -"Revenue","Receita" -"Reviews","Resenhas" -"Reviews and Ratings","Resenhas e Avaliações" -"Rewrite Rules","Regras de Rewrite" -"Role ID","Identidade de Função" -"Role Info","Informação de Função" -"Role Information","Informação de Função" -"Role Name","Nome de Função" -"Role Resources","Recursos de Função" -"Role Users","Usuários de Função" -"Roles","Funções" -"Roles Resources","Recursos de Funções" -"Rotate CCW","Girar em sentido anti-horário" -"Rotate CW","Girar em sentido horário" -"Run","Executar" -"Run Profile","Executar Perfil" -"Run Profile Inside This Window","Executar Perfil Dentro Desta Janela" -"Run Profile in Popup","Executar Perfil em Pop-up" -"Running... Kill","Executando... Parar" -"SKU","Unidade de Manutenção de Estoque" -"SKU:","SKU (Unidade de Manutenção de Estoque):" -"SSL Error: Invalid or self-signed certificate","Erro SSL: Certificado inválido ou autoassinado" -"Sales","Vendas" -"Sales Report","Relatório de Vendas" -"Samples","Amostras" -"Save","Salvar" -"Save & Generate","Salvar & Gerar" -"Save Account","Salvar Conta" -"Save Cache Settings","Salvar Configurações de Cache" -"Save Config","Salvar Configuração" -"Save Currency Rates","Salvar Taxas de Câmbio" -"Save Profile","Salvar Perfil" -"Save Role","Salvar Função" -"Save Template","Salvar Modelo" -"Save User","Salvar Usuário" -"Save and Continue Edit","Salvar e continuar a editar" -"Search","Pesquisa" -"Search Index","Buscar no Índice" -"Search Term","Buscar Termo" -"Search Terms","Buscar Termos" -"Select","Selecione" -"Select All","Selecionar Tudo" -"Select Category","Selecionar categoria" -"Select Date","Selecione Data" -"Select Range","Selecionar Intervalo" -"Select date","Selecione data" -"Selected allowed currency ""%s"" is not available in installed currencies.","Moeda selecionada permitida ""%s"" não está disponível nas moedas instaladas." -"Selected base currency is not available in installed currencies.","A moeda base selecionada não está disponível nas moedas instaladas." -"Selected default display currency is not available in allowed currencies.","Moeda predifinida de exibição selecionada não está disponível nas moedas permitidas." -"Selected default display currency is not available in installed currencies.","A moeda de exibição padrão selecionada não está disponível nas moedas instaladas." -"Self-assigned roles cannot be deleted.","Papéis auto-atribuídos não podem ser apagados." -"Sender","Remetente" -"Separate Email","Email Separado" -"Service Settings","Configurações de serviço" -"Set up & Customize","Ajustes & customização" -"Shipment #%s comment added","Comentário de envio #%s adicionado" -"Shipment #%s created","Criado embarque #%s" -"Shipment Comments","Comentários de Envio" -"Shipment History","Histórico de Entregas" -"Shipments","Envios" -"Shipping","Remessa" -"Shipping Address","Endereço de Envio" -"Shipping Address: ","Endereço de Envio:" -"Shipping Origin","Origem do Envio" -"Shipping Price","Valor do Frete" -"Shipping address selection is not applicable","Seleção de endereço de envio não é aplicável" -"Shipping method must be specified.","O método de entrega deve ser especificado." -"Shipping method selection is not applicable","Seleção de método de envio não é aplicável" -"Shopping Cart","Carrinho de compras" -"Shopping Cart Price Rules","Regras de Preços de Carrinho de Compras" -"Shopping Cart from %s","Carrinho de Compras de %s" -"Show By","Mostrar Por" -"Show Report For:","Mostrar relatório de:" -"Show Reviews","Mostrar Resenhas" -"Sitemap Information","Informações do Mapa do Site" -"Size for %s","Tamanho para %s" -"Skip Category Selection","Pular Seleção de Categoria" -"Some items in this order have different invoice and shipment types. You can create shipment only after the invoice is created.","Alguns itens nesta ordem têm diferentes notas fiscais e tipos de embarque. Você pode criar o embarque somente depois que a fatura é criada." -"Some of the ordered items do not exist in the catalog anymore and will be removed if you try to edit the order.","Alguns dos itens pedidos não existem mais no catálogo, e serão removidos se você tentar editar o pedido." -"Sorry, this feature is coming soon...","Desculpe, esta funcionalidade estará disponível em breve..." -"Special Price:","Preço Especial:" -"Specific Countries","Países Específicos" -"Specified","Especificado" -"Specified profile does not exist.","O perfil especificado não existe." -"Spreadsheet Name:","Nome da Planilha:" -"Start Date","Data de início" -"Starting profile execution, please wait...","Iniciando execução do perfil, por favor aguarde..." -"State/Province:","Estado/Província:" -"Static Blocks","Blocos Estáticos" -"Status","Status" -"Status:","Estado atual:" -"Stock Quantity:","Quantidade em Estoque:" -"Stock notification was saved.","A notificação de estoque foi salva." -"Store","Loja" -"Store Email Addresses Section","Seção de Endereços de Email da Loja" -"Store View","Visualização da loja" -"Store:","Loja:" -"Stores","Lojas" -"Subject","Assunto" -"Submit","Enviar" -"Subpackage cannot be conflicting.","Subpacote não pode gerar conflito." -"Subtotal","Subtotal" -"Switch/Solo/Maestro Only","Somente Swith/Solo/Maestro" -"Synchronization is required.","Sincronização necessária." -"Synchronization of media storages has been successfully completed.","A sincronização dos armazenamentos em mídia foi concluída com sucesso." -"Synchronize","Sincronizar" -"Synchronizing %s to %s","Sincronização %s para %s" -"Synchronizing...","Sincronizando..." -"System","Sistema" -"System Section","Seção de Sistema" -"System busy","Sistema ocupado" -"Target Path","Caminho Alvo" -"Tax","Taxas" -"Tb","Tb" -"Template","Modelo" -"Template Content","Conteúdo do Modelo" -"Template Information","Informação do Modelo" -"Template","Nome do Modelo" -"Template Styles","Estilos do Modelo" -"Template Subject","Assunto do Modelo" -"Template Type","Tipo de Modelo" -"Temporary (302)","Temporário (302)" -"Terms and Conditions","Termos e Condições" -"Text","Texto" -"The Catalog Rewrites were refreshed.","Os Reescritos do Catálogo foram atualizados." -"The CatalogInventory Stock Status has been rebuilt.","O Estado do Catálogo de Inventário de Estoque foi reconstruído." -"The Comment Text field cannot be empty.","O campo de texto do comentário não pode estar vazio." -"The Flat Catalog Product was rebuilt","O Catálogo Base de Produtos foi reconstruído" -"The JavaScript/CSS cache has been cleaned.","O cache JavaScript/CSS foi limpo." -"The JavaScript/CSS cache has been cleared.","O cache JavaScript/CSS foi limpo." -"The Layered Navigation indexing has been queued.","A indexação de navegação em camadas foi colocada na fila." -"The Layered Navigation indexing queue has been canceled.","A fila de indexação de navegação em camadas foi cancelada." -"The Layered Navigation indices were refreshed.","Os índices de Navegação por Camadas foram atualizados." -"The Layered Navigation process has been queued to be killed.","O processo de navegação em camadas foi colocado na fila para ser eliminado." -"The Magento cache storage has been flushed.","O armazenamento de cache Magento foi liberado." -"The URL Rewrite has been deleted.","O URL Reescrito foi apagado." -"The URL Rewrite has been saved.","O URL Reescrito foi salvo." -"The account has been saved.","A conta foi salva." -"The archive can be uncompressed with %s on Windows systems","O arquivo pode ser descompactado com %s nos sistemas Windows" -"The attribute set has been removed.","O conjunto de atributos foi removido." -"The backup's creation process will take time.","O processo de criação do backup levará algum tempo." -"The billing agreement has been canceled.","O acordo de cobrança foi cancelado." -"The billing agreement has been deleted.","O acordo de faturamento foi eliminado." -"The cache storage has been flushed.","O armazenamento de cache foi liberado." -"The carrier needs to be specified.","A transportadora deve ser especificada." -"The catalog index has been rebuilt.","O índice do catálogo foi reconstruído." -"The catalog rewrites have been refreshed.","Os reescritos do catálogo foram atualizados." -"The configuration has been saved.","A configuração foi salva." -"The credit memo has been canceled.","A nota de crédito foi cancelada." -"The credit memo has been created.","A nota de crédito foi criada." -"The credit memo has been voided.","A nota de crédito foi anulada." -"The custom variable has been deleted.","A variável personalizada foi apagada." -"The custom variable has been saved.","A variável personalizada foi salva." -"The customer has been deleted.","O cliente foi apagado." -"The customer has been saved.","O cliente foi salvo." -"The design change has been deleted.","A mudança de design foi apagada." -"The design change has been saved.","A mudança de design foi salva." -"The email address is empty.","O endereço de email está vazio." -"The email template has been deleted.","O modelo de e-mail foi apagado." -"The email template has been saved.","O modelo de e-mail foi salvo." -"The flat catalog category has been rebuilt.","A categoria catálogo plano foi reconstruída." -"The group node name must be specified with field node name.","O nome do nó de grupo deve ser especificado com o nome do nó de campo." -"The image cache was cleaned.","A cache de imagem foi limpa." -"The image cache was cleared.","A cache de imagem foi limpa." -"The invoice and shipment have been created.","A fatura e remessa foram criadas." -"The invoice and the shipment have been created. The shipping label cannot be created at the moment.","A factura e o envio foram criados. A etiqueta de remessa não pode ser criada no momento." -"The invoice has been canceled.","A fatura foi cancelada." -"The invoice has been captured.","A fatura foi capturada." -"The invoice has been created.","A fatura foi criada." -"The invoice has been voided.","A fatura foi cancelada." -"The invoice no longer exists.","A fatura não existe mais." -"The item %s (SKU %s) does not exist in the catalog anymore.","O item %s (SKU %s) não existe mais no catálogo." -"The order does not allow creating an invoice.","A ordem não permite a criação de uma fatura." -"The order no longer exists.","A ordem não existe mais." -"The profile has been deleted.","O perfil foi apagado." -"The profile has been saved.","O perfil foi salvo." -"The profile has been updated.","O perfil foi atualizado." -"The profile has no changes.","O perfil não tem alterações." -"The profile you are trying to save no longer exists","O perfil que você está tentando salvar não existe mais" -"The rating has been deleted.","A avaliação foi eliminada." -"The rating has been saved.","A avaliação foi salva." -"The role has been deleted.","O papel foi eliminado." -"The role has been saved.","O papel foi salvo." -"The role has been successfully saved.","O papel foi salvo com sucesso." -"The search index has been rebuilt.","O índice de pesquisa foi reconstruído." -"The shipment has been created.","A remessa foi criada." -"The shipment has been sent.","A remessa foi enviada." -"The shipping label has been created.","A etiqueta de envio foi criada." -"The transaction details have been updated.","Os detalhes da transação foram atualizados." -"The user has been deleted.","O usuário foi apagado." -"The user has been saved.","O usuário foi salvo." -"Themes JavaScript and CSS files combined to one file.","Temas JavaScript e CSS combinados para um arquivo." -"There is an error in one of the option rows.","Há um erro em uma das linhas de opção." -"This Account is","Esta Conta é" -"This Email template no longer exists.","Este modelo de e-mail não existe mais." -"This Role no longer exists","Esse papel não existe mais" -"This Role no longer exists.","Esse Papel não existe mais." -"This account is","Esta conta é" -"This account is inactive.","Esta conta está inativa." -"This action cannot be undone.","Essa ação não pode ser desfeita." -"This attribute set does not have attributes which we can use for configurable product","Este conjunto de atributos não possui atributos que possamos utilizar para o produto configurável" -"This attribute shares the same value in all the stores","Este atributo partilha o mesmo valor em todas as lojas" -"This is a demo store. Any orders placed through this store will not be honored or fulfilled.","Esta é uma loja de demonstração. Qualquer ordem ou encomenda colocada nesta loja não será honrada ou completa." -"This is a required field.","Este é um campo obrigatório." -"This product is currently disabled.","Este produto está atualmente desativado." -"This report depends on timezone configuration. Once timezone is changed, the lifetime statistics need to be refreshed.","Este relatório depende da configuração de fuso horário. Uma vez que o fuso horário é alterado, as estatísticas de vida precisam ser atualizadas." -"This section is not allowed.","Esta seção não é permitida." -"This user no longer exists.","Este usuário não existe mais." -"Time","Tempo" -"Time selection:","Seleção de tempo:" -"Time:","Tempo:" -"Timeout limit for response from synchronize process was reached.","Tempo limite para a resposta do processo de sincronização foi alcançado." -"To","Para" -"To cancel pending authorizations and release amounts that have already been processed during this payment, click Cancel.","Para cancelar autorizações pendentes e liberar quantidades que já foram processadas durante este pagamento, clique em Cancelar." -"To use PayPal Payflow Link you must configure some settings in your Payflow account by logging into","Para usar o Payflow Link, você deve configurar sua conta Payflow Link no site do Paypal." -"To use PayPal Payments Advanced you must configure some settings in your PayPal Payments Advanced account by logging into","Para usar Pagamentos Adiantados PayPal você deve configurar algumas configurações na sua conta de Pagamentos Adiantados PayPal fazendo login em" -"Toggle Editor","Editor de Alternar" -"Tools","Ferramentas" -"Top 5 Search Terms","Top 5 de Termos de Pesquisa" -"Total","Total" -"Total Invoiced","Total Faturado" -"Total","Valor Total da Ordem" -"Total Refunded","Total Reembolsado" -"Total of %d record(s) have been deleted.","No total %d registro(s) foi(foram) excluído(s)." -"Total of %d record(s) have been updated.","Total de %d registro(s) foram atualizados." -"Total of %d record(s) were canceled.","Total de %d registros foram cancelados" -"Total of %d record(s) were deleted","Total de %d registro(s) foram excluídos" -"Total of %d record(s) were deleted.","Total de %d registro(s) foram excluídos." -"Total of %d record(s) were updated","Total de %d registro(s) foram atualizados" -"Total of %d record(s) were updated.","Total de %d registro(s) foram atualizados." -"Track Order","Rastrear Ordem" -"Track this shipment","Acompanhar este envio" -"Tracking number %s for %s assigned","Atribuído número de rastreamento %s para %s" -"Tracking number cannot be empty.","Número de rastreamento não pode ser vazio." -"Transaction Data","Dados da Transação" -"Transaction Details","Detalhes da Transação" -"Transaction ID","ID da Transação" -"Transaction Type","Tipo de Transação" -"Transactional Emails","Emails de Transações" -"Transactions","Transações" -"Type","Tipo" -"Type:","Tipo:" -"URL Rewrite","Reescrever URL" -"URL Rewrite Information","Informação Reescrita de URL" -"URL Rewrite Management","Gestão Reescrita de URL" -"Unable to cancel the credit memo.","Não foi possível cancelar a nota de crédito." -"Unable to find a Email Template to delete.","Incapaz de encontrar um Modelo de Email para apagar." -"Unable to find a user to delete.","Impossível encontrar usuário a ser apagado." -"Unable to initialize import model","Impossível iniciar modelo de importação" -"Unable to refresh lifetime statistics.","Impossível atualizar estatísticas do tempo de existência." -"Unable to refresh recent statistics.","Impossível atualizar estatísticas recentes." -"Unable to save Cron expression","Não foi possível salvar expressão Cron" -"Unable to save the cron expression.","Impossível salvar a expressão cron." -"Unable to save the invoice.","Não foi possível salvar a fatura." -"Unable to send the invoice email.","Impossível enviar email com a fatura." -"Unable to send the shipment email.","Não foi possível enviar o email de expedição." -"Unable to update transaction details.","Não foi possível atualizar as informações da transação." -"Unable to void the credit memo.","Não foi possível anular a nota de crédito." -"Unknown","Desconhecido" -"Unlimited","Ilimitado" -"Update","Atualizar" -"Updated At","Atualizado Em" -"Upload File","Carregar Arquivo" -"Upload Files","Carregar Arquivos" -"Upload HTTP Error","Carregar Erro HTTP" -"Upload I/O Error","Carregar Erro de E/S" -"Upload Security Error","Carregar Erro de Segurança" -"Upload import file","Carregar arquivo de importação" -"Uploaded file is larger than %.2f kilobytes allowed by server","O arquivo de upload é maior que os %.2f kilobytes permitidos pelo servidor" -"Use All Available Attributes","Usar Todos os Atributos Disponíveis" -"Use Config Settings","Utilizar opções de configuração" -"Use Default","Utilizar padrão" -"Use Default Value","Utilizar valor padrão" -"Use Default Variable Values","Usar Valores-Padrão para Variáveis" -"Use FTP Connection","Use Conexão FTP" -"Use Website","Usar Website" -"Used Currently For","Atualmente Usado(s) Para" -"Used as Default For","Usado(s) por Padrão Para" -"User Email","Email do Usuário" -"User ID","Identificação do Usuário" -"User Info","Informações do Usuário" -"User Information","Informações do Usuário" -"User Name","Nome do Usuário" -"User Name is required field.","Nome de Usuário é um campo obrigatório." -"User Name:","Nome do Usuário:" -"User Password","Senha do Usuário" -"User Role","Função do Usuário" -"User Roles","Funções do Usuário" -"User Roles Information","Informações sobre Papéis do Usuário" -"User name","Nome do Usuário" -"Users","Usuários" -"VAT Number is Invalid","O número VAT é inválido" -"VAT Number is Valid","O número VAT é válido" -"Validation Results","Resultados de Validação" -"Value","Valor" -"Value Delimiter:","Valor Delimitador:" -"Variable","Variável" -"Variable Code","Código de Variável" -"Variable HTML Value","Valor HTML de Variável" -"Variable ID","Identificação de Variável" -"Variable Name","Nome da Variável" -"Variable Plain Value","Valor PLAIN de Variável" -"View Actions XML","Visualizar XML de Ações" -"View Full Size","Visualizar Tamanho Completo" -"View Memo","Visualizar Memorando" -"View Memo for #%s","Ver Memo por #%s" -"View Shipment","Ver Remessa" -"View Statistics For:","Veja Estatísticas Para:" -"Visibility:","Visibilidade:" -"Warning","Aviso" -"Warning! Empty value can cause problems with CSV format.","Atenção! Valor vazio pode causar problemas com o formato CSV." -"Warning!\r\nThis action will remove this user from already assigned role\r\nAre you sure?","Aviso!\r\nEsta ação removerá este usuário do papel já atribuído\r\nVocê tem certeza?" -"Warning!\r\nThis action will remove those users from already assigned roles\r\nAre you sure?","Atenção!\r\nEsta ação irá remover os usuários das funções já atribuídas\r\nVocê tem certeza?" -"Warning: Please do not close the window during importing/exporting data","Aviso: Por favor não feche a janela durante a importação/exportação de dados" -"Watermark File for %s","Arquivo Marca d'Água para %s" -"We appreciate our merchants\' feedback, please take our survey to provide insight on the features you would like included in Magento. Remove this notification","Agradecemos o feedback de nossos comerciantes, por favor responda a nosso inquérito para fornecer uma visão sobre as características que você gostaria de incluir no Magento. Remover esta notificação" -"We\'re in our typing table, coding away more features for Magento. Thank you for your patience.","Estamos em nossa tabela de digitação, codificando mais recursos para Magento. Obrigado pela sua paciência." -"Web Section","Seção Web" -"Web Services","Serviços Web" -"Web services","Serviços Web" -"Website","Website" -"What is this?","O que é isso?" -"Wishlist Report","Assinalar na Lista de Desejos" -"Wishlist item is not loaded.","O item da lista de presentes não foi carregado." -"Wrong account specified.","Conta errada especificada." -"Wrong billing agreement ID specified.","ID de acordo de faturamento especificado errado." -"Wrong column format.","Formato errado de coluna." -"Wrong newsletter template.","Modelo de newsletter errado." -"Wrong quote item.","Item de citação errado." -"Wrong tab configuration.","Configuração errada de tabulação." -"Wrong transaction ID specified.","ID errado de transação especificado." -"XML","XML" -"XML data is invalid.","Dados XML inválidos." -"XML object is not instance of ""Magento\Simplexml\Element"".","Objeto XML não é instância de ""Magento\Simplexml\Element""." -"YTD","YTD" -"Year","Ano" -"Yes","Sim" -"Yes (301 Moved Permanently)","Sim (301 movido permanentemente)" -"Yes (302 Found)","Sim (302 Encontrado)" -"Yes (only price with tax)","Sim (preço somente com impostos)" -"You cannot delete your own account.","Você não pode apagar sua própria conta." -"You have %s unread message(s).","Você tem %s mensagens não lidas." -"You have %s unread message(s). Go to messages inbox.","Você tem %s mensagem(s) não lidas. Ir para a caixa de entrada de mensagens." -"You have %s, %s and %s unread messages. Go to messages inbox.","Você tem %s, %s e %s mensagens não lidas. Ir para a caixa de entrada de mensagens." -"You have logged out.","Você se desconetou." -"You have not enough permissions to use this functionality.","Você não tem permissões suficientes para utilizar esta funcionalidade." -"You must have JavaScript enabled in your browser to utilize the functionality of this website.","Você deve ativar o Javascript no seu navegador para utilizar as funcionalidades deste site." -"You need to specify order items.","Você precisa especificar itens da ordem." -"You will need to wait when the action ends.","Será necessário aguardar quando a ação terminar." -"Your answers contain duplicates.","Suas respostas contêm duplicatas." -"Your password has been updated.","A sua senha foi atualizada." -"Your password reset link has expired.","Seu link de configuração de senha expirou." -"Your server PHP settings allow you to upload files not more than %s at a time. Please modify post_max_size (currently is %s) and upload_max_filesize (currently is %s) values in php.ini if you want to upload larger files.","As configurações do seu servidor PHP permitem que você faça o carregamento de arquivos não mais que %s de cada vez. Por favor modifique os valores post_max_size (atualmente é %s) e upload_max_filesize (atualmente é %s) em php.ini se você quiser fazer carregar arquivos maiores." -"Your web server is configured incorrectly. As a result, configuration files with sensitive information are accessible from the outside. Please contact your hosting provider.","Seu servidor web está configurado incorretamente. Como resultado, os arquivos de configuração com informações confidenciais são acessíveis de fora. Entre em contato com seu provedor de hospedagem." -"Zip/Postal Code","Zip/Código Postal" -"Zip/Postal Code:","CEP/Código Postal:" -"[ deleted ]","[ apagado ]" -"[GLOBAL]","[GLOBAL]" -"[STORE VIEW]","[VISUALIZAR LOJA]" -"[WEBSITE]","[WEBSITE]" -"b","b" -"close","fechar" -"critical","crítico" -"example: ""sitemap/"" or ""/"" for base path (path must be writeable)","exemplo: ""sitemap /"" ou ""/"" para o caminho base (caminho deve ser gravável)" -"example: sitemap.xml","exemplo: sitemap.xml" -"failed","fracassado" -"from","de" -"major","maior" -"minor","menor" -"notice","aviso" -"store(%s) scope","âmbito de loja (%s)" -"successful","bem sucedido" -"to","para" -"website(%s) scope","âmbito de site (%s)" -"{{base_url}} is not recommended to use in a production environment to declare the Base Unsecure URL / Base Secure URL. It is highly recommended to change this value in your Magento configuration.","{{base_url}} não é recomendada para uso em um ambiente de produção para declarar Base URL Insegura/Base URL Segura. É altamente recomendável alterar este valor em suas configurações Magento." diff --git a/app/code/Magento/Adminhtml/i18n/zh_CN.csv b/app/code/Magento/Adminhtml/i18n/zh_CN.csv deleted file mode 100644 index 6fd6c89218f37..0000000000000 --- a/app/code/Magento/Adminhtml/i18n/zh_CN.csv +++ /dev/null @@ -1,1163 +0,0 @@ -" The customer does not exist in the system anymore.","系统中不存在该客户。" -" You will need to navigate to your ","你需要进入到你的" -" [deleted]","[已删除]" -" and ","并且" -" and go to the ","并转到" -" sections for your Hosted Checkout Pages.","托管结账页面部分" -"%s (Default Template from Locale)","%s (不同地区的默认模板)" -"%s cache type(s) disabled.","%s个缓存类型被禁用。" -"%s cache type(s) enabled.","%s个缓存类型被启用。" -"%s cache type(s) refreshed.","%s个缓存类型被刷新。" -"(For Type ""Local Server"" need to use relative path to Magento install var/export or var/import, e.g. var/export, var/import, var/export/some/dir, var/import/some/dir)","(对于类型 ""Local Server"" 需要使用到 Magento install var/export 或 var/import 的相对路径,例如 var/export、var/import、var/export/some/dir、var/import/some/dir)" -"(For US 2-letter state names)","(用于美国两个字母代表的州名称)" -"(If left empty will be auto-generated)","(如果留空将自动生成)" -"(Leave empty for first spreadsheet)","(第一个表格可留空)" -"(Products will be added/updated to this store if 'store' column is blank or missing in the import file.)","(如果“店铺”一栏为空或在导入的文件中不存在,则产品会被添加/更新到该店铺中。)" -"(Shift-)Click or drag to change value","(Shift-)点击或拖拽即可更改值" -"(Starting with)","(始于)" -"(When 'No', only mapped fields will be imported. When mapping, use 'column1', 'column2', etc.)","(如果为“否”,则只有映射的文件会被导入。在映射时,请使用 'column1'、'column2'等。)" -"(You have to increase php memory_limit before changing this value)","(更改该值之前您需要增大php的memory_limit)" -"(\\t for tab)","(\\t 可打开选项卡)" -"* - If indexing is in progress, it will be killed and new indexing process will start.","* - 如果正在创建索引,则会被停止,并重新开始新的索引进程。" -"- Click on any of the time parts to increase it","- 点击时间的任何部分即可更改" -"- Hold mouse button on any of the above buttons for faster selection.","- 在任何按钮上按下鼠标按键即可选中。" -"- Use the %s buttons to select month","- 使用%s 按钮选择月份" -"- Use the %s, %s buttons to select year","- 使用%s,%s按钮选择年份" -"- or Shift-click to decrease it","- 或Shift-点击以减小" -"- or click and drag for faster selection.","- 或点击并拖拽以快速选中。" -"-- Not Selected --","-- 未选择 --" -"-- Please Select --","-- 请选择 --" -"-- Please Select Billing Agreement--","-- 请选择记账协议 --" -"-- Please Select a Category --","-- 请选择一个分类 --" -"-- Please select --","--请选择--" -"--Please Select--","-- 请选择 --" -"1 Hour","1小时" -"1. set up","1.设置" -"12 Hours","12小时" -"12h AM/PM","21h AM/PM" -"2 Hours","2小时" -"2. customize","2.定制" -"24 Hours","24小时" -"24h","24h" -"2YTD","2YTD" -"6 Hours","6小时" -"

404 Error

Page not found.

","

404 错误

页面未找到。

" -"Attention: Captcha is case sensitive.","注意:验证码为大小写敏感的。" -"A user with the same user name or email aleady exists.","使用相同名称或邮件地址的用户已存在。" -"API Key","API Key" -"API Key Confirmation","API Key配置" -"ASCII","ASCII" -"Abandoned Carts","放弃购物车" -"About the calendar","关于日历" -"Access Denied","访问被拒绝" -"Access denied","访问被拒绝" -"Access denied.","访问被拒绝" -"Account Created in:","帐户创建于:" -"Account Created on (%s):","帐户创建于(%s):" -"Account Created on:","帐户创建于:" -"Account Information","帐户信息" -"Account Status","帐户状态" -"Account status","帐户状态" -"Action","操作" -"Actions","操作" -"Actions XML","操作XML" -"Active","活动" -"Add","添加" -"Add Exception","添加例外" -"Add Field Mapping","添加字段映射" -"Add Field with URL:","添加带URL的字段:" -"Add New","添加新内容" -"Add New Image","添加新图像" -"Add New Profile","添加新配置文件" -"Add New Role","添加新角色" -"Add New Template","添加新模板" -"Add New URL Rewrite","添加新URL重写" -"Add New User","添加新用户" -"Add New Variable","添加新变量" -"Add Products","添加产品" -"Add URL Rewrite","添加URL重写" -"Add URL Rewrite for a Category","为分类添加URL重写" -"Add URL Rewrite for a Product","为产品添加URL重写" -"Add after","随后添加" -"Additional Cache Management","额外的缓存管理" -"Address Type:","地址类型:" -"Admin","管理员" -"Advanced Admin Section","高级管理区域" -"Advanced Profiles","高级配置文件" -"Advanced Section","高级区域" -"All","全部" -"All Allowed Countries","所有允许的国家" -"All Cache","所有缓存" -"All Files","所有文件" -"All Reviews","所有评测" -"All Store Views","所有店铺视图" -"All Tags","所有标签" -"All Websites","所有网站" -"All countries","所有国家" -"All fields","所有字段" -"All possible rates were fetched, please click on ""Save"" to apply","将自动获取所有可能的费率,请单击“保存”以应用" -"All rates were fetched, please click on ""Save"" to apply","所有费率已获取,请单击“保存”已应用" -"All valid rates have been saved.","所有有效的评级均已保存。" -"Always (during development)","总是(在开发过程中)" -"Amounts","数量" -"An error has occurred while syncronizing media storages.","同步媒体存储时遇到了错误。" -"An error occurred while clearing the JavaScript/CSS cache.","清空 JavaScript/CSS 缓存时发生错误。" -"An error occurred while clearing the image cache.","清空图像缓存时发生错误。" -"An error occurred while deleting URL Rewrite.","删除 URL 重写时出错。" -"An error occurred while deleting email template data. Please review log and try again.","删除电子邮件模板数据时发生错误。请查看日志并重试。" -"An error occurred while deleting record(s).","删除记录时出错。" -"An error occurred while deleting this role.","删除该角色时发生错误。" -"An error occurred while deleting this set.","删除该集合时发生错误。" -"An error occurred while deleting this template.","删除该模板时发生错误。" -"An error occurred while finishing process. Please refresh the cache","完成进程时发生错误。请刷新缓存" -"An error occurred while rebuilding the CatalogInventory Stock Status.","重建目录库存状态时发生错误。" -"An error occurred while rebuilding the catalog index.","重建目录索引时发生错误。" -"An error occurred while rebuilding the flat catalog category.","重建平面目录类别时发生错误。" -"An error occurred while rebuilding the flat product catalog.","重建平面产品目录时发生错误。" -"An error occurred while rebuilding the search index.","重建搜索索引时发生错误。" -"An error occurred while refreshing the Catalog Rewrites.","刷新目录重写时发生错误。" -"An error occurred while refreshing the Layered Navigation indices.","刷新分层导航指标时发生错误。" -"An error occurred while refreshing the catalog rewrites.","刷新目录重写时遇到了错误。" -"An error occurred while refreshing the layered navigation indices.","刷新层次式导航索引时遇到了错误。" -"An error occurred while saving URL Rewrite.","保存 URL 重写时出错。" -"An error occurred while saving account.","保存账户时发生错误。" -"An error occurred while saving review.","保存评价时出错。" -"An error occurred while saving the customer.","保存客户时发生错误。" -"An error occurred while saving this configuration:","保存该配置时发生错误:" -"An error occurred while saving this role.","保存该角色时出现了错误。" -"An error occurred while saving this template.","保存该模板时出现了错误。" -"An error occurred while updating the selected review(s).","更新所选评测时出现了错误。" -"Any","任意" -"Any Attribute Set","任何属性集" -"Any Group","任何组" -"Any Status","任何状态" -"Any Store","任何店铺" -"Any Type","任何类型" -"Any Visibility","任何可见性" -"Any data created since the backup was made will be lost including admin users, customers and orders.","备份完成后创建的任何数据都将丢失,包括管理员用户、顾客,以及订单。" -"Archive file name:","存档文件名:" -"Are you sure that you want to delete this template?","您是否确认要删除该模板?" -"Are you sure that you want to strip tags?","您是否确认要取消标签?" -"Are you sure you want to do this?","您是否确认要这样做?" -"Are you sure you want to proceed?","你是否确定要继续?" -"Area","区域" -"As low as:","低至:" -"Assigned","已分配" -"Tags","已分配的标签" -"Attribute Set Name:","属性集名称:" -"Attributes","属性" -"Automatic","自动" -"Average","平均订单量" -"Average Orders","平均订单" -"BINARY","二进制" -"Back","返回" -"Back to Login","返回到登录界面" -"Backup","备份" -"Backup Name","备份名称" -"Backup options","备份选项" -"Backups","备份" -"Base currency","基本汇率" -"Bcc","Bcc" -"Bestsellers","最佳销量" -"Billing Address","账单地址" -"Billing Address: ","账单地址:" -"Billing Agreement","记账协议" -"Billing Agreements","记账协议" -"Block Information","块信息" -"Both (without and with tax)","都有(含税和不含税)" -"Both IPN and PDT","IPN和PDT" -"Browse Files...","浏览文件..." -"Bundle with dynamic pricing cannot include custom defined options. Options will not be saved.","与动态价格的捆绑不能包含自定义的选项。选项将无法保存。" -"CMS","CMS" -"CRITICAL","重要" -"CSV","CSV" -"CSV / Tab separated","CSV / Tab分隔" -"Cache Control","缓存控制" -"Cache Control (beta)","缓存控制(测试版)" -"Cache Management","缓存管理" -"Cache Type","缓存类型" -"Cancel","取消" -"Cannot add new comment.","无法添加新评论。" -"Cannot add tracking number.","无法追踪编号。" -"Cannot create an invoice without products.","无法在没有产品时创建发票。" -"Cannot create credit memo for the order.","无法为该订单创建信用记录。" -"Cannot delete the design change.","无法删除该设计变动。" -"Cannot delete tracking number.","无法删除追踪编号。" -"Cannot do shipment for the order separately from invoice.","无法将产品与发票分开发送。" -"Cannot do shipment for the order.","无法对该订单发货。" -"Cannot initialize shipment for adding tracking number.","无法初始化订单以添加追踪编号。" -"Cannot initialize shipment for delete tracking number.","无法初始化发货以删除追踪编号。" -"Cannot load track with retrieving identifier.","无法用获取的标识符加载追踪。" -"Cannot retrieve tracking number detail.","无法获取追踪编号详情。" -"Cannot save shipment.","无法保存运送。" -"Cannot save the credit memo.","无法保存信用记录。" -"Cannot send shipment information.","无法发送运行信息。" -"Cannot update item quantity.","无法更新商品数量。" -"Cannot update the item\'s quantity.","无法更新商品的数量。" -"Catalog","分类" -"Catalog Price Rules","分类价格规则" -"Catalog Rewrites","分类重写" -"Categories","分类" -"Category:","分类:" -"Chart is disabled. If you want to enable chart, click here.","图表被禁用。如果希望启用图表,请点击 这里。" -"Checkbox","复选框" -"Child Transactions","子交易" -"Choose Store View:","选择店铺视图:" -"Choose an attribute","选择一个属性" -"Chosen category does not associated with any website, so url rewrite is not possible.","所选分类没有关联给任何网站,因此URL重写不可用。" -"Chosen product does not associated with any website, so url rewrite is not possible.","所选产品没有关联给任何网站,因此URL重写不可用。" -"Clear","清空" -"Close","关闭" -"Comment text field cannot be empty.","评论文本字段不能为空。" -"Complete","完成" -"Configuration","配置" -"Confirm New Password","确认新密码" -"Confirmed email:","确认邮件:" -"Connect with the Magento Community","连接到Magento社区" -"Continue","继续" -"Continuous","连续" -"Convert to Plain Text","转换为纯文本" -"Cookie (unsafe)","Cookie(不安全)" -"Country","国家" -"Country:","国家:" -"Coupons","折价券" -"Create","创建" -"Create DB Backup","创建DB备份" -"Create New Attribute","新建属性" -"Create URL Rewrite:","创建URL重写:" -"Created At","创建于" -"Credit Card %s","信用卡 %s" -"Credit Memo History","信用记录历史" -"Credit Memo Totals","信用记录总数" -"Credit Memos","信用记录" -"Credit memo #%s comment added","信用记录 #%s 评论已添加" -"Credit memo #%s created","信用记录 #%s 已创建" -"Credit memo\'s total must be positive.","信用记录的总数必须为正数。" -"Currency","币种" -"Currency ""%s"" is used as %s in %s.","货币 ""%s"" 被用作 %s 中的 %s。" -"Currency Information","币种信息" -"Currency Setup Section","币种设置区域" -"Current Configuration Scope:","当前配置范围:" -"Current Month","当前月份" -"Custom","自定义" -"Custom Variable ""%s""","自定义变量 ""%s""" -"Custom Variables","自定义变量" -"Customer","客户" -"Customer Group:","顾客组:" -"Customer Groups","客户组" -"Customer","顾客姓名" -"Customer Reviews","顾客评测" -"Customer Shopping Carts","顾客购物车" -"Customer Since:","顾客注册于:" -"Customer Tax Classes","客户税率" -"Customer with the same email already exists.","使用相同邮件地址的顾客已存在。" -"Customers","客户" -"Customers by Orders","按订单编号排列顾客" -"Customers by Orders Total","按订单数量排列顾客" -"DHTML Date/Time Selector","DHTML 日期/时间选择器" -"Dashboard","仪表板" -"Data Format","数据格式" -"Data transfer:","数据传输:" -"Database","数据库" -"Date","日期" -"Date & Time","日期与时间" -"Added","添加日期" -"Updated","更新日期" -"Date selection:","选择日期:" -"Date selector","日期选择器" -"Day","天" -"Decimal separator:","十进制分隔符:" -"Default (Admin) Values","默认(管理)值" -"Default Billing Address","默认账单地址" -"Default Config","默认配置" -"Default Template from Locale","不同地区的默认模板" -"Default Values","默认值" -"Default display currency ""%s"" is not available in allowed currencies.","默认显示的币种 ""%s"" 不属于允许使用的币种。" -"Default scope","默认范围" -"Delete","删除" -"Delete %s","萨哈拿出 %s" -"Delete %s '%s'","删除 %s '%s'" -"Delete File","删除文件" -"Delete Image","删除图像" -"Delete Profile","删除配置文件" -"Delete Role","删除角色" -"Delete Store","删除店铺" -"Delete Store View","删除店铺视图" -"Delete Template","删除模板" -"Delete User","删除用户" -"Delete Website","删除网站" -"Description","描述" -"Design","设计" -"Design Section","设计区域" -"Details","详情" -"Developer Section","开发人员区域" -"Direction:","指导:" -"Disable","禁用" -"Disabled","已禁用" -"Display %s first","显示前 %s个" -"Display default currency","显示默认币种" -"Distributed under GNU LGPL. See %s for details.","在GNU LGPL下分发。详情请参考 %s。" -"Do you really want to KILL parallel process and start new indexing process?","您是否想要结束并发进程并重新开始索引进程?" -"Do you really want to proceed?","你是否真的要继续?" -"Download","下载" -"Downloads","下载" -"Drag to move","拖拽以移动" -"Drop-down","下拉菜单" -"Edit","编辑" -"Edit Design Change","编辑设计变动" -"Edit Email Template","编辑邮件模板" -"Edit Order","编辑订单" -"Edit Poll","编辑投票" -"Edit Queue","编辑队列" -"Edit Review","编辑评测" -"Edit Role","编辑角色" -"Edit Store View","编辑店铺视图" -"Edit System Template","编辑系统模板" -"Edit Template","编辑模板" -"Edit URL Rewrite","编辑URL重写" -"Edit User","编辑用户" -"Edit User '%s'","编辑用户'%s'" -"Edit Website","编辑网站" -"Email","电子邮件" -"Email Address:","电子邮件地址:" -"Email Preview","邮件预览" -"Email to a Friend","给朋友发邮件" -"Email:","电子邮件:" -"Enable","启用" -"Enabled","已启用" -"Enclose Values In:","将值包含于:" -"Entity Attributes","编辑属性" -"Entity Type","实体类型" -"Entity type:","实体类型:" -"Error","错误" -"Excel XML","Excel XML" -"Excl. Tax","不含税" -"Exclude media folder from backup","从备份中排除媒体文件夹" -"Export","导出" -"Export CSV","导出CSV" -"Export Filters","导出筛选器" -"Export to:","导出到:" -"Export:","导出:" -"FTP Host","FTP 主机" -"FTP Host[:Port]","FTP主机[:端口]" -"FTP Login","FTP 登录" -"FTP Password","FTP密码" -"FTP credentials","FTP 凭据" -"Failed to add a product to cart by id ""%s"".","按照编号 ""%s"" 向购物车添加商品时失败。" -"Failed to cancel the billing agreement.","取消记账协议时出错。" -"Failed to clear the JavaScript/CSS cache.","清空JavaScript/CSS缓存时出错。" -"Failed to delete the billing agreement.","删除记账协议时出错。" -"Failed to update the profile.","更新配置文件时出错。" -"Field","字段" -"Field Mapping","字段映射" -"File","文件" -"File Information","文件信息" -"File System","文件系统" -"File mode","文件模式" -"File name:","文件名:" -"File size should be more than 0 bytes","文件大小应超过0字节。" -"Finished profile execution.","配置文件执行完毕。" -"First Invoice Created Date","第一张发票的创建日期" -"First Name","名字" -"First Name is required field.","名称是必要字段。" -"First Name:","名字:" -"Fixed","固定" -"Flush Catalog Images Cache","清理分类图像缓存" -"Flush JavaScript/CSS Cache","清理JavaScript/CSS缓存" -"For category","分类" -"For latest version visit: %s","最新版访问:%s" -"For product","产品" -"Forgot Admin Password","忘记管理员密码" -"Forgot your password?","忘记您的密码?" -"Forgot your user name or password?","忘记了您的用户名或密码?" -"From","来自" -"GLOBAL","全局" -"Gb","Gb" -"General Information","常规信息" -"General Section","常规区域" -"Get Image Base64","获取Image Base64" -"Get help for this page","获得有关本页面的帮助" -"Global Attribute","全局属性" -"Global Record Search","全局记录搜索" -"Global Search","全局搜索" -"Go Today","转到今天" -"Go to messages inbox","进入信息收件箱" -"Go to notifications","打开通知" -"Google Base","Google Base" -"Google Sitemaps","Google站点结构图" -"Grand Total","总计" -"Grid (default) / List","网格(默认)/列表" -"Grid Only","仅网格" -"Group:","组:" -"Guest","来宾" -"HTTP (unsecure)","HTTP(不安全)" -"HTTPS (SSL)","HTTPS(SSL)" -"Help Us Keep Magento Healthy - Report All Bugs","帮助我们保持Magento的健康 - 汇报所有Bug" -"Helper attributes should not be used in custom layout updates.","自定义布局更新时不能使用 Helper 属性。" -"Helper for options rendering doesn't implement required interface.","渲染选项的 Helper 无法在不使用界面时实施。" -"Home","主页" -"ID","ID" -"ID Path","ID路径" -"IP Address","IP地址" -"IPN (Instant Payment Notification) Only","仅IPN(即时支付通知)" -"If there is an account associated with %s you will receive an email with a link to reset your password.","如果有关联给 %s 的账户,你将收到一封包含重设密码链接的电子邮件。" -"If this message persists, please contact the store owner.","如果该信息持续显示,请联系店铺所有者。" -"Images (.gif, .jpg, .png)","图像(.gif、.jpg、.png)" -"Images Cache","图像缓存" -"Import","导入" -"Import Service","导入服务" -"Import and Export","导入和导出" -"Import and Export Tax Rates","导入和导出税率" -"Import/Export","导入/导出" -"Import/Export Advanced","高级导入/导出" -"Import/Export Profile","导入/导出配置文件" -"Important: ","重要:" -"Imported %s records","导入%s 的记录" -"In","位于" -"In Database:","在数据库:" -"In File:","在文件:" -"Inactive","未激活" -"Incl. Tax","含税" -"Incoming Message","收到的信息" -"Insert Variable...","插入变量..." -"Interactive","交互" -"Interface Locale: %s","界面区域:%s" -"Invalid Form Key. Please refresh the page.","来源密钥无效,请刷新本页面。" -"Invalid Import Service Specified","指定的导入服务无效。" -"Invalid POST data (please check post_max_size and upload_max_filesize settings in your php.ini file).","POST数据无效(请检查您php.ini文件中的 post_max_size 与 upload_max_filesize 设置)。" -"Invalid Secret Key. Please refresh the page.","密钥无效。请刷新该页面。" -"Invalid User Name or Password.","无效的用户名或密码。" -"Invalid directory: %s","无效目录:%s" -"Invalid email address ""%s"".","电子邮件地址 ""%s"" 无效。" -"Invalid email address.","邮件地址无效。" -"Invalid file: %s","无效文件:%s" -"Invalid input data for %s => %s rate","%s的输入数据无效 => %s" -"Invalid parent block for this block","该块的父块无效" -"Invalid parent block for this block.","本块的父块无效。" -"Invalid password reset token.","无效的密码重设令牌。" -"Invalid sender name ""%s"". Please use only visible characters and spaces.","发送方姓名 ""%s"" 无效。请只使用可见字符与空格。" -"Invalid timezone","时区无效" -"Invalidated","撤销" -"Inventory Stock Status","盘点库存状态" -"Invoice #%s comment added","发票 #%s的评论已添加" -"Invoice #%s created","发票 #%s 已创建" -"Invoice History","发票历史" -"Invoice Totals","发票总数" -"Invoice canceling error.","发票取消时出错。" -"Invoice capturing error.","发票获取出错。" -"Invoice voiding error.","发票撤销出错。" -"Invoices","发票" -"Is Closed","已关闭" -"Issue Number","问题编号" -"Items","项目" -"JavaScript seems to be disabled in your browser.","你的浏览器似乎禁用了 JavaScript。" -"JavaScript/CSS","JavaScript/CSS" -"JavaScript/CSS Cache","JavaScript/CSS缓存" -"Kb","Kb" -"Last 24 Hours","过去24小时" -"Last 5 Orders","上五个订单" -"Last 5 Search Terms","上五个搜索条件" -"Last 7 Days","上七天" -"Last Credit Memo Created Date","上次信用记录创建日期" -"Last Invoice Created Date","上一个发票创建日期" -"Last Logged In (%s):","上次登录于(%s):" -"Last Logged In:","上次登录:" -"Last Name","姓氏" -"Last Name is required field.","姓氏是必要字段。" -"Last Name:","姓氏:" -"Last updated: %s. To refresh last day\'s statistics, click here.","上次更新: %s。要刷新最新一天的 状态,请点击这里。" -"Latest Message:","最新信息:" -"Layered Navigation Indices","层次式导航目录" -"Layered Navigation Indices were refreshed.","层次式导航目录已恢复。" -"Leave empty to use tax identifier","留空即可使用传真标识符" -"Lifetime Sales","终生销售" -"Lifetime statistics have been updated.","有效期状态已更新。" -"Links","链接" -"Links with associated products will retain only after saving current product.","关联产品的链接只有在保存当前产品后才能维持。" -"List (default) / Grid","列表(默认)/网格" -"List Only","仅列表" -"Load Template","加载模板" -"Load default template","加载默认模板" -"Loading...","正在加载..." -"Local Server","本地服务器" -"Local/Remote Server","本地/远程服务器" -"Locale","区域" -"Log Out","注销" -"Log in to Admin Panel","登录到管理面板" -"Log into Magento Admin Page","登录到Magento管理页面" -"Logged in as %s","登录为 %s" -"Login","登录" -"Low Stock","库存量低" -"MAJOR","主要" -"MINOR","少量" -"MS Excel XML","MS Excel XML" -"Magento Admin","Magento管理" -"Magento Commerce - Administrative Panel","Magento Commerce - 管理面板" -"Magento Connect","Magento内容" -"Magento Connect Manager","Magento连接管理器" -"Magento Logo","Magento徽标" -"Magento is a trademark of X.commerce, Inc. Copyright © %s X.commerce, Inc.","Magento是X.commerce, Inc.的商标, Copyright © %s X.commerce, Inc." -"Magento root directory","Magento 根目录" -"Magento ver. %s","Magento ver.%s" -"Magento® is a trademark of X.commerce, Inc.
Copyright © %s X.commerce, Inc.","Magento® 是X.commerce, Inc.的商标
Copyright © %s X.commerce, Inc." -"Make sure that data encoding in the file is consistent and saved in one of supported encodings (UTF-8 or ANSI).","确保该字段编码方式的一致,并使用可支持的编码方式保存(UTF-8或ANSI)。" -"Manage Attribute Sets","管理属性集" -"Manage Attributes","管理属性" -"Manage Categories","管理分类" -"Manage Content","管理内容" -"Manage Currency Rates","管理汇率" -"Manage Customers","管理客户" -"Manage Ratings","管理评级" -"Manage Stores","管理店铺" -"Manage Tax Rules","管理税务规则" -"Manage Tax Zones and Rates","管理税务区域与税率" -"Manual","手工" -"Matched Expression","匹配的表达式" -"Mb","Mb" -"Media (.avi, .flv, .swf)","多媒体(.avi、.flv、.swf)" -"Media storages synchronization has completed!","媒体存储的同步已完成!" -"Messages Inbox","收件箱" -"Month","月" -"Most Viewed","最受欢迎" -"Most Viewed Products","最受关注商品" -"Multiple Select","多选" -"My Account","我的帐户" -"N/A","N/A" -"NOTICE","注意" -"Name","姓名" -"Name:","姓名:" -"Never (production)","从未(生产)" -"New ","新" -"New API Key","新API Key" -"New Accounts","新帐户" -"New Attribute","新属性" -"New Block","新块" -"New Category","新分类" -"New Class","新类" -"New Condition","新条件" -"New Custom Variable","新自定义变量" -"New Customer","新顾客" -"New Customers","新客户" -"New Design Change","新设计变动" -"New Email Template","新组" -"New Group","新组" -"New Invoice","新发票" -"New Item Type","新项目类型" -"New Memo","新纪录" -"New Memo for #%s","#%s的新纪录" -"New Page","新页面" -"New Password","新密码" -"New Poll","新投票" -"New Profile","新配置文件" -"New Rate","新比例" -"New Rating","新评级" -"New Review","新评测" -"New Role","新角色" -"New Rule","新规则" -"New Search","新搜索" -"New Set","新集" -"New Shipment","新运单" -"New Sitemap","新站点结构图" -"New Store View","新店铺视图" -"New System Template","新系统模板" -"New Tag","新标签" -"New Template","新模板" -"New User","新用户" -"New Variable","新变量" -"New Website","新网站" -"New password field cannot be empty.","新密码字段不能为空。" -"Newsletter","新闻邮件" -"Newsletter Problems","新闻邮件问题" -"Newsletter Queue","新闻邮件队列" -"Newsletter Subscribers","新闻邮件订阅者" -"Newsletter Templates","新闻邮件模板" -"Next month (hold for menu)","下个月(按下可打开菜单)" -"Next year (hold for menu)","明年(按下可打开菜单)" -"No","否" -"No (price without tax)","无(不含税价格)" -"No Data","无数据" -"No Data Found","数据未找到" -"No Templates Found","模板未找到" -"No change","无变动" -"No customer id defined.","未定义自定义 ID。" -"No information available.","无可用信息。" -"No profile loaded...","未加载配置文件..." -"No records found for this period.","这段时期内未找到记录。" -"No records found.","未找到记录。" -"No report code specified.","未指定报告代码。" -"No search keywords.","无搜索关键字。" -"No search modules were registered","未注册搜索模块" -"No wishlist item id defined.","未定义愿望清单项目 ID。" -"None","无" -"Note:","注意:" -"Notes","注意" -"Notifications","通知" -"Orders","订单数量" -"Uses","用户数" -"Views","浏览数量" -"Number of records:","记录数量:" -"OK","确定" -"Old rate:","原本的比例:" -"One or more media files failed to be synchronized during the media storages syncronization process. Refer to the log file for details.","在媒体存储同步过程中,有一个或多个媒体文件的同步失败。详情请参考日志文件。" -"One or more of the Cache Types are invalidated:","一个或多个缓存类型已失效:" -"Online Customers","在线客户" -"Only Once (version upgrade)","仅一次(版本升级)" -"Only attributes with scope ""Global"", input type ""Dropdown"" and Use To Create Configurable Product ""Yes"" are available.","只有范围为 ""Global""、输入类型为 ""Dropdown"",并“允许”用于创建可配置产品的属性可以使用。" -"Only mapped fields","只映射字段" -"Optional","可选" -"Options","选项" -"Order","订单" -"Order %s","订单# %s" -"Order %s (%s)","订单 #%s(%s)" -"Order Created Date","订单创建日期" -"Order ID","订单 ID" -"Order Totals","订单总数" -"Order Updated Date","订单更新日期" -"Order Updated Date report is real-time, does not need statistics refreshing.","订单更新日期报告是实时的,不需要刷新状态。" -"Orders","订单" -"Original Magento attribute names in first row:","原始Magento属性名位于第一行:" -"Out of stock","缺货" -"PDT (Payment Data Transfer) Only","仅限PDT(支付数据传输)" -"Package Extensions","包括扩展" -"Pages","页面" -"Parent Product Thumbnail","父产品缩略图" -"Parent Transaction ID","父交易ID" -"Passive mode","主动模式" -"Password","密码" -"Password Confirmation","密码确认" -"Password confirmation must be same as password.","密码确认的密码必须一致。" -"Password must be at least of %d characters.","密码必须至少为 %s 个字符。" -"Password must include both numeric and alphabetic characters.","密码必须包含数字和字母字符。" -"Password:","密码:" -"Path:","路径:" -"PayPal Manager","贝宝经理" -"Payment method instance is not available.","支付方式不可用。" -"Payment method is not available.","支付方法不可用。" -"Payment method must be specified.","必须指定支付方法。" -"Pending Reviews","挂起的评测" -"Pending Tags","挂起的标记" -"Per Item","每商品" -"Per Order","每订单" -"Percent","百分之" -"Performed At","执行于" -"Interval","周期" -"Permanent (301)","永久 (301)" -"Permissions","权限" -"Personal Information","个人信息" -"Phone:","电话:" -"Please Select","请选择" -"Please confirm site switching. All data that hasn\'t been saved will be lost.","请确认网站参数。所有未保存数据都将丢失。" -"Please enter 6 or more characters.","请输入 6 个或更多个字符。" -"Please enter a number greater than 0 in this field.","请在该字段中输入大于0的数字。" -"Please enter a valid $ amount. For example $100.00.","请输入有效的金额,例如$100.00。" -"Please enter a valid URL. For example http://www.example.com or www.example.com","请输入有效的URL,例如http://www.example.com 或 www.example.com" -"Please enter a valid URL. http:// is required","请输入有效URL,需要包含 http://" -"Please enter a valid credit card number.","请输入有效的信用卡卡号。" -"Please enter a valid date.","请输入有效日期" -"Please enter a valid email address. For example johndoe@domain.com.","请输入有效邮件地址。例如johndoe@domain.com。" -"Please enter a valid email.","请输入有效邮件。" -"Please enter a valid number in this field.","请在此区域输入有效的数字。" -"Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890.","请输入有效的电话号码。例如 (123) 456-7890 或 123-456-7890。" -"Please enter a valid social security number. For example 123-45-6789.","请输入有效社会安全号码,例如123-45-6789。" -"Please enter a valid value from list","请从列表中输入有效的数值" -"Please enter a valid value, ex: 10,20,30","请输入有效值,例如10、20、30" -"Please enter a valid zip code.","请输入有效的邮政编码。" -"Please enter a valid zip code. For example 90602 or 90602-1234.","请输入有效邮编,例如90602或90602-1234。" -"Please enter another credit card number to complete your purchase.","请输入其他信用卡号码以完成您的购买。" -"Please enter password","请输入密码" -"Please enter password to confirm rollback.","请输入密码以确认回滚。" -"Please enter valid password.","请输入有效密码。" -"Please make sure that all global admin search modules are installed and activated.","请确保所有全球管理员搜索模块已安装并已激活。" -"Please make sure that your changes were saved before running the profile.","请确保在运行个人资料前,您的更改已保存。" -"Please make sure your passwords match.","请确保密码匹配。" -"Please select State/Province.","请选择州/省。" -"Please select a customer.","请选择一位客户。" -"Please select a store.","请选择一个店铺。" -"Please select an option.","请选择一个选项。" -"Please select catalog searches.","请选择类别搜索。" -"Please select customer(s).","请选择客户。" -"Please select message(s).","请选择信息。" -"Please select one of the above options.","请选择上列选项中的一个。" -"Please select one of the options.","请选择下列一个选项。" -"Please select review(s).","请选择评论。" -"Please select tag(s).","请选择标签。" -"Please specify backup creation options","请指定备份创建选项" -"Please specify the admin custom URL.","请指定管理用的自定义URL。" -"Please try to logout and sign in again.","请尝试注销并重新登录。" -"Please type the letters from the image:","请输入图像中的字母:" -"Please use in this field only ""a-z,0-9,_"".","请在该字段中只使用 ""a-z,0-9,_""。" -"Please use letters only (a-z) in this field.","请在此区域仅使用字母 (a-z)。" -"Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas.","请在该字段中只使用数字。请不要使用空格或其它字符,例如句点或逗号。" -"Please use only letters (a-z or A-Z), numbers (0-9) or spaces in this field.","在此字段内请仅使用字母(az或AZ)、数字(0-9)或空格。" -"Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed.","请在该字段中只使用字母(a-z)或数字(0-9)。不能使用空格或其它字符。" -"Please use only letters (a-z) or numbers (0-9) or spaces and # only in this field.","请在此区域仅使用字母 (a-z) 或数字 (0-9) 或空格以及 #。" -"Please use this date format: dd/mm/yyyy. For example 17/03/2006 for the 17th of March, 2006.","请使用这样的日期格式:dd/mm/yyyy。例如17/03/2006代表2006年3月17日。" -"Please wait while the indexes are being refreshed.","索引正在刷新,请等待。" -"Please wait, loading...","请稍候,正在加载..." -"Please wait...","请稍候..." -"Please, add some answers to this poll first.","请首先给该投票中添加一些问题。" -"Please, select ""Visible in Stores"" for this poll first.","请首先为该投票选择 “店铺中可见”。" -"Poll Manager","投票管理器" -"Polls","投票" -"Popular","流行" -"Position of Watermark for %s","%s 的水印位置" -"Pregenerated product images files.","预先生成产品图像文件。" -"Prev. month (hold for menu)","上个月(按下菜单)" -"Prev. year (hold for menu)","去年(按下可打开菜单)" -"Preview","预览" -"Preview Template","预览模板" -"Price","价格" -"Price alert subscription was saved.","价格警报订阅已保存。" -"Price:","价格:" -"Processed %s%% %s/%d records","已处理 %s%% %s/%d 记录" -"Product","产品" -"Product","产品名" -"Product Reviews","产品评测" -"Product Tax Classes","产品税率" -"Product Thumbnail Itself","产品缩略图本身" -"Product is not loaded.","产品未被加载。" -"Product:","产品:" -"Products","产品" -"Products Bestsellers Report","产品最佳销量报告" -"Products Most Viewed Report","浏览最多产品报告" -"Products Ordered","产品已下单" -"Products in Carts","购物车中的产品" -"Profile Action","配置文件操作" -"Profile Actions XML","配置文件操作XML" -"Profile Direction","配置文件指导" -"Profile History","配置文件历史" -"Profile Information","配置文件信息" -"Profile Name","配置文件名称" -"Profile Payments","配置文件支付" -"Profile Schedule","配置文件计划" -"Profile Wizard","配置文件向导" -"Profiles","配置文件" -"Promo","促销" -"Promotions","促销" -"Purchased Item","已购买内容" -"Put store on the maintenance mode while backup creation","创建备份时,将商店以维护模式运行" -"Put store on the maintenance mode while rollback processing","在进行回滚时将店铺置于维护模式" -"Quantity","数量" -"Queue Refresh","队列刷新" -"Queued... Cancel","已添加队列...取消" -"Radio Buttons","单选按钮" -"Rates","费率" -"Read details","阅读详情" -"Rebuild","重建" -"Rebuild Catalog Index","重建分类索引" -"Rebuild Flat Catalog Category","重建平坦分类类别" -"Rebuild Flat Catalog Product","重建平坦分类产品" -"Recent Orders","近期订单" -"Recent statistics have been updated.","最近更新的统计信息。" -"Recurring Profile View","循环配置文件视图" -"Recursive Dir","递归目录" -"Redirect","重定向" -"Reference","参考" -"Reference ID","参考ID" -"Refresh","刷新" -"Refresh Now*","立刻刷新*" -"Refresh Statistics","刷新状态" -"Region/State","地区/州" -"Regular Price:","常规价格:" -"Release","发布" -"Release Stability","释放稳定性" -"Release Version","发布版本" -"Reload captcha","刷新验证码" -"Remote FTP","远程FTP" -"Remove","删除" -"Reports","报告" -"Request Path","请求路径" -"Required","必须" -"Reset","重置状态" -"Reset Filter","重置筛选器" -"Reset Password","重设密码" -"Reset a Password","重置密码" -"Resize","调整大小" -"Resource Access","资源访问" -"Resources","资源" -"Results","结果" -"Retrieve Password","找回密码" -"Return Html Version","返回Html版本" -"Revenue","收入" -"Reviews","评测" -"Reviews and Ratings","评测与评级" -"Rewrite Rules","重写规则" -"Role ID","角色ID" -"Role Info","角色信息" -"Role Information","角色信息" -"Role Name","角色名称" -"Role Resources","角色资源" -"Role Users","角色用户" -"Roles","角色" -"Roles Resources","角色资源" -"Rotate CCW","轮换CCW" -"Rotate CW","循环CW" -"Run","运行" -"Run Profile","运行配置文件" -"Run Profile Inside This Window","在该窗口内运行配置文件" -"Run Profile in Popup","在弹出窗口内运行配置文件" -"Running... Kill","正在运行...结束" -"SKU","SKU" -"SKU:","SKU:" -"SSL Error: Invalid or self-signed certificate","SSL错误:无效的或自签名的证书" -"Sales","销售" -"Sales Report","销售报告" -"Samples","样本" -"Save","保存" -"Save & Generate","保存并生成" -"Save Account","保存帐户" -"Save Cache Settings","保存缓存设置" -"Save Config","保存配置" -"Save Currency Rates","保存汇率" -"Save Profile","保存配置文件" -"Save Role","保存角色" -"Save Template","保存模板" -"Save User","保存用户" -"Save and Continue Edit","保存并继续编辑" -"Search","搜索" -"Search Index","搜索索引" -"Search Term","搜索条件" -"Search Terms","搜索条件" -"Select","选择" -"Select All","全选" -"Select Category","选择分类" -"Select Date","选择日期" -"Select Range","选择范围" -"Select date","选择日期" -"Selected allowed currency ""%s"" is not available in installed currencies.","所选的允许币种 ""%s"" 不属于可使用币种。" -"Selected base currency is not available in installed currencies.","已按装的汇率中无法按照汇率进行选择。" -"Selected default display currency is not available in allowed currencies.","允许的币种中部允许选择默认显示的币种。" -"Selected default display currency is not available in installed currencies.","已安装的汇率无法选择默认显示的币种。" -"Self-assigned roles cannot be deleted.","无法选择自分配角色。" -"Sender","发送方" -"Separate Email","单独的邮件" -"Service Settings","服务设置" -"Set up & Customize","设置&自定义" -"Shipment #%s comment added","运单 #%s添加了评论" -"Shipment #%s created","运单 #%s已创建" -"Shipment Comments","运单评论" -"Shipment History","运送历史" -"Shipments","发货" -"Shipping","运送" -"Shipping Address","送货地址" -"Shipping Address: ","送货地址:" -"Shipping Origin","送货源头" -"Shipping Price","运费" -"Shipping address selection is not applicable","所选送货地址不可用" -"Shipping method must be specified.","必须指定运送方法。" -"Shipping method selection is not applicable","所选送货方法不可用" -"Shopping Cart","购物车" -"Shopping Cart Price Rules","购物车价格规则" -"Shopping Cart from %s","%s 的购物车" -"Show By","显示条件" -"Show Report For:","显示报告:" -"Show Reviews","显示评测" -"Sitemap Information","站点结构图信息" -"Size for %s","%s的大小" -"Skip Category Selection","跳过分类的选择" -"Some items in this order have different invoice and shipment types. You can create shipment only after the invoice is created.","该订单中的某些项目具有不同的发票和送货类型。您只能在创建发票后创建运单。" -"Some of the ordered items do not exist in the catalog anymore and will be removed if you try to edit the order.","订购的某些商品已经不再包含在分类中,如果尝试修改订单,将会被删除。" -"Sorry, this feature is coming soon...","对不起,该功能尚未发布..." -"Special Price:","特殊价格:" -"Specific Countries","指定国家" -"Specified","已指定" -"Specified profile does not exist.","指定的配置文件不存在。" -"Spreadsheet Name:","表格名称:" -"Start Date","开始日期" -"Starting profile execution, please wait...","开始执行配置文件,请稍候..." -"State/Province:","州/省:" -"Static Blocks","静态块" -"Status","状态" -"Status:","状态:" -"Stock Quantity:","存货数量:" -"Stock notification was saved.","库存通知已保存。" -"Store","商店" -"Store Email Addresses Section","店铺邮件地址区域" -"Store View","店铺视图" -"Store:","店铺:" -"Stores","店铺" -"Subject","主题" -"Submit","提交" -"Subpackage cannot be conflicting.","子包不能冲突。" -"Subtotal","小计" -"Switch/Solo/Maestro Only","仅限 Switch/Solo/Maestro" -"Synchronization is required.","需要进行同步。" -"Synchronization of media storages has been successfully completed.","媒体存储的同步已经成功完成。" -"Synchronize","同步" -"Synchronizing %s to %s","同步 %s 到 %s" -"Synchronizing...","正在同步..." -"System","系统" -"System Section","系统区域" -"System busy","系统忙碌" -"Tags","标签" -"Target Path","目标路径" -"Tax","传真" -"Tb","Tb" -"Template","模板" -"Template Content","模板内容" -"Template Information","模板信息" -"Template","模板名称" -"Template Styles","模板风格" -"Template Subject","模板主题" -"Template Type","模板类型" -"Temporary (302)","临时(302)" -"Terms and Conditions","条款和条件" -"Text","文字" -"The Catalog Rewrites were refreshed.","该分类重写已重建。" -"The CatalogInventory Stock Status has been rebuilt.","CatalogInventory库存状态已重建。" -"The Comment Text field cannot be empty.","该评论文本框不能为空。" -"The Flat Catalog Product was rebuilt","Flat分类产品已重建" -"The JavaScript/CSS cache has been cleaned.","JavaScript/CSS缓存已清空。" -"The JavaScript/CSS cache has been cleared.","JavaScript/CSS 缓存已被清空。" -"The Layered Navigation indexing has been queued.","分层导航索引已排入队列。" -"The Layered Navigation indexing queue has been canceled.","分层导航索引队列已被删除。" -"The Layered Navigation indices were refreshed.","层次式导航目录已恢复。" -"The Layered Navigation process has been queued to be killed.","已排入队列的分层导航进程将被中止。" -"The Magento cache storage has been flushed.","Magento缓存存储已清理。" -"The URL Rewrite has been deleted.","URL 重写已被删除。" -"The URL Rewrite has been saved.","URL 重写已保存。" -"The account has been saved.","帐户已保存。" -"The archive can be uncompressed with %s on Windows systems","Windows系统下存档的解压缩可使用 %s" -"The attribute set has been removed.","属性集已删除。" -"The backup's creation process will take time.","备份创建过程需要一些时间。" -"The billing agreement has been canceled.","账单协议已被取消。" -"The billing agreement has been deleted.","记账协议已删除。" -"The cache storage has been flushed.","缓存存储已清理。" -"The carrier needs to be specified.","需要指定承运人。" -"The catalog index has been rebuilt.","分类索引已重建。" -"The catalog rewrites have been refreshed.","分类重写已恢复。" -"The configuration has been saved.","配置已保存。" -"The credit memo has been canceled.","贷项凭单已被取消。" -"The credit memo has been created.","信用记录已创建。" -"The credit memo has been voided.","贷项凭单已作废。" -"The custom variable has been deleted.","自定义变量已删除。" -"The custom variable has been saved.","自定义变量已保存。" -"The customer has been deleted.","客户已被删除。" -"The customer has been saved.","客户已保存。" -"The design change has been deleted.","设计变动已删除。" -"The design change has been saved.","设计变更已保存。" -"The email address is empty.","电子邮件地址为空。" -"The email template has been deleted.","电子邮件模版已被删除。" -"The email template has been saved.","邮件模板已保存。" -"The flat catalog category has been rebuilt.","平面目录类别已重建。" -"The group node name must be specified with field node name.","群组节点名称并需以域节点名称指定。" -"The image cache was cleaned.","图片缓存已被清空。" -"The image cache was cleared.","图像缓存已清理。" -"The invoice and shipment have been created.","发票与运送已创建。" -"The invoice and the shipment have been created. The shipping label cannot be created at the moment.","发票与运送已创建。目前无法更改发货标签。" -"The invoice has been canceled.","发票已被取消。" -"The invoice has been captured.","发票已被捕获。" -"The invoice has been created.","发票已创建。" -"The invoice has been voided.","发票已作废。" -"The invoice no longer exists.","清单不存在。" -"The item %s (SKU %s) does not exist in the catalog anymore.","项目 %s (SKU %s) 已不在该编录中。" -"The order does not allow creating an invoice.","该订单不允许创建发票。" -"The order no longer exists.","该订单已不存在。" -"The poll has been deleted.","调查已被删除。" -"The poll has been saved.","调查已保存。" -"The profile has been deleted.","个人资料已被删除。" -"The profile has been saved.","个人资料已保存。" -"The profile has been updated.","个人资料已更新。" -"The profile has no changes.","个人资料无变化。" -"The profile you are trying to save no longer exists","您尝试保存的配置文件不存在" -"The rating has been deleted.","评级已被删除。" -"The rating has been saved.","评级已保存。" -"The role has been deleted.","角色已被删除。" -"The role has been saved.","角色已保存。" -"The role has been successfully saved.","角色已成功保存。" -"The search index has been rebuilt.","搜索索引已重建。" -"The shipment has been created.","货物已被创建。" -"The shipment has been sent.","货物已发送。" -"The shipping label has been created.","运送标签已创建。" -"The tag has been deleted.","标签已被删除。" -"The tag has been saved.","标签已保存。" -"The transaction details have been updated.","已更新交易详情。" -"The user has been deleted.","用户已被删除。" -"The user has been saved.","用户已保存。" -"Themes JavaScript and CSS files combined to one file.","主题 JavaScript 和 CSS 文件已合并为单个文件。" -"There is an error in one of the option rows.","选项行之一出现错误。" -"This Account is","该账户为" -"This Email template no longer exists.","电子邮件模板已不存在。" -"This Role no longer exists","该角色已不存在" -"This Role no longer exists.","该角色已不存在。" -"This account is","该帐户为" -"This account is inactive.","该账户未被激活。" -"This action cannot be undone.","该行为不可取消。" -"This attribute set does not have attributes which we can use for configurable product","该属性集不具有我们可用于可配置产品的属性" -"This attribute shares the same value in all the stores","该属性在所有商店中共享同样的数值" -"This is a demo store. Any orders placed through this store will not be honored or fulfilled.","这是一个演示商店。任何在此商店下的订单将无法被兑现或履行。" -"This is a required field.","这是必填区域。" -"This product is currently disabled.","该产品当前已被禁用。" -"This report depends on timezone configuration. Once timezone is changed, the lifetime statistics need to be refreshed.","该报告取决于时区配置。一旦时区发生变更,有效期统计数据即需要被刷新。" -"This section is not allowed.","该单元不被允许。" -"This user no longer exists.","该用户已不存在。" -"Time","时间" -"Time selection:","时间选择:" -"Time:","时间:" -"Timeout limit for response from synchronize process was reached.","同步操作中的响应超时限制已达到。" -"To","发送至" -"To cancel pending authorizations and release amounts that have already been processed during this payment, click Cancel.","要取消挂起的授权,并释放支付过程中已经被处理的授权,请点击取消。" -"To use PayPal Payflow Link you must configure some settings in your Payflow account by logging into","要使用 Payflow 链接,您必须在 Paypal 网站配置您的 Payflow 链接帐户。" -"To use PayPal Payments Advanced you must configure some settings in your PayPal Payments Advanced account by logging into","要使用 PayPal Payments Advanced,你必须在自己的 PayPal Payments Advanced 账户中配置一些选项,为此请登录" -"Toggle Editor","切换编辑器" -"Tools","工具" -"Top 5 Search Terms","前五位搜索条件" -"Total","总数" -"Total Invoiced","发票总量" -"Total","订单总数量" -"Total Refunded","退款总量" -"Total of %d record(s) have been deleted.","总共%d记录已被删除。" -"Total of %d record(s) have been updated.","总共%d记录已被更新。" -"Total of %d record(s) were canceled.","总共取消了 %d 条记录。" -"Total of %d record(s) were deleted","共删除 %d 条记录" -"Total of %d record(s) were deleted.","共删除 %d 条记录。" -"Total of %d record(s) were updated","共更新 %d 条记录" -"Total of %d record(s) were updated.","共更新 %d 条记录。" -"Track Order","追踪订单" -"Track this shipment","追踪该运单" -"Tracking number %s for %s assigned","为%s分配的追踪号 %s" -"Tracking number cannot be empty.","追踪号不能为空。" -"Transaction Data","交易数据" -"Transaction Details","交易详情" -"Transaction ID","交易ID" -"Transaction Type","交易类型" -"Transactional Emails","交易邮件" -"Transactions","交易" -"Type","类型" -"Type:","类型:" -"URL Rewrite","URL重写" -"URL Rewrite Information","URL重写信息" -"URL Rewrite Management","URL重写管理" -"Unable to cancel the credit memo.","无法取消信用记录。" -"Unable to find a Email Template to delete.","无法找到要删除的邮件模板。" -"Unable to find a poll to delete.","无法找到要删除的投票。" -"Unable to find a tag to delete.","无法找到要删除的标签。" -"Unable to find a user to delete.","无法找到要删除的用户。" -"Unable to initialize import model","无法初始化导入模块。" -"Unable to refresh lifetime statistics.","无法刷新有效期状态。" -"Unable to refresh recent statistics.","无法刷新最新状态。" -"Unable to save Cron expression","无法保存Cron扩展" -"Unable to save the cron expression.","无法保存Cron表达式。" -"Unable to save the invoice.","无法保存该发票。" -"Unable to send the invoice email.","无法发送发票邮件。" -"Unable to send the shipment email.","无法发送运送邮件。" -"Unable to update transaction details.","无法更新交易详情。" -"Unable to void the credit memo.","无法避免信用记录。" -"Unknown","未知" -"Unlimited","无限" -"Update","更新" -"Updated At","更新于" -"Upload File","上传文件" -"Upload Files","上传文件" -"Upload HTTP Error","上传HTTP错误" -"Upload I/O Error","上传I/O错误" -"Upload Security Error","上传安全错误" -"Upload import file","上传导入文件" -"Uploaded file is larger than %.2f kilobytes allowed by server","上传文件过大,超过服务器许可值 %.2f 千字节" -"Use All Available Attributes","使用全部可用属性" -"Use Config Settings","使用配置设置" -"Use Default","使用默认值" -"Use Default Value","使用默认值" -"Use Default Variable Values","使用默认变量值" -"Use FTP Connection","使用 FTP 连接" -"Use Website","使用网站" -"Used Currently For","当前用于" -"Used as Default For","用作默认值" -"User Email","用户邮件" -"User ID","用户ID" -"User Info","用户信息" -"User Information","用户信息" -"User Name","用户名" -"User Name is required field.","用户名是必要字段。" -"User Name:","用户名:" -"User Password","用户密码" -"User Role","用户角色" -"User Roles","用户角色" -"User Roles Information","用户角色信息" -"User name","用户名" -"Users","用户" -"VAT Number is Invalid","VAT 号码无效" -"VAT Number is Valid","VAT 号码有效" -"Validation Results","验证结果" -"Value","值" -"Value Delimiter:","值界定符:" -"Variable","变量" -"Variable Code","变量代码" -"Variable HTML Value","变量HTML值" -"Variable ID","变量ID" -"Variable Name","变量名称" -"Variable Plain Value","变量平坦值" -"View Actions XML","查看操作XML" -"View Full Size","查看完整尺寸" -"View Memo","查看记录" -"View Memo for #%s","查看 #%s的记录" -"View Shipment","查看运送" -"View Statistics For:","查看统计:" -"Visibility:","可见性:" -"Warning","警告" -"Warning! Empty value can cause problems with CSV format.","警告!空值将导致CSV格式出问题。" -"Warning!\r\nThis action will remove this user from already assigned role\r\nAre you sure?","警告!\r\n该操作会将用户从已分配的角色中删除\r\n是否继续?" -"Warning!\r\nThis action will remove those users from already assigned roles\r\nAre you sure?","警告!\r\n该操作将从已分配的角色中将这些用户删除\r\n您是否真要这样做?" -"Warning: Please do not close the window during importing/exporting data","警告:请不要在导入/导出数据过程中关闭该窗口" -"Watermark File for %s","%s的水印文件" -"We appreciate our merchants\' feedback, please take our survey to provide insight on the features you would like included in Magento. Remove this notification","我们要感谢所用的银行\' 若有反馈,请 参与我们的调查 以便告诉我们您希望在以后的Magento中看到哪些新功能。 删除该通知" -"We\'re in our typing table, coding away more features for Magento. Thank you for your patience.","我们正在辛苦工作中,为Magento添加更多功能。感谢您的耐心。" -"Web Section","Web区域" -"Web Services","Web服务" -"Web services","Web服务" -"Website","网站" -"What is this?","这是什么?" -"Wishlist Report","愿望清单报告" -"Wishlist item is not loaded.","愿望清单项编号未被加载。" -"Wrong account specified.","指定的账户有误。" -"Wrong billing agreement ID specified.","指定的记账协议ID有误。" -"Wrong column format.","栏格式有误。" -"Wrong newsletter template.","错误的新闻邮件模板。" -"Wrong quote item.","引用项有误。" -"Wrong tab configuration.","选项卡配置有误。" -"Wrong tag was specified.","指定的选项卡有误。" -"Wrong transaction ID specified.","指定的交易ID有误。" -"XML","XML" -"XML data is invalid.","XML数据无效。" -"XML object is not instance of ""Varien_Simplexml_Element"".","XML对象并非“Varien_Simplexml_Element”的实例。" -"YTD","YTD" -"Year","年" -"Yes","是" -"Yes (301 Moved Permanently)","是(301 永久移动)" -"Yes (302 Found)","是(302找到)" -"Yes (only price with tax)","是(只显示含税价格)" -"You cannot delete your own account.","您无法删除自己的帐户。" -"You have %s unread message(s).","您有 %s 封未读邮件。" -"You have %s unread message(s). Go to messages inbox.","你有 %s 条未读信息。 转向收件箱。" -"You have %s, %s and %s unread messages. Go to messages inbox.","你有 %s、%s 以及 %s 条未读信息。 转向收件箱。" -"You have logged out.","您已注销。" -"You have not enough permissions to use this functionality.","您没有使用该功能所需的足够权限。" -"You must have JavaScript enabled in your browser to utilize the functionality of this website.","您必须在浏览器中启用JavaScript才能使用本网站的功能。" -"You need to specify order items.","您必须指定订单项。" -"You will need to wait when the action ends.","该行为终止时需要等待。" -"Your answers contain duplicates.","您的回答包含重复内容。" -"Your password has been updated.","你的密码已更新。" -"Your password reset link has expired.","你的密码重设链接已过期。" -"Your server PHP settings allow you to upload files not more than %s at a time. Please modify post_max_size (currently is %s) and upload_max_filesize (currently is %s) values in php.ini if you want to upload larger files.","您的服务器PHP设置使您可以同时上传不超过 %s 文件。如果想上传大文件,请修改php.ini文件中的 post_max_size (当前为 %s)与 upload_max_filesize (当前为 %s)值。" -"Your web server is configured incorrectly. As a result, configuration files with sensitive information are accessible from the outside. Please contact your hosting provider.","您的Web服务器配置有误。因此,包含敏感信息的配置文件将能从外部访问。请联系您的主机托管商。" -"Zip/Postal Code","邮政编码" -"Zip/Postal Code:","邮编:" -"[ deleted ]","[已删除]" -"[GLOBAL]","[全局]" -"[STORE VIEW]","[店铺视图]" -"[WEBSITE]","[网站]" -"b","b" -"close","关闭" -"critical","重要" -"example: ""sitemap/"" or ""/"" for base path (path must be writeable)","例如: ""sitemap/"" 或 ""/"" 可代表路径根(路径必须可写)" -"example: sitemap.xml","例如:sitemap.xml" -"failed","失败" -"from","来自" -"major","主要" -"minor","次要" -"notice","注意" -"store(%s) scope","店铺 (%s)范围" -"successful","成功" -"to","至" -"website(%s) scope","网站(%s)范围" -"{{base_url}} is not recommended to use in a production environment to declare the Base Unsecure URL / Base Secure URL. It is highly recommended to change this value in your Magento configuration.","不建议在生产环境中使用 {{base_url}} 检测 Base Unsecure URL / Base Secure URL。强烈建议在您的 Magento 配置中更改该值。" diff --git a/app/code/Magento/Authorizenet/Controller/Adminhtml/Authorizenet/Directpost/Payment.php b/app/code/Magento/Authorizenet/Controller/Adminhtml/Authorizenet/Directpost/Payment.php index f9a951dd5bb4a..c8604a910610f 100644 --- a/app/code/Magento/Authorizenet/Controller/Adminhtml/Authorizenet/Directpost/Payment.php +++ b/app/code/Magento/Authorizenet/Controller/Adminhtml/Authorizenet/Directpost/Payment.php @@ -62,11 +62,11 @@ protected function _getDirectPostSession() /** * Retrieve session object * - * @return \Magento\Adminhtml\Model\Session\Quote + * @return \Magento\Backend\Model\Session\Quote */ protected function _getOrderSession() { - return $this->_objectManager->get('Magento\Adminhtml\Model\Session\Quote'); + return $this->_objectManager->get('Magento\Backend\Model\Session\Quote'); } /** @@ -149,11 +149,11 @@ public function placeAction() } catch (\Magento\Core\Exception $e) { $message = $e->getMessage(); if (!empty($message)) { - $this->_getSession()->addError($message); + $this->messageManager->addError($message); } $isError = true; } catch (\Exception $e) { - $this->_getSession()->addException($e, __('Order saving error: %1', $e->getMessage())); + $this->messageManager->addException($e, __('Order saving error: %1', $e->getMessage())); $isError = true; } @@ -206,8 +206,8 @@ public function redirectAction() //clear sessions $this->_getSession()->clearStorage(); $this->_getDirectPostSession()->removeCheckoutOrderIncrementId($redirectParams['x_invoice_num']); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->clearStorage(); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess(__('You created the order.')); + $this->_objectManager->get('Magento\Backend\Model\Session')->clearStorage(); + $this->messageManager->addSuccess(__('You created the order.')); } if (!empty($redirectParams['error_msg'])) { diff --git a/app/code/Magento/Authorizenet/Helper/Backend.php b/app/code/Magento/Authorizenet/Helper/Backend.php index 45d87e2370344..a1346be1ffd75 100644 --- a/app/code/Magento/Authorizenet/Helper/Backend.php +++ b/app/code/Magento/Authorizenet/Helper/Backend.php @@ -31,27 +31,6 @@ */ class Backend extends Data { - /** - * @var \Magento\Backend\Model\Url - */ - protected $_urlBuilder; - - /** - * @param \Magento\App\Helper\Context $context - * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Sales\Model\OrderFactory $orderFactory - * @param \Magento\Backend\Model\Url $urlBuilder - */ - public function __construct( - \Magento\App\Helper\Context $context, - \Magento\Core\Model\StoreManager $storeManager, - \Magento\Sales\Model\OrderFactory $orderFactory, - \Magento\Backend\Model\Url $urlBuilder - ) { - parent::__construct($context, $storeManager, $orderFactory); - $this->_urlBuilder = $urlBuilder; - } - /** * Return URL for admin area * diff --git a/app/code/Magento/Authorizenet/Model/Directpost.php b/app/code/Magento/Authorizenet/Model/Directpost.php index 878c38cfcd87d..811287383a897 100644 --- a/app/code/Magento/Authorizenet/Model/Directpost.php +++ b/app/code/Magento/Authorizenet/Model/Directpost.php @@ -76,7 +76,7 @@ class Directpost extends \Magento\Paygate\Model\Authorizenet * @param \Magento\Paygate\Model\Authorizenet\RequestFactory $requestFactory * @param \Magento\Paygate\Model\Authorizenet\ResultFactory $resultFactory * @param \Magento\Sales\Model\OrderFactory $orderFactory - * @param \Magento\Core\Model\Session\AbstractSession $session + * @param \Magento\Session\SessionManagerInterface $session * @param \Magento\Paygate\Helper\Data $paygateData * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Sales\Model\QuoteFactory $quoteFactory @@ -99,7 +99,7 @@ public function __construct( \Magento\Paygate\Model\Authorizenet\RequestFactory $requestFactory, \Magento\Paygate\Model\Authorizenet\ResultFactory $resultFactory, \Magento\Sales\Model\OrderFactory $orderFactory, - \Magento\Core\Model\Session\AbstractSession $session, + \Magento\Session\SessionManagerInterface $session, \Magento\Paygate\Helper\Data $paygateData, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Sales\Model\QuoteFactory $quoteFactory, diff --git a/app/code/Magento/Authorizenet/Model/Directpost/Session.php b/app/code/Magento/Authorizenet/Model/Directpost/Session.php index e7e3dfb566fd9..bb196669faae2 100644 --- a/app/code/Magento/Authorizenet/Model/Directpost/Session.php +++ b/app/code/Magento/Authorizenet/Model/Directpost/Session.php @@ -24,33 +24,34 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -/** - * Authorize.net DirectPost session model. - * - * @category Magento - * @package Magento_Authorizenet - * @author Magento Core Team - */ namespace Magento\Authorizenet\Model\Directpost; -class Session extends \Magento\Core\Model\Session\AbstractSession +/** + * Authorize.net DirectPost session model + */ +class Session extends \Magento\Session\SessionManager { /** - * @param \Magento\Core\Model\Session\Context $context + * @param \Magento\App\RequestInterface $request * @param \Magento\Session\SidResolverInterface $sidResolver * @param \Magento\Session\Config\ConfigInterface $sessionConfig - * @param null $sessionName - * @param array $data + * @param \Magento\Session\SaveHandlerInterface $saveHandler + * @param \Magento\Session\ValidatorInterface $validator + * @param \Magento\Session\StorageInterface $storage + * @param string|null $sessionName + * @internal param array $data */ public function __construct( - \Magento\Core\Model\Session\Context $context, + \Magento\App\RequestInterface $request, \Magento\Session\SidResolverInterface $sidResolver, \Magento\Session\Config\ConfigInterface $sessionConfig, - $sessionName = null, - array $data = array() + \Magento\Session\SaveHandlerInterface $saveHandler, + \Magento\Session\ValidatorInterface $validator, + \Magento\Session\StorageInterface $storage, + $sessionName = null ) { - parent::__construct($context, $sidResolver, $sessionConfig, $data); - $this->start('authorizenet_directpost', $sessionName); + parent::__construct($request, $sidResolver, $sessionConfig, $saveHandler, $validator, $storage); + $this->start($sessionName); } /** diff --git a/app/code/Magento/Authorizenet/etc/adminhtml/di.xml b/app/code/Magento/Authorizenet/etc/adminhtml/di.xml index dd7d4918ccc91..4128264c12735 100644 --- a/app/code/Magento/Authorizenet/etc/adminhtml/di.xml +++ b/app/code/Magento/Authorizenet/etc/adminhtml/di.xml @@ -32,7 +32,7 @@ - + diff --git a/app/code/Magento/Authorizenet/etc/adminhtml/routes.xml b/app/code/Magento/Authorizenet/etc/adminhtml/routes.xml index 2b2a270c359ca..4741226fd4eab 100644 --- a/app/code/Magento/Authorizenet/etc/adminhtml/routes.xml +++ b/app/code/Magento/Authorizenet/etc/adminhtml/routes.xml @@ -26,7 +26,7 @@ - + - \ No newline at end of file + diff --git a/app/code/Magento/Authorizenet/etc/di.xml b/app/code/Magento/Authorizenet/etc/di.xml index efdc687d4618b..46ab7defb96d4 100644 --- a/app/code/Magento/Authorizenet/etc/di.xml +++ b/app/code/Magento/Authorizenet/etc/di.xml @@ -32,4 +32,14 @@ + + + authorizenet_directpost + + + + + + + diff --git a/app/code/Magento/Authorizenet/etc/module.xml b/app/code/Magento/Authorizenet/etc/module.xml index efba0d75d9cdd..e63bb0bbf24ed 100755 --- a/app/code/Magento/Authorizenet/etc/module.xml +++ b/app/code/Magento/Authorizenet/etc/module.xml @@ -34,7 +34,6 @@ - diff --git a/app/code/Magento/Backend/App/AbstractAction.php b/app/code/Magento/Backend/App/AbstractAction.php index 58259d8b1fe21..3628ae730a235 100644 --- a/app/code/Magento/Backend/App/AbstractAction.php +++ b/app/code/Magento/Backend/App/AbstractAction.php @@ -134,6 +134,14 @@ protected function _getSession() return $this->_session; } + /** + * @return \Magento\Message\ManagerInterface + */ + protected function getMessageManager() + { + return $this->messageManager; + } + /** * Define active menu item in menu block * @param string $itemId current active menu item @@ -209,7 +217,7 @@ private function _moveBlockToContainer(\Magento\View\Element\AbstractBlock $bloc /** * @param \Magento\App\RequestInterface $request - * @return $this|mixed + * @return \Magento\App\ResponseInterface */ public function dispatch(\Magento\App\RequestInterface $request) { @@ -218,7 +226,8 @@ public function dispatch(\Magento\App\RequestInterface $request) } if ($request->isDispatched() && $request->getActionName() !== 'denied' && !$this->_isAllowed()) { - return $this->_forward('denied'); + $this->_forward('denied'); + return $this->_response; } if ($this->_isUrlChecked()) { @@ -334,7 +343,7 @@ protected function _redirect($path, $arguments=array()) { $this->_getSession()->setIsUrlNotice($this->_actionFlag->get('', self::FLAG_IS_URLS_CHECKED)); $this->getResponse()->setRedirect($this->getUrl($path, $arguments)); - return $this; + return $this->getResponse(); } protected function _forward($action, $controller = null, $module = null, array $params = null) @@ -381,7 +390,7 @@ protected function _validateSecretKey() */ protected function _outTemplate($tplName, $data = array()) { - $this->_view->getLayout()->initMessages('Magento\Backend\Model\Session'); + $this->_view->getLayout()->initMessages(); $block = $this->_view->getLayout() ->createBlock('Magento\Backend\Block\Template')->setTemplate("{$tplName}.phtml"); foreach ($data as $index => $value) { diff --git a/app/code/Magento/Backend/App/Action/Context.php b/app/code/Magento/Backend/App/Action/Context.php index c0728e95e4182..79b0b88f3f8b3 100644 --- a/app/code/Magento/Backend/App/Action/Context.php +++ b/app/code/Magento/Backend/App/Action/Context.php @@ -85,6 +85,7 @@ class Context extends \Magento\App\Action\Context * @param \Magento\App\Response\RedirectInterface $redirect * @param \Magento\App\ActionFlag $actionFlag * @param \Magento\App\ViewInterface $view + * @param \Magento\Message\ManagerInterface $messageManager * @param \Magento\Backend\Model\Session $session * @param \Magento\AuthorizationInterface $authorization * @param \Magento\Backend\Model\Auth $auth @@ -104,6 +105,7 @@ public function __construct( \Magento\App\Response\RedirectInterface $redirect, \Magento\App\ActionFlag $actionFlag, \Magento\App\ViewInterface $view, + \Magento\Message\ManagerInterface $messageManager, \Magento\Backend\Model\Session $session, \Magento\AuthorizationInterface $authorization, \Magento\Backend\Model\Auth $auth, @@ -114,7 +116,17 @@ public function __construct( \Magento\Core\Model\LocaleInterface $locale, $canUseBaseUrl = false ) { - parent::__construct($request, $response, $objectManager, $eventManager, $url, $redirect, $actionFlag, $view); + parent::__construct( + $request, + $response, + $objectManager, + $eventManager, + $url, + $redirect, + $actionFlag, + $view, + $messageManager + ); $this->_session = $session; $this->_authorization = $authorization; diff --git a/app/code/Magento/Backend/App/Action/Plugin/Authentication.php b/app/code/Magento/Backend/App/Action/Plugin/Authentication.php index 9013a9d6d49ca..695d5a2b2852b 100644 --- a/app/code/Magento/Backend/App/Action/Plugin/Authentication.php +++ b/app/code/Magento/Backend/App/Action/Plugin/Authentication.php @@ -49,11 +49,6 @@ class Authentication */ protected $_url; - /** - * @var \Magento\Backend\Model\Session - */ - protected $_session; - /** * @var \Magento\App\ResponseInterface */ @@ -64,25 +59,30 @@ class Authentication */ protected $_actionFlag; + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * @param \Magento\Backend\Model\Auth $auth - * @param \Magento\Backend\Model\Session $session * @param \Magento\Backend\Model\Url $url * @param \Magento\App\ResponseInterface $response * @param \Magento\App\ActionFlag $actionFlag + * @param \Magento\Message\ManagerInterface $messageManager */ public function __construct( \Magento\Backend\Model\Auth $auth, - \Magento\Backend\Model\Session $session, \Magento\Backend\Model\Url $url, \Magento\App\ResponseInterface $response, - \Magento\App\ActionFlag $actionFlag + \Magento\App\ActionFlag $actionFlag, + \Magento\Message\ManagerInterface $messageManager ) { $this->_auth = $auth; - $this->_session = $session; $this->_url = $url; $this->_response = $response; $this->_actionFlag = $actionFlag; + $this->messageManager = $messageManager; } /** @@ -160,7 +160,7 @@ protected function _performLogin(\Magento\App\RequestInterface $request) $this->_auth->login($username, $password); } catch (\Magento\Backend\Model\Auth\Exception $e) { if (!$request->getParam('messageSent')) { - $this->_session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $request->setParam('messageSent', true); $outputValue = false; } @@ -193,4 +193,4 @@ protected function _redirectIfNeededAfterLogin(\Magento\App\RequestInterface $re $this->_actionFlag->set('', \Magento\App\Action\Action::FLAG_NO_DISPATCH, true); return true; } -} \ No newline at end of file +} diff --git a/app/code/Magento/Backend/App/Response/Http/FileFactory.php b/app/code/Magento/Backend/App/Response/Http/FileFactory.php index 2facf5afe453f..faf4961a21d8c 100644 --- a/app/code/Magento/Backend/App/Response/Http/FileFactory.php +++ b/app/code/Magento/Backend/App/Response/Http/FileFactory.php @@ -36,9 +36,9 @@ class FileFactory extends \Magento\App\Response\Http\FileFactory protected $_backendUrl; /** - * @var \Magento\App\ResponseFactory + * @var \Magento\App\ResponseInterface */ - protected $_responseFactory; + protected $_response; /** * @var \Magento\Backend\Model\Session @@ -56,7 +56,7 @@ class FileFactory extends \Magento\App\Response\Http\FileFactory protected $_helper; /** - * @param \Magento\App\ResponseFactory $responseFactory + * @param \Magento\App\ResponseInterface $response * @param \Magento\Filesystem $filesystem * @param \Magento\Backend\Model\Auth $auth * @param \Magento\Backend\Model\Url $backendUrl @@ -65,7 +65,7 @@ class FileFactory extends \Magento\App\Response\Http\FileFactory * @param \Magento\Backend\Helper\Data $helper */ public function __construct( - \Magento\App\ResponseFactory $responseFactory, + \Magento\App\ResponseInterface $response, \Magento\Filesystem $filesystem, \Magento\Backend\Model\Auth $auth, \Magento\Backend\Model\Url $backendUrl, @@ -78,7 +78,7 @@ public function __construct( $this->_session = $session; $this->_flag = $flag; $this->_helper = $helper; - parent::__construct($responseFactory, $filesystem); + parent::__construct($response, $filesystem); } @@ -94,9 +94,8 @@ protected function _redirect($path, $arguments=array()) { $this->_session ->setIsUrlNotice($this->_flag->get('', \Magento\Backend\App\AbstractAction::FLAG_IS_URLS_CHECKED)); - $response = $this->_responseFactory->create(); - $response->setRedirect($this->_helper->getUrl($path, $arguments)); - return $response; + $this->_response->setRedirect($this->_helper->getUrl($path, $arguments)); + return $this->_response; } /** @@ -112,9 +111,8 @@ protected function _redirect($path, $arguments=array()) public function create($fileName, $content, $contentType = 'application/octet-stream', $contentLength = null) { if ($this->_auth->getAuthStorage()->isFirstPageAfterLogin()) { - $response = $this->_redirect($this->_backendUrl->getStartupPageUrl()); - return $response; + return $this->_redirect($this->_backendUrl->getStartupPageUrl()); } return parent::create($fileName, $content, $contentType, $contentLength); } -} \ No newline at end of file +} diff --git a/app/code/Magento/Backend/App/Router/DefaultRouter.php b/app/code/Magento/Backend/App/Router/DefaultRouter.php index bde535d4029a3..cc7dee3e9de7a 100644 --- a/app/code/Magento/Backend/App/Router/DefaultRouter.php +++ b/app/code/Magento/Backend/App/Router/DefaultRouter.php @@ -160,24 +160,20 @@ protected function _shouldRedirectToSecure() /** * Build controller class name based on moduleName and controllerName * - * @param string $realModule + * @param string $module * @param string $controller * @return string */ - public function getControllerClassName($realModule, $controller) + public function getControllerClassName($module, $controller) { /** - * Start temporary block - * TODO: Sprint#27. Delete after adminhtml refactoring + * TODO: Delete these lines after adminhtml module is removed */ - if ($realModule == 'Magento_Adminhtml') { - return parent::getControllerClassName($realModule, $controller); + if ($module == 'Magento_Adminhtml') { + return parent::getControllerClassName($module, $controller); } - /** - * End temporary block - */ - $parts = explode('_', $realModule); + $parts = explode('_', $module); $parts = array_splice($parts, 0, 2); $parts[] = 'Controller'; $parts[] = \Magento\Backend\App\Area\FrontNameResolver::AREA_CODE; diff --git a/app/code/Magento/Backend/Block/Cache.php b/app/code/Magento/Backend/Block/Cache.php index 0e10790496693..55fb1f7d2d7d1 100644 --- a/app/code/Magento/Backend/Block/Cache.php +++ b/app/code/Magento/Backend/Block/Cache.php @@ -26,7 +26,7 @@ namespace Magento\Backend\Block; -class Cache extends \Magento\Adminhtml\Block\Widget\Grid\Container +class Cache extends \Magento\Backend\Block\Widget\Grid\Container { /** * Class constructor diff --git a/app/code/Magento/Backend/Block/Cache/Grid/Column/Statuses.php b/app/code/Magento/Backend/Block/Cache/Grid/Column/Statuses.php index bbe32dd6fc456..0d85c52b8380e 100644 --- a/app/code/Magento/Backend/Block/Cache/Grid/Column/Statuses.php +++ b/app/code/Magento/Backend/Block/Cache/Grid/Column/Statuses.php @@ -61,7 +61,7 @@ public function getFrameCallback() * * @param string $value * @param \Magento\Core\Model\AbstractModel $row - * @param \Magento\Adminhtml\Block\Widget\Grid\Column $column + * @param \Magento\Backend\Block\Widget\Grid\Column $column * @param bool $isExport * @return string * @SuppressWarnings(PHPMD.UnusedFormalParameter) diff --git a/app/code/Magento/Backend/Block/Context.php b/app/code/Magento/Backend/Block/Context.php index 28420ebb514d7..7c371b577e93f 100644 --- a/app/code/Magento/Backend/Block/Context.php +++ b/app/code/Magento/Backend/Block/Context.php @@ -1,7 +1,4 @@ _authorization = $authorization; parent::__construct( - $request, - $layout, - $eventManager, - $urlBuilder, - $translator, - $cache, - $design, - $session, - $sidResolver, - $storeConfig, - $frontController, - $helperFactory, - $viewUrl, - $viewConfig, - $cacheState, - $logger, - $app, - $escaper, - $filterManager, - $locale, - $data + $request, $layout, $eventManager, $urlBuilder, $translator, $cache, $design, $session, $sidResolver, + $storeConfig, $frontController, $viewUrl, $viewConfig, $cacheState, $logger, $app, $escaper, + $filterManager, $locale, $data ); } diff --git a/app/code/Magento/Backend/Block/Dashboard/AbstractDashboard.php b/app/code/Magento/Backend/Block/Dashboard/AbstractDashboard.php index ef09ab5fc0844..fc42b1059a25d 100644 --- a/app/code/Magento/Backend/Block/Dashboard/AbstractDashboard.php +++ b/app/code/Magento/Backend/Block/Dashboard/AbstractDashboard.php @@ -34,9 +34,12 @@ namespace Magento\Backend\Block\Dashboard; -abstract class AbstractDashboard extends \Magento\Adminhtml\Block\Widget +abstract class AbstractDashboard extends \Magento\Backend\Block\Widget { - protected $_dataHelperName = null; + /** + * @var \Magento\Backend\Helper\Dashboard\AbstractDashboard + */ + protected $_dataHelper = null; /** * @var \Magento\Reports\Model\Resource\Order\CollectionFactory @@ -59,28 +62,22 @@ public function __construct( public function getCollection() { - return $this->getDataHelper()->getCollection(); + return $this->getDataHelper()->getCollection(); } public function getCount() { - return $this->getDataHelper()->getCount(); + return $this->getDataHelper()->getCount(); } + /** + * Get data helper + * + * @return \Magento\Backend\Helper\Dashboard\AbstractDashboard + */ public function getDataHelper() { - return $this->helper($this->getDataHelperName()); - } - - public function getDataHelperName() - { - return $this->_dataHelperName; - } - - public function setDataHelperName($dataHelperName) - { - $this->_dataHelperName = $dataHelperName; - return $this; + return $this->_dataHelper; } protected function _prepareData() diff --git a/app/code/Magento/Backend/Block/Dashboard/Diagrams.php b/app/code/Magento/Backend/Block/Dashboard/Diagrams.php index 6350b99948046..2d80493e4eeb3 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Diagrams.php +++ b/app/code/Magento/Backend/Block/Dashboard/Diagrams.php @@ -34,10 +34,10 @@ namespace Magento\Backend\Block\Dashboard; -class Diagrams extends \Magento\Adminhtml\Block\Widget\Tabs +class Diagrams extends \Magento\Backend\Block\Widget\Tabs { - protected $_template = 'Magento_Adminhtml::widget/tabshoriz.phtml'; + protected $_template = 'Magento_Backend::widget/tabshoriz.phtml'; protected function _construct() { diff --git a/app/code/Magento/Backend/Block/Dashboard/Graph.php b/app/code/Magento/Backend/Block/Dashboard/Graph.php index ee642713d2155..ac1e54a7222a5 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Graph.php +++ b/app/code/Magento/Backend/Block/Dashboard/Graph.php @@ -552,6 +552,14 @@ protected function getHeight() return $this->_height; } + /** + * @param \Magento\Backend\Helper\Dashboard\AbstractDashboard $dataHelper + */ + public function setDataHelper(\Magento\Backend\Helper\Dashboard\AbstractDashboard $dataHelper) + { + $this->_dataHelper = $dataHelper; + } + /** * Prepare chart data * @@ -559,8 +567,8 @@ protected function getHeight() */ protected function _prepareData() { - if (!is_null($this->getDataHelperName())) { - $availablePeriods = array_keys($this->helper('Magento\Backend\Helper\Dashboard\Data')->getDatePeriods()); + if (!is_null($this->_dataHelper)) { + $availablePeriods = array_keys($this->_dashboardData->getDatePeriods()); $period = $this->getRequest()->getParam('period'); $this->getDataHelper()->setParam('period', ($period && in_array($period, $availablePeriods)) ? $period : '24h' diff --git a/app/code/Magento/Backend/Block/Dashboard/Grid.php b/app/code/Magento/Backend/Block/Dashboard/Grid.php index b76681b712649..444c8c9d1a18b 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Grid.php +++ b/app/code/Magento/Backend/Block/Dashboard/Grid.php @@ -34,7 +34,7 @@ namespace Magento\Backend\Block\Dashboard; -class Grid extends \Magento\Adminhtml\Block\Widget\Grid +class Grid extends \Magento\Backend\Block\Widget\Grid\Extended { protected $_template = 'dashboard/grid.phtml'; diff --git a/app/code/Magento/Backend/Block/Dashboard/Grids.php b/app/code/Magento/Backend/Block/Dashboard/Grids.php index f0d09b59a1fb8..45f2844beb755 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Grids.php +++ b/app/code/Magento/Backend/Block/Dashboard/Grids.php @@ -34,10 +34,10 @@ namespace Magento\Backend\Block\Dashboard; -class Grids extends \Magento\Adminhtml\Block\Widget\Tabs +class Grids extends \Magento\Backend\Block\Widget\Tabs { - protected $_template = 'Magento_Adminhtml::widget/tabshoriz.phtml'; + protected $_template = 'Magento_Backend::widget/tabshoriz.phtml'; protected function _construct() { diff --git a/app/code/Magento/Backend/Block/Dashboard/Orders/Grid.php b/app/code/Magento/Backend/Block/Dashboard/Orders/Grid.php index e2225b40488c6..fd11ca9cf0d1a 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Orders/Grid.php +++ b/app/code/Magento/Backend/Block/Dashboard/Orders/Grid.php @@ -47,22 +47,24 @@ class Grid extends \Magento\Backend\Block\Dashboard\Grid protected $_moduleManager; /** - * @param \Magento\Module\Manager $moduleManager * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper + * @param \Magento\Module\Manager $moduleManager * @param \Magento\Reports\Model\Resource\Order\CollectionFactory $collectionFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Module\Manager $moduleManager, \Magento\Reports\Model\Resource\Order\CollectionFactory $collectionFactory, array $data = array() ) { $this->_moduleManager = $moduleManager; $this->_collectionFactory = $collectionFactory; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Backend/Block/Dashboard/Sales.php b/app/code/Magento/Backend/Block/Dashboard/Sales.php index a5366e2fe25b3..2f101fdc7c96b 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Sales.php +++ b/app/code/Magento/Backend/Block/Dashboard/Sales.php @@ -34,7 +34,7 @@ namespace Magento\Backend\Block\Dashboard; -use Magento\Adminhtml\Block\Widget; +use Magento\Backend\Block\Widget; class Sales extends \Magento\Backend\Block\Dashboard\Bar { diff --git a/app/code/Magento/Backend/Block/Dashboard/Searches/Last.php b/app/code/Magento/Backend/Block/Dashboard/Searches/Last.php index e6e83587bf9c2..bc81e230f28d6 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Searches/Last.php +++ b/app/code/Magento/Backend/Block/Dashboard/Searches/Last.php @@ -49,22 +49,24 @@ class Last extends \Magento\Backend\Block\Dashboard\Grid protected $_moduleManager; /** - * @param \Magento\Module\Manager $moduleManager * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper + * @param \Magento\Module\Manager $moduleManager * @param \Magento\CatalogSearch\Model\Resource\Query\CollectionFactory $queriesFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Module\Manager $moduleManager, \Magento\CatalogSearch\Model\Resource\Query\CollectionFactory $queriesFactory, array $data = array() ) { $this->_moduleManager = $moduleManager; $this->_queriesFactory = $queriesFactory; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Backend/Block/Dashboard/Searches/Renderer/Searchquery.php b/app/code/Magento/Backend/Block/Dashboard/Searches/Renderer/Searchquery.php index 2b9bf27b8a764..6ce9738d50007 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Searches/Renderer/Searchquery.php +++ b/app/code/Magento/Backend/Block/Dashboard/Searches/Renderer/Searchquery.php @@ -31,7 +31,7 @@ namespace Magento\Backend\Block\Dashboard\Searches\Renderer; class Searchquery - extends \Magento\Adminhtml\Block\Widget\Grid\Column\Renderer\AbstractRenderer + extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer { /** * String helper diff --git a/app/code/Magento/Backend/Block/Dashboard/Searches/Top.php b/app/code/Magento/Backend/Block/Dashboard/Searches/Top.php index 2205271431890..837d8bf8eabd1 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Searches/Top.php +++ b/app/code/Magento/Backend/Block/Dashboard/Searches/Top.php @@ -49,22 +49,24 @@ class Top extends \Magento\Backend\Block\Dashboard\Grid protected $_moduleManager; /** - * @param \Magento\Module\Manager $moduleManager * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper + * @param \Magento\Module\Manager $moduleManager * @param \Magento\CatalogSearch\Model\Resource\Query\CollectionFactory $queriesFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Module\Manager $moduleManager, \Magento\CatalogSearch\Model\Resource\Query\CollectionFactory $queriesFactory, array $data = array() ) { $this->_moduleManager = $moduleManager; $this->_queriesFactory = $queriesFactory; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Amounts.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Amounts.php index 4d63408b8241b..b986e38466c36 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Tab/Amounts.php +++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Amounts.php @@ -36,6 +36,24 @@ class Amounts extends \Magento\Backend\Block\Dashboard\Graph { + /** + * @param \Magento\Backend\Block\Template\Context $context + * @param \Magento\Reports\Model\Resource\Order\CollectionFactory $collectionFactory + * @param \Magento\Backend\Helper\Dashboard\Data $dashboardData + * @param \Magento\Backend\Helper\Dashboard\Order $dataHelper + * @param array $data + */ + public function __construct( + \Magento\Backend\Block\Template\Context $context, + \Magento\Reports\Model\Resource\Order\CollectionFactory $collectionFactory, + \Magento\Backend\Helper\Dashboard\Data $dashboardData, + \Magento\Backend\Helper\Dashboard\Order $dataHelper, + array $data = array() + ) { + $this->_dataHelper = $dataHelper; + parent::__construct($context, $collectionFactory, $dashboardData, $data); + } + /** * Initialize object * @@ -54,7 +72,6 @@ protected function _construct() */ protected function _prepareData() { - $this->setDataHelperName('Magento\Backend\Helper\Dashboard\Order'); $this->getDataHelper()->setParam('store', $this->getRequest()->getParam('store')); $this->getDataHelper()->setParam('website', $this->getRequest()->getParam('website')); $this->getDataHelper()->setParam('group', $this->getRequest()->getParam('group')); diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Most.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Most.php index 1c0f19b593c2a..54bea7a9348d8 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Most.php +++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Most.php @@ -44,17 +44,19 @@ class Most extends \Magento\Backend\Block\Dashboard\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Reports\Model\Resource\Order\CollectionFactory $collectionFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Reports\Model\Resource\Order\CollectionFactory $collectionFactory, array $data = array() ) { $this->_collectionFactory = $collectionFactory; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Newest.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Newest.php index 82289d9f94d09..d667923be1334 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Newest.php +++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Newest.php @@ -44,17 +44,19 @@ class Newest extends \Magento\Backend\Block\Dashboard\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Reports\Model\Resource\Customer\CollectionFactory $collectionFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Reports\Model\Resource\Customer\CollectionFactory $collectionFactory, array $data = array() ) { $this->_collectionFactory = $collectionFactory; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Orders.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Orders.php index ff24fa61da3c6..3806549a5d4ed 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Tab/Orders.php +++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Orders.php @@ -36,6 +36,24 @@ class Orders extends \Magento\Backend\Block\Dashboard\Graph { + /** + * @param \Magento\Backend\Block\Template\Context $context + * @param \Magento\Reports\Model\Resource\Order\CollectionFactory $collectionFactory + * @param \Magento\Backend\Helper\Dashboard\Data $dashboardData + * @param \Magento\Backend\Helper\Dashboard\Order $dataHelper + * @param array $data + */ + public function __construct( + \Magento\Backend\Block\Template\Context $context, + \Magento\Reports\Model\Resource\Order\CollectionFactory $collectionFactory, + \Magento\Backend\Helper\Dashboard\Data $dashboardData, + \Magento\Backend\Helper\Dashboard\Order $dataHelper, + array $data = array() + ) { + $this->_dataHelper = $dataHelper; + parent::__construct($context, $collectionFactory, $dashboardData, $data); + } + /** * Initialize object * @@ -54,7 +72,6 @@ protected function _construct() */ protected function _prepareData() { - $this->setDataHelperName('Magento\Backend\Helper\Dashboard\Order'); $this->getDataHelper()->setParam('store', $this->getRequest()->getParam('store')); $this->getDataHelper()->setParam('website', $this->getRequest()->getParam('website')); $this->getDataHelper()->setParam('group', $this->getRequest()->getParam('group')); diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Ordered.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Ordered.php index d93d9c02b117b..adb6416ffa305 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Ordered.php +++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Ordered.php @@ -47,22 +47,24 @@ class Ordered extends \Magento\Backend\Block\Dashboard\Grid protected $_moduleManager; /** - * @param \Magento\Module\Manager $moduleManager * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper + * @param \Magento\Module\Manager $moduleManager * @param \Magento\Sales\Model\Resource\Report\Bestsellers\CollectionFactory $collectionFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Module\Manager $moduleManager, \Magento\Sales\Model\Resource\Report\Bestsellers\CollectionFactory $collectionFactory, array $data = array() ) { $this->_collectionFactory = $collectionFactory; $this->_moduleManager = $moduleManager; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Viewed.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Viewed.php index a1298bdac49cf..815ceb0939413 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Viewed.php +++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Viewed.php @@ -44,17 +44,19 @@ class Viewed extends \Magento\Backend\Block\Dashboard\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Reports\Model\Resource\Product\CollectionFactory $productsFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Reports\Model\Resource\Product\CollectionFactory $productsFactory, array $data = array() ) { $this->_productsFactory = $productsFactory; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Backend/Block/Dashboard/Totals.php b/app/code/Magento/Backend/Block/Dashboard/Totals.php index 6fdbcad87a007..2e58daa2aec79 100644 --- a/app/code/Magento/Backend/Block/Dashboard/Totals.php +++ b/app/code/Magento/Backend/Block/Dashboard/Totals.php @@ -34,7 +34,7 @@ */ namespace Magento\Backend\Block\Dashboard; -use Magento\Adminhtml\Block\Widget; +use Magento\Backend\Block\Widget; class Totals extends \Magento\Backend\Block\Dashboard\Bar { diff --git a/app/code/Magento/Backend/Block/Media/Uploader.php b/app/code/Magento/Backend/Block/Media/Uploader.php index 8a393e0590302..b429ee29e69b0 100644 --- a/app/code/Magento/Backend/Block/Media/Uploader.php +++ b/app/code/Magento/Backend/Block/Media/Uploader.php @@ -29,7 +29,7 @@ */ namespace Magento\Backend\Block\Media; -class Uploader extends \Magento\Adminhtml\Block\Widget +class Uploader extends \Magento\Backend\Block\Widget { /** * @var \Magento\Object diff --git a/app/code/Magento/Backend/Block/Page/Head.php b/app/code/Magento/Backend/Block/Page/Head.php index 96505249f40d9..da21fb513d314 100644 --- a/app/code/Magento/Backend/Block/Page/Head.php +++ b/app/code/Magento/Backend/Block/Page/Head.php @@ -40,11 +40,6 @@ class Head extends \Magento\Theme\Block\Html\Head */ protected $_template = 'page/head.phtml'; - /** - * @var \Magento\App\Action\Title - */ - protected $_titles; - /** * @var \Magento\Data\Form\FormKey */ @@ -83,6 +78,7 @@ public function __construct( $assetMinifyService, $data ); + $this->formKey = $formKey; } /** diff --git a/app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php b/app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php index f1434842a1196..1cbf1bf1aca7a 100644 --- a/app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php +++ b/app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php @@ -87,7 +87,7 @@ public function getRobotsDefaultCustomInstructions() */ public function getButtonHtml() { - $button = $this->getLayout()->createBlock('Magento\Adminhtml\Block\Widget\Button') + $button = $this->getLayout()->createBlock('Magento\Backend\Block\Widget\Button') ->setData(array( 'id' => 'reset_to_default_button', 'label' => __('Reset to Default'), diff --git a/app/code/Magento/Backend/Block/System/Account/Edit.php b/app/code/Magento/Backend/Block/System/Account/Edit.php index 026982028073d..b69fa06b43c8f 100644 --- a/app/code/Magento/Backend/Block/System/Account/Edit.php +++ b/app/code/Magento/Backend/Block/System/Account/Edit.php @@ -34,7 +34,7 @@ namespace Magento\Backend\Block\System\Account; -class Edit extends \Magento\Adminhtml\Block\Widget\Form\Container +class Edit extends \Magento\Backend\Block\Widget\Form\Container { protected function _construct() { diff --git a/app/code/Magento/Backend/Block/System/Cache/Edit.php b/app/code/Magento/Backend/Block/System/Cache/Edit.php index db9796f31786c..e7bb0e15e6492 100644 --- a/app/code/Magento/Backend/Block/System/Cache/Edit.php +++ b/app/code/Magento/Backend/Block/System/Cache/Edit.php @@ -33,7 +33,7 @@ */ namespace Magento\Backend\Block\System\Cache; -class Edit extends \Magento\Adminhtml\Block\Widget +class Edit extends \Magento\Backend\Block\Widget { protected $_template = 'Magento_Backend::system/cache/edit.phtml'; @@ -47,7 +47,7 @@ protected function _construct() protected function _prepareLayout() { - $this->addChild('save_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('save_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Save Cache Settings'), 'class' => 'save', 'data_attribute' => array( diff --git a/app/code/Magento/Backend/Block/System/Config/Form/Field/Export.php b/app/code/Magento/Backend/Block/System/Config/Form/Field/Export.php index 3bdedf592d049..4d2d7389e618a 100644 --- a/app/code/Magento/Backend/Block/System/Config/Form/Field/Export.php +++ b/app/code/Magento/Backend/Block/System/Config/Form/Field/Export.php @@ -36,25 +36,25 @@ class Export extends \Magento\Data\Form\Element\AbstractElement { /** - * @var \Magento\App\Helper\HelperFactory + * @var \Magento\Backend\Helper\Data */ - protected $_helperFactory; + protected $_helper; /** * @param \Magento\Data\Form\Element\Factory $factoryElement * @param \Magento\Data\Form\Element\CollectionFactory $factoryCollection * @param \Magento\Escaper $escaper - * @param \Magento\App\Helper\HelperFactory $helperFactory + * @param \Magento\Backend\Helper\Data $helper * @param array $data */ public function __construct( \Magento\Data\Form\Element\Factory $factoryElement, \Magento\Data\Form\Element\CollectionFactory $factoryCollection, \Magento\Escaper $escaper, - \Magento\App\Helper\HelperFactory $helperFactory, + \Magento\Backend\Helper\Data $helper, array $data = array() ) { - $this->_helperFactory = $helperFactory; + $this->_helper = $helper; parent::__construct($factoryElement, $factoryCollection, $escaper, $data); } @@ -70,7 +70,7 @@ public function getElementHtml() 'website' => $buttonBlock->getRequest()->getParam('website') ); - $url = $this->_helperFactory->get('Magento\Backend\Helper\Data')->getUrl("*/*/exportTablerates", $params); + $url = $this->_helper->getUrl("*/*/exportTablerates", $params); $data = array( 'label' => __('Export CSV'), 'onclick' => "setLocation('" . $url diff --git a/app/code/Magento/Backend/Block/System/Config/Form/Fieldset.php b/app/code/Magento/Backend/Block/System/Config/Form/Fieldset.php index 1ba61e7167f4e..069b6b822aba3 100644 --- a/app/code/Magento/Backend/Block/System/Config/Form/Fieldset.php +++ b/app/code/Magento/Backend/Block/System/Config/Form/Fieldset.php @@ -38,16 +38,24 @@ class Fieldset */ protected $_authSession; + /** + * @var \Magento\Core\Helper\Js + */ + protected $_jsHelper; + /** * @param \Magento\Backend\Block\Context $context * @param \Magento\Backend\Model\Auth\Session $authSession + * @param \Magento\Core\Helper\Js $jsHelper * @param array $data */ public function __construct( \Magento\Backend\Block\Context $context, \Magento\Backend\Model\Auth\Session $authSession, + \Magento\Core\Helper\Js $jsHelper, array $data = array() ) { + $this->_jsHelper = $jsHelper; $this->_authSession = $authSession; parent::__construct($context, $data); } @@ -203,7 +211,7 @@ protected function _getExtraJs($element) { $htmlId = $element->getHtmlId(); $output = "Fieldset.applyCollapse('{$htmlId}');"; - return $this->helper('Magento\Core\Helper\Js')->getScript($output); + return $this->_jsHelper->getScript($output); } /** diff --git a/app/code/Magento/Backend/Block/System/Config/Form/Fieldset/Modules/DisableOutput.php b/app/code/Magento/Backend/Block/System/Config/Form/Fieldset/Modules/DisableOutput.php index 2e3e9a7c2ce05..72d84d6564187 100644 --- a/app/code/Magento/Backend/Block/System/Config/Form/Fieldset/Modules/DisableOutput.php +++ b/app/code/Magento/Backend/Block/System/Config/Form/Fieldset/Modules/DisableOutput.php @@ -56,16 +56,18 @@ class DisableOutput /** * @param \Magento\Backend\Block\Context $context * @param \Magento\Backend\Model\Auth\Session $authSession + * @param \Magento\Core\Helper\Js $jsHelper * @param \Magento\Module\ModuleListInterface $moduleList * @param array $data */ public function __construct( \Magento\Backend\Block\Context $context, \Magento\Backend\Model\Auth\Session $authSession, + \Magento\Core\Helper\Js $jsHelper, \Magento\Module\ModuleListInterface $moduleList, array $data = array() ) { - parent::__construct($context, $authSession, $data); + parent::__construct($context, $authSession, $jsHelper, $data); $this->_moduleList = $moduleList; } diff --git a/app/code/Magento/Backend/Block/System/Config/Tabs.php b/app/code/Magento/Backend/Block/System/Config/Tabs.php index a59c7cc7f8a3e..04055360b4bd1 100644 --- a/app/code/Magento/Backend/Block/System/Config/Tabs.php +++ b/app/code/Magento/Backend/Block/System/Config/Tabs.php @@ -76,16 +76,24 @@ class Tabs extends \Magento\Backend\Block\Widget */ protected $_storeCode; + /** + * @var \Magento\Backend\Helper\Data + */ + protected $_backendHelper; + /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Backend\Model\Config\Structure $configStructure + * @param \Magento\Backend\Helper\Data $backendHelper * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Backend\Model\Config\Structure $configStructure, + \Magento\Backend\Helper\Data $backendHelper, array $data = array() ) { + $this->_backendHelper = $backendHelper; parent::__construct($context, $data); $this->_tabs = $configStructure->getTabs(); @@ -93,7 +101,7 @@ public function __construct( $this->setTitle(__('Configuration')); $this->_currentSectionId = $this->getRequest()->getParam('section'); - $this->helper('Magento\Backend\Helper\Data')->addPageHelpUrl($this->getRequest()->getParam('section') . '/'); + $this->_backendHelper->addPageHelpUrl($this->getRequest()->getParam('section') . '/'); } /** diff --git a/app/code/Magento/Backend/Block/System/Design.php b/app/code/Magento/Backend/Block/System/Design.php index f6b3a5e0f3a66..de08547c641b9 100644 --- a/app/code/Magento/Backend/Block/System/Design.php +++ b/app/code/Magento/Backend/Block/System/Design.php @@ -33,7 +33,7 @@ protected function _prepareLayout() { $this->setTemplate('Magento_Backend::system/design/index.phtml'); - $this->addChild('add_new_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('add_new_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Add Design Change'), 'onclick' => "setLocation('".$this->getUrl('adminhtml/*/new')."')", 'class' => 'add' diff --git a/app/code/Magento/Backend/Block/System/Design/Edit.php b/app/code/Magento/Backend/Block/System/Design/Edit.php index 104d359393b75..c8ee0e9d4b5f2 100644 --- a/app/code/Magento/Backend/Block/System/Design/Edit.php +++ b/app/code/Magento/Backend/Block/System/Design/Edit.php @@ -26,7 +26,7 @@ namespace Magento\Backend\Block\System\Design; -class Edit extends \Magento\Adminhtml\Block\Widget +class Edit extends \Magento\Backend\Block\Widget { protected $_template = 'Magento_Backend::system/design/edit.phtml'; @@ -61,13 +61,13 @@ protected function _construct() protected function _prepareLayout() { - $this->addChild('back_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('back_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Back'), 'onclick' => 'setLocation(\'' . $this->getUrl('adminhtml/*/') . '\')', 'class' => 'back' )); - $this->addChild('save_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('save_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Save'), 'class' => 'save', 'data_attribute' => array( @@ -77,7 +77,7 @@ protected function _prepareLayout() ), )); - $this->addChild('delete_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('delete_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Delete'), 'onclick' => 'confirmSetLocation(\'' . __('Are you sure?') . '\', \'' . $this->getDeleteUrl() . '\')', 'class' => 'delete' diff --git a/app/code/Magento/Backend/Block/System/Design/Edit/Tabs.php b/app/code/Magento/Backend/Block/System/Design/Edit/Tabs.php index 56f07b4ea538a..e32a3e9701665 100644 --- a/app/code/Magento/Backend/Block/System/Design/Edit/Tabs.php +++ b/app/code/Magento/Backend/Block/System/Design/Edit/Tabs.php @@ -26,7 +26,7 @@ namespace Magento\Backend\Block\System\Design\Edit; -class Tabs extends \Magento\Adminhtml\Block\Widget\Tabs +class Tabs extends \Magento\Backend\Block\Widget\Tabs { protected function _construct() { diff --git a/app/code/Magento/Backend/Block/System/Store/Delete.php b/app/code/Magento/Backend/Block/System/Store/Delete.php index 536d7de13c59f..0379e43eef213 100644 --- a/app/code/Magento/Backend/Block/System/Store/Delete.php +++ b/app/code/Magento/Backend/Block/System/Store/Delete.php @@ -34,7 +34,7 @@ */ namespace Magento\Backend\Block\System\Store; -class Delete extends \Magento\Adminhtml\Block\Widget\Form\Container +class Delete extends \Magento\Backend\Block\Widget\Form\Container { /** diff --git a/app/code/Magento/Backend/Block/System/Store/Delete/Group.php b/app/code/Magento/Backend/Block/System/Store/Delete/Group.php index 01542d7b095f6..8d0135aa70642 100644 --- a/app/code/Magento/Backend/Block/System/Store/Delete/Group.php +++ b/app/code/Magento/Backend/Block/System/Store/Delete/Group.php @@ -42,18 +42,18 @@ protected function _prepareLayout() $this->setTemplate('system/store/delete_group.phtml'); $this->setAction($this->getUrl('adminhtml/*/deleteGroupPost', array('group_id'=>$itemId))); - $this->addChild('confirm_deletion_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('confirm_deletion_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Delete Store'), 'onclick' => "deleteForm.submit()", 'class' => 'cancel' )); $onClick = "setLocation('".$this->getUrl('adminhtml/*/editGroup', array('group_id'=>$itemId))."')"; - $this->addChild('cancel_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('cancel_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Cancel'), 'onclick' => $onClick, 'class' => 'cancel' )); - $this->addChild('back_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('back_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Back'), 'onclick' => $onClick, 'class' => 'cancel' diff --git a/app/code/Magento/Backend/Block/System/Store/Delete/Website.php b/app/code/Magento/Backend/Block/System/Store/Delete/Website.php index e72533c732ed7..cbf70424b2397 100644 --- a/app/code/Magento/Backend/Block/System/Store/Delete/Website.php +++ b/app/code/Magento/Backend/Block/System/Store/Delete/Website.php @@ -42,18 +42,18 @@ protected function _prepareLayout() $this->setTemplate('system/store/delete_website.phtml'); $this->setAction($this->getUrl('adminhtml/*/deleteWebsitePost', array('website_id'=>$itemId))); - $this->addChild('confirm_deletion_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('confirm_deletion_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Delete Web Site'), 'onclick' => "deleteForm.submit()", 'class' => 'cancel' )); $onClick = "setLocation('".$this->getUrl('adminhtml/*/editWebsite', array('website_id'=>$itemId))."')"; - $this->addChild('cancel_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('cancel_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Cancel'), 'onclick' => $onClick, 'class' => 'cancel' )); - $this->addChild('back_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('back_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Back'), 'onclick' => $onClick, 'class' => 'cancel' diff --git a/app/code/Magento/Backend/Block/System/Store/Edit.php b/app/code/Magento/Backend/Block/System/Store/Edit.php index 519293e54428c..738681a7b2e26 100644 --- a/app/code/Magento/Backend/Block/System/Store/Edit.php +++ b/app/code/Magento/Backend/Block/System/Store/Edit.php @@ -30,7 +30,7 @@ namespace Magento\Backend\Block\System\Store; -class Edit extends \Magento\Adminhtml\Block\Widget\Form\Container +class Edit extends \Magento\Backend\Block\Widget\Form\Container { /** * Core registry diff --git a/app/code/Magento/Backend/Block/System/Store/Edit/AbstractForm.php b/app/code/Magento/Backend/Block/System/Store/Edit/AbstractForm.php index d8a6907cf186b..9db8d97e984eb 100644 --- a/app/code/Magento/Backend/Block/System/Store/Edit/AbstractForm.php +++ b/app/code/Magento/Backend/Block/System/Store/Edit/AbstractForm.php @@ -50,7 +50,7 @@ protected function _construct() /** * Prepare form data * - * return \Magento\Adminhtml\Block\Widget\Form + * return \Magento\Backend\Block\Widget\Form */ protected function _prepareForm() { diff --git a/app/code/Magento/Backend/Block/System/Store/Grid/Render/Group.php b/app/code/Magento/Backend/Block/System/Store/Grid/Render/Group.php index 346df9d58ce92..3a5a13e1fb87b 100644 --- a/app/code/Magento/Backend/Block/System/Store/Grid/Render/Group.php +++ b/app/code/Magento/Backend/Block/System/Store/Grid/Render/Group.php @@ -35,7 +35,7 @@ namespace Magento\Backend\Block\System\Store\Grid\Render; class Group - extends \Magento\Adminhtml\Block\Widget\Grid\Column\Renderer\AbstractRenderer + extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer { public function render(\Magento\Object $row) { diff --git a/app/code/Magento/Backend/Block/System/Store/Grid/Render/Store.php b/app/code/Magento/Backend/Block/System/Store/Grid/Render/Store.php index 68f82bae201a1..d8f649c7c56d4 100644 --- a/app/code/Magento/Backend/Block/System/Store/Grid/Render/Store.php +++ b/app/code/Magento/Backend/Block/System/Store/Grid/Render/Store.php @@ -35,7 +35,7 @@ namespace Magento\Backend\Block\System\Store\Grid\Render; class Store - extends \Magento\Adminhtml\Block\Widget\Grid\Column\Renderer\AbstractRenderer + extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer { public function render(\Magento\Object $row) { diff --git a/app/code/Magento/Backend/Block/System/Store/Grid/Render/Website.php b/app/code/Magento/Backend/Block/System/Store/Grid/Render/Website.php index ffacc3a6d2e1f..ebe99397e2670 100644 --- a/app/code/Magento/Backend/Block/System/Store/Grid/Render/Website.php +++ b/app/code/Magento/Backend/Block/System/Store/Grid/Render/Website.php @@ -35,7 +35,7 @@ namespace Magento\Backend\Block\System\Store\Grid\Render; class Website - extends \Magento\Adminhtml\Block\Widget\Grid\Column\Renderer\AbstractRenderer + extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer { public function render(\Magento\Object $row) diff --git a/app/code/Magento/Backend/Block/System/Variable.php b/app/code/Magento/Backend/Block/System/Variable.php index 48e8aa1dc0c21..369acdc78c156 100644 --- a/app/code/Magento/Backend/Block/System/Variable.php +++ b/app/code/Magento/Backend/Block/System/Variable.php @@ -34,7 +34,7 @@ namespace Magento\Backend\Block\System; -class Variable extends \Magento\Adminhtml\Block\Widget\Grid\Container +class Variable extends \Magento\Backend\Block\Widget\Grid\Container { /** * Block constructor diff --git a/app/code/Magento/Backend/Block/System/Variable/Edit.php b/app/code/Magento/Backend/Block/System/Variable/Edit.php index 09b71ed2bcaf9..7a46a31f10640 100644 --- a/app/code/Magento/Backend/Block/System/Variable/Edit.php +++ b/app/code/Magento/Backend/Block/System/Variable/Edit.php @@ -29,7 +29,7 @@ */ namespace Magento\Backend\Block\System\Variable; -class Edit extends \Magento\Adminhtml\Block\Widget\Form\Container +class Edit extends \Magento\Backend\Block\Widget\Form\Container { /** * Core registry diff --git a/app/code/Magento/Backend/Block/Template.php b/app/code/Magento/Backend/Block/Template.php index e13c3daf2d7b0..a205ad63eb6ad 100644 --- a/app/code/Magento/Backend/Block/Template.php +++ b/app/code/Magento/Backend/Block/Template.php @@ -57,7 +57,7 @@ class Template extends \Magento\View\Element\Template * @var \Magento\Data\Form\FormKey */ protected $formKey; - + /** * @param \Magento\Backend\Block\Template\Context $context * @param array $data diff --git a/app/code/Magento/Backend/Block/Template/Context.php b/app/code/Magento/Backend/Block/Template/Context.php index 3ebe55ef7568c..027c2737e32f1 100644 --- a/app/code/Magento/Backend/Block/Template/Context.php +++ b/app/code/Magento/Backend/Block/Template/Context.php @@ -62,7 +62,6 @@ class Context extends \Magento\View\Element\Template\Context * @param \Magento\Session\SidResolverInterface $sidResolver * @param \Magento\Core\Model\Store\Config $storeConfig * @param \Magento\App\FrontController $frontController - * @param \Magento\App\Helper\HelperFactory $helperFactory * @param \Magento\View\Url $viewUrl * @param \Magento\View\ConfigInterface $viewConfig * @param \Magento\App\Cache\StateInterface $cacheState @@ -71,7 +70,6 @@ class Context extends \Magento\View\Element\Template\Context * @param \Magento\Escaper $escaper * @param \Magento\Filter\FilterManager $filterManager * @param \Magento\Core\Model\LocaleInterface $locale - * @param \Magento\App\Dir $dirs * @param \Magento\Filesystem $filesystem * @param \Magento\View\FileSystem $viewFileSystem * @param \Magento\View\TemplateEnginePool $enginePool @@ -97,7 +95,6 @@ public function __construct( \Magento\Session\SidResolverInterface $sidResolver, \Magento\Core\Model\Store\Config $storeConfig, \Magento\App\FrontController $frontController, - \Magento\App\Helper\HelperFactory $helperFactory, \Magento\View\Url $viewUrl, \Magento\View\ConfigInterface $viewConfig, \Magento\App\Cache\StateInterface $cacheState, @@ -106,7 +103,6 @@ public function __construct( \Magento\Escaper $escaper, \Magento\Filter\FilterManager $filterManager, \Magento\Core\Model\LocaleInterface $locale, - \Magento\App\Dir $dirs, \Magento\Filesystem $filesystem, \Magento\View\FileSystem $viewFileSystem, \Magento\View\TemplateEnginePool $enginePool, @@ -134,7 +130,6 @@ public function __construct( $sidResolver, $storeConfig, $frontController, - $helperFactory, $viewUrl, $viewConfig, $cacheState, @@ -143,7 +138,6 @@ public function __construct( $escaper, $filterManager, $locale, - $dirs, $filesystem, $viewFileSystem, $enginePool, diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite.php b/app/code/Magento/Backend/Block/Urlrewrite.php similarity index 81% rename from app/code/Magento/Adminhtml/Block/Urlrewrite.php rename to app/code/Magento/Backend/Block/Urlrewrite.php index d0368dadf9719..fa8a195fa4b21 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite.php +++ b/app/code/Magento/Backend/Block/Urlrewrite.php @@ -27,16 +27,16 @@ /** * Block for Urlrewrites grid container * - * @method \Magento\Adminhtml\Block\Urlrewrite setSelectorBlock(\Magento\Adminhtml\Block\Urlrewrite\Selector $value) - * @method null|\Magento\Adminhtml\Block\Urlrewrite\Selector getSelectorBlock() + * @method \Magento\Backend\Block\Urlrewrite setSelectorBlock(\Magento\Backend\Block\Urlrewrite\Selector $value) + * @method null|\Magento\Backend\Block\Urlrewrite\Selector getSelectorBlock() * * @category Magento * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block; +namespace Magento\Backend\Block; -class Urlrewrite extends \Magento\Adminhtml\Block\Widget\Grid\Container +class Urlrewrite extends \Magento\Backend\Block\Widget\Grid\Container { /** * Part for generating apropriate grid block name @@ -46,18 +46,18 @@ class Urlrewrite extends \Magento\Adminhtml\Block\Widget\Grid\Container protected $_controller = 'urlrewrite'; /** - * @var \Magento\Adminhtml\Block\Urlrewrite\Selector + * @var \Magento\Backend\Block\Urlrewrite\Selector */ protected $_urlrewriteSelector; /** * @param \Magento\Backend\Block\Template\Context $context - * @param \Magento\Adminhtml\Block\Urlrewrite\Selector $urlrewriteSelector + * @param \Magento\Backend\Block\Urlrewrite\Selector $urlrewriteSelector * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, - \Magento\Adminhtml\Block\Urlrewrite\Selector $urlrewriteSelector, + \Magento\Backend\Block\Urlrewrite\Selector $urlrewriteSelector, array $data = array() ) { $this->_urlrewriteSelector = $urlrewriteSelector; @@ -78,7 +78,7 @@ protected function _construct() /** * Customize grid row URLs * - * @see \Magento\Adminhtml\Block\Urlrewrite\Selector + * @see \Magento\Backend\Block\Urlrewrite\Selector * @return string */ public function getCreateUrl() diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/Edit.php b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Category/Edit.php similarity index 87% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/Edit.php rename to app/code/Magento/Backend/Block/Urlrewrite/Catalog/Category/Edit.php index d3847e57d1b25..4e3dab8ddcdd0 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/Edit.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Category/Edit.php @@ -28,17 +28,17 @@ * Block for Catalog Category URL rewrites * * @method \Magento\Catalog\Model\Category getCategory() - * @method \Magento\Adminhtml\Block\Urlrewrite\Catalog\Category\Edit + * @method \Magento\Backend\Block\Urlrewrite\Catalog\Category\Edit * setCategory(\Magento\Catalog\Model\Category $category) * * @category Magento * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block\Urlrewrite\Catalog\Category; +namespace Magento\Backend\Block\Urlrewrite\Catalog\Category; class Edit - extends \Magento\Adminhtml\Block\Urlrewrite\Edit + extends \Magento\Backend\Block\Urlrewrite\Edit { /** * @var \Magento\Catalog\Model\CategoryFactory @@ -102,7 +102,7 @@ private function _getCategory() */ private function _addCategoryLinkBlock() { - $this->addChild('category_link', 'Magento\Adminhtml\Block\Urlrewrite\Link', array( + $this->addChild('category_link', 'Magento\Backend\Block\Urlrewrite\Link', array( 'item_url' => $this->_adminhtmlData->getUrl('adminhtml/*/*') . 'category', 'item_name' => $this->_getCategory()->getName(), 'label' => __('Category:') @@ -114,17 +114,17 @@ private function _addCategoryLinkBlock() */ private function _addCategoryTreeBlock() { - $this->addChild('categories_tree', 'Magento\Adminhtml\Block\Urlrewrite\Catalog\Category\Tree'); + $this->addChild('categories_tree', 'Magento\Backend\Block\Urlrewrite\Catalog\Category\Tree'); } /** * Creates edit form block * - * @return \Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit\Form + * @return \Magento\Backend\Block\Urlrewrite\Catalog\Edit\Form */ protected function _createEditFormBlock() { - return $this->getLayout()->createBlock('Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit\Form', '', array( + return $this->getLayout()->createBlock('Magento\Backend\Block\Urlrewrite\Catalog\Edit\Form', '', array( 'data' => array( 'category' => $this->_getCategory(), 'url_rewrite' => $this->_getUrlRewrite() diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/Tree.php b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Category/Tree.php similarity index 99% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/Tree.php rename to app/code/Magento/Backend/Block/Urlrewrite/Catalog/Category/Tree.php index 3d2ed64f2d12e..bb7a2838f6474 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/Tree.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Category/Tree.php @@ -31,7 +31,7 @@ * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block\Urlrewrite\Catalog\Category; +namespace Magento\Backend\Block\Urlrewrite\Catalog\Category; class Tree extends \Magento\Catalog\Block\Adminhtml\Category\AbstractCategory { diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Edit/Form.php b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Edit/Form.php similarity index 94% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Edit/Form.php rename to app/code/Magento/Backend/Block/Urlrewrite/Catalog/Edit/Form.php index 4bc9bb0d6d348..08c73a15c16a8 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Edit/Form.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Edit/Form.php @@ -29,21 +29,21 @@ * * @method \Magento\Catalog\Model\Product getProduct() * @method \Magento\Catalog\Model\Category getCategory() - * @method \Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit\Form setProduct(\Magento\Catalog\Model\Product $product) - * @method \Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit\Form setCategory(\Magento\Catalog\Model\Category $category) + * @method \Magento\Backend\Block\Urlrewrite\Catalog\Edit\Form setProduct(\Magento\Catalog\Model\Product $product) + * @method \Magento\Backend\Block\Urlrewrite\Catalog\Edit\Form setCategory(\Magento\Catalog\Model\Category $category) * * @category Magento * @package Magento_Adminhtml * @author Magento Core Team * */ -namespace Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit; +namespace Magento\Backend\Block\Urlrewrite\Catalog\Edit; /** * @SuppressWarnings(PHPMD.DepthOfInheritance) * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ -class Form extends \Magento\Adminhtml\Block\Urlrewrite\Edit\Form +class Form extends \Magento\Backend\Block\Urlrewrite\Edit\Form { /** * @var \Magento\Catalog\Model\Url @@ -110,7 +110,7 @@ public function __construct( * Form post init * * @param \Magento\Data\Form $form - * @return \Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit\Form + * @return \Magento\Backend\Block\Urlrewrite\Catalog\Edit\Form */ protected function _formPostInit($form) { diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/Edit.php b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Product/Edit.php similarity index 85% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/Edit.php rename to app/code/Magento/Backend/Block/Urlrewrite/Catalog/Product/Edit.php index f43d6f80a1184..6abbd2040c3a6 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/Edit.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Product/Edit.php @@ -29,18 +29,18 @@ * * @method \Magento\Catalog\Model\Category getCategory() * @method - * \Magento\Adminhtml\Block\Urlrewrite\Catalog\Product\Edit setCategory(\Magento\Catalog\Model\Category $category) + * \Magento\Backend\Block\Urlrewrite\Catalog\Product\Edit setCategory(\Magento\Catalog\Model\Category $category) * @method \Magento\Catalog\Model\Product getProduct() - * @method \Magento\Adminhtml\Block\Urlrewrite\Catalog\Product\Edit setProduct(\Magento\Catalog\Model\Product $product) + * @method \Magento\Backend\Block\Urlrewrite\Catalog\Product\Edit setProduct(\Magento\Catalog\Model\Product $product) * @method bool getIsCategoryMode() * * @category Magento * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block\Urlrewrite\Catalog\Product; +namespace Magento\Backend\Block\Urlrewrite\Catalog\Product; -class Edit extends \Magento\Adminhtml\Block\Urlrewrite\Edit +class Edit extends \Magento\Backend\Block\Urlrewrite\Edit { /** * @var \Magento\Catalog\Model\ProductFactory @@ -142,7 +142,7 @@ private function _getCategory() */ private function _addProductLinkBlock() { - $this->addChild('product_link', 'Magento\Adminhtml\Block\Urlrewrite\Link', array( + $this->addChild('product_link', 'Magento\Backend\Block\Urlrewrite\Link', array( 'item_url' => $this->_adminhtmlData->getUrl('adminhtml/*/*') . 'product', 'item_name' => $this->_getProduct()->getName(), 'label' => __('Product:') @@ -154,7 +154,7 @@ private function _addProductLinkBlock() */ private function _addCategoryLinkBlock() { - $this->addChild('category_link', 'Magento\Adminhtml\Block\Urlrewrite\Link', array( + $this->addChild('category_link', 'Magento\Backend\Block\Urlrewrite\Link', array( 'item_url' => $this->_adminhtmlData ->getUrl('adminhtml/*/*', array('product' => $this->_getProduct()->getId())) . 'category', 'item_name' => $this->_getCategory()->getName(), @@ -167,7 +167,7 @@ private function _addCategoryLinkBlock() */ private function _addProductsGridBlock() { - $this->addChild('products_grid', 'Magento\Adminhtml\Block\Urlrewrite\Catalog\Product\Grid'); + $this->addChild('products_grid', 'Magento\Backend\Block\Urlrewrite\Catalog\Product\Grid'); } /** @@ -175,7 +175,7 @@ private function _addProductsGridBlock() */ private function _addCategoriesTreeBlock() { - $this->addChild('categories_tree', 'Magento\Adminhtml\Block\Urlrewrite\Catalog\Category\Tree'); + $this->addChild('categories_tree', 'Magento\Backend\Block\Urlrewrite\Catalog\Category\Tree'); } /** @@ -183,7 +183,7 @@ private function _addCategoriesTreeBlock() */ private function _addSkipCategoriesBlock() { - $this->addChild('skip_categories', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('skip_categories', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Skip Category Selection'), 'onclick' => 'window.location = \'' . $this->_adminhtmlData->getUrl('adminhtml/*/*', array('product' => $this->_getProduct()->getId())) @@ -196,11 +196,11 @@ private function _addSkipCategoriesBlock() /** * Creates edit form block * - * @return \Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit\Form + * @return \Magento\Backend\Block\Urlrewrite\Catalog\Edit\Form */ protected function _createEditFormBlock() { - return $this->getLayout()->createBlock('Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit\Form', '', array( + return $this->getLayout()->createBlock('Magento\Backend\Block\Urlrewrite\Catalog\Edit\Form', '', array( 'data' => array( 'product' => $this->_getProduct(), 'category' => $this->_getCategory(), diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/Grid.php b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Product/Grid.php similarity index 93% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/Grid.php rename to app/code/Magento/Backend/Block/Urlrewrite/Catalog/Product/Grid.php index d7e8abd3d3625..4e21e92cddfc6 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/Grid.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Catalog/Product/Grid.php @@ -31,14 +31,14 @@ * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block\Urlrewrite\Catalog\Product; +namespace Magento\Backend\Block\Urlrewrite\Catalog\Product; class Grid extends \Magento\Catalog\Block\Adminhtml\Product\Grid { /** * Disable massaction * - * @return \Magento\Adminhtml\Block\Urlrewrite\Catalog\Product\Grid + * @return \Magento\Backend\Block\Urlrewrite\Catalog\Product\Grid */ protected function _prepareMassaction() { @@ -48,7 +48,7 @@ protected function _prepareMassaction() /** * Prepare columns layout * - * @return \Magento\Adminhtml\Block\Urlrewrite\Catalog\Product\Grid + * @return \Magento\Backend\Block\Urlrewrite\Catalog\Product\Grid */ protected function _prepareColumns() { diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit.php b/app/code/Magento/Backend/Block/Urlrewrite/Cms/Page/Edit.php similarity index 86% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit.php rename to app/code/Magento/Backend/Block/Urlrewrite/Cms/Page/Edit.php index 5c813ae2fcb00..54eb8ba949fd2 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Cms/Page/Edit.php @@ -28,15 +28,15 @@ * Block for CMS pages URL rewrites * * @method \Magento\Cms\Model\Page getCmsPage() - * @method \Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Edit setCmsPage(\Magento\Cms\Model\Page $cmsPage) + * @method \Magento\Backend\Block\Urlrewrite\Cms\Page\Edit setCmsPage(\Magento\Cms\Model\Page $cmsPage) * * @category Magento * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block\Urlrewrite\Cms\Page; +namespace Magento\Backend\Block\Urlrewrite\Cms\Page; -class Edit extends \Magento\Adminhtml\Block\Urlrewrite\Edit +class Edit extends \Magento\Backend\Block\Urlrewrite\Edit { /** * @var \Magento\Cms\Model\PageFactory @@ -100,7 +100,7 @@ private function _getCmsPage() */ private function _addCmsPageLinkBlock() { - $this->addChild('cms_page_link', 'Magento\Adminhtml\Block\Urlrewrite\Link', array( + $this->addChild('cms_page_link', 'Magento\Backend\Block\Urlrewrite\Link', array( 'item_url' => $this->_adminhtmlData->getUrl('adminhtml/*/*') . 'cms_page', 'item_name' => $this->getCmsPage()->getTitle(), 'label' => __('CMS page:') @@ -112,17 +112,17 @@ private function _addCmsPageLinkBlock() */ private function _addCmsPageGridBlock() { - $this->addChild('cms_pages_grid', 'Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Grid'); + $this->addChild('cms_pages_grid', 'Magento\Backend\Block\Urlrewrite\Cms\Page\Grid'); } /** * Creates edit form block * - * @return \Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Edit\Form + * @return \Magento\Backend\Block\Urlrewrite\Cms\Page\Edit\Form */ protected function _createEditFormBlock() { - return $this->getLayout()->createBlock('Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Edit\Form', '', array( + return $this->getLayout()->createBlock('Magento\Backend\Block\Urlrewrite\Cms\Page\Edit\Form', '', array( 'data' => array( 'cms_page' => $this->_getCmsPage(), 'url_rewrite' => $this->_getUrlRewrite() diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/Form.php b/app/code/Magento/Backend/Block/Urlrewrite/Cms/Page/Edit/Form.php similarity index 95% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/Form.php rename to app/code/Magento/Backend/Block/Urlrewrite/Cms/Page/Edit/Form.php index 3b1ffc4dfc5f6..14f7f00695026 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/Form.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Cms/Page/Edit/Form.php @@ -28,20 +28,20 @@ * Edit form for CMS page URL rewrites * * @method \Magento\Cms\Model\Page getCmsPage() - * @method \Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Edit\Form setCmsPage(\Magento\Cms\Model\Page $model) + * @method \Magento\Backend\Block\Urlrewrite\Cms\Page\Edit\Form setCmsPage(\Magento\Cms\Model\Page $model) * * @category Magento * @package Magento_Adminhtml * @author Magento Core Team * */ -namespace Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Edit; +namespace Magento\Backend\Block\Urlrewrite\Cms\Page\Edit; /** * @SuppressWarnings(PHPMD.DepthOfInheritance) * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ -class Form extends \Magento\Adminhtml\Block\Urlrewrite\Edit\Form +class Form extends \Magento\Backend\Block\Urlrewrite\Edit\Form { /** * @var \Magento\Cms\Model\PageFactory @@ -100,7 +100,7 @@ public function __construct( * Form post init * * @param \Magento\Data\Form $form - * @return \Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Edit\Form + * @return \Magento\Backend\Block\Urlrewrite\Cms\Page\Edit\Form */ protected function _formPostInit($form) { diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Grid.php b/app/code/Magento/Backend/Block/Urlrewrite/Cms/Page/Grid.php similarity index 94% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Grid.php rename to app/code/Magento/Backend/Block/Urlrewrite/Cms/Page/Grid.php index 3c6b2c1c2c506..f5e089eeb5532 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Grid.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Cms/Page/Grid.php @@ -31,7 +31,7 @@ * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block\Urlrewrite\Cms\Page; +namespace Magento\Backend\Block\Urlrewrite\Cms\Page; class Grid extends \Magento\Cms\Block\Adminhtml\Page\Grid { @@ -47,7 +47,7 @@ public function _construct() /** * Disable massaction * - * @return \Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Grid + * @return \Magento\Backend\Block\Urlrewrite\Cms\Page\Grid */ protected function _prepareMassaction() { @@ -57,7 +57,7 @@ protected function _prepareMassaction() /** * Prepare columns layout * - * @return \Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Grid + * @return \Magento\Backend\Block\Urlrewrite\Cms\Page\Grid */ protected function _prepareColumns() { diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Edit.php b/app/code/Magento/Backend/Block/Urlrewrite/Edit.php similarity index 92% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Edit.php rename to app/code/Magento/Backend/Block/Urlrewrite/Edit.php index a412712b5772a..a55dbeb33eaa2 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Edit.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Edit.php @@ -28,18 +28,18 @@ * Block for URL rewrites edit page * * @method \Magento\Core\Model\Url\Rewrite getUrlRewrite() - * @method \Magento\Adminhtml\Block\Urlrewrite\Edit setUrlRewrite(\Magento\Core\Model\Url\Rewrite $urlRewrite) + * @method \Magento\Backend\Block\Urlrewrite\Edit setUrlRewrite(\Magento\Core\Model\Url\Rewrite $urlRewrite) * * @category Magento * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block\Urlrewrite; +namespace Magento\Backend\Block\Urlrewrite; -class Edit extends \Magento\Adminhtml\Block\Widget\Container +class Edit extends \Magento\Backend\Block\Widget\Container { /** - * @var \Magento\Adminhtml\Block\Urlrewrite\Selector + * @var \Magento\Backend\Block\Urlrewrite\Selector */ private $_selectorBlock; @@ -89,7 +89,7 @@ public function __construct( /** * Prepare URL rewrite editing layout * - * @return \Magento\Adminhtml\Block\Urlrewrite\Edit + * @return \Magento\Backend\Block\Urlrewrite\Edit */ protected function _prepareLayout() { @@ -207,11 +207,11 @@ protected function _addSaveButton() /** * Creates edit form block * - * @return \Magento\Adminhtml\Block\Urlrewrite\Edit\Form + * @return \Magento\Backend\Block\Urlrewrite\Edit\Form */ protected function _createEditFormBlock() { - return $this->getLayout()->createBlock('Magento\Adminhtml\Block\Urlrewrite\Edit\Form', '', + return $this->getLayout()->createBlock('Magento\Backend\Block\Urlrewrite\Edit\Form', '', array('data' => array( 'url_rewrite' => $this->_getUrlRewrite() )) @@ -229,12 +229,12 @@ protected function _addUrlRewriteSelectorBlock() /** * Get selector block * - * @return \Magento\Adminhtml\Block\Urlrewrite\Selector + * @return \Magento\Backend\Block\Urlrewrite\Selector */ private function _getSelectorBlock() { if (!$this->_selectorBlock) { - $this->_selectorBlock = $this->getLayout()->createBlock('Magento\Adminhtml\Block\Urlrewrite\Selector'); + $this->_selectorBlock = $this->getLayout()->createBlock('Magento\Backend\Block\Urlrewrite\Selector'); } return $this->_selectorBlock; } diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Edit/Form.php b/app/code/Magento/Backend/Block/Urlrewrite/Edit/Form.php similarity index 97% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Edit/Form.php rename to app/code/Magento/Backend/Block/Urlrewrite/Edit/Form.php index 04f0465b272f7..98a97d41420ec 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Edit/Form.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Edit/Form.php @@ -28,14 +28,14 @@ * URL rewrites edit form * * @method \Magento\Core\Model\Url\Rewrite getUrlRewrite() - * @method \Magento\Adminhtml\Block\Urlrewrite\Edit\Form setUrlRewrite(\Magento\Core\Model\Url\Rewrite $model) + * @method \Magento\Backend\Block\Urlrewrite\Edit\Form setUrlRewrite(\Magento\Core\Model\Url\Rewrite $model) * * @category Magento * @package Magento_Adminhtml * @author Magento Core Team * */ -namespace Magento\Adminhtml\Block\Urlrewrite\Edit; +namespace Magento\Backend\Block\Urlrewrite\Edit; /** * @SuppressWarnings(PHPMD.DepthOfInheritance) @@ -136,7 +136,7 @@ protected function _construct() * Initialize form values * Set form data either from model values or from session * - * @return \Magento\Adminhtml\Block\Urlrewrite\Edit\Form + * @return \Magento\Backend\Block\Urlrewrite\Edit\Form */ protected function _initFormValues() { @@ -165,7 +165,7 @@ protected function _initFormValues() /** * Prepare the form layout * - * @return \Magento\Adminhtml\Block\Urlrewrite\Edit\Form + * @return \Magento\Backend\Block\Urlrewrite\Edit\Form */ protected function _prepareForm() { @@ -286,7 +286,7 @@ protected function _prepareStoreElement($fieldset) * Form post init * * @param \Magento\Data\Form $form - * @return \Magento\Adminhtml\Block\Urlrewrite\Edit\Form + * @return \Magento\Backend\Block\Urlrewrite\Edit\Form */ protected function _formPostInit($form) { diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Link.php b/app/code/Magento/Backend/Block/Urlrewrite/Link.php similarity index 97% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Link.php rename to app/code/Magento/Backend/Block/Urlrewrite/Link.php index 333ffdfdd05f3..6652e4d0ea002 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Link.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Link.php @@ -35,7 +35,7 @@ * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block\Urlrewrite; +namespace Magento\Backend\Block\Urlrewrite; class Link extends \Magento\View\Element\AbstractBlock { diff --git a/app/code/Magento/Adminhtml/Block/Urlrewrite/Selector.php b/app/code/Magento/Backend/Block/Urlrewrite/Selector.php similarity index 98% rename from app/code/Magento/Adminhtml/Block/Urlrewrite/Selector.php rename to app/code/Magento/Backend/Block/Urlrewrite/Selector.php index 648f5d328e276..7c8ff91c27f7c 100644 --- a/app/code/Magento/Adminhtml/Block/Urlrewrite/Selector.php +++ b/app/code/Magento/Backend/Block/Urlrewrite/Selector.php @@ -31,7 +31,7 @@ * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Block\Urlrewrite; +namespace Magento\Backend\Block\Urlrewrite; class Selector extends \Magento\View\Element\Template { diff --git a/app/code/Magento/Backend/Block/Widget/Grid.php b/app/code/Magento/Backend/Block/Widget/Grid.php index 87423d607b7db..5384292673d41 100644 --- a/app/code/Magento/Backend/Block/Widget/Grid.php +++ b/app/code/Magento/Backend/Block/Widget/Grid.php @@ -119,16 +119,24 @@ class Grid extends \Magento\Backend\Block\Widget */ protected $_backendSession; + /** + * @var \Magento\Backend\Helper\Data + */ + protected $_backendHelper; + /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, array $data = array() ) { + $this->_backendHelper = $backendHelper; $this->_urlModel = $urlModel; $this->_backendSession = $context->getBackendSession(); parent::__construct($context, $data); @@ -337,7 +345,7 @@ protected function _prepareCollection() } if (is_string($filter)) { - $data = $this->helper('Magento\Backend\Helper\Data')->prepareFilterString($filter); + $data = $this->_backendHelper->prepareFilterString($filter); $data = array_merge($data, (array)$this->getRequest()->getPost($this->getVarNameFilter())); $this->_setFilterValues($data); } else if ($filter && is_array($filter)) { @@ -363,7 +371,7 @@ protected function _prepareCollection() */ protected function _decodeFilter(&$value) { - $value = $this->helper('Magento\Backend\Helper\Data')->decodeFilter($value); + $value = $this->_backendHelper->decodeFilter($value); } /** diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Export.php b/app/code/Magento/Backend/Block/Widget/Grid/Export.php index c4a194c43cf96..28c1faee7e329 100644 --- a/app/code/Magento/Backend/Block/Widget/Grid/Export.php +++ b/app/code/Magento/Backend/Block/Widget/Grid/Export.php @@ -55,14 +55,21 @@ class Export protected $_template = "Magento_Backend::widget/grid/export.phtml"; /** - * @var string + * @var \Magento\Data\CollectionFactory */ - protected $_exportPath; + protected $_collectionFactory; /** - * @var \Magento\Data\CollectionFactory + * @var \Magento\Filesystem\Directory\WriteInterface */ - protected $_collectionFactory; + protected $_directory; + + /** + * Additional path to folder + * + * @var string + */ + protected $_path = 'export'; /** * @param \Magento\Backend\Block\Template\Context $context @@ -89,7 +96,7 @@ protected function _construct() $this->addExportType($type['urlPath'], $type['label']); } } - $this->_exportPath = $this->_dirs->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'export'; + $this->_directory = $this->_filesystem->getDirectoryWrite(\Magento\Filesystem::VAR_DIR); } /** @@ -206,7 +213,7 @@ public function addExportType($url, $label) */ protected function _getFileContainerContent(array $fileData) { - return $this->_filesystem->read($fileData['value'], $this->_exportPath); + return $this->_directory->readFile('export/' . $fileData['value']); } /** @@ -283,9 +290,9 @@ public function _exportIterateCollection($callback, array $args) * Write item data to csv export file * * @param \Magento\Object $item - * @param \Magento\Filesystem\StreamInterface $stream + * @param \Magento\Filesystem\File\WriteInterface $stream */ - protected function _exportCsvItem(\Magento\Object $item, \Magento\Filesystem\StreamInterface $stream) + protected function _exportCsvItem(\Magento\Object $item, \Magento\Filesystem\File\WriteInterface $stream) { $row = array(); foreach ($this->_getColumns() as $column) { @@ -306,21 +313,17 @@ protected function _exportCsvItem(\Magento\Object $item, \Magento\Filesystem\Str public function getCsvFile() { $name = md5(microtime()); - $file = $this->_exportPath . DS . $name . '.csv'; + $file = $this->_path . '/' . $name . '.csv'; - $this->_filesystem->setIsAllowCreateDirectories(true); - $this->_filesystem->ensureDirectoryExists($this->_exportPath); - $stream = $this->_filesystem->createAndOpenStream($file, 'w+', $this->_exportPath); + $this->_directory->create($this->_path); + $stream = $this->_directory->openFile($file, 'w+'); $stream->writeCsv($this->_getExportHeaders()); - $stream->lock(true); - + $stream->lock(); $this->_exportIterateCollection('_exportCsvItem', array($stream)); - if ($this->getCountTotals()) { $stream->writeCsv($this->_getExportTotals()); } - $stream->unlock(); $stream->close(); @@ -433,12 +436,11 @@ public function getExcelFile($sheetName = '') $convert = new \Magento\Convert\Excel($collection->getIterator(), array($this, 'getRowRecord')); $name = md5(microtime()); - $file = $this->_exportPath . DS . $name . '.xml'; + $file = $this->_path . '/' . $name . '.xml'; - $this->_filesystem->setIsAllowCreateDirectories(true); - $this->_filesystem->ensureDirectoryExists($this->_exportPath); - $stream = $this->_filesystem->createAndOpenStream($file, 'w+', $this->_exportPath); - $stream->lock(true); + $this->_directory->create($this->_path); + $stream = $this->_directory->openFile($file, 'w+'); + $stream->lock(); $convert->setDataHeader($this->_getExportHeaders()); if ($this->getCountTotals()) { diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Extended.php b/app/code/Magento/Backend/Block/Widget/Grid/Extended.php index 27710cfc645e0..c91b5ff4e0a35 100644 --- a/app/code/Magento/Backend/Block/Widget/Grid/Extended.php +++ b/app/code/Magento/Backend/Block/Widget/Grid/Extended.php @@ -176,15 +176,23 @@ class Extended protected $_template = 'Magento_Backend::widget/grid/extended.phtml'; /** + * @var \Magento\Filesystem\Directory\WriteInterface + */ + protected $_directory; + + /** + * Additional path to folder + * * @var string */ - protected $_exportPath; + protected $_path = 'export'; protected function _construct() { parent::_construct(); $this->_emptyText = __('We couldn\'t find any records.'); - $this->_exportPath = $this->_dirs->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'export'; + + $this->_directory = $this->_filesystem->getDirectoryWrite(\Magento\Filesystem::VAR_DIR); } /** @@ -874,7 +882,7 @@ public function getIsCollapsed() */ protected function _getFileContainerContent(array $fileData) { - return $this->_filesystem->read($fileData['value'], $this->_exportPath); + return $this->_directory->readFile('export/' . $fileData['value']); } /** @@ -950,9 +958,9 @@ public function _exportIterateCollection($callback, array $args) * Write item data to csv export file * * @param \Magento\Object $item - * @param \Magento\Filesystem\StreamInterface $stream + * @param \Magento\Filesystem\File\WriteInterface $stream */ - protected function _exportCsvItem(\Magento\Object $item, \Magento\Filesystem\StreamInterface $stream) + protected function _exportCsvItem(\Magento\Object $item, \Magento\Filesystem\File\WriteInterface $stream) { $row = array(); foreach ($this->getColumns() as $column) { @@ -976,13 +984,13 @@ public function getCsvFile() $this->_prepareGrid(); $name = md5(microtime()); - $file = $this->_exportPath . DS . $name . '.csv'; + $file = $this->_path . '/' . $name . '.csv'; - $this->_filesystem->setIsAllowCreateDirectories(true)->ensureDirectoryExists($this->_exportPath); - $stream = $this->_filesystem->createAndOpenStream($file, 'w+', $this->_exportPath); - $stream->lock(true); - $stream->writeCsv($this->_getExportHeaders()); + $this->_directory->create($this->_path); + $stream = $this->_directory->openFile($file, 'w+'); + $stream->lock(); + $stream->writeCsv($this->_getExportHeaders()); $this->_exportIterateCollection('_exportCsvItem', array($stream)); if ($this->getCountTotals()) { @@ -1111,11 +1119,11 @@ public function getExcelFile($sheetName = '') $convert = new \Magento\Convert\Excel($this->getCollection()->getIterator(), array($this, 'getRowRecord')); $name = md5(microtime()); - $file = $this->_exportPath . DS . $name . '.xml'; + $file = $this->_path . '/' . $name . '.xml'; - $this->_filesystem->setIsAllowCreateDirectories(true)->ensureDirectoryExists($this->_exportPath); - $stream = $this->_filesystem->createAndOpenStream($file, 'w+', $this->_exportPath); - $stream->lock(true); + $this->_directory->create($this->_path); + $stream = $this->_directory->openFile($file, 'w+'); + $stream->lock(); $convert->setDataHeader($this->_getExportHeaders()); if ($this->getCountTotals()) { diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Massaction/AbstractMassaction.php b/app/code/Magento/Backend/Block/Widget/Grid/Massaction/AbstractMassaction.php index 2b9c927caf667..cfc1b8f6f3341 100644 --- a/app/code/Magento/Backend/Block/Widget/Grid/Massaction/AbstractMassaction.php +++ b/app/code/Magento/Backend/Block/Widget/Grid/Massaction/AbstractMassaction.php @@ -44,13 +44,6 @@ abstract class AbstractMassaction extends \Magento\Backend\Block\Widget */ protected $_jsonEncoder; - /** - * Backend data helper - * - * @var \Magento\Backend\Helper\Data - */ - protected $_backendHelper; - /** * Massaction items * diff --git a/app/code/Magento/Backend/Controller/Adminhtml/Auth.php b/app/code/Magento/Backend/Controller/Adminhtml/Auth.php index 513ac3505ffa0..364d2df7c2479 100644 --- a/app/code/Magento/Backend/Controller/Adminhtml/Auth.php +++ b/app/code/Magento/Backend/Controller/Adminhtml/Auth.php @@ -53,7 +53,7 @@ public function loginAction() public function logoutAction() { $this->_auth->logout(); - $this->_auth->getAuthStorage()->addSuccess(__('You have logged out.')); + $this->messageManager->addSuccess(__('You have logged out.')); $this->getResponse()->setRedirect($this->_objectManager->get('Magento\Backend\Helper\Data')->getHomePageUrl()); } diff --git a/app/code/Magento/Backend/Controller/Adminhtml/Cache.php b/app/code/Magento/Backend/Controller/Adminhtml/Cache.php index 5668dce84c584..edb6bef1be179 100644 --- a/app/code/Magento/Backend/Controller/Adminhtml/Cache.php +++ b/app/code/Magento/Backend/Controller/Adminhtml/Cache.php @@ -63,16 +63,6 @@ public function __construct( $this->_cacheFrontendPool = $cacheFrontendPool; } - /** - * Retrieve session model - * - * @return \Magento\Adminhtml\Model\Session - */ - protected function _getSession() - { - return $this->_objectManager->get('Magento\Core\Model\Session\AbstractSession'); - } - /** * Display cache management grid */ @@ -95,7 +85,7 @@ public function flushAllAction() foreach ($this->_cacheFrontendPool as $cacheFrontend) { $cacheFrontend->getBackend()->clean(); } - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __("You flushed the cache storage.") ); $this->_redirect('adminhtml/*'); @@ -111,9 +101,7 @@ public function flushSystemAction() $cacheFrontend->clean(); } $this->_eventManager->dispatch('adminhtml_cache_flush_system'); - $this->_getSession()->addSuccess( - __("The Magento cache storage has been flushed.") - ); + $this->messageManager->addSuccess(__("The Magento cache storage has been flushed.")); $this->_redirect('adminhtml/*'); } @@ -137,18 +125,14 @@ public function massEnableAction() } if ($updatedTypes > 0) { $this->_cacheState->persist(); - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __("%1 cache type(s) enabled.", $updatedTypes) ); } } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); - } - catch (\Exception $e) { - $this->_getSession()->addException( - $e, - __('An error occurred while enabling cache.') - ); + $this->messageManager->addError($e->getMessage()); + } catch (\Exception $e) { + $this->messageManager->addException($e, __('An error occurred while enabling cache.')); } $this->_redirect('adminhtml/*'); } @@ -174,14 +158,14 @@ public function massDisableAction() } if ($updatedTypes > 0) { $this->_cacheState->persist(); - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __("%1 cache type(s) disabled.", $updatedTypes) ); } } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addException( + $this->messageManager->addException( $e, __('An error occurred while disabling cache.') ); @@ -207,12 +191,12 @@ public function massRefreshAction() $updatedTypes++; } if ($updatedTypes > 0) { - $this->_getSession()->addSuccess(__("%1 cache type(s) refreshed.", $updatedTypes)); + $this->messageManager->addSuccess(__("%1 cache type(s) refreshed.", $updatedTypes)); } } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addException($e, __('An error occurred while refreshing cache.')); + $this->messageManager->addException($e, __('An error occurred while refreshing cache.')); } $this->_redirect('adminhtml/*'); } @@ -243,11 +227,11 @@ public function cleanMediaAction() $this->_objectManager->get('Magento\View\Asset\MergeService') ->cleanMergedJsCss(); $this->_eventManager->dispatch('clean_media_cache_after'); - $this->_getSession()->addSuccess(__('The JavaScript/CSS cache has been cleaned.')); + $this->messageManager->addSuccess(__('The JavaScript/CSS cache has been cleaned.')); } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addException( + $this->messageManager->addException( $e, __('An error occurred while clearing the JavaScript/CSS cache.') ); @@ -263,13 +247,13 @@ public function cleanImagesAction() try { $this->_objectManager->create('Magento\Catalog\Model\Product\Image')->clearCache(); $this->_eventManager->dispatch('clean_catalog_images_cache_after'); - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __('The image cache was cleaned.') ); } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addException( + $this->messageManager->addException( $e, __('An error occurred while clearing the image cache.') ); diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/AbstractConfig.php b/app/code/Magento/Backend/Controller/Adminhtml/System/AbstractConfig.php index 0f61f7793815c..2ed4dd45ed644 100644 --- a/app/code/Magento/Backend/Controller/Adminhtml/System/AbstractConfig.php +++ b/app/code/Magento/Backend/Controller/Adminhtml/System/AbstractConfig.php @@ -54,7 +54,7 @@ public function __construct( * Check if current section is found and is allowed * * @param \Magento\App\RequestInterface $request - * @return $this|mixed + * @return \Magento\App\ResponseInterface */ public function dispatch(\Magento\App\RequestInterface $request) { diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Account.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Account.php index 6bab53bc587cd..2401b43abb54a 100644 --- a/app/code/Magento/Backend/Controller/Adminhtml/System/Account.php +++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Account.php @@ -80,13 +80,13 @@ public function saveAction() try { $user->save(); $user->sendPasswordResetNotificationEmail(); - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __('The account has been saved.') ); } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addMessages($e->getMessages()); + $this->messageManager->addMessages($e->getMessages()); } catch (\Exception $e) { - $this->_getSession()->addError( + $this->messageManager->addError( __('An error occurred while saving account.') ); } diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Config/Save.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Config/Save.php index ec6a87db567a5..8e78a2d5c3be6 100644 --- a/app/code/Magento/Backend/Controller/Adminhtml/System/Config/Save.php +++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Config/Save.php @@ -102,16 +102,16 @@ public function indexAction() $configModel = $this->_configFactory->create(array('data' => $configData)); $configModel->save(); - $this->_session->addSuccess( + $this->messageManager->addSuccess( __('You saved the configuration.') ); } catch (\Magento\Core\Exception $e) { $messages = explode("\n", $e->getMessage()); foreach ($messages as $message) { - $this->_session->addError($message); + $this->messageManager->addError($message); } } catch (\Exception $e) { - $this->_session->addException( + $this->messageManager->addException( $e, __('An error occurred while saving this configuration:') . ' ' . $e->getMessage() ); diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Design.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Design.php index 74e55caa5e738..787ec2188c102 100644 --- a/app/code/Magento/Backend/Controller/Adminhtml/System/Design.php +++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Design.php @@ -109,11 +109,10 @@ public function saveAction() try { $design->save(); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess(__('You saved the design change.')); + $this->messageManager->addSuccess(__('You saved the design change.')); } catch (\Exception $e){ - $this->_objectManager->get('Magento\Adminhtml\Model\Session') - ->addError($e->getMessage()) - ->setDesignData($data); + $this->messageManager->addError($e->getMessage()); + $this->_objectManager->get('Magento\Backend\Model\Session')->setDesignData($data); $this->_redirect('adminhtml/*/edit', array('id'=>$design->getId())); return; } @@ -130,15 +129,11 @@ public function deleteAction() try { $design->delete(); - - $this->_objectManager->get('Magento\Adminhtml\Model\Session') - ->addSuccess(__('You deleted the design change.')); + $this->messageManager->addSuccess(__('You deleted the design change.')); } catch (\Magento\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session') - ->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session') - ->addException($e, __("Cannot delete the design change.")); + $this->messageManager->addException($e, __("Cannot delete the design change.")); } } $this->getResponse()->setRedirect($this->getUrl('adminhtml/*/')); diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Store.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Store.php index d6ae70931e1f5..fb27a38d8f41b 100644 --- a/app/code/Magento/Backend/Controller/Adminhtml/System/Store.php +++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Store.php @@ -121,10 +121,9 @@ public function editStoreAction() { $this->_title->add(__('Stores')); - $session = $this->_getSession(); - if ($session->getPostData()) { - $this->_coreRegistry->register('store_post_data', $session->getPostData()); - $session->unsPostData(); + if ($this->_getSession()->getPostData()) { + $this->_coreRegistry->register('store_post_data', $this->_getSession()->getPostData()); + $this->_getSession()->unsPostData(); } if (!$this->_coreRegistry->registry('store_type')) { $this->_coreRegistry->register('store_type', 'store'); @@ -171,14 +170,14 @@ public function editStoreAction() } if ($this->_coreRegistry->registry('store_action') == 'edit' && $codeBase && !$model->isReadOnly()) { - $this->_getSession()->addNotice($codeBase); + $this->messageManager->addNotice($codeBase); } $this->_initAction() ->_addContent($this->_view->getLayout()->createBlock('Magento\Backend\Block\System\Store\Edit')); $this->_view->renderLayout(); } else { - $session->addError($notExists); + $this->messageManager->addError($notExists); $this->_redirect('adminhtml/*/'); } } @@ -190,7 +189,6 @@ public function saveAction() $this->_redirect('adminhtml/*/'); return; } - $session = $this->_getSession(); try { switch ($postData['store_type']) { @@ -206,7 +204,7 @@ public function saveAction() } $websiteModel->save(); - $session->addSuccess(__('The website has been saved.')); + $this->messageManager->addSuccess(__('The website has been saved.')); break; case 'group': @@ -224,7 +222,7 @@ public function saveAction() $this->_eventManager->dispatch('store_group_save', array('group' => $groupModel)); - $session->addSuccess(__('The store has been saved.')); + $this->messageManager->addSuccess(__('The store has been saved.')); break; case 'store': @@ -248,7 +246,7 @@ public function saveAction() $this->_eventManager->dispatch($eventName, array('store'=>$storeModel)); - $session->addSuccess(__('The store view has been saved')); + $this->messageManager->addSuccess(__('The store view has been saved')); break; default: $this->_redirect('adminhtml/*/'); @@ -257,11 +255,11 @@ public function saveAction() $this->_redirect('adminhtml/*/'); return; } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addMessages($e->getMessages()); - $session->setPostData($postData); + $this->messageManager->addMessages($e->getMessages()); + $this->_getSession()->setPostData($postData); } catch (\Exception $e) { - $session->addException($e, __('An error occurred while saving. Please review the error log.')); - $session->setPostData($postData); + $this->messageManager->addException($e, __('An error occurred while saving. Please review the error log.')); + $this->_getSession()->setPostData($postData); } $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl($this->getUrl('*'))); return; @@ -273,15 +271,14 @@ public function deleteWebsiteAction() { $this->_title->add(__('Delete Web Site')); - $session = $this->_getSession(); $itemId = $this->getRequest()->getParam('item_id', null); if (!$model = $this->_objectManager->create('Magento\Core\Model\Website')->load($itemId)) { - $session->addError(__('Unable to proceed. Please, try again.')); + $this->messageManager->addError(__('Unable to proceed. Please, try again.')); $this->_redirect('adminhtml/*/'); return ; } if (!$model->isCanDelete()) { - $session->addError(__('This website cannot be deleted.')); + $this->messageManager->addError(__('This website cannot be deleted.')); $this->_redirect('adminhtml/*/editWebsite', array('website_id' => $itemId)); return ; } @@ -303,15 +300,14 @@ public function deleteGroupAction() { $this->_title->add(__('Delete Store')); - $session = $this->_getSession(); $itemId = $this->getRequest()->getParam('item_id', null); if (!$model = $this->_objectManager->create('Magento\Core\Model\Store\Group')->load($itemId)) { - $session->addError(__('Unable to proceed. Please, try again.')); + $this->messageManager->addError(__('Unable to proceed. Please, try again.')); $this->_redirect('adminhtml/*/'); return ; } if (!$model->isCanDelete()) { - $session->addError(__('This store cannot be deleted.')); + $this->messageManager->addError(__('This store cannot be deleted.')); $this->_redirect('adminhtml/*/editGroup', array('group_id' => $itemId)); return ; } @@ -333,15 +329,14 @@ public function deleteStoreAction() { $this->_title->add(__('Delete Store View')); - $session = $this->_getSession(); $itemId = $this->getRequest()->getParam('item_id', null); if (!$model = $this->_objectManager->create('Magento\Core\Model\Store')->load($itemId)) { - $session->addError(__('Unable to proceed. Please, try again.')); + $this->messageManager->addError(__('Unable to proceed. Please, try again.')); $this->_redirect('adminhtml/*/'); return ; } if (!$model->isCanDelete()) { - $session->addError(__('This store view cannot be deleted.')); + $this->messageManager->addError(__('This store view cannot be deleted.')); $this->_redirect('adminhtml/*/editStore', array('store_id' => $itemId)); return ; } @@ -365,12 +360,12 @@ public function deleteWebsitePostAction() $model = $this->_objectManager->create('Magento\Core\Model\Website')->load($itemId); if (!$model) { - $this->_getSession()->addError(__('Unable to proceed. Please, try again')); + $this->messageManager->addError(__('Unable to proceed. Please, try again')); $this->_redirect('adminhtml/*/'); return ; } if (!$model->isCanDelete()) { - $this->_getSession()->addError(__('This website cannot be deleted.')); + $this->messageManager->addError(__('This website cannot be deleted.')); $this->_redirect('adminhtml/*/editWebsite', array('website_id' => $model->getId())); return ; } @@ -379,13 +374,13 @@ public function deleteWebsitePostAction() try { $model->delete(); - $this->_getSession()->addSuccess(__('The website has been deleted.')); + $this->messageManager->addSuccess(__('The website has been deleted.')); $this->_redirect('adminhtml/*/'); return ; } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addException($e, __('Unable to delete website. Please, try again later.')); + $this->messageManager->addException($e, __('Unable to delete website. Please, try again later.')); } $this->_redirect('adminhtml/*/editWebsite', array('website_id' => $itemId)); } @@ -395,12 +390,12 @@ public function deleteGroupPostAction() $itemId = $this->getRequest()->getParam('item_id'); if (!$model = $this->_objectManager->create('Magento\Core\Model\Store\Group')->load($itemId)) { - $this->_getSession()->addError(__('Unable to proceed. Please, try again.')); + $this->messageManager->addError(__('Unable to proceed. Please, try again.')); $this->_redirect('adminhtml/*/'); return ; } if (!$model->isCanDelete()) { - $this->_getSession()->addError(__('This store cannot be deleted.')); + $this->messageManager->addError(__('This store cannot be deleted.')); $this->_redirect('adminhtml/*/editGroup', array('group_id' => $model->getId())); return ; } @@ -409,13 +404,13 @@ public function deleteGroupPostAction() try { $model->delete(); - $this->_getSession()->addSuccess(__('The store has been deleted.')); + $this->messageManager->addSuccess(__('The store has been deleted.')); $this->_redirect('adminhtml/*/'); return ; } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addException($e, __('Unable to delete store. Please, try again later.')); + $this->messageManager->addException($e, __('Unable to delete store. Please, try again later.')); } $this->_redirect('adminhtml/*/editGroup', array('group_id' => $itemId)); } @@ -429,12 +424,12 @@ public function deleteStorePostAction() $itemId = $this->getRequest()->getParam('item_id'); if (!$model = $this->_objectManager->create('Magento\Core\Model\Store')->load($itemId)) { - $this->_getSession()->addError(__('Unable to proceed. Please, try again')); + $this->messageManager->addError(__('Unable to proceed. Please, try again')); $this->_redirect('adminhtml/*/'); return ; } if (!$model->isCanDelete()) { - $this->_getSession()->addError(__('This store view cannot be deleted.')); + $this->messageManager->addError(__('This store view cannot be deleted.')); $this->_redirect('adminhtml/*/editStore', array('store_id' => $model->getId())); return ; } @@ -446,13 +441,13 @@ public function deleteStorePostAction() $this->_eventManager->dispatch('store_delete', array('store' => $model)); - $this->_getSession()->addSuccess(__('The store view has been deleted.')); + $this->messageManager->addSuccess(__('The store view has been deleted.')); $this->_redirect('adminhtml/*/'); return ; } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addException($e, __('Unable to delete store view. Please, try again later.')); + $this->messageManager->addException($e, __('Unable to delete store view. Please, try again later.')); } $this->_redirect('adminhtml/*/editStore', array('store_id' => $itemId)); } @@ -479,16 +474,18 @@ protected function _backupDatabase($failPath, $arguments=array()) $backup = $this->_objectManager->create('Magento\Backup\Model\Backup') ->setTime(time()) ->setType('db') - ->setPath($this->_objectManager->get('Magento\App\Dir')->getDir('var') . DS . 'backups'); + ->setPath( + $this->_objectManager->get('Magento\Filesystem')->getPath(\Magento\Filesystem::VAR_DIR) . '/backups' + ); $backupDb->createBackup($backup); - $this->_getSession()->addSuccess(__('The database was backed up.')); + $this->messageManager->addSuccess(__('The database was backed up.')); } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect($failPath, $arguments); return ; } catch (\Exception $e) { - $this->_getSession()->addException($e, __('We couldn\'t create a backup right now. Please try again later.')); + $this->messageManager->addException($e, __('We couldn\'t create a backup right now. Please try again later.')); $this->_redirect($failPath, $arguments); return ; } @@ -503,7 +500,7 @@ protected function _backupDatabase($failPath, $arguments=array()) */ protected function _addDeletionNotice($typeTitle) { - $this->_getSession()->addNotice( + $this->messageManager->addNotice( __('Deleting a %1 will not delete the information associated with the %1 (e.g. categories, products, etc.), but the %1 will not be able to be restored. It is suggested that you create a database backup before deleting the %1.', $typeTitle) ); return $this; diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Variable.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Variable.php index d7203803eb7ac..78ef40ef4d4ff 100644 --- a/app/code/Magento/Backend/Controller/Adminhtml/System/Variable.php +++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Variable.php @@ -136,8 +136,8 @@ public function validateAction() $variable->addData($this->getRequest()->getPost('variable')); $result = $variable->validate(); if ($result !== true && is_string($result)) { - $this->_getSession()->addError($result); - $this->_view->getLayout()->initMessages('Magento\Adminhtml\Model\Session'); + $this->messageManager->addError($result); + $this->_view->getLayout()->initMessages(); $response->setError(true); $response->setMessage($this->_view->getLayout()->getMessagesBlock()->getGroupedHtml()); } @@ -157,7 +157,7 @@ public function saveAction() $variable->setData($data); try { $variable->save(); - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __('You saved the custom variable.') ); if ($back) { @@ -167,7 +167,7 @@ public function saveAction() } return; } catch (\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect('adminhtml/*/edit', array('_current' => true, )); return; } @@ -185,11 +185,11 @@ public function deleteAction() if ($variable->getId()) { try { $variable->delete(); - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __('You deleted the customer.') ); } catch (\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect('adminhtml/*/edit', array('_current' => true, )); return; } diff --git a/app/code/Magento/Adminhtml/Controller/Urlrewrite.php b/app/code/Magento/Backend/Controller/Adminhtml/Urlrewrite.php similarity index 90% rename from app/code/Magento/Adminhtml/Controller/Urlrewrite.php rename to app/code/Magento/Backend/Controller/Adminhtml/Urlrewrite.php index 712e86affb549..0474b59aa8cb9 100644 --- a/app/code/Magento/Adminhtml/Controller/Urlrewrite.php +++ b/app/code/Magento/Backend/Controller/Adminhtml/Urlrewrite.php @@ -31,7 +31,7 @@ * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Controller; +namespace Magento\Backend\Controller\Adminhtml; class Urlrewrite extends \Magento\Backend\App\Action { @@ -88,7 +88,7 @@ public function editAction() switch ($mode) { case self::PRODUCT_MODE: $editBlock = $this->_view->getLayout() - ->createBlock('Magento\Adminhtml\Block\Urlrewrite\Catalog\Product\Edit', '', array('data' => array( + ->createBlock('Magento\Backend\Block\Urlrewrite\Catalog\Product\Edit', '', array('data' => array( 'category' => $this->_getCategory(), 'product' => $this->_getProduct(), 'is_category_mode' => $this->getRequest()->has('category'), @@ -97,7 +97,7 @@ public function editAction() break; case self::CATEGORY_MODE: $editBlock = $this->_view->getLayout() - ->createBlock('Magento\Adminhtml\Block\Urlrewrite\Catalog\Category\Edit', '', array('data' => array( + ->createBlock('Magento\Backend\Block\Urlrewrite\Catalog\Category\Edit', '', array('data' => array( 'category' => $this->_getCategory(), 'url_rewrite' => $this->_getUrlRewrite() ))); @@ -105,7 +105,7 @@ public function editAction() case self::CMS_PAGE_MODE: $editBlock = $this->_view->getLayout() ->createBlock( - 'Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Edit', '', + 'Magento\Backend\Block\Urlrewrite\Cms\Page\Edit', '', array( 'data' => array( 'cms_page' => $this->_getCmsPage(), @@ -117,7 +117,7 @@ public function editAction() case self::ID_MODE: default: $editBlock = $this->_view->getLayout()->createBlock( - 'Magento\Adminhtml\Block\Urlrewrite\Edit', '', array( + 'Magento\Backend\Block\Urlrewrite\Edit', '', array( 'data' => array('url_rewrite' => $this->_getUrlRewrite()) )); break; @@ -146,7 +146,7 @@ private function _getMode() } elseif ($this->getRequest()->has('id')) { $mode = self::ID_MODE; } else { - $mode = $this->_objectManager->get('Magento\Adminhtml\Block\Urlrewrite\Selector')->getDefaultMode(); + $mode = $this->_objectManager->get('Magento\Backend\Block\Urlrewrite\Selector')->getDefaultMode(); } return $mode; } @@ -157,7 +157,7 @@ private function _getMode() public function productGridAction() { $this->getResponse()->setBody( - $this->_view->getLayout()->createBlock('Magento\Adminhtml\Block\Urlrewrite\Catalog\Product\Grid')->toHtml() + $this->_view->getLayout()->createBlock('Magento\Backend\Block\Urlrewrite\Catalog\Product\Grid')->toHtml() ); } @@ -168,7 +168,7 @@ public function categoriesJsonAction() { $categoryId = $this->getRequest()->getParam('id', null); $this->getResponse()->setBody( - $this->_objectManager->get('Magento\Adminhtml\Block\Urlrewrite\Catalog\Category\Tree') + $this->_objectManager->get('Magento\Backend\Block\Urlrewrite\Catalog\Category\Tree') ->getTreeArray($categoryId, true, 1) ); } @@ -179,7 +179,7 @@ public function categoriesJsonAction() public function cmsPageGridAction() { $this->getResponse()->setBody( - $this->_view->getLayout()->createBlock('Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Grid')->toHtml() + $this->_view->getLayout()->createBlock('Magento\Backend\Block\Urlrewrite\Cms\Page\Grid')->toHtml() ); } @@ -189,8 +189,8 @@ public function cmsPageGridAction() public function saveAction() { if ($data = $this->getRequest()->getPost()) { - /** @var $session \Magento\Adminhtml\Model\Session */ - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); + /** @var $session \Magento\Backend\Model\Session */ + $session = $this->_objectManager->get('Magento\Backend\Model\Session'); try { // set basic urlrewrite data /** @var $model \Magento\Core\Model\Url\Rewrite */ @@ -221,16 +221,15 @@ public function saveAction() $this->_onUrlRewriteSaveAfter($model); - $session->addSuccess(__('The URL Rewrite has been saved.')); + $this->messageManager->addSuccess(__('The URL Rewrite has been saved.')); $this->_redirect('adminhtml/*/'); return; } catch (\Magento\Core\Exception $e) { - $session->addError($e->getMessage()) - ->setUrlrewriteData($data); + $this->messageManager->addError($e->getMessage()); + $session->setUrlrewriteData($data); } catch (\Exception $e) { - $session->addException($e, - __('An error occurred while saving URL Rewrite.')) - ->setUrlrewriteData($data); + $this->messageManager->addException($e, __('An error occurred while saving URL Rewrite.')); + $session->setUrlrewriteData($data); } } $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl($this->getUrl('*'))); @@ -406,14 +405,9 @@ public function deleteAction() if ($this->_getUrlRewrite()->getId()) { try { $this->_getUrlRewrite()->delete(); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess( - __('The URL Rewrite has been deleted.') - ); + $this->messageManager->addSuccess(__('The URL Rewrite has been deleted.')); } catch (\Exception $e) { - $errorMessage = - __('An error occurred while deleting URL Rewrite.'); - $this->_objectManager->get('Magento\Adminhtml\Model\Session') - ->addException($e, $errorMessage); + $this->messageManager->addException($e, __('An error occurred while deleting URL Rewrite.')); $this->_redirect('adminhtml/*/edit/', array('id' => $this->_getUrlRewrite()->getId())); return; } diff --git a/app/code/Magento/Adminhtml/Helper/Addresses.php b/app/code/Magento/Backend/Helper/Addresses.php similarity index 97% rename from app/code/Magento/Adminhtml/Helper/Addresses.php rename to app/code/Magento/Backend/Helper/Addresses.php index ddbf8e4943ff0..d8a450b98b3f7 100644 --- a/app/code/Magento/Adminhtml/Helper/Addresses.php +++ b/app/code/Magento/Backend/Helper/Addresses.php @@ -31,7 +31,7 @@ * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Helper; +namespace Magento\Backend\Helper; class Addresses extends \Magento\App\Helper\AbstractHelper { diff --git a/app/code/Magento/Adminhtml/Helper/Js.php b/app/code/Magento/Backend/Helper/Js.php similarity index 98% rename from app/code/Magento/Adminhtml/Helper/Js.php rename to app/code/Magento/Backend/Helper/Js.php index 29e86ec558ab9..4589303657508 100644 --- a/app/code/Magento/Adminhtml/Helper/Js.php +++ b/app/code/Magento/Backend/Helper/Js.php @@ -31,7 +31,7 @@ * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Helper; +namespace Magento\Backend\Helper; class Js extends \Magento\Core\Helper\Js { diff --git a/app/code/Magento/Adminhtml/Helper/Media/Js.php b/app/code/Magento/Backend/Helper/Media/Js.php similarity index 98% rename from app/code/Magento/Adminhtml/Helper/Media/Js.php rename to app/code/Magento/Backend/Helper/Media/Js.php index 0189e26daa28a..9a1108c88277b 100644 --- a/app/code/Magento/Adminhtml/Helper/Media/Js.php +++ b/app/code/Magento/Backend/Helper/Media/Js.php @@ -33,7 +33,7 @@ * @package Magento_Adminhtml * @author Magento Core Team */ -namespace Magento\Adminhtml\Helper\Media; +namespace Magento\Backend\Helper\Media; class Js extends \Magento\Core\Helper\Js { diff --git a/app/code/Magento/Backend/Model/Auth/Session.php b/app/code/Magento/Backend/Model/Auth/Session.php index fb023198b7c88..9b21e4e7d35e5 100644 --- a/app/code/Magento/Backend/Model/Auth/Session.php +++ b/app/code/Magento/Backend/Model/Auth/Session.php @@ -30,9 +30,10 @@ * Backend Auth session model * * @SuppressWarnings(PHPMD.CouplingBetweenObjects) + * @todo implement solution that keeps is_first_visit flag in session during redirects */ class Session - extends \Magento\Core\Model\Session\AbstractSession + extends \Magento\Session\SessionManager implements \Magento\Backend\Model\Auth\StorageInterface { const XML_PATH_SESSION_LIFETIME = 'admin/security/session_lifetime'; @@ -62,48 +63,32 @@ class Session protected $_config; /** - * @param \Magento\Core\Model\Session\Context $context + * @param \Magento\App\RequestInterface $request * @param \Magento\Session\SidResolverInterface $sidResolver * @param \Magento\Session\Config\ConfigInterface $sessionConfig + * @param \Magento\Session\SaveHandlerInterface $saveHandler + * @param \Magento\Session\ValidatorInterface $validator + * @param \Magento\Session\StorageInterface $storage * @param \Magento\Acl\Builder $aclBuilder * @param \Magento\Backend\Model\Url $backendUrl * @param \Magento\Backend\App\ConfigInterface $config - * @param array $data */ public function __construct( - \Magento\Core\Model\Session\Context $context, + \Magento\App\RequestInterface $request, \Magento\Session\SidResolverInterface $sidResolver, \Magento\Session\Config\ConfigInterface $sessionConfig, + \Magento\Session\SaveHandlerInterface $saveHandler, + \Magento\Session\ValidatorInterface $validator, + \Magento\Session\StorageInterface $storage, \Magento\Acl\Builder $aclBuilder, \Magento\Backend\Model\Url $backendUrl, - \Magento\Backend\App\ConfigInterface $config, - array $data = array() + \Magento\Backend\App\ConfigInterface $config ) { $this->_config = $config; $this->_aclBuilder = $aclBuilder; $this->_backendUrl = $backendUrl; - parent::__construct($context, $sidResolver, $sessionConfig, $data); - $this->start('admin'); - } - - /** - * Pull out information from session whether there is currently the first page after log in - * - * The idea is to set this value on login(), then redirect happens, - * after that on next request the value is grabbed once the session is initialized - * Since the session is used as a singleton, the value will be in $_isFirstPageAfterLogin until the end of request, - * unless it is reset intentionally from somewhere - * - * @param string $namespace - * @param string $sessionName - * @return \Magento\Backend\Model\Auth\Session - * @see self::login() - */ - public function start($namespace = 'default', $sessionName = null) - { - parent::start($namespace, $sessionName); - // @todo implement solution that keeps is_first_visit flag in session during redirects - return $this; + parent::__construct($request, $sidResolver, $sessionConfig, $saveHandler, $validator, $storage); + $this->start(); } /** diff --git a/app/code/Magento/Backend/Model/Config/Backend/Admin/Robots.php b/app/code/Magento/Backend/Model/Config/Backend/Admin/Robots.php index 43ab9de786556..cc0e414036862 100644 --- a/app/code/Magento/Backend/Model/Config/Backend/Admin/Robots.php +++ b/app/code/Magento/Backend/Model/Config/Backend/Admin/Robots.php @@ -32,14 +32,14 @@ class Robots extends \Magento\Core\Model\Config\Value { /** - * @var \Magento\Filesystem + * @var \Magento\Filesystem\Directory\Write */ - protected $_filesystem; + protected $_directory; /** * @var string */ - protected $_filePath; + protected $_file; /** * @param \Magento\Core\Model\Context $context @@ -47,7 +47,6 @@ class Robots extends \Magento\Core\Model\Config\Value * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\Config $config * @param \Magento\Filesystem $filesystem - * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param \Magento\Data\Collection\Db $resourceCollection * @param array $data @@ -58,7 +57,6 @@ public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\Config $config, \Magento\Filesystem $filesystem, - \Magento\App\Dir $dir, \Magento\Core\Model\Resource\AbstractResource $resource = null, \Magento\Data\Collection\Db $resourceCollection = null, array $data = array() @@ -72,8 +70,8 @@ public function __construct( $resourceCollection, $data ); - $this->_filesystem = $filesystem; - $this->_filePath = $dir->getDir(\Magento\App\Dir::ROOT) . '/robots.txt'; + $this->_directory = $filesystem->getDirectoryWrite(\Magento\Filesystem::ROOT); + $this->_file = 'robots.txt'; } /** @@ -83,9 +81,8 @@ public function __construct( */ protected function _getDefaultValue() { - $file = $this->_filePath; - if ($this->_filesystem->isFile($file)) { - return $this->_filesystem->read($file); + if ($this->_directory->isFile($this->_file)) { + return $this->_directory->readFile($this->_file); } return false; } @@ -97,7 +94,7 @@ protected function _getDefaultValue() */ protected function _afterLoad() { - if (!(string) $this->getValue()) { + if (!(string)$this->getValue()) { $this->setValue($this->_getDefaultValue()); } @@ -112,7 +109,7 @@ protected function _afterLoad() protected function _afterSave() { if ($this->getValue()) { - $this->_filesystem->write($this->_filePath, $this->getValue()); + $this->_directory->writeFile($this->_file, $this->getValue()); } return parent::_afterSave(); diff --git a/app/code/Magento/Backend/Model/Config/Backend/Email/Logo.php b/app/code/Magento/Backend/Model/Config/Backend/Email/Logo.php index eac479fc86241..d2063f33cc1fc 100644 --- a/app/code/Magento/Backend/Model/Config/Backend/Email/Logo.php +++ b/app/code/Magento/Backend/Model/Config/Backend/Email/Logo.php @@ -40,11 +40,6 @@ class Logo extends \Magento\Backend\Model\Config\Backend\Image */ const UPLOAD_DIR = 'email/logo'; - /** - * Token for the root part of directory path for uploading - */ - const UPLOAD_ROOT_TOKEN = 'system/filesystem/media'; - /** * Upload max file size in kilobytes * @@ -59,10 +54,7 @@ class Logo extends \Magento\Backend\Model\Config\Backend\Image */ protected function _getUploadDir() { - $uploadDir = $this->_appendScopeInfo(self::UPLOAD_DIR); - $uploadRoot = $this->_getUploadRoot(self::UPLOAD_ROOT_TOKEN); - $uploadDir = $uploadRoot . DS . $uploadDir; - return $uploadDir; + return $this->_mediaDirectory->getAbsolutePath($this->_appendScopeInfo(self::UPLOAD_DIR)); } /** @@ -89,8 +81,7 @@ protected function _beforeSave() $fileTmpName = $_FILES['groups']['tmp_name'][$this->getGroupId()]['fields'][$this->getField()]['value']; if ($this->getOldValue() && ($fileTmpName || $deleteFlag)) { - $uploadPath = $this->_getUploadRoot(self::UPLOAD_ROOT_TOKEN) . DS . self::UPLOAD_DIR; - $this->_filesystem->delete($uploadPath . DS . $this->getOldValue(), $uploadPath); + $this->_mediaDirectory->delete(self::UPLOAD_DIR . '/' . $this->getOldValue()); } return parent::_beforeSave(); } diff --git a/app/code/Magento/Backend/Model/Config/Backend/File.php b/app/code/Magento/Backend/Model/Config/Backend/File.php index ba08ac5b49f16..53d5caed72d14 100644 --- a/app/code/Magento/Backend/Model/Config/Backend/File.php +++ b/app/code/Magento/Backend/Model/Config/Backend/File.php @@ -51,14 +51,14 @@ class File extends \Magento\Core\Model\Config\Value protected $_filesystem; /** - * @var \Magento\Core\Model\File\UploaderFactory + * @var \Magento\Filesystem\Directory\WriteInterface */ - protected $_uploaderFactory; + protected $_mediaDirectory; /** - * @var \Magento\App\Dir + * @var \Magento\Core\Model\File\UploaderFactory */ - protected $_dir; + protected $_uploaderFactory; /** * @param \Magento\Core\Model\Context $context @@ -68,7 +68,6 @@ class File extends \Magento\Core\Model\Config\Value * @param \Magento\Core\Model\File\UploaderFactory $uploaderFactory * @param \Magento\Backend\Model\Config\Backend\File\RequestData\RequestDataInterface $requestData * @param \Magento\Filesystem $filesystem - * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param \Magento\Data\Collection\Db $resourceCollection * @param array $data @@ -81,7 +80,6 @@ public function __construct( \Magento\Core\Model\File\UploaderFactory $uploaderFactory, \Magento\Backend\Model\Config\Backend\File\RequestData\RequestDataInterface $requestData, \Magento\Filesystem $filesystem, - \Magento\App\Dir $dir, \Magento\Core\Model\Resource\AbstractResource $resource = null, \Magento\Data\Collection\Db $resourceCollection = null, array $data = array() @@ -89,7 +87,7 @@ public function __construct( $this->_uploaderFactory = $uploaderFactory; $this->_requestData = $requestData; $this->_filesystem = $filesystem; - $this->_dir = $dir; + $this->_mediaDirectory = $filesystem->getDirectoryWrite(\Magento\Filesystem::MEDIA); parent::__construct($context, $registry, $storeManager, $config, $resource, $resourceCollection, $data); } @@ -149,8 +147,11 @@ protected function _beforeSave() */ public function validateMaxSize($filePath) { - if ($this->_maxFileSize > 0 - && $this->_filesystem->getFileSize($filePath, dirname($filePath)) > ($this->_maxFileSize * 1024)) { + $directory = $this->_filesystem->getDirectoryRead(\Magento\Filesystem::SYS_TMP); + if ( + $this->_maxFileSize > 0 && + $directory->stat($directory->getRelativePath($filePath))['size'] > ($this->_maxFileSize * 1024) + ) { throw new \Magento\Core\Exception( __('The file you\'re uploading exceeds the server size limit of %1 kilobytes.', $this->_maxFileSize) ); @@ -195,8 +196,7 @@ protected function _getUploadDir() } if (array_key_exists('config', $fieldConfig['upload_dir'])) { - $uploadRoot = $this->_getUploadRoot($fieldConfig['upload_dir']['config']); - $uploadDir = $uploadRoot . '/' . $uploadDir; + $uploadDir = $this->_mediaDirectory->getAbsolutePath($uploadDir); } } else { $uploadDir = (string) $fieldConfig['upload_dir']; @@ -205,18 +205,6 @@ protected function _getUploadDir() return $uploadDir; } - /** - * Return the root part of directory path for uploading - * - * @var string - * @return string - * @SuppressWarnings(PHPMD.UnusedFormalParameter) - */ - protected function _getUploadRoot($token) - { - return $this->_dir->getDir(\Magento\App\Dir::MEDIA); - } - /** * Prepend path with scope info * diff --git a/app/code/Magento/Backend/Model/Config/Backend/Image/Favicon.php b/app/code/Magento/Backend/Model/Config/Backend/Image/Favicon.php index 65888f0b80414..716196f0b1e7a 100644 --- a/app/code/Magento/Backend/Model/Config/Backend/Image/Favicon.php +++ b/app/code/Magento/Backend/Model/Config/Backend/Image/Favicon.php @@ -37,12 +37,6 @@ class Favicon extends \Magento\Backend\Model\Config\Backend\Image */ const UPLOAD_DIR = 'favicon'; - /** - * Token for the root part of directory path for uploading - * - */ - const UPLOAD_ROOT = 'media'; - /** * Return path to directory for upload file * @@ -51,10 +45,7 @@ class Favicon extends \Magento\Backend\Model\Config\Backend\Image */ protected function _getUploadDir() { - $uploadDir = $this->_appendScopeInfo(self::UPLOAD_DIR); - $uploadRoot = $this->_getUploadRoot(self::UPLOAD_ROOT); - $uploadDir = $uploadRoot . '/' . $uploadDir; - return $uploadDir; + return $this->_mediaDirectory->getAbsolutePath($this->_appendScopeInfo(self::UPLOAD_DIR)); } /** @@ -76,15 +67,4 @@ protected function _getAllowedExtensions() { return array('ico', 'png', 'gif', 'jpg', 'jpeg', 'apng', 'svg'); } - - /** - * Get real media dir path - * - * @param $token - * @return string - */ - protected function _getUploadRoot($token) - { - return $this->_dir->getDir($token); - } } diff --git a/app/code/Magento/Backend/Model/Config/Backend/Image/Logo.php b/app/code/Magento/Backend/Model/Config/Backend/Image/Logo.php index da5578d499b6d..48f1c4ce6055d 100644 --- a/app/code/Magento/Backend/Model/Config/Backend/Image/Logo.php +++ b/app/code/Magento/Backend/Model/Config/Backend/Image/Logo.php @@ -37,12 +37,6 @@ class Logo extends \Magento\Backend\Model\Config\Backend\Image */ const UPLOAD_DIR = 'logo'; - /** - * Token for the root part of directory path for uploading - * - */ - const UPLOAD_ROOT = 'media'; - /** * Return path to directory for upload file * @@ -51,10 +45,7 @@ class Logo extends \Magento\Backend\Model\Config\Backend\Image */ protected function _getUploadDir() { - $uploadDir = $this->_appendScopeInfo(self::UPLOAD_DIR); - $uploadRoot = $this->_getUploadRoot(self::UPLOAD_ROOT); - $uploadDir = $uploadRoot . DIRECTORY_SEPARATOR . $uploadDir; - return $uploadDir; + return $this->_mediaDirectory->getAbsolutePath($this->_appendScopeInfo(self::UPLOAD_DIR)); } /** @@ -66,15 +57,4 @@ protected function _addWhetherScopeInfo() { return true; } - - /** - * Get real media dir path - * - * @param $token - * @return string - */ - protected function _getUploadRoot($token) - { - return $this->_dir->getDir($token); - } } diff --git a/app/code/Magento/Backend/Model/Config/SchemaLocator.php b/app/code/Magento/Backend/Model/Config/SchemaLocator.php index c5b8ef2a80a32..e13067739b9b2 100644 --- a/app/code/Magento/Backend/Model/Config/SchemaLocator.php +++ b/app/code/Magento/Backend/Model/Config/SchemaLocator.php @@ -46,11 +46,9 @@ class SchemaLocator implements \Magento\Config\SchemaLocatorInterface */ public function __construct(\Magento\Module\Dir\Reader $moduleReader) { - $this->_schema = $moduleReader->getModuleDir('etc', 'Magento_Backend') - . DIRECTORY_SEPARATOR . 'system.xsd'; + $this->_schema = $moduleReader->getModuleDir('etc', 'Magento_Backend') . '/system.xsd'; - $this->_perFileSchema = $moduleReader->getModuleDir('etc', 'Magento_Backend') - . DIRECTORY_SEPARATOR . 'system_file.xsd'; + $this->_perFileSchema = $moduleReader->getModuleDir('etc', 'Magento_Backend') . '/system_file.xsd'; } /** diff --git a/app/code/Magento/Backend/Model/Menu/Config/SchemaLocator.php b/app/code/Magento/Backend/Model/Menu/Config/SchemaLocator.php index 11236d78ae407..81cf059d7bae3 100644 --- a/app/code/Magento/Backend/Model/Menu/Config/SchemaLocator.php +++ b/app/code/Magento/Backend/Model/Menu/Config/SchemaLocator.php @@ -46,7 +46,7 @@ class SchemaLocator implements \Magento\Config\SchemaLocatorInterface */ public function __construct(\Magento\Module\Dir\Reader $moduleReader) { - $this->_schema = $moduleReader->getModuleDir('etc', 'Magento_Backend') . DIRECTORY_SEPARATOR . 'menu.xsd'; + $this->_schema = $moduleReader->getModuleDir('etc', 'Magento_Backend') . '/menu.xsd'; } /** diff --git a/app/code/Magento/Backend/Model/Menu/Item.php b/app/code/Magento/Backend/Model/Menu/Item.php index 7b3e40b63929b..62810a2787a2a 100644 --- a/app/code/Magento/Backend/Model/Menu/Item.php +++ b/app/code/Magento/Backend/Model/Menu/Item.php @@ -50,16 +50,9 @@ class Item /** * Module of menu item * - * @var \Magento\App\Helper\AbstractHelper - */ - protected $_moduleHelper; - - /** - * Module helper name - * * @var string */ - protected $_moduleHelperName; + protected $_moduleName; /** * Menu item sort index in list @@ -166,13 +159,18 @@ class Item protected $_moduleList; /** - * @param \Magento\Backend\Model\Menu\Item\Validator $validator + * @var \Magento\Module\Manager + */ + private $_moduleManager; + + /** + * @param Item\Validator $validator * @param \Magento\AuthorizationInterface $authorization * @param \Magento\Core\Model\Store\Config $storeConfig * @param \Magento\Backend\Model\MenuFactory $menuFactory * @param \Magento\Backend\Model\Url $urlModel - * @param \Magento\App\Helper\AbstractHelper $helper * @param \Magento\Module\ModuleListInterface $moduleList + * @param \Magento\Module\Manager $moduleManager * @param array $data */ public function __construct( @@ -181,18 +179,19 @@ public function __construct( \Magento\Core\Model\Store\Config $storeConfig, \Magento\Backend\Model\MenuFactory $menuFactory, \Magento\Backend\Model\Url $urlModel, - \Magento\App\Helper\AbstractHelper $helper, \Magento\Module\ModuleListInterface $moduleList, + \Magento\Module\Manager $moduleManager, array $data = array() ) { $this->_validator = $validator; $this->_validator->validate($data); + $this->_moduleManager = $moduleManager; $this->_acl = $authorization; $this->_storeConfig = $storeConfig; $this->_menuFactory = $menuFactory; $this->_urlModel = $urlModel; - $this->_moduleHelper = $helper; + $this->_moduleName = isset($data['module']) ? $data['module'] : 'Magento_Backend'; $this->_moduleList = $moduleList; $this->_id = $data['id']; @@ -288,7 +287,7 @@ public function setAction($action) } /** - * Chechk whether item has javascript callback on click + * Check whether item has javascript callback on click * * @return bool */ @@ -371,14 +370,14 @@ public function setTooltip($tooltip) /** * Set Item module * - * @param \Magento\App\Helper\AbstractHelper $helper + * @param string $module * @return \Magento\Backend\Model\Menu\Item * @throws \InvalidArgumentException */ - public function setModuleHelper(\Magento\App\Helper\AbstractHelper $helper) + public function setModule($module) { - $this->_validator->validateParam('module', $helper); - $this->_moduleHelper = $helper; + $this->_validator->validateParam('module', $module); + $this->_moduleName = $module; return $this; } @@ -405,7 +404,7 @@ public function setModuleDependency($moduleName) */ public function setConfigDependency($configPath) { - $this->_validator->validateParam('depenedsOnConfig', $configPath); + $this->_validator->validateParam('dependsOnConfig', $configPath); $this->_dependsOnConfig = $configPath; return $this; } @@ -417,7 +416,7 @@ public function setConfigDependency($configPath) */ public function isDisabled() { - return !$this->_moduleHelper->isModuleOutputEnabled() + return !$this->_moduleManager->isOutputEnabled($this->_moduleName) || !$this->_isModuleDependenciesAvailable() || !$this->_isConfigDependenciesAvailable(); } @@ -465,18 +464,12 @@ public function isAllowed() public function __sleep() { - $helperClass = get_class($this->_moduleHelper); - // Save original class name of the helper - if (substr($helperClass, -1 * strlen('Interceptor')) === 'Interceptor') { - $helperClass = get_parent_class($helperClass); - } - $this->_moduleHelperName = $helperClass; if ($this->_submenu) { $this->_serializedSubmenu = $this->_submenu->serialize(); } return array( '_parentId', - '_moduleHelperName', + '_moduleName', '_sortIndex', '_dependsOnConfig', '_id', @@ -493,7 +486,7 @@ public function __sleep() public function __wakeup() { $objectManager = \Magento\App\ObjectManager::getInstance(); - $this->_moduleHelper = $objectManager->get($this->_moduleHelperName); + $this->_moduleManager = $objectManager->get('Magento\Module\Manager'); $this->_validator = $objectManager->get('Magento\Backend\Model\Menu\Item\Validator'); $this->_acl = $objectManager->get('Magento\AuthorizationInterface'); $this->_storeConfig = $objectManager->get('Magento\Core\Model\Store\Config'); diff --git a/app/code/Magento/Backend/Model/Menu/Item/Factory.php b/app/code/Magento/Backend/Model/Menu/Item/Factory.php index e9200060fb984..259409fb5beab 100644 --- a/app/code/Magento/Backend/Model/Menu/Item/Factory.php +++ b/app/code/Magento/Backend/Model/Menu/Item/Factory.php @@ -32,21 +32,12 @@ class Factory */ protected $_objectManager; - /** - * @var \Magento\App\Helper\HelperFactory - */ - protected $_helperFactory; - /** * @param \Magento\ObjectManager $objectManager - * @param \Magento\App\Helper\HelperFactory $helperFactory */ - public function __construct( - \Magento\ObjectManager $objectManager, - \Magento\App\Helper\HelperFactory $helperFactory - ) { + public function __construct(\Magento\ObjectManager $objectManager) + { $this->_objectManager = $objectManager; - $this->_helperFactory = $helperFactory; } /** @@ -57,13 +48,6 @@ public function __construct( */ public function create(array $data = array()) { - $module = 'Magento\Backend\Helper\Data'; - if (isset($data['module'])) { - $module = $data['module']; - unset($data['module']); - } - $data = array('data' => $data); - $data['helper'] = $this->_helperFactory->get($module); - return $this->_objectManager->create('Magento\Backend\Model\Menu\Item', $data); + return $this->_objectManager->create('Magento\Backend\Model\Menu\Item', array('data' => $data)); } } diff --git a/app/code/Magento/Backend/Model/Session.php b/app/code/Magento/Backend/Model/Session.php index 5f0e0863a5038..4e18d11b64e74 100644 --- a/app/code/Magento/Backend/Model/Session.php +++ b/app/code/Magento/Backend/Model/Session.php @@ -25,22 +25,26 @@ */ namespace Magento\Backend\Model; -class Session extends \Magento\Core\Model\Session\AbstractSession +class Session extends \Magento\Session\SessionManager { /** - * @param \Magento\Core\Model\Session\Context $context + * @param \Magento\App\RequestInterface $request * @param \Magento\Session\SidResolverInterface $sidResolver * @param \Magento\Session\Config\ConfigInterface $sessionConfig - * @param array $data + * @param \Magento\Session\SaveHandlerInterface $saveHandler + * @param \Magento\Session\ValidatorInterface $validator + * @param \Magento\Session\StorageInterface $storage */ public function __construct( - \Magento\Core\Model\Session\Context $context, + \Magento\App\RequestInterface $request, \Magento\Session\SidResolverInterface $sidResolver, \Magento\Session\Config\ConfigInterface $sessionConfig, - array $data = array() + \Magento\Session\SaveHandlerInterface $saveHandler, + \Magento\Session\ValidatorInterface $validator, + \Magento\Session\StorageInterface $storage ) { - parent::__construct($context, $sidResolver, $sessionConfig, $data); - $this->start('adminhtml'); + parent::__construct($request, $sidResolver, $sessionConfig, $saveHandler, $validator, $storage); + $this->start(); } /** diff --git a/app/code/Magento/Adminhtml/Model/Session/Quote.php b/app/code/Magento/Backend/Model/Session/Quote.php similarity index 81% rename from app/code/Magento/Adminhtml/Model/Session/Quote.php rename to app/code/Magento/Backend/Model/Session/Quote.php index 9676de45bb8cc..cc2fde259c641 100644 --- a/app/code/Magento/Adminhtml/Model/Session/Quote.php +++ b/app/code/Magento/Backend/Model/Session/Quote.php @@ -24,12 +24,12 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -namespace Magento\Adminhtml\Model\Session; +namespace Magento\Backend\Model\Session; /** * Adminhtml quote session */ -class Quote extends \Magento\Core\Model\Session\AbstractSession +class Quote extends \Magento\Session\SessionManager { const XML_PATH_DEFAULT_CREATEACCOUNT_GROUP = 'customer/create_account/default_group'; @@ -77,28 +77,48 @@ class Quote extends \Magento\Core\Model\Session\AbstractSession protected $_quoteFactory; /** - * @param \Magento\Core\Model\Session\Context $context + * @var \Magento\Core\Model\StoreManagerInterface + */ + protected $_storeManager; + + /** + * @var \Magento\Core\Model\Store\Config + */ + protected $_coreStoreConfig; + + /** + * @param \Magento\App\RequestInterface $request * @param \Magento\Session\SidResolverInterface $sidResolver * @param \Magento\Session\Config\ConfigInterface $sessionConfig + * @param \Magento\Session\SaveHandlerInterface $saveHandler + * @param \Magento\Session\ValidatorInterface $validator + * @param \Magento\Session\StorageInterface $storage * @param \Magento\Sales\Model\QuoteFactory $quoteFactory * @param \Magento\Customer\Model\CustomerFactory $customerFactory * @param \Magento\Sales\Model\OrderFactory $orderFactory - * @param array $data + * @param \Magento\Core\Model\StoreManagerInterface $storeManager + * @param \Magento\Core\Model\Store\Config $coreStoreConfig */ public function __construct( - \Magento\Core\Model\Session\Context $context, + \Magento\App\RequestInterface $request, \Magento\Session\SidResolverInterface $sidResolver, \Magento\Session\Config\ConfigInterface $sessionConfig, + \Magento\Session\SaveHandlerInterface $saveHandler, + \Magento\Session\ValidatorInterface $validator, + \Magento\Session\StorageInterface $storage, \Magento\Sales\Model\QuoteFactory $quoteFactory, \Magento\Customer\Model\CustomerFactory $customerFactory, \Magento\Sales\Model\OrderFactory $orderFactory, - array $data = array() + \Magento\Core\Model\StoreManagerInterface $storeManager, + \Magento\Core\Model\Store\Config $coreStoreConfig ) { $this->_quoteFactory = $quoteFactory; $this->_customerFactory = $customerFactory; $this->_orderFactory = $orderFactory; - parent::__construct($context, $sidResolver, $sessionConfig, $data); - $this->start('adminhtml_quote'); + $this->_storeManager = $storeManager; + $this->_coreStoreConfig = $coreStoreConfig; + parent::__construct($request, $sidResolver, $sessionConfig, $saveHandler, $validator, $storage); + $this->start(); if ($this->_storeManager->hasSingleStore()) { $this->setStoreId($this->_storeManager->getStore(true)->getId()); } @@ -134,7 +154,7 @@ public function getQuote() * Set customer model object * To enable quick switch of preconfigured customer * @param \Magento\Customer\Model\Customer $customer - * @return \Magento\Adminhtml\Model\Session\Quote + * @return \Magento\Backend\Model\Session\Quote */ public function setCustomer(\Magento\Customer\Model\Customer $customer) { diff --git a/app/code/Magento/Backend/Model/Translate/Inline/ConfigFactory.php b/app/code/Magento/Backend/Model/Translate/Inline/ConfigFactory.php index ac9b647c74112..387327146e12b 100644 --- a/app/code/Magento/Backend/Model/Translate/Inline/ConfigFactory.php +++ b/app/code/Magento/Backend/Model/Translate/Inline/ConfigFactory.php @@ -31,36 +31,13 @@ class ConfigFactory extends \Magento\Core\Model\Translate\Inline\ConfigFactory { - /** - * @var \Magento\App\State - */ - protected $_appState; - - /** - * @param \Magento\ObjectManager $objectManager - * @param \Magento\App\State $appState - */ - public function __construct(\Magento\ObjectManager $objectManager, \Magento\App\State $appState) - { - $this->_appState = $appState; - parent::__construct($objectManager); - } - /** * Create instance of inline translate config * - * @param string|null $area * @return \Magento\Core\Model\Translate\Inline\ConfigInterface */ - public function create($area = null) + public function create() { - if (!isset($area)) { - $area = $this->_appState->getAreaCode(); - } - if ($area == \Magento\Backend\App\Area\FrontNameResolver::AREA_CODE) { - return $this->_objectManager->create('Magento\Backend\Model\Translate\Inline\Config'); - } - - return parent::create(); + return $this->_objectManager->create('Magento\Backend\Model\Translate\Inline\Config'); } } diff --git a/app/code/Magento/Backend/Model/View.php b/app/code/Magento/Backend/Model/View.php index 394ae973d1ea7..831af0027d3f9 100644 --- a/app/code/Magento/Backend/Model/View.php +++ b/app/code/Magento/Backend/Model/View.php @@ -67,8 +67,8 @@ public function loadLayout($handles = null, $generateBlocks = true, $generateXml $this->generateLayoutBlocks(); $this->_isLayoutLoaded = true; } - $this->getLayout()->initMessages('Magento\Backend\Model\Session'); + $this->getLayout()->initMessages(); return $this; } -} \ No newline at end of file +} diff --git a/app/code/Magento/Backend/etc/adminhtml/di.xml b/app/code/Magento/Backend/etc/adminhtml/di.xml index 7d5fcda93e339..92398cd5469d2 100644 --- a/app/code/Magento/Backend/etc/adminhtml/di.xml +++ b/app/code/Magento/Backend/etc/adminhtml/di.xml @@ -131,4 +131,9 @@ + + + backend + + diff --git a/app/code/Magento/Backend/etc/adminhtml/menu.xml b/app/code/Magento/Backend/etc/adminhtml/menu.xml index ab157e5e4ab19..941ef4078179d 100644 --- a/app/code/Magento/Backend/etc/adminhtml/menu.xml +++ b/app/code/Magento/Backend/etc/adminhtml/menu.xml @@ -27,27 +27,27 @@ --> - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/code/Magento/Backend/etc/di.xml b/app/code/Magento/Backend/etc/di.xml index 550e9ec0cdfde..36d15309f05b0 100644 --- a/app/code/Magento/Backend/etc/di.xml +++ b/app/code/Magento/Backend/etc/di.xml @@ -83,6 +83,11 @@ + + + + + @@ -150,4 +155,34 @@ + + + admin + + + + + + + + + + adminhtml + + + + + + + + + + adminhtml_quote + + + + + + + diff --git a/app/code/Magento/Backend/etc/module.xml b/app/code/Magento/Backend/etc/module.xml index 1b227ac2789fc..81fb552d4fc52 100755 --- a/app/code/Magento/Backend/etc/module.xml +++ b/app/code/Magento/Backend/etc/module.xml @@ -31,12 +31,12 @@ - + diff --git a/app/code/Magento/Backend/view/adminhtml/admin/popup.phtml b/app/code/Magento/Backend/view/adminhtml/admin/popup.phtml index ef930159ab7ec..be03cb09123fc 100644 --- a/app/code/Magento/Backend/view/adminhtml/admin/popup.phtml +++ b/app/code/Magento/Backend/view/adminhtml/admin/popup.phtml @@ -30,7 +30,7 @@ "children":{ "header":{ "label":"Header", "type":"Magento\Backend\Block\Page\Header" }, "menu":{ "label":"Top navigation", "type":"Magento\Backend\Block\Menu" }, - "breadcrumbs":{ "label":"Breadcrumbs", "type":"Magento\Adminhtml\Block\Widget\Breadcrumbs" }, + "breadcrumbs":{ "label":"Breadcrumbs", "type":"Magento\Backend\Block\Widget\Breadcrumbs" }, "content":{ "label":"Content block", "type":"Magento\View\Element\Template" }, "left":{ "label":"Left navigation", "type":"Magento\View\Element\Template" }, "footer":{ "label":"Footer", "type":"Magento\Backend\Block\Page\Footer" } diff --git a/app/code/Magento/Adminhtml/view/adminhtml/email/order/items.phtml b/app/code/Magento/Backend/view/adminhtml/email/order/items.phtml similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/email/order/items.phtml rename to app/code/Magento/Backend/view/adminhtml/email/order/items.phtml diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/btn_bg.gif b/app/code/Magento/Backend/view/adminhtml/images/btn_bg.gif similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/btn_bg.gif rename to app/code/Magento/Backend/view/adminhtml/images/btn_bg.gif diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/btn_on_bg.gif b/app/code/Magento/Backend/view/adminhtml/images/btn_on_bg.gif similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/btn_on_bg.gif rename to app/code/Magento/Backend/view/adminhtml/images/btn_on_bg.gif diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/btn_over_bg.gif b/app/code/Magento/Backend/view/adminhtml/images/btn_over_bg.gif similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/btn_over_bg.gif rename to app/code/Magento/Backend/view/adminhtml/images/btn_over_bg.gif diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/error_msg_icon.gif b/app/code/Magento/Backend/view/adminhtml/images/error_msg_icon.gif similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/error_msg_icon.gif rename to app/code/Magento/Backend/view/adminhtml/images/error_msg_icon.gif diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/fam_bullet_error.gif b/app/code/Magento/Backend/view/adminhtml/images/fam_bullet_error.gif similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/fam_bullet_error.gif rename to app/code/Magento/Backend/view/adminhtml/images/fam_bullet_error.gif diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/fam_bullet_success.gif b/app/code/Magento/Backend/view/adminhtml/images/fam_bullet_success.gif similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/fam_bullet_success.gif rename to app/code/Magento/Backend/view/adminhtml/images/fam_bullet_success.gif diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/image-placeholder.png b/app/code/Magento/Backend/view/adminhtml/images/image-placeholder.png similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/image-placeholder.png rename to app/code/Magento/Backend/view/adminhtml/images/image-placeholder.png diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/note_msg_icon.gif b/app/code/Magento/Backend/view/adminhtml/images/note_msg_icon.gif similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/note_msg_icon.gif rename to app/code/Magento/Backend/view/adminhtml/images/note_msg_icon.gif diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/success_msg_icon.gif b/app/code/Magento/Backend/view/adminhtml/images/success_msg_icon.gif similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/success_msg_icon.gif rename to app/code/Magento/Backend/view/adminhtml/images/success_msg_icon.gif diff --git a/app/code/Magento/Adminhtml/view/adminhtml/images/warning_msg_icon.gif b/app/code/Magento/Backend/view/adminhtml/images/warning_msg_icon.gif similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/images/warning_msg_icon.gif rename to app/code/Magento/Backend/view/adminhtml/images/warning_msg_icon.gif diff --git a/app/code/Magento/Adminhtml/view/adminhtml/layout/adminhtml_urlrewrite_index.xml b/app/code/Magento/Backend/view/adminhtml/layout/adminhtml_urlrewrite_index.xml similarity index 98% rename from app/code/Magento/Adminhtml/view/adminhtml/layout/adminhtml_urlrewrite_index.xml rename to app/code/Magento/Backend/view/adminhtml/layout/adminhtml_urlrewrite_index.xml index 7e3a897c56a6c..b248692afc7c8 100644 --- a/app/code/Magento/Adminhtml/view/adminhtml/layout/adminhtml_urlrewrite_index.xml +++ b/app/code/Magento/Backend/view/adminhtml/layout/adminhtml_urlrewrite_index.xml @@ -25,7 +25,7 @@ --> - + urlrewriteGrid diff --git a/app/code/Magento/Backend/view/adminhtml/layout/default.xml b/app/code/Magento/Backend/view/adminhtml/layout/default.xml index 7cae9191af950..488e6e96e742c 100644 --- a/app/code/Magento/Backend/view/adminhtml/layout/default.xml +++ b/app/code/Magento/Backend/view/adminhtml/layout/default.xml @@ -279,7 +279,7 @@ - + diff --git a/app/code/Magento/Backend/view/adminhtml/page/notices.phtml b/app/code/Magento/Backend/view/adminhtml/page/notices.phtml index bf388f2a56199..0ea3fe18002cd 100644 --- a/app/code/Magento/Backend/view/adminhtml/page/notices.phtml +++ b/app/code/Magento/Backend/view/adminhtml/page/notices.phtml @@ -26,7 +26,7 @@ ?> displayNoscriptNotice()): ?> diff --git a/app/code/Magento/Adminhtml/view/adminhtml/urlrewrite/categories.phtml b/app/code/Magento/Backend/view/adminhtml/urlrewrite/categories.phtml similarity index 95% rename from app/code/Magento/Adminhtml/view/adminhtml/urlrewrite/categories.phtml rename to app/code/Magento/Backend/view/adminhtml/urlrewrite/categories.phtml index 58e3f4248e170..6019f9d79aab6 100644 --- a/app/code/Magento/Adminhtml/view/adminhtml/urlrewrite/categories.phtml +++ b/app/code/Magento/Backend/view/adminhtml/urlrewrite/categories.phtml @@ -21,7 +21,7 @@ * @copyright Copyright (c) 2013 X.commerce, Inc. (http://www.magentocommerce.com) * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) */ -/** @var $this \Magento\Adminhtml\Block\Urlrewrite\Catalog\Category\Tree */ +/** @var $this \Magento\Backend\Block\Urlrewrite\Catalog\Category\Tree */ ?>
diff --git a/app/code/Magento/Adminhtml/view/adminhtml/urlrewrite/edit.phtml b/app/code/Magento/Backend/view/adminhtml/urlrewrite/edit.phtml similarity index 96% rename from app/code/Magento/Adminhtml/view/adminhtml/urlrewrite/edit.phtml rename to app/code/Magento/Backend/view/adminhtml/urlrewrite/edit.phtml index 0805bbdeb5ea9..8c4caa61414de 100644 --- a/app/code/Magento/Adminhtml/view/adminhtml/urlrewrite/edit.phtml +++ b/app/code/Magento/Backend/view/adminhtml/urlrewrite/edit.phtml @@ -27,7 +27,7 @@ /** * Urlrewrites edit container * - * @see \Magento\Adminhtml\Block\Urlrewrite\Edit + * @see \Magento\Backend\Block\Urlrewrite\Edit */ ?>
getButtonsHtml() ?>
diff --git a/app/code/Magento/Adminhtml/view/adminhtml/urlrewrite/selector.phtml b/app/code/Magento/Backend/view/adminhtml/urlrewrite/selector.phtml similarity index 97% rename from app/code/Magento/Adminhtml/view/adminhtml/urlrewrite/selector.phtml rename to app/code/Magento/Backend/view/adminhtml/urlrewrite/selector.phtml index 26f397b91dc86..4c6ed8d6e676f 100644 --- a/app/code/Magento/Adminhtml/view/adminhtml/urlrewrite/selector.phtml +++ b/app/code/Magento/Backend/view/adminhtml/urlrewrite/selector.phtml @@ -27,7 +27,7 @@ /** * Urlrewrites edit mode selector * - * @see \Magento\Adminhtml\Block\Urlrewrite\Selector + * @see \Magento\Backend\Block\Urlrewrite\Selector */ ?>
diff --git a/app/code/Magento/Adminhtml/view/adminhtml/widget/tabshoriz.phtml b/app/code/Magento/Backend/view/adminhtml/widget/tabshoriz.phtml similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/widget/tabshoriz.phtml rename to app/code/Magento/Backend/view/adminhtml/widget/tabshoriz.phtml diff --git a/app/code/Magento/Adminhtml/view/adminhtml/widget/tabsleft.phtml b/app/code/Magento/Backend/view/adminhtml/widget/tabsleft.phtml similarity index 100% rename from app/code/Magento/Adminhtml/view/adminhtml/widget/tabsleft.phtml rename to app/code/Magento/Backend/view/adminhtml/widget/tabsleft.phtml diff --git a/app/code/Magento/Backup/Block/Adminhtml/Backup.php b/app/code/Magento/Backup/Block/Adminhtml/Backup.php index 3657272cab5bc..d24ae81142d4d 100644 --- a/app/code/Magento/Backup/Block/Adminhtml/Backup.php +++ b/app/code/Magento/Backup/Block/Adminhtml/Backup.php @@ -45,17 +45,17 @@ class Backup extends \Magento\Backend\Block\Template protected function _prepareLayout() { parent::_prepareLayout(); - $this->addChild('createButton', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('createButton', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Database Backup'), 'onclick' => "return backup.backup('" . \Magento\Backup\Factory::TYPE_DB . "')", 'class' => 'task' )); - $this->addChild('createSnapshotButton', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('createSnapshotButton', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('System Backup'), 'onclick' => "return backup.backup('" . \Magento\Backup\Factory::TYPE_SYSTEM_SNAPSHOT . "')", 'class' => '' )); - $this->addChild('createMediaBackupButton', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('createMediaBackupButton', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Database and Media Backup'), 'onclick' => "return backup.backup('" . \Magento\Backup\Factory::TYPE_MEDIA . "')", 'class' => '' diff --git a/app/code/Magento/Backup/Block/Adminhtml/Grid/Column/Rollback.php b/app/code/Magento/Backup/Block/Adminhtml/Grid/Column/Rollback.php index 1d6cf4d58e282..81ecec9909fee 100644 --- a/app/code/Magento/Backup/Block/Adminhtml/Grid/Column/Rollback.php +++ b/app/code/Magento/Backup/Block/Adminhtml/Grid/Column/Rollback.php @@ -35,6 +35,25 @@ class Rollback extends \Magento\Backend\Block\Widget\Grid\Column { + /** + * @var \Magento\Backup\Helper\Data + */ + protected $_backupHelper; + + /** + * @param \Magento\Backend\Block\Template\Context $context + * @param \Magento\Backup\Helper\Data $backupHelper + * @param array $data + */ + public function __construct( + \Magento\Backend\Block\Template\Context $context, + \Magento\Backup\Helper\Data $backupHelper, + array $data = array() + ) { + $this->_backupHelper = $backupHelper; + parent::__construct($context, $data); + } + /** * Check permission for rollback * @@ -42,6 +61,6 @@ class Rollback extends \Magento\Backend\Block\Widget\Grid\Column */ public function isDisplayed() { - return $this->helper('Magento\Backup\Helper\Data')->isRollbackAllowed(); + return $this->_backupHelper->isRollbackAllowed(); } } diff --git a/app/code/Magento/Backup/Controller/Adminhtml/Index.php b/app/code/Magento/Backup/Controller/Adminhtml/Index.php index 9a4c21242a36a..334e199cbcf03 100644 --- a/app/code/Magento/Backup/Controller/Adminhtml/Index.php +++ b/app/code/Magento/Backup/Controller/Adminhtml/Index.php @@ -52,21 +52,29 @@ class Index extends \Magento\Backend\App\Action */ protected $_fileFactory; + /** + * @var \Magento\Backup\Model\BackupFactory + */ + protected $_backupModelFactory; + /** * @param \Magento\Backend\App\Action\Context $context * @param \Magento\Core\Model\Registry $coreRegistry * @param \Magento\Backup\Factory $backupFactory * @param \Magento\App\Response\Http\FileFactory $fileFactory + * @param \Magento\Backup\Model\BackupFactory $backupModelFactory */ public function __construct( \Magento\Backend\App\Action\Context $context, \Magento\Core\Model\Registry $coreRegistry, \Magento\Backup\Factory $backupFactory, - \Magento\App\Response\Http\FileFactory $fileFactory + \Magento\App\Response\Http\FileFactory $fileFactory, + \Magento\Backup\Model\BackupFactory $backupModelFactory ) { $this->_coreRegistry = $coreRegistry; $this->_backupFactory = $backupFactory; $this->_fileFactory = $fileFactory; + $this->_backupModelFactory = $backupModelFactory; parent::__construct($context); } @@ -108,7 +116,7 @@ public function gridAction() public function createAction() { if (!$this->getRequest()->isAjax()) { - return $this->getUrl('*/*/index'); + return $this->_redirect('*/*/index'); } $response = new \Magento\Object(); @@ -151,7 +159,7 @@ public function createAction() } if ($type != \Magento\Backup\Factory::TYPE_DB) { - $backupManager->setRootDir($this->_objectManager->get('Magento\App\Dir')->getDir()) + $backupManager->setRootDir($this->_objectManager->get('Magento\Filesystem')->getPath()) ->addIgnorePaths($helper->getBackupIgnorePaths()); } @@ -159,7 +167,7 @@ public function createAction() $backupManager->create(); - $this->_getSession()->addSuccess($successMessage); + $this->messageManager->addSuccess($successMessage); $response->setRedirectUrl($this->getUrl('*/*/index')); } catch (\Magento\Backup\Exception\NotEnoughFreeSpace $e) { @@ -192,13 +200,13 @@ public function createAction() public function downloadAction() { /* @var $backup \Magento\Backup\Model\Backup */ - $backup = $this->_objectManager->create('Magento\Backup\Model\Backup')->loadByTimeAndType( + $backup = $this->_backupModelFactory->create( $this->getRequest()->getParam('time'), $this->getRequest()->getParam('type') ); if (!$backup->getTime() || !$backup->exists()) { - return $this->_redirect('adminhtml/*'); + return $this->_redirect('backup/*'); } $fileName = $this->_objectManager->get('Magento\Backup\Helper\Data') @@ -220,11 +228,11 @@ public function downloadAction() public function rollbackAction() { if (!$this->_objectManager->get('Magento\Backup\Helper\Data')->isRollbackAllowed()) { - return $this->_forward('denied'); + $this->_forward('denied'); } if (!$this->getRequest()->isAjax()) { - return $this->getUrl('*/*/index'); + return $this->_redirect('*/*/index'); } $helper = $this->_objectManager->get('Magento\Backup\Helper\Data'); @@ -232,13 +240,13 @@ public function rollbackAction() try { /* @var $backup \Magento\Backup\Model\Backup */ - $backup = $this->_objectManager->create('Magento\Backup\Model\Backup')->loadByTimeAndType( + $backup = $this->_backupModelFactory->create( $this->getRequest()->getParam('time'), $this->getRequest()->getParam('type') ); if (!$backup->getTime() || !$backup->exists()) { - return $this->_redirect('adminhtml/*'); + return $this->_redirect('backup/*'); } if (!$backup->getTime()) { @@ -282,7 +290,7 @@ public function rollbackAction() if ($type != \Magento\Backup\Factory::TYPE_DB) { - $backupManager->setRootDir($this->_objectManager->get('Magento\App\Dir')->getDir()) + $backupManager->setRootDir($this->_objectManager->get('Magento\Filesystem')->getPath()) ->addIgnorePaths($helper->getRollbackIgnorePaths()); if ($this->getRequest()->getParam('use_ftp', false)) { @@ -311,7 +319,7 @@ public function rollbackAction() $errorMsg = __('Failed to validate FTP'); } catch (\Magento\Backup\Exception\NotEnoughPermissions $e) { $this->_objectManager->get('Magento\Logger')->log($e->getMessage()); - $errorMsg = __('You need more permissions to create a backup.'); + $errorMsg = __('Not enough permissions to perform rollback.'); } catch (\Exception $e) { $this->_objectManager->get('Magento\Logger')->log($e->getMessage()); $errorMsg = __('Failed to rollback'); @@ -339,11 +347,9 @@ public function massDeleteAction() $backupIds = $this->getRequest()->getParam('ids', array()); if (!is_array($backupIds) || !count($backupIds)) { - return $this->_redirect('adminhtml/*/index'); + return $this->_redirect('backup/*/index'); } - /** @var $backupModel \Magento\Backup\Model\Backup */ - $backupModel = $this->_objectManager->create('Magento\Backup\Model\Backup'); $resultData = new \Magento\Object(); $resultData->setIsSuccess(false); $resultData->setDeleteResult(array()); @@ -356,8 +362,8 @@ public function massDeleteAction() foreach ($backupIds as $id) { list($time, $type) = explode('_', $id); - $backupModel - ->loadByTimeAndType($time, $type) + $backupModel = $this->_backupModelFactory + ->create($time, $type) ->deleteFile(); if ($backupModel->exists()) { @@ -374,7 +380,7 @@ public function massDeleteAction() $resultData->setIsSuccess(true); if ($allBackupsDeleted) { - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __('The selected backup(s) has been deleted.') ); } else { @@ -382,10 +388,10 @@ public function massDeleteAction() } } catch (\Exception $e) { $resultData->setIsSuccess(false); - $this->_getSession()->addError($deleteFailMessage); + $this->messageManager->addError($deleteFailMessage); } - return $this->_redirect('adminhtml/*/index'); + return $this->_redirect('backup/*/index'); } /** diff --git a/app/code/Magento/Backup/Helper/Data.php b/app/code/Magento/Backup/Helper/Data.php index 3c66947ae843c..f32fd15ce4134 100644 --- a/app/code/Magento/Backup/Helper/Data.php +++ b/app/code/Magento/Backup/Helper/Data.php @@ -43,13 +43,6 @@ class Data extends \Magento\App\Helper\AbstractHelper * @var \Magento\App\Cache\TypeListInterface */ protected $_cacheTypeList; - - /** - * Directory model - * - * @var \Magento\App\Dir - */ - protected $_dir; /** * Index resource process collection factory @@ -65,7 +58,6 @@ class Data extends \Magento\App\Helper\AbstractHelper * @param \Magento\Filesystem $filesystem * @param \Magento\AuthorizationInterface $authorization * @param \Magento\App\Cache\TypeListInterface $cacheTypeList - * @param \Magento\App\Dir $dir * @param \Magento\Index\Model\Resource\Process\CollectionFactory $processFactory */ public function __construct( @@ -73,14 +65,12 @@ public function __construct( \Magento\Filesystem $filesystem, \Magento\AuthorizationInterface $authorization, \Magento\App\Cache\TypeListInterface $cacheTypeList, - \Magento\App\Dir $dir, \Magento\Index\Model\Resource\Process\CollectionFactory $processFactory ) { parent::__construct($context); $this->_authorization = $authorization; $this->_filesystem = $filesystem; $this->_cacheTypeList = $cacheTypeList; - $this->_dir = $dir; } /** @@ -130,7 +120,7 @@ public function getDefaultBackupType() */ public function getBackupsDir() { - return $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'backups'; + return $this->_filesystem->getPath(\Magento\Filesystem::VAR_DIR) . '/backups'; } /** @@ -194,12 +184,12 @@ public function getBackupIgnorePaths() '.git', '.svn', 'maintenance.flag', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'session', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'cache', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'full_page_cache', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'locks', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'log', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'report', + $this->_filesystem->getPath(\Magento\Filesystem::SESSION), + $this->_filesystem->getPath(\Magento\Filesystem::CACHE), + $this->_filesystem->getPath(\Magento\Filesystem::LOG), + $this->_filesystem->getPath(\Magento\Filesystem::VAR_DIR) . '/full_page_cache', + $this->_filesystem->getPath(\Magento\Filesystem::VAR_DIR) . '/locks', + $this->_filesystem->getPath(\Magento\Filesystem::VAR_DIR) . '/report', ); } @@ -214,12 +204,12 @@ public function getRollbackIgnorePaths() '.svn', '.git', 'maintenance.flag', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'session', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'locks', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'log', - $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'report', - $this->_dir->getDir() . DS . 'errors', - $this->_dir->getDir() . DS . 'index.php', + $this->_filesystem->getPath(\Magento\Filesystem::SESSION), + $this->_filesystem->getPath(\Magento\Filesystem::LOG), + $this->_filesystem->getPath(\Magento\Filesystem::VAR_DIR) . '/locks', + $this->_filesystem->getPath(\Magento\Filesystem::VAR_DIR) . '/report', + $this->_filesystem->getPath(\Magento\Filesystem::ROOT) . '/errors', + $this->_filesystem->getPath(\Magento\Filesystem::ROOT) . '/index.php', ); } @@ -231,11 +221,9 @@ public function getRollbackIgnorePaths() public function turnOnMaintenanceMode() { $maintenanceFlagFile = $this->getMaintenanceFlagFilePath(); - $result = $this->_filesystem->write( - $maintenanceFlagFile, - 'maintenance', - $this->_dir->getDir() - ); + $result = $this->_filesystem + ->getDirectoryWrite(\Magento\Filesystem::ROOT) + ->writeFile($maintenanceFlagFile, 'maintenance'); return $result !== false; } @@ -246,7 +234,7 @@ public function turnOnMaintenanceMode() public function turnOffMaintenanceMode() { $maintenanceFlagFile = $this->getMaintenanceFlagFilePath(); - $this->_filesystem->delete($maintenanceFlagFile, $this->_dir->getDir()); + $this->_filesystem->getDirectoryWrite(\Magento\Filesystem::ROOT)->delete($maintenanceFlagFile); } /** @@ -278,7 +266,7 @@ public function getCreateSuccessMessageByType($type) */ protected function getMaintenanceFlagFilePath() { - return $this->_dir->getDir() . DS . 'maintenance.flag'; + return 'maintenance.flag'; } /** diff --git a/app/code/Magento/Backup/Model/Backup.php b/app/code/Magento/Backup/Model/Backup.php index 5f18b3b5aa074..7dab49ed3ad8f 100644 --- a/app/code/Magento/Backup/Model/Backup.php +++ b/app/code/Magento/Backup/Model/Backup.php @@ -49,7 +49,7 @@ class Backup extends \Magento\Object implements \Magento\Backup\Db\BackupInterfa /** * Gz file pointer * - * @var \Magento\Filesystem\Stream\Zlib + * @var \Magento\Filesystem\File\WriteInterface */ protected $_stream = null; @@ -82,11 +82,17 @@ class Backup extends \Magento\Object implements \Magento\Backup\Db\BackupInterfa */ protected $_encryptor; + /** + * @var \Magento\Filesystem\Directory\WriteInterface + */ + protected $varDirectory; + /** * @param \Magento\Backup\Helper\Data $helper * @param \Magento\Core\Model\LocaleInterface $locale * @param \Magento\Backend\Model\Auth\Session $authSession * @param \Magento\Encryption\EncryptorInterface $encryptor + * @param \Magento\Filesystem $filesystem * @param array $data */ public function __construct( @@ -94,14 +100,14 @@ public function __construct( \Magento\Core\Model\LocaleInterface $locale, \Magento\Backend\Model\Auth\Session $authSession, \Magento\Encryption\EncryptorInterface $encryptor, + \Magento\Filesystem $filesystem, $data = array() ) { $this->_encryptor = $encryptor; parent::__construct($data); - $adapter = new \Magento\Filesystem\Adapter\Zlib(self::COMPRESS_RATE); - $this->_filesystem = new \Magento\Filesystem($adapter); - $this->_filesystem->setIsAllowCreateDirectories(true); + $this->_filesystem = $filesystem; + $this->varDirectory = $this->_filesystem->getDirectoryWrite(\Magento\Filesystem::VAR_DIR); $this->_helper = $helper; $this->_locale = $locale; $this->_backendAuthSession = $authSession; @@ -156,7 +162,7 @@ public function load($fileName, $filePath) $backupData = $this->_helper->extractDataFromFilename($fileName); $this->addData(array( - 'id' => $filePath . DS . $fileName, + 'id' => $filePath . '/' . $fileName, 'time' => (int)$backupData->getTime(), 'path' => $filePath, 'extension' => $this->_helper->getExtensionByType($backupData->getType()), @@ -176,7 +182,7 @@ public function load($fileName, $filePath) */ public function exists() { - return $this->_filesystem->isFile($this->_getFilePath()); + return $this->varDirectory->isFile($this->_getFilePath()); } /** @@ -240,7 +246,7 @@ public function setFile(&$content) throw new \Magento\Core\Exception(__('Please correct the order of creation for a new backup.')); } - $this->_filesystem->write($this->_getFilePath(), $content); + $this->varDirectory->writeFile($this->_getFilePath(), $content); return $this; } @@ -256,7 +262,7 @@ public function &getFile() throw new \Magento\Core\Exception(__("The backup file does not exist.")); } - return $this->_filesystem->read($this->_getFilePath()); + return $this->varDirectory->read($this->_getFilePath()); } /** @@ -271,7 +277,7 @@ public function deleteFile() throw new \Magento\Core\Exception(__("The backup file does not exist.")); } - $this->_filesystem->delete($this->_getFilePath()); + $this->varDirectory->delete($this->_getFilePath()); return $this; } @@ -289,22 +295,25 @@ public function open($write = false) throw new \Magento\Backup\Exception(__('The backup file path was not specified.')); } - if ($write && $this->_filesystem->isFile($this->_getFilePath())) { - $this->_filesystem->delete($this->_getFilePath()); + if ($write && $this->varDirectory->isFile($this->_getFilePath())) { + $this->varDirectory->delete($this->_getFilePath()); } - if (!$write && !$this->_filesystem->isFile($this->_getFilePath())) { + if (!$write && !$this->varDirectory->isFile($this->_getFilePath())) { throw new \Magento\Backup\Exception(__('The backup file "%1" does not exist.', $this->getFileName())); } $mode = $write ? 'wb' . self::COMPRESS_RATE : 'rb'; try { - $compressStream = 'compress.zlib://'; - $workingDirectory = $this->_filesystem->getWorkingDirectory(); - $this->_stream = $this->_filesystem->createAndOpenStream($compressStream . $this->_getFilePath(), $mode, - $compressStream . $workingDirectory); + /** @var \Magento\Filesystem\Directory\WriteInterface $varDirectory */ + $varDirectory = $this->_filesystem->getDirectoryWrite(\Magento\Filesystem::VAR_DIR); + $this->_stream = $varDirectory->openFile( + $this->_getFilePath(), + $mode, + \Magento\Filesystem::WRAPPER_CONTENT_ZLIB + ); } - catch (\Magento\Filesystem\Exception $e) { + catch (\Magento\Filesystem\FilesystemException $e) { throw new \Magento\Backup\Exception\NotEnoughPermissions( __('Sorry, but we cannot read from or write to backup file "%1".', $this->getFileName()) ); @@ -316,7 +325,7 @@ public function open($write = false) /** * Get zlib handler * - * @return \Magento\Filesystem\Stream\Zlib + * @return \Magento\Filesystem\File\WriteInterface * @throws \Magento\Backup\Exception */ protected function _getStream() @@ -360,7 +369,7 @@ public function write($string) try { $this->_getStream()->write($string); } - catch (\Magento\Filesystem\Exception $e) { + catch (\Magento\Filesystem\FilesystemException $e) { throw new \Magento\Backup\Exception(__('Something went wrong writing to the backup file "%1".', $this->getFileName())); } @@ -390,11 +399,11 @@ public function output() return ; } - $stream = $this->_filesystem->createAndOpenStream($this->_getFilePath(), 'r'); - while ($buffer = $stream->read(1024)) { - echo $buffer; - } - $stream->close(); + /** @var \Magento\Filesystem\Directory\ReadInterface $zlibDirectory */ + $zlibDirectory = $this->_filesystem->getDirectoryWrite(\Magento\Filesystem::ZLIB); + $zlibDirectory = $zlibDirectory->readFile($this->_getFilePath()); + + echo $zlibDirectory; } /** @@ -407,7 +416,7 @@ public function getSize() } if ($this->exists()) { - $this->setData('size', $this->_filesystem->getFileSize($this->_getFilePath())); + $this->setData('size', $this->varDirectory->stat($this->_getFilePath())['size']); return $this->getData('size'); } @@ -426,30 +435,6 @@ public function validateUserPassword($password) return $this->_encryptor->validateHash($password, $userPasswordHash); } - /** - * Load backup by it's type and creation timestamp - * - * @param int $timestamp - * @param string $type - * @return \Magento\Backup\Model\Backup - */ - public function loadByTimeAndType($timestamp, $type) - { - $backupId = $timestamp . '_' . $type; - - foreach ($this->_fsCollection as $backup) { - if ($backup->getId() == $backupId) { - $this->setType($backup->getType()) - ->setTime($backup->getTime()) - ->setName($backup->getName()) - ->setPath($backup->getPath()); - break; - } - } - - return $this; - } - /** * Get file path. * @@ -457,6 +442,6 @@ public function loadByTimeAndType($timestamp, $type) */ protected function _getFilePath() { - return $this->getPath() . DS . $this->getFileName(); + return $this->varDirectory->getRelativePath($this->getPath() . '/' . $this->getFileName()); } } diff --git a/lib/Magento/App/Helper/HelperFactory.php b/app/code/Magento/Backup/Model/BackupFactory.php similarity index 53% rename from lib/Magento/App/Helper/HelperFactory.php rename to app/code/Magento/Backup/Model/BackupFactory.php index c78e8cd452c23..7e56b7119962f 100644 --- a/lib/Magento/App/Helper/HelperFactory.php +++ b/app/code/Magento/Backup/Model/BackupFactory.php @@ -23,11 +23,13 @@ */ /** - * Helper factory model. Used to get helper objects + * Backup model factory + * + * @method \Magento\Backup\Model\Backup create($timestamp, $type) */ -namespace Magento\App\Helper; +namespace Magento\Backup\Model; -class HelperFactory +class BackupFactory { /** * @var \Magento\ObjectManager @@ -37,35 +39,33 @@ class HelperFactory /** * @param \Magento\ObjectManager $objectManager */ - public function __construct(\Magento\ObjectManager $objectManager) - { + public function __construct( + \Magento\ObjectManager $objectManager + ) { $this->_objectManager = $objectManager; } /** - * Get helper singleton + * Load backup by it's type and creation timestamp * - * @param string $className - * @param array $arguments - * @return \Magento\App\Helper\AbstractHelper - * @throws \LogicException + * @param int $timestamp + * @param string $type + * @return \Magento\Backup\Model\Backup */ - public function get($className, array $arguments = array()) + public function create($timestamp, $type) { - $className = str_replace('_', '\\', $className); - /* Default helper class for a module */ - if (strpos($className, '\Helper\\') === false) { - $className .= '\Helper\Data'; - } - - $helper = $this->_objectManager->get($className, $arguments); - - if (false === ($helper instanceof \Magento\App\Helper\AbstractHelper)) { - throw new \LogicException( - $className . ' doesn\'t extends Magento\App\Helper\AbstractHelper' - ); + $backupId = $timestamp . '_' . $type; + $fsCollection = $this->_objectManager->get('Magento\Backup\Model\Fs\Collection'); + $backupInstance = $this->_objectManager->get('Magento\Backup\Model\Backup'); + foreach ($fsCollection as $backup) { + if ($backup->getId() == $backupId) { + $backupInstance->setType($backup->getType()) + ->setTime($backup->getTime()) + ->setName($backup->getName()) + ->setPath($backup->getPath()); + break; + } } - - return $helper; + return $backupInstance; } } diff --git a/app/code/Magento/Backup/Model/Fs/Collection.php b/app/code/Magento/Backup/Model/Fs/Collection.php index 73272361df03c..f9a82a347fcb2 100644 --- a/app/code/Magento/Backup/Model/Fs/Collection.php +++ b/app/code/Magento/Backup/Model/Fs/Collection.php @@ -30,16 +30,16 @@ class Collection extends \Magento\Data\Collection\Filesystem { /** - * Folder, where all backups are stored - * - * @var string + * @var \Magento\Filesystem\Directory\WriteInterface */ - protected $_baseDir; + protected $_varDirectory; /** - * @var \Magento\Filesystem + * Folder, where all backups are stored + * + * @var string */ - protected $_filesystem; + protected $_path; /** * Backup data @@ -48,13 +48,6 @@ class Collection extends \Magento\Data\Collection\Filesystem */ protected $_backupData = null; - /** - * Directory model - * - * @var \Magento\App\Dir - */ - protected $_dir; - /** * Backup model * @@ -66,14 +59,12 @@ class Collection extends \Magento\Data\Collection\Filesystem * @param \Magento\Core\Model\EntityFactory $entityFactory * @param \Magento\Backup\Helper\Data $backupData * @param \Magento\Filesystem $filesystem - * @param \Magento\App\Dir $dir * @param \Magento\Backup\Model\Backup $backup */ public function __construct( \Magento\Core\Model\EntityFactory $entityFactory, \Magento\Backup\Helper\Data $backupData, \Magento\Filesystem $filesystem, - \Magento\App\Dir $dir, \Magento\Backup\Model\Backup $backup ) { $this->_backupData = $backupData; @@ -81,13 +72,10 @@ public function __construct( $this->_backupData = $backupData; $this->_filesystem = $filesystem; - $this->_dir = $dir; $this->_backup = $backup; - $this->_baseDir = $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'backups'; + $this->_varDirectory = $filesystem->getDirectoryWrite(\Magento\Filesystem::VAR_DIR); - $this->_filesystem->setIsAllowCreateDirectories(true); - $this->_filesystem->ensureDirectoryExists($this->_baseDir); - $this->_filesystem->setWorkingDirectory($this->_baseDir); + $this->_varDirectory->create($this->_path); $this->_hideBackupsForApache(); // set collection specific params @@ -98,8 +86,10 @@ public function __construct( } $extensions = implode('|', $extensions); + $this->_varDirectory->create('backups'); + $path = rtrim($this->_varDirectory->getAbsolutePath($this->_path), '/') . '/backups'; $this->setOrder('time', self::SORT_ORDER_DESC) - ->addTargetDir($this->_baseDir) + ->addTargetDir($path) ->setFilesFilter('/^[a-z0-9\-\_]+\.' . $extensions . '$/') ->setCollectRecursively(false); } @@ -109,10 +99,10 @@ public function __construct( */ protected function _hideBackupsForApache() { - $htaccessPath = $this->_baseDir . DS . '.htaccess'; - if (!$this->_filesystem->isFile($htaccessPath)) { - $this->_filesystem->write($htaccessPath, 'deny from all'); - $this->_filesystem->changePermissions($htaccessPath, 0644); + $filename = '.htaccess'; + if (!$this->_varDirectory->isFile($filename)) { + $this->_varDirectory->writeFile($filename, 'deny from all'); + $this->_varDirectory->changePermissions($filename, 0644); } } @@ -125,11 +115,11 @@ protected function _hideBackupsForApache() protected function _generateRow($filename) { $row = parent::_generateRow($filename); - foreach ($this->_backup->load($row['basename'], $this->_baseDir) + foreach ($this->_backup->load($row['basename'], $this->_varDirectory->getAbsolutePath($this->_path)) ->getData() as $key => $value) { $row[$key] = $value; } - $row['size'] = $this->_filesystem->getFileSize($filename); + $row['size'] = $this->_varDirectory->stat($this->_varDirectory->getRelativePath($filename))['size']; $row['id'] = $row['time'] . '_' . $row['type']; return $row; } diff --git a/app/code/Magento/Backup/Model/Observer.php b/app/code/Magento/Backup/Model/Observer.php index d9685dd0b487d..18df0fe0aa9e6 100644 --- a/app/code/Magento/Backup/Model/Observer.php +++ b/app/code/Magento/Backup/Model/Observer.php @@ -73,11 +73,11 @@ class Observer protected $_coreStoreConfig; /** - * Directory model + * Filesystem facade * - * @var \Magento\App\Dir + * @var \Magento\Filesystem */ - protected $_dir; + protected $_filesystem; /** * @var \Magento\Backup\Factory @@ -89,7 +89,7 @@ class Observer * @param \Magento\Core\Model\Registry $coreRegistry * @param \Magento\Logger $logger * @param \Magento\Core\Model\Store\Config $coreStoreConfig - * @param \Magento\App\Dir $dir + * @param \Magento\Filesystem $filesystem * @param \Magento\Backup\Factory $backupFactory */ public function __construct( @@ -97,14 +97,14 @@ public function __construct( \Magento\Core\Model\Registry $coreRegistry, \Magento\Logger $logger, \Magento\Core\Model\Store\Config $coreStoreConfig, - \Magento\App\Dir $dir, + \Magento\Filesystem $filesystem, \Magento\Backup\Factory $backupFactory ) { $this->_backupData = $backupData; $this->_coreRegistry = $coreRegistry; $this->_logger = $logger; $this->_coreStoreConfig = $coreStoreConfig; - $this->_dir = $dir; + $this->_filesystem = $filesystem; $this->_backupFactory = $backupFactory; } @@ -135,7 +135,7 @@ public function scheduledBackup() $this->_coreRegistry->register('backup_manager', $backupManager); if ($type != \Magento\Backup\Factory::TYPE_DB) { - $backupManager->setRootDir($this->_dir->getDir()) + $backupManager->setRootDir($this->_filesystem->getPath(\Magento\Filesystem::ROOT)) ->addIgnorePaths($this->_backupData->getBackupIgnorePaths()); } diff --git a/app/code/Magento/Backup/etc/adminhtml/menu.xml b/app/code/Magento/Backup/etc/adminhtml/menu.xml index 55bee83779e3b..d5f99aa550eb4 100644 --- a/app/code/Magento/Backup/etc/adminhtml/menu.xml +++ b/app/code/Magento/Backup/etc/adminhtml/menu.xml @@ -27,6 +27,6 @@ --> - + diff --git a/app/code/Magento/Backup/view/adminhtml/layout/backup_index_block.xml b/app/code/Magento/Backup/view/adminhtml/layout/backup_index_block.xml index 1456601804b9f..e35a1ddeafc5e 100644 --- a/app/code/Magento/Backup/view/adminhtml/layout/backup_index_block.xml +++ b/app/code/Magento/Backup/view/adminhtml/layout/backup_index_block.xml @@ -40,7 +40,7 @@ Delete - adminhtml/*/massDelete + backup/*/massDelete Are you sure you want to delete the selected backup(s)? diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php index 6c4f564d71158..a4acd598cdbed 100644 --- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php +++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php @@ -33,8 +33,8 @@ */ namespace Magento\Bundle\Block\Adminhtml\Catalog\Product\Edit\Tab; -class Bundle extends \Magento\Adminhtml\Block\Widget - implements \Magento\Adminhtml\Block\Widget\Tab\TabInterface +class Bundle extends \Magento\Backend\Block\Widget + implements \Magento\Backend\Block\Widget\Tab\TabInterface { protected $_product = null; @@ -78,7 +78,7 @@ public function getTabClass() */ protected function _prepareLayout() { - $this->addChild('add_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('add_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Create New Option'), 'class' => 'add', 'id' => 'add_new_option', diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php index 2a2faf272a498..8c6d61ddd9223 100644 --- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php +++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php @@ -163,20 +163,20 @@ public function isMultiWebsites() protected function _prepareLayout() { - $this->addChild('add_selection_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('add_selection_button', 'Magento\Backend\Block\Widget\Button', array( 'id' => $this->getFieldId() . '_{{index}}_add_button', 'label' => __('Add Products to Option'), 'class' => 'add add-selection' )); - $this->addChild('close_search_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('close_search_button', 'Magento\Backend\Block\Widget\Button', array( 'id' => $this->getFieldId().'_{{index}}_close_button', 'label' => __('Close'), 'on_click' => 'bSelection.closeSearch(event)', 'class' => 'back no-display' )); - $this->addChild('option_delete_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('option_delete_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Delete Option'), 'class' => 'action-delete', 'on_click' => 'bOption.remove(event)' diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search.php index c465b692a0d39..ae4c0af7ad898 100644 --- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search.php +++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search.php @@ -34,7 +34,7 @@ namespace Magento\Bundle\Block\Adminhtml\Catalog\Product\Edit\Tab\Bundle\Option; -class Search extends \Magento\Adminhtml\Block\Widget +class Search extends \Magento\Backend\Block\Widget { /** * @var string diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/Grid.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/Grid.php index 6407e72215416..e4349b26cb58c 100644 --- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/Grid.php +++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/Grid.php @@ -51,6 +51,7 @@ class Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Catalog\Model\ProductFactory $productFactory * @param \Magento\Bundle\Helper\Data $bundleData * @param array $data @@ -58,13 +59,14 @@ class Grid public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Catalog\Model\ProductFactory $productFactory, \Magento\Bundle\Helper\Data $bundleData, array $data = array() ) { $this->_bundleData = $bundleData; $this->_productFactory = $productFactory; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php index 1cd874a223a99..0467eb599ba24 100644 --- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php +++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php @@ -122,7 +122,7 @@ public function getFieldName() */ protected function _prepareLayout() { - $this->addChild('selection_delete_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('selection_delete_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Delete'), 'class' => 'delete icon-btn', 'on_click' => 'bSelection.remove(event)' diff --git a/app/code/Magento/Bundle/Block/Catalog/Product/Price.php b/app/code/Magento/Bundle/Block/Catalog/Product/Price.php index 1decc537fe11e..cd670a8ed2b3d 100644 --- a/app/code/Magento/Bundle/Block/Catalog/Product/Price.php +++ b/app/code/Magento/Bundle/Block/Catalog/Product/Price.php @@ -48,6 +48,7 @@ class Price extends \Magento\Catalog\Block\Product\Price * @param \Magento\Core\Model\Registry $registry * @param \Magento\Stdlib\String $string * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper * @param \Magento\Tax\Model\Calculation $taxCalc * @param array $data */ @@ -59,10 +60,21 @@ public function __construct( \Magento\Core\Model\Registry $registry, \Magento\Stdlib\String $string, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, \Magento\Tax\Model\Calculation $taxCalc, array $data = array() ) { - parent::__construct($context, $jsonEncoder, $catalogData, $taxData, $registry, $string, $mathRandom, $data); + parent::__construct( + $context, + $jsonEncoder, + $catalogData, + $taxData, + $registry, + $string, + $mathRandom, + $cartHelper, + $data + ); $this->_taxCalc = $taxCalc; } @@ -92,7 +104,7 @@ public function displayBothPrices() $product->getPriceModel()->getIsPricesCalculatedByIndex() !== false) { return false; } - return $this->helper('Magento\Tax\Helper\Data')->displayBothPrices(); + return $this->_taxData->displayBothPrices(); } /** diff --git a/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle.php b/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle.php index 7c85978d31ce8..a63722af9027f 100644 --- a/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle.php +++ b/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle.php @@ -74,12 +74,19 @@ class Bundle extends \Magento\Catalog\Block\Product\View\AbstractView * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Stdlib\ArrayUtils $arrayUtils * @param \Magento\Catalog\Helper\Product $catalogProduct * @param \Magento\Bundle\Model\Product\PriceFactory $productPrice * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Json\EncoderInterface $jsonEncoder * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -88,6 +95,11 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Stdlib\ArrayUtils $arrayUtils, \Magento\Catalog\Helper\Product $catalogProduct, \Magento\Bundle\Model\Product\PriceFactory $productPrice, @@ -106,6 +118,11 @@ public function __construct( $taxData, $catalogData, $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, $arrayUtils, $data ); diff --git a/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/Option.php b/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/Option.php index d6c2d611d95e8..0db6c9ec5fe1c 100644 --- a/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/Option.php +++ b/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/Option.php @@ -50,6 +50,54 @@ class Option extends \Magento\Bundle\Block\Catalog\Product\Price */ protected $_showSingle = null; + /** + * @var \Magento\Core\Helper\Data + */ + protected $_coreHelper; + + /** + * @param \Magento\View\Element\Template\Context $context + * @param \Magento\Json\EncoderInterface $jsonEncoder + * @param \Magento\Catalog\Helper\Data $catalogData + * @param \Magento\Tax\Helper\Data $taxData + * @param \Magento\Core\Model\Registry $registry + * @param \Magento\Stdlib\String $string + * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Tax\Model\Calculation $taxCalc + * @param \Magento\Core\Helper\Data $coreHelper + * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) + */ + public function __construct( + \Magento\View\Element\Template\Context $context, + \Magento\Json\EncoderInterface $jsonEncoder, + \Magento\Catalog\Helper\Data $catalogData, + \Magento\Tax\Helper\Data $taxData, + \Magento\Core\Model\Registry $registry, + \Magento\Stdlib\String $string, + \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Tax\Model\Calculation $taxCalc, + \Magento\Core\Helper\Data $coreHelper, + array $data = array() + ) { + $this->_coreHelper = $coreHelper; + parent::__construct( + $context, + $jsonEncoder, + $catalogData, + $taxData, + $registry, + $string, + $mathRandom, + $cartHelper, + $taxCalc, + $data + ); + } + /** * Check if option has a single selection * @@ -205,7 +253,7 @@ public function getSelectionPrice($_selection) $price = $this->getProduct()->getPriceModel() ->getSelectionPreFinalPrice($this->getProduct(), $_selection, 1); if (is_numeric($price)) { - $price = $this->helper('Magento\Core\Helper\Data')->currencyByStore($price, $store, false); + $price = $this->_coreHelper->currencyByStore($price, $store, false); } } return is_numeric($price) ? $price : 0; @@ -251,7 +299,7 @@ public function setValidationContainer($elementId, $containerId) public function formatPriceString($price, $includeContainer = true) { $taxHelper = $this->_taxData; - $coreHelper = $this->helper('Magento\Core\Helper\Data'); + $coreHelper = $this->_coreHelper; $currentProduct = $this->getProduct(); if ($currentProduct->getPriceType() == \Magento\Bundle\Model\Product\Price::PRICE_TYPE_DYNAMIC && $this->getFormatProduct() diff --git a/app/code/Magento/Bundle/Block/Checkout/Cart/Item/Renderer.php b/app/code/Magento/Bundle/Block/Checkout/Cart/Item/Renderer.php index 14a2ac636af1b..e86ca4d9fd73e 100644 --- a/app/code/Magento/Bundle/Block/Checkout/Cart/Item/Renderer.php +++ b/app/code/Magento/Bundle/Block/Checkout/Cart/Item/Renderer.php @@ -48,6 +48,9 @@ class Renderer extends \Magento\Checkout\Block\Cart\Item\Renderer * @param \Magento\View\Element\Template\Context $context * @param \Magento\Catalog\Helper\Product\Configuration $productConfig * @param \Magento\Checkout\Model\Session $checkoutSession + * @param \Magento\Catalog\Helper\Image $imageHelper + * @param \Magento\Core\Helper\Url $urlHelper + * @param \Magento\Message\ManagerInterface $messageManager * @param \Magento\Bundle\Helper\Catalog\Product\Configuration $bundleProdConfigur * @param array $data */ @@ -55,11 +58,16 @@ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Catalog\Helper\Product\Configuration $productConfig, \Magento\Checkout\Model\Session $checkoutSession, + \Magento\Catalog\Helper\Image $imageHelper, + \Magento\Core\Helper\Url $urlHelper, + \Magento\Message\ManagerInterface $messageManager, \Magento\Bundle\Helper\Catalog\Product\Configuration $bundleProdConfigur, array $data = array() ) { $this->_bundleProdConfigur = $bundleProdConfigur; - parent::__construct($context, $productConfig, $checkoutSession, $data); + parent::__construct( + $context, $productConfig, $checkoutSession, $imageHelper, $urlHelper, $messageManager, $data + ); } protected function _construct() diff --git a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php index ec2eda68e6464..a23879e4c31e6 100644 --- a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php +++ b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php @@ -46,7 +46,7 @@ class Creditmemo extends \Magento\Bundle\Model\Sales\Order\Pdf\Items\AbstractIte * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Tax\Helper\Data $taxData - * @param \Magento\App\Dir $coreDir + * @param \Magento\Filesystem $filesystem * @param \Magento\Stdlib\String $string * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param \Magento\Data\Collection\Db $resourceCollection @@ -56,14 +56,14 @@ public function __construct( \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, \Magento\Tax\Helper\Data $taxData, - \Magento\App\Dir $coreDir, + \Magento\Filesystem $filesystem, \Magento\Stdlib\String $string, \Magento\Core\Model\Resource\AbstractResource $resource = null, \Magento\Data\Collection\Db $resourceCollection = null, array $data = array() ) { $this->string = $string; - parent::__construct($context, $registry, $taxData, $coreDir, $resource, $resourceCollection, $data); + parent::__construct($context, $registry, $taxData, $filesystem, $resource, $resourceCollection, $data); } /** diff --git a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php index 0e3c4b2254cfe..70d74b5fd0e8d 100644 --- a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php +++ b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php @@ -44,7 +44,7 @@ class Invoice extends \Magento\Bundle\Model\Sales\Order\Pdf\Items\AbstractItems * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Tax\Helper\Data $taxData - * @param \Magento\App\Dir $coreDir + * @param \Magento\Filesystem $filesystem * @param \Magento\Stdlib\String $coreString * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param \Magento\Data\Collection\Db $resourceCollection @@ -54,14 +54,14 @@ public function __construct( \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, \Magento\Tax\Helper\Data $taxData, - \Magento\App\Dir $coreDir, + \Magento\Filesystem $filesystem, \Magento\Stdlib\String $coreString, \Magento\Core\Model\Resource\AbstractResource $resource = null, \Magento\Data\Collection\Db $resourceCollection = null, array $data = array() ) { $this->string = $coreString; - parent::__construct($context, $registry, $taxData, $coreDir, $resource, $resourceCollection, $data); + parent::__construct($context, $registry, $taxData, $filesystem, $resource, $resourceCollection, $data); } /** diff --git a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php index cbf54f4974907..eef7622f3e8ce 100644 --- a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php +++ b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php @@ -44,7 +44,7 @@ class Shipment extends \Magento\Bundle\Model\Sales\Order\Pdf\Items\AbstractItems * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Tax\Helper\Data $taxData - * @param \Magento\App\Dir $coreDir + * @param \Magento\Filesystem $filesystem * @param \Magento\Stdlib\String $string * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param \Magento\Data\Collection\Db $resourceCollection @@ -54,14 +54,14 @@ public function __construct( \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, \Magento\Tax\Helper\Data $taxData, - \Magento\App\Dir $coreDir, + \Magento\Filesystem $filesystem, \Magento\Stdlib\String $string, \Magento\Core\Model\Resource\AbstractResource $resource = null, \Magento\Data\Collection\Db $resourceCollection = null, array $data = array() ) { $this->string = $string; - parent::__construct($context, $registry, $taxData, $coreDir, $resource, $resourceCollection, $data); + parent::__construct($context, $registry, $taxData, $filesystem, $resource, $resourceCollection, $data); } /** diff --git a/app/code/Magento/Bundle/etc/adminhtml/routes.xml b/app/code/Magento/Bundle/etc/adminhtml/routes.xml index 667eb8af1bc0c..71f9da97850b8 100644 --- a/app/code/Magento/Bundle/etc/adminhtml/routes.xml +++ b/app/code/Magento/Bundle/etc/adminhtml/routes.xml @@ -26,7 +26,7 @@ - + - \ No newline at end of file + diff --git a/app/code/Magento/Bundle/etc/module.xml b/app/code/Magento/Bundle/etc/module.xml index ca2aecc74c32a..4a149e6e1c70d 100755 --- a/app/code/Magento/Bundle/etc/module.xml +++ b/app/code/Magento/Bundle/etc/module.xml @@ -30,7 +30,6 @@ - diff --git a/app/code/Magento/Bundle/sql/bundle_setup/mysql4-upgrade-1.6.0.0-1.6.0.0.1.php b/app/code/Magento/Bundle/sql/bundle_setup/mysql4-upgrade-1.6.0.0-1.6.0.0.1.php index db18251e5998c..90af8f4d1938b 100644 --- a/app/code/Magento/Bundle/sql/bundle_setup/mysql4-upgrade-1.6.0.0-1.6.0.0.1.php +++ b/app/code/Magento/Bundle/sql/bundle_setup/mysql4-upgrade-1.6.0.0-1.6.0.0.1.php @@ -24,13 +24,16 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -$installFile = __DIR__ . DS . 'upgrade-1.6.0.0-1.6.0.0.1.php'; -if (file_exists($installFile)) { +/** @var $this \Magento\Catalog\Model\Resource\Setup */ +$installFile = __DIR__ . '/upgrade-1.6.0.0-1.6.0.0.1.php'; + +/** @var \Magento\Filesystem\Directory\Read $modulesDirectory */ +$modulesDirectory = $this->getFilesystem()->getDirectoryRead(\Magento\Filesystem::MODULES); + +if ($modulesDirectory->isExist($modulesDirectory->getRelativePath($installFile))) { include $installFile; } -/** @var $installer \Magento\Catalog\Model\Resource\Setup */ -$installer = $this; /** @var $connection \Magento\DB\Adapter\Pdo\Mysql */ $connection = $installer->getConnection(); $memoryTables = array( @@ -40,5 +43,5 @@ ); foreach ($memoryTables as $table) { - $connection->changeTableEngine($installer->getTable($table), \Magento\DB\Adapter\Pdo\Mysql::ENGINE_MEMORY); + $connection->changeTableEngine($this->getTable($table), \Magento\DB\Adapter\Pdo\Mysql::ENGINE_MEMORY); } diff --git a/app/code/Magento/Captcha/Helper/Adminhtml/Data.php b/app/code/Magento/Captcha/Helper/Adminhtml/Data.php index fa81278fd7c73..ffacbb2629008 100644 --- a/app/code/Magento/Captcha/Helper/Adminhtml/Data.php +++ b/app/code/Magento/Captcha/Helper/Adminhtml/Data.php @@ -42,7 +42,6 @@ class Data extends \Magento\Captcha\Helper\Data /** * @param \Magento\App\Helper\Context $context - * @param \Magento\App\Dir $dirs * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Config $config * @param \Magento\Filesystem $filesystem @@ -51,7 +50,6 @@ class Data extends \Magento\Captcha\Helper\Data */ public function __construct( \Magento\App\Helper\Context $context, - \Magento\App\Dir $dirs, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Config $config, \Magento\Filesystem $filesystem, @@ -59,7 +57,7 @@ public function __construct( \Magento\Backend\App\ConfigInterface $backendConfig ) { $this->_backendConfig = $backendConfig; - parent::__construct($context, $dirs, $storeManager, $config, $filesystem, $factory); + parent::__construct($context, $storeManager, $config, $filesystem, $factory); } diff --git a/app/code/Magento/Captcha/Helper/Data.php b/app/code/Magento/Captcha/Helper/Data.php index 21d0ccb1d70e5..3904fa601e6c2 100644 --- a/app/code/Magento/Captcha/Helper/Data.php +++ b/app/code/Magento/Captcha/Helper/Data.php @@ -72,11 +72,6 @@ class Data extends \Magento\App\Helper\AbstractHelper */ protected $_filesystem; - /** - * @var \Magento\App\Dir - */ - protected $_dirs = null; - /** * @var \Magento\Core\Model\StoreManagerInterface */ @@ -89,7 +84,6 @@ class Data extends \Magento\App\Helper\AbstractHelper /** * @param \Magento\App\Helper\Context $context - * @param \Magento\App\Dir $dirs * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\Config $config * @param \Magento\Filesystem $filesystem @@ -97,13 +91,11 @@ class Data extends \Magento\App\Helper\AbstractHelper */ public function __construct( \Magento\App\Helper\Context $context, - \Magento\App\Dir $dirs, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\Config $config, \Magento\Filesystem $filesystem, \Magento\Captcha\Model\CaptchaFactory $factory ) { - $this->_dirs = $dirs; $this->_storeManager = $storeManager; $this->_config = $config; $this->_filesystem = $filesystem; @@ -158,11 +150,11 @@ public function getFonts() $fontsConfig = $this->_config->getValue(\Magento\Captcha\Helper\Data::XML_PATH_CAPTCHA_FONTS, 'default'); $fonts = array(); if ($fontsConfig) { - $libDir = $this->_dirs->getDir(\Magento\App\Dir::LIB); + $libDir = $this->_filesystem->getPath(\Magento\Filesystem::LIB); foreach ($fontsConfig as $fontName => $fontConfig) { $fonts[$fontName] = array( 'label' => $fontConfig['label'], - 'path' => $libDir . DIRECTORY_SEPARATOR . $fontConfig['path'] + 'path' => $libDir . '/' . $fontConfig['path'] ); } } @@ -177,12 +169,12 @@ public function getFonts() */ public function getImgDir($website = null) { - $mediaDir = $this->_dirs->getDir(\Magento\App\Dir::MEDIA); - $captchaDir = $mediaDir . '/captcha/' . $this->_getWebsiteCode($website); - $this->_filesystem->setWorkingDirectory($mediaDir); - $this->_filesystem->setIsAllowCreateDirectories(true); - $this->_filesystem->ensureDirectoryExists($captchaDir, 0775); - return $captchaDir . '/'; + $mediaDir = $this->_filesystem->getDirectoryWrite(\Magento\Filesystem::MEDIA); + $captchaDir = '/captcha/' . $this->_getWebsiteCode($website); + $mediaDir->create($captchaDir); + $mediaDir->changePermissions($captchaDir, 0775); + + return $mediaDir->getAbsolutePath($captchaDir) . '/'; } /** @@ -195,7 +187,7 @@ protected function _getWebsiteCode($website = null) { return $this->_storeManager->getWebsite($website)->getCode(); } - + /** * Get captcha image base URL * @@ -204,7 +196,7 @@ protected function _getWebsiteCode($website = null) */ public function getImgUrl($website = null) { - return $this->_storeManager->getStore()->getBaseUrl(\Magento\App\Dir::MEDIA) . 'captcha' - . '/' . $this->_storeManager->getWebsite($website)->getCode() . '/'; + return $this->_storeManager->getStore()->getBaseUrl(\Magento\Filesystem::MEDIA) . 'captcha' + . '/' . $this->_getWebsiteCode($website) . '/'; } } diff --git a/app/code/Magento/Captcha/Model/Cron.php b/app/code/Magento/Captcha/Model/Cron.php index 5efbe7caa5c1a..5c3702c85329e 100644 --- a/app/code/Magento/Captcha/Model/Cron.php +++ b/app/code/Magento/Captcha/Model/Cron.php @@ -46,9 +46,9 @@ class Cron protected $_adminHelper; /** - * @var \Magento\Filesystem + * @var \Magento\Filesystem\Directory\WriteInterface */ - protected $_filesystem; + protected $_mediaDirectory; /** * @var \Magento\Core\Model\StoreManager @@ -77,7 +77,7 @@ public function __construct( $this->_resLogFactory = $resLogFactory; $this->_helper = $helper; $this->_adminHelper = $adminHelper; - $this->_filesystem = $filesystem; + $this->_mediaDirectory = $filesystem->getDirectoryWrite(\Magento\Filesystem::MEDIA); $this->_storeManager = $storeManager; } @@ -120,12 +120,13 @@ protected function _deleteExpiredImagesForWebsite( \Magento\Core\Model\Store $store = null ) { $expire = time() - $helper->getConfig('timeout', $store) * 60; - $imageDirectory = $helper->getImgDir($website); - foreach ($this->_filesystem->getNestedKeys($imageDirectory) as $filePath) { - if ($this->_filesystem->isFile($filePath) + $imageDirectory = $this->_mediaDirectory->getRelativePath($helper->getImgDir($website)); + foreach ($this->_mediaDirectory->read($imageDirectory) as $filePath) { + if ($this->_mediaDirectory->isFile($filePath) && pathinfo($filePath, PATHINFO_EXTENSION) == 'png' - && $this->_filesystem->getMTime($filePath) < $expire) { - $this->_filesystem->delete($filePath); + && $this->_mediaDirectory->stat($filePath)['mtime'] < $expire + ) { + $this->_mediaDirectory->delete($filePath); } } } diff --git a/app/code/Magento/Captcha/Model/DefaultModel.php b/app/code/Magento/Captcha/Model/DefaultModel.php index 5768f5ce64c43..6bd49f4197d33 100644 --- a/app/code/Magento/Captcha/Model/DefaultModel.php +++ b/app/code/Magento/Captcha/Model/DefaultModel.php @@ -87,18 +87,18 @@ class DefaultModel extends \Zend_Captcha_Image implements \Magento\Captcha\Model protected $_keepSession = true; /** - * @var \Magento\Core\Model\Session\AbstractSession + * @var \Magento\Session\SessionManagerInterface */ protected $_session; /** - * @param \Magento\Core\Model\Session\AbstractSession $session + * @param \Magento\Session\SessionManagerInterface $session * @param \Magento\Captcha\Helper\Data $captchaData * @param \Magento\Captcha\Model\Resource\LogFactory $resLogFactory * @param string $formId */ public function __construct( - \Magento\Core\Model\Session\AbstractSession $session, + \Magento\Session\SessionManagerInterface $session, \Magento\Captcha\Helper\Data $captchaData, \Magento\Captcha\Model\Resource\LogFactory $resLogFactory, $formId diff --git a/app/code/Magento/Captcha/Model/Observer.php b/app/code/Magento/Captcha/Model/Observer.php index d08a7782c92c6..59105886db4b0 100644 --- a/app/code/Magento/Captcha/Model/Observer.php +++ b/app/code/Magento/Captcha/Model/Observer.php @@ -74,7 +74,7 @@ class Observer protected $_typeOnepage; /** - * @var \Magento\Core\Model\Session\AbstractSession + * @var \Magento\Session\SessionManagerInterface */ protected $_session; @@ -88,9 +88,14 @@ class Observer */ protected $_actionFlag; + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * @param Resource\LogFactory $resLogFactory - * @param \Magento\Core\Model\Session\AbstractSession $session + * @param \Magento\Session\SessionManagerInterface $session * @param \Magento\Checkout\Model\Type\Onepage $typeOnepage * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Customer\Helper\Data $customerData @@ -98,17 +103,19 @@ class Observer * @param \Magento\Core\Model\Url $urlManager * @param \Magento\App\RequestInterface $request * @param \Magento\App\ActionFlag $actionFlag + * @param \Magento\Message\ManagerInterface $messageManager */ public function __construct( \Magento\Captcha\Model\Resource\LogFactory $resLogFactory, - \Magento\Core\Model\Session\AbstractSession $session, + \Magento\Session\SessionManagerInterface $session, \Magento\Checkout\Model\Type\Onepage $typeOnepage, \Magento\Core\Helper\Data $coreData, \Magento\Customer\Helper\Data $customerData, \Magento\Captcha\Helper\Data $helper, \Magento\Core\Model\Url $urlManager, \Magento\App\RequestInterface $request, - \Magento\App\ActionFlag $actionFlag + \Magento\App\ActionFlag $actionFlag, + \Magento\Message\ManagerInterface $messageManager ) { $this->_resLogFactory = $resLogFactory; $this->_session = $session; @@ -119,6 +126,7 @@ public function __construct( $this->_urlManager = $urlManager; $this->_request = $request; $this->_actionFlag = $actionFlag; + $this->messageManager = $messageManager; } /** @@ -135,7 +143,7 @@ public function checkForgotpassword($observer) /** @var \Magento\App\Action\Action $controller */ $controller = $observer->getControllerAction(); if (!$captchaModel->isCorrect($this->_getCaptchaString($controller->getRequest(), $formId))) { - $this->_session->addError(__('Incorrect CAPTCHA')); + $this->messageManager->addError(__('Incorrect CAPTCHA')); $this->_actionFlag->set('', \Magento\App\Action\Action::FLAG_NO_DISPATCH, true); $controller->getResponse()->setRedirect($this->_urlManager->getUrl('*/*/forgotpassword')); } @@ -155,7 +163,7 @@ public function checkContactUsForm($observer) if ($captcha->isRequired()) { $controller = $observer->getControllerAction(); if (!$captcha->isCorrect($this->_getCaptchaString($controller->getRequest(), $formId))) { - $this->_session->addError(__('Incorrect CAPTCHA.')); + $this->messageManager->addError(__('Incorrect CAPTCHA.')); $this->_actionFlag->set('', \Magento\App\Action\Action::FLAG_NO_DISPATCH, true); $controller->getResponse()->setRedirect($this->_urlManager->getUrl('contacts/index/index')); } @@ -178,7 +186,7 @@ public function checkUserLogin($observer) if ($captchaModel->isRequired($login)) { $word = $this->_getCaptchaString($controller->getRequest(), $formId); if (!$captchaModel->isCorrect($word)) { - $this->_session->addError(__('Incorrect CAPTCHA')); + $this->messageManager->addError(__('Incorrect CAPTCHA')); $this->_actionFlag->set('', \Magento\App\Action\Action::FLAG_NO_DISPATCH, true); $this->_session->setUsername($login); $beforeUrl = $this->_session->getBeforeAuthUrl(); @@ -203,7 +211,7 @@ public function checkUserCreate($observer) if ($captchaModel->isRequired()) { $controller = $observer->getControllerAction(); if (!$captchaModel->isCorrect($this->_getCaptchaString($controller->getRequest(), $formId))) { - $this->_session->addError(__('Incorrect CAPTCHA')); + $this->messageManager->addError(__('Incorrect CAPTCHA')); $this->_actionFlag->set('', \Magento\App\Action\Action::FLAG_NO_DISPATCH, true); $this->_session->setCustomerFormData($controller->getRequest()->getPost()); $controller->getResponse()->setRedirect($this->_urlManager->getUrl('*/*/create')); @@ -303,7 +311,7 @@ public function checkUserForgotPasswordBackend($observer) if (!$captchaModel->isCorrect($this->_getCaptchaString($controller->getRequest(), $formId))) { $this->_session->setEmail((string) $controller->getRequest()->getPost('email')); $this->_actionFlag->set('', \Magento\App\Action\Action::FLAG_NO_DISPATCH, true); - $this->_session->addError(__('Incorrect CAPTCHA')); + $this->messageManager->addError(__('Incorrect CAPTCHA')); $controller->getResponse() ->setRedirect($controller->getUrl('*/*/forgotpassword', array('_nosecret' => true))); } diff --git a/app/code/Magento/Captcha/etc/adminhtml/routes.xml b/app/code/Magento/Captcha/etc/adminhtml/routes.xml index 9d32c7db666d9..9ee05f195fd20 100644 --- a/app/code/Magento/Captcha/etc/adminhtml/routes.xml +++ b/app/code/Magento/Captcha/etc/adminhtml/routes.xml @@ -26,7 +26,7 @@ - + - \ No newline at end of file + diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Edit.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Edit.php index 3a135da1b70dd..3ae84e174e2ea 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Edit.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Edit.php @@ -33,7 +33,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Category; -class Edit extends \Magento\Adminhtml\Block\Widget\Form\Container +class Edit extends \Magento\Backend\Block\Widget\Form\Container { /** * @var string diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Edit/Form.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Edit/Form.php index ffec774c2c316..d479d1197ac1a 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Edit/Form.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Edit/Form.php @@ -93,7 +93,7 @@ protected function _prepareLayout() // Save button if (!$category->isReadonly()) { - $this->addChild('save_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('save_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Save Category'), 'onclick' => "categorySubmit('" . $this->getSaveUrl() . "', true)", 'class' => 'save' @@ -102,7 +102,7 @@ protected function _prepareLayout() // Delete button if (!in_array($categoryId, $this->getRootIds()) && $category->isDeleteable()) { - $this->addChild('delete_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('delete_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Delete Category'), 'onclick' => "categoryDelete('" . $this->getUrl('catalog/*/delete', array('_current' => true)) . "', true, {$categoryId})", 'class' => 'delete' @@ -112,7 +112,7 @@ protected function _prepareLayout() // Reset button if (!$category->isReadonly()) { $resetPath = $categoryId ? 'catalog/*/edit' : 'catalog/*/add'; - $this->addChild('reset_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('reset_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Reset'), 'onclick' => "categoryReset('".$this->getUrl($resetPath, array('_current'=>true))."',true)" )); @@ -182,7 +182,7 @@ public function addAdditionalButton($alias, $config) $config['element_name'] = $config['name']; } $this->setChild($alias . '_button', - $this->getLayout()->createBlock('Magento\Adminhtml\Block\Widget\Button')->addData($config)); + $this->getLayout()->createBlock('Magento\Backend\Block\Widget\Button')->addData($config)); $this->_additionalButtons[$alias] = $alias . '_button'; return $this; } diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Product.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Product.php index 9328febd43365..fe2561636ce4a 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Product.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Product.php @@ -50,6 +50,7 @@ class Product extends \Magento\Backend\Block\Widget\Grid\Extended /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Catalog\Model\ProductFactory $productFactory * @param \Magento\Core\Model\Registry $coreRegistry * @param array $data @@ -57,13 +58,14 @@ class Product extends \Magento\Backend\Block\Widget\Grid\Extended public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Catalog\Model\ProductFactory $productFactory, \Magento\Core\Model\Registry $coreRegistry, array $data = array() ) { $this->_productFactory = $productFactory; $this->_coreRegistry = $coreRegistry; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() @@ -169,7 +171,7 @@ protected function _prepareColumns() 'type' => 'number', 'index' => 'position', 'editable' => !$this->getCategory()->getProductsReadonly() - //'renderer' => 'Magento\Adminhtml\Block\Widget\Grid\Column\Renderer\Input' + //'renderer' => 'Magento\Backend\Block\Widget\Grid\Column\Renderer\Input' )); return parent::_prepareColumns(); diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tabs.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tabs.php index 64a0f1c755889..8dc3bb1d97c35 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tabs.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tabs.php @@ -38,7 +38,7 @@ class Tabs extends \Magento\Backend\Block\Widget\Tabs */ protected $_attributeTabBlock = 'Magento\Catalog\Block\Adminhtml\Category\Tab\Attributes'; - protected $_template = 'Magento_Adminhtml::widget/tabshoriz.phtml'; + protected $_template = 'Magento_Backend::widget/tabshoriz.phtml'; /** * Core registry diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tree.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tree.php index 5c0e0a17a8465..3ec421fd12604 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tree.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tree.php @@ -102,7 +102,7 @@ protected function _prepareLayout() '_query' => false )); - $this->addChild('add_sub_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('add_sub_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Add Subcategory'), 'onclick' => "addNew('".$addUrl."', false)", 'class' => 'add', @@ -111,7 +111,7 @@ protected function _prepareLayout() )); if ($this->canAddRootCategory()) { - $this->addChild('add_root_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('add_root_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Add Root Category'), 'onclick' => "addNew('".$addUrl."', true)", 'class' => 'add', diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Form.php b/app/code/Magento/Catalog/Block/Adminhtml/Form.php index e01a49b8da1a8..4240c3c9b7b7b 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Form.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Form.php @@ -39,13 +39,13 @@ protected function _prepareLayout() { \Magento\Data\Form::setElementRenderer( $this->getLayout()->createBlock( - 'Magento\Adminhtml\Block\Widget\Form\Renderer\Element', + 'Magento\Backend\Block\Widget\Form\Renderer\Element', $this->getNameInLayout() . '_element' ) ); \Magento\Data\Form::setFieldsetRenderer( $this->getLayout()->createBlock( - 'Magento\Adminhtml\Block\Widget\Form\Renderer\Fieldset', + 'Magento\Backend\Block\Widget\Form\Renderer\Fieldset', $this->getNameInLayout() . '_fieldset' ) ); diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Form/Renderer/Fieldset/Element.php b/app/code/Magento/Catalog/Block/Adminhtml/Form/Renderer/Fieldset/Element.php index 95d8fb7364d2e..80d3ba0ac5b53 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Form/Renderer/Fieldset/Element.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Form/Renderer/Fieldset/Element.php @@ -34,7 +34,7 @@ namespace Magento\Catalog\Block\Adminhtml\Form\Renderer\Fieldset; class Element - extends \Magento\Adminhtml\Block\Widget\Form\Renderer\Fieldset\Element + extends \Magento\Backend\Block\Widget\Form\Renderer\Fieldset\Element { /** * Initialize block template diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Helper/Form/Wysiwyg.php b/app/code/Magento/Catalog/Block/Adminhtml/Helper/Form/Wysiwyg.php index 39768756a3e98..bd401ef6c9cf6 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Helper/Form/Wysiwyg.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Helper/Form/Wysiwyg.php @@ -96,7 +96,7 @@ public function getAfterElementHtml() $html = parent::getAfterElementHtml(); if ($this->getIsWysiwygEnabled()) { $disabled = ($this->getDisabled() || $this->getReadonly()); - $html .= $this->_layout->createBlock('Magento\Adminhtml\Block\Widget\Button', '', array('data' => array( + $html .= $this->_layout->createBlock('Magento\Backend\Block\Widget\Button', '', array('data' => array( 'label' => __('WYSIWYG Editor'), 'type' => 'button', 'disabled' => $disabled, diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product.php b/app/code/Magento/Catalog/Block/Adminhtml/Product.php index 35898e4a6d008..b9983f6aa5d48 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product.php @@ -33,7 +33,7 @@ */ namespace Magento\Catalog\Block\Adminhtml; -class Product extends \Magento\Adminhtml\Block\Widget\Container +class Product extends \Magento\Backend\Block\Widget\Container { protected $_template = 'catalog/product.phtml'; diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute.php index 530f6721a0733..fa8b8d9f1731f 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute.php @@ -34,7 +34,7 @@ namespace Magento\Catalog\Block\Adminhtml\Product; -class Attribute extends \Magento\Adminhtml\Block\Widget\Grid\Container +class Attribute extends \Magento\Backend\Block\Widget\Grid\Container { protected function _construct() diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Front.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Front.php index 70e7792346671..ccb18dc29ae0d 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Front.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Front.php @@ -190,7 +190,7 @@ protected function _prepareForm() // define field dependencies $this->setChild( 'form_after', - $this->getLayout()->createBlock('Magento\Adminhtml\Block\Widget\Form\Element\Dependence') + $this->getLayout()->createBlock('Magento\Backend\Block\Widget\Form\Element\Dependence') ->addFieldMap("is_wysiwyg_enabled", 'wysiwyg_enabled') ->addFieldMap("is_html_allowed_on_front", 'html_allowed_on_front') ->addFieldMap("frontend_input", 'frontend_input_type') diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tabs.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tabs.php index ef859959e9856..02e8fac615192 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tabs.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tabs.php @@ -33,7 +33,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Attribute\Edit; -class Tabs extends \Magento\Adminhtml\Block\Widget\Tabs +class Tabs extends \Magento\Backend\Block\Widget\Tabs { protected function _construct() diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Grid.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Grid.php index 6020308644509..588af9580dfcb 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Grid.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Grid.php @@ -43,18 +43,20 @@ class Grid extends \Magento\Eav\Block\Adminhtml\Attribute\Grid\AbstractGrid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Catalog\Model\Resource\Product\Attribute\CollectionFactory $collectionFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Catalog\Model\Resource\Product\Attribute\CollectionFactory $collectionFactory, array $data = array() ) { $this->_collectionFactory = $collectionFactory; $this->_module = 'catalog'; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } /** diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main.php index 3d558d56e81f9..af357bbe6cda8 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main.php @@ -121,42 +121,42 @@ protected function _prepareLayout() $this->addChild('edit_set_form', 'Magento\Catalog\Block\Adminhtml\Product\Attribute\Set\Main\Formset'); - $this->addChild('delete_group_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('delete_group_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Delete Selected Group'), 'onclick' => 'editSet.submit();', 'class' => 'delete' )); - $this->addChild('add_group_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('add_group_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Add New'), 'onclick' => 'editSet.addGroup();', 'class' => 'add' )); - $this->addChild('back_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('back_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Back'), 'onclick' => 'setLocation(\''.$this->getUrl('catalog/*/').'\')', 'class' => 'back' )); - $this->addChild('reset_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('reset_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Reset'), 'onclick' => 'window.location.reload()' )); - $this->addChild('save_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('save_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Save Attribute Set'), 'onclick' => 'editSet.save();', 'class' => 'save' )); - $this->addChild('delete_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('delete_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Delete Attribute Set'), 'onclick' => 'deleteConfirm(\''. $this->escapeJsQuote(__('You are about to delete all products in this set. Are you sure you want to delete this attribute set?')) . '\', \'' . $this->getUrl('catalog/*/delete', array('id' => $setId)) . '\')', 'class' => 'delete' )); - $this->addChild('rename_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('rename_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('New Set Name'), 'onclick' => 'editSet.rename()' )); diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main/Formattribute.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main/Formattribute.php index 068dd0879eea1..79f837b1365ae 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main/Formattribute.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main/Formattribute.php @@ -51,7 +51,7 @@ protected function _prepareForm() $fieldset->addField('submit', 'note', array( - 'text' => $this->getLayout()->createBlock('Magento\Adminhtml\Block\Widget\Button') + 'text' => $this->getLayout()->createBlock('Magento\Backend\Block\Widget\Button') ->setData(array( 'label' => __('Add Attribute'), 'onclick' => 'this.form.submit();', diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main/Formgroup.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main/Formgroup.php index 4de91ca8c57dd..bdb251db7bca2 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main/Formgroup.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main/Formgroup.php @@ -75,7 +75,7 @@ protected function _prepareForm() $fieldset->addField('submit', 'note', array( - 'text' => $this->getLayout()->createBlock('Magento\Adminhtml\Block\Widget\Button') + 'text' => $this->getLayout()->createBlock('Magento\Backend\Block\Widget\Button') ->setData(array( 'label' => __('Add Group'), 'onclick' => 'this.form.submit();', diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Toolbar/Add.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Toolbar/Add.php index 9fb3987400dad..e1687458939fe 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Toolbar/Add.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Toolbar/Add.php @@ -40,7 +40,7 @@ class Add extends \Magento\Backend\Block\Template protected function _prepareLayout() { - $this->addChild('save_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('save_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Save Attribute Set'), 'class' => 'save', 'data_attribute' => array( @@ -49,7 +49,7 @@ protected function _prepareLayout() ), ), )); - $this->addChild('back_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('back_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Back'), 'onclick' => 'setLocation(\''.$this->getUrl('catalog/*/').'\')', 'class' => 'back' diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Toolbar/Main.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Toolbar/Main.php index 65973c4a7e6f1..6029d69e39c42 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Toolbar/Main.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Toolbar/Main.php @@ -43,7 +43,7 @@ class Main extends \Magento\Backend\Block\Template protected function _prepareLayout() { - $this->addChild('addButton', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('addButton', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Add New Set'), 'onclick' => 'setLocation(\'' . $this->getUrl('catalog/*/add') . '\')', 'class' => 'add', diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Configure.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Configure.php index e1e6a0ccdcf1e..e2eecad3ff9cd 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Configure.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Configure.php @@ -33,7 +33,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Composite; -class Configure extends \Magento\Adminhtml\Block\Widget +class Configure extends \Magento\Backend\Block\Widget { /** * @var \Magento\Catalog\Model\Product diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Fieldset/Grouped.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Fieldset/Grouped.php index a62df00c0065b..163f9833d9b3b 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Fieldset/Grouped.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Fieldset/Grouped.php @@ -39,6 +39,11 @@ class Grouped protected $_priceBlockDefaultTemplate = 'catalog/product/price.phtml'; + /** + * @var \Magento\Core\Helper\Data + */ + protected $_coreHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Catalog\Model\Config $catalogConfig @@ -46,9 +51,17 @@ class Grouped * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Stdlib\ArrayUtils $arrayUtils * @param \Magento\Tax\Model\Calculation $taxCalculation + * @param \Magento\Core\Helper\Data $coreHelper * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -57,13 +70,32 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Stdlib\ArrayUtils $arrayUtils, \Magento\Tax\Model\Calculation $taxCalculation, + \Magento\Core\Helper\Data $coreHelper, array $data = array() ) { + $this->_coreHelper = $coreHelper; $this->_taxCalculation = $taxCalculation; parent::__construct( - $context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $arrayUtils, $data + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $arrayUtils, + $data ); } @@ -177,6 +209,6 @@ public function getIsLastFieldset() public function getCurrencyPrice($price) { $store = $this->getProduct()->getStore(); - return $this->helper('Magento\Core\Helper\Data')->currencyByStore($price, $store, false); + return $this->_coreHelper->currencyByStore($price, $store, false); } } diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Update/Result.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Update/Result.php index 1a93e57ce4280..e80a0e942a9c2 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Update/Result.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Composite/Update/Result.php @@ -40,7 +40,7 @@ class Result extends \Magento\View\Element\Template /** * Adminhtml js * - * @var \Magento\Adminhtml\Helper\Js + * @var \Magento\Backend\Helper\Js */ protected $_adminhtmlJs = null; @@ -59,14 +59,14 @@ class Result extends \Magento\View\Element\Template /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Json\EncoderInterface $jsonEncoder - * @param \Magento\Adminhtml\Helper\Js $adminhtmlJs + * @param \Magento\Backend\Helper\Js $adminhtmlJs * @param \Magento\Core\Model\Registry $registry * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Json\EncoderInterface $jsonEncoder, - \Magento\Adminhtml\Helper\Js $adminhtmlJs, + \Magento\Backend\Helper\Js $adminhtmlJs, \Magento\Core\Model\Registry $registry, array $data = array() ) { diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Created.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Created.php index 96625c7af4205..caa3c088b4f94 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Created.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Created.php @@ -33,7 +33,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product; -class Created extends \Magento\Adminhtml\Block\Widget +class Created extends \Magento\Backend\Block\Widget { protected $_configurableProduct; protected $_product; @@ -72,7 +72,7 @@ public function __construct( protected function _prepareLayout() { - $this->addChild('close_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('close_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Close Window'), 'onclick' => 'addProduct(true)' )); diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit.php index 42eed0e02726e..1bb59a1db9cfc 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit.php @@ -54,11 +54,17 @@ class Edit extends \Magento\Backend\Block\Widget */ protected $jsonEncoder; + /** + * @var \Magento\Catalog\Helper\Product + */ + protected $_productHelper; + /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Json\EncoderInterface $jsonEncoder * @param \Magento\Eav\Model\Entity\Attribute\SetFactory $attributeSetFactory * @param \Magento\Core\Model\Registry $registry + * @param \Magento\Catalog\Helper\Product $productHelper * @param array $data */ public function __construct( @@ -66,8 +72,10 @@ public function __construct( \Magento\Json\EncoderInterface $jsonEncoder, \Magento\Eav\Model\Entity\Attribute\SetFactory $attributeSetFactory, \Magento\Core\Model\Registry $registry, + \Magento\Catalog\Helper\Product $productHelper, array $data = array() ) { + $this->_productHelper = $productHelper; $this->_attributeSetFactory = $attributeSetFactory; $this->_coreRegistry = $registry; $this->jsonEncoder = $jsonEncoder; @@ -99,7 +107,7 @@ public function getProduct() protected function _prepareLayout() { if (!$this->getRequest()->getParam('popup')) { - $this->addChild('back_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('back_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Back'), 'title' => __('Back'), 'onclick' => 'setLocation(\'' @@ -107,7 +115,7 @@ protected function _prepareLayout() 'class' => 'action-back' )); } else { - $this->addChild('back_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('back_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Close Window'), 'onclick' => 'window.close()', 'class' => 'cancel' @@ -115,7 +123,7 @@ protected function _prepareLayout() } if (!$this->getProduct()->isReadonly()) { - $this->addChild('reset_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('reset_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Reset'), 'onclick' => 'setLocation(\'' . $this->getUrl('catalog/*/*', array('_current' => true)) . '\')' )); @@ -262,7 +270,7 @@ public function getSelectedTabId() */ public function getFieldsAutogenerationMasks() { - return $this->helper('Magento\Catalog\Helper\Product')->getFieldsAutogenerationMasks(); + return $this->_productHelper->getFieldsAutogenerationMasks(); } /** @@ -272,7 +280,7 @@ public function getFieldsAutogenerationMasks() */ public function getAttributesAllowedForAutogeneration() { - return $this->helper('Magento\Catalog\Helper\Product')->getAttributesAllowedForAutogeneration(); + return $this->_productHelper->getAttributesAllowedForAutogeneration(); } /** diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute.php index 685fd15785899..2b91a136365d0 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute.php @@ -34,7 +34,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Action; -class Attribute extends \Magento\Adminhtml\Block\Widget +class Attribute extends \Magento\Backend\Block\Widget { /** @@ -60,18 +60,18 @@ public function __construct( protected function _prepareLayout() { - $this->addChild('back_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('back_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Back'), 'onclick' => 'setLocation(\''.$this->getUrl('catalog/product/', array('store'=>$this->getRequest()->getParam('store', 0))).'\')', 'class' => 'back' )); - $this->addChild('reset_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('reset_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Reset'), 'onclick' => 'setLocation(\''.$this->getUrl('catalog/*/*', array('_current'=>true)).'\')' )); - $this->addChild('save_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('save_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Save'), 'class' => 'save', 'data_attribute' => array( @@ -99,7 +99,7 @@ public function getProducts() */ protected function _getHelper() { - return $this->helper('Magento\Catalog\Helper\Product\Edit\Action\Attribute'); + return $this->_helperActionAttribute; } /** @@ -117,7 +117,7 @@ public function getBackButtonHtml() * * @return string */ - public function getCancelButtonHtml() + public function getCancelButtonHtml() { return $this->getChildHtml('reset_button'); } diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Attributes.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Attributes.php index 466c38c56b8d3..359117e133b48 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Attributes.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Attributes.php @@ -43,11 +43,17 @@ class Attributes */ protected $_productFactory; + /** + * @var \Magento\Catalog\Helper\Product\Edit\Action\Attribute + */ + protected $_attributeAction; + /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Data\FormFactory $formFactory * @param \Magento\Catalog\Model\ProductFactory $productFactory + * @param \Magento\Catalog\Helper\Product\Edit\Action\Attribute $attributeAction * @param array $data */ public function __construct( @@ -55,8 +61,10 @@ public function __construct( \Magento\Core\Model\Registry $registry, \Magento\Data\FormFactory $formFactory, \Magento\Catalog\Model\ProductFactory $productFactory, + \Magento\Catalog\Helper\Product\Edit\Action\Attribute $attributeAction, array $data = array() ) { + $this->_attributeAction = $attributeAction; $this->_productFactory = $productFactory; parent::__construct($context, $registry, $formFactory, $data); } @@ -106,7 +114,7 @@ protected function _prepareForm() */ public function getAttributes() { - return $this->helper('Magento\Catalog\Helper\Product\Edit\Action\Attribute') + return $this->_attributeAction ->getAttributes()->getItems(); } diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Inventory.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Inventory.php index d457b006777f2..7f8efd34dde0f 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Inventory.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Inventory.php @@ -34,8 +34,8 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Action\Attribute\Tab; class Inventory - extends \Magento\Adminhtml\Block\Widget - implements \Magento\Adminhtml\Block\Widget\Tab\TabInterface + extends \Magento\Backend\Block\Widget + implements \Magento\Backend\Block\Widget\Tab\TabInterface { /** * @var \Magento\CatalogInventory\Model\Source\Backorders diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Websites.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Websites.php index 34fb5ab8d3229..4e63a39c0b7c5 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Websites.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Websites.php @@ -34,8 +34,8 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Action\Attribute\Tab; class Websites - extends \Magento\Adminhtml\Block\Widget - implements \Magento\Adminhtml\Block\Widget\Tab\TabInterface + extends \Magento\Backend\Block\Widget + implements \Magento\Backend\Block\Widget\Tab\TabInterface { public function getWebsiteCollection() { diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tabs.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tabs.php index 11e253dd11d22..ce903197b89a8 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tabs.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tabs.php @@ -34,7 +34,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Action\Attribute; -class Tabs extends \Magento\Adminhtml\Block\Widget\Tabs +class Tabs extends \Magento\Backend\Block\Widget\Tabs { protected function _construct() { diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts.php index 56c85c439834c..01785764b0412 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts.php @@ -41,9 +41,9 @@ class Alerts extends \Magento\Backend\Block\Template protected function _prepareLayout() { - $accordion = $this->getLayout()->createBlock('Magento\Adminhtml\Block\Widget\Accordion') + $accordion = $this->getLayout()->createBlock('Magento\Backend\Block\Widget\Accordion') ->setId('productAlerts'); - /* @var $accordion \Magento\Adminhtml\Block\Widget\Accordion */ + /* @var $accordion \Magento\Backend\Block\Widget\Accordion */ $alertPriceAllow = $this->_storeConfig->getConfig('catalog/productalert/allow_price'); $alertStockAllow = $this->_storeConfig->getConfig('catalog/productalert/allow_stock'); diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts/Price.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts/Price.php index 569314d9513cc..7d11d604c0b64 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts/Price.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts/Price.php @@ -34,7 +34,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Alerts; -class Price extends \Magento\Adminhtml\Block\Widget\Grid +class Price extends \Magento\Backend\Block\Widget\Grid\Extended { /** * Catalog data @@ -51,6 +51,7 @@ class Price extends \Magento\Adminhtml\Block\Widget\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\ProductAlert\Model\PriceFactory $priceFactory * @param \Magento\Catalog\Helper\Data $catalogData * @param array $data @@ -58,13 +59,14 @@ class Price extends \Magento\Adminhtml\Block\Widget\Grid public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\ProductAlert\Model\PriceFactory $priceFactory, \Magento\Catalog\Helper\Data $catalogData, array $data = array() ) { $this->_priceFactory = $priceFactory; $this->_catalogData = $catalogData; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts/Stock.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts/Stock.php index 4e74526cffe63..ea0cbf6033458 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts/Stock.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts/Stock.php @@ -34,7 +34,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Alerts; -class Stock extends \Magento\Adminhtml\Block\Widget\Grid +class Stock extends \Magento\Backend\Block\Widget\Grid\Extended { /** * Catalog data @@ -51,6 +51,7 @@ class Stock extends \Magento\Adminhtml\Block\Widget\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\ProductAlert\Model\StockFactory $stockFactory * @param \Magento\Catalog\Helper\Data $catalogData * @param array $data @@ -58,13 +59,14 @@ class Stock extends \Magento\Adminhtml\Block\Widget\Grid public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\ProductAlert\Model\StockFactory $stockFactory, \Magento\Catalog\Helper\Data $catalogData, array $data = array() ) { $this->_stockFactory = $stockFactory; $this->_catalogData = $catalogData; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Crosssell.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Crosssell.php index 88a7ddf792a14..4a8acdc0f0729 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Crosssell.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Crosssell.php @@ -33,7 +33,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab; -class Crosssell extends \Magento\Adminhtml\Block\Widget\Grid +class Crosssell extends \Magento\Backend\Block\Widget\Grid\Extended { /** * Core registry @@ -75,6 +75,7 @@ class Crosssell extends \Magento\Adminhtml\Block\Widget\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Catalog\Model\Product\LinkFactory $linkFactory * @param \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $setsFactory * @param \Magento\Catalog\Model\ProductFactory $productFactory @@ -83,10 +84,13 @@ class Crosssell extends \Magento\Adminhtml\Block\Widget\Grid * @param \Magento\Catalog\Model\Product\Visibility $visibility * @param \Magento\Core\Model\Registry $coreRegistry * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Catalog\Model\Product\LinkFactory $linkFactory, \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $setsFactory, \Magento\Catalog\Model\ProductFactory $productFactory, @@ -103,7 +107,7 @@ public function __construct( $this->_status = $status; $this->_visibility = $visibility; $this->_coreRegistry = $coreRegistry; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } /** @@ -164,7 +168,7 @@ protected function _addColumnFilterToCollection($column) /** * Prepare collection * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareCollection() { @@ -201,7 +205,7 @@ public function isReadonly() /** * Add columns to grid * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareColumns() { diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Inventory.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Inventory.php index b3e920e85c100..84fc46c870bd7 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Inventory.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Inventory.php @@ -31,7 +31,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab; -class Inventory extends \Magento\Adminhtml\Block\Widget +class Inventory extends \Magento\Backend\Block\Widget { protected $_template = 'catalog/product/tab/inventory.phtml'; diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options.php index 550e3a4e4d7a4..e601d2847b37a 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options.php @@ -34,13 +34,13 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab; -class Options extends \Magento\Adminhtml\Block\Widget +class Options extends \Magento\Backend\Block\Widget { protected $_template = 'catalog/product/edit/options.phtml'; protected function _prepareLayout() { - $this->addChild('add_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('add_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Add New Option'), 'class' => 'add', 'id' => 'add_new_defined_option' @@ -48,7 +48,7 @@ protected function _prepareLayout() $this->addChild('options_box', 'Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options\Option'); - $this->addChild('import_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('import_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Import Options'), 'class' => 'add', 'id' => 'import_new_defined_option' diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Option.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Option.php index 3a121f5a9ce59..2caabb448f913 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Option.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Option.php @@ -29,7 +29,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options; -class Option extends \Magento\Adminhtml\Block\Widget +class Option extends \Magento\Backend\Block\Widget { protected $_productInstance; diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Type/AbstractType.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Type/AbstractType.php index 7088ded311e65..c00a1f886827c 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Type/AbstractType.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Type/AbstractType.php @@ -34,7 +34,7 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options\Type; -class AbstractType extends \Magento\Adminhtml\Block\Widget +class AbstractType extends \Magento\Backend\Block\Widget { protected $_name = 'abstract'; diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Type/Select.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Type/Select.php index 15f01c6b40129..0b0b8fee2f902 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Type/Select.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Type/Select.php @@ -53,13 +53,13 @@ protected function _construct() protected function _prepareLayout() { - $this->addChild('add_select_row_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('add_select_row_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Add New Row'), 'class' => 'add add-select-row', 'id' => 'product_option_${option_id}_add_select_row' )); - $this->addChild('delete_select_row_button', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('delete_select_row_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Delete Row'), 'class' => 'delete delete-select-row icon-btn', 'id' => 'product_option_${id}_select_${select_id}_delete' diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Group.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Group.php index 65a597c451e70..c3de653ca256c 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Group.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Group.php @@ -78,7 +78,7 @@ protected function _sortGroupPrices($a, $b) */ protected function _prepareLayout() { - $button = $this->getLayout()->createBlock('Magento\Adminhtml\Block\Widget\Button') + $button = $this->getLayout()->createBlock('Magento\Backend\Block\Widget\Button') ->setData(array( 'label' => __('Add Group Price'), 'onclick' => 'return groupPriceControl.addItem()', diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Group/AbstractGroup.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Group/AbstractGroup.php index a2df4e71d9047..7ba8062f3a96a 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Group/AbstractGroup.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Group/AbstractGroup.php @@ -34,7 +34,7 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Price\Group; abstract class AbstractGroup - extends \Magento\Adminhtml\Block\Widget + extends \Magento\Backend\Block\Widget implements \Magento\Data\Form\Element\Renderer\RendererInterface { /** diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Tier.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Tier.php index d5382d62b06cb..be00625ef88e6 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Tier.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Tier.php @@ -91,7 +91,7 @@ protected function _sortTierPrices($a, $b) */ protected function _prepareLayout() { - $button = $this->getLayout()->createBlock('Magento\Adminhtml\Block\Widget\Button') + $button = $this->getLayout()->createBlock('Magento\Backend\Block\Widget\Button') ->setData(array( 'label' => __('Add Tier'), 'onclick' => 'return tierPriceControl.addItem()', diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Related.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Related.php index 9954522f20bc3..18f1063178554 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Related.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Related.php @@ -33,7 +33,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab; -class Related extends \Magento\Adminhtml\Block\Widget\Grid +class Related extends \Magento\Backend\Block\Widget\Grid\Extended { /** * Core registry @@ -75,6 +75,7 @@ class Related extends \Magento\Adminhtml\Block\Widget\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Catalog\Model\Product\LinkFactory $linkFactory * @param \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $setsFactory * @param \Magento\Catalog\Model\ProductFactory $productFactory @@ -83,10 +84,13 @@ class Related extends \Magento\Adminhtml\Block\Widget\Grid * @param \Magento\Catalog\Model\Product\Visibility $visibility * @param \Magento\Core\Model\Registry $coreRegistry * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Catalog\Model\Product\LinkFactory $linkFactory, \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $setsFactory, \Magento\Catalog\Model\ProductFactory $productFactory, @@ -103,7 +107,7 @@ public function __construct( $this->_status = $status; $this->_visibility = $visibility; $this->_coreRegistry = $coreRegistry; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } /** @@ -164,7 +168,7 @@ protected function _addColumnFilterToCollection($column) /** * Prepare collection * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareCollection() { @@ -198,7 +202,7 @@ public function isReadonly() /** * Add columns to grid * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareColumns() { diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config.php index 22d6816d061e5..4ac25db63987f 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config.php @@ -147,7 +147,7 @@ public function isAttributesPricesReadonly() */ protected function _prepareLayout() { - $this->addChild('create_empty', 'Magento\Adminhtml\Block\Widget\Button', array( + $this->addChild('create_empty', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Create Empty'), 'class' => 'add', 'onclick' => 'superProduct.createEmptyProduct()' diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Filter/Inventory.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Filter/Inventory.php index 606c95a1bf499..dbecc7ea3b8de 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Filter/Inventory.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Filter/Inventory.php @@ -34,7 +34,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Super\Config\Grid\Filter; -class Inventory extends \Magento\Adminhtml\Block\Widget\Grid\Column\Filter\Select +class Inventory extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Select { protected function _getOptions() diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Renderer/Checkbox.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Renderer/Checkbox.php index e24433fa4d417..9133983b962f1 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Renderer/Checkbox.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Renderer/Checkbox.php @@ -34,7 +34,7 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Super\Config\Grid\Renderer; -class Checkbox extends \Magento\Adminhtml\Block\Widget\Grid\Column\Renderer\Checkbox +class Checkbox extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Checkbox { /** * @var \Magento\Json\EncoderInterface diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Renderer/Inventory.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Renderer/Inventory.php index 6f252d267890c..06aab228cebc3 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Renderer/Inventory.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Config/Grid/Renderer/Inventory.php @@ -34,7 +34,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Super\Config\Grid\Renderer; -class Inventory extends \Magento\Adminhtml\Block\Widget\Grid\Column\Renderer\AbstractRenderer +class Inventory extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer { /** * Renders grid column value diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Settings.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Settings.php index 6b2d70030df35..426309866636d 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Settings.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Super/Settings.php @@ -40,11 +40,17 @@ class Settings extends \Magento\Backend\Block\Widget\Form\Generic */ protected $_configurableType; + /** + * @var \Magento\Core\Helper\Data + */ + protected $_coreHelper; + /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Data\FormFactory $formFactory * @param \Magento\Catalog\Model\Product\Type\Configurable $configurableType + * @param \Magento\Core\Helper\Data $coreHelper * @param array $data */ public function __construct( @@ -52,8 +58,10 @@ public function __construct( \Magento\Core\Model\Registry $registry, \Magento\Data\FormFactory $formFactory, \Magento\Catalog\Model\Product\Type\Configurable $configurableType, + \Magento\Core\Helper\Data $coreHelper, array $data = array() ) { + $this->_coreHelper = $coreHelper; $this->_configurableType = $configurableType; parent::__construct($context, $registry, $formFactory, $data); } @@ -65,7 +73,7 @@ public function __construct( protected function _prepareLayout() { $onclick = "jQuery('[data-form=edit-product]').attr('action', " - . $this->helper('Magento\Core\Helper\Data')->jsonEncode($this->getContinueUrl()) + . $this->_coreHelper->jsonEncode($this->getContinueUrl()) . ").addClass('ignore-validate').submit();"; $this->addChild('continue_button', 'Magento\Backend\Block\Widget\Button', array( 'label' => __('Generate Variations'), diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Upsell.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Upsell.php index bef3f2227e000..d63d16440ffe6 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Upsell.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Upsell.php @@ -33,7 +33,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab; -class Upsell extends \Magento\Adminhtml\Block\Widget\Grid +class Upsell extends \Magento\Backend\Block\Widget\Grid\Extended { /** * Core registry @@ -75,6 +75,7 @@ class Upsell extends \Magento\Adminhtml\Block\Widget\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Catalog\Model\Product\LinkFactory $linkFactory * @param \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $setsFactory * @param \Magento\Catalog\Model\ProductFactory $productFactory @@ -83,10 +84,13 @@ class Upsell extends \Magento\Adminhtml\Block\Widget\Grid * @param \Magento\Catalog\Model\Product\Visibility $visibility * @param \Magento\Core\Model\Registry $coreRegistry * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Catalog\Model\Product\LinkFactory $linkFactory, \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $setsFactory, \Magento\Catalog\Model\ProductFactory $productFactory, @@ -103,7 +107,7 @@ public function __construct( $this->_status = $status; $this->_visibility = $visibility; $this->_coreRegistry = $coreRegistry; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } /** @@ -174,7 +178,7 @@ public function isReadonly() /** * Prepare collection * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareCollection() { @@ -198,7 +202,7 @@ protected function _prepareCollection() /** * Add columns to grid * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareColumns() { diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Grid.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Grid.php index c53988ec8801c..85f8931c337d7 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Grid.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Grid.php @@ -75,6 +75,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid\Extended /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Core\Model\WebsiteFactory $websiteFactory * @param \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $setsFactory * @param \Magento\Catalog\Model\ProductFactory $productFactory @@ -83,10 +84,13 @@ class Grid extends \Magento\Backend\Block\Widget\Grid\Extended * @param \Magento\Catalog\Model\Product\Visibility $visibility * @param \Magento\Catalog\Helper\Data $catalogData * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Core\Model\WebsiteFactory $websiteFactory, \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $setsFactory, \Magento\Catalog\Model\ProductFactory $productFactory, @@ -103,7 +107,7 @@ public function __construct( $this->_status = $status; $this->_visibility = $visibility; $this->_catalogData = $catalogData; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Widget/Chooser.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Widget/Chooser.php index f8e437c496960..ae01fa7d16fc3 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Widget/Chooser.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Widget/Chooser.php @@ -33,7 +33,7 @@ */ namespace Magento\Catalog\Block\Adminhtml\Product\Widget; -class Chooser extends \Magento\Adminhtml\Block\Widget\Grid +class Chooser extends \Magento\Backend\Block\Widget\Grid\Extended { protected $_selectedProducts = array(); @@ -60,6 +60,7 @@ class Chooser extends \Magento\Adminhtml\Block\Widget\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Catalog\Model\CategoryFactory $categoryFactory * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $collectionFactory * @param \Magento\Catalog\Model\Resource\Category $resourceCategory @@ -69,6 +70,7 @@ class Chooser extends \Magento\Adminhtml\Block\Widget\Grid public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Catalog\Model\CategoryFactory $categoryFactory, \Magento\Catalog\Model\Resource\Product\CollectionFactory $collectionFactory, \Magento\Catalog\Model\Resource\Category $resourceCategory, @@ -79,7 +81,7 @@ public function __construct( $this->_collectionFactory = $collectionFactory; $this->_resourceCategory = $resourceCategory; $this->_resourceProduct = $resourceProduct; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } /** @@ -206,7 +208,7 @@ function (node, e) { /** * Filter checked/unchecked rows in grid * - * @param \Magento\Adminhtml\Block\Widget\Grid\Column $column + * @param \Magento\Backend\Block\Widget\Grid\Column $column * @return \Magento\Catalog\Block\Adminhtml\Product\Widget\Chooser */ protected function _addColumnFilterToCollection($column) @@ -227,7 +229,7 @@ protected function _addColumnFilterToCollection($column) /** * Prepare products collection, defined collection filters (category, product type) * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareCollection() { @@ -260,7 +262,7 @@ protected function _prepareCollection() /** * Prepare columns for products grid * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareColumns() { diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Search.php b/app/code/Magento/Catalog/Block/Adminhtml/Search.php index 020fe1a5b7b89..6be143a237fb3 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Search.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Search.php @@ -35,7 +35,7 @@ namespace Magento\Catalog\Block\Adminhtml; -class Search extends \Magento\Adminhtml\Block\Widget\Grid\Container +class Search extends \Magento\Backend\Block\Widget\Grid\Container { protected function _construct() { diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Search/Edit.php b/app/code/Magento/Catalog/Block/Adminhtml/Search/Edit.php index 4e22a3db0b6d8..e5e2a2bc9e35c 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/Search/Edit.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/Search/Edit.php @@ -30,7 +30,7 @@ namespace Magento\Catalog\Block\Adminhtml\Search; -class Edit extends \Magento\Adminhtml\Block\Widget\Form\Container +class Edit extends \Magento\Backend\Block\Widget\Form\Container { /** * Core registry diff --git a/app/code/Magento/Catalog/Block/Adminhtml/System/Config/Form/Field/Select/Flatcatalog.php b/app/code/Magento/Catalog/Block/Adminhtml/System/Config/Form/Field/Select/Flatcatalog.php index b79ff808cd7f6..87cc44e0b9a8d 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/System/Config/Form/Field/Select/Flatcatalog.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/System/Config/Form/Field/Select/Flatcatalog.php @@ -37,9 +37,28 @@ class Flatcatalog extends \Magento\Backend\Block\System\Config\Form\Field { + /** + * @var \Magento\Catalog\Helper\Category\Flat + */ + protected $_flatCategory; + + /** + * @param \Magento\Backend\Block\Template\Context $context + * @param \Magento\Catalog\Helper\Category\Flat $flatCategory + * @param array $data + */ + public function __construct( + \Magento\Backend\Block\Template\Context $context, + \Magento\Catalog\Helper\Category\Flat $flatCategory, + array $data = array() + ) { + $this->_flatCategory = $flatCategory; + parent::__construct($context, $data); + } + protected function _getElementHtml(\Magento\Data\Form\Element\AbstractElement $element) { - if (!$this->helper('Magento\Catalog\Helper\Category\Flat')->isBuilt()) { + if (!$this->_flatCategory->isBuilt()) { $element->setDisabled(true) ->setValue(0); } diff --git a/app/code/Magento/Catalog/Block/Adminhtml/System/Config/Form/Field/Select/Flatproduct.php b/app/code/Magento/Catalog/Block/Adminhtml/System/Config/Form/Field/Select/Flatproduct.php index 81cc72115e7f2..02f676caa4266 100644 --- a/app/code/Magento/Catalog/Block/Adminhtml/System/Config/Form/Field/Select/Flatproduct.php +++ b/app/code/Magento/Catalog/Block/Adminhtml/System/Config/Form/Field/Select/Flatproduct.php @@ -37,6 +37,25 @@ class Flatproduct extends \Magento\Backend\Block\System\Config\Form\Field { + /** + * @var \Magento\Catalog\Helper\Product\Flat + */ + protected $_flatProduct; + + /** + * @param \Magento\Backend\Block\Template\Context $context + * @param \Magento\Catalog\Helper\Product\Flat $flatProduct + * @param array $data + */ + public function __construct( + \Magento\Backend\Block\Template\Context $context, + \Magento\Catalog\Helper\Product\Flat $flatProduct, + array $data = array() + ) { + $this->_flatProduct = $flatProduct; + parent::__construct($context, $data); + } + /** * Retrieve Element HTML * @@ -44,7 +63,7 @@ class Flatproduct * @return string */ protected function _getElementHtml(\Magento\Data\Form\Element\AbstractElement $element) { - if (!$this->helper('Magento\Catalog\Helper\Product\Flat')->isBuilt()) { + if (!$this->_flatProduct->isBuilt()) { $element->setDisabled(true) ->setValue(0); } diff --git a/app/code/Magento/Catalog/Block/Category/View.php b/app/code/Magento/Catalog/Block/Category/View.php index b35ce907683e7..64ded63d6449b 100644 --- a/app/code/Magento/Catalog/Block/Category/View.php +++ b/app/code/Magento/Catalog/Block/Category/View.php @@ -49,18 +49,26 @@ class View extends \Magento\View\Element\Template */ protected $_catalogLayer; + /** + * @var \Magento\Catalog\Helper\Category + */ + protected $_categoryHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Catalog\Model\Layer $catalogLayer * @param \Magento\Core\Model\Registry $registry + * @param \Magento\Catalog\Helper\Category $categoryHelper * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Catalog\Model\Layer $catalogLayer, \Magento\Core\Model\Registry $registry, + \Magento\Catalog\Helper\Category $categoryHelper, array $data = array() ) { + $this->_categoryHelper = $categoryHelper; $this->_catalogLayer = $catalogLayer; $this->_coreRegistry = $registry; parent::__construct($context, $data); @@ -88,7 +96,7 @@ protected function _prepareLayout() $headBlock->setKeywords($keywords); } //@todo: move canonical link to separate block - if ($this->helper('Magento\Catalog\Helper\Category')->canUseCanonicalTag() + if ($this->_categoryHelper->canUseCanonicalTag() && !$headBlock->getChildBlock('magento-page-head-category-canonical-link') ) { $headBlock->addChild( diff --git a/app/code/Magento/Catalog/Block/Product/AbstractProduct.php b/app/code/Magento/Catalog/Block/Product/AbstractProduct.php index 3c8a24302c235..34a53c8ee8966 100644 --- a/app/code/Magento/Catalog/Block/Product/AbstractProduct.php +++ b/app/code/Magento/Catalog/Block/Product/AbstractProduct.php @@ -114,6 +114,31 @@ abstract class AbstractProduct extends \Magento\View\Element\Template */ protected $mathRandom; + /** + * @var \Magento\Checkout\Helper\Cart + */ + protected $_cartHelper; + + /** + * @var \Magento\Wishlist\Helper\Data + */ + protected $_wishlistHelper; + + /** + * @var \Magento\Catalog\Helper\Product\Compare + */ + protected $_compareProduct; + + /** + * @var \Magento\Theme\Helper\Layout + */ + protected $_layoutHelper; + + /** + * @var \Magento\Catalog\Helper\Image + */ + protected $_imageHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Catalog\Model\Config $catalogConfig @@ -121,7 +146,14 @@ abstract class AbstractProduct extends \Magento\View\Element\Template * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -130,8 +162,18 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, array $data = array() ) { + $this->_imageHelper = $imageHelper; + $this->_layoutHelper = $layoutHelper; + $this->_compareProduct = $compareProduct; + $this->_wishlistHelper = $wishlistHelper; + $this->_cartHelper = $cartHelper; $this->_catalogConfig = $catalogConfig; $this->_coreRegistry = $registry; $this->_taxData = $taxData; @@ -161,7 +203,7 @@ public function getAddToCartUrl($product, $additional = array()) return $this->getProductUrl($product, $additional); } - return $this->helper('Magento\Checkout\Helper\Cart')->getAddUrl($product, $additional); + return $this->_cartHelper->getAddUrl($product, $additional); } /** @@ -194,7 +236,7 @@ public function getSubmitUrl($product, $additional = array()) */ public function getAddToWishlistUrl($product) { - return $this->helper('Magento\Wishlist\Helper\Data')->getAddUrl($product); + return $this->_wishlistHelper->getAddUrl($product); } /** @@ -205,7 +247,7 @@ public function getAddToWishlistUrl($product) */ public function getAddToCompareUrl($product) { - return $this->helper('Magento\Catalog\Helper\Product\Compare')->getAddUrl($product); + return $this->_compareProduct->getAddUrl($product); } /** @@ -597,7 +639,7 @@ public function getColumnCountLayoutDepend($pageLayout) */ public function getPageLayout() { - return $this->helper('Magento\Theme\Helper\Layout')->getCurrentPageLayout(); + return $this->_layoutHelper->getCurrentPageLayout(); } /** @@ -651,7 +693,7 @@ protected function _prepareLayout() */ public function getThumbnailUrl($product) { - return (string)$this->helper('Magento\Catalog\Helper\Image')->init($product, 'thumbnail') + return (string)$this->_imageHelper->init($product, 'thumbnail') ->resize($this->getThumbnailSize()); } @@ -673,7 +715,7 @@ public function getThumbnailSize() */ public function getThumbnailSidebarUrl($product) { - return (string) $this->helper('Magento\Catalog\Helper\Image')->init($product, 'thumbnail') + return (string) $this->_imageHelper->init($product, 'thumbnail') ->resize($this->getThumbnailSidebarSize()); } @@ -695,7 +737,7 @@ public function getThumbnailSidebarSize() */ public function getSmallImageUrl($product) { - return (string) $this->helper('Magento\Catalog\Helper\Image')->init($product, 'small_image') + return (string) $this->_imageHelper->init($product, 'small_image') ->resize($this->getSmallImageSize()); } @@ -717,7 +759,7 @@ public function getSmallImageSize() */ public function getSmallImageSidebarUrl($product) { - return (string) $this->helper('Magento\Catalog\Helper\Image')->init($product, 'small_image') + return (string) $this->_imageHelper->init($product, 'small_image') ->resize($this->getSmallImageSidebarSize()); } @@ -739,7 +781,7 @@ public function getSmallImageSidebarSize() */ public function getBaseImageUrl($product) { - return (string)$this->helper('Magento\Catalog\Helper\Image')->init($product, 'image') + return (string)$this->_imageHelper->init($product, 'image') ->resize($this->getBaseImageSize()); } @@ -761,7 +803,7 @@ public function getBaseImageSize() */ public function getBaseImageIconUrl($product) { - return (string)$this->helper('Magento\Catalog\Helper\Image')->init($product, 'image') + return (string)$this->_imageHelper->init($product, 'image') ->resize($this->getBaseImageIconSize()); } diff --git a/app/code/Magento/Catalog/Block/Product/Compare/AbstractCompare.php b/app/code/Magento/Catalog/Block/Product/Compare/AbstractCompare.php index d4f59eca80007..dffea62096710 100644 --- a/app/code/Magento/Catalog/Block/Product/Compare/AbstractCompare.php +++ b/app/code/Magento/Catalog/Block/Product/Compare/AbstractCompare.php @@ -36,36 +36,6 @@ abstract class AbstractCompare extends \Magento\Catalog\Block\Product\AbstractProduct { - /** - * Catalog product compare - * - * @var \Magento\Catalog\Helper\Product\Compare - */ - protected $_catalogProductCompare = null; - - /** - * @param \Magento\View\Element\Template\Context $context - * @param \Magento\Catalog\Model\Config $catalogConfig - * @param \Magento\Core\Model\Registry $registry - * @param \Magento\Tax\Helper\Data $taxData - * @param \Magento\Catalog\Helper\Data $catalogData - * @param \Magento\Math\Random $mathRandom - * @param \Magento\Catalog\Helper\Product\Compare $catalogProductCompare - * @param array $data - */ - public function __construct( - \Magento\View\Element\Template\Context $context, - \Magento\Catalog\Model\Config $catalogConfig, - \Magento\Core\Model\Registry $registry, - \Magento\Tax\Helper\Data $taxData, - \Magento\Catalog\Helper\Data $catalogData, - \Magento\Math\Random $mathRandom, - \Magento\Catalog\Helper\Product\Compare $catalogProductCompare, - array $data = array() - ) { - $this->_catalogProductCompare = $catalogProductCompare; - parent::__construct($context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $data); - } /** * Retrieve Product Compare Helper @@ -74,7 +44,7 @@ public function __construct( */ protected function _getHelper() { - return $this->_catalogProductCompare; + return $this->_compareProduct; } /** diff --git a/app/code/Magento/Catalog/Block/Product/Compare/ListCompare.php b/app/code/Magento/Catalog/Block/Product/Compare/ListCompare.php index bc85b4255a092..e38241abd312f 100644 --- a/app/code/Magento/Catalog/Block/Product/Compare/ListCompare.php +++ b/app/code/Magento/Catalog/Block/Product/Compare/ListCompare.php @@ -104,20 +104,31 @@ class ListCompare extends \Magento\Catalog\Block\Product\Compare\AbstractCompare */ protected $_coreData; + /** + * @var \Magento\Wishlist\Helper\Data + */ + protected $_wishlistHelper; + /** * @param \Magento\View\Element\Template\Context $context - * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Catalog\Model\Config $catalogConfig * @param \Magento\Core\Model\Registry $registry * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom - * @param \Magento\Catalog\Helper\Product\Compare $catalogProductCompare + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper + * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Catalog\Model\Resource\Product\Compare\Item\CollectionFactory $itemCollectionFactory * @param \Magento\Catalog\Model\Product\Visibility $catalogProductVisibility * @param \Magento\Log\Model\Visitor $logVisitor * @param \Magento\Customer\Model\Session $customerSession * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -126,7 +137,11 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, - \Magento\Catalog\Helper\Product\Compare $catalogProductCompare, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Core\Helper\Data $coreData, \Magento\Catalog\Model\Resource\Product\Compare\Item\CollectionFactory $itemCollectionFactory, \Magento\Catalog\Model\Product\Visibility $catalogProductVisibility, @@ -134,6 +149,7 @@ public function __construct( \Magento\Customer\Model\Session $customerSession, array $data = array() ) { + $this->_wishlistHelper = $wishlistHelper; $this->_coreData = $coreData; $this->_itemCollectionFactory = $itemCollectionFactory; $this->_catalogProductVisibility = $catalogProductVisibility; @@ -146,7 +162,11 @@ public function __construct( $taxData, $catalogData, $mathRandom, - $catalogProductCompare, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, $data ); } @@ -166,7 +186,7 @@ public function getAddToWishlistUrl($product) $urlParamName => $continueUrl ); - return $this->helper('Magento\Wishlist\Helper\Data')->getAddUrlWithParams($product, $params); + return $this->_wishlistHelper->getAddUrlWithParams($product, $params); } /** @@ -191,7 +211,7 @@ protected function _prepareLayout() public function getItems() { if (is_null($this->_items)) { - $this->_catalogProductCompare->setAllowUsedFlat(false); + $this->_compareProduct->setAllowUsedFlat(false); $this->_items = $this->_itemCollectionFactory->create(); $this->_items->useProductItem(true) diff --git a/app/code/Magento/Catalog/Block/Product/Configurable/AssociatedSelector/Renderer/Id.php b/app/code/Magento/Catalog/Block/Product/Configurable/AssociatedSelector/Renderer/Id.php index 8ebfb556cfc75..af064644010a0 100644 --- a/app/code/Magento/Catalog/Block/Product/Configurable/AssociatedSelector/Renderer/Id.php +++ b/app/code/Magento/Catalog/Block/Product/Configurable/AssociatedSelector/Renderer/Id.php @@ -37,6 +37,26 @@ class Id extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer { + + /** + * @var \Magento\Catalog\Helper\Product + */ + protected $_productHelper; + + /** + * @param \Magento\Backend\Block\Context $context + * @param \Magento\Catalog\Helper\Product $productHelper + * @param array $data + */ + public function __construct( + \Magento\Backend\Block\Context $context, + \Magento\Catalog\Helper\Product $productHelper, + array $data = array() + ) { + $this->_productHelper = $productHelper; + parent::__construct($context, $data); + } + /** * Render grid row * @@ -46,7 +66,7 @@ class Id public function render(\Magento\Object $row) { $imageUrl = $row->getImage() && $row->getImage() != 'no_selection' - ? $this->escapeHtml($this->_helperFactory->get('Magento\Catalog\Helper\Product')->getImageUrl($row)) + ? $this->escapeHtml($this->_productHelper->getImageUrl($row)) : ''; return $this->_getValue($row) . ''; } diff --git a/app/code/Magento/Catalog/Block/Product/Gallery.php b/app/code/Magento/Catalog/Block/Product/Gallery.php index f3f8942bf68da..1edc523063d99 100644 --- a/app/code/Magento/Catalog/Block/Product/Gallery.php +++ b/app/code/Magento/Catalog/Block/Product/Gallery.php @@ -107,7 +107,8 @@ public function getImageFile() public function getImageWidth() { $file = $this->getCurrentImage()->getPath(); - if ($this->_filesystem->isFile($file)) { + + if ($this->_filesystem->getDirectoryRead(\Magento\Filesystem::MEDIA)->isFile($file)) { $size = getimagesize($file); if (isset($size[0])) { if ($size[0] > 600) { diff --git a/app/code/Magento/Catalog/Block/Product/ListProduct.php b/app/code/Magento/Catalog/Block/Product/ListProduct.php index 9768e0bfb9338..7fbbd44f349d8 100644 --- a/app/code/Magento/Catalog/Block/Product/ListProduct.php +++ b/app/code/Magento/Catalog/Block/Product/ListProduct.php @@ -71,9 +71,16 @@ class ListProduct extends \Magento\Catalog\Block\Product\AbstractProduct * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Catalog\Model\CategoryFactory $categoryFactory * @param \Magento\Catalog\Model\Layer $catalogLayer * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -82,13 +89,31 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Catalog\Model\CategoryFactory $categoryFactory, \Magento\Catalog\Model\Layer $catalogLayer, array $data = array() ) { $this->_categoryFactory = $categoryFactory; $this->_catalogLayer = $catalogLayer; - parent::__construct($context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $data); + parent::__construct( + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $data + ); } /** diff --git a/app/code/Magento/Catalog/Block/Product/NewProduct.php b/app/code/Magento/Catalog/Block/Product/NewProduct.php index fc59f8cd3708d..d00b3ec7681b3 100644 --- a/app/code/Magento/Catalog/Block/Product/NewProduct.php +++ b/app/code/Magento/Catalog/Block/Product/NewProduct.php @@ -73,10 +73,17 @@ class NewProduct extends \Magento\Catalog\Block\Product\AbstractProduct * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $productCollectionFactory * @param \Magento\Catalog\Model\Product\Visibility $catalogProductVisibility * @param \Magento\Customer\Model\Session $customerSession * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -85,6 +92,11 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Catalog\Model\Resource\Product\CollectionFactory $productCollectionFactory, \Magento\Catalog\Model\Product\Visibility $catalogProductVisibility, \Magento\Customer\Model\Session $customerSession, @@ -93,7 +105,20 @@ public function __construct( $this->_productCollectionFactory = $productCollectionFactory; $this->_catalogProductVisibility = $catalogProductVisibility; $this->_customerSession = $customerSession; - parent::__construct($context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $data); + parent::__construct( + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $data + ); } /** diff --git a/app/code/Magento/Catalog/Block/Product/Price.php b/app/code/Magento/Catalog/Block/Product/Price.php index 563ade07089c9..5cebb97e6b31a 100644 --- a/app/code/Magento/Catalog/Block/Product/Price.php +++ b/app/code/Magento/Catalog/Block/Product/Price.php @@ -74,6 +74,11 @@ class Price extends \Magento\View\Element\Template */ protected $_jsonEncoder; + /** + * @var \Magento\Checkout\Helper\Cart + */ + protected $_cartHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Json\EncoderInterface $jsonEncoder @@ -82,6 +87,7 @@ class Price extends \Magento\View\Element\Template * @param \Magento\Core\Model\Registry $registry * @param \Magento\Stdlib\String $string * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper * @param array $data */ public function __construct( @@ -92,8 +98,10 @@ public function __construct( \Magento\Core\Model\Registry $registry, \Magento\Stdlib\String $string, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, array $data = array() ) { + $this->_cartHelper = $cartHelper; $this->_jsonEncoder = $jsonEncoder; $this->_coreRegistry = $registry; $this->_catalogData = $catalogData; @@ -205,7 +213,7 @@ public function getTierPrices($product = null) */ public function getAddToCartUrl($product, $additional = array()) { - return $this->helper('Magento\Checkout\Helper\Cart')->getAddUrl($product, $additional); + return $this->_cartHelper->getAddUrl($product, $additional); } /** diff --git a/app/code/Magento/Catalog/Block/Product/ProductList/Promotion.php b/app/code/Magento/Catalog/Block/Product/ProductList/Promotion.php index 13d6c1e5d20de..47103f2a45ecf 100644 --- a/app/code/Magento/Catalog/Block/Product/ProductList/Promotion.php +++ b/app/code/Magento/Catalog/Block/Product/ProductList/Promotion.php @@ -48,11 +48,18 @@ class Promotion extends \Magento\Catalog\Block\Product\ListProduct * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Catalog\Model\CategoryFactory $categoryFactory * @param \Magento\Catalog\Model\Layer $catalogLayer * @param \Magento\Catalog\Model\LayerFactory $layerFactory * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $productCollectionFactory * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -61,6 +68,11 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Catalog\Model\CategoryFactory $categoryFactory, \Magento\Catalog\Model\Layer $catalogLayer, \Magento\Catalog\Model\LayerFactory $layerFactory, @@ -76,6 +88,11 @@ public function __construct( $taxData, $catalogData, $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, $categoryFactory, $catalogLayer, $data diff --git a/app/code/Magento/Catalog/Block/Product/ProductList/Random.php b/app/code/Magento/Catalog/Block/Product/ProductList/Random.php index 91a17a6c0201b..63513d1003e3f 100644 --- a/app/code/Magento/Catalog/Block/Product/ProductList/Random.php +++ b/app/code/Magento/Catalog/Block/Product/ProductList/Random.php @@ -54,11 +54,18 @@ class Random extends \Magento\Catalog\Block\Product\ListProduct * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Catalog\Model\CategoryFactory $categoryFactory * @param \Magento\Catalog\Model\Layer $catalogLayer * @param \Magento\Catalog\Model\LayerFactory $layerFactory * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $productCollectionFactory * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -67,6 +74,11 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Catalog\Model\CategoryFactory $categoryFactory, \Magento\Catalog\Model\Layer $catalogLayer, \Magento\Catalog\Model\LayerFactory $layerFactory, @@ -82,6 +94,11 @@ public function __construct( $taxData, $catalogData, $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, $categoryFactory, $catalogLayer, $data diff --git a/app/code/Magento/Catalog/Block/Product/ProductList/Related.php b/app/code/Magento/Catalog/Block/Product/ProductList/Related.php index 4681f1e428cd5..92e1d4400bd44 100644 --- a/app/code/Magento/Catalog/Block/Product/ProductList/Related.php +++ b/app/code/Magento/Catalog/Block/Product/ProductList/Related.php @@ -70,10 +70,17 @@ class Related extends \Magento\Catalog\Block\Product\AbstractProduct * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Checkout\Model\Resource\Cart $checkoutCart * @param \Magento\Catalog\Model\Product\Visibility $catalogProductVisibility * @param \Magento\Checkout\Model\Session $checkoutSession * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -82,6 +89,11 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Checkout\Model\Resource\Cart $checkoutCart, \Magento\Catalog\Model\Product\Visibility $catalogProductVisibility, \Magento\Checkout\Model\Session $checkoutSession, @@ -90,7 +102,20 @@ public function __construct( $this->_checkoutCart = $checkoutCart; $this->_catalogProductVisibility = $catalogProductVisibility; $this->_checkoutSession = $checkoutSession; - parent::__construct($context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $data); + parent::__construct( + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $data + ); } protected function _prepareData() diff --git a/app/code/Magento/Catalog/Block/Product/ProductList/Upsell.php b/app/code/Magento/Catalog/Block/Product/ProductList/Upsell.php index 976d021cc7443..2e483ac781a9d 100644 --- a/app/code/Magento/Catalog/Block/Product/ProductList/Upsell.php +++ b/app/code/Magento/Catalog/Block/Product/ProductList/Upsell.php @@ -76,10 +76,17 @@ class Upsell extends \Magento\Catalog\Block\Product\AbstractProduct * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Checkout\Model\Resource\Cart $checkoutCart * @param \Magento\Catalog\Model\Product\Visibility $catalogProductVisibility * @param \Magento\Checkout\Model\Session $checkoutSession * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -88,6 +95,11 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Checkout\Model\Resource\Cart $checkoutCart, \Magento\Catalog\Model\Product\Visibility $catalogProductVisibility, \Magento\Checkout\Model\Session $checkoutSession, @@ -96,7 +108,20 @@ public function __construct( $this->_checkoutCart = $checkoutCart; $this->_catalogProductVisibility = $catalogProductVisibility; $this->_checkoutSession = $checkoutSession; - parent::__construct($context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $data); + parent::__construct( + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $data + ); } protected function _prepareData() diff --git a/app/code/Magento/Catalog/Block/Product/Send.php b/app/code/Magento/Catalog/Block/Product/Send.php index 4f4c43e406f32..1e945b91a1335 100644 --- a/app/code/Magento/Catalog/Block/Product/Send.php +++ b/app/code/Magento/Catalog/Block/Product/Send.php @@ -50,8 +50,15 @@ class Send extends \Magento\Catalog\Block\Product\AbstractProduct * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Customer\Model\Session $customerSession * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -60,11 +67,29 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Customer\Model\Session $customerSession, array $data = array() ) { $this->_customerSession = $customerSession; - parent::__construct($context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $data); + parent::__construct( + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $data + ); } /** diff --git a/app/code/Magento/Catalog/Block/Product/View.php b/app/code/Magento/Catalog/Block/Product/View.php index f22be4c5d3910..a1c8bf97d4b84 100644 --- a/app/code/Magento/Catalog/Block/Product/View.php +++ b/app/code/Magento/Catalog/Block/Product/View.php @@ -69,19 +69,32 @@ class View extends \Magento\Catalog\Block\Product\AbstractProduct */ protected $_coreData; + /** + * @var \Magento\Catalog\Helper\Product + */ + protected $_productHelper; + /** * @param \Magento\View\Element\Template\Context $context - * @param \Magento\Core\Helper\Data $coreData - * @param \Magento\Json\EncoderInterface $jsonEncoder * @param \Magento\Catalog\Model\Config $catalogConfig * @param \Magento\Core\Model\Registry $registry * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper + * @param \Magento\Core\Helper\Data $coreData + * @param \Magento\Json\EncoderInterface $jsonEncoder * @param \Magento\Catalog\Model\ProductFactory $productFactory * @param \Magento\Tax\Model\Calculation $taxCalculation * @param \Magento\Stdlib\String $string + * @param \Magento\Catalog\Helper\Product $productHelper * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -90,19 +103,39 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Core\Helper\Data $coreData, \Magento\Json\EncoderInterface $jsonEncoder, \Magento\Catalog\Model\ProductFactory $productFactory, \Magento\Tax\Model\Calculation $taxCalculation, \Magento\Stdlib\String $string, + \Magento\Catalog\Helper\Product $productHelper, array $data = array() ) { + $this->_productHelper = $productHelper; $this->_coreData = $coreData; $this->_jsonEncoder = $jsonEncoder; $this->_productFactory = $productFactory; $this->_taxCalculation = $taxCalculation; $this->string = $string; - parent::__construct($context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $data); + parent::__construct( + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $data + ); } /** @@ -134,7 +167,7 @@ protected function _prepareLayout() $headBlock->setDescription($this->string->substr($product->getDescription(), 0, 255)); } //@todo: move canonical link to separate block - if ($this->helper('Magento\Catalog\Helper\Product')->canUseCanonicalTag() + if ($this->_productHelper->canUseCanonicalTag() && !$headBlock->getChildBlock('magento-page-head-product-canonical-link') ) { $params = array('_ignore_category'=>true); @@ -202,7 +235,7 @@ public function getAddToCartUrl($product, $additional = array()) $addUrlValue = $this->_urlBuilder->getUrl('*/*/*', array('_use_rewrite' => true, '_current' => true)); $additional[$addUrlKey] = $this->_coreData->urlEncode($addUrlValue); - return $this->helper('Magento\Checkout\Helper\Cart')->getAddUrl($product, $additional); + return $this->_cartHelper->getAddUrl($product, $additional); } /** diff --git a/app/code/Magento/Catalog/Block/Product/View/AbstractView.php b/app/code/Magento/Catalog/Block/Product/View/AbstractView.php index 820cc5880468a..3d6d48a3c5b6e 100644 --- a/app/code/Magento/Catalog/Block/Product/View/AbstractView.php +++ b/app/code/Magento/Catalog/Block/Product/View/AbstractView.php @@ -47,8 +47,15 @@ abstract class AbstractView extends \Magento\Catalog\Block\Product\AbstractProdu * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Stdlib\ArrayUtils $arrayUtils * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -57,11 +64,29 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Stdlib\ArrayUtils $arrayUtils, array $data = array() ) { $this->arrayUtils = $arrayUtils; - parent::__construct($context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $data); + parent::__construct( + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $data + ); } diff --git a/app/code/Magento/Catalog/Block/Product/View/Options/AbstractOptions.php b/app/code/Magento/Catalog/Block/Product/View/Options/AbstractOptions.php index a6ac246acf98a..14c03b429797e 100644 --- a/app/code/Magento/Catalog/Block/Product/View/Options/AbstractOptions.php +++ b/app/code/Magento/Catalog/Block/Product/View/Options/AbstractOptions.php @@ -57,16 +57,24 @@ abstract class AbstractOptions extends \Magento\View\Element\Template */ protected $_taxData = null; + /** + * @var \Magento\Core\Helper\Data + */ + protected $_coreHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Tax\Helper\Data $taxData + * @param \Magento\Core\Helper\Data $coreHelper * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Tax\Helper\Data $taxData, + \Magento\Core\Helper\Data $coreHelper, array $data = array() ) { + $this->_coreHelper = $coreHelper; $this->_taxData = $taxData; parent::__construct($context, $data); } @@ -150,13 +158,13 @@ protected function _formatPrice($value, $flag=true) $_priceInclTax = $this->getPrice($value['pricing_value'], true); $_priceExclTax = $this->getPrice($value['pricing_value']); if ($this->_taxData->displayPriceIncludingTax()) { - $priceStr .= $this->helper('Magento\Core\Helper\Data')->currencyByStore($_priceInclTax, $store, true, $flag); + $priceStr .= $this->_coreHelper->currencyByStore($_priceInclTax, $store, true, $flag); } elseif ($this->_taxData->displayPriceExcludingTax()) { - $priceStr .= $this->helper('Magento\Core\Helper\Data')->currencyByStore($_priceExclTax, $store, true, $flag); + $priceStr .= $this->_coreHelper->currencyByStore($_priceExclTax, $store, true, $flag); } elseif ($this->_taxData->displayBothPrices()) { - $priceStr .= $this->helper('Magento\Core\Helper\Data')->currencyByStore($_priceExclTax, $store, true, $flag); + $priceStr .= $this->_coreHelper->currencyByStore($_priceExclTax, $store, true, $flag); if ($_priceInclTax != $_priceExclTax) { - $priceStr .= ' ('.$sign.$this->helper('Magento\Core\Helper\Data') + $priceStr .= ' ('.$sign.$this->_coreHelper ->currencyByStore($_priceInclTax, $store, true, $flag).' '.__('Incl. Tax').')'; } } @@ -194,6 +202,6 @@ public function getPrice($price, $includingTax = null) public function getCurrencyPrice($price) { $store = $this->getProduct()->getStore(); - return $this->helper('Magento\Core\Helper\Data')->currencyByStore($price, $store, false); + return $this->_coreHelper->currencyByStore($price, $store, false); } } diff --git a/app/code/Magento/Catalog/Block/Product/View/Options/Type/Date.php b/app/code/Magento/Catalog/Block/Product/View/Options/Type/Date.php index 3fa0a3ce25771..fe6ca7c537ba5 100644 --- a/app/code/Magento/Catalog/Block/Product/View/Options/Type/Date.php +++ b/app/code/Magento/Catalog/Block/Product/View/Options/Type/Date.php @@ -51,17 +51,19 @@ class Date extends \Magento\Catalog\Block\Product\View\Options\AbstractOptions /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Tax\Helper\Data $taxData + * @param \Magento\Core\Helper\Data $coreHelper * @param \Magento\Catalog\Model\Product\Option\Type\Date $catalogProductOptionTypeDate * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Tax\Helper\Data $taxData, + \Magento\Core\Helper\Data $coreHelper, \Magento\Catalog\Model\Product\Option\Type\Date $catalogProductOptionTypeDate, array $data = array() ) { $this->_catalogProductOptionTypeDate = $catalogProductOptionTypeDate; - parent::__construct($context, $taxData, $data); + parent::__construct($context, $taxData, $coreHelper, $data); } protected function _prepareLayout() diff --git a/app/code/Magento/Catalog/Block/Product/View/Options/Type/Select.php b/app/code/Magento/Catalog/Block/Product/View/Options/Type/Select.php index e578727a43edc..a48d904212ceb 100644 --- a/app/code/Magento/Catalog/Block/Product/View/Options/Type/Select.php +++ b/app/code/Magento/Catalog/Block/Product/View/Options/Type/Select.php @@ -37,6 +37,27 @@ class Select extends \Magento\Catalog\Block\Product\View\Options\AbstractOptions { + /** + * @var \Magento\Core\Helper\Data + */ + protected $_coreHelper; + + /** + * @param \Magento\View\Element\Template\Context $context + * @param \Magento\Tax\Helper\Data $taxData + * @param \Magento\Core\Helper\Data $coreHelper + * @param array $data + */ + public function __construct( + \Magento\View\Element\Template\Context $context, + \Magento\Tax\Helper\Data $taxData, + \Magento\Core\Helper\Data $coreHelper, + array $data = array() + ) { + $this->_coreHelper = $coreHelper; + parent::__construct($context, $taxData, $coreHelper, $data); + } + /** * Return html for control element * @@ -75,7 +96,7 @@ public function getValuesHtml() $_value->getOptionTypeId(), $_value->getTitle() . ' ' . $priceStr . '', array( - 'price' => $this->helper('Magento\Core\Helper\Data')->currencyByStore( + 'price' => $this->_coreHelper->currencyByStore( $_value->getPrice(true), $store, false @@ -143,7 +164,7 @@ public function getValuesHtml() . ($this->getSkipJsReloadPrice() ? '' : ' onclick="opConfig.reloadPrice()"') . ' name="options[' . $_option->getId() . ']' . $arraySign . '" id="options_' . $_option->getId() . '_' . $count . '" value="' . $htmlValue . '" ' . $checked . ' price="' - . $this->helper('Magento\Core\Helper\Data')->currencyByStore($_value->getPrice(true), $store, false) . '" />' + . $this->_coreHelper->currencyByStore($_value->getPrice(true), $store, false) . '" />' . ''; $selectHtml .= '
'; diff --git a/app/code/Magento/Catalog/Block/Product/View/Type/Configurable.php b/app/code/Magento/Catalog/Block/Product/View/Type/Configurable.php index dca71d03499b7..b25fa2cb2e980 100644 --- a/app/code/Magento/Catalog/Block/Product/View/Type/Configurable.php +++ b/app/code/Magento/Catalog/Block/Product/View/Type/Configurable.php @@ -69,18 +69,30 @@ class Configurable extends \Magento\Catalog\Block\Product\View\AbstractView */ protected $_jsonEncoder; + /** + * @var \Magento\Catalog\Helper\Image + */ + protected $_imageHelper; + /** * @param \Magento\View\Element\Template\Context $context - * @param \Magento\Json\EncoderInterface $jsonEncoder * @param \Magento\Catalog\Model\Config $catalogConfig * @param \Magento\Core\Model\Registry $registry * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Stdlib\ArrayUtils $arrayUtils + * @param \Magento\Json\EncoderInterface $jsonEncoder * @param \Magento\Tax\Model\Calculation $taxCalculation * @param \Magento\Catalog\Helper\Product $catalogProduct * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -89,17 +101,35 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Stdlib\ArrayUtils $arrayUtils, \Magento\Json\EncoderInterface $jsonEncoder, \Magento\Tax\Model\Calculation $taxCalculation, \Magento\Catalog\Helper\Product $catalogProduct, array $data = array() ) { + $this->_imageHelper = $imageHelper; $this->_taxCalculation = $taxCalculation; $this->_catalogProduct = $catalogProduct; $this->_jsonEncoder = $jsonEncoder; parent::__construct( - $context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $arrayUtils, $data + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $arrayUtils, + $data ); } @@ -196,7 +226,7 @@ public function getJsonConfig() foreach ($this->getAllowProducts() as $product) { $productId = $product->getId(); - $image = $this->helper('Magento\Catalog\Helper\Image')->init($product, 'image'); + $image = $this->_imageHelper->init($product, 'image'); foreach ($this->getAllowAttributes() as $attribute) { $productAttribute = $attribute->getProductAttribute(); diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Category.php b/app/code/Magento/Catalog/Controller/Adminhtml/Category.php index 75052a3faa572..19043ae5ed82c 100644 --- a/app/code/Magento/Catalog/Controller/Adminhtml/Category.php +++ b/app/code/Magento/Catalog/Controller/Adminhtml/Category.php @@ -352,10 +352,11 @@ public function saveAction() } $category->save(); - $this->_getSession()->addSuccess(__('You saved the category.')); + $this->messageManager->addSuccess(__('You saved the category.')); $refreshTree = 'true'; } catch (\Exception $e){ - $this->_getSession()->addError($e->getMessage())->setCategoryData($data); + $this->messageManager->addError($e->getMessage()); + $this->_getSession()->setCategoryData($data); $refreshTree = 'false'; } } @@ -365,7 +366,7 @@ public function saveAction() /** @var $block \Magento\View\Element\Messages */ $block = $this->_objectManager->get('Magento\View\Element\Messages'); - $block->setMessages($this->_getSession()->getMessages(true)); + $block->setMessages($this->messageManager->getMessages(true)); $body = $this->_objectManager->get('Magento\Core\Helper\Data')->jsonEncode(array( 'messages' => $block->getGroupedHtml(), 'error' => $refreshTree !== 'true', @@ -444,13 +445,13 @@ public function deleteAction() $this->_objectManager->get('Magento\Backend\Model\Auth\Session')->setDeletedPath($category->getPath()); $category->delete(); - $this->_getSession()->addSuccess(__('You deleted the category.')); + $this->messageManager->addSuccess(__('You deleted the category.')); } catch (\Magento\Core\Exception $e){ - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->getResponse()->setRedirect($this->getUrl('catalog/*/edit', array('_current' => true))); return; } catch (\Exception $e){ - $this->_getSession()->addError(__('Something went wrong while trying to delete the category.')); + $this->messageManager->addError(__('Something went wrong while trying to delete the category.')); $this->getResponse()->setRedirect($this->getUrl('catalog/*/edit', array('_current' => true))); return; } diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product.php index 510b8883b4f3e..41ac1941e5fdc 100644 --- a/app/code/Magento/Catalog/Controller/Adminhtml/Product.php +++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product.php @@ -172,13 +172,13 @@ protected function _initProduct() * Create serializer block for a grid * * @param string $inputName - * @param \Magento\Adminhtml\Block\Widget\Grid $gridBlock + * @param \Magento\Backend\Block\Widget\Grid $gridBlock * @param array $productsArray * @return \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Ajax\Serializer */ protected function _createSerializerBlock( $inputName, - \Magento\Adminhtml\Block\Widget\Grid $gridBlock, + \Magento\Backend\Block\Widget\Grid $gridBlock, $productsArray ) { return $this->_view->getLayout()->createBlock('Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Ajax\Serializer') @@ -269,7 +269,7 @@ public function editAction() $product = $this->_initProduct(); if ($productId && !$product->getId()) { - $this->_getSession()->addError( + $this->messageManager->addError( __('This product no longer exists.') ); $this->_redirect('catalog/*/'); @@ -646,8 +646,8 @@ public function validateAction() $response->setError(true); $response->setMessage($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addError($e->getMessage()); - $this->_view->getLayout()->initMessages('Magento\Adminhtml\Model\Session'); + $this->messageManager->addError($e->getMessage()); + $this->_view->getLayout()->initMessages(); $response->setError(true); $response->setMessage($this->_view->getLayout()->getMessagesBlock()->getGroupedHtml()); } @@ -764,16 +764,16 @@ protected function _initProductSave($product) $links = $this->getRequest()->getPost('links'); if (isset($links['related']) && !$product->getRelatedReadonly()) { $product->setRelatedLinkData( - $this->_objectManager->get('Magento\Adminhtml\Helper\Js')->decodeGridSerializedInput($links['related']) + $this->_objectManager->get('Magento\Backend\Helper\Js')->decodeGridSerializedInput($links['related']) ); } if (isset($links['upsell']) && !$product->getUpsellReadonly()) { $product->setUpSellLinkData( - $this->_objectManager->get('Magento\Adminhtml\Helper\Js')->decodeGridSerializedInput($links['upsell']) + $this->_objectManager->get('Magento\Backend\Helper\Js')->decodeGridSerializedInput($links['upsell']) ); } if (isset($links['crosssell']) && !$product->getCrosssellReadonly()) { - $product->setCrossSellLinkData($this->_objectManager->get('Magento\Adminhtml\Helper\Js') + $product->setCrossSellLinkData($this->_objectManager->get('Magento\Backend\Helper\Js') ->decodeGridSerializedInput($links['crosssell'])); } @@ -893,9 +893,9 @@ public function saveAction() $this->_objectManager->create('Magento\CatalogRule\Model\Rule')->applyAllRulesToProduct($productId); - $this->_getSession()->addSuccess(__('You saved the product.')); + $this->messageManager->addSuccess(__('You saved the product.')); if ($product->getSku() != $originalSku) { - $this->_getSession()->addNotice(__('SKU for product %1 has been changed to %2.', + $this->messageManager->addNotice(__('SKU for product %1 has been changed to %2.', $this->_objectManager->get('Magento\Escaper')->escapeHtml($product->getName()), $this->_objectManager->get('Magento\Escaper')->escapeHtml($product->getSku())) ); @@ -908,16 +908,16 @@ public function saveAction() if ($redirectBack === 'duplicate') { $newProduct = $product->duplicate(); - $this->_getSession()->addSuccess(__('You duplicated the product.')); + $this->messageManager->addSuccess(__('You duplicated the product.')); } } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()) - ->setProductData($data); + $this->messageManager->addError($e->getMessage()); + $this->_session->setProductData($data); $redirectBack = true; } catch (\Exception $e) { $this->_objectManager->get('Magento\Logger')->logException($e); - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $redirectBack = true; } } @@ -960,11 +960,11 @@ public function duplicateAction() $product = $this->_initProduct(); try { $newProduct = $product->duplicate(); - $this->_getSession()->addSuccess(__('You duplicated the product.')); + $this->messageManager->addSuccess(__('You duplicated the product.')); $this->_redirect('catalog/*/edit', array('_current'=>true, 'id'=>$newProduct->getId())); } catch (\Exception $e) { $this->_objectManager->get('Magento\Logger')->logException($e); - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect('catalog/*/edit', array('_current'=>true)); } } @@ -1010,7 +1010,7 @@ public function massDeleteAction() { $productIds = $this->getRequest()->getParam('product'); if (!is_array($productIds)) { - $this->_getSession()->addError(__('Please select product(s).')); + $this->messageManager->addError(__('Please select product(s).')); } else { if (!empty($productIds)) { try { @@ -1018,11 +1018,11 @@ public function massDeleteAction() $product = $this->_objectManager->get('Magento\Catalog\Model\Product')->load($productId); $product->delete(); } - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __('A total of %1 record(s) have been deleted.', count($productIds)) ); } catch (\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } } } @@ -1044,13 +1044,13 @@ public function massStatusAction() $this->_objectManager->get('Magento\Catalog\Model\Product\Action') ->updateAttributes($productIds, array('status' => $status), $storeId); - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __('A total of %1 record(s) have been updated.', count($productIds)) ); } catch (\Magento\Core\Model\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { $this->_getSession() ->addException($e, __('Something went wrong while updating the product(s) status.')); @@ -1095,7 +1095,7 @@ protected function _isAllowed() */ public function showUpdateResultAction() { - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); + $session = $this->_objectManager->get('Magento\Backend\Model\Session'); if ($session->hasCompositeProductResult() && $session->getCompositeProductResult() instanceof \Magento\Object) { $this->_objectManager->get('Magento\Catalog\Helper\Product\Composite') diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute.php index d33d51f6798bd..1d730ba3d7786 100644 --- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute.php +++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute.php @@ -173,22 +173,24 @@ public function saveAction() 'products' => $productIds )); - $this->_getSession()->addNotice( + $this->messageManager->addNotice( __('Please refresh "Catalog URL Rewrites" and "Product Attributes" in System -> ' . 'Index Management.', $this->getUrl('adminhtml/process/list')) ); } - $this->_getSession()->addSuccess( + $this->messageManager->addSuccess( __('A total of %1 record(s) were updated.', count($this->_helper->getProductIds())) ); } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession() - ->addException($e, __('Something went wrong while updating the product(s) attributes.')); + $this->messageManager->addException( + $e, + __('Something went wrong while updating the product(s) attributes.') + ); } $this->_redirect('catalog/product/', array('store'=>$this->_helper->getSelectedStoreId())); @@ -210,7 +212,7 @@ protected function _validateProducts() } if ($error) { - $this->_getSession()->addError($error); + $this->messageManager->addError($error); $this->_redirect('catalog/product/', array('_current'=>true)); } @@ -254,9 +256,9 @@ public function validateAction() $response->setError(true); $response->setMessage($e->getMessage()); } catch (\Exception $e) { - $this->_getSession() + $this->messageManager ->addException($e, __('Something went wrong while updating the product(s) attributes.')); - $this->_view->getLayout()->initMessages('Magento\Adminhtml\Model\Session'); + $this->_view->getLayout()->initMessages(); $response->setError(true); $response->setMessage($this->_view->getLayout()->getMessagesBlock()->getGroupedHtml()); } diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute.php index fa36b4dc8e69a..dd7af148ad954 100644 --- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute.php +++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute.php @@ -67,7 +67,7 @@ public function __construct( * Dispatch request * * @param \Magento\App\RequestInterface $request - * @return $this|mixed + * @return \Magento\App\ResponseInterface */ public function dispatch(\Magento\App\RequestInterface $request) { @@ -126,23 +126,21 @@ public function editAction() $model->load($id); if (! $model->getId()) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError( - __('This attribute no longer exists.')); + $this->messageManager->addError(__('This attribute no longer exists.')); $this->_redirect('catalog/*/'); return; } // entity type check if ($model->getEntityTypeId() != $this->_entityTypeId) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError( - __('This attribute cannot be edited.')); + $this->messageManager->addError(__('This attribute cannot be edited.')); $this->_redirect('catalog/*/'); return; } } // set entered data if was error when we do save - $data = $this->_objectManager->get('Magento\Adminhtml\Model\Session')->getAttributeData(true); + $data = $this->_objectManager->get('Magento\Backend\Model\Session')->getAttributeData(true); if (! empty($data)) { $model->addData($data); } @@ -204,11 +202,11 @@ public function validateAction() $attributeSet->setEntityTypeId($this->_entityTypeId)->load($setName, 'attribute_set_name'); if ($attributeSet->getId()) { $setName = $this->_objectManager->get('Magento\Escaper')->escapeHtml($setName); - $this->_getSession()->addError( + $this->messageManager->addError( __('Attribute Set with name \'%1\' already exists.', $setName) ); - $this->_view->getLayout()->initMessages('Magento\Adminhtml\Model\Session'); + $this->_view->getLayout()->initMessages(); $response->setError(true); $response->setMessage($this->_view->getLayout()->getMessagesBlock()->getGroupedHtml()); } @@ -241,7 +239,7 @@ public function saveAction() $data = $this->getRequest()->getPost(); if ($data) { /** @var $session \Magento\Backend\Model\Auth\Session */ - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); + $session = $this->_objectManager->get('Magento\Backend\Model\Session'); $isNewAttributeSet = false; if (!empty($data['new_attribute_set_name'])) { @@ -254,10 +252,10 @@ public function saveAction() ->load($name, 'attribute_set_name'); if ($attributeSet->getId()) { - $session->addError( + $this->messageManager->addError( __('Attribute Set with name \'%1\' already exists.', $name) ); - $session->setAttributeData($data); + $this->messageManager->setAttributeData($data); $this->_redirect('catalog/*/edit', array('_current' => true)); return; } @@ -268,9 +266,9 @@ public function saveAction() $attributeSet->initFromSkeleton($this->getRequest()->getParam('set'))->save(); $isNewAttributeSet = true; } catch (\Magento\Core\Exception $e) { - $session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $session->addException($e, __('Something went wrong saving the attribute.')); + $this->messageManager->addException($e, __('Something went wrong saving the attribute.')); } } @@ -288,7 +286,7 @@ public function saveAction() if (strlen($this->getRequest()->getParam('attribute_code')) > 0) { $validatorAttrCode = new \Zend_Validate_Regex(array('pattern' => '/^[a-z][a-z_0-9]{0,30}$/')); if (!$validatorAttrCode->isValid($attributeCode)) { - $session->addError(__('Attribute code "%1" is invalid. Please use only letters (a-z), ' + $this->messageManager->addError(__('Attribute code "%1" is invalid. Please use only letters (a-z), ' . 'numbers (0-9) or underscore(_) in this field, first character should be a letter.', $attributeCode) ); @@ -304,7 +302,7 @@ public function saveAction() $inputType = $this->_objectManager->create('Magento\Eav\Model\Adminhtml\System\Config\Source\Inputtype\Validator'); if (!$inputType->isValid($data['frontend_input'])) { foreach ($inputType->getMessages() as $message) { - $session->addError($message); + $this->messageManager->addError($message); } $this->_redirect('catalog/*/edit', array('attribute_id' => $id, '_current' => true)); return; @@ -314,14 +312,14 @@ public function saveAction() if ($id) { $model->load($id); if (!$model->getId()) { - $session->addError( + $this->messageManager->addError( __('This attribute no longer exists.')); $this->_redirect('catalog/*/'); return; } // entity type check if ($model->getEntityTypeId() != $this->_entityTypeId) { - $session->addError( + $this->messageManager->addError( __('You can\'t update your attribute.')); $session->setAttributeData($data); $this->_redirect('catalog/*/'); @@ -387,7 +385,7 @@ public function saveAction() try { $model->save(); - $session->addSuccess(__('You saved the product attribute.')); + $this->messageManager->addSuccess(__('You saved the product attribute.')); $this->_attributeLabelCache->clean(); $session->setAttributeData(false); @@ -409,7 +407,7 @@ public function saveAction() } return; } catch (\Exception $e) { - $session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $session->setAttributeData($data); $this->_redirect('catalog/*/edit', array('attribute_id' => $id, '_current' => true)); return; @@ -427,26 +425,26 @@ public function deleteAction() // entity type check $model->load($id); if ($model->getEntityTypeId() != $this->_entityTypeId) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError( - __('This attribute cannot be deleted.')); + $this->messageManager->addError(__('This attribute cannot be deleted.')); $this->_redirect('catalog/*/'); return; } try { $model->delete(); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess( - __('The product attribute has been deleted.')); + $this->messageManager->addSuccess(__('The product attribute has been deleted.')); $this->_redirect('catalog/*/'); return; } catch (\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError($e->getMessage()); - $this->_redirect('catalog/*/edit', array('attribute_id' => $this->getRequest()->getParam('attribute_id'))); + $this->messageManager->addError($e->getMessage()); + $this->_redirect( + 'catalog/*/edit', + array('attribute_id' => $this->getRequest()->getParam('attribute_id')) + ); return; } } - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError( - __('We can\'t find an attribute to delete.')); + $this->messageManager->addError(__('We can\'t find an attribute to delete.')); $this->_redirect('catalog/*/'); } diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Gallery.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Gallery.php index 7123f488ce09a..c49d8f41851a2 100644 --- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Gallery.php +++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Gallery.php @@ -45,9 +45,10 @@ public function uploadAction() $uploader->addValidateCallback('catalog_product_image', $imageAdapter, 'validateUploadFile'); $uploader->setAllowRenameFiles(true); $uploader->setFilesDispersion(true); - $result = $uploader->save( - $this->_objectManager->get('Magento\Catalog\Model\Product\Media\Config')->getBaseTmpMediaPath() - ); + /** @var \Magento\Filesystem\Directory\Read $mediaDirectory */ + $mediaDirectory = $this->_objectManager->get('Magento\Filesystem')->getDirectoryRead(\Magento\Filesystem::MEDIA); + $config = $this->_objectManager->get('Magento\Catalog\Model\Product\Media\Config'); + $result = $uploader->save($mediaDirectory->getAbsolutePath($config->getBaseTmpMediaPath())); $this->_eventManager->dispatch('catalog_product_gallery_upload_image_after', array( 'result' => $result, diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Group.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Group.php index a31e87935f213..aada4d365d1d4 100644 --- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Group.php +++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Group.php @@ -35,13 +35,13 @@ public function saveAction() $model->setAttributeGroupName($this->getRequest()->getParam('attribute_group_name')) ->setAttributeSetId($this->getRequest()->getParam('attribute_set_id')); - if( $model->itemExists() ) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError(__('A group with the same name already exists.')); + if ($model->itemExists()) { + $this->messageManager->addError(__('A group with the same name already exists.')); } else { try { $model->save(); } catch (\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError(__('Something went wrong while saving this group.')); + $this->messageManager->addError(__('Something went wrong while saving this group.')); } } } diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Review.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Review.php index f48ec1dbdf4db..dc4f438ecfc02 100644 --- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Review.php +++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Review.php @@ -129,9 +129,8 @@ public function saveAction() { if (($data = $this->getRequest()->getPost()) && ($reviewId = $this->getRequest()->getParam('id'))) { $review = $this->_objectManager->create('Magento\Review\Model\Review')->load($reviewId); - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); if (! $review->getId()) { - $session->addError(__('The review was removed by another user or does not exist.')); + $this->messageManager->addError(__('The review was removed by another user or does not exist.')); } else { try { $review->addData($data)->save(); @@ -159,11 +158,11 @@ public function saveAction() $review->aggregate(); - $session->addSuccess(__('You saved the review.')); + $this->messageManager->addSuccess(__('You saved the review.')); } catch (\Magento\Core\Exception $e) { - $session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e){ - $session->addException($e, __('Something went wrong while saving this review.')); + $this->messageManager->addException($e, __('Something went wrong while saving this review.')); } } @@ -180,14 +179,12 @@ public function saveAction() public function deleteAction() { $reviewId = $this->getRequest()->getParam('id', false); - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); - try { $this->_objectManager->create('Magento\Review\Model\Review')->setId($reviewId) ->aggregate() ->delete(); - $session->addSuccess(__('The review has been deleted.')); + $this->messageManager->addSuccess(__('The review has been deleted.')); if( $this->getRequest()->getParam('ret') == 'pending' ) { $this->getResponse()->setRedirect($this->getUrl('adminhtml/*/pending')); } else { @@ -195,9 +192,9 @@ public function deleteAction() } return; } catch (\Magento\Core\Exception $e) { - $session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e){ - $session->addException($e, __('Something went wrong deleting this review.')); + $this->messageManager->addException($e, __('Something went wrong deleting this review.')); } $this->_redirect('catalog/*/edit/',array('id'=>$reviewId)); @@ -206,23 +203,22 @@ public function deleteAction() public function massDeleteAction() { $reviewsIds = $this->getRequest()->getParam('reviews'); - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); - if(!is_array($reviewsIds)) { - $session->addError(__('Please select review(s).')); + if (!is_array($reviewsIds)) { + $this->messageManager->addError(__('Please select review(s).')); } else { try { foreach ($reviewsIds as $reviewId) { $model = $this->_objectManager->create('Magento\Review\Model\Review')->load($reviewId); $model->delete(); } - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess( + $this->messageManager->addSuccess( __('A total of %1 record(s) have been deleted.', count($reviewsIds)) ); } catch (\Magento\Core\Exception $e) { - $session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e){ - $session->addException($e, __('An error occurred while deleting record(s).')); + $this->messageManager->addException($e, __('An error occurred while deleting record(s).')); } } @@ -232,12 +228,9 @@ public function massDeleteAction() public function massUpdateStatusAction() { $reviewsIds = $this->getRequest()->getParam('reviews'); - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); - - if(!is_array($reviewsIds)) { - $session->addError(__('Please select review(s).')); + if (!is_array($reviewsIds)) { + $this->messageManager->addError(__('Please select review(s).')); } else { - /* @var $session \Magento\Adminhtml\Model\Session */ try { $status = $this->getRequest()->getParam('status'); foreach ($reviewsIds as $reviewId) { @@ -246,13 +239,13 @@ public function massUpdateStatusAction() ->save() ->aggregate(); } - $session->addSuccess( + $this->messageManager->addSuccess( __('A total of %1 record(s) have been updated.', count($reviewsIds)) ); } catch (\Magento\Core\Exception $e) { - $session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $session->addException($e, __('An error occurred while updating the selected review(s).')); + $this->messageManager->addException($e, __('An error occurred while updating the selected review(s).')); } } @@ -262,13 +255,10 @@ public function massUpdateStatusAction() public function massVisibleInAction() { $reviewsIds = $this->getRequest()->getParam('reviews'); - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); - if(!is_array($reviewsIds)) { - $session->addError(__('Please select review(s).')); + if (!is_array($reviewsIds)) { + $this->messageManager->addError(__('Please select review(s).')); } else { - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); - /* @var $session \Magento\Adminhtml\Model\Session */ try { $stores = $this->getRequest()->getParam('stores'); foreach ($reviewsIds as $reviewId) { @@ -276,13 +266,13 @@ public function massVisibleInAction() $model->setSelectStores($stores); $model->save(); } - $session->addSuccess( + $this->messageManager->addSuccess( __('A total of %1 record(s) have been updated.', count($reviewsIds)) ); } catch (\Magento\Core\Exception $e) { - $session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $session->addException($e, __('An error occurred while updating the selected review(s).')); + $this->messageManager->addException($e, __('An error occurred while updating the selected review(s).')); } } @@ -324,7 +314,6 @@ public function jsonProductInfoAction() public function postAction() { $productId = $this->getRequest()->getParam('product_id', false); - $session = $this->_objectManager->get('Magento\Adminhtml\Model\Session'); if ($data = $this->getRequest()->getPost()) { if ($this->_objectManager->get('Magento\Core\Model\StoreManagerInterface')->hasSingleStore()) { @@ -358,7 +347,7 @@ public function postAction() $review->aggregate(); - $session->addSuccess(__('You saved the review.')); + $this->messageManager->addSuccess(__('You saved the review.')); if( $this->getRequest()->getParam('ret') == 'pending' ) { $this->getResponse()->setRedirect($this->getUrl('catalog/*/pending')); } else { @@ -367,9 +356,9 @@ public function postAction() return; } catch (\Magento\Core\Exception $e) { - $session->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $session->addException($e, __('An error occurred while saving review.')); + $this->messageManager->addException($e, __('An error occurred while saving review.')); } } $this->getResponse()->setRedirect($this->getUrl('catalog/*/')); diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Set.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Set.php index 65ca47f0ef2dc..47ff971955093 100644 --- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Set.php +++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Set.php @@ -160,12 +160,12 @@ public function saveAction() $model->initFromSkeleton($this->getRequest()->getParam('skeleton_set')); } $model->save(); - $this->_getSession()->addSuccess(__('You saved the attribute set.')); + $this->messageManager->addSuccess(__('You saved the attribute set.')); } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $hasError = true; } catch (\Exception $e) { - $this->_getSession()->addException($e, + $this->messageManager->addException($e, __('An error occurred while saving the attribute set.')); $hasError = true; } @@ -174,7 +174,7 @@ public function saveAction() if ($this->getRequest()->getPost('return_session_messages_only')) { /** @var $block \Magento\View\Element\Messages */ $block = $this->_objectManager->get('Magento\View\Element\Messages'); - $block->setMessages($this->_getSession()->getMessages(true)); + $block->setMessages($this->messageManager->getMessages(true)); $body = $this->_objectManager->get('Magento\Core\Helper\Data')->jsonEncode(array( 'messages' => $block->getGroupedHtml(), 'error' => $hasError, @@ -191,7 +191,7 @@ public function saveAction() } else { $response = array(); if ($hasError) { - $this->_view->getLayout()->initMessages('Magento\Adminhtml\Model\Session'); + $this->_view->getLayout()->initMessages(); $response['error'] = 1; $response['message'] = $this->_view->getLayout()->getMessagesBlock()->getGroupedHtml(); } else { @@ -228,10 +228,10 @@ public function deleteAction() ->setId($setId) ->delete(); - $this->_getSession()->addSuccess(__('The attribute set has been removed.')); + $this->messageManager->addSuccess(__('The attribute set has been removed.')); $this->getResponse()->setRedirect($this->getUrl('catalog/*/')); } catch (\Exception $e) { - $this->_getSession()->addError(__('An error occurred while deleting this set.')); + $this->messageManager->addError(__('An error occurred while deleting this set.')); $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl($this->getUrl('*'))); } } diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Search.php b/app/code/Magento/Catalog/Controller/Adminhtml/Search.php index 0ff8a401edb91..dd90f010ac24b 100644 --- a/app/code/Magento/Catalog/Controller/Adminhtml/Search.php +++ b/app/code/Magento/Catalog/Controller/Adminhtml/Search.php @@ -82,14 +82,14 @@ public function editAction() if ($id) { $model->load($id); if (! $model->getId()) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError(__('This search no longer exists.')); + $this->messageManager->addError(__('This search no longer exists.')); $this->_redirect('catalog/*'); return; } } // set entered data if was error when we do save - $data = $this->_objectManager->get('Magento\Adminhtml\Model\Session')->getPageData(true); + $data = $this->_objectManager->get('Magento\Backend\Model\Session')->getPageData(true); if (!empty($data)) { $model->addData($data); } @@ -105,8 +105,7 @@ public function editAction() $this->_view->getLayout()->getBlock('adminhtml.catalog.search.edit') ->setData('action', $this->getUrl('catalog/search/save')); - $this - ->_addBreadcrumb($id ? __('Edit Search') : __('New Search'), $id ? __('Edit Search') : __('New Search')); + $this->_addBreadcrumb($id ? __('Edit Search') : __('New Search'), $id ? __('Edit Search') : __('New Search')); $this->_view->renderLayout(); } @@ -148,10 +147,11 @@ public function saveAction() $model->save(); } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $hasError = true; } catch (\Exception $e) { - $this->_getSession()->addException($e, + $this->messageManager->addException( + $e, __('Something went wrong while saving the search query.') ); $hasError = true; @@ -174,16 +174,16 @@ public function deleteAction() $model = $this->_objectManager->create('Magento\CatalogSearch\Model\Query'); $model->setId($id); $model->delete(); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess(__('You deleted the search.')); + $this->messageManager->addSuccess(__('You deleted the search.')); $this->_redirect('catalog/*/'); return; } catch (\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect('catalog/*/edit', array('id' => $this->getRequest()->getParam('id'))); return; } } - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError(__('We can\'t find a search term to delete.')); + $this->messageManager->addError(__('We can\'t find a search term to delete.')); $this->_redirect('catalog/*/'); } @@ -191,21 +191,18 @@ public function massDeleteAction() { $searchIds = $this->getRequest()->getParam('search'); if (!is_array($searchIds)) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError(__('Please select catalog searches.')); + $this->messageManager->addError(__('Please select catalog searches.')); } else { try { foreach ($searchIds as $searchId) { $model = $this->_objectManager->create('Magento\CatalogSearch\Model\Query')->load($searchId); $model->delete(); } - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess( - __('Total of %1 record(s) were deleted', count($searchIds)) - ); + $this->messageManager->addSuccess(__('Total of %1 record(s) were deleted', count($searchIds))); } catch (\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } } - $this->_redirect('catalog/*/index'); } diff --git a/app/code/Magento/Catalog/Controller/Category.php b/app/code/Magento/Catalog/Controller/Category.php index 81ce0199561e7..f5ed0c0d1c9cc 100644 --- a/app/code/Magento/Catalog/Controller/Category.php +++ b/app/code/Magento/Catalog/Controller/Category.php @@ -183,7 +183,7 @@ public function viewAction() ->addBodyClass('category-' . $category->getUrlKey()); } - $this->_view->getLayout()->initMessages(array('Magento\Catalog\Model\Session', 'Magento\Checkout\Model\Session')); + $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); } elseif (!$this->getResponse()->isRedirect()) { $this->_forward('noroute'); diff --git a/app/code/Magento/Catalog/Controller/Product/Compare.php b/app/code/Magento/Catalog/Controller/Product/Compare.php index 3c202c60e6925..13521974c5cb2 100644 --- a/app/code/Magento/Catalog/Controller/Product/Compare.php +++ b/app/code/Magento/Catalog/Controller/Product/Compare.php @@ -181,7 +181,7 @@ public function addAction() if ($product->getId()/* && !$product->isSuper()*/) { $this->_catalogProductCompareList->addProduct($product); $productName = $this->_objectManager->get('Magento\Escaper')->escapeHtml($product->getName()); - $this->_catalogSession->addSuccess( + $this->messageManager->addSuccess( __('You added product %1 to the comparison list.', $productName) ); $this->_eventManager->dispatch('catalog_product_compare_add_product', array('product'=>$product)); @@ -223,7 +223,7 @@ public function removeAction() if ($item->getId()) { $item->delete(); $productName = $this->_objectManager->get('Magento\Escaper')->escapeHtml($product->getName()); - $this->_catalogSession->addSuccess( + $this->messageManager->addSuccess( __('You removed product %1 from the comparison list.', $productName) ); $this->_eventManager->dispatch('catalog_product_compare_remove_product', array('product' => $item)); @@ -255,12 +255,12 @@ public function clearAction() try { $items->clear(); - $this->_catalogSession->addSuccess(__('You cleared the comparison list.')); + $this->messageManager->addSuccess(__('You cleared the comparison list.')); $this->_objectManager->get('Magento\Catalog\Helper\Product\Compare')->calculate(); } catch (\Magento\Core\Exception $e) { - $this->_catalogSession->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_catalogSession->addException($e, __('Something went wrong clearing the comparison list.')); + $this->messageManager->addException($e, __('Something went wrong clearing the comparison list.')); } $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl()); diff --git a/app/code/Magento/Catalog/Helper/Data.php b/app/code/Magento/Catalog/Helper/Data.php index 68ee6885eb3eb..84417376e5905 100644 --- a/app/code/Magento/Catalog/Helper/Data.php +++ b/app/code/Magento/Catalog/Helper/Data.php @@ -24,16 +24,11 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ +namespace Magento\Catalog\Helper; /** * Catalog data helper - * - * @category Magento - * @package Magento_Catalog - * @author Magento Core Team */ -namespace Magento\Catalog\Helper; - class Data extends \Magento\App\Helper\AbstractHelper { const PRICE_SCOPE_GLOBAL = 0; @@ -73,28 +68,28 @@ class Data extends \Magento\App\Helper\AbstractHelper * * @var int */ - protected $_storeId = null; + protected $_storeId; /** * Core registry * * @var \Magento\Core\Model\Registry */ - protected $_coreRegistry = null; + protected $_coreRegistry; /** * Catalog product * * @var \Magento\Catalog\Helper\Product */ - protected $_catalogProduct = null; + protected $_catalogProduct; /** * Catalog category * * @var \Magento\Catalog\Helper\Category */ - protected $_catalogCategory = null; + protected $_catalogCategory; /** * @var \Magento\Stdlib\String diff --git a/app/code/Magento/Catalog/Helper/Product/ConfigurationPool.php b/app/code/Magento/Catalog/Helper/Product/ConfigurationPool.php index 07f1d384e9e3d..8053288e32d13 100644 --- a/app/code/Magento/Catalog/Helper/Product/ConfigurationPool.php +++ b/app/code/Magento/Catalog/Helper/Product/ConfigurationPool.php @@ -38,9 +38,8 @@ class ConfigurationPool /** * @param \Magento\ObjectManager $objectManager */ - public function __construct( - \Magento\ObjectManager $objectManager - ) { + public function __construct(\Magento\ObjectManager $objectManager) + { $this->_objectManager = $objectManager; } diff --git a/app/code/Magento/Catalog/Helper/Product/Options.php b/app/code/Magento/Catalog/Helper/Product/Options.php index 0520e2ebe7203..eb3a35c3c6a69 100644 --- a/app/code/Magento/Catalog/Helper/Product/Options.php +++ b/app/code/Magento/Catalog/Helper/Product/Options.php @@ -37,9 +37,9 @@ class Options extends \Magento\App\Helper\AbstractHelper { /** - * @var \Magento\Filesystem + * @var \Magento\Filesystem\Directory\ReadInterface */ - protected $_filesystem; + protected $directory; /** * @param \Magento\App\Helper\Context $context @@ -48,7 +48,7 @@ class Options extends \Magento\App\Helper\AbstractHelper public function __construct(\Magento\App\Helper\Context $context, \Magento\Filesystem $filesystem) { parent::__construct($context); - $this->_filesystem = $filesystem; + $this->directory = $filesystem->getDirectoryRead(\Magento\Filesystem::ROOT); } /** @@ -76,7 +76,7 @@ public function downloadFileOption($response, $filePath, $info) ->clearBody(); $response->sendHeaders(); - echo $this->_filesystem->read($filePath); + echo $this->directory->readFile($this->directory->getRelativePath($filePath)); } catch (\Exception $e) { return false; } diff --git a/app/code/Magento/Catalog/Helper/Product/View.php b/app/code/Magento/Catalog/Helper/Product/View.php index 76a2a24f779b1..d2e62c53b90a3 100644 --- a/app/code/Magento/Catalog/Helper/Product/View.php +++ b/app/code/Magento/Catalog/Helper/Product/View.php @@ -40,11 +40,11 @@ class View extends \Magento\App\Helper\AbstractHelper public $ERR_BAD_CONTROLLER_INTERFACE = 2; /** - * List of catalog product session message models name + * List of catalog product session message groups * * @var array */ - protected $_messageModels; + protected $messageGroups; /** * Core registry @@ -86,6 +86,11 @@ class View extends \Magento\App\Helper\AbstractHelper */ protected $_view; + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * @param \Magento\App\Helper\Context $context * @param \Magento\Catalog\Model\Session $catalogSession @@ -94,7 +99,8 @@ class View extends \Magento\App\Helper\AbstractHelper * @param \Magento\Theme\Helper\Layout $pageLayout * @param \Magento\Core\Model\Registry $coreRegistry * @param \Magento\App\ViewInterface $view - * @param array $messageModels + * @param \Magento\Message\ManagerInterface $messageManager + * @param array $messageGroups */ public function __construct( \Magento\App\Helper\Context $context, @@ -104,7 +110,8 @@ public function __construct( \Magento\Theme\Helper\Layout $pageLayout, \Magento\Core\Model\Registry $coreRegistry, \Magento\App\ViewInterface $view, - array $messageModels = array() + \Magento\Message\ManagerInterface $messageManager, + array $messageGroups = array() ) { $this->_catalogSession = $catalogSession; $this->_catalogDesign = $catalogDesign; @@ -112,8 +119,9 @@ public function __construct( $this->_pageLayout = $pageLayout; $this->_coreRegistry = $coreRegistry; $this->_view = $view; + $this->messageGroups = $messageGroups; + $this->messageManager = $messageManager; parent::__construct($context); - $this->_messageModels = $messageModels; } /** @@ -216,7 +224,7 @@ public function prepareAndRender($productId, $controller, $params = null) if ($params->getSpecifyOptions()) { $notice = $product->getTypeInstance()->getSpecifyOptionMessage(); - $this->_catalogSession->addNotice($notice); + $this->messageManager->addNotice($notice); } $this->_catalogSession->setLastViewedProductId($product->getId()); @@ -224,9 +232,7 @@ public function prepareAndRender($productId, $controller, $params = null) $this->initProductLayout($product, $controller); if ($controller instanceof \Magento\Catalog\Controller\Product\View\ViewInterface) { - foreach ($this->_messageModels as $sessionModel) { - $this->_view->getLayout()->initMessages($sessionModel); - } + $this->_view->getLayout()->initMessages($this->messageGroups); } else { throw new \Magento\Core\Exception( __('Bad controller interface for showing product'), diff --git a/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Image.php b/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Image.php index 222c0136f2e3e..1aaa64a0da5be 100644 --- a/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Image.php +++ b/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Image.php @@ -42,11 +42,11 @@ class Image extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend protected $_uploaderFactory; /** - * Dir model + * Filesystem facade * - * @var \Magento\App\Dir + * @var \Magento\Filesystem */ - protected $_dir; + protected $_filesystem; /** * File Uploader factory @@ -59,15 +59,15 @@ class Image extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend * Construct * * @param \Magento\Logger $logger - * @param \Magento\App\Dir $dir + * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\File\UploaderFactory $fileUploaderFactory */ public function __construct( \Magento\Logger $logger, - \Magento\App\Dir $dir, + \Magento\Filesystem $filesystem, \Magento\Core\Model\File\UploaderFactory $fileUploaderFactory ) { - $this->_dir = $dir; + $this->_filesystem = $filesystem; $this->_fileUploaderFactory = $fileUploaderFactory; parent::__construct($logger); } @@ -94,7 +94,7 @@ public function afterSave($object) return $this; } - $path = $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DS . 'catalog' . DS . 'category' . DS; + $path = $this->_filesystem->getDirectoryRead(\Magento\Filesystem::MEDIA)->getAbsolutePath('catalog/category/'); try { /** @var $uploader \Magento\Core\Model\File\Uploader */ diff --git a/app/code/Magento/Catalog/Model/Product.php b/app/code/Magento/Catalog/Model/Product.php index 5fbcd68df723f..0d317aba9252b 100644 --- a/app/code/Magento/Catalog/Model/Product.php +++ b/app/code/Magento/Catalog/Model/Product.php @@ -205,6 +205,18 @@ class Product extends \Magento\Catalog\Model\AbstractModel */ protected $_itemOptionFactory; + /** + * @var \Magento\App\State + */ + protected $_appState; + + /** + * Filesystem facade + * + * @var \Magento\Filesystem + */ + protected $_filesystem; + /** * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry @@ -227,6 +239,7 @@ class Product extends \Magento\Catalog\Model\AbstractModel * @param Resource\Product $resource * @param Resource\Product\Collection $resourceCollection * @param \Magento\Data\CollectionFactory $collectionFactory + * @param \Magento\Filesystem $filesystem * @param array $data * * @SuppressWarnings(PHPMD.ExcessiveParameterList) @@ -253,6 +266,7 @@ public function __construct( \Magento\Catalog\Model\Resource\Product $resource, \Magento\Catalog\Model\Resource\Product\Collection $resourceCollection, \Magento\Data\CollectionFactory $collectionFactory, + \Magento\Filesystem $filesystem, array $data = array() ) { $this->_itemOptionFactory = $itemOptionFactory; @@ -271,6 +285,7 @@ public function __construct( $this->_collectionFactory = $collectionFactory; $this->_urlModel = $url; $this->_linkInstance = $productLink; + $this->_filesystem = $filesystem; parent::__construct($context, $registry, $storeManager, $resource, $resourceCollection, $data); } @@ -1101,6 +1116,7 @@ public function getMediaAttributes() */ public function getMediaGalleryImages() { + $directory = $this->_filesystem->getDirectoryRead(\Magento\Filesystem::MEDIA); if(!$this->hasData('media_gallery_images') && is_array($this->getMediaGallery('images'))) { $images = $this->_collectionFactory->create(); foreach ($this->getMediaGallery('images') as $image) { @@ -1109,7 +1125,7 @@ public function getMediaGalleryImages() } $image['url'] = $this->getMediaConfig()->getMediaUrl($image['file']); $image['id'] = isset($image['value_id']) ? $image['value_id'] : null; - $image['path'] = $this->getMediaConfig()->getMediaPath($image['file']); + $image['path'] = $directory->getAbsolutePath($this->getMediaConfig()->getMediaPath($image['file'])); $images->addItem(new \Magento\Object($image)); } $this->setData('media_gallery_images', $images); diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php index 2a3f327cfd734..37aade372f527 100644 --- a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php +++ b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php @@ -50,19 +50,9 @@ class Media extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend protected $_mediaConfig; /** - * @var \Magento\Filesystem $filesystem + * @var \Magento\Filesystem\Directory\WriteInterface */ - protected $_filesystem; - - /** - * @var string - */ - protected $_baseMediaPath; - - /** - * @var string - */ - protected $_baseTmpMediaPath; + protected $_mediaDirectory; /** * Core data @@ -101,7 +91,6 @@ class Media extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend * @param \Magento\Core\Helper\File\Storage\Database $fileStorageDb * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Catalog\Model\Product\Media\Config $mediaConfig - * @param \Magento\App\Dir $dirs * @param \Magento\Filesystem $filesystem * @param \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Media $resourceProductAttribute */ @@ -112,7 +101,6 @@ public function __construct( \Magento\Core\Helper\File\Storage\Database $fileStorageDb, \Magento\Core\Helper\Data $coreData, \Magento\Catalog\Model\Product\Media\Config $mediaConfig, - \Magento\App\Dir $dirs, \Magento\Filesystem $filesystem, \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Media $resourceProductAttribute ) { @@ -122,13 +110,10 @@ public function __construct( $this->_coreData = $coreData; $this->_resourceModel = $resourceProductAttribute; $this->_mediaConfig = $mediaConfig; - $this->_filesystem = $filesystem; - $this->_filesystem->setIsAllowCreateDirectories(true); - $this->_filesystem->setWorkingDirectory($dirs->getDir(\Magento\App\Dir::MEDIA)); - $this->_baseMediaPath = $this->_mediaConfig->getBaseMediaPath(); - $this->_baseTmpMediaPath = $this->_mediaConfig->getBaseTmpMediaPath(); - $this->_filesystem->ensureDirectoryExists($this->_baseMediaPath); - $this->_filesystem->ensureDirectoryExists($this->_baseTmpMediaPath); + $this->_mediaDirectory = $filesystem->getDirectoryWrite(\Magento\Filesystem::MEDIA); + + $this->_mediaDirectory->create($this->_mediaConfig->getBaseMediaPath()); + $this->_mediaDirectory->create($this->_mediaConfig->getBaseTmpMediaPath()); parent::__construct($logger); } @@ -361,11 +346,13 @@ public function afterSave($object) * @param boolean $move if true, it will move source file * @param boolean $exclude mark image as disabled in product page view * @return string + * @throws \Magento\Core\Exception */ public function addImage(\Magento\Catalog\Model\Product $product, $file, $mediaAttribute = null, $move = false, $exclude = true ) { - if (!$this->_filesystem->isFile($file, $this->_baseTmpMediaPath)) { + $file = $this->_mediaDirectory->getRelativePath($file); + if (!$this->_mediaDirectory->isFile($file)) { throw new \Magento\Core\Exception(__('The image does not exist.')); } @@ -377,7 +364,7 @@ public function addImage(\Magento\Catalog\Model\Product $product, $file, $fileName = \Magento\Core\Model\File\Uploader::getCorrectFileName($pathinfo['basename']); $dispretionPath = \Magento\Core\Model\File\Uploader::getDispretionPath($fileName); - $fileName = $dispretionPath . DS . $fileName; + $fileName = $dispretionPath . '/' . $fileName; $fileName = $this->_getNotDuplicatedFilename($fileName, $dispretionPath); @@ -387,15 +374,15 @@ public function addImage(\Magento\Catalog\Model\Product $product, $file, /** @var $storageHelper \Magento\Core\Helper\File\Storage\Database */ $storageHelper = $this->_fileStorageDb; if ($move) { - $this->_filesystem->rename($file, $destinationFile, $this->_baseTmpMediaPath); + $this->_mediaDirectory->renameFile($file, $destinationFile); //If this is used, filesystem should be configured properly $storageHelper->saveFile($this->_mediaConfig->getTmpMediaShortUrl($fileName)); } else { - $this->_filesystem->copy($file, $destinationFile, $this->_baseTmpMediaPath); + $this->_mediaDirectory->copyFile($file, $destinationFile); $storageHelper->saveFile($this->_mediaConfig->getTmpMediaShortUrl($fileName)); - $this->_filesystem->changePermissions($destinationFile, 0777, false, $this->_baseTmpMediaPath); + $this->_mediaDirectory->changePermissions($destinationFile, 0777); } } catch (\Exception $e) { throw new \Magento\Core\Exception( @@ -403,7 +390,7 @@ public function addImage(\Magento\Catalog\Model\Product $product, $file, ); } - $fileName = str_replace(DS, '/', $fileName); + $fileName = str_replace('\\', '/', $fileName); $attrCode = $this->getAttribute()->getAttributeCode(); $mediaGalleryData = $product->getData($attrCode); @@ -645,18 +632,16 @@ protected function _moveImageFromTmp($file) $this->_mediaConfig->getMediaShortUrl($destinationFile) ); - $this->_filesystem->delete($this->_mediaConfig->getTmpMediaPath($file), $this->_baseTmpMediaPath); - $this->_filesystem->delete($this->_mediaConfig->getMediaPath($destinationFile), $this->_baseMediaPath); + $this->_mediaDirectory->delete($this->_mediaConfig->getTmpMediaPath($file)); + $this->_mediaDirectory->delete($this->_mediaConfig->getMediaPath($destinationFile)); } else { - $this->_filesystem->rename( + $this->_mediaDirectory->renameFile( $this->_mediaConfig->getTmpMediaPath($file), - $this->_mediaConfig->getMediaPath($destinationFile), - $this->_baseTmpMediaPath, - $this->_baseMediaPath + $this->_mediaConfig->getMediaPath($destinationFile) ); } - return str_replace(DS, '/', $destinationFile); + return str_replace('\\', '/', $destinationFile); } /** @@ -668,14 +653,12 @@ protected function _moveImageFromTmp($file) protected function _getUniqueFileName($file) { if ($this->_fileStorageDb->checkDbUsage()) { - $destFile = $this->_fileStorageDb - ->getUniqueFilename( - $this->_mediaConfig->getBaseMediaUrlAddition(), - $file - ); + $destFile = $this->_fileStorageDb->getUniqueFilename($this->_mediaConfig->getBaseMediaUrlAddition(), $file); } else { - $destFile = dirname($file) . DS - . \Magento\Core\Model\File\Uploader::getNewFileName($this->_mediaConfig->getMediaPath($file)); + $destFile = dirname($file) . '/' + . \Magento\Core\Model\File\Uploader::getNewFileName( + $this->_mediaDirectory->getAbsolutePath($this->_mediaConfig->getMediaPath($file)) + ); } return $destFile; @@ -692,25 +675,24 @@ protected function _copyImage($file) try { $destinationFile = $this->_getUniqueFileName($file); - if (!$this->_filesystem->isFile($this->_mediaConfig->getMediaPath($file), $this->_baseMediaPath)) { + if (!$this->_mediaDirectory->isFile($this->_mediaConfig->getMediaPath($file))) { throw new \Exception(); } if ($this->_fileStorageDb->checkDbUsage()) { - $this->_fileStorageDb - ->copyFile($this->_mediaConfig->getMediaShortUrl($file), - $this->_mediaConfig->getMediaShortUrl($destinationFile)); - - $this->_filesystem->delete($this->_mediaConfig->getMediaPath($destinationFile), $this->_baseMediaPath); + $this->_fileStorageDb->copyFile( + $this->_mediaDirectory->getAbsolutePath($this->_mediaConfig->getMediaShortUrl($file)), + $this->_mediaConfig->getMediaShortUrl($destinationFile) + ); + $this->_mediaDirectory->delete($this->_mediaConfig->getMediaPath($destinationFile)); } else { - $this->_filesystem->copy( + $this->_mediaDirectory->copyFile( $this->_mediaConfig->getMediaPath($file), - $this->_mediaConfig->getMediaPath($destinationFile), - $this->_baseMediaPath + $this->_mediaConfig->getMediaPath($destinationFile) ); } - return str_replace(DS, '/', $destinationFile); + return str_replace('\\', '/', $destinationFile); } catch (\Exception $e) { $file = $this->_mediaConfig->getMediaPath($file); throw new \Magento\Core\Exception( @@ -747,9 +729,9 @@ public function duplicate($object) */ protected function _getNotDuplicatedFilename($fileName, $dispretionPath) { - $fileMediaName = $dispretionPath . DS + $fileMediaName = $dispretionPath . '/' . \Magento\Core\Model\File\Uploader::getNewFileName($this->_mediaConfig->getMediaPath($fileName)); - $fileTmpMediaName = $dispretionPath . DS + $fileTmpMediaName = $dispretionPath . '/' . \Magento\Core\Model\File\Uploader::getNewFileName($this->_mediaConfig->getTmpMediaPath($fileName)); if ($fileMediaName != $fileTmpMediaName) { diff --git a/app/code/Magento/Catalog/Model/Product/Image.php b/app/code/Magento/Catalog/Model/Product/Image.php index 672b074bf3594..4f3c7bf86c2ec 100644 --- a/app/code/Magento/Catalog/Model/Product/Image.php +++ b/app/code/Magento/Catalog/Model/Product/Image.php @@ -33,6 +33,8 @@ */ namespace Magento\Catalog\Model\Product; +use Magento\Core\Model\Store; + class Image extends \Magento\Core\Model\AbstractModel { protected $_width; @@ -59,9 +61,9 @@ class Image extends \Magento\Core\Model\AbstractModel protected $_watermarkImageOpacity = 70; /** - * @var \Magento\Filesystem $filesystem + * @var \Magento\Filesystem\Directory\WriteInterface */ - protected $_filesystem; + protected $_mediaDirectory; /** * @var \Magento\Image\Factory @@ -99,13 +101,6 @@ class Image extends \Magento\Core\Model\AbstractModel */ protected $_catalogProductMediaConfig; - /** - * Dir - * - * @var \Magento\App\Dir - */ - protected $_dir; - /** * Store manager * @@ -117,7 +112,6 @@ class Image extends \Magento\Core\Model\AbstractModel * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\App\Dir $dir * @param \Magento\Catalog\Model\Product\Media\Config $catalogProductMediaConfig * @param \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase * @param \Magento\Filesystem $filesystem @@ -133,7 +127,6 @@ public function __construct( \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\App\Dir $dir, \Magento\Catalog\Model\Product\Media\Config $catalogProductMediaConfig, \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase, \Magento\Filesystem $filesystem, @@ -146,16 +139,11 @@ public function __construct( array $data = array() ) { $this->_storeManager = $storeManager; - $this->_dir = $dir; $this->_catalogProductMediaConfig = $catalogProductMediaConfig; $this->_coreFileStorageDatabase = $coreFileStorageDatabase; parent::__construct($context, $registry, $resource, $resourceCollection, $data); - $baseDir = $this->_catalogProductMediaConfig->getBaseMediaPath(); - $this->_filesystem = $filesystem; - $this->_filesystem->setIsAllowCreateDirectories(true); - $this->_filesystem->ensureDirectoryExists($baseDir); - $this->_filesystem->setIsAllowCreateDirectories(false); - $this->_filesystem->setWorkingDirectory($baseDir); + $this->_mediaDirectory = $filesystem->getDirectoryWrite(\Magento\Filesystem::MEDIA); + $this->_mediaDirectory->create($this->_catalogProductMediaConfig->getBaseMediaPath()); $this->_imageFactory = $imageFactory; $this->_viewUrl = $viewUrl; $this->_viewFileSystem = $viewFileSystem; @@ -319,11 +307,11 @@ protected function _getNeedMemoryForFile($file = null) return 0; } - if (!$this->_filesystem->isFile($file)) { + if (!$this->_mediaDirectory->isExist($file)) { return 0; } - $imageInfo = getimagesize($file); + $imageInfo = getimagesize($this->_mediaDirectory->getAbsolutePath($file)); if (!isset($imageInfo[0]) || !isset($imageInfo[1])) { return 0; @@ -400,7 +388,7 @@ public function setBaseFile($file) $baseFile = $baseDir . $file; - if (!$file || !$this->_filesystem->isFile($baseFile)) { + if (!$file || !$this->_mediaDirectory->isFile($baseFile)) { throw new \Exception(__('We can\'t find the image file.')); } @@ -470,7 +458,8 @@ public function setImageProcessor($processor) public function getImageProcessor() { if (!$this->_processor) { - $this->_processor = $this->_imageFactory->create($this->getBaseFile()); + $filename = $this->getBaseFile() ? $this->_mediaDirectory->getAbsolutePath($this->getBaseFile()) : null; + $this->_processor = $this->_imageFactory->create($filename); } $this->_processor->keepAspectRatio($this->_keepAspectRatio); $this->_processor->keepFrame($this->_keepFrame); @@ -579,7 +568,7 @@ public function saveFile() if ($this->_isBaseFilePlaceholder && $this->_newFile === true) { return $this; } - $filename = $this->getNewFile(); + $filename = $this->_mediaDirectory->getAbsolutePath($this->getNewFile()); $this->getImageProcessor()->save($filename); $this->_coreFileStorageDatabase->saveFile($filename); return $this; @@ -595,9 +584,7 @@ public function getUrl() "Magento_Catalog::images/product/placeholder/{$this->getDestinationSubdir()}.jpg" ); } else { - $baseDir = $this->_dir->getDir(\Magento\App\Dir::MEDIA); - $path = str_replace($baseDir . DS, "", $this->_newFile); - $url = $this->_storeManager->getStore()->getBaseUrl(\Magento\Core\Model\Store::URL_TYPE_MEDIA) . str_replace(DS, '/', $path);; + $url = $this->_storeManager->getStore()->getBaseUrl(Store::URL_TYPE_MEDIA) . $this->_newFile; } return $url; @@ -662,20 +649,23 @@ protected function _getWatermarkFilePath() if (!$file = $this->getWatermarkFile()) { return $filePath; } - $baseDir = $this->_catalogProductMediaConfig->getBaseMediaPath(); - if ($this->_fileExists($baseDir . '/watermark/stores/' . $this->_storeManager->getStore()->getId() . $file)) { - $filePath = $baseDir . '/watermark/stores/' . $this->_storeManager->getStore()->getId() . $file; - } elseif ($this->_fileExists($baseDir . '/watermark/websites/' . $this->_storeManager->getWebsite()->getId() . $file)) { - $filePath = $baseDir . '/watermark/websites/' . $this->_storeManager->getWebsite()->getId() . $file; - } elseif ($this->_fileExists($baseDir . '/watermark/default/' . $file)) { - $filePath = $baseDir . '/watermark/default/' . $file; - } elseif ($this->_fileExists($baseDir . '/watermark/' . $file)) { - $filePath = $baseDir . '/watermark/' . $file; - } else { + $candidates = array( + $baseDir . '/watermark/stores/' . $this->_storeManager->getStore()->getId() . $file, + $baseDir . '/watermark/websites/' . $this->_storeManager->getWebsite()->getId() . $file, + $baseDir . '/watermark/default/' . $file, + $baseDir . '/watermark/' . $file + ); + foreach ($candidates as $candidate) { + if ($this->_mediaDirectory->isExist($candidate)) { + $filePath = $this->_mediaDirectory->getAbsolutePath($candidate); + break; + } + } + if (!$filePath) { $viewFile = $this->_viewFileSystem->getViewFile($file); - if ($this->_filesystem->isFile($viewFile)) { + if ($this->_mediaDirectory->isFile($this->_mediaDirectory->getRelativePath($viewFile))) { $filePath = $viewFile; } } @@ -788,11 +778,10 @@ public function getWatermarkHeight() public function clearCache() { - $directory = $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DS . 'catalog' . DS . 'product' - . DS . 'cache' . DS; - $this->_filesystem->delete($directory); + $directory = $this->_catalogProductMediaConfig->getBaseMediaPath() . '/cache'; + $this->_mediaDirectory->delete($directory); - $this->_coreFileStorageDatabase->deleteFolder($directory); + $this->_coreFileStorageDatabase->deleteFolder($this->_mediaDirectory->getAbsolutePath($directory)); } /** @@ -804,10 +793,12 @@ public function clearCache() */ protected function _fileExists($filename) { - if ($this->_filesystem->isFile($filename)) { + if ($this->_mediaDirectory->isFile($filename)) { return true; } else { - return $this->_coreFileStorageDatabase->saveFileToFilesystem($filename); + return $this->_coreFileStorageDatabase->saveFileToFilesystem( + $this->_mediaDirectory->getAbsolutePath($filename) + ); } } } diff --git a/app/code/Magento/Catalog/Model/Product/Media/Config.php b/app/code/Magento/Catalog/Model/Product/Media/Config.php index 8f5690c6c867b..f25b60b1dbf3e 100644 --- a/app/code/Magento/Catalog/Model/Product/Media/Config.php +++ b/app/code/Magento/Catalog/Model/Product/Media/Config.php @@ -36,32 +36,18 @@ class Config implements ConfigInterface { - /** - * Dir - * - * @var \Magento\App\Dir - */ - protected $_dir; - /** * Store manager * * @var \Magento\Core\Model\StoreManagerInterface */ - protected $_storeManager; + protected $storeManager; /** - * Construct - * * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\App\Dir $dir */ - public function __construct( - \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\App\Dir $dir - ) { - $this->_storeManager = $storeManager; - $this->_dir = $dir; + public function __construct(\Magento\Core\Model\StoreManagerInterface $storeManager) { + $this->storeManager = $storeManager; } /** @@ -72,7 +58,7 @@ public function __construct( */ public function getBaseMediaPathAddition() { - return 'catalog' . DIRECTORY_SEPARATOR . 'product'; + return 'catalog/product'; } /** @@ -87,135 +73,107 @@ public function getBaseMediaUrlAddition() } /** - * Filesystem directory path of temporary product images - * relatively to media folder - * * @return string */ - public function getBaseTmpMediaPathAddition() + public function getBaseMediaPath() { - return 'tmp' . DIRECTORY_SEPARATOR . $this->getBaseMediaPathAddition(); + return 'catalog/product'; } /** - * Web-based directory path of temporary product images - * relatively to media folder - * * @return string */ - public function getBaseTmpMediaUrlAddition() - { - return 'tmp/' . $this->getBaseMediaUrlAddition(); - } - - public function getBaseMediaPath() - { - return $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DIRECTORY_SEPARATOR - . 'catalog' . DIRECTORY_SEPARATOR . 'product'; - } - public function getBaseMediaUrl() { - return $this->_storeManager->getStore() + return $this->storeManager->getStore() ->getBaseUrl(\Magento\Core\Model\Store::URL_TYPE_MEDIA) . 'catalog/product'; } + /** + * Filesystem directory path of temporary product images + * relatively to media folder + * + * @return string + */ public function getBaseTmpMediaPath() { - return $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DIRECTORY_SEPARATOR - . $this->getBaseTmpMediaPathAddition(); + return 'tmp/' . $this->getBaseMediaPathAddition(); } + /** + * @return string + */ public function getBaseTmpMediaUrl() { - return $this->_storeManager->getStore() - ->getBaseUrl(\Magento\Core\Model\Store::URL_TYPE_MEDIA) . $this->getBaseTmpMediaUrlAddition(); + return $this->storeManager->getStore() + ->getBaseUrl(\Magento\Core\Model\Store::URL_TYPE_MEDIA) . 'tmp/' . $this->getBaseMediaUrlAddition(); } + /** + * @param string $file + * @return string + */ public function getMediaUrl($file) { - $file = $this->_prepareFileForUrl($file); - - if(substr($file, 0, 1) == '/') { - return $this->getBaseMediaUrl() . $file; - } - - return $this->getBaseMediaUrl() . '/' . $file; + return $this->getBaseMediaUrl() . '/' . $this->_prepareFile($file); } + /** + * @param string $file + * @return string + */ public function getMediaPath($file) { - $file = $this->_prepareFileForPath($file); - - if(substr($file, 0, 1) == DIRECTORY_SEPARATOR) { - return $this->getBaseMediaPath() . DIRECTORY_SEPARATOR . substr($file, 1); - } - - return $this->getBaseMediaPath() . DIRECTORY_SEPARATOR . $file; + return $this->getBaseMediaPath() . '/' . $this->_prepareFile($file); } + /** + * @param $file + * @return string + */ public function getTmpMediaUrl($file) { - $file = $this->_prepareFileForUrl($file); - - if(substr($file, 0, 1) == '/') { - $file = substr($file, 1); - } - - return $this->getBaseTmpMediaUrl() . '/' . $file; + return $this->getBaseTmpMediaUrl() . '/' . $this->_prepareFile($file); } /** * Part of URL of temporary product images * relatively to media folder * + * @param string $file * @return string */ public function getTmpMediaShortUrl($file) { - $file = $this->_prepareFileForUrl($file); - - if(substr($file, 0, 1) == '/') { - $file = substr($file, 1); - } - - return $this->getBaseTmpMediaUrlAddition() . '/' . $file; + return 'tmp/' . $this->getBaseMediaUrlAddition() . '/' . $this->_prepareFile($file); } /** * Part of URL of product images relatively to media folder * + * @param string $file * @return string */ public function getMediaShortUrl($file) { - $file = $this->_prepareFileForUrl($file); - - if(substr($file, 0, 1) == '/') { - $file = substr($file, 1); - } - - return $this->getBaseMediaUrlAddition() . '/' . $file; + return $this->getBaseMediaUrlAddition() . '/' . $this->_prepareFile($file); } + /** + * @param $file + * @return string + */ public function getTmpMediaPath($file) { - $file = $this->_prepareFileForPath($file); - - if(substr($file, 0, 1) == DIRECTORY_SEPARATOR) { - return $this->getBaseTmpMediaPath() . DIRECTORY_SEPARATOR . substr($file, 1); - } - - return $this->getBaseTmpMediaPath() . DIRECTORY_SEPARATOR . $file; - } - - protected function _prepareFileForUrl($file) - { - return str_replace(DIRECTORY_SEPARATOR, '/', $file); + return $this->getBaseTmpMediaPath() . '/' . $this->_prepareFile($file); } - protected function _prepareFileForPath($file) + /** + * @param $file + * @return string + */ + protected function _prepareFile($file) { - return str_replace('/', DIRECTORY_SEPARATOR, $file); + return ltrim(str_replace('\\', '/', $file), '/'); } } diff --git a/app/code/Magento/Catalog/Model/Product/Option/Type/File.php b/app/code/Magento/Catalog/Model/Product/Option/Type/File.php index c9fcc3e8d550c..7201ee094e130 100644 --- a/app/code/Magento/Catalog/Model/Product/Option/Type/File.php +++ b/app/code/Magento/Catalog/Model/Product/Option/Type/File.php @@ -51,6 +51,37 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType */ protected $_filesystem; + /** + * @var \Magento\Filesystem\Directory\ReadInterface + */ + protected $_rootDirectory; + + /** + * @var \Magento\Filesystem\Directory\WriteInterface + */ + protected $_mediaDirectory; + + /** + * Relative path for main destination folder + * + * @var string + */ + protected $_path = '/custom_options'; + + /** + * Relative path for quote folder + * + * @var string + */ + protected $_quotePath = '/custom_options/quote'; + + /** + * Relative path for order folder + * + * @var string + */ + protected $_orderPath = '/custom_options/order'; + /** * @var \Magento\File\Size */ @@ -68,13 +99,6 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType */ protected $_escaper; - /** - * Dir - * - * @var \Magento\App\Dir - */ - protected $_dir; - /** * Url * @@ -94,7 +118,6 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Sales\Model\Quote\Item\OptionFactory $itemOptionFactory * @param \Magento\UrlInterface $url - * @param \Magento\App\Dir $dir * @param \Magento\Escaper $escaper * @param \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase * @param \Magento\Filesystem $filesystem @@ -106,7 +129,6 @@ public function __construct( \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Sales\Model\Quote\Item\OptionFactory $itemOptionFactory, \Magento\UrlInterface $url, - \Magento\App\Dir $dir, \Magento\Escaper $escaper, \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase, \Magento\Filesystem $filesystem, @@ -115,10 +137,11 @@ public function __construct( ) { $this->_itemOptionFactory = $itemOptionFactory; $this->_url = $url; - $this->_dir = $dir; $this->_escaper = $escaper; $this->_coreFileStorageDatabase = $coreFileStorageDatabase; $this->_filesystem = $filesystem; + $this->_rootDirectory = $this->_filesystem->getDirectoryRead(\Magento\Filesystem::ROOT); + $this->_mediaDirectory = $this->_filesystem->getDirectoryWrite(\Magento\Filesystem::MEDIA); $this->_fileSize = $fileSize; $this->_data = $data; parent::__construct($checkoutSession, $coreStoreConfig, $data); @@ -348,10 +371,11 @@ protected function _validateUploadedFile() $dispersion = \Magento\Core\Model\File\Uploader::getDispretionPath($fileName); $filePath = $dispersion; - $dirName = dirname($fileInfo['tmp_name']); - $fileHash = md5($this->_filesystem->read($fileInfo['tmp_name'], $dirName)); - $filePath .= DS . $fileHash . '.' . $extension; - $fileFullPath = $this->getQuoteTargetDir() . $filePath; + + $tmpDirectory = $this->_filesystem->getDirectoryRead(\Magento\Filesystem::SYS_TMP); + $fileHash = md5($tmpDirectory->readFile($tmpDirectory->getRelativePath($fileInfo['tmp_name']))); + $filePath .= '/' . $fileHash . '.' . $extension; + $fileFullPath = $this->_mediaDirectory->getAbsolutePath($this->_quotePath . $filePath); $upload->addFilter('Rename', array( 'target' => $fileFullPath, @@ -368,19 +392,20 @@ protected function _validateUploadedFile() $_width = 0; $_height = 0; - if ($this->_filesystem->isReadable($fileInfo['tmp_name'], $dirName)) { + + if ($tmpDirectory->isReadable($tmpDirectory->getRelativePath($fileInfo['tmp_name']))) { $_imageSize = getimagesize($fileInfo['tmp_name']); if ($_imageSize) { $_width = $_imageSize[0]; $_height = $_imageSize[1]; } } - + $uri = $this->_filesystem->getUri(\Magento\Filesystem::MEDIA); $this->setUserValue(array( 'type' => $fileInfo['type'], 'title' => $fileInfo['name'], - 'quote_path' => $this->getQuoteTargetDir(true) . $filePath, - 'order_path' => $this->getOrderTargetDir(true) . $filePath, + 'quote_path' => $uri . $this->_quotePath . $filePath, + 'order_path' => $uri . $this->_orderPath . $filePath, 'fullpath' => $fileFullPath, 'size' => $fileInfo['size'], 'width' => $_width, @@ -420,20 +445,21 @@ protected function _validateFile($optionValue) */ $checkPaths = array(); if (isset($optionValue['quote_path'])) { - $checkPaths[] = $this->_dir->getDir() . $optionValue['quote_path']; + $checkPaths[] = $optionValue['quote_path']; } if (isset($optionValue['order_path']) && !$this->getUseQuotePath()) { - $checkPaths[] = $this->_dir->getDir() . $optionValue['order_path']; + $checkPaths[] = $optionValue['order_path']; } - $fileFullPath = null; + $fileRelativePath = null; foreach ($checkPaths as $path) { - if (!$this->_filesystem->isFile($path)) { + if (!$this->_rootDirectory->isFile($path)) { if (!$this->_coreFileStorageDatabase->saveFileToFilesystem($fileFullPath)) { continue; } } - $fileFullPath = $path; + $fileFullPath = $this->_rootDirectory->getAbsolutePath($path); + $fileRelativePath = $path; break; } @@ -479,9 +505,9 @@ protected function _validateFile($optionValue) if ($validatorChain->isValid($fileFullPath)) { - $ok = $this->_filesystem->isReadable($fileFullPath) + $ok = $this->_rootDirectory->isReadable($fileRelativePath) && isset($optionValue['secret_key']) - && substr(md5($this->_filesystem->read($fileFullPath)), 0, 20) == $optionValue['secret_key']; + && substr(md5($this->_rootDirectory->readFile($fileRelativePath)), 0, 20) == $optionValue['secret_key']; return $ok; } elseif ($validatorChain->getErrors()) { @@ -732,57 +758,23 @@ public function copyQuoteToOrder() if (!isset($value['quote_path'])) { throw new \Exception(); } - $quoteFileFullPath = $this->_dir->getDir() . $value['quote_path']; - if (!$this->_filesystem->isFile($quoteFileFullPath) - || !$this->_filesystem->isReadable($quoteFileFullPath) - ) { + $quotePath = $value['quote_path']; + $orderPath = $value['order_path']; + + if (!$this->_rootDirectory->isFile($quotePath) || !$this->_rootDirectory->isReadable($quotePath)) { throw new \Exception(); } - $orderFileFullPath = $this->_dir->getDir() . $value['order_path']; - $dir = pathinfo($orderFileFullPath, PATHINFO_DIRNAME); - $this->_createWritableDir($dir); - $this->_coreFileStorageDatabase->copyFile($quoteFileFullPath, $orderFileFullPath); - $this->_filesystem->copy($quoteFileFullPath, $orderFileFullPath); + $this->_coreFileStorageDatabase->copyFile( + $this->_rootDirectory->getAbsolutePath($quotePath), + $this->_rootDirectory->getAbsolutePath($orderPath) + ); + $this->_rootDirectory->copyFile($quotePath, $orderPath); } catch (\Exception $e) { return $this; } return $this; } - /** - * Main Destination directory - * - * @param boolean $relative If true - returns relative path to the webroot - * @return string - */ - public function getTargetDir($relative = false) - { - $fullPath = $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DS . 'custom_options'; - return $relative ? str_replace($this->_dir->getDir(), '', $fullPath) : $fullPath; - } - - /** - * Quote items destination directory - * - * @param boolean $relative If true - returns relative path to the webroot - * @return string - */ - public function getQuoteTargetDir($relative = false) - { - return $this->getTargetDir($relative) . DS . 'quote'; - } - - /** - * Order items destination directory - * - * @param boolean $relative If true - returns relative path to the webroot - * @return string - */ - public function getOrderTargetDir($relative = false) - { - return $this->getTargetDir($relative) . DS . 'order'; - } - /** * Set url to custom option download controller * @@ -800,34 +792,14 @@ public function setCustomOptionDownloadUrl($url) */ protected function _initFilesystem() { - $this->_createWritableDir($this->getTargetDir()); - $this->_createWritableDir($this->getQuoteTargetDir()); - $this->_createWritableDir($this->getOrderTargetDir()); + $this->_mediaDirectory->create($this->_path); + $this->_mediaDirectory->create($this->_quotePath); + $this->_mediaDirectory->create($this->_orderPath); // Directory listing and hotlink secure - if (!$this->_filesystem->isFile($this->getTargetDir() . DS . '.htaccess')) { - $stream = $this->_filesystem->createStream($this->getTargetDir() . DS . '.htaccess'); - $stream->open('w+'); - $stream->write("Order deny,allow\nDeny from all"); - $stream->close(); - } - } - - /** - * Create Writable directory if it doesn't exist - * - * @param string Absolute directory path - * @return void - * @throws \Magento\Core\Exception - */ - protected function _createWritableDir($path) - { - try { - if (!$this->_filesystem->isWritable($path)) { - $this->_filesystem->createDirectory($path, 0777); - } - } catch (\Magento\Filesystem\Exception $e) { - throw new \Magento\Core\Exception(__("Cannot create writable directory '%1'.", $path)); + $path = $this->_path . '/.htaccess'; + if (!$this->_mediaDirectory->isFile($path)) { + $this->_mediaDirectory->writeFile($path, "Order deny,allow\nDeny from all"); } } @@ -872,7 +844,7 @@ protected function _isImage($fileInfo) } // File path came in - check the physical file - if (!$this->_filesystem->isReadable($fileInfo)) { + if (!$this->_rootDirectory->isReadable($this->_rootDirectory->getRelativePath($fileInfo))) { return false; } $imageInfo = getimagesize($fileInfo); diff --git a/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php b/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php index 2e8eaa7711a29..e61902ac18c0e 100644 --- a/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php +++ b/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php @@ -505,7 +505,7 @@ public function processFileQueue() $path = dirname($dst); try { - $this->_filesystem->createDirectory($path, 0777); + $this->_filesystem->getDirectoryWrite(\Magento\Filesystem::ROOT)->create($path); } catch (\Magento\Filesystem\Exception $e) { throw new \Magento\Core\Exception( __("We can't create writeable directory \"%1\".", $path) @@ -525,12 +525,6 @@ public function processFileQueue() } $this->_fileStorageDb->saveFile($dst); break; - case 'move_uploaded_file': - $src = $queueOptions['src_name']; - $dst = $queueOptions['dst_name']; - move_uploaded_file($src, $dst); - $this->_fileStorageDb->saveFile($dst); - break; default: break; } diff --git a/app/code/Magento/Catalog/Model/ProductOptions/Config/SchemaLocator.php b/app/code/Magento/Catalog/Model/ProductOptions/Config/SchemaLocator.php index fe7fae5ce5171..240458249c179 100644 --- a/app/code/Magento/Catalog/Model/ProductOptions/Config/SchemaLocator.php +++ b/app/code/Magento/Catalog/Model/ProductOptions/Config/SchemaLocator.php @@ -45,8 +45,8 @@ class SchemaLocator implements \Magento\Config\SchemaLocatorInterface public function __construct(\Magento\Module\Dir\Reader $moduleReader) { $etcDir = $moduleReader->getModuleDir('etc', 'Magento_Catalog'); - $this->_schema = $etcDir . DIRECTORY_SEPARATOR . 'product_options_merged.xsd'; - $this->_perFileSchema = $etcDir . DIRECTORY_SEPARATOR . 'product_options.xsd'; + $this->_schema = $etcDir . '/product_options_merged.xsd'; + $this->_perFileSchema = $etcDir . '/product_options.xsd'; } /** diff --git a/app/code/Magento/Catalog/Model/ProductTypes/Config/SchemaLocator.php b/app/code/Magento/Catalog/Model/ProductTypes/Config/SchemaLocator.php index 71e831d56a376..35052773eabda 100644 --- a/app/code/Magento/Catalog/Model/ProductTypes/Config/SchemaLocator.php +++ b/app/code/Magento/Catalog/Model/ProductTypes/Config/SchemaLocator.php @@ -45,8 +45,8 @@ class SchemaLocator implements \Magento\Config\SchemaLocatorInterface public function __construct(\Magento\Module\Dir\Reader $moduleReader) { $etcDir = $moduleReader->getModuleDir('etc', 'Magento_Catalog'); - $this->_schema = $etcDir . DIRECTORY_SEPARATOR . 'product_types_merged.xsd'; - $this->_perFileSchema = $etcDir . DIRECTORY_SEPARATOR . 'product_types.xsd'; + $this->_schema = $etcDir . '/product_types_merged.xsd'; + $this->_perFileSchema = $etcDir . '/product_types.xsd'; } /** diff --git a/app/code/Magento/Catalog/Model/Resource/Category/Indexer/Product.php b/app/code/Magento/Catalog/Model/Resource/Category/Indexer/Product.php index 54a7572a8734b..582ec27890979 100644 --- a/app/code/Magento/Catalog/Model/Resource/Category/Indexer/Product.php +++ b/app/code/Magento/Catalog/Model/Resource/Category/Indexer/Product.php @@ -417,8 +417,8 @@ protected function _refreshNotAnchorRootCategories(array $categoryIds = null) . " AND sv.store_id = " . (int)$storeId, array()) ->join( - array('ds' => $statusInfo['table']), - "ds.entity_id = pw.product_id AND ds.attribute_id = {$statusInfo['id']} AND ds.store_id = 0", + array('dss' => $statusInfo['table']), + "dss.entity_id = pw.product_id AND dss.attribute_id = {$statusInfo['id']} AND dss.store_id = 0", array()) ->joinLeft( array('ss' => $statusInfo['table']), @@ -428,7 +428,7 @@ protected function _refreshNotAnchorRootCategories(array $categoryIds = null) ->where('i.product_id IS NULL') ->where('pw.website_id=?', $websiteId) ->where( - $this->_getWriteAdapter()->getCheckSql('ss.value_id IS NOT NULL', 'ss.value', 'ds.value') . ' = ?', + $this->_getWriteAdapter()->getCheckSql('ss.value_id IS NOT NULL', 'ss.value', 'dss.value') . ' = ?', \Magento\Catalog\Model\Product\Status::STATUS_ENABLED) ->columns(array( 'category_id' => new \Zend_Db_Expr($rootId), @@ -501,8 +501,8 @@ protected function _refreshDirectRelations($categoryIds = null, $productIds = nu )) ) ->joinLeft( - array('ds'=>$statusInfo['table']), - "ds.entity_id=cp.product_id AND ds.attribute_id={$statusInfo['id']} AND ds.store_id=0", + array('dss'=>$statusInfo['table']), + "dss.entity_id=cp.product_id AND dss.attribute_id={$statusInfo['id']} AND dss.store_id=0", array()) ->joinLeft( array('ss'=>$statusInfo['table']), @@ -511,7 +511,7 @@ protected function _refreshDirectRelations($categoryIds = null, $productIds = nu ->where( $adapter->getCheckSql('ss.value_id IS NOT NULL', $adapter->quoteIdentifier('ss.value'), - $adapter->quoteIdentifier('ds.value') + $adapter->quoteIdentifier('dss.value') ) . ' = ?', \Magento\Catalog\Model\Product\Status::STATUS_ENABLED ); @@ -600,8 +600,8 @@ protected function _refreshAnchorRelations($categoryIds = null, $productIds = nu )) ) ->joinLeft( - array('ds'=>$statusInfo['table']), - "ds.entity_id=pw.product_id AND ds.attribute_id={$statusInfo['id']} AND ds.store_id=0", + array('dss'=>$statusInfo['table']), + "dss.entity_id=pw.product_id AND dss.attribute_id={$statusInfo['id']} AND dss.store_id=0", array()) ->joinLeft( array('ss'=>$statusInfo['table']), @@ -618,7 +618,7 @@ protected function _refreshAnchorRelations($categoryIds = null, $productIds = nu $adapter->quoteIdentifier('dca.value')) . '=1) OR ce.entity_id=rc.entity_id' ) ->where( - $adapter->getCheckSql('ss.value_id IS NOT NULL', 'ss.value', 'ds.value') . '=?', + $adapter->getCheckSql('ss.value_id IS NOT NULL', 'ss.value', 'dss.value') . '=?', \Magento\Catalog\Model\Product\Status::STATUS_ENABLED ) ->group(array('ce.entity_id', 'cp.product_id', 's.store_id')); @@ -672,8 +672,8 @@ protected function _refreshRootRelations($productIds) )) ) ->joinLeft( - array('ds'=>$statusInfo['table']), - "ds.entity_id=pw.product_id AND ds.attribute_id={$statusInfo['id']} AND ds.store_id=0", + array('dss'=>$statusInfo['table']), + "dss.entity_id=pw.product_id AND dss.attribute_id={$statusInfo['id']} AND dss.store_id=0", array()) ->joinLeft( array('ss'=>$statusInfo['table']), @@ -686,7 +686,7 @@ protected function _refreshRootRelations($productIds) ->where( $adapter->getCheckSql('ss.value_id IS NOT NULL', $adapter->quoteIdentifier('ss.value'), - $adapter->quoteIdentifier('ds.value') + $adapter->quoteIdentifier('dss.value') ) . ' = ?', \Magento\Catalog\Model\Product\Status::STATUS_ENABLED) ->where('pw.product_id IN(?)', $productIds); @@ -710,8 +710,8 @@ protected function _refreshRootRelations($productIds) . " AND sv.store_id = s.store_id", array()) ->join( - array('ds' => $statusInfo['table']), - "ds.entity_id = pw.product_id AND ds.attribute_id = {$statusInfo['id']} AND ds.store_id = 0", + array('dss' => $statusInfo['table']), + "dss.entity_id = pw.product_id AND dss.attribute_id = {$statusInfo['id']} AND dss.store_id = 0", array()) ->joinLeft( array('ss' => $statusInfo['table']), @@ -719,7 +719,7 @@ protected function _refreshRootRelations($productIds) array()) ->where('i.product_id IS NULL') ->where( - $adapter->getCheckSql('ss.value_id IS NOT NULL', 'ss.value', 'ds.value') . '=?', + $adapter->getCheckSql('ss.value_id IS NOT NULL', 'ss.value', 'dss.value') . '=?', \Magento\Catalog\Model\Product\Status::STATUS_ENABLED) ->where('pw.product_id IN(?)', $productIds) ->columns(array( diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Image.php b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Image.php index 4da0fb68e3649..05fef669c7046 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Image.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Image.php @@ -38,11 +38,11 @@ class Image extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend { /** - * Dir model + * Filesystem facade * - * @var \Magento\App\Dir + * @var \Magento\Filesystem */ - protected $_dir; + protected $_filesystem; /** * File Uploader factory @@ -53,15 +53,15 @@ class Image /** * @param \Magento\Logger $logger - * @param \Magento\App\Dir $dir + * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\File\UploaderFactory $fileUploaderFactory */ public function __construct( \Magento\Logger $logger, - \Magento\App\Dir $dir, + \Magento\Filesystem $filesystem, \Magento\Core\Model\File\UploaderFactory $fileUploaderFactory ) { - $this->_dir = $dir; + $this->_filesystem = $filesystem; $this->_fileUploaderFactory = $fileUploaderFactory; parent::__construct($logger); } @@ -92,7 +92,8 @@ public function afterSave($object) } catch (\Exception $e){ return $this; } - $uploader->save($this->_dir->getDir(\Magento\App\Dir::MEDIA) . '/catalog/product'); + $path = $this->_filesystem->getDirectoryRead(\Magento\Filesystem::MEDIA)->getAbsolutePath('catalog/product/'); + $uploader->save($path); $fileName = $uploader->getUploadedFileName(); if ($fileName) { diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Collection.php b/app/code/Magento/Catalog/Model/Resource/Product/Collection.php index 3cd9ce1b61cb2..5808d1c464dcc 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Collection.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Collection.php @@ -24,16 +24,11 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ +namespace Magento\Catalog\Model\Resource\Product; /** * Product collection - * - * @category Magento - * @package Magento_Catalog - * @author Magento Core Team */ -namespace Magento\Catalog\Model\Resource\Product; - class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractCollection { /** @@ -843,14 +838,13 @@ public function getMaxAttributeValue($attribute) $tableAlias = $attributeCode . '_max_value'; $fieldAlias = 'max_' . $attributeCode; $condition = 'e.entity_id = ' . $tableAlias . '.entity_id - AND '.$this->_getConditionSql($tableAlias . '.attribute_id', $attribute->getId()); + AND ' . $this->_getConditionSql($tableAlias . '.attribute_id', $attribute->getId()); $select->join( - array($tableAlias => $attribute->getBackend()->getTable()), - $condition, - array($fieldAlias => new \Zend_Db_Expr('MAX('.$tableAlias.'.value)')) - ) - ->group('e.entity_type_id'); + array($tableAlias => $attribute->getBackend()->getTable()), + $condition, + array($fieldAlias => new \Zend_Db_Expr('MAX(' . $tableAlias . '.value)')) + )->group('e.entity_type_id'); $data = $this->getConnection()->fetchRow($select); if (isset($data[$fieldAlias])) { diff --git a/app/code/Magento/Catalog/Model/Session.php b/app/code/Magento/Catalog/Model/Session.php index 7d9a489b9440c..e8938aa27d206 100644 --- a/app/code/Magento/Catalog/Model/Session.php +++ b/app/code/Magento/Catalog/Model/Session.php @@ -24,37 +24,11 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ +namespace Magento\Catalog\Model; + /** * Catalog session model - * - * @category Magento - * @package Magento_Catalog - * @author Magento Core Team */ -namespace Magento\Catalog\Model; - -class Session extends \Magento\Core\Model\Session\AbstractSession +class Session extends \Magento\Session\Generic { - /** - * @param \Magento\Core\Model\Session\Context $context - * @param \Magento\Session\SidResolverInterface $sidResolver - * @param \Magento\Session\Config\ConfigInterface $sessionConfig - * @param null $sessionName - * @param array $data - */ - public function __construct( - \Magento\Core\Model\Session\Context $context, - \Magento\Session\SidResolverInterface $sidResolver, - \Magento\Session\Config\ConfigInterface $sessionConfig, - $sessionName = null, - array $data = array() - ) { - parent::__construct($context, $sidResolver, $sessionConfig, $data); - $this->start('catalog', $sessionName); - } - - public function getDisplayMode() - { - return $this->_getData('display_mode'); - } } diff --git a/app/code/Magento/Catalog/etc/adminhtml/menu.xml b/app/code/Magento/Catalog/etc/adminhtml/menu.xml index 77c1023fed0cc..22dced33bf5cf 100644 --- a/app/code/Magento/Catalog/etc/adminhtml/menu.xml +++ b/app/code/Magento/Catalog/etc/adminhtml/menu.xml @@ -30,9 +30,9 @@ - - - + + + diff --git a/app/code/Magento/Catalog/etc/di.xml b/app/code/Magento/Catalog/etc/di.xml index 65741871b752c..3c2319dd65c1a 100644 --- a/app/code/Magento/Catalog/etc/di.xml +++ b/app/code/Magento/Catalog/etc/di.xml @@ -29,18 +29,13 @@ - - - - Magento\Catalog\Model\Session - Magento\Checkout\Model\Session - - - Virtual + + + @@ -66,6 +61,9 @@ + + + @@ -93,6 +91,9 @@ Magento\Catalog\Model\Template\Filter + + + @@ -124,4 +125,14 @@ + + + catalog + + + + + + + diff --git a/app/code/Magento/Catalog/etc/module.xml b/app/code/Magento/Catalog/etc/module.xml index 03dcc5b2b7c11..506036eb49fb2 100755 --- a/app/code/Magento/Catalog/etc/module.xml +++ b/app/code/Magento/Catalog/etc/module.xml @@ -48,7 +48,6 @@ - diff --git a/app/code/Magento/Catalog/sql/catalog_setup/mysql4-upgrade-1.6.0.0.8-1.6.0.0.9.php b/app/code/Magento/Catalog/sql/catalog_setup/mysql4-upgrade-1.6.0.0.8-1.6.0.0.9.php index a253b154c5a3e..8e4e1b6a95995 100644 --- a/app/code/Magento/Catalog/sql/catalog_setup/mysql4-upgrade-1.6.0.0.8-1.6.0.0.9.php +++ b/app/code/Magento/Catalog/sql/catalog_setup/mysql4-upgrade-1.6.0.0.8-1.6.0.0.9.php @@ -24,13 +24,16 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -$installFile = __DIR__ . DS . 'upgrade-1.6.0.0.8-1.6.0.0.9.php'; -if (file_exists($installFile)) { +/** @var $this \Magento\Catalog\Model\Resource\Setup */ +$installFile = __DIR__ . '/upgrade-1.6.0.0.8-1.6.0.0.9.php'; + +/** @var \Magento\Filesystem\Directory\Read $modulesDirectory */ +$modulesDirectory = $this->getFilesystem()->getDirectoryRead(\Magento\Filesystem::MODULES); + +if ($modulesDirectory->isExist($modulesDirectory->getRelativePath($installFile))) { include $installFile; } -/** @var $installer \Magento\Catalog\Model\Resource\Setup */ -$installer = $this; /** @var $connection \Magento\DB\Adapter\Pdo\Mysql */ $connection = $installer->getConnection(); $memoryTables = array( @@ -49,5 +52,5 @@ ); foreach ($memoryTables as $table) { - $connection->changeTableEngine($installer->getTable($table), \Magento\DB\Adapter\Pdo\Mysql::ENGINE_MEMORY); + $connection->changeTableEngine($this->getTable($table), \Magento\DB\Adapter\Pdo\Mysql::ENGINE_MEMORY); } diff --git a/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_crosssell.xml b/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_crosssell.xml index 10edc0b151134..9ae7c8734bd22 100644 --- a/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_crosssell.xml +++ b/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_crosssell.xml @@ -26,7 +26,7 @@ - + position catalog.product.edit.tab.crosssell diff --git a/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_related.xml b/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_related.xml index 6f867353d4531..248254eae3d6c 100644 --- a/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_related.xml +++ b/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_related.xml @@ -26,7 +26,7 @@ - + position catalog.product.edit.tab.related diff --git a/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_upsell.xml b/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_upsell.xml index 1e6e631b56044..bccbc47068f10 100644 --- a/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_upsell.xml +++ b/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_upsell.xml @@ -26,7 +26,7 @@ - + position catalog.product.edit.tab.upsell diff --git a/app/code/Magento/Catalog/view/adminhtml/product/product.css b/app/code/Magento/Catalog/view/adminhtml/product/product.css index 7b8fa7ac9037d..205199fc30f2a 100644 --- a/app/code/Magento/Catalog/view/adminhtml/product/product.css +++ b/app/code/Magento/Catalog/view/adminhtml/product/product.css @@ -240,7 +240,7 @@ .image-placeholder { position: relative; - background: #fff url(Magento_Adminhtml::images/image-placeholder.png) no-repeat 50% 0; + background: #fff url(Magento_Backend::images/image-placeholder.png) no-repeat 50% 0; } .image-placeholder .fileinput-button { diff --git a/app/code/Magento/Catalog/view/frontend/js/configurable.js b/app/code/Magento/Catalog/view/frontend/js/configurable.js index a4bf7504f6332..b79e6c0c6112e 100644 --- a/app/code/Magento/Catalog/view/frontend/js/configurable.js +++ b/app/code/Magento/Catalog/view/frontend/js/configurable.js @@ -330,7 +330,10 @@ var allowedProducts = []; if (prevConfig) { for (var j = 0; j < options[i].products.length; j++) { - if (prevConfig.config.allowedProducts && prevConfig.config.allowedProducts.indexOf(options[i].products[j]) > -1) { + // prevConfig.config can be undefined + if (prevConfig.config && + prevConfig.config.allowedProducts && + prevConfig.config.allowedProducts.indexOf(options[i].products[j]) > -1) { allowedProducts.push(options[i].products[j]); } } diff --git a/app/code/Magento/Catalog/view/frontend/product/price_msrp.phtml b/app/code/Magento/Catalog/view/frontend/product/price_msrp.phtml index c27bb93222acf..5565758df50e7 100644 --- a/app/code/Magento/Catalog/view/frontend/product/price_msrp.phtml +++ b/app/code/Magento/Catalog/view/frontend/product/price_msrp.phtml @@ -34,6 +34,8 @@ /** @var $_product \Magento\Catalog\Model\Product */ $_product = $this->getProduct(); $_msrpPrice = ""; + $priceElementIdPrefix = $this->getPriceElementIdPrefix() ? $this->getPriceElementIdPrefix() : 'product-price-'; + $priceElementId = $priceElementIdPrefix . $_product->getId() . $this->getIdSuffix(); ?>
helper('Magento\Tax\Helper\Data')->getPrice($_product, $_product->getMsrp()) ?> diff --git a/app/code/Magento/Catalog/view/frontend/product/view/type/options/configurable.phtml b/app/code/Magento/Catalog/view/frontend/product/view/type/options/configurable.phtml index 419fd11e1ab84..0fbd567d83427 100644 --- a/app/code/Magento/Catalog/view/frontend/product/view/type/options/configurable.phtml +++ b/app/code/Magento/Catalog/view/frontend/product/view/type/options/configurable.phtml @@ -40,7 +40,7 @@ $_attributes = $this->decorateArray($this->getAllowAttributes()); data-validate="{required:true}" id="attributegetAttributeId() ?>" class="super-attribute-select"> - +
diff --git a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit.php b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit.php index dcc2db0676df7..f760314e2f45b 100644 --- a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit.php +++ b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit.php @@ -30,7 +30,7 @@ namespace Magento\CatalogRule\Block\Adminhtml\Promo\Catalog; -class Edit extends \Magento\Adminhtml\Block\Widget\Form\Container +class Edit extends \Magento\Backend\Block\Widget\Form\Container { /** * Core registry diff --git a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tabs.php b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tabs.php index 0d96ff0d576ee..33890edccc458 100644 --- a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tabs.php +++ b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tabs.php @@ -34,7 +34,7 @@ */ namespace Magento\CatalogRule\Block\Adminhtml\Promo\Catalog\Edit; -class Tabs extends \Magento\Adminhtml\Block\Widget\Tabs +class Tabs extends \Magento\Backend\Block\Widget\Tabs { protected function _construct() diff --git a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Widget/Chooser.php b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Widget/Chooser.php index 98aedc056299c..b12b1af442f8a 100644 --- a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Widget/Chooser.php +++ b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Widget/Chooser.php @@ -39,17 +39,19 @@ class Chooser extends \Magento\Backend\Block\Widget\Grid\Extended /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\SalesRule\Model\RuleFactory $salesRule * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\SalesRule\Model\RuleFactory $salesRule, array $data = array() ) { $this->_salesRule = $salesRule; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } /** @@ -116,7 +118,7 @@ function (grid, event) { /** * Prepare rules collection * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareCollection() { @@ -133,7 +135,7 @@ protected function _prepareCollection() /** * Prepare columns for rules grid * - * @return \Magento\Adminhtml\Block\Widget\Grid + * @return \Magento\Backend\Block\Widget\Grid\Extended */ protected function _prepareColumns() { diff --git a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Widget/Chooser/Sku.php b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Widget/Chooser/Sku.php index c9113b110077a..dd4b5fd3776a3 100644 --- a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Widget/Chooser/Sku.php +++ b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Widget/Chooser/Sku.php @@ -58,6 +58,7 @@ class Sku extends \Magento\Backend\Block\Widget\Grid\Extended /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Catalog\Model\ProductFactory $catalogProduct * @param \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $eavAttSetCollection * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $cpCollection @@ -67,6 +68,7 @@ class Sku extends \Magento\Backend\Block\Widget\Grid\Extended public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Catalog\Model\ProductFactory $catalogProduct, \Magento\Eav\Model\Resource\Entity\Attribute\Set\CollectionFactory $eavAttSetCollection, \Magento\Catalog\Model\Resource\Product\CollectionFactory $cpCollection, @@ -77,7 +79,7 @@ public function __construct( $this->_cpCollection = $cpCollection; $this->_eavAttSetCollection = $eavAttSetCollection; $this->_catalogProduct = $catalogProduct; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog.php b/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog.php index a308eb102a6a5..55aa24b444b83 100644 --- a/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog.php +++ b/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog.php @@ -87,7 +87,7 @@ public function indexAction() $dirtyRules = $this->_objectManager->create('Magento\CatalogRule\Model\Flag')->loadSelf(); if ($dirtyRules->getState()) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addNotice($this->getDirtyRulesNoticeMessage()); + $this->messageManager->addNotice($this->getDirtyRulesNoticeMessage()); } $this->_initAction() @@ -113,9 +113,7 @@ public function editAction() if ($id) { $model->load($id); if (! $model->getRuleId()) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError( - __('This rule no longer exists.') - ); + $this->messageManager->addError(__('This rule no longer exists.')); $this->_redirect('catalog_rule/*'); return; } @@ -124,7 +122,7 @@ public function editAction() $this->_title->add($model->getRuleId() ? $model->getName() : __('New Catalog Price Rule')); // set entered data if was error when we do save - $data = $this->_objectManager->get('Magento\Adminhtml\Model\Session')->getPageData(true); + $data = $this->_objectManager->get('Magento\Backend\Model\Session')->getPageData(true); if (!empty($data)) { $model->addData($data); } @@ -165,7 +163,7 @@ public function saveAction() $validateResult = $model->validateData(new \Magento\Object($data)); if ($validateResult !== true) { foreach ($validateResult as $errorMessage) { - $this->_getSession()->addError($errorMessage); + $this->messageManager->addError($errorMessage); } $this->_getSession()->setPageData($data); $this->_redirect('catalog_rule/*/edit', array('id'=>$model->getId())); @@ -177,14 +175,12 @@ public function saveAction() $model->loadPost($data); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->setPageData($model->getData()); + $this->_objectManager->get('Magento\Backend\Model\Session')->setPageData($model->getData()); $model->save(); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess( - __('The rule has been saved.') - ); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->setPageData(false); + $this->messageManager->addSuccess(__('The rule has been saved.')); + $this->_objectManager->get('Magento\Backend\Model\Session')->setPageData(false); if ($this->getRequest()->getParam('auto_apply')) { $this->getRequest()->setParam('rule_id', $model->getId()); $this->_forward('applyRules'); @@ -200,13 +196,13 @@ public function saveAction() } return; } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addError( + $this->messageManager->addError( __('An error occurred while saving the rule data. Please review the log and try again.') ); $this->_objectManager->get('Magento\Logger')->logException($e); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->setPageData($data); + $this->_objectManager->get('Magento\Backend\Model\Session')->setPageData($data); $this->_redirect('catalog_rule/*/edit', array('id' => $this->getRequest()->getParam('rule_id'))); return; } @@ -225,15 +221,13 @@ public function deleteAction() $this->_objectManager->create('Magento\CatalogRule\Model\Flag')->loadSelf() ->setState(1) ->save(); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess( - __('The rule has been deleted.') - ); + $this->messageManager->addSuccess(__('The rule has been deleted.')); $this->_redirect('catalog_rule/*/'); return; } catch (\Magento\Core\Exception $e) { - $this->_getSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_getSession()->addError( + $this->messageManager->addError( __('An error occurred while deleting the rule. Please review the log and try again.') ); $this->_objectManager->get('Magento\Logger')->logException($e); @@ -241,9 +235,7 @@ public function deleteAction() return; } } - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError( - __('Unable to find a rule to delete.') - ); + $this->messageManager->addError(__('Unable to find a rule to delete.')); $this->_redirect('catalog_rule/*/'); } @@ -320,15 +312,15 @@ public function applyRulesAction() $ruleJob->applyAll(); if ($ruleJob->hasSuccess()) { - $this->_getSession()->addSuccess($ruleJob->getSuccess()); + $this->messageManager->addSuccess($ruleJob->getSuccess()); $this->_objectManager->create('Magento\CatalogRule\Model\Flag')->loadSelf() ->setState(0) ->save(); } elseif ($ruleJob->hasError()) { - $this->_getSession()->addError($errorMessage . ' ' . $ruleJob->getError()); + $this->messageManager->addError($errorMessage . ' ' . $ruleJob->getError()); } } catch (\Exception $e) { - $this->_getSession()->addError($errorMessage); + $this->messageManager->addError($errorMessage); } $this->_redirect('catalog_rule/*'); } diff --git a/app/code/Magento/CatalogRule/Model/Observer.php b/app/code/Magento/CatalogRule/Model/Observer.php index 36d8448895263..dd06d8f4534fc 100644 --- a/app/code/Magento/CatalogRule/Model/Observer.php +++ b/app/code/Magento/CatalogRule/Model/Observer.php @@ -96,6 +96,11 @@ class Observer */ protected $_resourceRule; + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * @param Resource\RuleFactory $resourceRuleFactory * @param Resource\Rule $resourceRule @@ -109,6 +114,7 @@ class Observer * @param \Magento\Backend\Model\Session $backendSession * @param \Magento\Core\Model\Registry $coreRegistry * @param \Magento\Stdlib\DateTime $dateTime + * @param \Magento\Message\ManagerInterface $messageManager * * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ @@ -124,7 +130,8 @@ public function __construct( \Magento\Customer\Model\Session $customerSession, \Magento\Backend\Model\Session $backendSession, \Magento\Core\Model\Registry $coreRegistry, - \Magento\Stdlib\DateTime $dateTime + \Magento\Stdlib\DateTime $dateTime, + \Magento\Message\ManagerInterface $messageManager ) { $this->_resourceRuleFactory = $resourceRuleFactory; $this->_resourceRule = $resourceRule; @@ -138,6 +145,7 @@ public function __construct( $this->_backendSession = $backendSession; $this->_coreRegistry = $coreRegistry; $this->dateTime = $dateTime; + $this->messageManager = $messageManager; } /** @@ -393,8 +401,12 @@ protected function _checkCatalogRulesAvailability($attributeCode) if ($disabledRulesCount) { $this->_ruleFactory->create()->applyAll(); - $this->_backendSession->addWarning( - __('%1 Catalog Price Rules based on "%2" attribute have been disabled.', $disabledRulesCount, $attributeCode) + $this->messageManager->addWarning( + __( + '%1 Catalog Price Rules based on "%2" attribute have been disabled.', + $disabledRulesCount, + $attributeCode + ) ); } diff --git a/app/code/Magento/CatalogRule/etc/adminhtml/menu.xml b/app/code/Magento/CatalogRule/etc/adminhtml/menu.xml index 84ae05cc481d6..5bea1e13da78a 100644 --- a/app/code/Magento/CatalogRule/etc/adminhtml/menu.xml +++ b/app/code/Magento/CatalogRule/etc/adminhtml/menu.xml @@ -27,7 +27,7 @@ --> - + diff --git a/app/code/Magento/CatalogSearch/Block/Autocomplete.php b/app/code/Magento/CatalogSearch/Block/Autocomplete.php index 3acebfb3e7da8..c0f88bb0d8cf7 100644 --- a/app/code/Magento/CatalogSearch/Block/Autocomplete.php +++ b/app/code/Magento/CatalogSearch/Block/Autocomplete.php @@ -33,6 +33,25 @@ class Autocomplete extends \Magento\View\Element\AbstractBlock { protected $_suggestData = null; + /** + * @var \Magento\CatalogSearch\Helper\Data + */ + protected $_catalogsearchHelper; + + /** + * @param \Magento\View\Element\Context $context + * @param \Magento\CatalogSearch\Helper\Data $catalogsearchHelper + * @param array $data + */ + public function __construct( + \Magento\View\Element\Context $context, + \Magento\CatalogSearch\Helper\Data $catalogsearchHelper, + array $data = array() + ) { + $this->_catalogsearchHelper = $catalogsearchHelper; + parent::__construct($context, $data); + } + protected function _toHtml() { $html = ''; @@ -71,8 +90,8 @@ protected function _toHtml() public function getSuggestData() { if (!$this->_suggestData) { - $collection = $this->helper('Magento\CatalogSearch\Helper\Data')->getSuggestCollection(); - $query = $this->helper('Magento\CatalogSearch\Helper\Data')->getQueryText(); + $collection = $this->_catalogsearchHelper->getSuggestCollection(); + $query = $this->_catalogsearchHelper->getQueryText(); $counter = 0; $data = array(); foreach ($collection as $item) { diff --git a/app/code/Magento/CatalogSearch/Block/Result.php b/app/code/Magento/CatalogSearch/Block/Result.php index 7454929c560c3..fe4f6245cb436 100644 --- a/app/code/Magento/CatalogSearch/Block/Result.php +++ b/app/code/Magento/CatalogSearch/Block/Result.php @@ -81,7 +81,7 @@ public function __construct( */ protected function _getQuery() { - return $this->helper('Magento\CatalogSearch\Helper\Data')->getQuery(); + return $this->_catalogSearchData->getQuery(); } /** @@ -94,7 +94,7 @@ protected function _prepareLayout() // add Home breadcrumb $breadcrumbs = $this->getLayout()->getBlock('breadcrumbs'); if ($breadcrumbs) { - $title = __("Search results for: '%1'", $this->helper('Magento\CatalogSearch\Helper\Data')->getQueryText()); + $title = __("Search results for: '%1'", $this->_catalogSearchData->getQueryText()); $breadcrumbs->addCrumb('home', array( 'label' => __('Home'), @@ -107,7 +107,7 @@ protected function _prepareLayout() } // modify page title - $title = __("Search results for: '%1'", $this->helper('Magento\CatalogSearch\Helper\Data')->getEscapedQueryText()); + $title = __("Search results for: '%1'", $this->_catalogSearchData->getEscapedQueryText()); $this->getLayout()->getBlock('head')->setTitle($title); return parent::_prepareLayout(); diff --git a/app/code/Magento/CatalogSearch/Controller/Advanced.php b/app/code/Magento/CatalogSearch/Controller/Advanced.php index 79e66db657cd2..e17f1f8e5dd7f 100644 --- a/app/code/Magento/CatalogSearch/Controller/Advanced.php +++ b/app/code/Magento/CatalogSearch/Controller/Advanced.php @@ -53,7 +53,7 @@ class Advanced extends \Magento\App\Action\Action /** * Catalog search session * - * @var \Magento\Core\Model\Session\Generic + * @var \Magento\Session\Generic */ protected $_catalogSearchSession; @@ -61,13 +61,13 @@ class Advanced extends \Magento\App\Action\Action * Construct * * @param \Magento\App\Action\Context $context - * @param \Magento\Core\Model\Session\Generic $catalogSearchSession + * @param \Magento\Session\Generic $catalogSearchSession * @param \Magento\CatalogSearch\Model\Advanced $catalogSearchAdvanced * @param \Magento\Core\Model\UrlFactory $urlFactory */ public function __construct( \Magento\App\Action\Context $context, - \Magento\Core\Model\Session\Generic $catalogSearchSession, + \Magento\Session\Generic $catalogSearchSession, \Magento\CatalogSearch\Model\Advanced $catalogSearchAdvanced, \Magento\Core\Model\UrlFactory $urlFactory ) { @@ -80,7 +80,7 @@ public function __construct( public function indexAction() { $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\CatalogSearch\Model\Session'); + $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); } @@ -90,13 +90,13 @@ public function resultAction() try { $this->_catalogSearchAdvanced->addFilters($this->getRequest()->getQuery()); } catch (\Magento\Core\Exception $e) { - $this->_catalogSearchSession->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $defaultUrl = $this->_urlFactory->create() ->setQueryParams($this->getRequest()->getQuery()) ->getUrl('*/*/'); $this->getResponse()->setRedirect($this->_redirect->error($defaultUrl)); } - $this->_view->getLayout()->initMessages('Magento\Catalog\Model\Session'); + $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); } } diff --git a/app/code/Magento/CatalogSearch/Controller/Result.php b/app/code/Magento/CatalogSearch/Controller/Result.php index 0fe3a2ac61546..17df42f08bac2 100644 --- a/app/code/Magento/CatalogSearch/Controller/Result.php +++ b/app/code/Magento/CatalogSearch/Controller/Result.php @@ -102,8 +102,7 @@ public function indexAction() $this->_objectManager->get('Magento\CatalogSearch\Helper\Data')->checkNotes(); $this->_view->loadLayout(); - $this->_view->getLayout() - ->initMessages(array('Magento\Catalog\Model\Session', 'Magento\Checkout\Model\Session')); + $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); if (!$this->_objectManager->get('Magento\CatalogSearch\Helper\Data')->isMinQueryLength()) { diff --git a/app/code/Magento/CatalogSearch/Controller/Term.php b/app/code/Magento/CatalogSearch/Controller/Term.php index 23c2cacddfb30..d57c86c1745d0 100644 --- a/app/code/Magento/CatalogSearch/Controller/Term.php +++ b/app/code/Magento/CatalogSearch/Controller/Term.php @@ -33,8 +33,10 @@ class Term extends \Magento\App\Action\Action { /** + * Dispatch request + * * @param RequestInterface $request - * @return mixed + * @return \Magento\App\ResponseInterface */ public function dispatch(RequestInterface $request) { diff --git a/app/code/Magento/CatalogSearch/Model/Fulltext/Observer.php b/app/code/Magento/CatalogSearch/Model/Fulltext/Observer.php index 92f8866be6726..b965484b112ea 100644 --- a/app/code/Magento/CatalogSearch/Model/Fulltext/Observer.php +++ b/app/code/Magento/CatalogSearch/Model/Fulltext/Observer.php @@ -70,6 +70,11 @@ class Observer */ protected $_backendSession; + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * Construct * @@ -78,19 +83,22 @@ class Observer * @param \Magento\Eav\Model\Config $eavConfig * @param \Magento\CatalogSearch\Model\Fulltext $catalogSearchFulltext * @param \Magento\Core\Model\StoreManagerInterface $storeManager + * @param \Magento\Message\ManagerInterface $messageManager */ public function __construct( \Magento\Backend\Model\Session $backendSession, \Magento\Backend\Model\Url $backendUrl, \Magento\Eav\Model\Config $eavConfig, \Magento\CatalogSearch\Model\Fulltext $catalogSearchFulltext, - \Magento\Core\Model\StoreManagerInterface $storeManager + \Magento\Core\Model\StoreManagerInterface $storeManager, + \Magento\Message\ManagerInterface $messageManager ) { $this->_backendSession = $backendSession; $this->_backendUrl = $backendUrl; $this->_eavConfig = $eavConfig; $this->_catalogSearchFulltext = $catalogSearchFulltext; $this->_storeManager = $storeManager; + $this->messageManager = $messageManager; } /** @@ -173,7 +181,7 @@ public function eavAttributeChange(\Magento\Event\Observer $observer) if ($showNotice) { $url = $this->_backendUrl->getUrl('adminhtml/system_cache'); - $this->_backendSession->addNotice( + $this->messageManager->addNotice( __('Attribute setting change related with Search Index. Please run Rebuild Search Index process.', $url) ); } diff --git a/app/code/Magento/CatalogSearch/etc/adminhtml/di.xml b/app/code/Magento/CatalogSearch/etc/adminhtml/di.xml index e11ec1cb2cea9..5ecd4ff740837 100644 --- a/app/code/Magento/CatalogSearch/etc/adminhtml/di.xml +++ b/app/code/Magento/CatalogSearch/etc/adminhtml/di.xml @@ -24,10 +24,15 @@ */ --> - - + + catalogsearch + + + + + adminhtml diff --git a/app/code/Magento/CatalogSearch/etc/adminhtml/menu.xml b/app/code/Magento/CatalogSearch/etc/adminhtml/menu.xml index 9787c8ab7ae89..ef437742efc3f 100644 --- a/app/code/Magento/CatalogSearch/etc/adminhtml/menu.xml +++ b/app/code/Magento/CatalogSearch/etc/adminhtml/menu.xml @@ -27,6 +27,6 @@ --> - + diff --git a/app/code/Magento/CatalogSearch/etc/frontend/di.xml b/app/code/Magento/CatalogSearch/etc/frontend/di.xml index 5121db27fdbe5..4e36793e50d89 100644 --- a/app/code/Magento/CatalogSearch/etc/frontend/di.xml +++ b/app/code/Magento/CatalogSearch/etc/frontend/di.xml @@ -24,10 +24,15 @@ */ --> - - + + catalogsearch + + + + + frontend diff --git a/app/code/Magento/CatalogSearch/etc/module.xml b/app/code/Magento/CatalogSearch/etc/module.xml index d03b82e3a524a..a581b026f65ed 100755 --- a/app/code/Magento/CatalogSearch/etc/module.xml +++ b/app/code/Magento/CatalogSearch/etc/module.xml @@ -32,7 +32,6 @@ - diff --git a/app/code/Magento/Centinel/Model/AbstractState.php b/app/code/Magento/Centinel/Model/AbstractState.php index de4b2c23d74ea..2909d5dad2618 100644 --- a/app/code/Magento/Centinel/Model/AbstractState.php +++ b/app/code/Magento/Centinel/Model/AbstractState.php @@ -67,7 +67,7 @@ public function getDataStorage() * Otherwise it will return value of the attribute specified by $key * * $index parameter is ignored - * @see \Magento\Core\Model\Session\AbstractSession::getData() + * @see \Magento\Session\SessionManager::getData() * * @param string $key * @param string|int $index diff --git a/app/code/Magento/Centinel/Model/Service.php b/app/code/Magento/Centinel/Model/Service.php index 68c2943c139c9..16325bc0684c7 100644 --- a/app/code/Magento/Centinel/Model/Service.php +++ b/app/code/Magento/Centinel/Model/Service.php @@ -24,11 +24,11 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ +namespace Magento\Centinel\Model; + /** * 3D Secure Validation Model */ -namespace Magento\Centinel\Model; - class Service extends \Magento\Object { /** @@ -85,7 +85,7 @@ class Service extends \Magento\Object /** * Centinel session * - * @var \Magento\Core\Model\Session\AbstractSession + * @var \Magento\Session\SessionManagerInterface */ protected $_centinelSession; @@ -117,7 +117,7 @@ class Service extends \Magento\Object * @param \Magento\Centinel\Model\Config $config * @param \Magento\Centinel\Model\Api $api * @param \Magento\UrlInterface $url - * @param \Magento\Core\Model\Session\AbstractSession $centinelSession + * @param \Magento\Session\SessionManagerInterface $centinelSession * @param \Magento\Centinel\Model\StateFactory $stateFactory * @param \Magento\Data\Form\FormKey $formKey * @param string $urlPrefix @@ -127,7 +127,7 @@ public function __construct( \Magento\Centinel\Model\Config $config, \Magento\Centinel\Model\Api $api, \Magento\UrlInterface $url, - \Magento\Core\Model\Session\AbstractSession $centinelSession, + \Magento\Session\SessionManagerInterface $centinelSession, \Magento\Centinel\Model\StateFactory $stateFactory, \Magento\Data\Form\FormKey $formKey, $urlPrefix = 'centinel/index/', diff --git a/app/code/Magento/Centinel/etc/adminhtml/di.xml b/app/code/Magento/Centinel/etc/adminhtml/di.xml index 0d312b21fca2a..66979342bb8fe 100644 --- a/app/code/Magento/Centinel/etc/adminhtml/di.xml +++ b/app/code/Magento/Centinel/etc/adminhtml/di.xml @@ -24,10 +24,15 @@ */ --> - - + + centinel_validator + + + + + adminhtml diff --git a/app/code/Magento/Centinel/etc/adminhtml/routes.xml b/app/code/Magento/Centinel/etc/adminhtml/routes.xml index 3bee88693b233..c07cbc5af49cc 100644 --- a/app/code/Magento/Centinel/etc/adminhtml/routes.xml +++ b/app/code/Magento/Centinel/etc/adminhtml/routes.xml @@ -26,7 +26,7 @@ - + - \ No newline at end of file + diff --git a/app/code/Magento/Centinel/etc/frontend/di.xml b/app/code/Magento/Centinel/etc/frontend/di.xml index 4edf75ae69088..ee660c6c408b5 100644 --- a/app/code/Magento/Centinel/etc/frontend/di.xml +++ b/app/code/Magento/Centinel/etc/frontend/di.xml @@ -24,10 +24,15 @@ */ --> - - + + centinel_validator + + + + + frontend diff --git a/app/code/Magento/Checkout/Block/Adminhtml/Agreement.php b/app/code/Magento/Checkout/Block/Adminhtml/Agreement.php index 9f1da0aecd8bd..8a2a7476880cb 100644 --- a/app/code/Magento/Checkout/Block/Adminhtml/Agreement.php +++ b/app/code/Magento/Checkout/Block/Adminhtml/Agreement.php @@ -34,7 +34,7 @@ namespace Magento\Checkout\Block\Adminhtml; -class Agreement extends \Magento\Adminhtml\Block\Widget\Grid\Container +class Agreement extends \Magento\Backend\Block\Widget\Grid\Container { protected function _construct() { diff --git a/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Edit.php b/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Edit.php index b58d5854f3c58..3b4bb5616962b 100644 --- a/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Edit.php +++ b/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Edit.php @@ -26,7 +26,7 @@ namespace Magento\Checkout\Block\Adminhtml\Agreement; -class Edit extends \Magento\Adminhtml\Block\Widget\Form\Container +class Edit extends \Magento\Backend\Block\Widget\Form\Container { /** * Core registry diff --git a/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Edit/Form.php b/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Edit/Form.php index 474938fed3d7c..5e4957c98862b 100644 --- a/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Edit/Form.php +++ b/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Edit/Form.php @@ -65,7 +65,7 @@ protected function _construct() /** * - * return \Magento\Adminhtml\Block\Widget\Form + * return \Magento\Backend\Block\Widget\Form */ protected function _prepareForm() { diff --git a/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Grid.php b/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Grid.php index e28f317418f0d..fe03e38a3d0f9 100644 --- a/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Grid.php +++ b/app/code/Magento/Checkout/Block/Adminhtml/Agreement/Grid.php @@ -25,7 +25,7 @@ */ namespace Magento\Checkout\Block\Adminhtml\Agreement; -class Grid extends \Magento\Adminhtml\Block\Widget\Grid +class Grid extends \Magento\Backend\Block\Widget\Grid\Extended { /** * @var \Magento\Checkout\Model\Resource\Agreement\CollectionFactory @@ -35,17 +35,19 @@ class Grid extends \Magento\Adminhtml\Block\Widget\Grid /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Core\Model\Url $urlModel + * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Checkout\Model\Resource\Agreement\CollectionFactory $collectionFactory * @param array $data */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Core\Model\Url $urlModel, + \Magento\Backend\Helper\Data $backendHelper, \Magento\Checkout\Model\Resource\Agreement\CollectionFactory $collectionFactory, array $data = array() ) { $this->_collectionFactory = $collectionFactory; - parent::__construct($context, $urlModel, $data); + parent::__construct($context, $urlModel, $backendHelper, $data); } protected function _construct() diff --git a/app/code/Magento/Checkout/Block/Cart.php b/app/code/Magento/Checkout/Block/Cart.php index 78a918cefebeb..9ddaded6e5758 100644 --- a/app/code/Magento/Checkout/Block/Cart.php +++ b/app/code/Magento/Checkout/Block/Cart.php @@ -40,12 +40,18 @@ class Cart extends \Magento\Checkout\Block\Cart\AbstractCart */ protected $_catalogUrlBuilder; + /** + * @var \Magento\Checkout\Helper\Cart + */ + protected $_cartHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Customer\Model\Session $customerSession * @param \Magento\Checkout\Model\Session $checkoutSession * @param \Magento\Catalog\Model\Resource\Url $catalogUrlBuilder + * @param \Magento\Checkout\Helper\Cart $cartHelper * @param array $data */ public function __construct( @@ -54,8 +60,10 @@ public function __construct( \Magento\Customer\Model\Session $customerSession, \Magento\Checkout\Model\Session $checkoutSession, \Magento\Catalog\Model\Resource\Url $catalogUrlBuilder, + \Magento\Checkout\Helper\Cart $cartHelper, array $data = array() ) { + $this->_cartHelper = $cartHelper; $this->_catalogUrlBuilder = $catalogUrlBuilder; parent::__construct($context, $catalogData, $customerSession, $checkoutSession, $data); } @@ -168,7 +176,7 @@ public function getContinueShoppingUrl() */ public function getIsVirtual() { - return $this->helper('Magento\Checkout\Helper\Cart')->getIsVirtualQuote(); + return $this->_cartHelper->getIsVirtualQuote(); } /** diff --git a/app/code/Magento/Checkout/Block/Cart/Crosssell.php b/app/code/Magento/Checkout/Block/Cart/Crosssell.php index 5dd3441363c7f..008408c04e62c 100644 --- a/app/code/Magento/Checkout/Block/Cart/Crosssell.php +++ b/app/code/Magento/Checkout/Block/Cart/Crosssell.php @@ -69,6 +69,11 @@ class Crosssell extends \Magento\Catalog\Block\Product\AbstractProduct * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Math\Random $mathRandom + * @param \Magento\Checkout\Helper\Cart $cartHelper + * @param \Magento\Wishlist\Helper\Data $wishlistHelper + * @param \Magento\Catalog\Helper\Product\Compare $compareProduct + * @param \Magento\Theme\Helper\Layout $layoutHelper + * @param \Magento\Catalog\Helper\Image $imageHelper * @param \Magento\Checkout\Model\Session $checkoutSession * @param \Magento\Catalog\Model\Product\Visibility $productVisibility * @param \Magento\CatalogInventory\Model\Stock $stock @@ -84,6 +89,11 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Catalog\Helper\Data $catalogData, \Magento\Math\Random $mathRandom, + \Magento\Checkout\Helper\Cart $cartHelper, + \Magento\Wishlist\Helper\Data $wishlistHelper, + \Magento\Catalog\Helper\Product\Compare $compareProduct, + \Magento\Theme\Helper\Layout $layoutHelper, + \Magento\Catalog\Helper\Image $imageHelper, \Magento\Checkout\Model\Session $checkoutSession, \Magento\Catalog\Model\Product\Visibility $productVisibility, \Magento\CatalogInventory\Model\Stock $stock, @@ -94,7 +104,20 @@ public function __construct( $this->_productVisibility = $productVisibility; $this->_stock = $stock; $this->_productLinkFactory = $productLinkFactory; - parent::__construct($context, $catalogConfig, $registry, $taxData, $catalogData, $mathRandom, $data); + parent::__construct( + $context, + $catalogConfig, + $registry, + $taxData, + $catalogData, + $mathRandom, + $cartHelper, + $wishlistHelper, + $compareProduct, + $layoutHelper, + $imageHelper, + $data + ); } /** diff --git a/app/code/Magento/Checkout/Block/Cart/Item/Renderer.php b/app/code/Magento/Checkout/Block/Cart/Item/Renderer.php index 5f566c2feab85..ac5e7c930857b 100644 --- a/app/code/Magento/Checkout/Block/Cart/Item/Renderer.php +++ b/app/code/Magento/Checkout/Block/Cart/Item/Renderer.php @@ -65,20 +65,44 @@ class Renderer extends \Magento\View\Element\Template */ protected $_productConfig = null; + /** + * @var \Magento\Catalog\Helper\Image + */ + protected $_imageHelper; + + /** + * @var \Magento\Core\Helper\Url + */ + protected $_urlHelper; + + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Catalog\Helper\Product\Configuration $productConfig * @param \Magento\Checkout\Model\Session $checkoutSession + * @param \Magento\Catalog\Helper\Image $imageHelper + * @param \Magento\Core\Helper\Url $urlHelper + * @param \Magento\Message\ManagerInterface $messageManager * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Catalog\Helper\Product\Configuration $productConfig, \Magento\Checkout\Model\Session $checkoutSession, + \Magento\Catalog\Helper\Image $imageHelper, + \Magento\Core\Helper\Url $urlHelper, + \Magento\Message\ManagerInterface $messageManager, array $data = array() ) { + $this->_urlHelper = $urlHelper; + $this->_imageHelper = $imageHelper; $this->_productConfig = $productConfig; $this->_checkoutSession = $checkoutSession; + $this->messageManager = $messageManager; parent::__construct($context, $data); } @@ -138,7 +162,7 @@ protected function _getThumbnail() $product = $children[0]->getProduct(); } } - $thumbnail = $this->helper('Magento\Catalog\Helper\Image')->init($product, 'thumbnail'); + $thumbnail = $this->_imageHelper->init($product, 'thumbnail'); } else { $thumbnail = $this->_productThumbnail; } @@ -309,7 +333,7 @@ public function getDeleteUrl() return $this->getData('delete_url'); } - $encodedUrl = $this->helper('Magento\Core\Helper\Url')->getEncodedUrl(); + $encodedUrl = $this->_urlHelper->getEncodedUrl(); return $this->getUrl( 'checkout/cart/delete', array( @@ -356,7 +380,7 @@ public function getMessages() $messages = array(); $quoteItem = $this->getItem(); - // Add basic messages occuring during this page load + // Add basic messages occurring during this page load $baseMessages = $quoteItem->getMessage(false); if ($baseMessages) { foreach ($baseMessages as $message) { @@ -367,22 +391,19 @@ public function getMessages() } } - // Add messages saved previously in checkout session - $checkoutSession = $this->getCheckoutSession(); - if ($checkoutSession) { - /* @var $collection \Magento\Message\Collection */ - $collection = $checkoutSession->getQuoteItemMessages($quoteItem->getId(), true); - if ($collection) { - $additionalMessages = $collection->getItems(); - foreach ($additionalMessages as $message) { - /* @var $message \Magento\Message\AbstractMessage */ - $messages[] = array( - 'text' => $message->getCode(), - 'type' => ($message->getType() == \Magento\Message\Factory::ERROR) ? 'error' : 'notice' - ); - } + /* @var $collection \Magento\Message\Collection */ + $collection = $this->messageManager->getMessages('quote_item' . $quoteItem->getId()); + if ($collection) { + $additionalMessages = $collection->getItems(); + foreach ($additionalMessages as $message) { + /* @var $message \Magento\Message\MessageInterface */ + $messages[] = array( + 'text' => $message->getText(), + 'type' => $message->getType() + ); } } + $this->messageManager->getMessages('quote_item' . $quoteItem->getId())->clear(); return $messages; } diff --git a/app/code/Magento/Checkout/Block/Cart/Item/Renderer/Configurable.php b/app/code/Magento/Checkout/Block/Cart/Item/Renderer/Configurable.php index 9e68d55c65ba8..b1d07b28f047a 100644 --- a/app/code/Magento/Checkout/Block/Cart/Item/Renderer/Configurable.php +++ b/app/code/Magento/Checkout/Block/Cart/Item/Renderer/Configurable.php @@ -77,7 +77,7 @@ public function getProductThumbnail() || ($this->_storeConfig->getConfig(self::CONFIGURABLE_PRODUCT_IMAGE) == self::USE_PARENT_IMAGE)) { $product = $this->getProduct(); } - return $this->helper('Magento\Catalog\Helper\Image')->init($product, 'thumbnail'); + return $this->_imageHelper->init($product, 'thumbnail'); } /** diff --git a/app/code/Magento/Checkout/Block/Cart/Item/Renderer/Grouped.php b/app/code/Magento/Checkout/Block/Cart/Item/Renderer/Grouped.php index b38efed7f329b..6ebd93f06f87f 100644 --- a/app/code/Magento/Checkout/Block/Cart/Item/Renderer/Grouped.php +++ b/app/code/Magento/Checkout/Block/Cart/Item/Renderer/Grouped.php @@ -61,11 +61,11 @@ public function getProductThumbnail() { $product = $this->getProduct(); if (!$product->getData('thumbnail') - ||($product->getData('thumbnail') == 'no_selection') + || ($product->getData('thumbnail') == 'no_selection') || ($this->_storeConfig->getConfig(self::GROUPED_PRODUCT_IMAGE) == self::USE_PARENT_IMAGE)) { $product = $this->getGroupedProduct(); } - return $this->helper('Magento\Catalog\Helper\Image')->init($product, 'thumbnail'); + return $this->_imageHelper->init($product, 'thumbnail'); } /** @@ -79,10 +79,8 @@ protected function _toHtml() { $renderer = $this->getRenderedBlock()->getItemRenderer($this->getItem()->getRealProductType()); $renderer->setItem($this->getItem()); -// $renderer->overrideProductUrl($this->getProductUrl()); $renderer->overrideProductThumbnail($this->getProductThumbnail()); $rendererHtml = $renderer->toHtml(); -// $renderer->overrideProductUrl(null); $renderer->overrideProductThumbnail(null); return $rendererHtml; } diff --git a/app/code/Magento/Checkout/Block/Cart/Link.php b/app/code/Magento/Checkout/Block/Cart/Link.php index def77100868dd..e8dfbcdefe981 100644 --- a/app/code/Magento/Checkout/Block/Cart/Link.php +++ b/app/code/Magento/Checkout/Block/Cart/Link.php @@ -34,16 +34,24 @@ class Link extends \Magento\View\Element\Html\Link */ protected $_moduleManager; + /** + * @var \Magento\Checkout\Helper\Cart + */ + protected $_cartHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Module\Manager $moduleManager + * @param \Magento\Checkout\Helper\Cart $cartHelper * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Module\Manager $moduleManager, + \Magento\Checkout\Helper\Cart $cartHelper, array $data = array() ) { + $this->_cartHelper = $cartHelper; parent::__construct($context, $data); $this->_moduleManager = $moduleManager; } @@ -85,7 +93,7 @@ protected function _toHtml() protected function _getItemCount() { $count = $this->getSummaryQty(); - return $count ? $count : $this->helper('Magento\Checkout\Helper\Cart')->getSummaryCount(); + return $count ? $count : $this->_cartHelper->getSummaryCount(); } /** diff --git a/app/code/Magento/Checkout/Block/Cart/Shipping.php b/app/code/Magento/Checkout/Block/Cart/Shipping.php index 69db0dc596839..26d092f3697b9 100644 --- a/app/code/Magento/Checkout/Block/Cart/Shipping.php +++ b/app/code/Magento/Checkout/Block/Cart/Shipping.php @@ -52,12 +52,18 @@ class Shipping extends \Magento\Checkout\Block\Cart\AbstractCart */ protected $_directoryBlock; + /** + * @var \Magento\Tax\Helper\Data + */ + protected $_taxHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Customer\Model\Session $customerSession * @param \Magento\Checkout\Model\Session $checkoutSession * @param \Magento\Directory\Block\Data $directoryBlock + * @param \Magento\Tax\Helper\Data $taxHelper * @param array $data */ public function __construct( @@ -66,8 +72,10 @@ public function __construct( \Magento\Customer\Model\Session $customerSession, \Magento\Checkout\Model\Session $checkoutSession, \Magento\Directory\Block\Data $directoryBlock, + \Magento\Tax\Helper\Data $taxHelper, array $data = array() ) { + $this->_taxHelper = $taxHelper; $this->_directoryBlock = $directoryBlock; parent::__construct($context, $catalogData, $customerSession, $checkoutSession, $data); } @@ -235,7 +243,7 @@ public function formatPrice($price) */ public function getShippingPrice($price, $flag) { - return $this->formatPrice($this->helper('Magento\Tax\Helper\Data')->getShippingPrice( + return $this->formatPrice($this->_taxHelper->getShippingPrice( $price, $flag, $this->getAddress(), diff --git a/app/code/Magento/Checkout/Block/Cart/Sidebar.php b/app/code/Magento/Checkout/Block/Cart/Sidebar.php index 987a42c627167..32807c3eb69d8 100644 --- a/app/code/Magento/Checkout/Block/Cart/Sidebar.php +++ b/app/code/Magento/Checkout/Block/Cart/Sidebar.php @@ -60,6 +60,16 @@ class Sidebar extends \Magento\Checkout\Block\Cart\AbstractCart */ protected $_checkoutCart; + /** + * @var \Magento\Checkout\Helper\Data + */ + protected $_checkoutHelper; + + /** + * @var \Magento\Checkout\Helper\Url + */ + protected $_urlHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Catalog\Helper\Data $catalogData @@ -69,7 +79,11 @@ class Sidebar extends \Magento\Checkout\Block\Cart\AbstractCart * @param \Magento\Catalog\Model\Resource\Url $catalogUrl * @param \Magento\Tax\Model\Config $taxConfig * @param \Magento\Checkout\Model\Cart $checkoutCart + * @param \Magento\Checkout\Helper\Data $checkoutHelper + * @param \Magento\Checkout\Helper\Url $urlHelper * @param array $data + * + * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\View\Element\Template\Context $context, @@ -80,8 +94,12 @@ public function __construct( \Magento\Catalog\Model\Resource\Url $catalogUrl, \Magento\Tax\Model\Config $taxConfig, \Magento\Checkout\Model\Cart $checkoutCart, + \Magento\Checkout\Helper\Data $checkoutHelper, + \Magento\Checkout\Helper\Url $urlHelper, array $data = array() ) { + $this->_urlHelper = $urlHelper; + $this->_checkoutHelper = $checkoutHelper; $this->_taxData = $taxData; $this->_catalogUrl = $catalogUrl; $this->_taxConfig = $taxConfig; @@ -251,7 +269,7 @@ public function getIncExcTax($flag) */ public function isPossibleOnepageCheckout() { - return $this->helper('Magento\Checkout\Helper\Data')->canOnepageCheckout() && !$this->getQuote()->getHasError(); + return $this->_checkoutHelper->canOnepageCheckout() && !$this->getQuote()->getHasError(); } /** @@ -261,7 +279,7 @@ public function isPossibleOnepageCheckout() */ public function getCheckoutUrl() { - return $this->helper('Magento\Checkout\Helper\Url')->getCheckoutUrl(); + return $this->_urlHelper->getCheckoutUrl(); } /** diff --git a/app/code/Magento/Checkout/Block/Link.php b/app/code/Magento/Checkout/Block/Link.php index 514e179730e4d..6e549ee9cc849 100644 --- a/app/code/Magento/Checkout/Block/Link.php +++ b/app/code/Magento/Checkout/Block/Link.php @@ -34,16 +34,24 @@ class Link extends \Magento\View\Element\Html\Link */ protected $_moduleManager; + /** + * @var \Magento\Checkout\Helper\Data + */ + protected $_checkoutHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Module\Manager $moduleManager + * @param \Magento\Checkout\Helper\Data $checkoutHelper * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Module\Manager $moduleManager, + \Magento\Checkout\Helper\Data $checkoutHelper, array $data = array() ) { + $this->_checkoutHelper = $checkoutHelper; parent::__construct($context, $data); $this->_moduleManager = $moduleManager; } @@ -63,7 +71,7 @@ public function getHref() */ protected function _toHtml() { - if (!$this->helper('Magento\Checkout\Helper\Data')->canOnepageCheckout() + if (!$this->_checkoutHelper->canOnepageCheckout() || !$this->_moduleManager->isOutputEnabled('Magento_Checkout') ) { return ''; diff --git a/app/code/Magento/Checkout/Block/Multishipping/Billing.php b/app/code/Magento/Checkout/Block/Multishipping/Billing.php index b20101e87c147..dbd4b1214b84f 100644 --- a/app/code/Magento/Checkout/Block/Multishipping/Billing.php +++ b/app/code/Magento/Checkout/Block/Multishipping/Billing.php @@ -47,19 +47,21 @@ class Billing extends \Magento\Payment\Block\Form\Container /** * @param \Magento\View\Element\Template\Context $context + * @param \Magento\Payment\Helper\Data $paymentHelper * @param \Magento\Checkout\Model\Type\Multishipping $multishipping * @param \Magento\Checkout\Model\Session $checkoutSession * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, + \Magento\Payment\Helper\Data $paymentHelper, \Magento\Checkout\Model\Type\Multishipping $multishipping, \Magento\Checkout\Model\Session $checkoutSession, array $data = array() ) { $this->_multishipping = $multishipping; $this->_checkoutSession = $checkoutSession; - parent::__construct($context, $data); + parent::__construct($context, $paymentHelper, $data); } /** diff --git a/app/code/Magento/Checkout/Block/Multishipping/Overview.php b/app/code/Magento/Checkout/Block/Multishipping/Overview.php index c802ed645d5e8..22cff2ccb5761 100644 --- a/app/code/Magento/Checkout/Block/Multishipping/Overview.php +++ b/app/code/Magento/Checkout/Block/Multishipping/Overview.php @@ -45,16 +45,24 @@ class Overview extends \Magento\Sales\Block\Items\AbstractItems */ protected $_multishipping; + /** + * @var \Magento\Tax\Helper\Data + */ + protected $_taxHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Checkout\Model\Type\Multishipping $multishipping + * @param \Magento\Tax\Helper\Data $taxHelper * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Checkout\Model\Type\Multishipping $multishipping, + \Magento\Tax\Helper\Data $taxHelper, array $data = array() ) { + $this->_taxHelper = $taxHelper; $this->_multishipping = $multishipping; parent::__construct($context, $data); } @@ -335,7 +343,7 @@ public function getBillinAddressTotals() public function renderTotals($totals, $colspan = null) { if ($colspan === null) { - $colspan = $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices() ? 5 : 3; + $colspan = $this->_taxHelper->displayCartBothPrices() ? 5 : 3; } $totals = $this->getChildBlock('totals')->setTotals($totals)->renderTotals('', $colspan) . $this->getChildBlock('totals')->setTotals($totals)->renderTotals('footer', $colspan); diff --git a/app/code/Magento/Checkout/Block/Multishipping/Shipping.php b/app/code/Magento/Checkout/Block/Multishipping/Shipping.php index 0296a7268dac3..524c87b920053 100644 --- a/app/code/Magento/Checkout/Block/Multishipping/Shipping.php +++ b/app/code/Magento/Checkout/Block/Multishipping/Shipping.php @@ -40,18 +40,26 @@ class Shipping extends \Magento\Sales\Block\Items\AbstractItems */ protected $_filterGridFactory; + /** + * @var \Magento\Tax\Helper\Data + */ + protected $_taxHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Filter\Object\GridFactory $filterGridFactory * @param \Magento\Checkout\Model\Type\Multishipping $multishipping + * @param \Magento\Tax\Helper\Data $taxHelper * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Filter\Object\GridFactory $filterGridFactory, \Magento\Checkout\Model\Type\Multishipping $multishipping, + \Magento\Tax\Helper\Data $taxHelper, array $data = array() ) { + $this->_taxHelper = $taxHelper; $this->_filterGridFactory = $filterGridFactory; $this->_multishipping = $multishipping; parent::__construct($context, $data); @@ -146,6 +154,6 @@ public function getBackUrl() public function getShippingPrice($address, $price, $flag) { - return $address->getQuote()->getStore()->convertPrice($this->helper('Magento\Tax\Helper\Data')->getShippingPrice($price, $flag, $address), true); + return $address->getQuote()->getStore()->convertPrice($this->_taxHelper->getShippingPrice($price, $flag, $address), true); } } diff --git a/app/code/Magento/Checkout/Block/Onepage/Link.php b/app/code/Magento/Checkout/Block/Onepage/Link.php index 8dc1f7aed72df..e75c1024fb6e6 100644 --- a/app/code/Magento/Checkout/Block/Onepage/Link.php +++ b/app/code/Magento/Checkout/Block/Onepage/Link.php @@ -40,16 +40,24 @@ class Link extends \Magento\View\Element\Template */ protected $_checkoutSession; + /** + * @var \Magento\Checkout\Helper\Data + */ + protected $_checkoutHelper; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Checkout\Model\Session $checkoutSession + * @param \Magento\Checkout\Helper\Data $checkoutHelper * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, \Magento\Checkout\Model\Session $checkoutSession, + \Magento\Checkout\Helper\Data $checkoutHelper, array $data = array() ) { + $this->_checkoutHelper = $checkoutHelper; $this->_checkoutSession = $checkoutSession; parent::__construct($context, $data); } @@ -75,6 +83,6 @@ public function isDisabled() */ public function isPossibleOnepageCheckout() { - return $this->helper('Magento\Checkout\Helper\Data')->canOnepageCheckout(); + return $this->_checkoutHelper->canOnepageCheckout(); } } diff --git a/app/code/Magento/Checkout/Block/Onepage/Login.php b/app/code/Magento/Checkout/Block/Onepage/Login.php index 014b453f18c53..06964ac102a8a 100644 --- a/app/code/Magento/Checkout/Block/Onepage/Login.php +++ b/app/code/Magento/Checkout/Block/Onepage/Login.php @@ -43,6 +43,11 @@ class Login extends \Magento\Checkout\Block\Onepage\AbstractOnepage */ protected $_checkoutData = null; + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * @param \Magento\View\Element\Template\Context $context * @param \Magento\Core\Helper\Data $coreData @@ -52,6 +57,7 @@ class Login extends \Magento\Checkout\Block\Onepage\AbstractOnepage * @param \Magento\Directory\Model\Resource\Country\CollectionFactory $countryCollFactory * @param \Magento\Directory\Model\Resource\Region\CollectionFactory $regionCollFactory * @param \Magento\Checkout\Helper\Data $checkoutData + * @param \Magento\Message\ManagerInterface $messageManager * @param array $data */ public function __construct( @@ -63,10 +69,12 @@ public function __construct( \Magento\Directory\Model\Resource\Country\CollectionFactory $countryCollFactory, \Magento\Directory\Model\Resource\Region\CollectionFactory $regionCollFactory, \Magento\Checkout\Helper\Data $checkoutData, + \Magento\Message\ManagerInterface $messageManager, array $data = array() ) { $this->_checkoutData = $checkoutData; + $this->messageManager = $messageManager; parent::__construct( $context, $coreData, @@ -89,7 +97,7 @@ protected function _construct() public function getMessages() { - return $this->_customerSession->getMessages(true); + return $this->messageManager->getMessages(true); } public function getPostAction() diff --git a/app/code/Magento/Checkout/Block/Onepage/Payment/Methods.php b/app/code/Magento/Checkout/Block/Onepage/Payment/Methods.php index d3fe6ff7250fb..53df60c30979e 100644 --- a/app/code/Magento/Checkout/Block/Onepage/Payment/Methods.php +++ b/app/code/Magento/Checkout/Block/Onepage/Payment/Methods.php @@ -43,16 +43,18 @@ class Methods extends \Magento\Payment\Block\Form\Container /** * @param \Magento\View\Element\Template\Context $context + * @param \Magento\Payment\Helper\Data $paymentHelper * @param \Magento\Checkout\Model\Session $checkoutSession * @param array $data */ public function __construct( \Magento\View\Element\Template\Context $context, + \Magento\Payment\Helper\Data $paymentHelper, \Magento\Checkout\Model\Session $checkoutSession, array $data = array() ) { $this->_checkoutSession = $checkoutSession; - parent::__construct($context, $data); + parent::__construct($context, $paymentHelper, $data); } /** diff --git a/app/code/Magento/Checkout/Controller/Action.php b/app/code/Magento/Checkout/Controller/Action.php index 134ef1794b111..ea1a2c5f0a7da 100644 --- a/app/code/Magento/Checkout/Controller/Action.php +++ b/app/code/Magento/Checkout/Controller/Action.php @@ -65,7 +65,7 @@ protected function _preDispatchValidateCustomer($redirect = true, $addErrors = t if ((true !== $validationResult) && is_array($validationResult)) { if ($addErrors) { foreach ($validationResult as $error) { - $this->_customerSession->addError($error); + $this->messageManager->addError($error); } } if ($redirect) { diff --git a/app/code/Magento/Checkout/Controller/Adminhtml/Agreement.php b/app/code/Magento/Checkout/Controller/Adminhtml/Agreement.php index 533ad31afa8ae..05a58fea136e5 100644 --- a/app/code/Magento/Checkout/Controller/Adminhtml/Agreement.php +++ b/app/code/Magento/Checkout/Controller/Adminhtml/Agreement.php @@ -56,7 +56,6 @@ public function indexAction() $this->_view->getLayout()->createBlock('Magento\Checkout\Block\Adminhtml\Agreement') ); $this->_view->renderLayout(); - return $this; } public function newAction() @@ -74,9 +73,7 @@ public function editAction() if ($id) { $agreementModel->load($id); if (!$agreementModel->getId()) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError( - __('This condition no longer exists.') - ); + $this->messageManager->addError(__('This condition no longer exists.')); $this->_redirect('checkout/*/'); return; } @@ -84,7 +81,7 @@ public function editAction() $this->_title->add($agreementModel->getId() ? $agreementModel->getName() : __('New Condition')); - $data = $this->_objectManager->get('Magento\Adminhtml\Model\Session')->getAgreementData(true); + $data = $this->_objectManager->get('Magento\Backend\Model\Session')->getAgreementData(true); if (!empty($data)) { $agreementModel->setData($data); } @@ -114,17 +111,17 @@ public function saveAction() try { $model->save(); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess(__('The condition has been saved.')); + $this->messageManager->addSuccess(__('The condition has been saved.')); $this->_redirect('checkout/*/'); return; } catch (\Magento\Core\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError(__('Something went wrong while saving this condition.')); + $this->messageManager->addError(__('Something went wrong while saving this condition.')); } - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->setAgreementData($postData); + $this->_objectManager->get('Magento\Backend\Model\Session')->setAgreementData($postData); $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl($this->getUrl('*'))); } } @@ -135,20 +132,20 @@ public function deleteAction() $model = $this->_objectManager->get('Magento\Checkout\Model\Agreement') ->load($id); if (!$model->getId()) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError(__('This condition no longer exists.')); + $this->messageManager->addError(__('This condition no longer exists.')); $this->_redirect('checkout/*/'); return; } try { $model->delete(); - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addSuccess(__('The condition has been deleted.')); + $this->messageManager->addSuccess(__('The condition has been deleted.')); $this->_redirect('checkout/*/'); return; } catch (\Magento\Core\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_objectManager->get('Magento\Adminhtml\Model\Session')->addError(__('Something went wrong while deleting this condition.')); + $this->messageManager->addError(__('Something went wrong while deleting this condition.')); } $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl($this->getUrl('*'))); diff --git a/app/code/Magento/Checkout/Controller/Cart.php b/app/code/Magento/Checkout/Controller/Cart.php index abc32c9735e44..b20c725d99ccb 100644 --- a/app/code/Magento/Checkout/Controller/Cart.php +++ b/app/code/Magento/Checkout/Controller/Cart.php @@ -48,6 +48,11 @@ class Cart */ protected $_storeManager; + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * @param \Magento\App\Action\Context $context * @param \Magento\Core\Model\Store\ConfigInterface $storeConfig @@ -95,7 +100,7 @@ protected function _goBack() { $returnUrl = $this->getRequest()->getParam('return_url'); if ($returnUrl && $this->_isInternalUrl($returnUrl)) { - $this->_checkoutSession->getMessages(true); + $this->messageManager->getMessages()->clear(); $this->getResponse()->setRedirect($returnUrl); } elseif (!$this->_storeConfig->getConfig('checkout/cart/redirect_to_cart') && !$this->getRequest()->getParam('in_cart') @@ -152,20 +157,21 @@ public function indexAction() ? $this->_storeConfig->getConfig('sales/minimum_order/description') : __('Minimum order amount is %1', $minimumAmount); - $cart->getCheckoutSession()->addNotice($warning); + $this->messageManager->addNotice($warning); } } // Compose array of messages to add $messages = array(); + /** @var \Magento\Message\MessageInterface $message */ foreach ($cart->getQuote()->getMessages() as $message) { if ($message) { // Escape HTML entities in quote message to prevent XSS - $message->setCode($this->_objectManager->get('Magento\Escaper')->escapeHtml($message->getCode())); + $message->setText($this->_objectManager->get('Magento\Escaper')->escapeHtml($message->getText())); $messages[] = $message; } } - $cart->getCheckoutSession()->addUniqueMessages($messages); + $this->messageManager->addUniqueMessages($messages); /** * if customer enteres shopping cart we should mark quote @@ -174,11 +180,10 @@ public function indexAction() $this->_checkoutSession->setCartWasUpdated(true); \Magento\Profiler::start(__METHOD__ . 'cart_display'); - $messageStores = array('Magento\Checkout\Model\Session', 'Magento\Catalog\Model\Session'); $this->_view->loadLayout(); $layout = $this->_view->getLayout(); - $layout->initMessages($messageStores); + $layout->initMessages(); $layout->getBlock('head')->setTitle(__('Shopping Cart')); $this->_view->renderLayout(); \Magento\Profiler::stop(__METHOD__ . 'cart_display'); @@ -229,17 +234,19 @@ public function addAction() if (!$this->_checkoutSession->getNoCartRedirect(true)) { if (!$cart->getQuote()->getHasError()){ $message = __('You added %1 to your shopping cart.', $this->_objectManager->get('Magento\Escaper')->escapeHtml($product->getName())); - $this->_checkoutSession->addSuccess($message); + $this->messageManager->addSuccess($message); } $this->_goBack(); } } catch (\Magento\Core\Exception $e) { if ($this->_checkoutSession->getUseNotice(true)) { - $this->_checkoutSession->addNotice($this->_objectManager->get('Magento\Escaper')->escapeHtml($e->getMessage())); + $this->messageManager->addNotice( + $this->_objectManager->get('Magento\Escaper')->escapeHtml($e->getMessage()) + ); } else { $messages = array_unique(explode("\n", $e->getMessage())); foreach ($messages as $message) { - $this->_checkoutSession->addError( + $this->messageManager->addError( $this->_objectManager->get('Magento\Escaper')->escapeHtml($message) ); } @@ -253,7 +260,7 @@ public function addAction() $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl($cartUrl)); } } catch (\Exception $e) { - $this->_checkoutSession->addException($e, __('We cannot add this item to your shopping cart')); + $this->messageManager->addException($e, __('We cannot add this item to your shopping cart')); $this->_objectManager->get('Magento\Logger')->logException($e); $this->_goBack(); } @@ -274,12 +281,12 @@ public function addgroupAction() $cart->addOrderItem($item, 1); } catch (\Magento\Core\Exception $e) { if ($this->_checkoutSession->getUseNotice(true)) { - $this->_checkoutSession->addNotice($e->getMessage()); + $this->messageManager->addNotice($e->getMessage()); } else { - $this->_checkoutSession->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } } catch (\Exception $e) { - $this->_checkoutSession->addException($e, __('We cannot add this item to your shopping cart')); + $this->messageManager->addException($e, __('We cannot add this item to your shopping cart')); $this->_objectManager->get('Magento\Logger')->logException($e); $this->_goBack(); } @@ -304,7 +311,7 @@ public function configureAction() } if (!$quoteItem) { - $this->_checkoutSession->addError(__("We can't find the quote item.")); + $this->messageManager->addError(__("We can't find the quote item.")); $this->_redirect('checkout/cart'); return; } @@ -319,7 +326,7 @@ public function configureAction() $quoteItem->getProduct()->getId(), $this, $params ); } catch (\Exception $e) { - $this->_checkoutSession->addError(__('We cannot configure the product.')); + $this->messageManager->addError(__('We cannot configure the product.')); $this->_objectManager->get('Magento\Logger')->logException($e); $this->_goBack(); return; @@ -373,18 +380,21 @@ public function updateItemOptionsAction() ); if (!$this->_checkoutSession->getNoCartRedirect(true)) { if (!$cart->getQuote()->getHasError()){ - $message = __('%1 was updated in your shopping cart.', $this->_objectManager->get('Magento\Escaper')->escapeHtml($item->getProduct()->getName())); - $this->_checkoutSession->addSuccess($message); + $message = __( + '%1 was updated in your shopping cart.', + $this->_objectManager->get('Magento\Escaper')->escapeHtml($item->getProduct()->getName()) + ); + $this->messageManager->addSuccess($message); } $this->_goBack(); } } catch (\Magento\Core\Exception $e) { if ($this->_checkoutSession->getUseNotice(true)) { - $this->_checkoutSession->addNotice($e->getMessage()); + $this->messageManager->addNotice($e->getMessage()); } else { $messages = array_unique(explode("\n", $e->getMessage())); foreach ($messages as $message) { - $this->_checkoutSession->addError($message); + $this->messageManager->addError($message); } } @@ -396,7 +406,7 @@ public function updateItemOptionsAction() $this->getResponse()->setRedirect($this->_redirect->getRedirectUrl($cartUrl)); } } catch (\Exception $e) { - $this->_checkoutSession->addException($e, __('We cannot update the item.')); + $this->messageManager->addException($e, __('We cannot update the item.')); $this->_objectManager->get('Magento\Logger')->logException($e); $this->_goBack(); } @@ -451,9 +461,9 @@ protected function _updateShoppingCart() } $this->_checkoutSession->setCartWasUpdated(true); } catch (\Magento\Core\Exception $e) { - $this->_checkoutSession->addError($this->_objectManager->get('Magento\Escaper')->escapeHtml($e->getMessage())); + $this->messageManager->addError($this->_objectManager->get('Magento\Escaper')->escapeHtml($e->getMessage())); } catch (\Exception $e) { - $this->_checkoutSession->addException($e, __('We cannot update the shopping cart.')); + $this->messageManager->addException($e, __('We cannot update the shopping cart.')); $this->_objectManager->get('Magento\Logger')->logException($e); } } @@ -467,9 +477,9 @@ protected function _emptyShoppingCart() $this->_getCart()->truncate()->save(); $this->_checkoutSession->setCartWasUpdated(true); } catch (\Magento\Core\Exception $exception) { - $this->_checkoutSession->addError($exception->getMessage()); + $this->messageManager->addError($exception->getMessage()); } catch (\Exception $exception) { - $this->_checkoutSession->addException($exception, __('We cannot update the shopping cart.')); + $this->messageManager->addException($exception, __('We cannot update the shopping cart.')); } } @@ -484,7 +494,7 @@ public function deleteAction() $this->_getCart()->removeItem($id) ->save(); } catch (\Exception $e) { - $this->_checkoutSession->addError(__('We cannot remove the item.')); + $this->messageManager->addError(__('We cannot remove the item.')); $this->_objectManager->get('Magento\Logger')->logException($e); } } @@ -557,22 +567,28 @@ public function couponPostAction() if ($codeLength) { if ($isCodeLengthValid && $couponCode == $this->_getQuote()->getCouponCode()) { - $this->_checkoutSession->addSuccess( - __('The coupon code "%1" was applied.', $this->_objectManager->get('Magento\Escaper')->escapeHtml($couponCode)) + $this->messageManager->addSuccess( + __( + 'The coupon code "%1" was applied.', + $this->_objectManager->get('Magento\Escaper')->escapeHtml($couponCode) + ) ); } else { - $this->_checkoutSession->addError( - __('The coupon code "%1" is not valid.', $this->_objectManager->get('Magento\Escaper')->escapeHtml($couponCode)) + $this->messageManager->addError( + __( + 'The coupon code "%1" is not valid.', + $this->_objectManager->get('Magento\Escaper')->escapeHtml($couponCode) + ) ); } } else { - $this->_checkoutSession->addSuccess(__('The coupon code was canceled.')); + $this->messageManager->addSuccess(__('The coupon code was canceled.')); } } catch (\Magento\Core\Exception $e) { - $this->_checkoutSession->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); } catch (\Exception $e) { - $this->_checkoutSession->addError(__('We cannot apply the coupon code.')); + $this->messageManager->addError(__('We cannot apply the coupon code.')); $this->_objectManager->get('Magento\Logger')->logException($e); } diff --git a/app/code/Magento/Checkout/Controller/Multishipping.php b/app/code/Magento/Checkout/Controller/Multishipping.php index cc24334a6ee55..3b9a4a0b35baf 100644 --- a/app/code/Magento/Checkout/Controller/Multishipping.php +++ b/app/code/Magento/Checkout/Controller/Multishipping.php @@ -95,12 +95,12 @@ public function __construct( parent::__construct($context, $customerSession); $this->_urlBuilder = $urlBuilder; } - + /** * Dispatch request * * @param RequestInterface $request - * @return $this|mixed + * @return \Magento\App\ResponseInterface */ public function dispatch(RequestInterface $request) { @@ -136,7 +136,7 @@ public function dispatch(RequestInterface $request) if (!$this->_objectManager->get('Magento\Checkout\Helper\Data')->isMultishippingCheckoutAvailable()) { $error = $this->_getCheckout()->getMinimumAmountError(); - $this->_getCheckoutSession()->addError($error); + $this->messageManager->addError($error); $this->getResponse()->setRedirect($this->_getHelper()->getCartUrl()); $this->_actionFlag->set('', self::FLAG_NO_DISPATCH, true); return parent::dispatch($request); @@ -144,7 +144,7 @@ public function dispatch(RequestInterface $request) } if (!$this->_preDispatchValidateCustomer()) { - return $this; + return $this->getResponse(); } if ($this->_getCheckoutSession()->getCartWasUpdated(true) @@ -188,10 +188,10 @@ public function loginAction() } $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\Customer\Model\Session'); + $this->_view->getLayout()->initMessages(); // set account create url - $loginForm = $this->_view->getLayout()->getBlock('customer_form_login'); + $loginForm = $this->_view->getLayout()->getBlock('customer.new'); if ($loginForm) { $loginForm->setCreateAccountUrl($this->_getHelper()->getMSRegisterUrl()); } @@ -209,7 +209,7 @@ public function registerAction() } $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\Customer\Model\Session'); + $this->_view->getLayout()->initMessages(); $registerForm = $this->_view->getLayout()->getBlock('customer_form_register'); if ($registerForm) { @@ -242,11 +242,10 @@ public function addressesAction() ); if (!$this->_getCheckout()->validateMinimumAmount()) { $message = $this->_getCheckout()->getMinimumAmountDescription(); - $this->_getCheckout()->getCheckoutSession()->addNotice($message); + $this->messageManager->addNotice($message); } $this->_view->loadLayout(); - $messageStores = array('Magento\Customer\Model\Session', 'Magento\Checkout\Model\Session'); - $this->_view->getLayout()->initMessages($messageStores); + $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); } @@ -278,10 +277,10 @@ public function addressesPostAction() $this->_getCheckout()->setShippingItemsInformation($shipToInfo); } } catch (\Magento\Core\Exception $e) { - $this->_getCheckoutSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect('*/*/addresses'); } catch (\Exception $e) { - $this->_getCheckoutSession()->addException( + $this->messageManager->addException( $e, __('Data saving problem') ); @@ -323,7 +322,7 @@ protected function _validateMinimumAmount() { if (!$this->_getCheckout()->validateMinimumAmount()) { $error = $this->_getCheckout()->getMinimumAmountError(); - $this->_getCheckout()->getCheckoutSession()->addError($error); + $this->messageManager->addError($error); $this->_forward('backToAddresses'); return false; } @@ -340,16 +339,14 @@ public function shippingAction() } if (!$this->_getState()->getCompleteStep(\Magento\Checkout\Model\Type\Multishipping\State::STEP_SELECT_ADDRESSES)) { - $this->_redirect('*/*/addresses'); - return $this; + return $this->_redirect('*/*/addresses'); } $this->_getState()->setActiveStep( \Magento\Checkout\Model\Type\Multishipping\State::STEP_SHIPPING ); $this->_view->loadLayout(); - $messageStores = array('Magento\Customer\Model\Session', 'Magento\Checkout\Model\Session'); - $this->_view->getLayout()->initMessages($messageStores); + $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); } @@ -381,7 +378,7 @@ public function shippingPostAction() ); $this->_redirect('*/*/billing'); } catch (\Exception $e) { - $this->_getCheckoutSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect('*/*/shipping'); } } @@ -400,8 +397,7 @@ public function billingAction() } if (!$this->_getState()->getCompleteStep(\Magento\Checkout\Model\Type\Multishipping\State::STEP_SHIPPING)) { - $this->_redirect('*/*/shipping'); - return $this; + return $this->_redirect('*/*/shipping'); } $this->_getState()->setActiveStep( @@ -409,8 +405,7 @@ public function billingAction() ); $this->_view->loadLayout(); - $messageStores = array('Magento\Customer\Model\Session', 'Magento\Checkout\Model\Session'); - $this->_view->getLayout()->initMessages($messageStores); + $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); } @@ -448,7 +443,7 @@ public function backToBillingAction() public function overviewAction() { if (!$this->_validateMinimumAmount()) { - return $this; + return; } $this->_getState()->setActiveStep(\Magento\Checkout\Model\Type\Multishipping\State::STEP_OVERVIEW); @@ -467,15 +462,14 @@ public function overviewAction() ); $this->_view->loadLayout(); - $messageStores = array('Magento\Customer\Model\Session', 'Magento\Checkout\Model\Session'); - $this->_view->getLayout()->initMessages($messageStores); + $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); } catch (\Magento\Core\Exception $e) { - $this->_getCheckoutSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect('*/*/billing'); } catch (\Exception $e) { $this->_objectManager->get('Magento\Logger')->logException($e); - $this->_getCheckoutSession()->addException($e, __('We cannot open the overview page.')); + $this->messageManager->addException($e, __('We cannot open the overview page.')); $this->_redirect('*/*/billing'); } } @@ -495,7 +489,7 @@ public function overviewPostAction() $postedAgreements = array_keys($this->getRequest()->getPost('agreement', array())); $diff = array_diff($requiredAgreements, $postedAgreements); if ($diff) { - $this->_getCheckoutSession()->addError( + $this->messageManager->addError( __('Please agree to all Terms and Conditions before placing the order.') ); $this->_redirect('*/*/billing'); @@ -524,25 +518,25 @@ public function overviewPostAction() } catch (\Magento\Payment\Model\Info\Exception $e) { $message = $e->getMessage(); if (!empty($message)) { - $this->_getCheckoutSession()->addError($message); + $this->messageManager->addError($message); } $this->_redirect('*/*/billing'); } catch (\Magento\Checkout\Exception $e) { $this->_objectManager->get('Magento\Checkout\Helper\Data') ->sendPaymentFailedEmail($this->_getCheckout()->getQuote(), $e->getMessage(), 'multi-shipping'); $this->_getCheckout()->getCheckoutSession()->clearQuote(); - $this->_getCheckoutSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect('*/cart'); } catch (\Magento\Core\Exception $e) { $this->_objectManager->get('Magento\Checkout\Helper\Data') ->sendPaymentFailedEmail($this->_getCheckout()->getQuote(), $e->getMessage(), 'multi-shipping'); - $this->_getCheckoutSession()->addError($e->getMessage()); + $this->messageManager->addError($e->getMessage()); $this->_redirect('*/*/billing'); } catch (\Exception $e) { $this->_objectManager->get('Magento\Logger')->logException($e); $this->_objectManager->get('Magento\Checkout\Helper\Data') ->sendPaymentFailedEmail($this->_getCheckout()->getQuote(), $e->getMessage(), 'multi-shipping'); - $this->_getCheckoutSession()->addError(__('Order place error')); + $this->messageManager->addError(__('Order place error')); $this->_redirect('*/*/billing'); } } @@ -554,11 +548,11 @@ public function successAction() { if (!$this->_getState()->getCompleteStep(\Magento\Checkout\Model\Type\Multishipping\State::STEP_OVERVIEW)) { $this->_redirect('*/*/addresses'); - return $this; + return; } $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\Checkout\Model\Session'); + $this->_view->getLayout()->initMessages(); $ids = $this->_getCheckout()->getOrderIds(); $this->_eventManager->dispatch('checkout_multishipping_controller_success_action', array('order_ids' => $ids)); $this->_view->renderLayout(); diff --git a/app/code/Magento/Checkout/Controller/Multishipping/Address.php b/app/code/Magento/Checkout/Controller/Multishipping/Address.php index 7bf410342f9a8..af3ddc5631c6d 100644 --- a/app/code/Magento/Checkout/Controller/Multishipping/Address.php +++ b/app/code/Magento/Checkout/Controller/Multishipping/Address.php @@ -63,7 +63,7 @@ public function newShippingAction() { $this->_getState()->setActiveStep(\Magento\Checkout\Model\Type\Multishipping\State::STEP_SELECT_ADDRESSES); $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\Customer\Model\Session'); + $this->_view->getLayout()->initMessages(); if ($addressForm = $this->_view->getLayout()->getBlock('customer_address_edit')) { $addressForm->setTitle(__('Create Shipping Address')) ->setSuccessUrl($this->_url->getUrl('*/*/shippingSaved')) @@ -97,7 +97,7 @@ public function editShippingAction() { $this->_getState()->setActiveStep(\Magento\Checkout\Model\Type\Multishipping\State::STEP_SHIPPING); $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\Customer\Model\Session'); + $this->_view->getLayout()->initMessages(); if ($addressForm = $this->_view->getLayout()->getBlock('customer_address_edit')) { $addressForm->setTitle(__('Edit Shipping Address')) ->setSuccessUrl($this->_url->getUrl('*/*/editShippingPost', array('id'=>$this->getRequest()->getParam('id')))) @@ -127,15 +127,14 @@ public function selectBillingAction() { $this->_getState()->setActiveStep(\Magento\Checkout\Model\Type\Multishipping\State::STEP_BILLING); $this->_view->loadLayout(); - $messageStores = array('Magento\Customer\Model\Session', 'Magento\Catalog\Model\Session'); - $this->_view->getLayout()->initMessages($messageStores); + $this->_view->getLayout()->initMessages(); $this->_view->renderLayout(); } public function newBillingAction() { $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\Customer\Model\Session'); + $this->_view->getLayout()->initMessages(); if ($addressForm = $this->_view->getLayout()->getBlock('customer_address_edit')) { $addressForm->setTitle(__('Create Billing Address')) ->setSuccessUrl($this->_url->getUrl('*/*/selectBilling')) @@ -152,7 +151,7 @@ public function newBillingAction() public function editAddressAction() { $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\Customer\Model\Session'); + $this->_view->getLayout()->initMessages(); if ($addressForm = $this->_view->getLayout()->getBlock('customer_address_edit')) { $addressForm->setTitle(__('Edit Address')) ->setSuccessUrl($this->_url->getUrl('*/*/selectBilling')) @@ -172,7 +171,7 @@ public function editBillingAction() \Magento\Checkout\Model\Type\Multishipping\State::STEP_BILLING ); $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\Customer\Model\Session'); + $this->_view->getLayout()->initMessages(); if ($addressForm = $this->_view->getLayout()->getBlock('customer_address_edit')) { $addressForm->setTitle(__('Edit Billing Address')) ->setSuccessUrl($this->_url->getUrl('*/*/saveBilling', array('id'=>$this->getRequest()->getParam('id')))) diff --git a/app/code/Magento/Checkout/Controller/Onepage.php b/app/code/Magento/Checkout/Controller/Onepage.php index cda03409c4f1c..a4c774891874f 100644 --- a/app/code/Magento/Checkout/Controller/Onepage.php +++ b/app/code/Magento/Checkout/Controller/Onepage.php @@ -70,7 +70,7 @@ public function __construct( * Dispatch request * * @param RequestInterface $request - * @return mixed + * @return \Magento\App\ResponseInterface * @throws \Magento\App\Action\NotFoundException */ public function dispatch(RequestInterface $request) @@ -198,7 +198,7 @@ public function getOnepage() public function indexAction() { if (!$this->_objectManager->get('Magento\Checkout\Helper\Data')->canOnepageCheckout()) { - $this->_objectManager->get('Magento\Checkout\Model\Session')->addError(__('The onepage checkout is disabled.')); + $this->messageManager->addError(__('The onepage checkout is disabled.')); $this->_redirect('checkout/cart'); return; } @@ -212,7 +212,7 @@ public function indexAction() $this->_objectManager->get('Magento\Core\Model\Store\Config')->getConfig('sales/minimum_order/error_message') : __('Subtotal must exceed minimum order amount'); - $this->_objectManager->get('Magento\Checkout\Model\Session')->addError($error); + $this->messageManager->addError($error); $this->_redirect('checkout/cart'); return; } @@ -223,7 +223,7 @@ public function indexAction() $this->getOnepage()->initCheckout(); $this->_view->loadLayout(); $layout = $this->_view->getLayout(); - $layout->initMessages('Magento\Customer\Model\Session'); + $layout->initMessages(); $layout->getBlock('head')->setTitle(__('Checkout')); $this->_view->renderLayout(); } @@ -282,9 +282,10 @@ public function successAction() $session->clearQuote(); $this->_view->loadLayout(); - $this->_view->getLayout()->initMessages('Magento\Checkout\Model\Session'); + $this->_view->getLayout()->initMessages(); $this->_eventManager->dispatch( - 'checkout_onepage_controller_success_action', array('order_ids' => array($lastOrderId)) + 'checkout_onepage_controller_success_action', + array('order_ids' => array($lastOrderId)) ); $this->_view->renderLayout(); } diff --git a/app/code/Magento/Checkout/Model/Cart.php b/app/code/Magento/Checkout/Model/Cart.php index 8ec67fb6c1d48..a921cb2464d6f 100644 --- a/app/code/Magento/Checkout/Model/Cart.php +++ b/app/code/Magento/Checkout/Model/Cart.php @@ -89,9 +89,9 @@ class Cart extends \Magento\Object implements \Magento\Checkout\Model\Cart\CartI protected $_customerSession; /** - * @var \Magento\Message\Factory + * @var \Magento\Message\ManagerInterface */ - protected $messageFactory; + protected $messageManager; /** * @param \Magento\Event\ManagerInterface $eventManager @@ -101,7 +101,7 @@ class Cart extends \Magento\Object implements \Magento\Checkout\Model\Cart\CartI * @param \Magento\Checkout\Model\Resource\Cart $resourceCart * @param \Magento\Checkout\Model\Session $checkoutSession * @param \Magento\Customer\Model\Session $customerSession - * @param \Magento\Message\Factory $messageFactory + * @param \Magento\Message\ManagerInterface $messageManager * @param array $data */ public function __construct( @@ -112,7 +112,7 @@ public function __construct( \Magento\Checkout\Model\Resource\Cart $resourceCart, \Magento\Checkout\Model\Session $checkoutSession, \Magento\Customer\Model\Session $customerSession, - \Magento\Message\Factory $messageFactory, + \Magento\Message\ManagerInterface $messageManager, array $data = array() ) { $this->_eventManager = $eventManager; @@ -122,7 +122,7 @@ public function __construct( $this->_resourceCart = $resourceCart; $this->_checkoutSession = $checkoutSession; $this->_customerSession = $customerSession; - $this->messageFactory = $messageFactory; + $this->messageManager = $messageManager; parent::__construct($data); } @@ -241,7 +241,7 @@ public function init() * @param mixed $qtyFlag if is null set product qty like in order * @return \Magento\Checkout\Model\Cart */ - public function addOrderItem($orderItem, $qtyFlag=null) + public function addOrderItem($orderItem, $qtyFlag = null) { /* @var $orderItem \Magento\Sales\Model\Order\Item */ if (is_null($orderItem->getParentItem())) { @@ -324,7 +324,7 @@ protected function _getProductRequest($requestInfo) * @return \Magento\Checkout\Model\Cart * @throws \Magento\Core\Exception */ - public function addProduct($productInfo, $requestInfo=null) + public function addProduct($productInfo, $requestInfo = null) { $product = $this->_getProduct($productInfo); $request = $this->_getProductRequest($requestInfo); @@ -334,9 +334,11 @@ public function addProduct($productInfo, $requestInfo=null) if ($product->getStockItem()) { $minimumQty = $product->getStockItem()->getMinSaleQty(); //If product was not found in cart and there is set minimal qty for it - if ($minimumQty && $minimumQty > 0 && $request->getQty() < $minimumQty + if ($minimumQty + && $minimumQty > 0 + && $request->getQty() < $minimumQty && !$this->getQuote()->hasProductId($productId) - ){ + ) { $request->setQty($minimumQty); } } @@ -397,7 +399,7 @@ public function addProductsByIds($productIds) if ($product->getId() && $product->isVisibleInCatalog()) { try { $this->getQuote()->addProduct($product); - } catch (\Exception $e){ + } catch (\Exception $e) { $allAdded = false; } } else { @@ -406,14 +408,10 @@ public function addProductsByIds($productIds) } if (!$allAvailable) { - $this->_checkoutSession->addError( - __("We don't have some of the products you want.") - ); + $this->messageManager->addError(__("We don't have some of the products you want.")); } if (!$allAdded) { - $this->_checkoutSession->addError( - __("We don't have as many of some products as you want.") - ); + $this->messageManager->addError(__("We don't have as many of some products as you want.")); } } return $this; @@ -474,7 +472,6 @@ public function updateItems($data) { $this->_eventManager->dispatch('checkout_cart_update_items_before', array('cart'=>$this, 'info'=>$data)); - $session = $this->_checkoutSession; $qtyRecalculatedFlag = false; foreach ($data as $itemId => $itemInfo) { $item = $this->getQuote()->getItemById($itemId); @@ -499,21 +496,21 @@ public function updateItems($data) if (isset($itemInfo['before_suggest_qty']) && ($itemInfo['before_suggest_qty'] != $qty)) { $qtyRecalculatedFlag = true; - $message = $this->messageFactory->notice( - __('Quantity was recalculated from %1 to %2', $itemInfo['before_suggest_qty'], $qty) + $this->messageManager->addNotice( + __('Quantity was recalculated from %1 to %2', $itemInfo['before_suggest_qty'], $qty), + 'quote_item' . $item->getId() ); - $session->addQuoteItemMessage($item->getId(), $message); } } } if ($qtyRecalculatedFlag) { - $session->addNotice( + $this->messageManager->addNotice( __('Some products quantities were recalculated because of quantity increment mismatch.') ); } - $this->_eventManager->dispatch('checkout_cart_update_items_after', array('cart'=>$this, 'info'=>$data)); + $this->_eventManager->dispatch('checkout_cart_update_items_after', array('cart' => $this, 'info' => $data)); return $this; } diff --git a/app/code/Magento/Checkout/Model/Observer.php b/app/code/Magento/Checkout/Model/Observer.php index f01ad4cd35270..6bb6e434cba6d 100644 --- a/app/code/Magento/Checkout/Model/Observer.php +++ b/app/code/Magento/Checkout/Model/Observer.php @@ -40,12 +40,21 @@ class Observer */ protected $_checkoutSession; + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * @param \Magento\Checkout\Model\Session $checkoutSession + * @param \Magento\Message\ManagerInterface $messageManager */ - public function __construct(\Magento\Checkout\Model\Session $checkoutSession) - { + public function __construct( + \Magento\Checkout\Model\Session $checkoutSession, + \Magento\Message\ManagerInterface $messageManager + ) { $this->_checkoutSession = $checkoutSession; + $this->messageManager = $messageManager; } public function unsetAll() @@ -57,15 +66,10 @@ public function loadCustomerQuote() { try { $this->_checkoutSession->loadCustomerQuote(); - } - catch (\Magento\Core\Exception $e) { - $this->_checkoutSession->addError($e->getMessage()); - } - catch (\Exception $e) { - $this->_checkoutSession->addException( - $e, - __('Load customer quote error') - ); + } catch (\Magento\Core\Exception $e) { + $this->messageManager->addError($e->getMessage()); + } catch (\Exception $e) { + $this->messageManager->addException($e, __('Load customer quote error')); } } diff --git a/app/code/Magento/Checkout/Model/Session.php b/app/code/Magento/Checkout/Model/Session.php index c6ae9a38b3b16..e104753418e85 100644 --- a/app/code/Magento/Checkout/Model/Session.php +++ b/app/code/Magento/Checkout/Model/Session.php @@ -24,17 +24,19 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ - namespace Magento\Checkout\Model; -class Session extends \Magento\Core\Model\Session\AbstractSession +class Session extends \Magento\Session\SessionManager { + /** + * Checkout state begin + */ const CHECKOUT_STATE_BEGIN = 'begin'; /** * Quote instance * - * @var null|\Magento\Sales\Model\Quote + * @var \Magento\Sales\Model\Quote */ protected $_quote; @@ -80,33 +82,53 @@ class Session extends \Magento\Core\Model\Session\AbstractSession protected $_remoteAddress; /** - * @param \Magento\Core\Model\Session\Context $context + * @var \Magento\Event\ManagerInterface + */ + protected $_eventManager; + + /** + * @var \Magento\Core\Model\StoreManagerInterface + */ + protected $_storeManager; + + /** + * @param \Magento\App\RequestInterface $request * @param \Magento\Session\SidResolverInterface $sidResolver * @param \Magento\Session\Config\ConfigInterface $sessionConfig + * @param \Magento\Session\SaveHandlerInterface $saveHandler + * @param \Magento\Session\ValidatorInterface $validator + * @param \Magento\Session\StorageInterface $storage * @param \Magento\Sales\Model\OrderFactory $orderFactory * @param \Magento\Customer\Model\Session $customerSession * @param \Magento\Sales\Model\QuoteFactory $quoteFactory * @param \Magento\HTTP\PhpEnvironment\RemoteAddress $remoteAddress + * @param \Magento\Event\ManagerInterface $eventManager + * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param null $sessionName - * @param array $data */ public function __construct( - \Magento\Core\Model\Session\Context $context, + \Magento\App\RequestInterface $request, \Magento\Session\SidResolverInterface $sidResolver, \Magento\Session\Config\ConfigInterface $sessionConfig, + \Magento\Session\SaveHandlerInterface $saveHandler, + \Magento\Session\ValidatorInterface $validator, + \Magento\Session\StorageInterface $storage, \Magento\Sales\Model\OrderFactory $orderFactory, \Magento\Customer\Model\Session $customerSession, \Magento\Sales\Model\QuoteFactory $quoteFactory, \Magento\HTTP\PhpEnvironment\RemoteAddress $remoteAddress, - $sessionName = null, - array $data = array() + \Magento\Event\ManagerInterface $eventManager, + \Magento\Core\Model\StoreManagerInterface $storeManager, + $sessionName = null ) { $this->_orderFactory = $orderFactory; $this->_customerSession = $customerSession; $this->_quoteFactory = $quoteFactory; $this->_remoteAddress = $remoteAddress; - parent::__construct($context, $sidResolver, $sessionConfig, $data); - $this->start('checkout', $sessionName); + $this->_eventManager = $eventManager; + $this->_storeManager = $storeManager; + parent::__construct($request, $sidResolver, $sessionConfig, $saveHandler, $validator, $storage); + $this->start($sessionName); } /** @@ -206,7 +228,7 @@ public function getQuote() if ($remoteAddr = $this->_remoteAddress->getRemoteAddress()) { $this->_quote->setRemoteIp($remoteAddr); - $xForwardIp = $this->_request->getServer('HTTP_X_FORWARDED_FOR'); + $xForwardIp = $this->request->getServer('HTTP_X_FORWARDED_FOR'); $this->_quote->setXForwardedFor($xForwardIp); } return $this->_quote; @@ -306,97 +328,6 @@ public function getStepData($step=null, $data=null) return $steps[$step][$data]; } - /** - * Retrieves list of all saved additional messages for different instances (e.g. quote items) in checkout session - * Returned: array(itemKey => messageCollection, ...) - * where itemKey is a unique hash (e.g 'quote_item17') to distinguish item messages among message collections - * - * @param bool $clear - * - * @return array - */ - public function getAdditionalMessages($clear = false) - { - $additionalMessages = $this->getData('additional_messages'); - if (!$additionalMessages) { - return array(); - } - if ($clear) { - $this->setData('additional_messages', null); - } - return $additionalMessages; - } - - /** - * Retrieves list of item additional messages - * itemKey is a unique hash (e.g 'quote_item17') to distinguish item messages among message collections - * - * @param string $itemKey - * @param bool $clear - * - * @return null|\Magento\Message\Collection - */ - public function getItemAdditionalMessages($itemKey, $clear = false) - { - $allMessages = $this->getAdditionalMessages(); - if (!isset($allMessages[$itemKey])) { - return null; - } - - $messages = $allMessages[$itemKey]; - if ($clear) { - unset($allMessages[$itemKey]); - $this->setAdditionalMessages($allMessages); - } - return $messages; - } - - /** - * Adds new message in this session to a list of additional messages for some item - * itemKey is a unique hash (e.g 'quote_item17') to distinguish item messages among message collections - * - * @param string $itemKey - * @param \Magento\Message\AbstractMessage $message - * - * @return \Magento\Checkout\Model\Session - */ - public function addItemAdditionalMessage($itemKey, $message) - { - $allMessages = $this->getAdditionalMessages(); - if (!isset($allMessages[$itemKey])) { - $allMessages[$itemKey] = $this->messagesFactory->create(); - } - $allMessages[$itemKey]->add($message); - $this->setAdditionalMessages($allMessages); - - return $this; - } - - /** - * Retrieves list of quote item messages - * @param int $itemId - * @param bool $clear - * - * @return null|\Magento\Message\Collection - */ - public function getQuoteItemMessages($itemId, $clear = false) - { - return $this->getItemAdditionalMessages('quote_item' . $itemId, $clear); - } - - /** - * Adds new message to a list of quote item messages, saved in this session - * - * @param int $itemId - * @param \Magento\Message\AbstractMessage $message - * - * @return \Magento\Checkout\Model\Session - */ - public function addQuoteItemMessage($itemId, $message) - { - return $this->addItemAdditionalMessage('quote_item' . $itemId, $message); - } - /** * Destroy/end a session * Unset all data associated with object diff --git a/app/code/Magento/Checkout/Model/Type/Onepage.php b/app/code/Magento/Checkout/Model/Type/Onepage.php index 4b5fd891d5786..b7e0eb93fdfdb 100644 --- a/app/code/Magento/Checkout/Model/Type/Onepage.php +++ b/app/code/Magento/Checkout/Model/Type/Onepage.php @@ -124,6 +124,11 @@ class Onepage */ protected $_objectCopyService; + /** + * @var \Magento\Message\ManagerInterface + */ + protected $messageManager; + /** * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Checkout\Helper\Data $helper @@ -139,6 +144,7 @@ class Onepage * @param \Magento\Sales\Model\Service\QuoteFactory $serviceQuoteFactory * @param \Magento\Sales\Model\OrderFactory $orderFactory * @param \Magento\Object\Copy $objectCopyService + * @param \Magento\Message\ManagerInterface $messageManager */ public function __construct( \Magento\Event\ManagerInterface $eventManager, @@ -154,7 +160,8 @@ public function __construct( \Magento\Customer\Model\CustomerFactory $customerFactory, \Magento\Sales\Model\Service\QuoteFactory $serviceQuoteFactory, \Magento\Sales\Model\OrderFactory $orderFactory, - \Magento\Object\Copy $objectCopyService + \Magento\Object\Copy $objectCopyService, + \Magento\Message\ManagerInterface $messageManager ) { $this->_eventManager = $eventManager; $this->_customerData = $customerData; @@ -171,6 +178,7 @@ public function __construct( $this->_serviceQuoteFactory = $serviceQuoteFactory; $this->_orderFactory = $orderFactory; $this->_objectCopyService = $objectCopyService; + $this->messageManager = $messageManager; } /** @@ -765,7 +773,7 @@ protected function _involveNewCustomer() if ($customer->isConfirmationRequired()) { $customer->sendNewAccountEmail('confirmation', '', $this->getQuote()->getStoreId()); $url = $this->_customerData->getEmailConfirmationUrl($customer->getEmail()); - $this->getCustomerSession()->addSuccess( + $this->messageManager->addSuccess( __('Account confirmation is required. Please, check your e-mail for confirmation link. To resend confirmation email please click here.', $url) ); } else { diff --git a/app/code/Magento/Checkout/etc/adminhtml/menu.xml b/app/code/Magento/Checkout/etc/adminhtml/menu.xml index fabe4fb08a1ab..66339bdb1d933 100644 --- a/app/code/Magento/Checkout/etc/adminhtml/menu.xml +++ b/app/code/Magento/Checkout/etc/adminhtml/menu.xml @@ -27,6 +27,6 @@ --> - + diff --git a/app/code/Magento/Checkout/etc/di.xml b/app/code/Magento/Checkout/etc/di.xml index 023a7768da491..b43b0ae75f782 100644 --- a/app/code/Magento/Checkout/etc/di.xml +++ b/app/code/Magento/Checkout/etc/di.xml @@ -31,4 +31,14 @@ + + + checkout + + + + + + + diff --git a/app/code/Magento/Checkout/etc/email_templates.xml b/app/code/Magento/Checkout/etc/email_templates.xml index 7582bc9f64a2d..ed61c92ba1176 100644 --- a/app/code/Magento/Checkout/etc/email_templates.xml +++ b/app/code/Magento/Checkout/etc/email_templates.xml @@ -24,5 +24,5 @@ */ --> -