diff --git a/CHANGELOG.md b/CHANGELOG.md index f4596a58156dc..4730167641672 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,26 @@ +2.0.0.0-dev49 +============= +* Various improvements: + * Unified Area configuration + * Moved EventManager to Magento\Event lib component + * Moved FrontController, Routers, Base Actions to Magento\App + * Created Magento\App component in library + * Declared public interfaces for View component into library + * Plushe theme is set as the default theme + * Refactor the Blacklist Pattern in the Integrity Test Suite's ClassesTest to Replace Blacklist.php Files + * Removed JavaScript unit test TreeSuggestTest.prototype.testBind as obsolete + * Introduced ability to register a template engine to process template files having certain extension + * Removed support of the Twig template engine along with the corresponding component from the library + * Removed layout flag that forced template blocks to output rendered content directly to a browser bypassing the response object + * Moved out responsibility of rendering template debugging hints from the template block to the plugin and decorator for a template engine +* Fixed bugs: + * Fixed inability to create product if multiple attributes are assigned to attribute set + * Fixed inability to create a new widget instance + * Fixed error on Customers Segments Conditions tab while the 'Number of Orders' condition is chosen + * Fixed blank page when placing order via Ogone + * Fixed various UI issues in Admin Panel with layout, aligning, buttons and fields + * Fixed static tests failing to verify themes files + 2.0.0.0-dev48 ============= * Various improvements: diff --git a/app/code/Magento/AdminNotification/Model/Resource/System/Message/Collection.php b/app/code/Magento/AdminNotification/Model/Resource/System/Message/Collection.php index 17f45c5c86299..dc167a99ea84d 100644 --- a/app/code/Magento/AdminNotification/Model/Resource/System/Message/Collection.php +++ b/app/code/Magento/AdminNotification/Model/Resource/System/Message/Collection.php @@ -42,7 +42,7 @@ class Collection protected $_countBySeverity = array(); /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -50,7 +50,7 @@ class Collection * @param \Magento\Core\Model\Resource\Db\AbstractDb $resource */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/AdminNotification/Model/Survey.php b/app/code/Magento/AdminNotification/Model/Survey.php index cb3922a946b25..e9c956cd14e06 100644 --- a/app/code/Magento/AdminNotification/Model/Survey.php +++ b/app/code/Magento/AdminNotification/Model/Survey.php @@ -54,17 +54,17 @@ class Survey protected $_flagFactory; /** - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; /** * @param \Magento\Core\Model\FlagFactory $flagFactory - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request */ public function __construct( \Magento\Core\Model\FlagFactory $flagFactory, - \Magento\Core\Controller\Request\Http $request + \Magento\App\RequestInterface $request ) { $this->_request = $request; $this->_flagFactory = $flagFactory; diff --git a/app/code/Magento/AdminNotification/Model/System/Message/Baseurl.php b/app/code/Magento/AdminNotification/Model/System/Message/Baseurl.php index 108f442d990a0..7a129f0b3599c 100644 --- a/app/code/Magento/AdminNotification/Model/System/Message/Baseurl.php +++ b/app/code/Magento/AdminNotification/Model/System/Message/Baseurl.php @@ -27,7 +27,7 @@ class Baseurl implements \Magento\AdminNotification\Model\System\MessageInterface { /** - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_urlBuilder; @@ -49,13 +49,13 @@ class Baseurl /** * @param \Magento\Core\Model\Config $config * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\UrlInterface $urlBuilder * @param \Magento\Core\Model\Config\ValueFactory $configValueFactory */ public function __construct( \Magento\Core\Model\Config $config, \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\Core\Model\UrlInterface $urlBuilder, + \Magento\UrlInterface $urlBuilder, \Magento\Core\Model\Config\ValueFactory $configValueFactory ) { $this->_urlBuilder = $urlBuilder; diff --git a/app/code/Magento/AdminNotification/Model/System/Message/CacheOutdated.php b/app/code/Magento/AdminNotification/Model/System/Message/CacheOutdated.php index 03366d1456b15..f262f7e640820 100644 --- a/app/code/Magento/AdminNotification/Model/System/Message/CacheOutdated.php +++ b/app/code/Magento/AdminNotification/Model/System/Message/CacheOutdated.php @@ -27,7 +27,7 @@ class CacheOutdated implements \Magento\AdminNotification\Model\System\MessageInterface { /** - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_urlBuilder; @@ -43,12 +43,12 @@ class CacheOutdated /** * @param \Magento\AuthorizationInterface $authorization - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\UrlInterface $urlBuilder * @param \Magento\Core\Model\Cache\TypeListInterface $cacheTypeList */ public function __construct( \Magento\AuthorizationInterface $authorization, - \Magento\Core\Model\UrlInterface $urlBuilder, + \Magento\UrlInterface $urlBuilder, \Magento\Core\Model\Cache\TypeListInterface $cacheTypeList ) { $this->_authorization = $authorization; diff --git a/app/code/Magento/AdminNotification/Model/System/Message/Survey.php b/app/code/Magento/AdminNotification/Model/System/Message/Survey.php index 9fa6dcc251ef5..9f1d67cf935d7 100644 --- a/app/code/Magento/AdminNotification/Model/System/Message/Survey.php +++ b/app/code/Magento/AdminNotification/Model/System/Message/Survey.php @@ -37,7 +37,7 @@ class Survey protected $_authorization; /** - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_urlBuilder; @@ -49,13 +49,13 @@ class Survey /** * @param \Magento\Backend\Model\Auth\Session $authSession * @param \Magento\AuthorizationInterface $authorization - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\UrlInterface $urlBuilder * @param \Magento\AdminNotification\Model\Survey $survey */ public function __construct( \Magento\Backend\Model\Auth\Session $authSession, \Magento\AuthorizationInterface $authorization, - \Magento\Core\Model\UrlInterface $urlBuilder, + \Magento\UrlInterface $urlBuilder, \Magento\AdminNotification\Model\Survey $survey ) { $this->_authorization = $authorization; diff --git a/app/code/Magento/Adminhtml/Block/Catalog/Category/Helper/Image.php b/app/code/Magento/Adminhtml/Block/Catalog/Category/Helper/Image.php index 680ac066a304b..7bbc7b0c72d3a 100644 --- a/app/code/Magento/Adminhtml/Block/Catalog/Category/Helper/Image.php +++ b/app/code/Magento/Adminhtml/Block/Catalog/Category/Helper/Image.php @@ -45,7 +45,7 @@ class Image extends \Magento\Data\Form\Element\Image * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Data\Form\Element\Factory $factoryElement * @param \Magento\Data\Form\Element\CollectionFactory $factoryCollection - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\UrlInterface $urlBuilder * @param array $attributes */ public function __construct( @@ -53,7 +53,7 @@ public function __construct( \Magento\Core\Helper\Data $coreData, \Magento\Data\Form\Element\Factory $factoryElement, \Magento\Data\Form\Element\CollectionFactory $factoryCollection, - \Magento\Core\Model\UrlInterface $urlBuilder, + \Magento\UrlInterface $urlBuilder, $attributes = array() ) { $this->_storeManager = $storeManager; diff --git a/app/code/Magento/Adminhtml/Block/Catalog/Form/Renderer/Config/YearRange.php b/app/code/Magento/Adminhtml/Block/Catalog/Form/Renderer/Config/YearRange.php index 07188a06b5cd3..65bb1429d6118 100644 --- a/app/code/Magento/Adminhtml/Block/Catalog/Form/Renderer/Config/YearRange.php +++ b/app/code/Magento/Adminhtml/Block/Catalog/Form/Renderer/Config/YearRange.php @@ -49,8 +49,7 @@ protected function _getElementHtml(\Magento\Data\Form\Element\AbstractElement $e $from = $element->setValue(isset($values[0]) ? $values[0] : null)->getElementHtml(); $to = $element->setValue(isset($values[1]) ? $values[1] : null)->getElementHtml(); - return __('from') . ' ' . $from - . ' ' - . __('to') . ' ' . $to; + return __('') . $from + . __('') . $to; } } diff --git a/app/code/Magento/Adminhtml/Block/Catalog/Helper/Form/Wysiwyg.php b/app/code/Magento/Adminhtml/Block/Catalog/Helper/Form/Wysiwyg.php index 512a56e02e75b..b498f6c79f711 100644 --- a/app/code/Magento/Adminhtml/Block/Catalog/Helper/Form/Wysiwyg.php +++ b/app/code/Magento/Adminhtml/Block/Catalog/Helper/Form/Wysiwyg.php @@ -55,13 +55,13 @@ class Wysiwyg extends \Magento\Data\Form\Element\Textarea protected $_wysiwygConfig; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; /** * @param \Magento\Cms\Model\Wysiwyg\Config $wysiwygConfig - * @param \Magento\Core\Model\Layout $layout + * @param \Magento\View\LayoutInterface $layout * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Data\Form\Element\Factory $factoryElement * @param \Magento\Data\Form\Element\CollectionFactory $factoryCollection @@ -71,7 +71,7 @@ class Wysiwyg extends \Magento\Data\Form\Element\Textarea */ public function __construct( \Magento\Cms\Model\Wysiwyg\Config $wysiwygConfig, - \Magento\Core\Model\Layout $layout, + \Magento\View\LayoutInterface $layout, \Magento\Core\Helper\Data $coreData, \Magento\Data\Form\Element\Factory $factoryElement, \Magento\Data\Form\Element\CollectionFactory $factoryCollection, diff --git a/app/code/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php b/app/code/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php index ae8e36f48e7cd..fe00553dc3242 100644 --- a/app/code/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php +++ b/app/code/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php @@ -49,7 +49,7 @@ class Config /** * @var \Magento\Core\Model\App */ - protected $_app; + protected $_storeManager; /** * @var \Magento\Core\Model\LocaleInterface @@ -91,7 +91,7 @@ public function __construct( $this->_configurableType = $configurableType; $this->_coreRegistry = $coreRegistry; $this->_catalogData = $catalogData; - $this->_app = $app; + $this->_storeManager = $app; $this->_locale = $locale; parent::__construct($coreData, $context, $data); } @@ -489,7 +489,7 @@ public function getParentTab() */ public function getApp() { - return $this->_app; + return $this->_storeManager; } /** diff --git a/app/code/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Category.php b/app/code/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Category.php index be8dc829c1ee7..ed24df7b1817d 100644 --- a/app/code/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Category.php +++ b/app/code/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Category.php @@ -36,7 +36,7 @@ class Category extends \Magento\Data\Form\Element\Multiselect { /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -58,7 +58,7 @@ class Category extends \Magento\Data\Form\Element\Multiselect * @param \Magento\Data\Form\Element\Factory $factoryElement * @param \Magento\Data\Form\Element\CollectionFactory $factoryCollection * @param \Magento\Backend\Helper\Data $backendData - * @param \Magento\Core\Model\Layout $layout + * @param \Magento\View\LayoutInterface $layout * @param array $attributes */ public function __construct( @@ -67,7 +67,7 @@ public function __construct( \Magento\Data\Form\Element\Factory $factoryElement, \Magento\Data\Form\Element\CollectionFactory $factoryCollection, \Magento\Backend\Helper\Data $backendData, - \Magento\Core\Model\Layout $layout, + \Magento\View\LayoutInterface $layout, array $attributes = array() ) { $this->_collectionFactory = $collectionFactory; diff --git a/app/code/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery.php b/app/code/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery.php index 231b2ed1f0049..5e618e123d0e8 100644 --- a/app/code/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery.php +++ b/app/code/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery.php @@ -42,12 +42,12 @@ class Gallery extends \Magento\Data\Form\Element\AbstractElement protected $_storeManager; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; /** - * @param \Magento\Core\Model\Layout $layout + * @param \Magento\View\LayoutInterface $layout * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Data\Form\Element\Factory $factoryElement @@ -55,7 +55,7 @@ class Gallery extends \Magento\Data\Form\Element\AbstractElement * @param array $attributes */ public function __construct( - \Magento\Core\Model\Layout $layout, + \Magento\View\LayoutInterface $layout, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Helper\Data $coreData, \Magento\Data\Form\Element\Factory $factoryElement, diff --git a/app/code/Magento/Adminhtml/Block/Cms/Page/Edit/Tab/Content.php b/app/code/Magento/Adminhtml/Block/Cms/Page/Edit/Tab/Content.php index 52a13314f0cb7..0bbda0d7ad05b 100644 --- a/app/code/Magento/Adminhtml/Block/Cms/Page/Edit/Tab/Content.php +++ b/app/code/Magento/Adminhtml/Block/Cms/Page/Edit/Tab/Content.php @@ -43,7 +43,7 @@ class Content * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Data\Form\Factory $formFactory * @param \Magento\Core\Helper\Data $coreData - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Registry $coreRegistry * @param array $data */ @@ -52,7 +52,7 @@ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Data\Form\Factory $formFactory, \Magento\Core\Helper\Data $coreData, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Registry $coreRegistry, array $data = array() ) { diff --git a/app/code/Magento/Adminhtml/Block/Page/Head.php b/app/code/Magento/Adminhtml/Block/Page/Head.php index b6af9a48c0e03..f8b7a0a6d2ae8 100644 --- a/app/code/Magento/Adminhtml/Block/Page/Head.php +++ b/app/code/Magento/Adminhtml/Block/Page/Head.php @@ -48,7 +48,7 @@ class Head extends \Magento\Page\Block\Html\Head /** * @param \Magento\Core\Model\Session $session * @param \Magento\Core\Model\LocaleInterface $locale - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Helper\File\Storage\Database $fileStorageDatabase * @param \Magento\Core\Helper\Data $coreData @@ -62,7 +62,7 @@ class Head extends \Magento\Page\Block\Html\Head public function __construct( \Magento\Core\Model\Session $session, \Magento\Core\Model\LocaleInterface $locale, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Helper\File\Storage\Database $fileStorageDatabase, \Magento\Core\Helper\Data $coreData, diff --git a/app/code/Magento/Adminhtml/Block/Sales/Items/AbstractItems.php b/app/code/Magento/Adminhtml/Block/Sales/Items/AbstractItems.php index 56f57a862b444..2c924b57e1cc5 100644 --- a/app/code/Magento/Adminhtml/Block/Sales/Items/AbstractItems.php +++ b/app/code/Magento/Adminhtml/Block/Sales/Items/AbstractItems.php @@ -127,7 +127,7 @@ public function addColumnRender($column, $block, $template, $type = null) public function getItemRenderer($type) { $renderer = $this->getChildBlock($type) ?: $this->getChildBlock(self::DEFAULT_TYPE); - if (!$renderer instanceof \Magento\Core\Block) { + if (!$renderer instanceof \Magento\View\Element\BlockInterface) { throw new \RuntimeException('Renderer for type "' . $type . '" does not exist.'); } foreach ($this->_columnRenders as $columnType => $columnRenderer) { diff --git a/app/code/Magento/Adminhtml/Controller/Customer.php b/app/code/Magento/Adminhtml/Controller/Customer.php index d124a6ba4ff10..4cb4194c8c74f 100644 --- a/app/code/Magento/Adminhtml/Controller/Customer.php +++ b/app/code/Magento/Adminhtml/Controller/Customer.php @@ -846,7 +846,7 @@ public function viewfileAction() return $this->norouteAction(); } - $path = $this->_objectManager->get('Magento\Core\Model\Dir')->getDir('media') . DS . 'customer'; + $path = $this->_objectManager->get('Magento\App\Dir')->getDir('media') . DS . 'customer'; /** @var \Magento\Filesystem $filesystem */ $filesystem = $this->_objectManager->get('Magento\Filesystem'); diff --git a/app/code/Magento/Adminhtml/Controller/Sales/Order/Shipment.php b/app/code/Magento/Adminhtml/Controller/Sales/Order/Shipment.php index fe5b4683e4fa8..c0c6817f60c18 100644 --- a/app/code/Magento/Adminhtml/Controller/Sales/Order/Shipment.php +++ b/app/code/Magento/Adminhtml/Controller/Sales/Order/Shipment.php @@ -704,8 +704,8 @@ protected function _createPdfPageFromImageString($imageString) { /** @var \Magento\Filesystem $filesystem */ $filesystem = $this->_objectManager->get('Magento\Filesystem'); - /** @var $tmpDir \Magento\Core\Model\Dir */ - $tmpDir = $this->_objectManager->get('Magento\Core\Model\Dir', $filesystem->getWorkingDirectory()); + /** @var $tmpDir \Magento\App\Dir */ + $tmpDir = $this->_objectManager->get('Magento\App\Dir', $filesystem->getWorkingDirectory()); $image = imagecreatefromstring($imageString); if (!$image) { return false; @@ -716,7 +716,7 @@ protected function _createPdfPageFromImageString($imageString) $page = new \Zend_Pdf_Page($xSize, $ySize); imageinterlace($image, 0); - $tmpFileName = $tmpDir->getDir(\Magento\Core\Model\Dir::TMP) . 'shipping_labels_' + $tmpFileName = $tmpDir->getDir(\Magento\App\Dir::TMP) . 'shipping_labels_' . uniqid(mt_rand()) . time() . '.png'; imagepng($image, $tmpFileName); $pdfImage = \Zend_Pdf_Image::imageWithPath($tmpFileName); @@ -728,7 +728,7 @@ protected function _createPdfPageFromImageString($imageString) /** * Return grid with shipping items for Ajax request * - * @return \Magento\Core\Controller\Response\Http + * @return \Magento\App\ResponseInterface */ public function getShippingItemsGridAction() { diff --git a/app/code/Magento/Adminhtml/Controller/Sitemap.php b/app/code/Magento/Adminhtml/Controller/Sitemap.php index 714a2786a46bc..5e5fdaae34d81 100644 --- a/app/code/Magento/Adminhtml/Controller/Sitemap.php +++ b/app/code/Magento/Adminhtml/Controller/Sitemap.php @@ -175,9 +175,9 @@ public function saveAction() $fileName = $model->getSitemapFilename(); $filesystem->setWorkingDirectory( - $this->_objectManager->get('Magento\Core\Model\Dir')->getDir() . $model->getSitemapPath() + $this->_objectManager->get('Magento\App\Dir')->getDir() . $model->getSitemapPath() ); - $filePath = $this->_objectManager->get('Magento\Core\Model\Dir')->getDir() + $filePath = $this->_objectManager->get('Magento\App\Dir')->getDir() . $model->getSitemapPath() . DS . $fileName; if ($fileName && $filesystem->isFile($filePath)) { diff --git a/app/code/Magento/Adminhtml/Controller/System/Backup.php b/app/code/Magento/Adminhtml/Controller/System/Backup.php index 4a9e2a0246559..88b68ed37a37e 100644 --- a/app/code/Magento/Adminhtml/Controller/System/Backup.php +++ b/app/code/Magento/Adminhtml/Controller/System/Backup.php @@ -143,7 +143,7 @@ public function createAction() } if ($type != \Magento\Backup\Helper\Data::TYPE_DB) { - $backupManager->setRootDir($this->_objectManager->get('Magento\Core\Model\Dir')->getDir()) + $backupManager->setRootDir($this->_objectManager->get('Magento\App\Dir')->getDir()) ->addIgnorePaths($helper->getBackupIgnorePaths()); } @@ -274,7 +274,7 @@ public function rollbackAction() if ($type != \Magento\Backup\Helper\Data::TYPE_DB) { - $backupManager->setRootDir($this->_objectManager->get('Magento\Core\Model\Dir')->getDir()) + $backupManager->setRootDir($this->_objectManager->get('Magento\App\Dir')->getDir()) ->addIgnorePaths($helper->getRollbackIgnorePaths()); if ($this->getRequest()->getParam('use_ftp', false)) { diff --git a/app/code/Magento/Adminhtml/Controller/System/Store.php b/app/code/Magento/Adminhtml/Controller/System/Store.php index bc10ead2b71f0..7fe8aac1acede 100644 --- a/app/code/Magento/Adminhtml/Controller/System/Store.php +++ b/app/code/Magento/Adminhtml/Controller/System/Store.php @@ -471,7 +471,7 @@ protected function _backupDatabase($failPath, $arguments=array()) $backup = $this->_objectManager->create('Magento\Backup\Model\Backup') ->setTime(time()) ->setType('db') - ->setPath($this->_objectManager->get('Magento\Core\Model\Dir')->getDir('var') . DS . 'backups'); + ->setPath($this->_objectManager->get('Magento\App\Dir')->getDir('var') . DS . 'backups'); $backupDb->createBackup($backup); $this->_getSession()->addSuccess(__('The database was backed up.')); diff --git a/app/code/Magento/Adminhtml/Helper/Catalog/Product/Edit/Action/Attribute.php b/app/code/Magento/Adminhtml/Helper/Catalog/Product/Edit/Action/Attribute.php index a0c32c8a951e5..8c4f451926e80 100644 --- a/app/code/Magento/Adminhtml/Helper/Catalog/Product/Edit/Action/Attribute.php +++ b/app/code/Magento/Adminhtml/Helper/Catalog/Product/Edit/Action/Attribute.php @@ -34,7 +34,7 @@ class Attribute extends \Magento\Backend\Helper\Data /** * Selected products for mass-update * - * @var \Magento\Catalog\Model\Entity\Product\Collection + * @var \Magento\Catalog\Model\Resource\Product\Collection */ protected $_products; @@ -68,41 +68,37 @@ class Attribute extends \Magento\Backend\Helper\Data protected $_eavConfig; /** - * @param \Magento\Eav\Model\Config $eavConfig - * @param \Magento\Backend\Model\Session $session - * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $productsFactory * @param \Magento\Core\Helper\Context $context * @param \Magento\Core\Helper\Data $coreData - * @param \Magento\Core\Model\ConfigInterface $applicationConfig * @param \Magento\Core\Model\Config\Primary $primaryConfig - * @param \Magento\Core\Model\RouterList $routerList - * @param \Magento\Core\Model\AppInterface $app + * @param \Magento\App\RouterList $routerList + * @param \Magento\Core\Model\App\Proxy $app * @param \Magento\Backend\Model\Url $backendUrl * @param \Magento\Backend\Model\Auth $auth - * @param string $defaultAreaFrontName - * @param string $backendFrontName + * @param \Magento\Backend\App\Area\FrontNameResolver $frontNameResolver + * @param \Magento\Eav\Model\Config $eavConfig + * @param \Magento\Backend\Model\Session $session + * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $productsFactory */ public function __construct( - \Magento\Eav\Model\Config $eavConfig, - \Magento\Backend\Model\Session $session, - \Magento\Catalog\Model\Resource\Product\CollectionFactory $productsFactory, \Magento\Core\Helper\Context $context, \Magento\Core\Helper\Data $coreData, - \Magento\Core\Model\ConfigInterface $applicationConfig, \Magento\Core\Model\Config\Primary $primaryConfig, - \Magento\Core\Model\RouterList $routerList, - \Magento\Core\Model\AppInterface $app, + \Magento\App\RouterList $routerList, + \Magento\Core\Model\App\Proxy $app, \Magento\Backend\Model\Url $backendUrl, \Magento\Backend\Model\Auth $auth, - $defaultAreaFrontName, - $backendFrontName + \Magento\Backend\App\Area\FrontNameResolver $frontNameResolver, + \Magento\Eav\Model\Config $eavConfig, + \Magento\Backend\Model\Session $session, + \Magento\Catalog\Model\Resource\Product\CollectionFactory $productsFactory ) { + $this->_eavConfig = $eavConfig; $this->_session = $session; $this->_productsFactory = $productsFactory; parent::__construct( - $context, $coreData, $applicationConfig, $primaryConfig, $routerList, $app, $backendUrl, $auth, - $defaultAreaFrontName, $backendFrontName + $context, $coreData, $primaryConfig, $routerList, $app, $backendUrl, $auth, $frontNameResolver ); } diff --git a/app/code/Magento/Adminhtml/Helper/Dashboard/Data.php b/app/code/Magento/Adminhtml/Helper/Dashboard/Data.php index b04d14555e387..0127d6d008fcc 100644 --- a/app/code/Magento/Adminhtml/Helper/Dashboard/Data.php +++ b/app/code/Magento/Adminhtml/Helper/Dashboard/Data.php @@ -41,14 +41,14 @@ class Data extends \Magento\Core\Helper\Data /** * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Http $coreHttp * @param \Magento\Core\Model\Config $config * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Locale $locale * @param \Magento\Core\Model\Date $dateModel - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\State $appState * @param \Magento\Core\Model\Encryption $encryptor * @param \Magento\Core\Model\StoreManager $storeManager * @param string $installDate @@ -56,14 +56,14 @@ class Data extends \Magento\Core\Helper\Data */ public function __construct( \Magento\Core\Helper\Context $context, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Http $coreHttp, \Magento\Core\Model\Config $config, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Locale $locale, \Magento\Core\Model\Date $dateModel, - \Magento\Core\Model\App\State $appState, + \Magento\App\State $appState, \Magento\Core\Model\Encryption $encryptor, $installDate, $dbCompatibleMode = true diff --git a/app/code/Magento/Adminhtml/Helper/Dashboard/Order.php b/app/code/Magento/Adminhtml/Helper/Dashboard/Order.php index ae3322df2b8de..7f14046330fc1 100644 --- a/app/code/Magento/Adminhtml/Helper/Dashboard/Order.php +++ b/app/code/Magento/Adminhtml/Helper/Dashboard/Order.php @@ -38,28 +38,28 @@ class Order extends \Magento\Adminhtml\Helper\Dashboard\AbstractDashboard /** * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Http $coreHttp * @param \Magento\Core\Model\Config $config * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Locale $locale * @param \Magento\Core\Model\Date $dateModel - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\State $appState * @param \Magento\Core\Model\Encryption $encryptor * @param \Magento\Reports\Model\Resource\Order\Collection $orderCollection * @param bool $dbCompatibleMode */ public function __construct( \Magento\Core\Helper\Context $context, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Http $coreHttp, \Magento\Core\Model\Config $config, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Locale $locale, \Magento\Core\Model\Date $dateModel, - \Magento\Core\Model\App\State $appState, + \Magento\App\State $appState, \Magento\Core\Model\Encryption $encryptor, \Magento\Reports\Model\Resource\Order\Collection $orderCollection, $dbCompatibleMode = true diff --git a/app/code/Magento/Adminhtml/Model/Email/Template.php b/app/code/Magento/Adminhtml/Model/Email/Template.php index cfbf69f2bf1b6..f192355359cfa 100644 --- a/app/code/Magento/Adminhtml/Model/Email/Template.php +++ b/app/code/Magento/Adminhtml/Model/Email/Template.php @@ -53,12 +53,12 @@ class Template extends \Magento\Core\Model\Email\Template * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\View\Url $viewUrl * @param \Magento\Core\Model\View\FileSystem $viewFileSystem - * @param \Magento\Core\Model\View\DesignInterface $design + * @param \Magento\View\DesignInterface $design * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\Config $coreConfig * @param \Magento\Core\Model\Email\Template\FilterFactory $emailFilterFactory * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\Email\Template\Config $emailConfig * @param \Magento\Backend\Model\Config\Structure $structure * @param array $data @@ -72,12 +72,12 @@ public function __construct( \Magento\Filesystem $filesystem, \Magento\Core\Model\View\Url $viewUrl, \Magento\Core\Model\View\FileSystem $viewFileSystem, - \Magento\Core\Model\View\DesignInterface $design, + \Magento\View\DesignInterface $design, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\Config $coreConfig, \Magento\Core\Model\Email\Template\FilterFactory $emailFilterFactory, \Magento\Core\Model\StoreManager $storeManager, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Core\Model\Email\Template\Config $emailConfig, \Magento\Backend\Model\Config\Structure $structure, array $data = array() diff --git a/app/code/Magento/Adminhtml/Model/Sales/Order/Create.php b/app/code/Magento/Adminhtml/Model/Sales/Order/Create.php index f05f562ff89eb..a93ca31f50284 100644 --- a/app/code/Magento/Adminhtml/Model/Sales/Order/Create.php +++ b/app/code/Magento/Adminhtml/Model/Sales/Order/Create.php @@ -142,7 +142,7 @@ class Create extends \Magento\Object implements \Magento\Checkout\Model\Cart\Car /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -158,7 +158,7 @@ class Create extends \Magento\Object implements \Magento\Checkout\Model\Cart\Car /** * @param \Magento\ObjectManager $objectManager - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Core\Model\Registry $coreRegistry * @param \Magento\Sales\Model\Config $salesConfig @@ -168,7 +168,7 @@ class Create extends \Magento\Object implements \Magento\Checkout\Model\Cart\Car */ public function __construct( \Magento\ObjectManager $objectManager, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Data $coreData, \Magento\Core\Model\Registry $coreRegistry, \Magento\Sales\Model\Config $salesConfig, diff --git a/app/code/Magento/Adminhtml/etc/di.xml b/app/code/Magento/Adminhtml/etc/di.xml index bb601f67688c2..be3a96f229294 100644 --- a/app/code/Magento/Adminhtml/etc/di.xml +++ b/app/code/Magento/Adminhtml/etc/di.xml @@ -29,14 +29,9 @@ - - - - - - Magento\Core\Model\App\State::PARAM_INSTALL_DATE + Magento\App\State::PARAM_INSTALL_DATE diff --git a/app/code/Magento/Adminhtml/view/adminhtml/dashboard/index.phtml b/app/code/Magento/Adminhtml/view/adminhtml/dashboard/index.phtml index 54197ca68b3ec..cd6978a99fabc 100644 --- a/app/code/Magento/Adminhtml/view/adminhtml/dashboard/index.phtml +++ b/app/code/Magento/Adminhtml/view/adminhtml/dashboard/index.phtml @@ -98,13 +98,9 @@ function toggleCal(id) { getChildBlock('diagrams')->getTabsIds())) : ?>
-
- getChildHtml('totals') ?> -
-
- getChildHtml('grids') ?> -
-
+ getChildHtml('totals') ?> + getChildHtml('grids') ?> +
diff --git a/app/code/Magento/Adminhtml/view/adminhtml/system/cache/additional.phtml b/app/code/Magento/Adminhtml/view/adminhtml/system/cache/additional.phtml index 0d5133982f2cd..c96ac544f3a17 100644 --- a/app/code/Magento/Adminhtml/view/adminhtml/system/cache/additional.phtml +++ b/app/code/Magento/Adminhtml/view/adminhtml/system/cache/additional.phtml @@ -24,7 +24,7 @@ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) */ ?> -
+
@@ -32,13 +32,13 @@ - +
- +
getChildHtml(); ?>
diff --git a/app/code/Magento/Authorizenet/Model/Directpost.php b/app/code/Magento/Authorizenet/Model/Directpost.php index b855e4f795849..76b9b4b57a910 100644 --- a/app/code/Magento/Authorizenet/Model/Directpost.php +++ b/app/code/Magento/Authorizenet/Model/Directpost.php @@ -82,9 +82,9 @@ class Directpost extends \Magento\Paygate\Model\Authorizenet * @param \Magento\Sales\Model\OrderFactory $orderFactory * @param \Magento\Core\Model\Session\AbstractSession $session * @param \Magento\Core\Model\Logger $logger - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Paygate\Helper\Data $paygateData - * @param \Magento\Core\Model\ModuleListInterface $moduleList + * @param \Magento\App\ModuleListInterface $moduleList * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Payment\Helper\Data $paymentData * @param \Magento\Core\Model\Log\AdapterFactory $logAdapterFactory @@ -104,9 +104,9 @@ public function __construct( \Magento\Sales\Model\OrderFactory $orderFactory, \Magento\Core\Model\Session\AbstractSession $session, \Magento\Core\Model\Logger $logger, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Paygate\Helper\Data $paygateData, - \Magento\Core\Model\ModuleListInterface $moduleList, + \Magento\App\ModuleListInterface $moduleList, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Payment\Helper\Data $paymentData, \Magento\Core\Model\Log\AdapterFactory $logAdapterFactory, diff --git a/app/code/Magento/Backend/App/Area/FrontNameResolver.php b/app/code/Magento/Backend/App/Area/FrontNameResolver.php new file mode 100644 index 0000000000000..85dd32d939e68 --- /dev/null +++ b/app/code/Magento/Backend/App/Area/FrontNameResolver.php @@ -0,0 +1,66 @@ +_config = $config; + $this->_defaultFrontName = $defaultFrontName; + } + + /** + * Retrieve area front name + * + * @return string + */ + public function getFrontName() + { + $isCustomPathUsed = (bool)(string)$this->_config->getValue(self::XML_PATH_USE_CUSTOM_ADMIN_PATH, 'default'); + if ($isCustomPathUsed) { + return (string)$this->_config->getValue(self::XML_PATH_CUSTOM_ADMIN_PATH, 'default'); + } + return $this->_defaultFrontName; + } +} \ No newline at end of file diff --git a/app/code/Magento/Backend/App/Request/PathInfoProcessor.php b/app/code/Magento/Backend/App/Request/PathInfoProcessor.php new file mode 100644 index 0000000000000..e88af14ad33a6 --- /dev/null +++ b/app/code/Magento/Backend/App/Request/PathInfoProcessor.php @@ -0,0 +1,65 @@ +_helper = $helper; + $this->_subject = $subject; + } + + /** + * Process path info + * + * @param \Magento\App\RequestInterface $request + * @param string $pathInfo + * @return string + */ + public function process(\Magento\App\RequestInterface $request, $pathInfo) + { + $pathParts = explode('/', ltrim($pathInfo, '/'), 2); + $storeCode = $pathParts[0]; + + if ($storeCode != $this->_helper->getAreaFrontName()) { + return $this->_subject->process($request, $pathInfo); + } + return $pathInfo; + } +} \ No newline at end of file diff --git a/app/code/Magento/Backend/Model/Router/NoRouteHandler.php b/app/code/Magento/Backend/App/Router/NoRouteHandler.php similarity index 87% rename from app/code/Magento/Backend/Model/Router/NoRouteHandler.php rename to app/code/Magento/Backend/App/Router/NoRouteHandler.php index 9e645c1895cc4..da35e1856de31 100644 --- a/app/code/Magento/Backend/Model/Router/NoRouteHandler.php +++ b/app/code/Magento/Backend/App/Router/NoRouteHandler.php @@ -24,9 +24,9 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -namespace Magento\Backend\Model\Router; +namespace Magento\Backend\App\Router; -class NoRouteHandler implements \Magento\Core\Model\Router\NoRouteHandlerInterface +class NoRouteHandler implements \Magento\Appl\Router\NoRouteHandlerInterface { /** * @var \Magento\Backend\Helper\Data @@ -44,10 +44,10 @@ public function __construct(\Magento\Backend\Helper\Data $helper) /** * Check and process no route request * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @return bool */ - public function process(\Magento\Core\Controller\Request\Http $request) + public function process(\Magento\App\RequestInterface $request) { $requestPathParams = explode('/', trim($request->getPathInfo(), '/')); $areaFrontName = array_shift($requestPathParams); diff --git a/app/code/Magento/Backend/Block/Context.php b/app/code/Magento/Backend/Block/Context.php index 54b975a2e6f1d..c7213a9dddde2 100644 --- a/app/code/Magento/Backend/Block/Context.php +++ b/app/code/Magento/Backend/Block/Context.php @@ -36,41 +36,41 @@ class Context extends \Magento\Core\Block\Context protected $_authorization; /** - * @param \Magento\Core\Controller\Request\Http $request - * @param \Magento\Core\Model\Layout $layout - * @param \Magento\Core\Model\Event\Manager $eventManager - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\App\RequestInterface $request + * @param \Magento\View\LayoutInterface $layout + * @param \Magento\Event\ManagerInterface $eventManager + * @param \Magento\UrlInterface $urlBuilder * @param \Magento\Core\Model\Translate $translator * @param \Magento\Core\Model\CacheInterface $cache - * @param \Magento\Core\Model\View\DesignInterface $design + * @param \Magento\View\DesignInterface $design * @param \Magento\Core\Model\Session\AbstractSession $session * @param \Magento\Core\Model\Store\Config $storeConfig - * @param \Magento\Core\Controller\Varien\Front $frontController + * @param \Magento\App\FrontController $frontController * @param \Magento\Core\Model\Factory\Helper $helperFactory * @param \Magento\Core\Model\View\Url $viewUrl - * @param \Magento\Core\Model\View\Config $viewConfig + * @param \Magento\View\ConfigInterface $viewConfig * @param \Magento\Core\Model\Cache\StateInterface $cacheState * @param \Magento\AuthorizationInterface $authorization * @param \Magento\Core\Model\Logger $logger * @param \Magento\Core\Model\App $app * @param array $data - * + * * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( - \Magento\Core\Controller\Request\Http $request, - \Magento\Core\Model\Layout $layout, - \Magento\Core\Model\Event\Manager $eventManager, - \Magento\Core\Model\UrlInterface $urlBuilder, + \Magento\App\RequestInterface $request, + \Magento\View\LayoutInterface $layout, + \Magento\Event\ManagerInterface $eventManager, + \Magento\UrlInterface $urlBuilder, \Magento\Core\Model\Translate $translator, \Magento\Core\Model\CacheInterface $cache, - \Magento\Core\Model\View\DesignInterface $design, + \Magento\View\DesignInterface $design, \Magento\Core\Model\Session\AbstractSession $session, \Magento\Core\Model\Store\Config $storeConfig, - \Magento\Core\Controller\Varien\Front $frontController, + \Magento\App\FrontController $frontController, \Magento\Core\Model\Factory\Helper $helperFactory, \Magento\Core\Model\View\Url $viewUrl, - \Magento\Core\Model\View\Config $viewConfig, + \Magento\View\ConfigInterface $viewConfig, \Magento\Core\Model\Cache\StateInterface $cacheState, \Magento\AuthorizationInterface $authorization, \Magento\Core\Model\Logger $logger, diff --git a/app/code/Magento/Backend/Block/System/Config/Form/Field/Regexceptions.php b/app/code/Magento/Backend/Block/System/Config/Form/Field/Regexceptions.php index ae4748fe9fe5e..4eadf3c9e92be 100644 --- a/app/code/Magento/Backend/Block/System/Config/Form/Field/Regexceptions.php +++ b/app/code/Magento/Backend/Block/System/Config/Form/Field/Regexceptions.php @@ -70,11 +70,9 @@ protected function _construct() { $this->addColumn('search', array( 'label' => __('Search String'), - 'style' => 'width:120px', )); $this->addColumn('value', array( 'label' => __('Design Theme'), - 'style' => 'width:120px', )); $this->_addAfter = false; $this->_addButtonLabel = __('Add \Exception'); 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 4c69ee8edf68b..923206ff93bd3 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 @@ -49,20 +49,20 @@ class DisableOutput protected $_values; /** - * @var \Magento\Core\Model\ModuleListInterface + * @var \Magento\App\ModuleListInterface */ protected $_moduleList; /** * @param \Magento\Backend\Block\Context $context * @param \Magento\Backend\Model\Auth\Session $authSession - * @param \Magento\Core\Model\ModuleListInterface $moduleList + * @param \Magento\App\ModuleListInterface $moduleList * @param array $data */ public function __construct( \Magento\Backend\Block\Context $context, \Magento\Backend\Model\Auth\Session $authSession, - \Magento\Core\Model\ModuleListInterface $moduleList, + \Magento\App\ModuleListInterface $moduleList, array $data = array() ) { parent::__construct($context, $authSession, $data); diff --git a/app/code/Magento/Backend/Block/Template/Context.php b/app/code/Magento/Backend/Block/Template/Context.php index b861608abc632..def099d23b208 100644 --- a/app/code/Magento/Backend/Block/Template/Context.php +++ b/app/code/Magento/Backend/Block/Template/Context.php @@ -47,53 +47,53 @@ class Context extends \Magento\Core\Block\Template\Context /** * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Core\Controller\Request\Http $request - * @param \Magento\Core\Model\Layout $layout - * @param \Magento\Core\Model\Event\Manager $eventManager - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\App\RequestInterface $request + * @param \Magento\View\LayoutInterface $layout + * @param \Magento\Event\ManagerInterface $eventManager + * @param \Magento\UrlInterface $urlBuilder * @param \Magento\Core\Model\Translate $translator * @param \Magento\Core\Model\CacheInterface $cache - * @param \Magento\Core\Model\View\DesignInterface $design + * @param \Magento\View\DesignInterface $design * @param \Magento\Core\Model\Session $session * @param \Magento\Core\Model\Store\Config $storeConfig - * @param \Magento\Core\Controller\Varien\Front $frontController + * @param \Magento\App\FrontController $frontController * @param \Magento\Core\Model\Factory\Helper $helperFactory * @param \Magento\Core\Model\View\Url $viewUrl - * @param \Magento\Core\Model\View\Config $viewConfig + * @param \Magento\View\ConfigInterface $viewConfig * @param \Magento\Core\Model\Cache\StateInterface $cacheState - * @param \Magento\Core\Model\Dir $dirs + * @param \Magento\App\Dir $dirs * @param \Magento\Core\Model\Logger $logger * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\View\FileSystem $viewFileSystem - * @param \Magento\Core\Model\TemplateEngine\Factory $engineFactory + * @param \Magento\Core\Model\TemplateEngine\Pool $enginePool * @param \Magento\AuthorizationInterface $authorization * @param \Magento\Core\Model\App $app * @param \Magento\Backend\Model\Session $backendSession * @param \Magento\Core\Model\LocaleInterface $locale - * + * * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\Core\Model\StoreManager $storeManager, - \Magento\Core\Controller\Request\Http $request, - \Magento\Core\Model\Layout $layout, - \Magento\Core\Model\Event\Manager $eventManager, - \Magento\Core\Model\UrlInterface $urlBuilder, + \Magento\App\RequestInterface $request, + \Magento\View\LayoutInterface $layout, + \Magento\Event\ManagerInterface $eventManager, + \Magento\UrlInterface $urlBuilder, \Magento\Core\Model\Translate $translator, \Magento\Core\Model\CacheInterface $cache, - \Magento\Core\Model\View\DesignInterface $design, + \Magento\View\DesignInterface $design, \Magento\Core\Model\Session $session, \Magento\Core\Model\Store\Config $storeConfig, - \Magento\Core\Controller\Varien\Front $frontController, + \Magento\App\FrontController $frontController, \Magento\Core\Model\Factory\Helper $helperFactory, \Magento\Core\Model\View\Url $viewUrl, - \Magento\Core\Model\View\Config $viewConfig, + \Magento\View\ConfigInterface $viewConfig, \Magento\Core\Model\Cache\StateInterface $cacheState, - \Magento\Core\Model\Dir $dirs, + \Magento\App\Dir $dirs, \Magento\Core\Model\Logger $logger, \Magento\Filesystem $filesystem, \Magento\Core\Model\View\FileSystem $viewFileSystem, - \Magento\Core\Model\TemplateEngine\Factory $engineFactory, + \Magento\Core\Model\TemplateEngine\Pool $enginePool, \Magento\AuthorizationInterface $authorization, \Magento\Core\Model\App $app, \Magento\Backend\Model\Session $backendSession, @@ -102,7 +102,7 @@ public function __construct( parent::__construct( $request, $layout, $eventManager, $urlBuilder, $translator, $cache, $design, $session, $storeConfig, $frontController, $helperFactory, $viewUrl, $viewConfig, $cacheState, - $dirs, $logger, $filesystem, $viewFileSystem, $engineFactory, $app + $dirs, $logger, $filesystem, $viewFileSystem, $enginePool, $app ); $this->_storeManager = $storeManager; $this->_authorization = $authorization; @@ -123,7 +123,7 @@ public function getStoreManager() /** * Retrieve Authorization * - * @return \\Magento\AuthorizationInterface + * @return \Magento\AuthorizationInterface */ public function getAuthorization() { diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Currency.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Currency.php index e4a1dff97c796..6ffbd69dcc4e4 100644 --- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Currency.php +++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Currency.php @@ -49,7 +49,7 @@ class Currency * * @var \Magento\Core\Model\App */ - protected $_app; + protected $_storeManager; /** * Locale @@ -65,20 +65,20 @@ class Currency /** * @param \Magento\Backend\Block\Context $context - * @param \Magento\Core\Model\App $app + * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\LocaleInterface $locale * @param \Magento\Directory\Model\Currency\DefaultLocator $currencyLocator * @param array $data */ public function __construct( \Magento\Backend\Block\Context $context, - \Magento\Core\Model\App $app, + \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\LocaleInterface $locale, \Magento\Directory\Model\Currency\DefaultLocator $currencyLocator, array $data = array() ) { parent::__construct($context, $data); - $this->_app = $app; + $this->_storeManager = $storeManager; $this->_locale = $locale; $this->_currencyLocator = $currencyLocator; } @@ -135,7 +135,7 @@ protected function _getRate($row) if ($rate = $row->getData($this->getColumn()->getRateField())) { return floatval($rate); } - return $this->_app->getStore()->getBaseCurrency()->getRate($this->_getCurrencyCode($row)); + return $this->_storeManager->getStore()->getBaseCurrency()->getRate($this->_getCurrencyCode($row)); } /** diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Export.php b/app/code/Magento/Backend/Block/Widget/Grid/Export.php index 775a8ebb43a0d..67bf75f7c953d 100644 --- a/app/code/Magento/Backend/Block/Widget/Grid/Export.php +++ b/app/code/Magento/Backend/Block/Widget/Grid/Export.php @@ -91,7 +91,7 @@ protected function _construct() $this->addExportType($type['urlPath'], $type['label']); } } - $this->_exportPath = $this->_dirs->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'export'; + $this->_exportPath = $this->_dirs->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'export'; } /** diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Extended.php b/app/code/Magento/Backend/Block/Widget/Grid/Extended.php index cd5a644fbdb0f..72bdd253523a9 100644 --- a/app/code/Magento/Backend/Block/Widget/Grid/Extended.php +++ b/app/code/Magento/Backend/Block/Widget/Grid/Extended.php @@ -184,7 +184,7 @@ protected function _construct() { parent::_construct(); $this->_emptyText = __('We couldn\'t find any records.'); - $this->_exportPath = $this->_dirs->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'export'; + $this->_exportPath = $this->_dirs->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'export'; } /** diff --git a/app/code/Magento/Backend/Controller/AbstractAction.php b/app/code/Magento/Backend/Controller/AbstractAction.php index c7503740b8e09..a0f745f517503 100644 --- a/app/code/Magento/Backend/Controller/AbstractAction.php +++ b/app/code/Magento/Backend/Controller/AbstractAction.php @@ -349,9 +349,9 @@ protected function _initAuthentication() /** * Process not logged in user data * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request */ - protected function _processNotLoggedInUser(\Magento\Core\Controller\Request\Http $request) + protected function _processNotLoggedInUser(\Magento\App\RequestInterface $request) { $isRedirectNeeded = false; if ($request->getPost('login') && $this->_performLogin()) { diff --git a/app/code/Magento/Backend/Controller/Context.php b/app/code/Magento/Backend/Controller/Context.php index cbc37f128b37c..d3218cad9d007 100644 --- a/app/code/Magento/Backend/Controller/Context.php +++ b/app/code/Magento/Backend/Controller/Context.php @@ -70,13 +70,13 @@ class Context extends \Magento\Core\Controller\Varien\Action\Context /** * @param \Magento\Core\Model\Logger $logger - * @param \Magento\Core\Controller\Request\Http $request - * @param \Magento\Core\Controller\Response\Http $response + * @param \Magento\App\RequestInterface $request + * @param \Magento\App\ResponseInterface $response * @param \Magento\ObjectManager $objectManager - * @param \Magento\Core\Controller\Varien\Front $frontController - * @param \Magento\Core\Model\Layout $layout - * @param \Magento\Core\Model\Event\Manager $eventManager - * @param bool $isRenderInherited + * @param \Magento\App\FrontController $frontController + * @param \Magento\View\LayoutInterface $layout + * @param \Magento\Event\ManagerInterface $eventManager + * @param $isRenderInherited * @param \Magento\Backend\Model\Session $session * @param \Magento\Backend\Helper\Data $helper * @param \Magento\AuthorizationInterface $authorization @@ -84,17 +84,17 @@ class Context extends \Magento\Core\Controller\Varien\Action\Context * @param \Magento\Backend\Model\Auth $auth * @param \Magento\Backend\Model\Url $backendUrl * @param \Magento\Core\Model\LocaleInterface $locale - * + * * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\Core\Model\Logger $logger, - \Magento\Core\Controller\Request\Http $request, - \Magento\Core\Controller\Response\Http $response, + \Magento\App\RequestInterface $request, + \Magento\App\ResponseInterface $response, \Magento\ObjectManager $objectManager, - \Magento\Core\Controller\Varien\Front $frontController, - \Magento\Core\Model\Layout $layout, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\App\FrontController $frontController, + \Magento\View\LayoutInterface $layout, + \Magento\Event\ManagerInterface $eventManager, $isRenderInherited, \Magento\Backend\Model\Session $session, \Magento\Backend\Helper\Data $helper, diff --git a/app/code/Magento/Backend/Controller/Factory.php b/app/code/Magento/Backend/Controller/Factory.php index d72ceccd66ef0..18aecc8d4dbc4 100644 --- a/app/code/Magento/Backend/Controller/Factory.php +++ b/app/code/Magento/Backend/Controller/Factory.php @@ -33,7 +33,7 @@ */ namespace Magento\Backend\Controller; -class Factory extends \Magento\Core\Controller\Varien\Action\Factory +class Factory extends \Magento\App\ActionFactory { /** * @param string $controllerName diff --git a/app/code/Magento/Backend/Controller/Router/DefaultRouter.php b/app/code/Magento/Backend/Controller/Router/DefaultRouter.php index 105fced1d4c3f..a5a5a2ba2a4e1 100644 --- a/app/code/Magento/Backend/Controller/Router/DefaultRouter.php +++ b/app/code/Magento/Backend/Controller/Router/DefaultRouter.php @@ -68,7 +68,7 @@ class DefaultRouter extends \Magento\Core\Controller\Varien\Router\Base protected $_defaultRouteId; /** - * @var \Magento\Core\Model\App\State + * @var \Magento\App\State */ protected $_appState; @@ -84,18 +84,17 @@ class DefaultRouter extends \Magento\Core\Controller\Varien\Router\Base /** * @param \Magento\Backend\Helper\Data $backendData - * @param \Magento\Core\Controller\Varien\Action\Factory $controllerFactory + * @param \Magento\App\ActionFactory $controllerFactory * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\App $app - * @param \Magento\Core\Model\App\State $appState - * @param \Magento\Core\Model\Config\Scope $configScope + * @param \Magento\App\State $appState * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\Route\Config $routeConfig * @param \Magento\Core\Model\Url\SecurityInfoInterface $securityInfo * @param \Magento\Core\Model\Config $config * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\Url $url - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\State $appState * @param $areaCode * @param $baseController * @param $routerId @@ -107,18 +106,17 @@ class DefaultRouter extends \Magento\Core\Controller\Varien\Router\Base */ public function __construct( \Magento\Backend\Helper\Data $backendData, - \Magento\Core\Controller\Varien\Action\Factory $controllerFactory, + \Magento\App\ActionFactory $controllerFactory, \Magento\Filesystem $filesystem, \Magento\Core\Model\App $app, - \Magento\Core\Model\App\State $appState, - \Magento\Core\Model\Config\Scope $configScope, + \Magento\App\State $appState, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\Route\Config $routeConfig, \Magento\Core\Model\Url\SecurityInfoInterface $securityInfo, \Magento\Core\Model\Config $config, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\Url $url, - \Magento\Core\Model\App\State $appState, + \Magento\App\State $appState, $areaCode, $baseController, $routerId, @@ -128,7 +126,6 @@ public function __construct( $controllerFactory, $filesystem, $app, - $configScope, $coreStoreConfig, $routeConfig, $securityInfo, @@ -147,9 +144,6 @@ public function __construct( $this->_url = $url; $this->_areaFrontName = $this->_backendData->getAreaFrontName(); $this->_defaultRouteId = $defaultRouteId; - if (empty($this->_areaFrontName)) { - throw new \InvalidArgumentException('Area Front Name should be defined'); - } } /** @@ -250,7 +244,7 @@ protected function _shouldBeSecure($path) /** * Retrieve current secure url * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @return string */ protected function _getCurrentSecureUrl($request) diff --git a/app/code/Magento/Backend/Helper/Data.php b/app/code/Magento/Backend/Helper/Data.php index b15851ab5ac5b..58c66c9854076 100644 --- a/app/code/Magento/Backend/Helper/Data.php +++ b/app/code/Magento/Backend/Helper/Data.php @@ -32,38 +32,17 @@ class Data extends \Magento\Core\Helper\AbstractHelper { const XML_PATH_USE_CUSTOM_ADMIN_URL = 'admin/url/use_custom'; - const XML_PATH_USE_CUSTOM_ADMIN_PATH = 'admin/url/use_custom_path'; - const XML_PATH_CUSTOM_ADMIN_PATH = 'admin/url/custom_path'; - const XML_PATH_BACKEND_AREA_FRONTNAME = 'default/backend/frontName'; const BACKEND_AREA_CODE = 'adminhtml'; - const PARAM_BACKEND_FRONT_NAME = 'backend.frontName'; - protected $_pageHelpUrl; - /** - * @var \Magento\Core\Model\ConfigInterface - */ - protected $_config; - /** * @var \Magento\Core\Model\Config\Primary */ protected $_primaryConfig; /** - * @var string - */ - protected $_defaultAreaFrontName; - - /** - * Area front name - * @var string - */ - protected $_areaFrontName = null; - - /** - * @var \Magento\Core\Model\RouterList + * @var \Magento\App\RouterList */ protected $_routerList; @@ -75,7 +54,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper protected $_coreData = null; /** - * @var \Magento\Core\Model\AppInterface + * @var \Magento\Core\Model\App */ protected $_app; @@ -90,48 +69,38 @@ class Data extends \Magento\Core\Helper\AbstractHelper protected $_auth; /** - * Backend area front name - * - * @var string + * @var \Magento\Backend\App\Area\FrontNameResolver */ - protected $_backendFrontName; + protected $_frontNameResolver; /** * @param \Magento\Core\Helper\Context $context * @param \Magento\Core\Helper\Data $coreData - * @param \Magento\Core\Model\ConfigInterface $applicationConfig * @param \Magento\Core\Model\Config\Primary $primaryConfig - * @param \Magento\Core\Model\RouterList $routerList - * @param \Magento\Core\Model\AppInterface $app + * @param \Magento\App\RouterList $routerList + * @param \Magento\Core\Model\App $app * @param \Magento\Backend\Model\Url $backendUrl * @param \Magento\Backend\Model\Auth $auth - * @param string $defaultAreaFrontName - * @param string $backendFrontName - * - * @SuppressWarnings(PHPMD.ExcessiveParameterList) + * @param \Magento\Backend\App\Area\FrontNameResolver $frontNameResolver */ public function __construct( \Magento\Core\Helper\Context $context, \Magento\Core\Helper\Data $coreData, - \Magento\Core\Model\ConfigInterface $applicationConfig, \Magento\Core\Model\Config\Primary $primaryConfig, - \Magento\Core\Model\RouterList $routerList, - \Magento\Core\Model\AppInterface $app, + \Magento\App\RouterList $routerList, + \Magento\Core\Model\App $app, \Magento\Backend\Model\Url $backendUrl, \Magento\Backend\Model\Auth $auth, - $defaultAreaFrontName, - $backendFrontName + \Magento\Backend\App\Area\FrontNameResolver $frontNameResolver ) { parent::__construct($context); $this->_coreData = $coreData; - $this->_config = $applicationConfig; $this->_primaryConfig = $primaryConfig; - $this->_defaultAreaFrontName = $defaultAreaFrontName; $this->_routerList = $routerList; $this->_app = $app; $this->_backendUrl = $backendUrl; $this->_auth = $auth; - $this->_backendFrontName = $backendFrontName; + $this->_frontNameResolver = $frontNameResolver; } public function getPageHelpUrl() @@ -252,28 +221,6 @@ public function getAreaCode() */ public function getAreaFrontName() { - if (null === $this->_areaFrontName) { - $isCustomPathUsed = (bool)(string)$this->_config->getValue(self::XML_PATH_USE_CUSTOM_ADMIN_PATH, 'default'); - - if ($isCustomPathUsed) { - $this->_areaFrontName = (string)$this->_config->getValue(self::XML_PATH_CUSTOM_ADMIN_PATH, 'default'); - } elseif ($this->_backendFrontName) { - $this->_areaFrontName = $this->_backendFrontName; - } else { - $this->_areaFrontName = $this->_defaultAreaFrontName; - } - } - return $this->_areaFrontName; - } - - /** - * Invalidate cache of area front name - * - * @return \Magento\Backend\Helper\Data - */ - public function clearAreaFrontName() - { - $this->_areaFrontName = null; - return $this; + return $this->_frontNameResolver->getFrontName(); } } diff --git a/app/code/Magento/Backend/Model/Auth.php b/app/code/Magento/Backend/Model/Auth.php index 999e98fdf3193..795b7a4092d47 100644 --- a/app/code/Magento/Backend/Model/Auth.php +++ b/app/code/Magento/Backend/Model/Auth.php @@ -51,7 +51,7 @@ class Auth /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -66,7 +66,7 @@ class Auth protected $_modelFactory; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Backend\Helper\Data $backendData * @param \Magento\Backend\Model\Auth\StorageInterface $authStorage * @param \Magento\Backend\Model\Auth\Credential\StorageInterface $credentialStorage @@ -74,7 +74,7 @@ class Auth * @param \Magento\Core\Model\Factory $modelFactory */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Backend\Helper\Data $backendData, \Magento\Backend\Model\Auth\StorageInterface $authStorage, \Magento\Backend\Model\Auth\Credential\StorageInterface $credentialStorage, @@ -131,21 +131,11 @@ public function getUser() * Initialize credential storage from configuration * * @return void - * @throw \Magento\Backend\Model\Auth\Exception if credential storage absent or has not correct configuration */ protected function _initCredentialStorage() { - $areaConfig = $this->_coreConfig->getAreaConfig($this->_backendData->getAreaCode()); - - if (isset($areaConfig['auth_credential_storage'])) { - $storage = $this->_modelFactory->create($areaConfig['auth_credential_storage']); - if ($storage instanceof \Magento\Backend\Model\Auth\Credential\StorageInterface) { - $this->_credentialStorage = $storage; - return; - } - } - self::throwException( - __('There are no authentication credential storage.') + $this->_credentialStorage = $this->_modelFactory->create( + 'Magento\Backend\Model\Auth\Credential\StorageInterface' ); } diff --git a/app/code/Magento/Backend/Model/Config.php b/app/code/Magento/Backend/Model/Config.php index 6f7ad29e737af..dde68d58c088f 100644 --- a/app/code/Magento/Backend/Model/Config.php +++ b/app/code/Magento/Backend/Model/Config.php @@ -47,7 +47,7 @@ class Config extends \Magento\Object /** * Event dispatcher * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -108,7 +108,7 @@ class Config extends \Magento\Object /** * @param \Magento\Core\Model\App $application * @param \Magento\Core\Model\Config $config - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Backend\Model\Config\Structure $configStructure * @param \Magento\Core\Model\Resource\TransactionFactory $transactionFactory * @param \Magento\Backend\Model\Config\Loader $configLoader @@ -119,7 +119,7 @@ class Config extends \Magento\Object public function __construct( \Magento\Core\Model\App $application, \Magento\Core\Model\Config $config, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Backend\Model\Config\Structure $configStructure, \Magento\Core\Model\Resource\TransactionFactory $transactionFactory, \Magento\Backend\Model\Config\Loader $configLoader, diff --git a/app/code/Magento/Backend/Model/Config/Backend/Admin/Custompath.php b/app/code/Magento/Backend/Model/Config/Backend/Admin/Custompath.php index 729dbe6d8877b..72f7107ac47d9 100644 --- a/app/code/Magento/Backend/Model/Config/Backend/Admin/Custompath.php +++ b/app/code/Magento/Backend/Model/Config/Backend/Admin/Custompath.php @@ -35,37 +35,6 @@ class Custompath extends \Magento\Core\Model\Config\Value { - /** - * Backend data - * - * @var \Magento\Backend\Helper\Data - */ - protected $_backendData = null; - - /** - * @param \Magento\Backend\Helper\Data $backendData - * @param \Magento\Core\Model\Context $context - * @param \Magento\Core\Model\Registry $registry - * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Core\Model\Config $config - * @param \Magento\Core\Model\Resource\AbstractResource $resource - * @param \Magento\Data\Collection\Db $resourceCollection - * @param array $data - */ - public function __construct( - \Magento\Backend\Helper\Data $backendData, - \Magento\Core\Model\Context $context, - \Magento\Core\Model\Registry $registry, - \Magento\Core\Model\StoreManager $storeManager, - \Magento\Core\Model\Config $config, - \Magento\Core\Model\Resource\AbstractResource $resource = null, - \Magento\Data\Collection\Db $resourceCollection = null, - array $data = array() - ) { - $this->_backendData = $backendData; - parent::__construct($context, $registry, $storeManager, $config, $resource, $resourceCollection, $data); - } - /** * Check whether redirect should be set * @@ -74,7 +43,6 @@ public function __construct( protected function _beforeSave() { if ($this->getOldValue() != $this->getValue()) { - $this->_backendData->clearAreaFrontName(); $this->_coreRegistry->register('custom_admin_path_redirect', true, true); } return $this; 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 ad83d0ad79def..1da5b648850d4 100644 --- a/app/code/Magento/Backend/Model/Config/Backend/Admin/Robots.php +++ b/app/code/Magento/Backend/Model/Config/Backend/Admin/Robots.php @@ -47,7 +47,7 @@ class Robots extends \Magento\Core\Model\Config\Value * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Config $config * @param \Magento\Filesystem $filesystem - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param \Magento\Data\Collection\Db $resourceCollection * @param array $data @@ -58,7 +58,7 @@ public function __construct( \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Config $config, \Magento\Filesystem $filesystem, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Core\Model\Resource\AbstractResource $resource = null, \Magento\Data\Collection\Db $resourceCollection = null, array $data = array() @@ -73,7 +73,7 @@ public function __construct( $data ); $this->_filesystem = $filesystem; - $this->_filePath = $dir->getDir(\Magento\Core\Model\Dir::ROOT) . '/robots.txt'; + $this->_filePath = $dir->getDir(\Magento\App\Dir::ROOT) . '/robots.txt'; } /** diff --git a/app/code/Magento/Backend/Model/Config/Backend/Admin/Usecustompath.php b/app/code/Magento/Backend/Model/Config/Backend/Admin/Usecustompath.php deleted file mode 100644 index cf10a3ce67934..0000000000000 --- a/app/code/Magento/Backend/Model/Config/Backend/Admin/Usecustompath.php +++ /dev/null @@ -1,84 +0,0 @@ - - */ -namespace Magento\Backend\Model\Config\Backend\Admin; - -class Usecustompath extends \Magento\Core\Model\Config\Value -{ - /** - * Backend data - * - * @var \Magento\Backend\Helper\Data - */ - protected $_backendData = null; - - /** - * @param \Magento\Backend\Helper\Data $backendData - * @param \Magento\Core\Model\Context $context - * @param \Magento\Core\Model\Registry $registry - * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Core\Model\Config $config - * @param \Magento\Core\Model\Resource\AbstractResource $resource - * @param \Magento\Data\Collection\Db $resourceCollection - * @param array $data - */ - public function __construct( - \Magento\Backend\Helper\Data $backendData, - \Magento\Core\Model\Context $context, - \Magento\Core\Model\Registry $registry, - \Magento\Core\Model\StoreManager $storeManager, - \Magento\Core\Model\Config $config, - \Magento\Core\Model\Resource\AbstractResource $resource = null, - \Magento\Data\Collection\Db $resourceCollection = null, - array $data = array() - ) { - $this->_backendData = $backendData; - parent::__construct($context, $registry, $storeManager, $config, $resource, $resourceCollection, $data); - } - - /** - * Check whether redirect should be set - * - * @return \Magento\Backend\Model\Config\Backend\Admin\Usecustompath - */ - protected function _beforeSave() - { - if ($this->getOldValue() != $this->getValue()) { - $this->_backendData->clearAreaFrontName(); - $this->_coreRegistry->register('custom_admin_path_redirect', true, true); - } - - return $this; - } -} diff --git a/app/code/Magento/Backend/Model/Config/Backend/File.php b/app/code/Magento/Backend/Model/Config/Backend/File.php index b345145672c0b..0c09afff08b7e 100644 --- a/app/code/Magento/Backend/Model/Config/Backend/File.php +++ b/app/code/Magento/Backend/Model/Config/Backend/File.php @@ -56,7 +56,7 @@ class File extends \Magento\Core\Model\Config\Value protected $_uploaderFactory; /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -68,7 +68,7 @@ class File extends \Magento\Core\Model\Config\Value * @param \Magento\Core\Model\Config $config * @param \Magento\Backend\Model\Config\Backend\File\RequestData\RequestDataInterface $requestData * @param \Magento\Filesystem $filesystem - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param \Magento\Data\Collection\Db $resourceCollection * @param array $data @@ -83,7 +83,7 @@ public function __construct( \Magento\Core\Model\Config $config, \Magento\Backend\Model\Config\Backend\File\RequestData\RequestDataInterface $requestData, \Magento\Filesystem $filesystem, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Core\Model\Resource\AbstractResource $resource = null, \Magento\Data\Collection\Db $resourceCollection = null, array $data = array() @@ -216,7 +216,7 @@ protected function _getUploadDir() */ protected function _getUploadRoot($token) { - return $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA); + return $this->_dir->getDir(\Magento\App\Dir::MEDIA); } /** diff --git a/app/code/Magento/Backend/Model/Config/ScopeDefiner.php b/app/code/Magento/Backend/Model/Config/ScopeDefiner.php index 464576a9778eb..c723557ea6c72 100644 --- a/app/code/Magento/Backend/Model/Config/ScopeDefiner.php +++ b/app/code/Magento/Backend/Model/Config/ScopeDefiner.php @@ -38,14 +38,14 @@ class ScopeDefiner /** * Request object * - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; /** - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request */ - public function __construct(\Magento\Core\Controller\Request\Http $request) + public function __construct(\Magento\App\RequestInterface $request) { $this->_request = $request; } diff --git a/app/code/Magento/Backend/Model/Locale.php b/app/code/Magento/Backend/Model/Locale.php index d8188c18fdb7a..c96f676f0d414 100644 --- a/app/code/Magento/Backend/Model/Locale.php +++ b/app/code/Magento/Backend/Model/Locale.php @@ -44,7 +44,7 @@ class Locale extends \Magento\Core\Model\Locale protected $_localeManager; /** - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; @@ -54,14 +54,14 @@ class Locale extends \Magento\Core\Model\Locale protected $_localeValidator; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Backend\Model\Session $session * @param \Magento\Backend\Model\Locale\Manager $localeManager - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @param \Magento\Core\Model\Locale\Validator $localeValidator * @param \Magento\Core\Helper\Translate $translate * @param \Magento\Core\Model\Store\Config $coreStoreConfig - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\State $appState * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Locale\Config $config * @param \Magento\Core\Model\App $app @@ -70,14 +70,14 @@ class Locale extends \Magento\Core\Model\Locale * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Backend\Model\Session $session, \Magento\Backend\Model\Locale\Manager $localeManager, - \Magento\Core\Controller\Request\Http $request, + \Magento\App\RequestInterface $request, \Magento\Core\Model\Locale\Validator $localeValidator, \Magento\Core\Helper\Translate $translate, \Magento\Core\Model\Store\Config $coreStoreConfig, - \Magento\Core\Model\App\State $appState, + \Magento\App\State $appState, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Locale\Config $config, \Magento\Core\Model\App $app, diff --git a/app/code/Magento/Backend/Model/Menu/Config.php b/app/code/Magento/Backend/Model/Menu/Config.php index d96c087029988..84afc92fa3920 100644 --- a/app/code/Magento/Backend/Model/Menu/Config.php +++ b/app/code/Magento/Backend/Model/Menu/Config.php @@ -36,7 +36,7 @@ class Config protected $_configCacheType; /** - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -77,7 +77,7 @@ class Config * @param \Magento\Backend\Model\MenuFactory $menuFactory * @param \Magento\Backend\Model\Menu\Config\Reader $configReader * @param \Magento\Core\Model\Cache\Type\Config $configCacheType - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Core\Model\StoreManagerInterface $storeManager */ @@ -87,7 +87,7 @@ public function __construct( \Magento\Backend\Model\MenuFactory $menuFactory, \Magento\Backend\Model\Menu\Config\Reader $configReader, \Magento\Core\Model\Cache\Type\Config $configCacheType, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Core\Model\StoreManagerInterface $storeManager ) { diff --git a/app/code/Magento/Backend/Model/Menu/Item.php b/app/code/Magento/Backend/Model/Menu/Item.php index 2dfb5fcc7e183..17a3dcbf226b7 100644 --- a/app/code/Magento/Backend/Model/Menu/Item.php +++ b/app/code/Magento/Backend/Model/Menu/Item.php @@ -161,7 +161,7 @@ class Item /** * Module list * - * @var \Magento\Core\Model\ModuleListInterface + * @var \Magento\App\ModuleListInterface */ protected $_moduleList; @@ -172,7 +172,7 @@ class Item * @param \Magento\Backend\Model\MenuFactory $menuFactory * @param \Magento\Backend\Model\Url $urlModel * @param \Magento\Core\Helper\AbstractHelper $helper - * @param \Magento\Core\Model\ModuleListInterface $moduleList + * @param \Magento\App\ModuleListInterface $moduleList * @param array $data */ public function __construct( @@ -182,7 +182,7 @@ public function __construct( \Magento\Backend\Model\MenuFactory $menuFactory, \Magento\Backend\Model\Url $urlModel, \Magento\Core\Helper\AbstractHelper $helper, - \Magento\Core\Model\ModuleListInterface $moduleList, + \Magento\App\ModuleListInterface $moduleList, array $data = array() ) { $this->_validator = $validator; @@ -499,7 +499,7 @@ public function __wakeup() $this->_storeConfig = $objectManager->get('Magento\Core\Model\Store\Config'); $this->_menuFactory = $objectManager->get('Magento\Backend\Model\MenuFactory'); $this->_urlModel = $objectManager->get('Magento\Backend\Model\Url'); - $this->_moduleList = $objectManager->get('Magento\Core\Model\ModuleListInterface'); + $this->_moduleList = $objectManager->get('Magento\App\ModuleListInterface'); if ($this->_serializedSubmenu) { $this->_submenu = $this->_menuFactory->create(); $this->_submenu->unserialize($this->_serializedSubmenu); diff --git a/app/code/Magento/Backend/Model/Observer.php b/app/code/Magento/Backend/Model/Observer.php index b34ad29148a4c..6f8e542816098 100644 --- a/app/code/Magento/Backend/Model/Observer.php +++ b/app/code/Magento/Backend/Model/Observer.php @@ -41,16 +41,24 @@ class Observer */ protected $_app; + /** + * @var \Magento\App\RequestInterface + */ + protected $_request; + /** * @param \Magento\Backend\Model\Session $backendSession * @param \Magento\Core\Model\App $app + * @param \Magento\App\RequestInterface $request */ public function __construct( \Magento\Backend\Model\Session $backendSession, - \Magento\Core\Model\App $app + \Magento\Core\Model\App $app, + \Magento\App\RequestInterface $request ) { $this->_backendSession = $backendSession; $this->_app = $app; + $this->_request = $request; } /** @@ -78,12 +86,11 @@ public function bindLocale($observer) */ public function massactionPrepareKey() { - $request = $this->_app->getFrontController()->getRequest(); - $key = $request->getPost('massaction_prepare_key'); + $key = $this->_request->getPost('massaction_prepare_key'); if ($key) { - $postData = $request->getPost($key); + $postData = $this->_request->getPost($key); $value = is_array($postData) ? $postData : explode(',', $postData); - $request->setPost($key, $value ? $value : null); + $this->_request->setPost($key, $value ? $value : null); } return $this; } diff --git a/app/code/Magento/Backend/Model/Url.php b/app/code/Magento/Backend/Model/Url.php index f3f8cd929ff21..20242b6159f41 100644 --- a/app/code/Magento/Backend/Model/Url.php +++ b/app/code/Magento/Backend/Model/Url.php @@ -26,6 +26,9 @@ namespace Magento\Backend\Model; +use Magento\Backend\Model\Auth; +use Magento\Backend\Model\Menu; + /** * Class \Magento\Backend\Model\Url * @@ -89,21 +92,23 @@ class Url extends \Magento\Core\Model\Url protected $_cache; /** + * @param \Magento\App\RouterListInterface $routerList + * @param \Magento\App\RequestInterface $request * @param \Magento\Core\Model\Url\SecurityInfoInterface $securityInfo * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Backend\Helper\Data $backendHelper * @param \Magento\Core\Model\Session $session - * @param \Magento\Backend\Model\Menu\Config $menuConfig + * @param Menu\Config $menuConfig * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Core\Model\App $app * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\CacheInterface $cache - * @param \Magento\Backend\Model\Auth\Session $authSession + * @param Auth\Session $authSession * @param array $data - * - * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( + \Magento\App\RouterListInterface $routerList, + \Magento\App\RequestInterface $request, \Magento\Core\Model\Url\SecurityInfoInterface $securityInfo, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Backend\Helper\Data $backendHelper, @@ -116,7 +121,8 @@ public function __construct( \Magento\Backend\Model\Auth\Session $authSession, array $data = array() ) { - parent::__construct($securityInfo, $coreStoreConfig, $coreData, $app, $storeManager, $session, $data); + parent::__construct( + $routerList, $request, $securityInfo, $coreStoreConfig, $coreData, $app, $storeManager, $session, $data); $this->_startupMenuItemId = $coreStoreConfig->getConfig(self::XML_PATH_STARTUP_MENU_ITEM); $this->_backendHelper = $backendHelper; $this->_coreSession = $session; diff --git a/app/code/Magento/Backend/Model/Url/Proxy.php b/app/code/Magento/Backend/Model/Url/Proxy.php index 4300dfbfd4b90..a12360168c352 100644 --- a/app/code/Magento/Backend/Model/Url/Proxy.php +++ b/app/code/Magento/Backend/Model/Url/Proxy.php @@ -239,7 +239,7 @@ public function getConfigData($key, $prefix = null) /** * {@inheritdoc} */ - public function setRequest(\Zend_Controller_Request_Http $request) + public function setRequest(\Magento\App\RequestInterface $request) { return $this->_getObject()->setRequest($request); } diff --git a/app/code/Magento/Backend/etc/adminhtml/di.xml b/app/code/Magento/Backend/etc/adminhtml/di.xml index 4783a361347ea..714ade4dfffb8 100644 --- a/app/code/Magento/Backend/etc/adminhtml/di.xml +++ b/app/code/Magento/Backend/etc/adminhtml/di.xml @@ -27,7 +27,7 @@ - + diff --git a/app/code/Magento/Backend/etc/adminhtml/system.xml b/app/code/Magento/Backend/etc/adminhtml/system.xml index 831a102c69f51..a0a9149973e53 100644 --- a/app/code/Magento/Backend/etc/adminhtml/system.xml +++ b/app/code/Magento/Backend/etc/adminhtml/system.xml @@ -451,7 +451,7 @@ Magento\Backend\Model\Config\Source\Yesno - Magento\Backend\Model\Config\Backend\Admin\Usecustompath + Magento\Backend\Model\Config\Backend\Admin\Custompath diff --git a/app/code/Magento/Backend/etc/di.xml b/app/code/Magento/Backend/etc/di.xml index 7e5f09bf18ff0..3944fb928762b 100644 --- a/app/code/Magento/Backend/etc/di.xml +++ b/app/code/Magento/Backend/etc/di.xml @@ -25,6 +25,16 @@ --> + + + + + + Magento\Backend\App\Area\FrontNameResolver + + + + @@ -55,7 +65,7 @@ - + @@ -66,13 +76,12 @@ - - - backend - - - Magento\Backend\Helper\Data::PARAM_BACKEND_FRONT_NAME + + + Magento\Backend\App\Area\FrontNameResolver::PARAM_BACKEND_FRONT_NAME + + @@ -83,11 +92,11 @@ - + - Magento\Backend\Model\Router\NoRouteHandler + Magento\Backend\App\Router\NoRouteHandler 10 diff --git a/app/code/Magento/Backend/view/adminhtml/system/config/form/field/array.phtml b/app/code/Magento/Backend/view/adminhtml/system/config/form/field/array.phtml index 0ec28f11d2f9a..f6c19c2ae8a1f 100644 --- a/app/code/Magento/Backend/view/adminhtml/system/config/form/field/array.phtml +++ b/app/code/Magento/Backend/view/adminhtml/system/config/form/field/array.phtml @@ -27,90 +27,81 @@ getHtmlId() ? $this->getHtmlId() : '_' . uniqid(); - -$_colspan = 2; -if (!$this->isAddAfter()) { - $_colspan -= 1; -} -$_colspan = $_colspan > 1 ? 'colspan="' . $_colspan . '"' : ''; +$_colspan = $this->isAddAfter() ? 2 : 1; ?> -
- - - - -getColumns() as $columnName => $column):?> - - - - - - - - - - - +
+
>
> - -
+ + + getColumns() as $columnName => $column): ?> + + + + + + + + + + +
Action
+ +
- -
-
- -
- - + //]]> + +
\ No newline at end of file diff --git a/app/code/Magento/Backend/view/adminhtml/widget/grid/column_set.phtml b/app/code/Magento/Backend/view/adminhtml/widget/grid/column_set.phtml index 5c5f217476224..c260dc7fe75ee 100644 --- a/app/code/Magento/Backend/view/adminhtml/widget/grid/column_set.phtml +++ b/app/code/Magento/Backend/view/adminhtml/widget/grid/column_set.phtml @@ -44,7 +44,7 @@ $numColumns = sizeof($this->getColumns()); getColumns() as $_column): ?> getHeaderHtmlProperty() ?>> - getHeaderHtml() ?> + getHeaderHtml() ?> diff --git a/app/code/Magento/Backup/Helper/Data.php b/app/code/Magento/Backup/Helper/Data.php index 05fa372fad469..7e85b1b14d095 100644 --- a/app/code/Magento/Backup/Helper/Data.php +++ b/app/code/Magento/Backup/Helper/Data.php @@ -77,7 +77,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper /** * Directory model * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -96,7 +96,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper * @param \Magento\AuthorizationInterface $authorization * @param \Magento\Core\Model\Cache\Config $cacheConfig * @param \Magento\Core\Model\Cache\TypeListInterface $cacheTypeList - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Index\Model\Resource\Process\CollectionFactory $processFactory */ public function __construct( @@ -105,7 +105,7 @@ public function __construct( \Magento\AuthorizationInterface $authorization, \Magento\Core\Model\Cache\Config $cacheConfig, \Magento\Core\Model\Cache\TypeListInterface $cacheTypeList, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Index\Model\Resource\Process\CollectionFactory $processFactory ) { parent::__construct($context); @@ -163,7 +163,7 @@ public function getDefaultBackupType() */ public function getBackupsDir() { - return $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'backups'; + return $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'backups'; } /** @@ -227,12 +227,12 @@ public function getBackupIgnorePaths() '.git', '.svn', 'maintenance.flag', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'session', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'cache', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'full_page_cache', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'locks', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'log', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'report', + $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', ); } @@ -247,10 +247,10 @@ public function getRollbackIgnorePaths() '.svn', '.git', 'maintenance.flag', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'session', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'locks', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'log', - $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'report', + $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', ); diff --git a/app/code/Magento/Backup/Model/Fs/Collection.php b/app/code/Magento/Backup/Model/Fs/Collection.php index 014832e2571bb..3d581477295f2 100644 --- a/app/code/Magento/Backup/Model/Fs/Collection.php +++ b/app/code/Magento/Backup/Model/Fs/Collection.php @@ -51,7 +51,7 @@ class Collection extends \Magento\Data\Collection\Filesystem /** * Directory model * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -66,14 +66,14 @@ class Collection extends \Magento\Data\Collection\Filesystem * @param \Magento\Backup\Helper\Data $backupData * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\EntityFactory $entityFactory - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Backup\Model\Backup $backup */ public function __construct( \Magento\Backup\Helper\Data $backupData, \Magento\Filesystem $filesystem, \Magento\Core\Model\EntityFactory $entityFactory, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Backup\Model\Backup $backup ) { $this->_backupData = $backupData; @@ -83,7 +83,7 @@ public function __construct( $this->_filesystem = $filesystem; $this->_dir = $dir; $this->_backup = $backup; - $this->_baseDir = $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'backups'; + $this->_baseDir = $this->_dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'backups'; $this->_filesystem->setIsAllowCreateDirectories(true); $this->_filesystem->ensureDirectoryExists($this->_baseDir); diff --git a/app/code/Magento/Backup/Model/Observer.php b/app/code/Magento/Backup/Model/Observer.php index cb865b6d93513..924e744684540 100644 --- a/app/code/Magento/Backup/Model/Observer.php +++ b/app/code/Magento/Backup/Model/Observer.php @@ -75,7 +75,7 @@ class Observer /** * Directory model * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -89,7 +89,7 @@ class Observer * @param \Magento\Core\Model\Registry $coreRegistry * @param \Magento\Core\Model\Logger $logger * @param \Magento\Core\Model\Store\Config $coreStoreConfig - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Backup\Factory $backupFactory */ public function __construct( @@ -97,7 +97,7 @@ public function __construct( \Magento\Core\Model\Registry $coreRegistry, \Magento\Core\Model\Logger $logger, \Magento\Core\Model\Store\Config $coreStoreConfig, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Backup\Factory $backupFactory ) { $this->_backupData = $backupData; diff --git a/app/code/Magento/Bundle/Model/Product/Price.php b/app/code/Magento/Bundle/Model/Product/Price.php index 1defc7e4f2360..9a5b72029060e 100644 --- a/app/code/Magento/Bundle/Model/Product/Price.php +++ b/app/code/Magento/Bundle/Model/Product/Price.php @@ -64,7 +64,7 @@ class Price extends \Magento\Catalog\Model\Product\Type\Price * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\LocaleInterface $locale * @param \Magento\Customer\Model\Session $customerSession - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Tax\Helper\Data $taxData */ public function __construct( @@ -72,7 +72,7 @@ public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\LocaleInterface $locale, \Magento\Customer\Model\Session $customerSession, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Tax\Helper\Data $taxData ) { $this->_taxData = $taxData; diff --git a/app/code/Magento/Bundle/Model/Product/Type.php b/app/code/Magento/Bundle/Model/Product/Type.php index 69f05502e9dd7..9ff53ebcd0058 100644 --- a/app/code/Magento/Bundle/Model/Product/Type.php +++ b/app/code/Magento/Bundle/Model/Product/Type.php @@ -147,7 +147,7 @@ class Type extends \Magento\Catalog\Model\Product\Type\AbstractType * @param \Magento\Catalog\Model\Product\Option $catalogProductOption * @param \Magento\Eav\Model\Config $eavConfig * @param \Magento\Catalog\Model\Product\Type $catalogProductType - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Core\Helper\File\Storage\Database $fileStorageDb * @param \Magento\Filesystem $filesystem @@ -171,7 +171,7 @@ public function __construct( \Magento\Catalog\Model\Product\Option $catalogProductOption, \Magento\Eav\Model\Config $eavConfig, \Magento\Catalog\Model\Product\Type $catalogProductType, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Data $coreData, \Magento\Core\Helper\File\Storage\Database $fileStorageDb, \Magento\Filesystem $filesystem, diff --git a/app/code/Magento/Bundle/Model/Resource/Price/Index.php b/app/code/Magento/Bundle/Model/Resource/Price/Index.php index e639a00119d6d..4c3e2c27c3288 100644 --- a/app/code/Magento/Bundle/Model/Resource/Price/Index.php +++ b/app/code/Magento/Bundle/Model/Resource/Price/Index.php @@ -60,7 +60,7 @@ class Index extends \Magento\Core\Model\Resource\Db\AbstractDb /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -97,7 +97,7 @@ class Index extends \Magento\Core\Model\Resource\Db\AbstractDb * @param \Magento\CatalogRule\Model\Resource\RuleFactory $catalogRuleFactory * @param \Magento\Customer\Model\GroupFactory $customerGroup * @param \Magento\Catalog\Model\Config $config - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Resource $resource */ public function __construct( @@ -106,7 +106,7 @@ public function __construct( \Magento\CatalogRule\Model\Resource\RuleFactory $catalogRuleFactory, \Magento\Customer\Model\GroupFactory $customerGroup, \Magento\Catalog\Model\Config $config, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Resource $resource ) { $this->_eventManager = $eventManager; 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 7c981b7da137f..e08d8e0e98db0 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 @@ -47,7 +47,7 @@ class Creditmemo extends \Magento\Bundle\Model\Sales\Order\Pdf\Items\AbstractIte * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry - * @param \Magento\Core\Model\Dir $coreDir + * @param \Magento\App\Dir $coreDir * @param \Magento\Data\Collection\Db $resourceCollection * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param array $data @@ -57,7 +57,7 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, - \Magento\Core\Model\Dir $coreDir, + \Magento\App\Dir $coreDir, \Magento\Data\Collection\Db $resourceCollection = null, \Magento\Core\Model\Resource\AbstractResource $resource = null, array $data = array() 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 ba0eb6421e738..929957b8ff858 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 @@ -47,7 +47,7 @@ class Invoice extends \Magento\Bundle\Model\Sales\Order\Pdf\Items\AbstractItems * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry - * @param \Magento\Core\Model\Dir $coreDir + * @param \Magento\App\Dir $coreDir * @param \Magento\Data\Collection\Db $resourceCollection * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param array $data @@ -57,7 +57,7 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, - \Magento\Core\Model\Dir $coreDir, + \Magento\App\Dir $coreDir, \Magento\Data\Collection\Db $resourceCollection = null, \Magento\Core\Model\Resource\AbstractResource $resource = null, array $data = array() 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 5b9ef9fd34a95..4a0a376c34a22 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 @@ -47,7 +47,7 @@ class Shipment extends \Magento\Bundle\Model\Sales\Order\Pdf\Items\AbstractItems * @param \Magento\Tax\Helper\Data $taxData * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry - * @param \Magento\Core\Model\Dir $coreDir + * @param \Magento\App\Dir $coreDir * @param \Magento\Data\Collection\Db $resourceCollection * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param array $data @@ -57,7 +57,7 @@ public function __construct( \Magento\Tax\Helper\Data $taxData, \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, - \Magento\Core\Model\Dir $coreDir, + \Magento\App\Dir $coreDir, \Magento\Data\Collection\Db $resourceCollection = null, \Magento\Core\Model\Resource\AbstractResource $resource = null, array $data = array() diff --git a/app/code/Magento/Bundle/etc/di.xml b/app/code/Magento/Bundle/etc/di.xml index 938b0ac2047c5..c98e3d4a334c9 100644 --- a/app/code/Magento/Bundle/etc/di.xml +++ b/app/code/Magento/Bundle/etc/di.xml @@ -24,11 +24,6 @@ */ --> - - - - - @@ -39,8 +34,8 @@ - - + + Magento\Catalog\Model\Resource\Setup diff --git a/app/code/Magento/Captcha/Helper/Data.php b/app/code/Magento/Captcha/Helper/Data.php index 33c1cb1410433..8661550acaba7 100644 --- a/app/code/Magento/Captcha/Helper/Data.php +++ b/app/code/Magento/Captcha/Helper/Data.php @@ -77,7 +77,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper protected $_filesystem; /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dirs = null; @@ -93,7 +93,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper /** * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\Dir $dirs + * @param \Magento\App\Dir $dirs * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Config $config * @param \Magento\Filesystem $filesystem @@ -101,7 +101,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper */ public function __construct( \Magento\Core\Helper\Context $context, - \Magento\Core\Model\Dir $dirs, + \Magento\App\Dir $dirs, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Config $config, \Magento\Filesystem $filesystem, @@ -164,7 +164,7 @@ 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\Core\Model\Dir::LIB); + $libDir = $this->_dirs->getDir(\Magento\App\Dir::LIB); foreach ($fontsConfig as $fontName => $fontConfig) { $fonts[$fontName] = array( 'label' => $fontConfig['label'], @@ -183,7 +183,7 @@ public function getFonts() */ public function getImgDir($website = null) { - $mediaDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::MEDIA); + $mediaDir = $this->_dirs->getDir(\Magento\App\Dir::MEDIA); $captchaDir = $mediaDir . '/captcha/' . $this->_storeManager->getWebsite($website)->getCode(); $this->_filesystem->setWorkingDirectory($mediaDir); $this->_filesystem->setIsAllowCreateDirectories(true); @@ -199,7 +199,7 @@ public function getImgDir($website = null) */ public function getImgUrl($website = null) { - return $this->_storeManager->getStore()->getBaseUrl(\Magento\Core\Model\Dir::MEDIA) . 'captcha' + return $this->_storeManager->getStore()->getBaseUrl(\Magento\App\Dir::MEDIA) . 'captcha' . '/' . $this->_storeManager->getWebsite($website)->getCode() . '/'; } } diff --git a/app/code/Magento/Captcha/Model/Observer.php b/app/code/Magento/Captcha/Model/Observer.php index d6fa298de422e..48f518076336c 100644 --- a/app/code/Magento/Captcha/Model/Observer.php +++ b/app/code/Magento/Captcha/Model/Observer.php @@ -69,7 +69,7 @@ class Observer protected $_coreData; /** - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; @@ -102,7 +102,7 @@ class Observer * @param \Magento\Captcha\Helper\Data $helper * @param \Magento\Core\Model\Url $urlManager * @param \Magento\Filesystem $filesystem - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @param \Magento\Core\Model\StoreManager $storeManager */ public function __construct( @@ -114,7 +114,7 @@ public function __construct( \Magento\Captcha\Helper\Data $helper, \Magento\Core\Model\Url $urlManager, \Magento\Filesystem $filesystem, - \Magento\Core\Controller\Request\Http $request, + \Magento\App\RequestInterface $request, \Magento\Core\Model\StoreManager $storeManager ) { $this->_resLogFactory = $resLogFactory; @@ -380,11 +380,11 @@ public function deleteExpiredImages() /** * Get Captcha String * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @param string $formId * @return string */ - protected function _getCaptchaString(\Magento\Core\Controller\Request\Http $request, $formId) + protected function _getCaptchaString(\Magento\App\RequestInterface $request, $formId) { $captchaParams = $request->getPost(\Magento\Captcha\Helper\Data::INPUT_NAME_FIELD_VALUE); return isset($captchaParams[$formId]) ? $captchaParams[$formId] : ''; diff --git a/app/code/Magento/Catalog/Helper/Product.php b/app/code/Magento/Catalog/Helper/Product.php index 63463d0cede97..66a2db4375dad 100644 --- a/app/code/Magento/Catalog/Helper/Product.php +++ b/app/code/Magento/Catalog/Helper/Product.php @@ -67,7 +67,7 @@ class Product extends \Magento\Core\Helper\Url /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -133,7 +133,7 @@ class Product extends \Magento\Core\Helper\Url * @param \Magento\Catalog\Model\ProductFactory $productFactory * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Catalog\Model\Session $catalogSession - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Context $context * @param \Magento\Core\Model\View\Url $viewUrl * @param \Magento\Core\Model\Registry $coreRegistry @@ -149,7 +149,7 @@ public function __construct( \Magento\Catalog\Model\ProductFactory $productFactory, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Model\Session $catalogSession, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Context $context, \Magento\Core\Model\View\Url $viewUrl, \Magento\Core\Model\Registry $coreRegistry, @@ -356,7 +356,7 @@ public function getAttributeInputTypes($inputType = null) */ $inputTypes = array( 'multiselect' => array( - 'backend_model' => 'Magento\Eav\Model\Entity\Attribute\Backend\Array' + 'backend_model' => 'Magento\Eav\Model\Entity\Attribute\Backend\ArrayBackend' ), 'boolean' => array( 'source_model' => 'Magento\Eav\Model\Entity\Attribute\Source\Boolean' diff --git a/app/code/Magento/Catalog/Helper/Product/Options.php b/app/code/Magento/Catalog/Helper/Product/Options.php index 965fa29e26ca6..40291d5012ca5 100644 --- a/app/code/Magento/Catalog/Helper/Product/Options.php +++ b/app/code/Magento/Catalog/Helper/Product/Options.php @@ -59,7 +59,7 @@ public function __construct(\Magento\Core\Helper\Context $context, \Magento\File * - 'size' - size of file * - 'title' - user-friendly name of file (usually - original name as uploaded in Magento) * - * @param \Magento\Core\Controller\Response\Http $response + * @param \Magento\App\ResponseInterface $response * @param string $filePath * @param array $info * @return bool diff --git a/app/code/Magento/Catalog/Helper/Product/View.php b/app/code/Magento/Catalog/Helper/Product/View.php index 9f0bad4b8d541..5b9e125519bac 100644 --- a/app/code/Magento/Catalog/Helper/Product/View.php +++ b/app/code/Magento/Catalog/Helper/Product/View.php @@ -70,7 +70,7 @@ class View extends \Magento\Core\Helper\AbstractHelper /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -93,7 +93,7 @@ class View extends \Magento\Core\Helper\AbstractHelper * * @param \Magento\Catalog\Model\Session $catalogSession * @param \Magento\Catalog\Model\Design $catalogDesign - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Catalog\Helper\Product $catalogProduct * @param \Magento\Page\Helper\Layout $pageLayout * @param \Magento\Core\Helper\Context $context @@ -103,7 +103,7 @@ class View extends \Magento\Core\Helper\AbstractHelper public function __construct( \Magento\Catalog\Model\Session $catalogSession, \Magento\Catalog\Model\Design $catalogDesign, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Catalog\Helper\Product $catalogProduct, \Magento\Page\Helper\Layout $pageLayout, \Magento\Core\Helper\Context $context, diff --git a/app/code/Magento/Catalog/Model/Category.php b/app/code/Magento/Catalog/Model/Category.php index 6710c2810372b..bb70f6ef4d041 100644 --- a/app/code/Magento/Catalog/Model/Category.php +++ b/app/code/Magento/Catalog/Model/Category.php @@ -128,7 +128,7 @@ class Category extends \Magento\Catalog\Model\AbstractModel /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -189,12 +189,12 @@ class Category extends \Magento\Catalog\Model\AbstractModel * @param \Magento\Catalog\Model\CategoryFactory $categoryFactory * @param \Magento\Core\Model\Url\RewriteFactory $urlRewriteFactory * @param \Magento\Core\Model\Resource\Store\CollectionFactory $storeCollectionFactory - * @param \Magento\Core\Model\UrlInterface $url + * @param \Magento\UrlInterface $url * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $productCollectionFactory * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Catalog\Model\Config $catalogConfig * @param \Magento\Index\Model\Indexer $indexIndexer - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Catalog\Helper\Category\Flat $catalogCategoryFlat * @param \Magento\Core\Model\Context $context @@ -211,12 +211,12 @@ public function __construct( \Magento\Catalog\Model\CategoryFactory $categoryFactory, \Magento\Core\Model\Url\RewriteFactory $urlRewriteFactory, \Magento\Core\Model\Resource\Store\CollectionFactory $storeCollectionFactory, - \Magento\Core\Model\UrlInterface $url, + \Magento\UrlInterface $url, \Magento\Catalog\Model\Resource\Product\CollectionFactory $productCollectionFactory, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Model\Config $catalogConfig, \Magento\Index\Model\Indexer $indexIndexer, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Data $coreData, \Magento\Catalog\Helper\Category\Flat $catalogCategoryFlat, \Magento\Core\Model\Context $context, 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 0c214005c0425..c687969e5c4ba 100644 --- a/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Image.php +++ b/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Image.php @@ -44,7 +44,7 @@ class Image extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend /** * Dir model * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -59,12 +59,12 @@ class Image extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend * Construct * * @param \Magento\Core\Model\Logger $logger - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\File\UploaderFactory $fileUploaderFactory */ public function __construct( \Magento\Core\Model\Logger $logger, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Core\Model\File\UploaderFactory $fileUploaderFactory ) { $this->_dir = $dir; @@ -94,7 +94,7 @@ public function afterSave($object) return $this; } - $path = $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA) . DS . 'catalog' . DS . 'category' . DS; + $path = $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DS . 'catalog' . DS . 'category' . DS; try { /** @var $uploader \Magento\Core\Model\File\Uploader */ diff --git a/app/code/Magento/Catalog/Model/Design.php b/app/code/Magento/Catalog/Model/Design.php index 26d2d9f86af7d..698db0fe2e9cb 100644 --- a/app/code/Magento/Catalog/Model/Design.php +++ b/app/code/Magento/Catalog/Model/Design.php @@ -42,7 +42,7 @@ class Design extends \Magento\Core\Model\AbstractModel /** * Design package instance * - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_design = null; @@ -57,7 +57,7 @@ class Design extends \Magento\Core\Model\AbstractModel * Construct * * @param \Magento\Core\Model\LocaleInterface $locale - * @param \Magento\Core\Model\View\DesignInterface $design + * @param \Magento\View\DesignInterface $design * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Core\Model\Resource\AbstractResource $resource @@ -66,7 +66,7 @@ class Design extends \Magento\Core\Model\AbstractModel */ public function __construct( \Magento\Core\Model\LocaleInterface $locale, - \Magento\Core\Model\View\DesignInterface $design, + \Magento\View\DesignInterface $design, \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, \Magento\Core\Model\Resource\AbstractResource $resource = null, diff --git a/app/code/Magento/Catalog/Model/Layer/Filter/Item.php b/app/code/Magento/Catalog/Model/Layer/Filter/Item.php index 73072cbb03fda..4de4a29ef3ad5 100644 --- a/app/code/Magento/Catalog/Model/Layer/Filter/Item.php +++ b/app/code/Magento/Catalog/Model/Layer/Filter/Item.php @@ -38,7 +38,7 @@ class Item extends \Magento\Object /** * Url * - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_url; @@ -52,12 +52,12 @@ class Item extends \Magento\Object /** * Construct * - * @param \Magento\Core\Model\UrlInterface $url + * @param \Magento\UrlInterface $url * @param \Magento\Page\Block\Html\Pager $htmlPagerBlock * @param array $data */ public function __construct( - \Magento\Core\Model\UrlInterface $url, + \Magento\UrlInterface $url, \Magento\Page\Block\Html\Pager $htmlPagerBlock, array $data = array() ) { diff --git a/app/code/Magento/Catalog/Model/Product.php b/app/code/Magento/Catalog/Model/Product.php index b18900ba64295..7966229e8f9c6 100644 --- a/app/code/Magento/Catalog/Model/Product.php +++ b/app/code/Magento/Catalog/Model/Product.php @@ -141,7 +141,7 @@ class Product extends \Magento\Catalog\Model\AbstractModel /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -229,7 +229,7 @@ class Product extends \Magento\Catalog\Model\AbstractModel * @param \Magento\Catalog\Model\Product\Media\Config $catalogProductMediaConfig * @param \Magento\Index\Model\Indexer $indexIndexer * @param \Magento\Catalog\Model\Product\Type $catalogProductType - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Catalog\Helper\Image $catalogImage * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Catalog\Helper\Product $catalogProduct @@ -256,7 +256,7 @@ public function __construct( \Magento\Catalog\Model\Product\Media\Config $catalogProductMediaConfig, \Magento\Index\Model\Indexer $indexIndexer, \Magento\Catalog\Model\Product\Type $catalogProductType, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Catalog\Helper\Image $catalogImage, \Magento\Catalog\Helper\Data $catalogData, \Magento\Catalog\Helper\Product $catalogProduct, diff --git a/app/code/Magento/Catalog/Model/Product/Action.php b/app/code/Magento/Catalog/Model/Product/Action.php index 460da89afc1d3..87243c33104a2 100644 --- a/app/code/Magento/Catalog/Model/Product/Action.php +++ b/app/code/Magento/Catalog/Model/Product/Action.php @@ -39,7 +39,7 @@ class Action extends \Magento\Core\Model\AbstractModel /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -62,7 +62,7 @@ class Action extends \Magento\Core\Model\AbstractModel * * @param \Magento\Catalog\Model\Product\WebsiteFactory $productWebsiteFactory * @param \Magento\Index\Model\Indexer $indexIndexer - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Core\Model\Resource\AbstractResource $resource @@ -72,7 +72,7 @@ class Action extends \Magento\Core\Model\AbstractModel public function __construct( \Magento\Catalog\Model\Product\WebsiteFactory $productWebsiteFactory, \Magento\Index\Model\Indexer $indexIndexer, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, \Magento\Core\Model\Resource\AbstractResource $resource = null, 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 da02671aedb81..72525d6809986 100644 --- a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php +++ b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php @@ -81,7 +81,7 @@ class Media extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -97,22 +97,22 @@ class Media extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend * * @param \Magento\Core\Model\Logger $logger * @param \Magento\Catalog\Model\Resource\ProductFactory $productFactory - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\File\Storage\Database $fileStorageDb * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Catalog\Model\Product\Media\Config $mediaConfig - * @param \Magento\Core\Model\Dir $dirs + * @param \Magento\App\Dir $dirs * @param \Magento\Filesystem $filesystem * @param \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Media $resourceProductAttribute */ public function __construct( \Magento\Core\Model\Logger $logger, \Magento\Catalog\Model\Resource\ProductFactory $productFactory, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\File\Storage\Database $fileStorageDb, \Magento\Core\Helper\Data $coreData, \Magento\Catalog\Model\Product\Media\Config $mediaConfig, - \Magento\Core\Model\Dir $dirs, + \Magento\App\Dir $dirs, \Magento\Filesystem $filesystem, \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Media $resourceProductAttribute ) { @@ -124,7 +124,7 @@ public function __construct( $this->_mediaConfig = $mediaConfig; $this->_filesystem = $filesystem; $this->_filesystem->setIsAllowCreateDirectories(true); - $this->_filesystem->setWorkingDirectory($dirs->getDir(\Magento\Core\Model\Dir::MEDIA)); + $this->_filesystem->setWorkingDirectory($dirs->getDir(\Magento\App\Dir::MEDIA)); $this->_baseMediaPath = $this->_mediaConfig->getBaseMediaPath(); $this->_baseTmpMediaPath = $this->_mediaConfig->getBaseTmpMediaPath(); $this->_filesystem->ensureDirectoryExists($this->_baseMediaPath); diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Source/Inputtype.php b/app/code/Magento/Catalog/Model/Product/Attribute/Source/Inputtype.php index 653c9009b26c6..0d19ea7eeb229 100644 --- a/app/code/Magento/Catalog/Model/Product/Attribute/Source/Inputtype.php +++ b/app/code/Magento/Catalog/Model/Product/Attribute/Source/Inputtype.php @@ -40,16 +40,16 @@ class Inputtype extends \Magento\Eav\Model\Adminhtml\System\Config\Source\Inputt /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Registry $coreRegistry */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Registry $coreRegistry ) { $this->_eventManager = $eventManager; diff --git a/app/code/Magento/Catalog/Model/Product/Image.php b/app/code/Magento/Catalog/Model/Product/Image.php index d8ae3b2f685f7..c8d15e5eee40b 100644 --- a/app/code/Magento/Catalog/Model/Product/Image.php +++ b/app/code/Magento/Catalog/Model/Product/Image.php @@ -102,7 +102,7 @@ class Image extends \Magento\Core\Model\AbstractModel /** * Dir * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -117,7 +117,7 @@ class Image extends \Magento\Core\Model\AbstractModel * Construct * * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Catalog\Model\Product\Media\Config $catalogProductMediaConfig * @param \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase * @param \Magento\Core\Model\Context $context @@ -135,7 +135,7 @@ class Image extends \Magento\Core\Model\AbstractModel */ public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Catalog\Model\Product\Media\Config $catalogProductMediaConfig, \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase, \Magento\Core\Model\Context $context, @@ -599,7 +599,7 @@ public function getUrl() "Magento_Catalog::images/product/placeholder/{$this->getDestinationSubdir()}.jpg" ); } else { - $baseDir = $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA); + $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);; } @@ -792,7 +792,7 @@ public function getWatermarkHeight() public function clearCache() { - $directory = $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA) . DS . 'catalog' . DS . 'product' + $directory = $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DS . 'catalog' . DS . 'product' . DS . 'cache' . DS; $this->_filesystem->delete($directory); diff --git a/app/code/Magento/Catalog/Model/Product/Image/View.php b/app/code/Magento/Catalog/Model/Product/Image/View.php index 38cace60375ee..6dfa9e323e085 100644 --- a/app/code/Magento/Catalog/Model/Product/Image/View.php +++ b/app/code/Magento/Catalog/Model/Product/Image/View.php @@ -89,18 +89,18 @@ class View extends \Magento\Object /** * View config model * - * @var \Magento\Core\Model\View\Config + * @var \Magento\View\ConfigInterface */ protected $_viewConfig; /** * @param \Magento\Catalog\Helper\Image $helperImage - * @param \Magento\Core\Model\View\Config $viewConfig + * @param \Magento\View\ConfigInterface $viewConfig * @param array $data */ public function __construct( \Magento\Catalog\Helper\Image $helperImage, - \Magento\Core\Model\View\Config $viewConfig, + \Magento\View\ConfigInterface $viewConfig, array $data = array() ) { $this->_helperImage = $helperImage; diff --git a/app/code/Magento/Catalog/Model/Product/Media/Config.php b/app/code/Magento/Catalog/Model/Product/Media/Config.php index 81bb3c44b1c72..2717238980c84 100644 --- a/app/code/Magento/Catalog/Model/Product/Media/Config.php +++ b/app/code/Magento/Catalog/Model/Product/Media/Config.php @@ -39,7 +39,7 @@ class Config implements \Magento\Media\Model\Image\Config\ConfigInterface /** * Dir * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -54,11 +54,11 @@ class Config implements \Magento\Media\Model\Image\Config\ConfigInterface * Construct * * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir */ public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\Core\Model\Dir $dir + \Magento\App\Dir $dir ) { $this->_storeManager = $storeManager; $this->_dir = $dir; @@ -110,7 +110,7 @@ public function getBaseTmpMediaUrlAddition() public function getBaseMediaPath() { - return $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA) . DIRECTORY_SEPARATOR + return $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DIRECTORY_SEPARATOR . 'catalog' . DIRECTORY_SEPARATOR . 'product'; } @@ -122,7 +122,7 @@ public function getBaseMediaUrl() public function getBaseTmpMediaPath() { - return $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA) . DIRECTORY_SEPARATOR + return $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DIRECTORY_SEPARATOR . $this->getBaseTmpMediaPathAddition(); } 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 ac5db6acba520..fa120dd6f16c1 100644 --- a/app/code/Magento/Catalog/Model/Product/Option/Type/File.php +++ b/app/code/Magento/Catalog/Model/Product/Option/Type/File.php @@ -73,14 +73,14 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType /** * Dir * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; /** * Url * - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_url; @@ -95,8 +95,8 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType * Construct * * @param \Magento\Sales\Model\Quote\Item\OptionFactory $itemOptionFactory - * @param \Magento\Core\Model\UrlInterface $url - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\UrlInterface $url + * @param \Magento\App\Dir $dir * @param \Magento\Checkout\Model\Session $checkoutSession * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase @@ -107,8 +107,8 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType */ public function __construct( \Magento\Sales\Model\Quote\Item\OptionFactory $itemOptionFactory, - \Magento\Core\Model\UrlInterface $url, - \Magento\Core\Model\Dir $dir, + \Magento\UrlInterface $url, + \Magento\App\Dir $dir, \Magento\Checkout\Model\Session $checkoutSession, \Magento\Core\Helper\Data $coreData, \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase, @@ -761,7 +761,7 @@ public function copyQuoteToOrder() */ public function getTargetDir($relative = false) { - $fullPath = $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA) . DS . 'custom_options'; + $fullPath = $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DS . 'custom_options'; return $relative ? str_replace($this->_dir->getDir(), '', $fullPath) : $fullPath; } diff --git a/app/code/Magento/Catalog/Model/Product/Status.php b/app/code/Magento/Catalog/Model/Product/Status.php index a6ebb63d5bcdc..eeb654e054ca3 100644 --- a/app/code/Magento/Catalog/Model/Product/Status.php +++ b/app/code/Magento/Catalog/Model/Product/Status.php @@ -57,7 +57,7 @@ class Status extends \Magento\Core\Model\AbstractModel /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -80,7 +80,7 @@ class Status extends \Magento\Core\Model\AbstractModel * * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Catalog\Model\Product\Action $catalogProductAction - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Core\Model\Resource\AbstractResource $resource @@ -90,7 +90,7 @@ class Status extends \Magento\Core\Model\AbstractModel public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Model\Product\Action $catalogProductAction, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, \Magento\Core\Model\Resource\AbstractResource $resource = null, diff --git a/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php b/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php index a936b23376d40..d97dd402425e6 100644 --- a/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php +++ b/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php @@ -138,7 +138,7 @@ abstract public function deleteTypeSpecificData(\Magento\Catalog\Model\Product $ /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -182,7 +182,7 @@ abstract public function deleteTypeSpecificData(\Magento\Catalog\Model\Product $ * @param \Magento\Catalog\Model\Product\Option $catalogProductOption * @param \Magento\Eav\Model\Config $eavConfig * @param \Magento\Catalog\Model\Product\Type $catalogProductType - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Core\Helper\File\Storage\Database $fileStorageDb * @param \Magento\Filesystem $filesystem @@ -195,7 +195,7 @@ public function __construct( \Magento\Catalog\Model\Product\Option $catalogProductOption, \Magento\Eav\Model\Config $eavConfig, \Magento\Catalog\Model\Product\Type $catalogProductType, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Data $coreData, \Magento\Core\Helper\File\Storage\Database $fileStorageDb, \Magento\Filesystem $filesystem, diff --git a/app/code/Magento/Catalog/Model/Product/Type/Configurable.php b/app/code/Magento/Catalog/Model/Product/Type/Configurable.php index 66fa72bee49e2..d4f7ad732e9a2 100644 --- a/app/code/Magento/Catalog/Model/Product/Type/Configurable.php +++ b/app/code/Magento/Catalog/Model/Product/Type/Configurable.php @@ -178,7 +178,7 @@ class Configurable extends \Magento\Catalog\Model\Product\Type\AbstractType * @param \Magento\Catalog\Model\Resource\Product\Type\Configurable\Attribute\CollectionFactory $attributeCollectionFactory * @param \Magento\Catalog\Model\Resource\Product\Type\Configurable $catalogProductTypeConfigurable * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Core\Helper\File\Storage\Database $fileStorageDb * @param \Magento\Filesystem $filesystem @@ -202,7 +202,7 @@ public function __construct( \Magento\Catalog\Model\Resource\Product\Type\Configurable\Attribute\CollectionFactory $attributeCollectionFactory, \Magento\Catalog\Model\Resource\Product\Type\Configurable $catalogProductTypeConfigurable, \Magento\Core\Model\StoreManager $storeManager, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Data $coreData, \Magento\Core\Helper\File\Storage\Database $fileStorageDb, \Magento\Filesystem $filesystem, diff --git a/app/code/Magento/Catalog/Model/Product/Type/Grouped.php b/app/code/Magento/Catalog/Model/Product/Type/Grouped.php index e2fc38812aebf..4dbbc4bd44240 100644 --- a/app/code/Magento/Catalog/Model/Product/Type/Grouped.php +++ b/app/code/Magento/Catalog/Model/Product/Type/Grouped.php @@ -103,7 +103,7 @@ class Grouped extends \Magento\Catalog\Model\Product\Type\AbstractType * @param \Magento\Catalog\Model\Resource\Product\Link $catalogProductLink * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Catalog\Model\Product\Status $catalogProductStatus - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Core\Helper\File\Storage\Database $fileStorageDb * @param \Magento\Filesystem $filesystem @@ -119,7 +119,7 @@ public function __construct( \Magento\Catalog\Model\Resource\Product\Link $catalogProductLink, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Model\Product\Status $catalogProductStatus, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Data $coreData, \Magento\Core\Helper\File\Storage\Database $fileStorageDb, \Magento\Filesystem $filesystem, diff --git a/app/code/Magento/Catalog/Model/Product/Type/Price.php b/app/code/Magento/Catalog/Model/Product/Type/Price.php index 33da634f46fbd..8d1b57b72d01f 100644 --- a/app/code/Magento/Catalog/Model/Product/Type/Price.php +++ b/app/code/Magento/Catalog/Model/Product/Type/Price.php @@ -42,7 +42,7 @@ class Price /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -81,14 +81,14 @@ class Price * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\LocaleInterface $locale * @param \Magento\Customer\Model\Session $customerSession - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager */ public function __construct( \Magento\CatalogRule\Model\Resource\RuleFactory $ruleFactory, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\LocaleInterface $locale, \Magento\Customer\Model\Session $customerSession, - \Magento\Core\Model\Event\Manager $eventManager + \Magento\Event\ManagerInterface $eventManager ) { $this->_ruleFactory = $ruleFactory; $this->_storeManager = $storeManager; diff --git a/app/code/Magento/Catalog/Model/Product/Url.php b/app/code/Magento/Catalog/Model/Product/Url.php index c46a5d07b1a66..8a6f543800831 100644 --- a/app/code/Magento/Catalog/Model/Product/Url.php +++ b/app/code/Magento/Catalog/Model/Product/Url.php @@ -84,7 +84,7 @@ class Url extends \Magento\Object * Construct * * @param \Magento\Core\Model\Url\RewriteFactory $urlRewriteFactory - * @param \Magento\Core\Model\UrlInterface $url + * @param \Magento\UrlInterface $url * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Catalog\Helper\Category $catalogCategory * @param \Magento\Catalog\Helper\Product\Url $catalogProductUrl @@ -93,7 +93,7 @@ class Url extends \Magento\Object */ public function __construct( \Magento\Core\Model\Url\RewriteFactory $urlRewriteFactory, - \Magento\Core\Model\UrlInterface $url, + \Magento\UrlInterface $url, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Helper\Category $catalogCategory, \Magento\Catalog\Helper\Product\Url $catalogProductUrl, diff --git a/app/code/Magento/Catalog/Model/Resource/Category.php b/app/code/Magento/Catalog/Model/Resource/Category.php index ccdbecc9986ca..0c861a49f68ea 100644 --- a/app/code/Magento/Catalog/Model/Resource/Category.php +++ b/app/code/Magento/Catalog/Model/Resource/Category.php @@ -67,7 +67,7 @@ class Category extends \Magento\Catalog\Model\Resource\AbstractResource /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -96,7 +96,7 @@ class Category extends \Magento\Catalog\Model\Resource\AbstractResource * @param \Magento\Validator\UniversalFactory $universalFactory * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Catalog\Model\Factory $modelFactory - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Catalog\Model\Resource\Category\TreeFactory $categoryTreeFactory * @param \Magento\Catalog\Model\Resource\Category\CollectionFactory $categoryCollectionFactory * @param array $data @@ -112,7 +112,7 @@ public function __construct( \Magento\Validator\UniversalFactory $universalFactory, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Model\Factory $modelFactory, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Catalog\Model\Resource\Category\TreeFactory $categoryTreeFactory, \Magento\Catalog\Model\Resource\Category\CollectionFactory $categoryCollectionFactory, $data = array() diff --git a/app/code/Magento/Catalog/Model/Resource/Category/Attribute/Collection.php b/app/code/Magento/Catalog/Model/Resource/Category/Attribute/Collection.php index 9ebda769687c1..81f129748ed8f 100644 --- a/app/code/Magento/Catalog/Model/Resource/Category/Attribute/Collection.php +++ b/app/code/Magento/Catalog/Model/Resource/Category/Attribute/Collection.php @@ -48,7 +48,7 @@ class Collection * Construct * * @param \Magento\Eav\Model\EntityFactory $eavEntityFactory - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -56,7 +56,7 @@ class Collection */ public function __construct( \Magento\Eav\Model\EntityFactory $eavEntityFactory, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Catalog/Model/Resource/Category/Flat.php b/app/code/Magento/Catalog/Model/Resource/Category/Flat.php index 5ee993ac2306a..1d0540dd19535 100644 --- a/app/code/Magento/Catalog/Model/Resource/Category/Flat.php +++ b/app/code/Magento/Catalog/Model/Resource/Category/Flat.php @@ -108,7 +108,7 @@ class Flat extends \Magento\Index\Model\Resource\AbstractResource /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -163,7 +163,7 @@ class Flat extends \Magento\Index\Model\Resource\AbstractResource * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Catalog\Model\Config $catalogConfig * @param \Magento\Catalog\Model\Category $catalogCategory - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Catalog\Model\Resource\Helper $resourceHelper */ public function __construct( @@ -173,7 +173,7 @@ public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Model\Config $catalogConfig, \Magento\Catalog\Model\Category $catalogCategory, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Catalog\Model\Resource\Helper $resourceHelper ) { $this->_categoryFactory = $categoryFactory; diff --git a/app/code/Magento/Catalog/Model/Resource/Category/Flat/Collection.php b/app/code/Magento/Catalog/Model/Resource/Category/Flat/Collection.php index 8b966529ddb55..cbeca8bafa19b 100644 --- a/app/code/Magento/Catalog/Model/Resource/Category/Flat/Collection.php +++ b/app/code/Magento/Catalog/Model/Resource/Category/Flat/Collection.php @@ -68,7 +68,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl * Construct * * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -76,7 +76,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl */ public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Catalog/Model/Resource/Category/Tree.php b/app/code/Magento/Catalog/Model/Resource/Category/Tree.php index 791c5029b490a..dce8772cc1789 100644 --- a/app/code/Magento/Catalog/Model/Resource/Category/Tree.php +++ b/app/code/Magento/Catalog/Model/Resource/Category/Tree.php @@ -31,7 +31,7 @@ class Tree extends \Magento\Data\Tree\Dbp const LEVEL_FIELD = 'level'; /** - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ private $_eventManager; @@ -113,7 +113,7 @@ class Tree extends \Magento\Data\Tree\Dbp * @param \Magento\Core\Model\CacheInterface $cache * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\Resource $resource - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Catalog\Model\Attribute\Config $attributeConfig * @param \Magento\Catalog\Model\Resource\Category\Collection\Factory $collectionFactory */ @@ -122,7 +122,7 @@ public function __construct( \Magento\Core\Model\CacheInterface $cache, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\Resource $resource, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Catalog\Model\Attribute\Config $attributeConfig, \Magento\Catalog\Model\Resource\Category\Collection\Factory $collectionFactory ) { diff --git a/app/code/Magento/Catalog/Model/Resource/Collection/AbstractCollection.php b/app/code/Magento/Catalog/Model/Resource/Collection/AbstractCollection.php index 2b963e5a3af87..c4457cace2d6a 100644 --- a/app/code/Magento/Catalog/Model/Resource/Collection/AbstractCollection.php +++ b/app/code/Magento/Catalog/Model/Resource/Collection/AbstractCollection.php @@ -54,7 +54,7 @@ class AbstractCollection extends \Magento\Eav\Model\Entity\Collection\AbstractCo /** * Construct * - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -66,7 +66,7 @@ class AbstractCollection extends \Magento\Eav\Model\Entity\Collection\AbstractCo * @param \Magento\Core\Model\StoreManagerInterface $storeManager */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Catalog/Model/Resource/Layer/Filter/Price.php b/app/code/Magento/Catalog/Model/Resource/Layer/Filter/Price.php index de00891ab74c1..77e22eabd43f0 100644 --- a/app/code/Magento/Catalog/Model/Resource/Layer/Filter/Price.php +++ b/app/code/Magento/Catalog/Model/Resource/Layer/Filter/Price.php @@ -44,7 +44,7 @@ class Price extends \Magento\Core\Model\Resource\Db\AbstractDb /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -53,11 +53,11 @@ class Price extends \Magento\Core\Model\Resource\Db\AbstractDb * * * - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Resource $resource */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Resource $resource ) { $this->_eventManager = $eventManager; 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 c30db7a0ebf9d..8add8de7aa6eb 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 @@ -40,7 +40,7 @@ class Image /** * Dir model * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -54,12 +54,12 @@ class Image /** * Construct * - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\Logger $logger * @param \Magento\Core\Model\File\UploaderFactory $fileUploaderFactory */ public function __construct( - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Core\Model\Logger $logger, \Magento\Core\Model\File\UploaderFactory $fileUploaderFactory ) { @@ -94,7 +94,7 @@ public function afterSave($object) } catch (\Exception $e){ return $this; } - $uploader->save($this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA) . '/catalog/product'); + $uploader->save($this->_dir->getDir(\Magento\App\Dir::MEDIA) . '/catalog/product'); $fileName = $uploader->getUploadedFileName(); if ($fileName) { diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Collection.php b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Collection.php index 55d4ee5b172bf..8c8e3e8737979 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Collection.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Collection.php @@ -48,7 +48,7 @@ class Collection * Construct * * @param \Magento\Eav\Model\EntityFactory $eavEntityFactory - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -56,7 +56,7 @@ class Collection */ public function __construct( \Magento\Eav\Model\EntityFactory $eavEntityFactory, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Collection.php b/app/code/Magento/Catalog/Model/Resource/Product/Collection.php index c597ec85c3ab4..d9317c9a798fc 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Collection.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Collection.php @@ -260,7 +260,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractColl /** * Construct * - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -281,7 +281,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractColl * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Collection/AssociatedProduct.php b/app/code/Magento/Catalog/Model/Resource/Product/Collection/AssociatedProduct.php index 681ca01a2b28a..caee095e4d7fd 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Collection/AssociatedProduct.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Collection/AssociatedProduct.php @@ -57,7 +57,7 @@ class AssociatedProduct protected $_configurationHelper; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -80,7 +80,7 @@ class AssociatedProduct * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Compare/Item/Collection.php b/app/code/Magento/Catalog/Model/Resource/Product/Compare/Item/Collection.php index a974a08b8c59e..7b05d36586c9e 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Compare/Item/Collection.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Compare/Item/Collection.php @@ -73,7 +73,7 @@ class Collection protected $_catalogProductCompareItem; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -96,7 +96,7 @@ class Collection * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Flat/Indexer.php b/app/code/Magento/Catalog/Model/Resource/Product/Flat/Indexer.php index 4532a74fd3eef..70c22b4337425 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Flat/Indexer.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Flat/Indexer.php @@ -120,7 +120,7 @@ class Indexer extends \Magento\Index\Model\Resource\AbstractResource /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -180,7 +180,7 @@ class Indexer extends \Magento\Index\Model\Resource\AbstractResource * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\Resource $resource * @param \Magento\Core\Model\Logger $logger - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Eav\Model\Config $eavConfig * @param \Magento\Catalog\Model\Attribute\Config $attributeConfig @@ -198,7 +198,7 @@ public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\Resource $resource, \Magento\Core\Model\Logger $logger, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Data $coreData, \Magento\Eav\Model\Config $eavConfig, \Magento\Catalog\Model\Attribute\Config $attributeConfig, diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Eav/AbstractEav.php b/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Eav/AbstractEav.php index 07182bd588d65..39da61a6335d0 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Eav/AbstractEav.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Eav/AbstractEav.php @@ -40,7 +40,7 @@ abstract class AbstractEav /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -49,12 +49,12 @@ abstract class AbstractEav * * @param \Magento\Core\Model\Resource $resource * @param \Magento\Eav\Model\Config $eavConfig - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager */ public function __construct( \Magento\Core\Model\Resource $resource, \Magento\Eav\Model\Config $eavConfig, - \Magento\Core\Model\Event\Manager $eventManager + \Magento\Event\ManagerInterface $eventManager ) { $this->_eventManager = $eventManager; parent::__construct($resource, $eavConfig); diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Eav/Source.php b/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Eav/Source.php index b4057548fbaa3..94b16cbdf10a0 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Eav/Source.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Eav/Source.php @@ -49,13 +49,13 @@ class Source * * @param \Magento\Core\Model\Resource $resource * @param \Magento\Eav\Model\Config $eavConfig - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Catalog\Model\Resource\Helper $resourceHelper */ public function __construct( \Magento\Core\Model\Resource $resource, \Magento\Eav\Model\Config $eavConfig, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Catalog\Model\Resource\Helper $resourceHelper ) { $this->_resourceHelper = $resourceHelper; diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Price/DefaultPrice.php b/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Price/DefaultPrice.php index 05e7373ce0634..85338f590a0ae 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Price/DefaultPrice.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Price/DefaultPrice.php @@ -63,20 +63,20 @@ class DefaultPrice /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; /** * @param \Magento\Core\Model\Resource $resource * @param \Magento\Eav\Model\Config $eavConfig - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Data $coreData */ public function __construct( \Magento\Core\Model\Resource $resource, \Magento\Eav\Model\Config $eavConfig, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Data $coreData ) { $this->_eventManager = $eventManager; diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Option/Collection.php b/app/code/Magento/Catalog/Model/Resource/Product/Option/Collection.php index db36bbff79b88..06125badce53c 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Option/Collection.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Option/Collection.php @@ -52,7 +52,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl * * @param \Magento\Catalog\Model\Resource\Product\Option\Value\CollectionFactory $optionValueCollectionFactory * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -61,7 +61,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl public function __construct( \Magento\Catalog\Model\Resource\Product\Option\Value\CollectionFactory $optionValueCollectionFactory, \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php b/app/code/Magento/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php index 464ff82f98556..8bcc774f8da63 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php @@ -81,7 +81,7 @@ class Collection * * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Catalog\Model\Product\Type\Configurable $catalogProductTypeConfigurable - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Catalog\Helper\Data $catalogData * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy @@ -91,7 +91,7 @@ class Collection public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Model\Product\Type\Configurable $catalogProductTypeConfigurable, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Catalog\Helper\Data $catalogData, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Type/Grouped/AssociatedProductsCollection.php b/app/code/Magento/Catalog/Model/Resource/Product/Type/Grouped/AssociatedProductsCollection.php index 6c399e32ebe5b..af0a033e75321 100644 --- a/app/code/Magento/Catalog/Model/Resource/Product/Type/Grouped/AssociatedProductsCollection.php +++ b/app/code/Magento/Catalog/Model/Resource/Product/Type/Grouped/AssociatedProductsCollection.php @@ -53,7 +53,7 @@ class AssociatedProductsCollection /** * Construct * - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -76,7 +76,7 @@ class AssociatedProductsCollection * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Catalog/etc/di.xml b/app/code/Magento/Catalog/etc/di.xml index 99b245d3e68c9..6ab78d7fa06fc 100644 --- a/app/code/Magento/Catalog/etc/di.xml +++ b/app/code/Magento/Catalog/etc/di.xml @@ -29,15 +29,7 @@ - - - - - - - - Magento\Catalog\Model\Session @@ -46,78 +38,21 @@ - - - Virtual - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 64 @@ -127,16 +62,6 @@ - - - - - - - - - - @@ -156,14 +81,6 @@ - - - catalog_attributes - - - Magento\Core\Model\App\Area::AREA_GLOBAL - - 0 @@ -188,12 +105,12 @@ - + - - + + Magento\Catalog\Model\Resource\Setup diff --git a/app/code/Magento/CatalogInventory/Block/Adminhtml/Form/Field/Minsaleqty.php b/app/code/Magento/CatalogInventory/Block/Adminhtml/Form/Field/Minsaleqty.php index d94f9641de894..2a7dd937c4740 100644 --- a/app/code/Magento/CatalogInventory/Block/Adminhtml/Form/Field/Minsaleqty.php +++ b/app/code/Magento/CatalogInventory/Block/Adminhtml/Form/Field/Minsaleqty.php @@ -54,7 +54,6 @@ protected function _getGroupRenderer() array('data' => array('is_render_to_js_template' => true)) ); $this->_groupRenderer->setClass('customer_group_select'); - $this->_groupRenderer->setExtraParams('style="width:120px"'); } return $this->_groupRenderer; } @@ -70,7 +69,6 @@ protected function _prepareToRender() )); $this->addColumn('min_sale_qty', array( 'label' => __('Minimum Qty'), - 'style' => 'width:100px', )); $this->_addAfter = false; $this->_addButtonLabel = __('Add Minimum Qty'); diff --git a/app/code/Magento/CatalogInventory/Model/Resource/Stock/Item/Collection.php b/app/code/Magento/CatalogInventory/Model/Resource/Stock/Item/Collection.php index 03351c042176b..efa15f0d8fec7 100644 --- a/app/code/Magento/CatalogInventory/Model/Resource/Stock/Item/Collection.php +++ b/app/code/Magento/CatalogInventory/Model/Resource/Stock/Item/Collection.php @@ -37,7 +37,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl protected $_storeManager; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -45,7 +45,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl * @param \Magento\Core\Model\Resource\Db\Abstract $resource */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/CatalogInventory/etc/di.xml b/app/code/Magento/CatalogInventory/etc/di.xml index a4040c2519623..00ca544b8dae5 100644 --- a/app/code/Magento/CatalogInventory/etc/di.xml +++ b/app/code/Magento/CatalogInventory/etc/di.xml @@ -47,8 +47,8 @@ - - + + Magento\Eav\Model\Entity\Setup diff --git a/app/code/Magento/CatalogRule/Model/Resource/Rule.php b/app/code/Magento/CatalogRule/Model/Resource/Rule.php index fa4d79a4e6661..63a3ce5761488 100644 --- a/app/code/Magento/CatalogRule/Model/Resource/Rule.php +++ b/app/code/Magento/CatalogRule/Model/Resource/Rule.php @@ -69,7 +69,7 @@ class Rule extends \Magento\Rule\Model\Resource\AbstractResource /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -98,7 +98,7 @@ class Rule extends \Magento\Rule\Model\Resource\AbstractResource * @param \Magento\Catalog\Model\Product\ConditionFactory $conditionFactory * @param \Magento\Core\Model\Date $coreDate * @param \Magento\Eav\Model\Config $eavConfig - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\CatalogRule\Helper\Data $catalogRuleData * @param \Magento\Core\Model\Resource $resource */ @@ -107,7 +107,7 @@ public function __construct( \Magento\Catalog\Model\Product\ConditionFactory $conditionFactory, \Magento\Core\Model\Date $coreDate, \Magento\Eav\Model\Config $eavConfig, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\CatalogRule\Helper\Data $catalogRuleData, \Magento\Core\Model\Resource $resource ) { diff --git a/app/code/Magento/CatalogRule/Model/Rule/Action/Collection.php b/app/code/Magento/CatalogRule/Model/Rule/Action/Collection.php index a671806ffe33d..ad4bbde5a6fd9 100644 --- a/app/code/Magento/CatalogRule/Model/Rule/Action/Collection.php +++ b/app/code/Magento/CatalogRule/Model/Rule/Action/Collection.php @@ -32,13 +32,13 @@ class Collection extends \Magento\Rule\Model\Action\Collection /** * @param \Magento\Core\Model\View\Url $viewUrl * @param \Magento\Rule\Model\ActionFactory $actionFactory - * @param \Magento\Core\Model\Layout $layout + * @param \Magento\View\LayoutInterface $layout * @param array $data */ public function __construct( \Magento\Core\Model\View\Url $viewUrl, \Magento\Rule\Model\ActionFactory $actionFactory, - \Magento\Core\Model\Layout $layout, + \Magento\View\LayoutInterface $layout, array $data = array() ) { parent::__construct($viewUrl, $actionFactory, $layout, $data); diff --git a/app/code/Magento/CatalogRule/Model/Rule/Job.php b/app/code/Magento/CatalogRule/Model/Rule/Job.php index 093cf6098da68..06867b2b6cf0b 100644 --- a/app/code/Magento/CatalogRule/Model/Rule/Job.php +++ b/app/code/Magento/CatalogRule/Model/Rule/Job.php @@ -47,16 +47,16 @@ class Job extends \Magento\Object /** * Instance of event manager model * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; /** * Basic object initialization * - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager */ - public function __construct(\Magento\Core\Model\Event\Manager $eventManager) + public function __construct(\Magento\Event\ManagerInterface $eventManager) { $this->_eventManager = $eventManager; } diff --git a/app/code/Magento/CatalogRule/etc/di.xml b/app/code/Magento/CatalogRule/etc/di.xml index 1aaed99347b0c..b0fde245ae4a6 100644 --- a/app/code/Magento/CatalogRule/etc/di.xml +++ b/app/code/Magento/CatalogRule/etc/di.xml @@ -24,14 +24,9 @@ */ --> - - - - - - + @@ -46,8 +41,8 @@ - - + + Magento\Core\Model\Resource\Setup\Generic diff --git a/app/code/Magento/CatalogSearch/Model/Fulltext.php b/app/code/Magento/CatalogSearch/Model/Fulltext.php index b4e62cc844ee7..dd544df5bba92 100644 --- a/app/code/Magento/CatalogSearch/Model/Fulltext.php +++ b/app/code/Magento/CatalogSearch/Model/Fulltext.php @@ -59,7 +59,7 @@ class Fulltext extends \Magento\Core\Model\AbstractModel /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -71,7 +71,7 @@ class Fulltext extends \Magento\Core\Model\AbstractModel protected $_coreStoreConfig; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\CatalogSearch\Helper\Data $catalogSearchData * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry @@ -81,7 +81,7 @@ class Fulltext extends \Magento\Core\Model\AbstractModel * @param array $data */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\CatalogSearch\Helper\Data $catalogSearchData, \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Advanced.php b/app/code/Magento/CatalogSearch/Model/Resource/Advanced.php index 0b3a8016e0c4c..5d3ebe37e5894 100644 --- a/app/code/Magento/CatalogSearch/Model/Resource/Advanced.php +++ b/app/code/Magento/CatalogSearch/Model/Resource/Advanced.php @@ -39,7 +39,7 @@ class Advanced extends \Magento\Core\Model\Resource\Db\AbstractDb /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -55,12 +55,12 @@ class Advanced extends \Magento\Core\Model\Resource\Db\AbstractDb * * @param \Magento\Core\Model\Resource $resource * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager */ public function __construct( \Magento\Core\Model\Resource $resource, \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\Core\Model\Event\Manager $eventManager + \Magento\Event\ManagerInterface $eventManager ) { $this->_storeManager = $storeManager; $this->_eventManager = $eventManager; diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Advanced/Collection.php b/app/code/Magento/CatalogSearch/Model/Resource/Advanced/Collection.php index 0ab32ec2cb895..9ae353ae4c36d 100644 --- a/app/code/Magento/CatalogSearch/Model/Resource/Advanced/Collection.php +++ b/app/code/Magento/CatalogSearch/Model/Resource/Advanced/Collection.php @@ -44,7 +44,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection protected $_date; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -66,7 +66,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Fulltext.php b/app/code/Magento/CatalogSearch/Model/Resource/Fulltext.php index 715a44feda9db..04a525732934f 100644 --- a/app/code/Magento/CatalogSearch/Model/Resource/Fulltext.php +++ b/app/code/Magento/CatalogSearch/Model/Resource/Fulltext.php @@ -114,7 +114,7 @@ class Fulltext extends \Magento\Core\Model\Resource\Db\AbstractDb /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -153,7 +153,7 @@ class Fulltext extends \Magento\Core\Model\Resource\Db\AbstractDb * @param \Magento\Catalog\Model\Product\Status $catalogProductStatus * @param \Magento\Catalog\Model\Resource\Product\Attribute\CollectionFactory $productAttributeCollFactory * @param \Magento\CatalogSearch\Model\Resource\EngineProvider $engineProvider - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\String $coreString * @param \Magento\CatalogSearch\Helper\Data $catalogSearchData * @param \Magento\Core\Model\Store\ConfigInterface $coreStoreConfig @@ -167,7 +167,7 @@ public function __construct( \Magento\Catalog\Model\Product\Status $catalogProductStatus, \Magento\Catalog\Model\Resource\Product\Attribute\CollectionFactory $productAttributeCollFactory, \Magento\CatalogSearch\Model\Resource\EngineProvider $engineProvider, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\String $coreString, \Magento\CatalogSearch\Helper\Data $catalogSearchData, \Magento\Core\Model\Store\ConfigInterface $coreStoreConfig, diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Fulltext/Collection.php b/app/code/Magento/CatalogSearch/Model/Resource/Fulltext/Collection.php index cd8e028c22aae..5449cc3cc9f8c 100644 --- a/app/code/Magento/CatalogSearch/Model/Resource/Fulltext/Collection.php +++ b/app/code/Magento/CatalogSearch/Model/Resource/Fulltext/Collection.php @@ -51,7 +51,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection protected $_catalogSearchFulltext; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -74,7 +74,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Query/Collection.php b/app/code/Magento/CatalogSearch/Model/Resource/Query/Collection.php index 3d8141a4ac75e..487230cd6028e 100644 --- a/app/code/Magento/CatalogSearch/Model/Resource/Query/Collection.php +++ b/app/code/Magento/CatalogSearch/Model/Resource/Query/Collection.php @@ -60,7 +60,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl /** * Construct * - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -69,7 +69,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl * @param \Magento\Core\Model\Resource\Db\AbstractDb $resource */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Search/Collection.php b/app/code/Magento/CatalogSearch/Model/Resource/Search/Collection.php index 227b3b25a78a4..316c649893315 100644 --- a/app/code/Magento/CatalogSearch/Model/Resource/Search/Collection.php +++ b/app/code/Magento/CatalogSearch/Model/Resource/Search/Collection.php @@ -63,7 +63,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection protected $_attributeCollectionFactory; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -84,7 +84,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection * @param \Magento\Core\Model\Resource $resource */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/CatalogSearch/etc/di.xml b/app/code/Magento/CatalogSearch/etc/di.xml index d945eff955d4f..cad205dce5f67 100644 --- a/app/code/Magento/CatalogSearch/etc/di.xml +++ b/app/code/Magento/CatalogSearch/etc/di.xml @@ -24,21 +24,6 @@ */ --> - - - - - - - - - - - - - - - diff --git a/app/code/Magento/Centinel/Helper/Data.php b/app/code/Magento/Centinel/Helper/Data.php index 189c68ed3aa0f..146401eadf074 100644 --- a/app/code/Magento/Centinel/Helper/Data.php +++ b/app/code/Magento/Centinel/Helper/Data.php @@ -36,16 +36,18 @@ class Data extends \Magento\Core\Helper\AbstractHelper /** * Layout factory * - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; /** * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\Layout $layout + * @param \Magento\View\LayoutInterface $layout */ - public function __construct(\Magento\Core\Helper\Context $context, \Magento\Core\Model\Layout $layout) - { + public function __construct( + \Magento\Core\Helper\Context $context, + \Magento\View\LayoutInterface $layout + ) { $this->_layout = $layout; parent::__construct($context); } diff --git a/app/code/Magento/Centinel/Model/Service.php b/app/code/Magento/Centinel/Model/Service.php index 509360417d930..8f9721f4ed1ae 100644 --- a/app/code/Magento/Centinel/Model/Service.php +++ b/app/code/Magento/Centinel/Model/Service.php @@ -78,14 +78,14 @@ class Service extends \Magento\Object /** * Backend url * - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_backendUrl; /** * Frontend url * - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_frontendUrl; @@ -127,8 +127,8 @@ class Service extends \Magento\Object /** * @param \Magento\Centinel\Model\Config $config * @param \Magento\Centinel\Model\Api $api - * @param \Magento\Core\Model\UrlInterface $backendUrl - * @param \Magento\Core\Model\UrlInterface $frontendUrl + * @param \Magento\UrlInterface $backendUrl + * @param \Magento\UrlInterface $frontendUrl * @param \Magento\Core\Model\Session\AbstractSession $centinelSession * @param \Magento\Core\Model\Session $session * @param \Magento\Core\Model\StoreManagerInterface $storeManager @@ -138,8 +138,8 @@ class Service extends \Magento\Object public function __construct( \Magento\Centinel\Model\Config $config, \Magento\Centinel\Model\Api $api, - \Magento\Core\Model\UrlInterface $backendUrl, - \Magento\Core\Model\UrlInterface $frontendUrl, + \Magento\UrlInterface $backendUrl, + \Magento\UrlInterface $frontendUrl, \Magento\Core\Model\Session\AbstractSession $centinelSession, \Magento\Core\Model\Session $session, \Magento\Core\Model\StoreManagerInterface $storeManager, diff --git a/app/code/Magento/Centinel/etc/adminhtml/di.xml b/app/code/Magento/Centinel/etc/adminhtml/di.xml index 767d9b1c11b88..a48080f8cdd46 100644 --- a/app/code/Magento/Centinel/etc/adminhtml/di.xml +++ b/app/code/Magento/Centinel/etc/adminhtml/di.xml @@ -32,15 +32,7 @@ adminhtml - - - - - - - - diff --git a/app/code/Magento/Checkout/Block/Cart.php b/app/code/Magento/Checkout/Block/Cart.php index 777b88b208900..f7db27f482117 100644 --- a/app/code/Magento/Checkout/Block/Cart.php +++ b/app/code/Magento/Checkout/Block/Cart.php @@ -46,7 +46,7 @@ class Cart extends \Magento\Checkout\Block\Cart\AbstractCart protected $_catalogUrlBuilder; /** - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_urlBuilder; @@ -56,7 +56,7 @@ class Cart extends \Magento\Checkout\Block\Cart\AbstractCart * @param \Magento\Core\Block\Template\Context $context * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Catalog\Model\Resource\Url $catalogUrlBuilder - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\UrlInterface $urlBuilder * @param \Magento\Customer\Model\Session $customerSession * @param \Magento\Checkout\Model\Session $checkoutSession * @param array $data @@ -69,7 +69,7 @@ public function __construct( \Magento\Checkout\Model\Session $checkoutSession, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Model\Resource\Url $catalogUrlBuilder, - \Magento\Core\Model\UrlInterface $urlBuilder, + \Magento\UrlInterface $urlBuilder, array $data = array() ) { $this->_storeManager = $storeManager; diff --git a/app/code/Magento/Checkout/Block/Cart/AbstractCart.php b/app/code/Magento/Checkout/Block/Cart/AbstractCart.php index a3723987d0a6d..19183c6d6ba13 100644 --- a/app/code/Magento/Checkout/Block/Cart/AbstractCart.php +++ b/app/code/Magento/Checkout/Block/Cart/AbstractCart.php @@ -109,7 +109,7 @@ protected function _prepareLayout() public function getItemRenderer($type) { $renderer = $this->getChildBlock($type) ?: $this->getChildBlock(self::DEFAULT_TYPE); - if (!$renderer instanceof \Magento\Core\Block) { + if (!$renderer instanceof \Magento\View\Element\BlockInterface) { throw new \RuntimeException('Renderer for type "' . $type . '" does not exist.'); } $renderer->setRenderedBlock($this); diff --git a/app/code/Magento/Checkout/Block/Multishipping/Overview.php b/app/code/Magento/Checkout/Block/Multishipping/Overview.php index 8cdda3870d5a2..e9219bdbae1a7 100644 --- a/app/code/Magento/Checkout/Block/Multishipping/Overview.php +++ b/app/code/Magento/Checkout/Block/Multishipping/Overview.php @@ -367,7 +367,7 @@ public function getRowItemHtml(\Magento\Object $item) protected function _getRowItemRenderer($type) { $renderer = $this->getChildBlock($this->_getRowItemType($type)); - if ($renderer instanceof \Magento\Core\Block) { + if ($renderer instanceof \Magento\View\Element\BlockInterface) { $renderer->setRenderedBlock($this); return $renderer; } diff --git a/app/code/Magento/Checkout/Controller/Cart.php b/app/code/Magento/Checkout/Controller/Cart.php index bb3af4f700d1a..ebe8bfcb12c32 100644 --- a/app/code/Magento/Checkout/Controller/Cart.php +++ b/app/code/Magento/Checkout/Controller/Cart.php @@ -482,7 +482,7 @@ public function deleteAction() $this->_objectManager->get('Magento\Core\Model\Logger')->logException($e); } } - $this->_redirectReferer($this->_objectManager->create('Magento\Core\Model\UrlInterface')->getUrl('*/*')); + $this->_redirectReferer($this->_objectManager->create('Magento\UrlInterface')->getUrl('*/*')); } /** diff --git a/app/code/Magento/Checkout/Controller/Multishipping.php b/app/code/Magento/Checkout/Controller/Multishipping.php index 0507562f7e8c9..7ac37e99e253d 100644 --- a/app/code/Magento/Checkout/Controller/Multishipping.php +++ b/app/code/Magento/Checkout/Controller/Multishipping.php @@ -550,7 +550,7 @@ public function successAction() public function redirectLogin() { $this->setFlag('', 'no-dispatch', true); - $url = $this->_objectManager->create('Magento\Core\Model\UrlInterface') + $url = $this->_objectManager->create('Magento\UrlInterface') ->getUrl('*/*', array('_secure' => true)); $this->_objectManager->get('Magento\Customer\Model\Session')->setBeforeAuthUrl($url); diff --git a/app/code/Magento/Checkout/Controller/Multishipping/Address.php b/app/code/Magento/Checkout/Controller/Multishipping/Address.php index 9885f2c99b07b..cebec53488063 100644 --- a/app/code/Magento/Checkout/Controller/Multishipping/Address.php +++ b/app/code/Magento/Checkout/Controller/Multishipping/Address.php @@ -36,17 +36,17 @@ class Address extends \Magento\Core\Controller\Front\Action { /** - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_urlBuilder; /** * @param \Magento\Core\Controller\Varien\Action\Context $context - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\UrlInterface $urlBuilder */ public function __construct( \Magento\Core\Controller\Varien\Action\Context $context, - \Magento\Core\Model\UrlInterface $urlBuilder + \Magento\UrlInterface $urlBuilder ) { $this->_urlBuilder = $urlBuilder; parent::__construct($context); diff --git a/app/code/Magento/Checkout/Controller/Onepage.php b/app/code/Magento/Checkout/Controller/Onepage.php index 6f89d5611f1d4..cc6869c7f66f4 100644 --- a/app/code/Magento/Checkout/Controller/Onepage.php +++ b/app/code/Magento/Checkout/Controller/Onepage.php @@ -214,7 +214,7 @@ public function indexAction() return; } $this->_objectManager->get('Magento\Checkout\Model\Session')->setCartWasUpdated(false); - $currentUrl = $this->_objectManager->create('Magento\Core\Model\UrlInterface') + $currentUrl = $this->_objectManager->create('Magento\UrlInterface') ->getUrl('*/*/*', array('_secure'=>true)); $this->_objectManager->get('Magento\Customer\Model\Session')->setBeforeAuthUrl($currentUrl); $this->getOnepage()->initCheckout(); diff --git a/app/code/Magento/Checkout/Helper/Data.php b/app/code/Magento/Checkout/Helper/Data.php index 25f70cec378f9..ba27c5b1dc1e2 100644 --- a/app/code/Magento/Checkout/Helper/Data.php +++ b/app/code/Magento/Checkout/Helper/Data.php @@ -41,7 +41,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -78,7 +78,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper protected $_emailTemplFactory; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Context $context * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\StoreManagerInterface $storeManager @@ -88,7 +88,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper * @param \Magento\Core\Model\Email\TemplateFactory $emailTemplFactory */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Context $context, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\StoreManagerInterface $storeManager, diff --git a/app/code/Magento/Checkout/Model/Cart.php b/app/code/Magento/Checkout/Model/Cart.php index 74fc00ab18d9b..667ecd068aee0 100644 --- a/app/code/Magento/Checkout/Model/Cart.php +++ b/app/code/Magento/Checkout/Model/Cart.php @@ -52,7 +52,7 @@ class Cart extends \Magento\Object implements \Magento\Checkout\Model\Cart\CartI /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -94,7 +94,7 @@ class Cart extends \Magento\Object implements \Magento\Checkout\Model\Cart\CartI protected $_message; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Catalog\Model\ProductFactory $productFactory * @param \Magento\Core\Model\StoreManagerInterface $storeManager @@ -105,7 +105,7 @@ class Cart extends \Magento\Object implements \Magento\Checkout\Model\Cart\CartI * @param array $data */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Catalog\Model\ProductFactory $productFactory, \Magento\Core\Model\StoreManagerInterface $storeManager, diff --git a/app/code/Magento/Checkout/Model/Session.php b/app/code/Magento/Checkout/Model/Session.php index 37e56e7ac27f1..4aa73f1edd776 100644 --- a/app/code/Magento/Checkout/Model/Session.php +++ b/app/code/Magento/Checkout/Model/Session.php @@ -85,7 +85,7 @@ class Session extends \Magento\Core\Model\Session\AbstractSession protected $_quoteFactory; /** - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; diff --git a/app/code/Magento/Checkout/Model/Type/Multishipping.php b/app/code/Magento/Checkout/Model/Type/Multishipping.php index 9cd7b37e1b9cb..c7b60d8f68a41 100644 --- a/app/code/Magento/Checkout/Model/Type/Multishipping.php +++ b/app/code/Magento/Checkout/Model/Type/Multishipping.php @@ -45,7 +45,7 @@ class Multishipping extends \Magento\Checkout\Model\Type\AbstractType /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -80,7 +80,7 @@ class Multishipping extends \Magento\Checkout\Model\Type\AbstractType * @param \Magento\Checkout\Model\Session $checkoutSession * @param \Magento\Customer\Model\Session $customerSession * @param \Magento\Sales\Model\OrderFactory $orderFactory - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\Session $session * @param \Magento\Sales\Model\Quote\AddressFactory $addressFactory @@ -92,7 +92,7 @@ public function __construct( \Magento\Checkout\Model\Session $checkoutSession, \Magento\Customer\Model\Session $customerSession, \Magento\Sales\Model\OrderFactory $orderFactory, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\Session $session, \Magento\Sales\Model\Quote\AddressFactory $addressFactory, diff --git a/app/code/Magento/Checkout/Model/Type/Onepage.php b/app/code/Magento/Checkout/Model/Type/Onepage.php index 04b23320894ec..4258599363db9 100644 --- a/app/code/Magento/Checkout/Model/Type/Onepage.php +++ b/app/code/Magento/Checkout/Model/Type/Onepage.php @@ -87,7 +87,7 @@ class Onepage /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -97,7 +97,7 @@ class Onepage protected $_storeManager; /** - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; @@ -127,7 +127,7 @@ class Onepage protected $_orderFactory; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Checkout\Helper\Data $helper * @param \Magento\Customer\Helper\Data $customerData * @param \Magento\Core\Helper\Data $coreData @@ -135,7 +135,7 @@ class Onepage * @param \Magento\Checkout\Model\Session $checkoutSession * @param \Magento\Customer\Model\Session $customerSession * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @param \Magento\Customer\Model\AddressFactory $customrAddrFactory * @param \Magento\Customer\Model\FormFactory $customerFormFactory * @param \Magento\Customer\Model\CustomerFactory $customerFactory @@ -143,7 +143,7 @@ class Onepage * @param \Magento\Sales\Model\OrderFactory $orderFactory */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Checkout\Helper\Data $helper, \Magento\Customer\Helper\Data $customerData, \Magento\Core\Helper\Data $coreData, @@ -151,7 +151,7 @@ public function __construct( \Magento\Checkout\Model\Session $checkoutSession, \Magento\Customer\Model\Session $customerSession, \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\Core\Controller\Request\Http $request, + \Magento\App\RequestInterface $request, \Magento\Customer\Model\AddressFactory $customrAddrFactory, \Magento\Customer\Model\FormFactory $customerFormFactory, \Magento\Customer\Model\CustomerFactory $customerFactory, diff --git a/app/code/Magento/Checkout/etc/di.xml b/app/code/Magento/Checkout/etc/di.xml index d190f74355ece..cd103944fe67b 100644 --- a/app/code/Magento/Checkout/etc/di.xml +++ b/app/code/Magento/Checkout/etc/di.xml @@ -24,33 +24,8 @@ */ --> - - - - - - - - - - - - - - - - - - - - - - - - - - - + + Magento\Checkout\Model\Resource\Setup diff --git a/app/code/Magento/Cms/Controller/Router.php b/app/code/Magento/Cms/Controller/Router.php index d41cf1c4c16ea..4dae02e646c55 100644 --- a/app/code/Magento/Cms/Controller/Router.php +++ b/app/code/Magento/Cms/Controller/Router.php @@ -34,12 +34,12 @@ */ namespace Magento\Cms\Controller; -class Router extends \Magento\Core\Controller\Varien\Router\AbstractRouter +class Router extends \Magento\App\Router\AbstractRouter { /** * Event manager * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -60,43 +60,43 @@ class Router extends \Magento\Core\Controller\Varien\Router\AbstractRouter /** * Config primary * - * @var \Magento\Core\Model\App\State + * @var \Magento\App\State */ protected $_appState; /** * Url * - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_url; /** * Response * - * @var \Magento\Core\Controller\Response\Http + * @var \Magento\App\ResponseInterface */ protected $_response; /** * Construct * - * @param \Magento\Core\Controller\Varien\Action\Factory $controllerFactory - * @param \Magento\Core\Model\Event\Manager $eventManager - * @param \Magento\Core\Model\UrlInterface $url - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\ActionFactory $controllerFactory + * @param \Magento\Event\ManagerInterface $eventManager + * @param \Magento\UrlInterface $url + * @param \Magento\App\State $appState * @param \Magento\Cms\Model\PageFactory $pageFactory * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\Core\Controller\Response\Http $response + * @param \Magento\App\ResponseInterface $response */ public function __construct( - \Magento\Core\Controller\Varien\Action\Factory $controllerFactory, - \Magento\Core\Model\Event\Manager $eventManager, - \Magento\Core\Model\UrlInterface $url, - \Magento\Core\Model\App\State $appState, + \Magento\App\ActionFactory $controllerFactory, + \Magento\Event\ManagerInterface $eventManager, + \Magento\UrlInterface $url, + \Magento\App\State $appState, \Magento\Cms\Model\PageFactory $pageFactory, \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\Core\Controller\Response\Http $response + \Magento\App\ResponseInterface $response ) { parent::__construct($controllerFactory); $this->_eventManager = $eventManager; @@ -110,12 +110,12 @@ public function __construct( /** * Validate and Match Cms Page and modify request * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @return bool * * @SuppressWarnings(PHPMD.ExitExpression) */ - public function match(\Magento\Core\Controller\Request\Http $request) + public function match(\Magento\App\RequestInterface $request) { if (!$this->_appState->isInstalled()) { $this->_response->setRedirect($this->_url->getUrl('install')) @@ -139,7 +139,7 @@ public function match(\Magento\Core\Controller\Request\Http $request) $this->_response->setRedirect($condition->getRedirectUrl()) ->sendResponse(); $request->setDispatched(true); - return $this->_controllerFactory->createController('Magento\Core\Controller\Varien\Action\Redirect', + return $this->_controllerFactory->createController('Magento\App\Action\Redirect', array('request' => $request) ); } @@ -164,7 +164,7 @@ public function match(\Magento\Core\Controller\Request\Http $request) $identifier ); - return $this->_controllerFactory->createController('Magento\Core\Controller\Varien\Action\Forward', + return $this->_controllerFactory->createController('Magento\App\Action\Forward', array('request' => $request) ); } diff --git a/app/code/Magento/Cms/Helper/Page.php b/app/code/Magento/Cms/Helper/Page.php index 894aca46a11b6..54ea4f7f1a9b1 100644 --- a/app/code/Magento/Cms/Helper/Page.php +++ b/app/code/Magento/Cms/Helper/Page.php @@ -50,14 +50,14 @@ class Page extends \Magento\Core\Helper\AbstractHelper /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; /** * Design package instance * - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_design; @@ -95,20 +95,18 @@ class Page extends \Magento\Core\Helper\AbstractHelper /** * Url * - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_url; /** - * Construct - * * @param \Magento\Core\Helper\Context $context * @param \Magento\Core\Model\Session\Pool $sessionFactory * @param \Magento\Cms\Model\Page $page - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Page\Helper\Layout $pageLayout - * @param \Magento\Core\Model\View\DesignInterface $design - * @param \Magento\Core\Model\UrlInterface $url + * @param \Magento\View\DesignInterface $design + * @param \Magento\UrlInterface $url * @param \Magento\Cms\Model\PageFactory $pageFactory * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\LocaleInterface $locale @@ -117,10 +115,10 @@ public function __construct( \Magento\Core\Helper\Context $context, \Magento\Core\Model\Session\Pool $sessionFactory, \Magento\Cms\Model\Page $page, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Page\Helper\Layout $pageLayout, - \Magento\Core\Model\View\DesignInterface $design, - \Magento\Core\Model\UrlInterface $url, + \Magento\View\DesignInterface $design, + \Magento\UrlInterface $url, \Magento\Cms\Model\PageFactory $pageFactory, \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\LocaleInterface $locale diff --git a/app/code/Magento/Cms/Helper/Wysiwyg/Images.php b/app/code/Magento/Cms/Helper/Wysiwyg/Images.php index 6cb0ac885077c..65f82ba9f5c80 100644 --- a/app/code/Magento/Cms/Helper/Wysiwyg/Images.php +++ b/app/code/Magento/Cms/Helper/Wysiwyg/Images.php @@ -73,7 +73,7 @@ class Images extends \Magento\Core\Helper\AbstractHelper /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -87,7 +87,7 @@ class Images extends \Magento\Core\Helper\AbstractHelper /** * Dir * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -95,21 +95,21 @@ class Images extends \Magento\Core\Helper\AbstractHelper * Construct * * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Backend\Helper\Data $backendData * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\StoreManagerInterface $storeManager - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir */ public function __construct( \Magento\Core\Helper\Context $context, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Backend\Helper\Data $backendData, \Magento\Core\Helper\Data $coreData, \Magento\Filesystem $filesystem, \Magento\Core\Model\StoreManagerInterface $storeManager, - \Magento\Core\Model\Dir $dir + \Magento\App\Dir $dir ) { parent::__construct($context); $this->_eventManager = $eventManager; @@ -143,7 +143,7 @@ public function setStoreId($store) */ public function getStorageRoot() { - return $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA) . DS + return $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DS . \Magento\Cms\Model\Wysiwyg\Config::IMAGE_DIRECTORY . DS; } @@ -305,7 +305,7 @@ public function getCurrentPath() public function getCurrentUrl() { if (!$this->_currentUrl) { - $path = str_replace($this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA), '', $this->getCurrentPath()); + $path = str_replace($this->_dir->getDir(\Magento\App\Dir::MEDIA), '', $this->getCurrentPath()); $path = trim($path, DS); $mediaUrl = $this->_storeManager->getStore($this->_storeId) ->getBaseUrl(\Magento\Core\Model\Store::URL_TYPE_MEDIA); diff --git a/app/code/Magento/Cms/Model/Page.php b/app/code/Magento/Cms/Model/Page.php index 1c2f7b1ce609b..50de0f72df01c 100644 --- a/app/code/Magento/Cms/Model/Page.php +++ b/app/code/Magento/Cms/Model/Page.php @@ -94,12 +94,12 @@ class Page extends \Magento\Core\Model\AbstractModel /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; /** - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Context $context * @param \Magento\Core\Model\Registry $registry * @param \Magento\Core\Model\Resource\AbstractResource $resource @@ -107,7 +107,7 @@ class Page extends \Magento\Core\Model\AbstractModel * @param array $data */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Context $context, \Magento\Core\Model\Registry $registry, \Magento\Core\Model\Resource\AbstractResource $resource = null, diff --git a/app/code/Magento/Cms/Model/Resource/Page/Collection.php b/app/code/Magento/Cms/Model/Resource/Page/Collection.php index 8bbbcd474d67b..a07fef4f2adb4 100644 --- a/app/code/Magento/Cms/Model/Resource/Page/Collection.php +++ b/app/code/Magento/Cms/Model/Resource/Page/Collection.php @@ -54,7 +54,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl /** * Construct * - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Logger $logger * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy * @param \Magento\Core\Model\EntityFactory $entityFactory @@ -62,7 +62,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl * @param \Magento\Core\Model\Resource\Db\AbstractDb $resource */ public function __construct( - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Logger $logger, \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy, \Magento\Core\Model\EntityFactory $entityFactory, diff --git a/app/code/Magento/Cms/Model/Wysiwyg/Config.php b/app/code/Magento/Cms/Model/Wysiwyg/Config.php index 587fb8483b37b..986d88a6707ab 100644 --- a/app/code/Magento/Cms/Model/Wysiwyg/Config.php +++ b/app/code/Magento/Cms/Model/Wysiwyg/Config.php @@ -73,7 +73,7 @@ class Config extends \Magento\Object /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -96,7 +96,7 @@ class Config extends \Magento\Object /** * @param \Magento\Backend\Model\Url $backendUrl - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Cms\Helper\Data $cmsData * @param \Magento\AuthorizationInterface $authorization * @param \Magento\Core\Model\View\Url $viewUrl @@ -108,7 +108,7 @@ class Config extends \Magento\Object */ public function __construct( \Magento\Backend\Model\Url $backendUrl, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Cms\Helper\Data $cmsData, \Magento\AuthorizationInterface $authorization, \Magento\Core\Model\View\Url $viewUrl, diff --git a/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage.php b/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage.php index 6d5cb9ae1271e..a4b3a4cd28ccd 100644 --- a/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage.php +++ b/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage.php @@ -136,7 +136,7 @@ class Storage extends \Magento\Object /** * Dir * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -157,7 +157,7 @@ class Storage extends \Magento\Object * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\Image\AdapterFactory $imageFactory * @param \Magento\Core\Model\View\Url $viewUrl - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Cms\Model\Wysiwyg\Images\Storage\CollectionFactory $storageCollectionFactory * @param \Magento\Core\Model\File\Storage\FileFactory $storageFileFactory * @param \Magento\Core\Model\File\Storage\DatabaseFactory $storageDatabaseFactory @@ -178,7 +178,7 @@ public function __construct( \Magento\Filesystem $filesystem, \Magento\Core\Model\Image\AdapterFactory $imageFactory, \Magento\Core\Model\View\Url $viewUrl, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Cms\Model\Wysiwyg\Images\Storage\CollectionFactory $storageCollectionFactory, \Magento\Core\Model\File\Storage\FileFactory $storageFileFactory, \Magento\Core\Model\File\Storage\DatabaseFactory $storageDatabaseFactory, @@ -582,7 +582,7 @@ public function resizeOnTheFly($filename) */ public function getThumbsPath($filePath = false) { - $mediaRootDir = $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA); + $mediaRootDir = $this->_dir->getDir(\Magento\App\Dir::MEDIA); $thumbnailDir = $this->getThumbnailRoot(); if ($filePath && strpos($filePath, $mediaRootDir) === 0) { diff --git a/app/code/Magento/Cms/etc/di.xml b/app/code/Magento/Cms/etc/di.xml index d04a15269e7f1..f764b802e9ef0 100644 --- a/app/code/Magento/Cms/etc/di.xml +++ b/app/code/Magento/Cms/etc/di.xml @@ -24,7 +24,7 @@ */ --> - + @@ -36,9 +36,6 @@ - - - 600 @@ -84,56 +81,13 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + Magento\Cms\Model\Resource\Setup diff --git a/app/code/Magento/Connect/Helper/Data.php b/app/code/Magento/Connect/Helper/Data.php index c7e9e2909c8b3..5d323abaa7fb0 100644 --- a/app/code/Magento/Connect/Helper/Data.php +++ b/app/code/Magento/Connect/Helper/Data.php @@ -43,38 +43,38 @@ class Data extends \Magento\Core\Helper\Data /** * Application dirs * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dirs; /** * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Http $coreHttp * @param \Magento\Core\Model\Config $config * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Locale $locale * @param \Magento\Core\Model\Date $dateModel - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\State $appState * @param \Magento\Core\Model\Encryption $encryptor * @param \Magento\Filesystem $filesystem - * @param \Magento\Core\Model\Dir $dirs + * @param \Magento\App\Dir $dirs * @param bool $dbCompatibleMode */ public function __construct( \Magento\Core\Helper\Context $context, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Http $coreHttp, \Magento\Core\Model\Config $config, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Locale $locale, \Magento\Core\Model\Date $dateModel, - \Magento\Core\Model\App\State $appState, + \Magento\App\State $appState, \Magento\Core\Model\Encryption $encryptor, \Magento\Filesystem $filesystem, - \Magento\Core\Model\Dir $dirs, + \Magento\App\Dir $dirs, $dbCompatibleMode = true ) { diff --git a/app/code/Magento/Connect/Model/Extension/Collection.php b/app/code/Magento/Connect/Model/Extension/Collection.php index e086de340f833..86486fe09ac03 100644 --- a/app/code/Magento/Connect/Model/Extension/Collection.php +++ b/app/code/Magento/Connect/Model/Extension/Collection.php @@ -54,10 +54,10 @@ class Collection extends \Magento\Data\Collection\Filesystem /** * Set base dir * - * @param \Magento\Core\Model\Dir $dirs + * @param \Magento\App\Dir $dirs * @param \Magento\Core\Model\EntityFactory $entityFactory */ - public function __construct(\Magento\Core\Model\Dir $dirs, \Magento\Core\Model\EntityFactory $entityFactory) + public function __construct(\Magento\App\Dir $dirs, \Magento\Core\Model\EntityFactory $entityFactory) { parent::__construct($entityFactory); $this->_baseDir = $dirs->getDir('var') . DS . 'connect'; diff --git a/app/code/Magento/Core/App/FrontController/Plugin/Install.php b/app/code/Magento/Core/App/FrontController/Plugin/Install.php new file mode 100644 index 0000000000000..37012d76f08c5 --- /dev/null +++ b/app/code/Magento/Core/App/FrontController/Plugin/Install.php @@ -0,0 +1,72 @@ +_appState = $appState; + $this->_cache = $cache; + $this->_dbUpdater = $dbUpdater; + } + + /** + * @param array $arguments + * @param \Magento\Code\Plugin\InvocationChain $invocationChain + * @return mixed + */ + public function aroundDispatch($arguments, \Magento\Code\Plugin\InvocationChain $invocationChain) + { + if ($this->_appState->isInstalled() && !$this->_cache->load('data_upgrade')) { + $this->_dbUpdater->updateScheme(); + $this->_dbUpdater->updateData(); + $this->_cache->save('true', 'data_upgrade'); + } + return $invocationChain->proceed($arguments); + } +} \ No newline at end of file diff --git a/app/code/Magento/Core/App/FrontController/Plugin/RequestPreprocessor.php b/app/code/Magento/Core/App/FrontController/Plugin/RequestPreprocessor.php new file mode 100644 index 0000000000000..358c748aece69 --- /dev/null +++ b/app/code/Magento/Core/App/FrontController/Plugin/RequestPreprocessor.php @@ -0,0 +1,184 @@ +_backendData = $backendData; + $this->_rewriteService = $rewriteService; + $this->_storeManager = $storeManager; + $this->_appState = $appState; + $this->_url = $url; + $this->_storeConfig = $storeConfig; + $this->_responseFactory = $responseFactory; + } + + /** + * Preprocess request + * + * @param array $arguments + * @param \Magento\Code\Plugin\InvocationChain $invocationChain + * @return mixed + */ + public function aroundDispatch(array $arguments, \Magento\Code\Plugin\InvocationChain $invocationChain) + { + $request = $arguments[0]; + // If pre-configured, check equality of base URL and requested URL + $this->_checkBaseUrl($request); + $request->setDispatched(false); + $this->_rewriteService->applyRewrites($request); + + return $invocationChain->proceed($arguments); + } + + /** + * Check if requested path starts with one of the admin front names + * + * @param \Magento\App\RequestInterface $request + * @return boolean + */ + protected function _isAdminFrontNameMatched($request) + { + $pathPrefix = $this->_extractPathPrefixFromUrl($request); + return $pathPrefix == $this->_backendData->getAreaFrontName(); + } + + /** + * Extract first path part from url (in most cases this is area code) + * + * @param \Magento\App\RequestInterface $request + * @return string + */ + protected function _extractPathPrefixFromUrl($request) + { + $pathPrefix = ltrim($request->getPathInfo(), '/'); + $urlDelimiterPos = strpos($pathPrefix, '/'); + if ($urlDelimiterPos) { + $pathPrefix = substr($pathPrefix, 0, $urlDelimiterPos); + } + + return $pathPrefix; + } + + /** + * Auto-redirect to base url (without SID) if the requested url doesn't match it. + * By default this feature is enabled in configuration. + * + * @param \Magento\App\RequestInterface $request + */ + protected function _checkBaseUrl($request) + { + if (!$this->_appState->isInstalled() || $request->getPost() || strtolower($request->getMethod()) == 'post') { + return; + } + + $redirectCode = (int)$this->_storeConfig->getConfig('web/url/redirect_to_base'); + if (!$redirectCode) { + return; + } elseif ($redirectCode != 301) { + $redirectCode = 302; + } + + if ($this->_isAdminFrontNameMatched($request)) { + return; + } + + $baseUrl = $this->_storeManager->getStore()->getBaseUrl( + \Magento\Core\Model\Store::URL_TYPE_WEB, + $this->_storeManager->getStore()->isCurrentlySecure() + ); + if (!$baseUrl) { + return; + } + + $uri = parse_url($baseUrl); + $requestUri = $request->getRequestUri() ? $request->getRequestUri() : '/'; + if (isset($uri['scheme']) && $uri['scheme'] != $request->getScheme() + || isset($uri['host']) && $uri['host'] != $request->getHttpHost() + || isset($uri['path']) && strpos($requestUri, $uri['path']) === false + ) { + $redirectUrl = $this->_url->getRedirectUrl( + $this->_url->getUrl(ltrim($request->getPathInfo(), '/'), array('_nosid' => true)) + ); + + $response = $this->_responseFactory->create(); + $response->setRedirect($redirectUrl, $redirectCode); + $response->sendResponse(); + exit; + } + } +} \ No newline at end of file diff --git a/app/code/Magento/Core/App/Request/PathInfoProcessor.php b/app/code/Magento/Core/App/Request/PathInfoProcessor.php new file mode 100644 index 0000000000000..60997635cde8b --- /dev/null +++ b/app/code/Magento/Core/App/Request/PathInfoProcessor.php @@ -0,0 +1,67 @@ +_storeManager = $storeManager; + } + + /** + * Process path info + * + * @param \Magento\App\RequestInterface $request + * @param string $pathInfo + * @return string + */ + public function process(\Magento\App\RequestInterface $request, $pathInfo) + { + $pathParts = explode('/', ltrim($pathInfo, '/'), 2); + $storeCode = $pathParts[0]; + + $stores = $this->_storeManager->getStores(true, true); + if (isset($stores[$storeCode]) && $stores[$storeCode]->isUseStoreInUrl()) { + if (!$request->isDirectAccessFrontendName($storeCode)) { + $this->_storeManager->setCurrentStore($storeCode); + $pathInfo = '/' . (isset($pathParts[1]) ? $pathParts[1] : ''); + return $pathInfo; + } elseif (!empty($storeCode)) { + $request->setActionName('noRoute'); + return $pathInfo; + } + return $pathInfo; + } + return $pathInfo; + } +} \ No newline at end of file diff --git a/app/code/Magento/Core/App/Request/RewriteService.php b/app/code/Magento/Core/App/Request/RewriteService.php new file mode 100644 index 0000000000000..458abc448d08e --- /dev/null +++ b/app/code/Magento/Core/App/Request/RewriteService.php @@ -0,0 +1,69 @@ +_rewriteFactory = $rewriteFactory; + $this->_config = $config; + $this->_routerList = $routerList; + } + + /** + * Apply rewrites to current request + * + * @param \Magento\App\RequestInterface $request + */ + public function applyRewrites(\Magento\App\RequestInterface $request) + { + // URL rewrite + if (!$request->isStraight()) { + \Magento\Profiler::start('db_url_rewrite'); + /** @var $urlRewrite \Magento\Core\Model\Url\Rewrite */ + $urlRewrite = $this->_rewriteFactory->create(); + $urlRewrite->rewrite($request); + \Magento\Profiler::stop('db_url_rewrite'); + } + } +} \ No newline at end of file diff --git a/app/code/Magento/Core/Model/Router/NoRouteHandler.php b/app/code/Magento/Core/App/Router/NoRouteHandler.php similarity index 88% rename from app/code/Magento/Core/Model/Router/NoRouteHandler.php rename to app/code/Magento/Core/App/Router/NoRouteHandler.php index 7eca0abdf2c02..f5dd26fdbd69e 100644 --- a/app/code/Magento/Core/Model/Router/NoRouteHandler.php +++ b/app/code/Magento/Core/App/Router/NoRouteHandler.php @@ -24,9 +24,9 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -namespace Magento\Core\Model\Router; +namespace Magento\Core\App\Router; -class NoRouteHandler implements \Magento\Core\Model\Router\NoRouteHandlerInterface +class NoRouteHandler implements \Magento\Appl\Router\NoRouteHandlerInterface { /** * @var \Magento\Core\Model\Config @@ -44,11 +44,11 @@ public function __construct(\Magento\Core\Model\Config $config) /** * Check and process no route request * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @return bool * @SuppressWarnings(PHPMD.NPathComplexity) */ - public function process(\Magento\Core\Controller\Request\Http $request) + public function process(\Magento\App\RequestInterface $request) { $noRoutePath = $this->_config->getValue('web/default/no_route', 'default'); diff --git a/app/code/Magento/Core/Block/AbstractBlock.php b/app/code/Magento/Core/Block/AbstractBlock.php index 64655f78f23ab..452e3172fc82a 100644 --- a/app/code/Magento/Core/Block/AbstractBlock.php +++ b/app/code/Magento/Core/Block/AbstractBlock.php @@ -37,17 +37,18 @@ */ namespace Magento\Core\Block; +use Magento\View\Element\BlockInterface; + /** * @SuppressWarnings(PHPMD.ExcessivePublicCount) * @SuppressWarnings(PHPMD.ExcessiveClassComplexity) * @SuppressWarnings(PHPMD.CouplingBetweenObjects) * @SuppressWarnings(PHPMD.TooManyFields) */ -abstract class AbstractBlock extends \Magento\Object - implements \Magento\Core\Block +abstract class AbstractBlock extends \Magento\Object implements BlockInterface { /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_design; @@ -75,12 +76,12 @@ abstract class AbstractBlock extends \Magento\Object /** * Parent layout of the block * - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; /** - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; @@ -106,7 +107,7 @@ abstract class AbstractBlock extends \Magento\Object /** * Url Builder * - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_urlBuilder; @@ -114,14 +115,14 @@ abstract class AbstractBlock extends \Magento\Object * System event manager * * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; /** * Application front controller * - * @var \Magento\Core\Controller\Varien\Front + * @var \Magento\App\FrontController */ protected $_frontController; @@ -138,7 +139,7 @@ abstract class AbstractBlock extends \Magento\Object /** * View config model * - * @var \Magento\Core\Model\View\Config + * @var \Magento\View\ConfigInterface */ protected $_viewConfig; @@ -155,7 +156,7 @@ abstract class AbstractBlock extends \Magento\Object /** * @var \Magento\Core\Model\App */ - protected $_app; + protected $_storeManager; /** * @param \Magento\Core\Block\Context $context @@ -178,13 +179,13 @@ public function __construct(\Magento\Core\Block\Context $context, array $data = $this->_viewConfig = $context->getViewConfig(); $this->_cacheState = $context->getCacheState(); $this->_logger = $context->getLogger(); - $this->_app = $context->getApp(); + $this->_storeManager = $context->getApp(); parent::__construct($data); $this->_construct(); } /** - * @return \Magento\Core\Controller\Request\Http + * @return \Magento\App\RequestInterface */ public function getRequest() { @@ -225,10 +226,10 @@ public function getParentBlock() /** * Set layout object * - * @param \Magento\Core\Model\Layout $layout + * @param \Magento\View\LayoutInterface $layout * @return \Magento\Core\Block\AbstractBlock */ - public function setLayout(\Magento\Core\Model\Layout $layout) + public function setLayout(\Magento\View\LayoutInterface $layout) { $this->_layout = $layout; $this->_eventManager->dispatch('core_block_abstract_prepare_layout_before', array('block' => $this)); @@ -252,7 +253,7 @@ protected function _prepareLayout() /** * Retrieve layout object * - * @return \Magento\Core\Model\Layout + * @return \Magento\View\LayoutInterface */ public function getLayout() { @@ -947,7 +948,7 @@ public function getNameInLayout() protected function _beforeCacheUrl() { if ($this->_cacheState->isEnabled(self::CACHE_GROUP)) { - $this->_app->setUseSessionVar(true); + $this->_storeManager->setUseSessionVar(true); } return $this; } @@ -961,7 +962,7 @@ protected function _beforeCacheUrl() protected function _afterCacheUrl($html) { if ($this->_cacheState->isEnabled(self::CACHE_GROUP)) { - $this->_app->setUseSessionVar(false); + $this->_storeManager->setUseSessionVar(false); \Magento\Profiler::start('CACHE_URL'); $html = $this->_urlBuilder->sessionUrlVar($html); \Magento\Profiler::stop('CACHE_URL'); diff --git a/app/code/Magento/Core/Block/Context.php b/app/code/Magento/Core/Block/Context.php index c22d2655cb966..693d2c7e56f53 100644 --- a/app/code/Magento/Core/Block/Context.php +++ b/app/code/Magento/Core/Block/Context.php @@ -29,22 +29,22 @@ class Context implements \Magento\ObjectManager\ContextInterface { /** - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; /** - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; /** - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_urlBuilder; @@ -59,7 +59,7 @@ class Context implements \Magento\ObjectManager\ContextInterface protected $_cache; /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_design; @@ -74,7 +74,7 @@ class Context implements \Magento\ObjectManager\ContextInterface protected $_storeConfig; /** - * @var \Magento\Core\Controller\Varien\Front + * @var \Magento\App\FrontController */ protected $_frontController; @@ -91,7 +91,7 @@ class Context implements \Magento\ObjectManager\ContextInterface /** * View config model * - * @var \Magento\Core\Model\View\Config + * @var \Magento\View\ConfigInterface */ protected $_viewConfig; @@ -111,38 +111,38 @@ class Context implements \Magento\ObjectManager\ContextInterface protected $_app; /** - * @param \Magento\Core\Controller\Request\Http $request - * @param \Magento\Core\Model\Layout $layout - * @param \Magento\Core\Model\Event\Manager $eventManager - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\App\RequestInterface $request + * @param \Magento\View\LayoutInterface $layout + * @param \Magento\Event\ManagerInterface $eventManager + * @param \Magento\UrlInterface $urlBuilder * @param \Magento\Core\Model\Translate $translator * @param \Magento\Core\Model\CacheInterface $cache - * @param \Magento\Core\Model\View\DesignInterface $design + * @param \Magento\View\DesignInterface $design * @param \Magento\Core\Model\Session\AbstractSession $session * @param \Magento\Core\Model\Store\Config $storeConfig - * @param \Magento\Core\Controller\Varien\Front $frontController + * @param \Magento\App\FrontController $frontController * @param \Magento\Core\Model\Factory\Helper $helperFactory * @param \Magento\Core\Model\View\Url $viewUrl - * @param \Magento\Core\Model\View\Config $viewConfig + * @param \Magento\View\ConfigInterface $viewConfig * @param \Magento\Core\Model\Cache\StateInterface $cacheState * @param \Magento\Core\Model\Logger $logger * @param \Magento\Core\Model\App $app * @param array $data */ public function __construct( - \Magento\Core\Controller\Request\Http $request, - \Magento\Core\Model\Layout $layout, - \Magento\Core\Model\Event\Manager $eventManager, - \Magento\Core\Model\UrlInterface $urlBuilder, + \Magento\App\RequestInterface $request, + \Magento\View\LayoutInterface $layout, + \Magento\Event\ManagerInterface $eventManager, + \Magento\UrlInterface $urlBuilder, \Magento\Core\Model\Translate $translator, \Magento\Core\Model\CacheInterface $cache, - \Magento\Core\Model\View\DesignInterface $design, + \Magento\View\DesignInterface $design, \Magento\Core\Model\Session\AbstractSession $session, \Magento\Core\Model\Store\Config $storeConfig, - \Magento\Core\Controller\Varien\Front $frontController, + \Magento\App\FrontController $frontController, \Magento\Core\Model\Factory\Helper $helperFactory, \Magento\Core\Model\View\Url $viewUrl, - \Magento\Core\Model\View\Config $viewConfig, + \Magento\View\ConfigInterface $viewConfig, \Magento\Core\Model\Cache\StateInterface $cacheState, \Magento\Core\Model\Logger $logger, \Magento\Core\Model\App $app, @@ -175,7 +175,7 @@ public function getCache() } /** - * @return \Magento\Core\Model\View\DesignInterface + * @return \Magento\View\DesignInterface */ public function getDesignPackage() { @@ -183,7 +183,7 @@ public function getDesignPackage() } /** - * @return \Magento\Core\Model\Event\Manager + * @return \Magento\Event\ManagerInterface */ public function getEventManager() { @@ -191,7 +191,7 @@ public function getEventManager() } /** - * @return \Magento\Core\Controller\Varien\Front + * @return \Magento\App\FrontController */ public function getFrontController() { @@ -207,7 +207,7 @@ public function getHelperFactory() } /** - * @return \Magento\Core\Model\Layout + * @return \Magento\View\LayoutInterface */ public function getLayout() { @@ -215,7 +215,7 @@ public function getLayout() } /** - * @return \Magento\Core\Controller\Request\Http + * @return \Magento\App\RequestInterface */ public function getRequest() { @@ -247,7 +247,7 @@ public function getTranslator() } /** - * @return \Magento\Core\Model\UrlInterface + * @return \Magento\UrlInterface */ public function getUrlBuilder() { @@ -263,7 +263,7 @@ public function getViewUrl() } /** - * @return \Magento\Core\Model\View\Config + * @return \Magento\View\ConfigInterface */ public function getViewConfig() { diff --git a/app/code/Magento/Core/Block/Template.php b/app/code/Magento/Core/Block/Template.php index e6083160a78f2..0de003c13e964 100644 --- a/app/code/Magento/Core/Block/Template.php +++ b/app/code/Magento/Core/Block/Template.php @@ -36,8 +36,6 @@ class Template extends \Magento\Core\Block\AbstractBlock { - const XML_PATH_DEBUG_TEMPLATE_HINTS = 'dev/debug/template_hints'; - const XML_PATH_DEBUG_TEMPLATE_HINTS_BLOCKS = 'dev/debug/template_hints_blocks'; const XML_PATH_TEMPLATE_ALLOW_SYMLINK = 'dev/template/allow_symlink'; /** @@ -58,11 +56,8 @@ class Template extends \Magento\Core\Block\AbstractBlock */ protected $_allowSymlinks = null; - protected static $_showTemplateHints; - protected static $_showTemplateHintsBlocks; - /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dirs; @@ -89,9 +84,9 @@ class Template extends \Magento\Core\Block\AbstractBlock protected $_template; /** - * @var \Magento\Core\Model\TemplateEngine\Factory + * @var \Magento\Core\Model\TemplateEngine\Pool */ - protected $_tmplEngineFactory; + protected $_templateEnginePool; /** * Core data @@ -103,12 +98,13 @@ class Template extends \Magento\Core\Block\AbstractBlock /** * @var \Magento\Core\Model\App */ - protected $_app; + protected $_storeManager; /** * @param \Magento\Core\Helper\Data $coreData * @param \Magento\Core\Block\Template\Context $context * @param array $data + * @todo Remove injection of the core helper from this class and its descendants, because it's no longer used */ public function __construct( \Magento\Core\Helper\Data $coreData, @@ -120,8 +116,8 @@ public function __construct( $this->_logger = $context->getLogger(); $this->_filesystem = $context->getFilesystem(); $this->_viewFileSystem = $context->getViewFileSystem(); - $this->_tmplEngineFactory = $context->getEngineFactory(); - $this->_app = $context->getApp(); + $this->_templateEnginePool = $context->getEnginePool(); + $this->_storeManager = $context->getApp(); parent::__construct($context, $data); } @@ -213,93 +209,29 @@ public function assign($key, $value=null) return $this; } - /** - * Check if direct output is allowed for block - * - * @return bool - */ - public function getDirectOutput() - { - if ($this->getLayout()) { - return $this->getLayout()->isDirectOutput(); - } - return false; - } - - public function getShowTemplateHints() - { - if (is_null(self::$_showTemplateHints)) { - self::$_showTemplateHints = $this->_storeConfig->getConfig(self::XML_PATH_DEBUG_TEMPLATE_HINTS) - && $this->_coreData->isDevAllowed(); - self::$_showTemplateHintsBlocks = $this->_storeConfig->getConfig(self::XML_PATH_DEBUG_TEMPLATE_HINTS_BLOCKS) - && $this->_coreData->isDevAllowed(); - } - return self::$_showTemplateHints; - } - /** * Retrieve block view from file (template) * - * @param string $fileName + * @param string $fileName * @return string - * @throws \Exception */ public function fetchView($fileName) { - $viewShortPath = str_replace($this->_dirs->getDir(\Magento\Core\Model\Dir::ROOT), '', $fileName); + $viewShortPath = str_replace($this->_dirs->getDir(\Magento\App\Dir::ROOT), '', $fileName); \Magento\Profiler::start('TEMPLATE:' . $fileName, array('group' => 'TEMPLATE', 'file_name' => $viewShortPath)); - - $do = $this->getDirectOutput(); - - if (!$do) { - ob_start(); - } - if ($this->getShowTemplateHints()) { - echo << -
{$fileName}
-HTML; - if (self::$_showTemplateHintsBlocks) { - $thisClass = get_class($this); - echo <<{$thisClass} -HTML; - } - } - - try { - if (($this->_filesystem->isPathInDirectory($fileName, $this->_dirs->getDir(\Magento\Core\Model\Dir::APP)) - || $this->_filesystem->isPathInDirectory($fileName, $this->_dirs->getDir(\Magento\Core\Model\Dir::THEMES)) + if (($this->_filesystem->isPathInDirectory($fileName, $this->_dirs->getDir(\Magento\App\Dir::APP)) + || $this->_filesystem->isPathInDirectory($fileName, $this->_dirs->getDir(\Magento\App\Dir::THEMES)) || $this->_getAllowSymlinks()) && $this->_filesystem->isFile($fileName) - ) { - $extension = pathinfo($fileName, PATHINFO_EXTENSION); - $templateEngine = $this->_tmplEngineFactory->get($extension); - echo $templateEngine->render($this, $fileName, $this->_viewVars); - } else { - $this->_logger->log("Invalid template file: '{$fileName}'", \Zend_Log::CRIT); - } - - } catch (\Exception $e) { - if (!$do) { - ob_get_clean(); - } - throw $e; - } - - if ($this->getShowTemplateHints()) { - echo ''; - } - - if (!$do) { - $html = ob_get_clean(); + ) { + $extension = pathinfo($fileName, PATHINFO_EXTENSION); + $templateEngine = $this->_templateEnginePool->get($extension); + $html = $templateEngine->render($this, $fileName, $this->_viewVars); } else { $html = ''; + $this->_logger->log("Invalid template file: '{$fileName}'", \Zend_Log::CRIT); } + \Magento\Profiler::stop('TEMPLATE:' . $fileName); return $html; } @@ -351,7 +283,7 @@ public function getCacheKeyInfo() { return array( 'BLOCK_TPL', - $this->_app->getStore()->getCode(), + $this->_storeManager->getStore()->getCode(), $this->getTemplateFile(), 'template' => $this->getTemplate() ); diff --git a/app/code/Magento/Core/Block/Template/Context.php b/app/code/Magento/Core/Block/Template/Context.php index dd4d521ff65df..38a6fa121912b 100644 --- a/app/code/Magento/Core/Block/Template/Context.php +++ b/app/code/Magento/Core/Block/Template/Context.php @@ -14,7 +14,7 @@ class Context extends \Magento\Core\Block\Context /** * Dirs instance * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dirs; @@ -38,52 +38,52 @@ class Context extends \Magento\Core\Block\Context protected $_viewFileSystem; /** - * @var \Magento\Core\Model\TemplateEngine\Factory + * @var \Magento\Core\Model\TemplateEngine\Pool */ - protected $_engineFactory; + protected $_enginePool; /** - * @param \Magento\Core\Controller\Request\Http $request - * @param \Magento\Core\Model\Layout $layout - * @param \Magento\Core\Model\Event\Manager $eventManager - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\App\RequestInterface $request + * @param \Magento\View\LayoutInterface $layout + * @param \Magento\Event\ManagerInterface $eventManager + * @param \Magento\UrlInterface $urlBuilder * @param \Magento\Core\Model\Translate $translator * @param \Magento\Core\Model\CacheInterface $cache - * @param \Magento\Core\Model\View\DesignInterface $design + * @param \Magento\View\DesignInterface $design * @param \Magento\Core\Model\Session $session * @param \Magento\Core\Model\Store\Config $storeConfig - * @param \Magento\Core\Controller\Varien\Front $frontController + * @param \Magento\App\FrontController $frontController * @param \Magento\Core\Model\Factory\Helper $helperFactory * @param \Magento\Core\Model\View\Url $viewUrl - * @param \Magento\Core\Model\View\Config $viewConfig + * @param \Magento\View\ConfigInterface $viewConfig * @param \Magento\Core\Model\Cache\StateInterface $cacheState - * @param \Magento\Core\Model\App $app - * @param \Magento\Core\Model\Dir $dirs + * @param \Magento\App\Dir $dirs * @param \Magento\Core\Model\Logger $logger * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\View\FileSystem $viewFileSystem - * @param \Magento\Core\Model\TemplateEngine\Factory $engineFactory + * @param \Magento\Core\Model\TemplateEngine\Pool $enginePool + * @param \Magento\Core\Model\App $app */ public function __construct( - \Magento\Core\Controller\Request\Http $request, - \Magento\Core\Model\Layout $layout, - \Magento\Core\Model\Event\Manager $eventManager, - \Magento\Core\Model\UrlInterface $urlBuilder, + \Magento\App\RequestInterface $request, + \Magento\View\LayoutInterface $layout, + \Magento\Event\ManagerInterface $eventManager, + \Magento\UrlInterface $urlBuilder, \Magento\Core\Model\Translate $translator, \Magento\Core\Model\CacheInterface $cache, - \Magento\Core\Model\View\DesignInterface $design, + \Magento\View\DesignInterface $design, \Magento\Core\Model\Session $session, \Magento\Core\Model\Store\Config $storeConfig, - \Magento\Core\Controller\Varien\Front $frontController, + \Magento\App\FrontController $frontController, \Magento\Core\Model\Factory\Helper $helperFactory, \Magento\Core\Model\View\Url $viewUrl, - \Magento\Core\Model\View\Config $viewConfig, + \Magento\View\ConfigInterface $viewConfig, \Magento\Core\Model\Cache\StateInterface $cacheState, - \Magento\Core\Model\Dir $dirs, + \Magento\App\Dir $dirs, \Magento\Core\Model\Logger $logger, \Magento\Filesystem $filesystem, \Magento\Core\Model\View\FileSystem $viewFileSystem, - \Magento\Core\Model\TemplateEngine\Factory $engineFactory, + \Magento\Core\Model\TemplateEngine\Pool $enginePool, \Magento\Core\Model\App $app ) { parent::__construct( @@ -95,12 +95,12 @@ public function __construct( $this->_logger = $logger; $this->_filesystem = $filesystem; $this->_viewFileSystem = $viewFileSystem; - $this->_engineFactory = $engineFactory; + $this->_enginePool = $enginePool; } /** * Get dirs instance - * @return \Magento\Core\Model\Dir + * @return \Magento\App\Dir */ public function getDirs() { @@ -138,12 +138,12 @@ public function getViewFileSystem() } /** - * Get the template engine factory instance + * Get the template engine pool instance * - * @return \Magento\Core\Model\TemplateEngine\Factory + * @return \Magento\Core\Model\TemplateEngine\Pool */ - public function getEngineFactory() + public function getEnginePool() { - return $this->_engineFactory; + return $this->_enginePool; } } diff --git a/app/code/Magento/Core/Controller/Front/Router.php b/app/code/Magento/Core/Controller/Front/Router.php deleted file mode 100644 index 1e06839e4847a..0000000000000 --- a/app/code/Magento/Core/Controller/Front/Router.php +++ /dev/null @@ -1,104 +0,0 @@ -_config = $config; - $this->_storeManager = $storeManager; - } - - public function getConfig() - { - return $this->_config; - } - - public function addRoutes(\Zend_Controller_Router_Interface $router) - { - $frontName = $this->_config->getName(); - $routeMatch = $frontName.'/:controller/:action/*'; - $moduleName = (string)$this->_config->module; - $routeParams = array('module'=>$moduleName, 'controller'=>'index', 'action'=>'index', '_frontName'=>$frontName); - $route = new \Zend_Controller_Router_Route($routeMatch, $routeParams); - $router->addRoute($moduleName, $route); - - return $this; - } - - public function getUrl($params=array()) - { - static $reservedKeys = array('module'=>1, 'controller'=>1, 'action'=>1, 'array'=>1); - - if (is_string($params)) { - $paramsArr = explode('/', $params); - $params = array('controller'=>$paramsArr[0], 'action'=>$paramsArr[1]); - } - - $url = $this->_storeManager->getStore()->getBaseUrl($params); - - if (!empty($params['frontName'])) { - $url .= $params['frontName'].'/'; - } else { - $url .= $this->_config->getName().'/'; - } - - if (!empty($params)) { - $paramsStr = ''; - foreach ($params as $key=>$value) { - if (!isset($reservedKeys[$key]) && '_'!==$key{0} && !empty($value)) { - $paramsStr .= $key.'/'.$value.'/'; - } - } - - if (empty($params['controller']) && !empty($paramsStr)) { - $params['controller'] = 'index'; - } - $url .= empty($params['controller']) ? '' : $params['controller'].'/'; - - if (empty($params['action']) && !empty($paramsStr)) { - $params['action'] = 'index'; - } - $url .= empty($params['action']) ? '' : $params['action'].'/'; - - $url .= $paramsStr; - - $url .= empty($params['array']) ? '' : '?' . http_build_query($params['array']); - } - - return $url; - } -} diff --git a/app/code/Magento/Core/Controller/Index.php b/app/code/Magento/Core/Controller/Index.php index 6fafebf486bbd..8eaa3ccd8887d 100644 --- a/app/code/Magento/Core/Controller/Index.php +++ b/app/code/Magento/Core/Controller/Index.php @@ -24,7 +24,6 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ - namespace Magento\Core\Controller; class Index extends \Magento\Core\Controller\Front\Action { diff --git a/app/code/Magento/Core/Controller/Request/HttpProxy.php b/app/code/Magento/Core/Controller/Request/HttpProxy.php deleted file mode 100644 index 641a47421ad5d..0000000000000 --- a/app/code/Magento/Core/Controller/Request/HttpProxy.php +++ /dev/null @@ -1,764 +0,0 @@ -_objectManager = $objectManager; - $this->_instanceName = $instanceName; - $this->_isShared = $shared; - } - - /** - * @return array - */ - public function __sleep() - { - return array('_subject', '_isShared'); - } - - /** - * Retrieve ObjectManager from global scope - */ - public function __wakeup() - { - $this->_objectManager = \Magento\Core\Model\ObjectManager::getInstance(); - } - - /** - * Clone proxied instance - */ - public function __clone() - { - $this->_subject = clone $this->_getSubject(); - } - - /** - * Get proxied instance - * - * @return \Magento\Core\Controller\Request\Http - */ - protected function _getSubject() - { - if (!$this->_subject) { - $this->_subject = true === $this->_isShared - ? $this->_objectManager->get($this->_instanceName) - : $this->_objectManager->create($this->_instanceName); - } - return $this->_subject; - } - - /** - * {@inheritdoc} - */ - public function getOriginalPathInfo() - { - return $this->_getSubject()->getOriginalPathInfo(); - } - - /** - * {@inheritdoc} - */ - public function setPathInfo($pathInfo = null) - { - return $this->_getSubject()->setPathInfo($pathInfo); - } - - /** - * {@inheritdoc} - */ - public function rewritePathInfo($pathInfo) - { - return $this->_getSubject()->rewritePathInfo($pathInfo); - } - - /** - * {@inheritdoc} - */ - public function isDirectAccessFrontendName($code) - { - return $this->_getSubject()->isDirectAccessFrontendName($code); - } - - /** - * {@inheritdoc} - */ - public function getDirectFrontNames() - { - return $this->_getSubject()->getDirectFrontNames(); - } - - /** - * {@inheritdoc} - */ - public function getRequestString() - { - return $this->_getSubject()->getRequestString(); - } - - /** - * {@inheritdoc} - */ - public function getBasePath() - { - return $this->_getSubject()->getBasePath(); - } - - /** - * {@inheritdoc} - */ - public function getBaseUrl() - { - return $this->_getSubject()->getBaseUrl(); - } - - /** - * {@inheritdoc} - */ - public function setRouteName($route) - { - return $this->_getSubject()->setRouteName($route); - } - - /** - * {@inheritdoc} - */ - public function getRouteName() - { - return $this->_getSubject()->getRouteName(); - } - - /** - * {@inheritdoc} - */ - public function getHttpHost($trimPort = true) - { - return $this->_getSubject()->getHttpHost($trimPort); - } - - /** - * {@inheritdoc} - */ - public function setPost($key, $value = null) - { - return $this->_getSubject()->setPost($key, $value); - } - - /** - * {@inheritdoc} - */ - public function setControllerModule($module) - { - return $this->_getSubject()->setControllerModule($module); - } - - /** - * {@inheritdoc} - */ - public function getControllerModule() - { - return $this->_getSubject()->getControllerModule(); - } - - /** - * {@inheritdoc} - */ - public function getModuleName() - { - return $this->_getSubject()->getModuleName(); - } - - /** - * {@inheritdoc} - */ - public function getControllerName() - { - return $this->_getSubject()->getControllerName(); - } - - /** - * {@inheritdoc} - */ - public function getActionName() - { - return $this->_getSubject()->getActionName(); - } - - /** - * {@inheritdoc} - */ - public function getAlias($name) - { - return $this->_getSubject()->getAlias($name); - } - - /** - * {@inheritdoc} - */ - public function getAliases() - { - return $this->_getSubject()->getAliases(); - } - - /** - * {@inheritdoc} - */ - public function getRequestedRouteName() - { - return $this->_getSubject()->getRequestedRouteName(); - } - - /** - * {@inheritdoc} - */ - public function getRequestedControllerName() - { - return $this->_getSubject()->getRequestedControllerName(); - } - - /** - * {@inheritdoc} - */ - public function getRequestedActionName() - { - return $this->_getSubject()->getRequestedActionName(); - } - - /** - * {@inheritdoc} - */ - public function setRoutingInfo($data) - { - return $this->_getSubject()->setRoutingInfo($data); - } - - /** - * {@inheritdoc} - */ - public function initForward() - { - return $this->_getSubject()->initForward(); - } - - /** - * {@inheritdoc} - */ - public function getBeforeForwardInfo($name = null) - { - return $this->_getSubject()->getBeforeForwardInfo($name); - } - - /** - * {@inheritdoc} - */ - public function isStraight($flag = null) - { - return $this->_getSubject()->isStraight($flag); - } - - /** - * {@inheritdoc} - */ - public function isAjax() - { - return $this->_getSubject()->isAjax(); - } - - /** - * {@inheritdoc} - */ - public function getFiles($key = null, $default = null) - { - return $this->_getSubject()->getFiles($key, $default); - } - - /** - * {@inheritdoc} - */ - public function getDistroBaseUrl() - { - return $this->_getSubject()->getDistroBaseUrl(); - } - - /** - * {@inheritdoc} - */ - public function __get($key) - { - return $this->_getSubject()->__get($key); - } - - /** - * {@inheritdoc} - */ - public function get($key) - { - return $this->_getSubject()->get($key); - } - - /** - * {@inheritdoc} - */ - public function __set($key, $value) - { - return $this->_getSubject()->__set($key, $value); - } - - /** - * {@inheritdoc} - */ - public function set($key, $value) - { - return $this->_getSubject()->set($key, $value); - } - - /** - * {@inheritdoc} - */ - public function __isset($key) - { - return $this->_getSubject()->__isset($key); - } - - /** - * {@inheritdoc} - */ - public function has($key) - { - return $this->_getSubject()->has($key); - } - - /** - * {@inheritdoc} - */ - public function setQuery($spec, $value = null) - { - return $this->_getSubject()->setQuery($spec, $value); - } - - /** - * {@inheritdoc} - */ - public function getQuery($key = null, $default = null) - { - return $this->_getSubject()->getQuery($key, $default); - } - - /** - * {@inheritdoc} - */ - public function getPost($key = null, $default = null) - { - return $this->_getSubject()->getPost($key, $default); - } - - /** - * {@inheritdoc} - */ - public function getCookie($key = null, $default = null) - { - return $this->_getSubject()->getCookie($key, $default); - } - - /** - * {@inheritdoc} - */ - public function getServer($key = null, $default = null) - { - return $this->_getSubject()->getServer($key, $default); - } - - /** - * {@inheritdoc} - */ - public function getEnv($key = null, $default = null) - { - return $this->_getSubject()->getEnv($key, $default); - } - - /** - * {@inheritdoc} - */ - public function setRequestUri($requestUri = null) - { - return $this->_getSubject()->setRequestUri($requestUri); - } - - /** - * {@inheritdoc} - */ - public function getRequestUri() - { - return $this->_getSubject()->getRequestUri(); - } - - /** - * {@inheritdoc} - */ - public function setBaseUrl($baseUrl = null) - { - return $this->_getSubject()->setBaseUrl($baseUrl); - } - - /** - * {@inheritdoc} - */ - public function setBasePath($basePath = null) - { - return $this->_getSubject()->setBasePath($basePath); - } - - /** - * {@inheritdoc} - */ - public function getPathInfo() - { - return $this->_getSubject()->getPathInfo(); - } - - /** - * {@inheritdoc} - */ - public function setParamSources(array $paramSources = array()) - { - return $this->_getSubject()->setParamSources($paramSources); - } - - /** - * {@inheritdoc} - */ - public function getParamSources() - { - return $this->_getSubject()->getParamSources(); - } - - /** - * {@inheritdoc} - */ - public function setParam($key, $value) - { - return $this->_getSubject()->setParam($key, $value); - } - - /** - * {@inheritdoc} - */ - public function getParam($key, $default = null) - { - return $this->_getSubject()->getParam($key, $default); - } - - /** - * {@inheritdoc} - */ - public function getParams() - { - return $this->_getSubject()->getParams(); - } - - /** - * {@inheritdoc} - */ - public function setParams(array $params) - { - return $this->_getSubject()->setParams($params); - } - - /** - * {@inheritdoc} - */ - public function setAlias($name, $target) - { - return $this->_getSubject()->setAlias($name, $target); - } - - /** - * {@inheritdoc} - */ - public function getMethod() - { - return $this->_getSubject()->getMethod(); - } - - /** - * {@inheritdoc} - */ - public function isPost() - { - return $this->_getSubject()->isPost(); - } - - /** - * {@inheritdoc} - */ - public function isGet() - { - return $this->_getSubject()->isGet(); - } - - /** - * {@inheritdoc} - */ - public function isPut() - { - return $this->_getSubject()->isPut(); - } - - /** - * {@inheritdoc} - */ - public function isDelete() - { - return $this->_getSubject()->isDelete(); - } - - /** - * {@inheritdoc} - */ - public function isHead() - { - return $this->_getSubject()->isHead(); - } - - /** - * {@inheritdoc} - */ - public function isOptions() - { - return $this->_getSubject()->isOptions(); - } - - /** - * {@inheritdoc} - */ - public function isXmlHttpRequest() - { - return $this->_getSubject()->isXmlHttpRequest(); - } - - /** - * {@inheritdoc} - */ - public function isFlashRequest() - { - return $this->_getSubject()->isFlashRequest(); - } - - /** - * {@inheritdoc} - */ - public function isSecure() - { - return $this->_getSubject()->isSecure(); - } - - /** - * {@inheritdoc} - */ - public function getRawBody() - { - return $this->_getSubject()->getRawBody(); - } - - /** - * {@inheritdoc} - */ - public function getHeader($header) - { - return $this->_getSubject()->getHeader($header); - } - - /** - * {@inheritdoc} - */ - public function getScheme() - { - return $this->_getSubject()->getScheme(); - } - - /** - * {@inheritdoc} - */ - public function getClientIp($checkProxy = true) - { - return $this->_getSubject()->getClientIp($checkProxy); - } - - /** - * {@inheritdoc} - */ - public function setModuleName($value) - { - return $this->_getSubject()->setModuleName($value); - } - - /** - * {@inheritdoc} - */ - public function setControllerName($value) - { - return $this->_getSubject()->setControllerName($value); - } - - /** - * {@inheritdoc} - */ - public function setActionName($value) - { - return $this->_getSubject()->setActionName($value); - } - - /** - * {@inheritdoc} - */ - public function getModuleKey() - { - return $this->_getSubject()->getModuleKey(); - } - - /** - * {@inheritdoc} - */ - public function setModuleKey($key) - { - return $this->_getSubject()->setModuleKey($key); - } - - /** - * {@inheritdoc} - */ - public function getControllerKey() - { - return $this->_getSubject()->getControllerKey(); - } - - /** - * {@inheritdoc} - */ - public function setControllerKey($key) - { - return $this->_getSubject()->setControllerKey($key); - } - - /** - * {@inheritdoc} - */ - public function getActionKey() - { - return $this->_getSubject()->getActionKey(); - } - - /** - * {@inheritdoc} - */ - public function setActionKey($key) - { - return $this->_getSubject()->setActionKey($key); - } - - /** - * {@inheritdoc} - */ - public function getUserParams() - { - return $this->_getSubject()->getUserParams(); - } - - /** - * {@inheritdoc} - */ - public function getUserParam($key, $default = null) - { - return $this->_getSubject()->getUserParam($key, $default); - } - - /** - * {@inheritdoc} - */ - public function clearParams() - { - return $this->_getSubject()->clearParams(); - } - - /** - * {@inheritdoc} - */ - public function setDispatched($flag = true) - { - return $this->_getSubject()->setDispatched($flag); - } - - /** - * {@inheritdoc} - */ - public function isDispatched() - { - return $this->_getSubject()->isDispatched(); - } -} diff --git a/app/code/Magento/Core/Controller/Response/Http.php b/app/code/Magento/Core/Controller/Response/Http.php deleted file mode 100644 index 4496ff0e68485..0000000000000 --- a/app/code/Magento/Core/Controller/Response/Http.php +++ /dev/null @@ -1,141 +0,0 @@ - - */ -namespace Magento\Core\Controller\Response; - -class Http extends \Zend_Controller_Response_Http -{ - /** - * Transport object for observers to perform - * - * @var \Magento\Object - */ - protected static $_transportObject = null; - - /** - * @var \Magento\Core\Model\Event\Manager - */ - protected $_eventManager; - - /** - * @param \Magento\Core\Model\Event\Manager $eventManager - */ - public function __construct(\Magento\Core\Model\Event\Manager $eventManager) - { - $this->_eventManager = $eventManager; - } - - /** - * Fixes CGI only one Status header allowed bug - * - * @link http://bugs.php.net/bug.php?id=36705 - * - * @return \Magento\Core\Controller\Response\Http - */ - public function sendHeaders() - { - if (!$this->canSendHeaders()) { - $this->_objectManager->get('Magento\Core\Model\Logger') - ->log('HEADERS ALREADY SENT: '.mageDebugBacktrace(true, true, true)); - return $this; - } - - if (substr(php_sapi_name(), 0, 3) == 'cgi') { - $statusSent = false; - foreach ($this->_headersRaw as $index => $header) { - if (stripos($header, 'status:')===0) { - if ($statusSent) { - unset($this->_headersRaw[$index]); - } else { - $statusSent = true; - } - } - } - foreach ($this->_headers as $index => $header) { - if (strcasecmp($header['name'], 'status') === 0) { - if ($statusSent) { - unset($this->_headers[$index]); - } else { - $statusSent = true; - } - } - } - } - return parent::sendHeaders(); - } - - public function sendResponse() - { - return parent::sendResponse(); - } - - /** - * Additionally check for session messages in several domains case - * - * @param string $url - * @param int $code - * @return \Magento\Core\Controller\Response\Http - */ - public function setRedirect($url, $code = 302) - { - /** - * Use single transport object instance - */ - if (self::$_transportObject === null) { - self::$_transportObject = new \Magento\Object; - } - self::$_transportObject->setUrl($url); - self::$_transportObject->setCode($code); - $this->_eventManager->dispatch('controller_response_redirect', - array('response' => $this, 'transport' => self::$_transportObject)); - - return parent::setRedirect(self::$_transportObject->getUrl(), self::$_transportObject->getCode()); - } - - /** - * Get header value by name. - * Returns first found header by passed name. - * If header with specified name was not found returns false. - * - * @param string $name - * @return array|bool - */ - public function getHeader($name) - { - foreach ($this->_headers as $header) { - if ($header['name'] == $name) { - return $header; - } - } - return false; - } -} diff --git a/app/code/Magento/Core/Controller/Varien/Action.php b/app/code/Magento/Core/Controller/Varien/Action.php index 44a5cee124f0a..664f1570b50ca 100644 --- a/app/code/Magento/Core/Controller/Varien/Action.php +++ b/app/code/Magento/Core/Controller/Varien/Action.php @@ -36,7 +36,9 @@ */ namespace Magento\Core\Controller\Varien; -class Action extends \Magento\Core\Controller\Varien\AbstractAction +use Magento\App\Action\AbstractAction; + +class Action extends \Magento\App\Action\AbstractAction { const FLAG_NO_CHECK_INSTALLATION = 'no-install-check'; const FLAG_NO_DISPATCH = 'no-dispatch'; @@ -113,17 +115,17 @@ class Action extends \Magento\Core\Controller\Varien\AbstractAction protected $_removeDefaultTitle = false; /** - * @var \Magento\Core\Controller\Varien\Front + * @var \Magento\App\FrontController */ protected $_frontController = null; /** - * @var \Magento\Core\Model\Layout\Factory + * @var \Magento\View\LayoutInterface */ protected $_layout; /** - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -207,7 +209,7 @@ public function setFlag($action, $flag, $value) /** * Retrieve current layout object * - * @return \Magento\Core\Model\Layout + * @return \Magento\View\LayoutInterface */ public function getLayout() { @@ -389,10 +391,6 @@ public function renderLayout($output = '') return; } - if ($this->_frontController->getNoRender()) { - return; - } - \Magento\Profiler::start('LAYOUT'); $this->_renderTitles(); @@ -406,8 +404,6 @@ public function renderLayout($output = '') $this->_eventManager->dispatch('controller_action_layout_render_before'); $this->_eventManager->dispatch('controller_action_layout_render_before_' . $this->getFullActionName()); - $this->getLayout()->setDirectOutput(false); - $output = $this->getLayout()->getOutput(); $this->_objectManager->get('Magento\Core\Model\Translate')->processResponseBody($output); $this->getResponse()->appendBody($output); @@ -454,7 +450,7 @@ public function dispatch($action) } \Magento\Profiler::stop($profilerKey); - } catch (\Magento\Core\Controller\Varien\Exception $e) { + } catch (\Magento\App\Action\Exception $e) { // set prepared flags foreach ($e->getResultFlags() as $flagData) { list($action, $flag, $value) = $flagData; @@ -463,11 +459,11 @@ public function dispatch($action) // call forward, redirect or an action list($method, $parameters) = $e->getResultCallback(); switch ($method) { - case \Magento\Core\Controller\Varien\Exception::RESULT_REDIRECT: + case \Magento\App\Action\Exception::RESULT_REDIRECT: list($path, $arguments) = $parameters; $this->_redirect($path, $arguments); break; - case \Magento\Core\Controller\Varien\Exception::RESULT_FORWARD: + case \Magento\App\Action\Exception::RESULT_FORWARD: list($action, $controller, $module, $params) = $parameters; $this->_forward($action, $controller, $module, $params); break; @@ -546,7 +542,7 @@ protected function _initDesign() public function preDispatch() { if (!$this->getFlag('', self::FLAG_NO_CHECK_INSTALLATION)) { - if (!$this->_objectManager->get('Magento\Core\Model\App\State')->isInstalled()) { + if (!$this->_objectManager->get('Magento\App\State')->isInstalled()) { $this->setFlag('', self::FLAG_NO_DISPATCH, true); $this->_redirect('install'); return; @@ -555,7 +551,7 @@ public function preDispatch() // Prohibit disabled store actions $storeManager = $this->_objectManager->get('Magento\Core\Model\StoreManager'); - if ($this->_objectManager->get('Magento\Core\Model\App\State') && !$storeManager->getStore()->getIsActive()) { + if ($this->_objectManager->get('Magento\App\State') && !$storeManager->getStore()->getIsActive()) { $this->_objectManager->get('Magento\Core\Model\StoreManager')->throwStoreException(); } diff --git a/app/code/Magento/Core/Controller/Varien/Action/Context.php b/app/code/Magento/Core/Controller/Varien/Action/Context.php index 80f9566c6c56a..88139ce82fa45 100644 --- a/app/code/Magento/Core/Controller/Varien/Action/Context.php +++ b/app/code/Magento/Core/Controller/Varien/Action/Context.php @@ -28,12 +28,12 @@ class Context implements \Magento\ObjectManager\ContextInterface { /** - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; /** - * @var \Magento\Core\Controller\Response\Http + * @var \Magento\App\ResponseInterface */ protected $_response; @@ -43,17 +43,17 @@ class Context implements \Magento\ObjectManager\ContextInterface protected $_objectManager; /** - * @var \Magento\Core\Controller\Varien\Front + * @var \Magento\App\FrontController */ protected $_frontController = null; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; /** - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -71,22 +71,22 @@ class Context implements \Magento\ObjectManager\ContextInterface /** * @param \Magento\Core\Model\Logger $logger - * @param \Magento\Core\Controller\Request\Http $request - * @param \Magento\Core\Controller\Response\Http $response + * @param \Magento\App\RequestInterface $request + * @param \Magento\App\ResponseInterface $response * @param \Magento\ObjectManager $objectManager - * @param \Magento\Core\Controller\Varien\Front $frontController - * @param \Magento\Core\Model\Layout $layout - * @param \Magento\Core\Model\Event\Manager $eventManager - * @param boolean $isRenderInherited + * @param \Magento\App\FrontController $frontController + * @param \Magento\View\LayoutInterface $layout + * @param \Magento\Event\ManagerInterface $eventManager + * @param bool $isRenderInherited */ public function __construct( \Magento\Core\Model\Logger $logger, - \Magento\Core\Controller\Request\Http $request, - \Magento\Core\Controller\Response\Http $response, + \Magento\App\RequestInterface $request, + \Magento\App\ResponseInterface $response, \Magento\ObjectManager $objectManager, - \Magento\Core\Controller\Varien\Front $frontController, - \Magento\Core\Model\Layout $layout, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\App\FrontController $frontController, + \Magento\View\LayoutInterface $layout, + \Magento\Event\ManagerInterface $eventManager, $isRenderInherited ) { $this->_request = $request; @@ -110,7 +110,7 @@ public function isRenderInherited() } /** - * @return \Magento\Core\Controller\Varien\Front + * @return \Magento\App\FrontController */ public function getFrontController() { @@ -118,7 +118,7 @@ public function getFrontController() } /** - * @return \Magento\Core\Model\Layout + * @return \Magento\View\LayoutInterface */ public function getLayout() { @@ -134,7 +134,7 @@ public function getObjectManager() } /** - * @return \Magento\Core\Controller\Request\Http + * @return \Magento\App\RequestInterface */ public function getRequest() { @@ -142,7 +142,7 @@ public function getRequest() } /** - * @return \Magento\Core\Controller\Response\Http + * @return \Magento\App\ResponseInterface */ public function getResponse() { @@ -150,7 +150,7 @@ public function getResponse() } /** - * @return \Magento\Core\Model\Event\Manager + * @return \Magento\Event\ManagerInterface */ public function getEventManager() { diff --git a/app/code/Magento/Core/Controller/Varien/Front.php b/app/code/Magento/Core/Controller/Varien/Front.php deleted file mode 100644 index cdc71cd70b412..0000000000000 --- a/app/code/Magento/Core/Controller/Varien/Front.php +++ /dev/null @@ -1,413 +0,0 @@ -_backendData = $backendData; - $this->_rewriteFactory = $rewriteFactory; - $this->_eventManager = $eventManager; - $this->_routerList = $routerList; - $this->_coreStoreConfig = $coreStoreConfig; - $this->_coreConfig = $coreConfig; - $this->_url = $url; - $this->_appState = $appState; - $this->_app = $app; - $this->_storeManager = $storeManager; - $this->_request = $request; - $this->_response = $response; - } - - public function setDefault($key, $value=null) - { - if (is_array($key)) { - $this->_defaults = $key; - } else { - $this->_defaults[$key] = $value; - } - return $this; - } - - public function getDefault($key=null) - { - if (is_null($key)) { - return $this->_defaults; - } elseif (isset($this->_defaults[$key])) { - return $this->_defaults[$key]; - } - return false; - } - - /** - * Retrieve request object - * - * @return \Magento\Core\Controller\Request\Http - */ - public function getRequest() - { - return $this->_request; - } - - /** - * Retrieve response object - * - * @return \Magento\Core\Controller\Response\Http - */ - public function getResponse() - { - return $this->_response; - } - - /** - * Get routerList model - * - * @return \Magento\Core\Model\RouterList - */ - public function getRouterList() - { - return $this->_routerList; - } - - /** - * Retrieve router by name - * - * @param string $name - * @return \Magento\Core\Controller\Varien\Router\AbstractRouter - */ - public function getRouter($name) - { - $routers = $this->_routerList->getRouters(); - if (isset($routers[$name])) { - return $routers[$name]; - } - return false; - } - - /** - * Retrieve routers collection - * - * @return array - */ - public function getRouters() - { - return $this->_routerList->getRouters(); - } - - /** - * Dispatch user request - * - * @throws \Magento\Core\Exception - * @return \Magento\Core\Controller\Varien\Front - */ - public function dispatch() - { - $request = $this->getRequest(); - - // If pre-configured, check equality of base URL and requested URL - $this->_checkBaseUrl($request); - - \Magento\Profiler::start('dispatch'); - - $request->setPathInfo()->setDispatched(false); - $this->applyRewrites($request); - - \Magento\Profiler::stop('dispatch'); - - \Magento\Profiler::start('routers_match'); - $routingCycleCounter = 0; - while (!$request->isDispatched() && $routingCycleCounter++ < 100) { - /** @var $router \Magento\Core\Controller\Varien\Router\AbstractRouter */ - foreach ($this->_routerList->getRouters() as $router) { - $router->setFront($this); - - /** @var $controllerInstance \Magento\Core\Controller\Varien\Action */ - $controllerInstance = $router->match($this->getRequest()); - if ($controllerInstance) { - $controllerInstance->dispatch($request->getActionName()); - break; - } - } - } - \Magento\Profiler::stop('routers_match'); - if ($routingCycleCounter > 100) { - throw new \Magento\Core\Exception('Front controller reached 100 router match iterations'); - } - // This event gives possibility to launch something before sending output (allow cookie setting) - $this->_eventManager->dispatch('controller_front_send_response_before', array('front' => $this)); - \Magento\Profiler::start('send_response'); - $this->_eventManager->dispatch('http_response_send_before', array('response' => $this)); - $this->getResponse()->sendResponse(); - \Magento\Profiler::stop('send_response'); - $this->_eventManager->dispatch('controller_front_send_response_after', array('front' => $this)); - return $this; - } - - /** - * Apply rewrites to current request - * - * @param \Magento\Core\Controller\Request\Http $request - */ - public function applyRewrites(\Magento\Core\Controller\Request\Http $request) - { - // URL rewrite - if (!$request->isStraight()) { - \Magento\Profiler::start('db_url_rewrite'); - /** @var $urlRewrite \Magento\Core\Model\Url\Rewrite */ - $urlRewrite = $this->_rewriteFactory->create(); - $urlRewrite->rewrite($request); - \Magento\Profiler::stop('db_url_rewrite'); - } - - // config rewrite - \Magento\Profiler::start('config_url_rewrite'); - $this->rewrite($request); - \Magento\Profiler::stop('config_url_rewrite'); - } - - /** - * Apply configuration rewrites to current url - * - * @param \Magento\Core\Controller\Request\Http $request - */ - public function rewrite(\Magento\Core\Controller\Request\Http $request = null) - { - if (!$request) { - $request = $this->getRequest(); - } - - $config = $this->_coreConfig->getNode('global/rewrite'); - if (!$config) { - return; - } - foreach ($config->children() as $rewrite) { - $from = (string)$rewrite->from; - $to = (string)$rewrite->to; - if (empty($from) || empty($to)) { - continue; - } - $from = $this->_processRewriteUrl($from); - $to = $this->_processRewriteUrl($to); - - $pathInfo = preg_replace($from, $to, $request->getPathInfo()); - - if (isset($rewrite->complete)) { - $request->setPathInfo($pathInfo); - } else { - $request->rewritePathInfo($pathInfo); - } - } - } - - /** - * Replace route name placeholders in url to front name - * - * @param string $url - * @return string - */ - protected function _processRewriteUrl($url) - { - $startPos = strpos($url, '{'); - if ($startPos!==false) { - $endPos = strpos($url, '}'); - $routeId = substr($url, $startPos+1, $endPos-$startPos-1); - $router = $this->_routerList->getRouterByRoute($routeId); - if ($router) { - $frontName = $router->getFrontNameByRoute($routeId); - $url = str_replace('{'.$routeId.'}', $frontName, $url); - } - } - return $url; - } - - /** - * Auto-redirect to base url (without SID) if the requested url doesn't match it. - * By default this feature is enabled in configuration. - * - * @param \Zend_Controller_Request_Http $request - */ - protected function _checkBaseUrl($request) - { - if (!$this->_appState->isInstalled() || $request->getPost() || strtolower($request->getMethod()) == 'post') { - return; - } - - $redirectCode = (int)$this->_coreStoreConfig->getConfig('web/url/redirect_to_base'); - if (!$redirectCode) { - return; - } elseif ($redirectCode != 301) { - $redirectCode = 302; - } - - if ($this->_isAdminFrontNameMatched($request)) { - return; - } - - $baseUrl = $this->_storeManager->getStore()->getBaseUrl( - \Magento\Core\Model\Store::URL_TYPE_WEB, - $this->_storeManager->getStore()->isCurrentlySecure() - ); - if (!$baseUrl) { - return; - } - - $uri = parse_url($baseUrl); - $requestUri = $request->getRequestUri() ? $request->getRequestUri() : '/'; - if (isset($uri['scheme']) && $uri['scheme'] != $request->getScheme() - || isset($uri['host']) && $uri['host'] != $request->getHttpHost() - || isset($uri['path']) && strpos($requestUri, $uri['path']) === false - ) { - $redirectUrl = $this->_url->getRedirectUrl( - $this->_url->getUrl(ltrim($request->getPathInfo(), '/'), array('_nosid' => true)) - ); - - $this->_app->getFrontController()->getResponse() - ->setRedirect($redirectUrl, $redirectCode) - ->sendResponse(); - exit; - } - } - - /** - * Check if requested path starts with one of the admin front names - * - * @param \Zend_Controller_Request_Http $request - * @return boolean - */ - protected function _isAdminFrontNameMatched($request) - { - $pathPrefix = $this->_extractPathPrefixFromUrl($request); - return $pathPrefix == $this->_backendData->getAreaFrontName(); - } - - /** - * Extract first path part from url (in most cases this is area code) - * - * @param \Zend_Controller_Request_Http $request - * @return string - */ - protected function _extractPathPrefixFromUrl($request) - { - $pathPrefix = ltrim($request->getPathInfo(), '/'); - $urlDelimiterPos = strpos($pathPrefix, '/'); - if ($urlDelimiterPos) { - $pathPrefix = substr($pathPrefix, 0, $urlDelimiterPos); - } - - return $pathPrefix; - } -} diff --git a/app/code/Magento/Core/Controller/Varien/Router/Base.php b/app/code/Magento/Core/Controller/Varien/Router/Base.php index 46bb1aad88fe4..711c65027c20b 100644 --- a/app/code/Magento/Core/Controller/Varien/Router/Base.php +++ b/app/code/Magento/Core/Controller/Varien/Router/Base.php @@ -26,7 +26,9 @@ namespace Magento\Core\Controller\Varien\Router; -class Base extends \Magento\Core\Controller\Varien\Router\AbstractRouter +use Magento\App\Router\AbstractRouter; + +class Base extends \Magento\App\Router\AbstractRouter { /** * @var array @@ -75,11 +77,6 @@ class Base extends \Magento\Core\Controller\Varien\Router\AbstractRouter */ protected $_app; - /** - * @var \Magento\Core\Model\Config\Scope - */ - protected $_configScope; - /** * @var \Magento\Core\Model\Route\Config */ @@ -122,39 +119,37 @@ class Base extends \Magento\Core\Controller\Varien\Router\AbstractRouter protected $_storeManager; /** - * @var \Magento\Core\Model\App\State + * @var \Magento\App\State */ protected $_appState; /** - * @param \Magento\Core\Controller\Varien\Action\Factory $controllerFactory + * @param \Magento\App\ActionFactory $controllerFactory * @param \Magento\Filesystem $filesystem * @param \Magento\Core\Model\App $app - * @param \Magento\Core\Model\Config\Scope $configScope * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\Route\Config $routeConfig * @param \Magento\Core\Model\Url\SecurityInfoInterface $urlSecurityInfo * @param \Magento\Core\Model\Config $config * @param \Magento\Core\Model\Url $url * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\State $appState * @param string $areaCode * @param string $baseController * @param string $routerId * @throws \InvalidArgumentException */ public function __construct( - \Magento\Core\Controller\Varien\Action\Factory $controllerFactory, + \Magento\App\ActionFactory $controllerFactory, \Magento\Filesystem $filesystem, \Magento\Core\Model\App $app, - \Magento\Core\Model\Config\Scope $configScope, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\Route\Config $routeConfig, \Magento\Core\Model\Url\SecurityInfoInterface $urlSecurityInfo, \Magento\Core\Model\Config $config, \Magento\Core\Model\Url $url, \Magento\Core\Model\StoreManager $storeManager, - \Magento\Core\Model\App\State $appState, + \Magento\App\State $appState, $areaCode, $baseController, $routerId @@ -165,11 +160,9 @@ public function __construct( $this->_filesystem = $filesystem; $this->_areaCode = $areaCode; $this->_baseController = $baseController; - $this->_configScope = $configScope; $this->_routeConfig = $routeConfig; $this->_routerId = $routerId; $this->_urlSecurityInfo = $urlSecurityInfo; - $this->_configScope = $configScope; $this->_coreStoreConfig = $coreStoreConfig; $this->_config = $config; $this->_url = $url; @@ -233,10 +226,10 @@ protected function _afterModuleMatch() /** * Match provided request and if matched - return corresponding controller * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @return \Magento\Core\Controller\Front\Action|null */ - public function match(\Magento\Core\Controller\Request\Http $request) + public function match(\Magento\App\RequestInterface $request) { //checking before even try to find out that current module //should use this router @@ -250,8 +243,6 @@ public function match(\Magento\Core\Controller\Request\Http $request) return null; } - $this->_app->loadAreaPart($this->_areaCode, \Magento\Core\Model\App\Area::PART_CONFIG); - return $this->_matchController($request, $params); } @@ -269,10 +260,10 @@ protected function _canProcess(array $params) /** * Parse request URL params * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @return array */ - protected function _parseRequest(\Magento\Core\Controller\Request\Http $request) + protected function _parseRequest(\Magento\App\RequestInterface $request) { $output = array(); @@ -292,11 +283,11 @@ protected function _parseRequest(\Magento\Core\Controller\Request\Http $request) /** * Match module front name * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @param string $param * @return string|null */ - protected function _matchModuleFrontName(\Magento\Core\Controller\Request\Http $request, $param) + protected function _matchModuleFrontName(\Magento\App\RequestInterface $request, $param) { // get module name if ($request->getModuleName()) { @@ -318,11 +309,11 @@ protected function _matchModuleFrontName(\Magento\Core\Controller\Request\Http $ /** * Match controller name * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @param string $param * @return string */ - protected function _matchControllerName(\Magento\Core\Controller\Request\Http $request, $param) + protected function _matchControllerName(\Magento\App\RequestInterface $request, $param) { if ($request->getControllerName()) { $controller = $request->getControllerName(); @@ -343,11 +334,11 @@ protected function _matchControllerName(\Magento\Core\Controller\Request\Http $r /** * Match controller name * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @param string $param * @return string */ - protected function _matchActionName(\Magento\Core\Controller\Request\Http $request, $param) + protected function _matchActionName(\Magento\App\RequestInterface $request, $param) { if (empty($action)) { if ($request->getActionName()) { @@ -366,10 +357,10 @@ protected function _matchActionName(\Magento\Core\Controller\Request\Http $reque * Get not found controller instance * * @param $currentModuleName - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @return \Magento\Core\Controller\Varien\Action|null */ - protected function _getNotFoundControllerInstance($currentModuleName, \Magento\Core\Controller\Request\Http $request) + protected function _getNotFoundControllerInstance($currentModuleName, \Magento\App\RequestInterface $request) { $controllerInstance = null; @@ -412,11 +403,11 @@ protected function _validateControllerAction($controllerClassName, $action) /** * Create matched controller instance * - * @param \Magento\Core\Controller\Request\Http $request + * @param \Magento\App\RequestInterface $request * @param array $params * @return \Magento\Core\Controller\Front\Action|null */ - protected function _matchController(\Magento\Core\Controller\Request\Http $request, array $params) + protected function _matchController(\Magento\App\RequestInterface $request, array $params) { $this->fetchDefault(); @@ -469,7 +460,6 @@ protected function _matchController(\Magento\Core\Controller\Request\Http $reque continue; } - $this->_configScope->setCurrentScope($this->_areaCode); // instantiate controller class $controllerInstance = $this->_controllerFactory->createController($controllerClassName, array('request' => $request) @@ -648,11 +638,11 @@ public function rewrite(array $p) * Check that request uses https protocol if it should. * Function redirects user to correct URL if needed. * - * @param \Zend_Controller_Request_Http $request + * @param \Magento\App\RequestInterface $request * @param string $path * @return void */ - protected function _checkShouldBeSecure(\Zend_Controller_Request_Http $request, $path = '') + protected function _checkShouldBeSecure(\Magento\App\RequestInterface $request, $path = '') { if (!$this->_appState->isInstalled() || $request->getPost()) { return; diff --git a/app/code/Magento/Core/Helper/AbstractHelper.php b/app/code/Magento/Core/Helper/AbstractHelper.php index cb78152194b7c..653106641536f 100644 --- a/app/code/Magento/Core/Helper/AbstractHelper.php +++ b/app/code/Magento/Core/Helper/AbstractHelper.php @@ -43,7 +43,7 @@ abstract class AbstractHelper /** * Request object * - * @var \Zend_Controller_Request_Http + * @var \Magento\App\RequestInterface */ protected $_request; @@ -70,7 +70,7 @@ abstract class AbstractHelper protected $_app; /** - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_urlBuilder; @@ -90,7 +90,7 @@ public function __construct(\Magento\Core\Helper\Context $context) /** * Retrieve request object * - * @return \Zend_Controller_Request_Http + * @return \Magento\App\RequestInterface */ protected function _getRequest() { diff --git a/app/code/Magento/Core/Helper/Context.php b/app/code/Magento/Core/Helper/Context.php index 3a51c31ce39c8..690b01f85e5da 100644 --- a/app/code/Magento/Core/Helper/Context.php +++ b/app/code/Magento/Core/Helper/Context.php @@ -38,7 +38,7 @@ class Context implements \Magento\ObjectManager\ContextInterface protected $_moduleManager; /** - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -48,7 +48,7 @@ class Context implements \Magento\ObjectManager\ContextInterface protected $_logger; /** - * @var \Magento\Core\Controller\Request\HttpProxy + * @var \Magento\App\RequestInterface */ protected $_httpRequest; @@ -73,7 +73,7 @@ class Context implements \Magento\ObjectManager\ContextInterface protected $_app; /** - * @var \Magento\Core\Model\UrlInterface + * @var \Magento\UrlInterface */ protected $_urlBuilder; @@ -81,25 +81,25 @@ class Context implements \Magento\ObjectManager\ContextInterface * @param \Magento\Core\Model\Logger $logger * @param \Magento\Core\Model\Translate $translator * @param \Magento\Core\Model\ModuleManager $moduleManager - * @param \Magento\Core\Controller\Request\HttpProxy $httpRequest + * @param \Magento\App\RequestInterface $httpRequest * @param \Magento\Core\Model\Cache\Config $cacheConfig * @param \Magento\Core\Model\EncryptionFactory $encryptorFactory * @param \Magento\Core\Model\Fieldset\Config $fieldsetConfig - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\App $app - * @param \Magento\Core\Model\UrlInterface $urlBuilder + * @param \Magento\UrlInterface $urlBuilder */ public function __construct( \Magento\Core\Model\Logger $logger, \Magento\Core\Model\Translate $translator, \Magento\Core\Model\ModuleManager $moduleManager, - \Magento\Core\Controller\Request\HttpProxy $httpRequest, + \Magento\App\RequestInterface $httpRequest, \Magento\Core\Model\Cache\Config $cacheConfig, \Magento\Core\Model\EncryptionFactory $encryptorFactory, \Magento\Core\Model\Fieldset\Config $fieldsetConfig, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\App $app, - \Magento\Core\Model\UrlInterface $urlBuilder + \Magento\UrlInterface $urlBuilder ) { $this->_translator = $translator; $this->_moduleManager = $moduleManager; @@ -138,7 +138,7 @@ public function getApp() } /** - * @return \Magento\Core\Model\UrlInterface + * @return \Magento\UrlInterface */ public function getUrlBuilder() { @@ -146,7 +146,7 @@ public function getUrlBuilder() } /** - * @return \Magento\Core\Controller\Request\HttpProxy + * @return \Magento\App\RequestInterface */ public function getRequest() { @@ -170,7 +170,7 @@ public function getEncryptorFactory() } /** - * @return \Magento\Core\Model\Event\Manager + * @return \Magento\Event\ManagerInterface */ public function getEventManager() { diff --git a/app/code/Magento/Core/Helper/Css.php b/app/code/Magento/Core/Helper/Css.php index a35fd1c50b7fe..a5e2dc2bd3475 100644 --- a/app/code/Magento/Core/Helper/Css.php +++ b/app/code/Magento/Core/Helper/Css.php @@ -40,17 +40,17 @@ class Css protected $_filesystem; /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dirs; /** * @param \Magento\Filesystem $filesystem - * @param \Magento\Core\Model\Dir $dirs + * @param \Magento\App\Dir $dirs */ public function __construct( \Magento\Filesystem $filesystem, - \Magento\Core\Model\Dir $dirs + \Magento\App\Dir $dirs ) { $this->_filesystem = $filesystem; $this->_dirs = $dirs; @@ -118,7 +118,7 @@ protected function _getFileRelativePath($file, $referencedFile) * Thus, calculating relative path is not possible in general case. So we just assume, * that urls follow the structure of directory paths. */ - $topDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::ROOT); + $topDir = $this->_dirs->getDir(\Magento\App\Dir::ROOT); $topDir = $this->_filesystem->normalizePath($topDir); if (strpos($file, $topDir) !== 0 || strpos($referencedFile, $topDir) !== 0) { throw new \Magento\Core\Exception('Offset can be calculated for internal resources only.'); diff --git a/app/code/Magento/Core/Helper/Data.php b/app/code/Magento/Core/Helper/Data.php index 2a2a7d53db3b3..1f1a6591cdab3 100644 --- a/app/code/Magento/Core/Helper/Data.php +++ b/app/code/Magento/Core/Helper/Data.php @@ -94,7 +94,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager = null; @@ -136,7 +136,7 @@ class Data extends \Magento\Core\Helper\AbstractHelper protected $_dateModel; /** - * @var \Magento\Core\Model\App\State + * @var \Magento\App\State */ protected $_appState; @@ -147,27 +147,27 @@ class Data extends \Magento\Core\Helper\AbstractHelper /** * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Http $coreHttp * @param \Magento\Core\Model\Config $config * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Locale $locale * @param \Magento\Core\Model\Date $dateModel - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\State $appState * @param \Magento\Core\Model\Encryption $encryptor * @param bool $dbCompatibleMode */ public function __construct( \Magento\Core\Helper\Context $context, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Http $coreHttp, \Magento\Core\Model\Config $config, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Locale $locale, \Magento\Core\Model\Date $dateModel, - \Magento\Core\Model\App\State $appState, + \Magento\App\State $appState, \Magento\Core\Model\Encryption $encryptor, $dbCompatibleMode = true ) { diff --git a/app/code/Magento/Core/Helper/File/Storage/Database.php b/app/code/Magento/Core/Helper/File/Storage/Database.php index 7029067785df1..3706dfb1a609c 100644 --- a/app/code/Magento/Core/Helper/File/Storage/Database.php +++ b/app/code/Magento/Core/Helper/File/Storage/Database.php @@ -77,7 +77,7 @@ class Database extends \Magento\Core\Helper\AbstractHelper protected $_fileStorage; /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -85,14 +85,14 @@ class Database extends \Magento\Core\Helper\AbstractHelper * @param \Magento\Core\Helper\Context $context * @param \Magento\Core\Model\File\Storage\DatabaseFactory $dbStorageFactory * @param \Magento\Core\Model\File\Storage\File $fileStorage - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Filesystem $filesystem */ public function __construct( \Magento\Core\Helper\Context $context, \Magento\Core\Model\File\Storage\DatabaseFactory $dbStorageFactory, \Magento\Core\Model\File\Storage\File $fileStorage, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Filesystem $filesystem ) { parent::__construct($context); diff --git a/app/code/Magento/Core/Helper/Http.php b/app/code/Magento/Core/Helper/Http.php index 846c9a0d63ef8..9171a4c98c15f 100644 --- a/app/code/Magento/Core/Helper/Http.php +++ b/app/code/Magento/Core/Helper/Http.php @@ -76,10 +76,10 @@ public function __construct( * * Returns plain array with 2 items: login and password respectively * - * @param \Zend_Controller_Request_Http $request + * @param \Magento\App\RequestInterface $request * @return array */ - public function getHttpAuthCredentials(\Zend_Controller_Request_Http $request) + public function getHttpAuthCredentials(\Magento\App\RequestInterface $request) { $server = $request->getServer(); $user = ''; @@ -117,10 +117,10 @@ public function getHttpAuthCredentials(\Zend_Controller_Request_Http $request) /** * Set "auth failed" headers to the specified response object * - * @param \Zend_Controller_Response_Http $response + * @param \Magento\App\ResponseInterface $response * @param string $realm */ - public function failHttpAuthentication(\Zend_Controller_Response_Http $response, $realm) + public function failHttpAuthentication(\Magento\App\ResponseInterface $response, $realm) { $response->setHeader('HTTP/1.1', '401 Unauthorized') ->setHeader('WWW-Authenticate', 'Basic realm="' . $realm . '"') diff --git a/app/code/Magento/Core/Helper/Theme.php b/app/code/Magento/Core/Helper/Theme.php index ad37f8cf22971..8f21ca882daca 100644 --- a/app/code/Magento/Core/Helper/Theme.php +++ b/app/code/Magento/Core/Helper/Theme.php @@ -34,16 +34,16 @@ class Theme extends \Magento\Core\Helper\AbstractHelper /** * Directories * - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dirs; /** * Layout merge factory * - * @var \Magento\Core\Model\Layout\MergeFactory + * @var \Magento\View\Layout\ProcessorFactory */ - protected $_layoutMergeFactory; + protected $_layoutProcessorFactory; /** * Theme collection model @@ -58,21 +58,21 @@ class Theme extends \Magento\Core\Helper\AbstractHelper protected $_viewFileSystem; /** - * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\Dir $dirs - * @param \Magento\Core\Model\Layout\MergeFactory $layoutMergeFactory + * @param Context $context + * @param \Magento\App\Dir $dirs + * @param \Magento\View\Layout\ProcessorFactory $layoutProcessorFactory * @param \Magento\Core\Model\Resource\Theme\Collection $themeCollection * @param \Magento\Core\Model\View\FileSystem $viewFileSystem */ public function __construct( \Magento\Core\Helper\Context $context, - \Magento\Core\Model\Dir $dirs, - \Magento\Core\Model\Layout\MergeFactory $layoutMergeFactory, + \Magento\App\Dir $dirs, + \Magento\View\Layout\ProcessorFactory $layoutProcessorFactory, \Magento\Core\Model\Resource\Theme\Collection $themeCollection, \Magento\Core\Model\View\FileSystem $viewFileSystem ) { $this->_dirs = $dirs; - $this->_layoutMergeFactory = $layoutMergeFactory; + $this->_layoutProcessorFactory = $layoutProcessorFactory; $this->_themeCollection = $themeCollection; $this->_viewFileSystem = $viewFileSystem; parent::__construct($context); @@ -86,14 +86,14 @@ public function __construct( * 'Magento_Catalog::widgets.css' => 'http://mage2.com/pub/static/frontend/_theme15/en_US/Magento_Cms/widgets.css' * ) * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return array */ public function getCssFiles($theme) { - /** @var $layoutMerge \Magento\Core\Model\Layout\Merge */ - $layoutMerge = $this->_layoutMergeFactory->create(array('theme' => $theme)); - $layoutElement = $layoutMerge->getFileLayoutUpdatesXml(); + /** @var $layoutProcessor \Magento\View\Layout\ProcessorInterface */ + $layoutProcessor = $this->_layoutProcessorFactory->create(array('theme' => $theme)); + $layoutElement = $layoutProcessor->getFileLayoutUpdatesXml(); /** * XPath selector to get CSS files from layout added for HEAD block directly @@ -118,7 +118,7 @@ public function getCssFiles($theme) 'skipProxy' => true ); - $basePath = $this->_dirs->getDir(\Magento\Core\Model\Dir::ROOT); + $basePath = $this->_dirs->getDir(\Magento\App\Dir::ROOT); $files = array(); foreach ($elements as $fileId) { $fileId = (string)$fileId; @@ -139,15 +139,15 @@ public function getCssFiles($theme) /** * Get CSS files by group * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return array * @throws \LogicException */ public function getGroupedCssFiles($theme) { - $jsDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\Core\Model\Dir::PUB_LIB)); - $codeDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\Core\Model\Dir::MODULES)); - $designDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\Core\Model\Dir::THEMES)); + $jsDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\App\Dir::PUB_LIB)); + $codeDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\App\Dir::MODULES)); + $designDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\App\Dir::THEMES)); $groups = array(); $themes = array(); @@ -177,7 +177,7 @@ public function getGroupedCssFiles($theme) } $order = array_merge(array($codeDir, $jsDir), array_map(function ($fileTheme) { - /** @var $fileTheme \Magento\Core\Model\Theme */ + /** @var $fileTheme \Magento\View\Design\ThemeInterface */ return $fileTheme->getThemeId(); }, $themes)); $groups = $this->_sortArrayByArray($groups, $order); @@ -319,7 +319,7 @@ protected function _getGroupLabels(array $themes, $jsDir, $codeDir) $codeDir => (string)__('Framework files') ); foreach ($themes as $theme) { - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ $labels[$theme->getThemeId()] = (string)__('"%1" Theme files', $theme->getThemeTitle()); } return $labels; @@ -356,8 +356,8 @@ protected function _sortGroupFilesCallback(array $firstFile, array $secondFile) /** * Sort themes by hierarchy callback * - * @param \Magento\Core\Model\Theme $firstTheme - * @param \Magento\Core\Model\Theme $secondTheme + * @param \Magento\View\Design\ThemeInterface $firstTheme + * @param \Magento\View\Design\ThemeInterface $secondTheme * @return int */ protected function _sortThemesByHierarchyCallback($firstTheme, $secondTheme) diff --git a/app/code/Magento/Core/Helper/Translate.php b/app/code/Magento/Core/Helper/Translate.php index 70251d92dce0b..1d92e73049327 100644 --- a/app/code/Magento/Core/Helper/Translate.php +++ b/app/code/Magento/Core/Helper/Translate.php @@ -34,24 +34,24 @@ class Translate extends \Magento\Core\Helper\AbstractHelper /** * Design package instance * - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_design; /** - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; /** - * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\View\DesignInterface $design - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param Context $context + * @param \Magento\View\DesignInterface $design + * @param \Magento\Event\ManagerInterface $eventManager */ public function __construct( \Magento\Core\Helper\Context $context, - \Magento\Core\Model\View\DesignInterface $design, - \Magento\Core\Model\Event\Manager $eventManager + \Magento\View\DesignInterface $design, + \Magento\Event\ManagerInterface $eventManager ) { $this->_eventManager = $eventManager; parent::__construct($context); diff --git a/app/code/Magento/Core/Helper/Url.php b/app/code/Magento/Core/Helper/Url.php index e76b2b0875b3d..3e69656fcec6a 100644 --- a/app/code/Magento/Core/Helper/Url.php +++ b/app/code/Magento/Core/Helper/Url.php @@ -64,8 +64,8 @@ public function getCurrentUrl() $port = $this->_getRequest()->getServer('SERVER_PORT'); if ($port) { $defaultPorts = array( - \Magento\Core\Controller\Request\Http::DEFAULT_HTTP_PORT, - \Magento\Core\Controller\Request\Http::DEFAULT_HTTPS_PORT + \Magento\App\Request\Http::DEFAULT_HTTP_PORT, + \Magento\App\Request\Http::DEFAULT_HTTPS_PORT ); $port = (in_array($port, $defaultPorts)) ? '' : ':' . $port; } diff --git a/app/code/Magento/Core/Model/AbstractEntryPoint.php b/app/code/Magento/Core/Model/AbstractEntryPoint.php index c62144ccf5b02..f2579ef46db9f 100644 --- a/app/code/Magento/Core/Model/AbstractEntryPoint.php +++ b/app/code/Magento/Core/Model/AbstractEntryPoint.php @@ -70,8 +70,8 @@ public function processRequest() public function processException(\Exception $exception) { $this->_init(); - $appMode = $this->_objectManager->get('Magento\Core\Model\App\State')->getMode(); - if ($appMode == \Magento\Core\Model\App\State::MODE_DEVELOPER) { + $appMode = $this->_objectManager->get('Magento\App\State')->getMode(); + if ($appMode == \Magento\App\State::MODE_DEVELOPER) { print '
';
             print $exception->getMessage() . "\n\n";
             print $exception->getTraceAsString();
@@ -92,12 +92,12 @@ public function processException(\Exception $exception)
             // attempt to specify store as a skin
             try {
                 $storeManager = $this->_objectManager->get('Magento\Core\Model\StoreManager');
-                $reportData['skin'] = $storeManager->getStore()->getCode;
+                $reportData['skin'] = $storeManager->getStore()->getCode();
             } catch (\Exception $exception) {
             }
 
-            $modelDir = $this->_objectManager->get('Magento\Core\Model\Dir');
-            require_once($modelDir->getDir(\Magento\Core\Model\Dir::PUB) . DS . 'errors' . DS . 'report.php');
+            $modelDir = $this->_objectManager->get('Magento\App\Dir');
+            require_once($modelDir->getDir(\Magento\App\Dir::PUB) . DS . 'errors' . DS . 'report.php');
         }
     }
 
diff --git a/app/code/Magento/Core/Model/AbstractModel.php b/app/code/Magento/Core/Model/AbstractModel.php
index 6674a3be097d4..b43e28bbb442f 100644
--- a/app/code/Magento/Core/Model/AbstractModel.php
+++ b/app/code/Magento/Core/Model/AbstractModel.php
@@ -112,7 +112,7 @@ abstract class AbstractModel extends \Magento\Object
     /**
      * Application Event Dispatcher
      *
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventDispatcher;
 
@@ -197,7 +197,7 @@ public function __sleep()
     public function __wakeup()
     {
         $objectManager = \Magento\Core\Model\ObjectManager::getInstance();
-        $this->_eventDispatcher = $objectManager->get('Magento\Core\Model\Event\Manager');
+        $this->_eventDispatcher = $objectManager->get('Magento\Event\ManagerInterface');
         $this->_cacheManager = $objectManager->get('Magento\Core\Model\CacheInterface');
         $this->_coreRegistry = $objectManager->get('Magento\Core\Model\Registry');
     }
diff --git a/app/code/Magento/Core/Model/AbstractShell.php b/app/code/Magento/Core/Model/AbstractShell.php
index 6c54eedd8e98c..85e60e2b30cc3 100644
--- a/app/code/Magento/Core/Model/AbstractShell.php
+++ b/app/code/Magento/Core/Model/AbstractShell.php
@@ -62,7 +62,7 @@ abstract class AbstractShell
     protected $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dir;
 
@@ -71,10 +71,10 @@ abstract class AbstractShell
      *
      * @param \Magento\Filesystem $filesystem
      * @param string $entryPoint
-     * @param \Magento\Core\Model\Dir $dir
+     * @param \Magento\App\Dir $dir
      * @throws \Exception
      */
-    public function __construct(\Magento\Filesystem $filesystem, $entryPoint, \Magento\Core\Model\Dir $dir)
+    public function __construct(\Magento\Filesystem $filesystem, $entryPoint, \Magento\App\Dir $dir)
     {
         if (isset($_SERVER['REQUEST_METHOD'])) {
             throw new \Exception('This script cannot be run from Browser. This is the shell script.');
@@ -109,7 +109,7 @@ public function setRawArgs($args)
      */
     protected function _getRootPath()
     {
-        return $this->_dir->getDir(\Magento\Core\Model\Dir::ROOT);
+        return $this->_dir->getDir(\Magento\App\Dir::ROOT);
     }
 
     /**
diff --git a/app/code/Magento/Core/Model/App.php b/app/code/Magento/Core/Model/App.php
index cab518ce5c3cb..5ae9baef6c9f7 100644
--- a/app/code/Magento/Core/Model/App.php
+++ b/app/code/Magento/Core/Model/App.php
@@ -51,7 +51,7 @@ class App implements \Magento\Core\Model\AppInterface
     /**
      * Magento version
      */
-    const VERSION = '2.0.0.0-dev48';
+    const VERSION = '2.0.0.0-dev49';
 
     /**
      * Custom application dirs
@@ -127,7 +127,7 @@ class App implements \Magento\Core\Model\AppInterface
     /**
      * Application front controller
      *
-     * @var \Magento\Core\Controller\FrontInterface
+     * @var \Magento\App\FrontControllerInterface
      */
     protected $_frontController;
 
@@ -148,14 +148,14 @@ class App implements \Magento\Core\Model\AppInterface
     /**
      * Request object
      *
-     * @var \Zend_Controller_Request_Http
+     * @var \Magento\App\RequestInterface
      */
     protected $_request;
 
     /**
      * Response object
      *
-     * @var \Zend_Controller_Response_Http
+     * @var \Magento\App\ResponseInterface
      */
     protected $_response;
 
@@ -184,7 +184,7 @@ class App implements \Magento\Core\Model\AppInterface
     /**
      * Data base updater object
      *
-     * @var \Magento\Core\Model\Db\UpdaterInterface
+     * @var \Magento\App\UpdaterInterface
      */
     protected $_dbUpdater;
 
@@ -196,72 +196,48 @@ class App implements \Magento\Core\Model\AppInterface
     protected $_storeManager;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
     /**
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager;
 
     /**
-     * @var \Magento\Core\Model\Config\Scope
+     * @var \Magento\Config\Scope
      */
     protected $_configScope;
 
     /**
-     * @param \Magento\Core\Model\Config $config
-     * @param \Magento\Core\Model\CacheInterface $cache
+     * @param Config $config
+     * @param CacheInterface $cache
      * @param \Magento\ObjectManager $objectManager
-     * @param \Magento\Core\Model\Db\UpdaterInterface $dbUpdater
-     * @param \Magento\Core\Model\StoreManagerInterface $storeManager
-     * @param \Magento\Core\Model\Event\Manager $eventManager
-     * @param \Magento\Core\Model\App\State $appState
-     * @param \Magento\Core\Model\Config\Scope $configScope
+     * @param StoreManagerInterface $storeManager
+     * @param \Magento\Event\ManagerInterface $eventManager
+     * @param \Magento\App\State $appState
+     * @param \Magento\Config\Scope $configScope
+     * @param \Magento\App\FrontControllerInterface $frontController
      */
     public function __construct(
         \Magento\Core\Model\Config $config,
         \Magento\Core\Model\CacheInterface $cache,
         \Magento\ObjectManager $objectManager,
-        \Magento\Core\Model\Db\UpdaterInterface $dbUpdater,
         \Magento\Core\Model\StoreManagerInterface $storeManager,
-        \Magento\Core\Model\Event\Manager $eventManager,
-        \Magento\Core\Model\App\State $appState,
-        \Magento\Core\Model\Config\Scope $configScope
+        \Magento\Event\ManagerInterface $eventManager,
+        \Magento\App\State $appState,
+        \Magento\Config\Scope $configScope,
+        \Magento\App\FrontControllerInterface $frontController
     ) {
         $this->_config = $config;
         $this->_cache = $cache;
         $this->_objectManager = $objectManager;
         $this->_storeManager = $storeManager;
-        $this->_dbUpdater = $dbUpdater;
         $this->_appState = $appState;
         $this->_eventManager = $eventManager;
         $this->_configScope = $configScope;
-    }
-
-    /**
-     * Run application. Run process responsible for request processing and sending response.
-     *
-     * @return \Magento\Core\Model\App
-     */
-    public function run()
-    {
-        \Magento\Profiler::start('init');
-
-        if ($this->_appState->isInstalled() && !$this->_cache->load('data_upgrade')) {
-            $this->_dbUpdater->updateScheme();
-            $this->_dbUpdater->updateData();
-            $this->_cache->save(1, 'data_upgrade');
-        }
-        $this->_initRequest();
-
-        $controllerFront = $this->getFrontController();
-        \Magento\Profiler::stop('init');
-
-        $controllerFront->dispatch();
-
-        return $this;
+        $this->_frontController = $frontController;
     }
 
     /**
@@ -276,17 +252,6 @@ public function requireInstalledInstance()
         }
     }
 
-    /**
-     * Init request object
-     *
-     * @return \Magento\Core\Model\App
-     */
-    protected function _initRequest()
-    {
-        $this->getRequest()->setPathInfo();
-        return $this;
-    }
-
     /**
      * Retrieve cookie object
      *
@@ -297,52 +262,6 @@ public function getCookie()
         return $this->_objectManager->get('Magento\Core\Model\Cookie');
     }
 
-    /**
-     * Initialize application front controller
-     *
-     * @return \Magento\Core\Model\App
-     */
-    protected function _initFrontController()
-    {
-        $this->_frontController = $this->_getFrontControllerByCurrentArea();
-        return $this;
-    }
-
-    /**
-     * Instantiate proper front controller instance depending on current area
-     *
-     * @return \Magento\Core\Controller\FrontInterface
-     */
-    protected function _getFrontControllerByCurrentArea()
-    {
-        /**
-         * TODO: Temporary implementation for API. Must be reconsidered during implementation
-         * TODO: of ability to set different front controllers in different area.
-         * TODO: See also related changes in \Magento\Core\Model\Config.
-         */
-        // TODO: Assure that everything work fine work in areas without routers (e.g. URL generation)
-        /** Default front controller class */
-        $frontControllerClass = 'Magento\Core\Controller\Varien\Front';
-        $pathParts = explode('/', trim($this->getRequest()->getPathInfo(), '/'));
-        if ($pathParts) {
-            /** If area front name is used it is expected to be set on the first place in path info */
-            $frontName = reset($pathParts);
-            foreach ($this->getConfig()->getAreas() as $areaCode => $areaInfo) {
-                if (isset($areaInfo['front_controller'])
-                    && isset($areaInfo['frontName']) && ($frontName == $areaInfo['frontName'])
-                ) {
-                    $this->_configScope->setCurrentScope($areaCode);
-                    $frontControllerClass = $areaInfo['front_controller'];
-                    /** Remove area from path info */
-                    array_shift($pathParts);
-                    $this->getRequest()->setPathInfo('/' . implode('/', $pathParts));
-                    break;
-                }
-            }
-        }
-        return $this->_objectManager->get($frontControllerClass);
-    }
-
     /**
      * Re-declare custom error handler
      *
@@ -424,11 +343,11 @@ public function getLocale()
     /**
      * Retrieve layout object
      *
-     * @return \Magento\Core\Model\Layout
+     * @return \Magento\View\LayoutInterface
      */
     public function getLayout()
     {
-        return $this->_objectManager->get('Magento\Core\Model\Layout');
+        return $this->_objectManager->get('Magento\View\LayoutInterface');
     }
 
     /**
@@ -454,14 +373,10 @@ public function getConfig()
     /**
      * Retrieve front controller object
      *
-     * @return \Magento\Core\Controller\Varien\Front
+     * @return \Magento\App\FrontController
      */
     public function getFrontController()
     {
-        if (!$this->_isFrontControllerInitialized) {
-            $this->_initFrontController();
-            $this->_isFrontControllerInitialized = true;
-        }
         return $this->_frontController;
     }
 
@@ -553,12 +468,12 @@ public function cleanAllSessions()
     /**
      * Retrieve request object
      *
-     * @return \Magento\Core\Controller\Request\Http
+     * @return \Magento\App\RequestInterface
      */
     public function getRequest()
     {
         if (!$this->_request) {
-            $this->_request = $this->_objectManager->get('Magento\Core\Controller\Request\Http');
+            $this->_request = $this->_objectManager->get('Magento\App\RequestInterface');
         }
         return $this->_request;
     }
@@ -566,10 +481,10 @@ public function getRequest()
     /**
      * Request setter
      *
-     * @param \Magento\Core\Controller\Request\Http $request
+     * @param \Magento\App\RequestInterface $request
      * @return \Magento\Core\Model\App
      */
-    public function setRequest(\Magento\Core\Controller\Request\Http $request)
+    public function setRequest(\Magento\App\RequestInterface $request)
     {
         $this->_request = $request;
         return $this;
@@ -578,12 +493,12 @@ public function setRequest(\Magento\Core\Controller\Request\Http $request)
     /**
      * Retrieve response object
      *
-     * @return \Zend_Controller_Response_Http
+     * @return \Magento\App\ResponseInterface
      */
     public function getResponse()
     {
         if (!$this->_response) {
-            $this->_response = $this->_objectManager->get('Magento\Core\Controller\Response\Http');
+            $this->_response = $this->_objectManager->get('Magento\App\ResponseInterface');
             $this->_response->setHeader('Content-Type', 'text/html; charset=UTF-8');
         }
         return $this->_response;
@@ -592,10 +507,10 @@ public function getResponse()
     /**
      * Response setter
      *
-     * @param \Magento\Core\Controller\Response\Http $response
+     * @param \Magento\App\ResponseInterface $response
      * @return \Magento\Core\Model\App
      */
-    public function setResponse(\Magento\Core\Controller\Response\Http $response)
+    public function setResponse(\Magento\App\ResponseInterface $response)
     {
         $this->_response = $response;
         return $this;
@@ -652,7 +567,7 @@ public function getUseSessionInUrl()
      */
     public function isDeveloperMode()
     {
-        return $this->_appState->getMode() == \Magento\Core\Model\App\State::MODE_DEVELOPER;
+        return $this->_appState->getMode() == \Magento\App\State::MODE_DEVELOPER;
     }
 
     /**
@@ -921,7 +836,7 @@ public function getVersionInfo()
             'revision'  => '0',
             'patch'     => '0',
             'stability' => 'dev',
-            'number'    => '48',
+            'number'    => '49',
         );
     }
 }
diff --git a/app/code/Magento/Core/Model/App/Area.php b/app/code/Magento/Core/Model/App/Area.php
index a54f9d8460382..b22a806dbdd17 100644
--- a/app/code/Magento/Core/Model/App/Area.php
+++ b/app/code/Magento/Core/Model/App/Area.php
@@ -64,7 +64,7 @@ class Area
     /**
      * Event Manager
      *
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager;
 
@@ -121,7 +121,7 @@ class Area
 
     /**
      * @param \Magento\Core\Model\Logger $logger
-     * @param \Magento\Core\Model\Event\Manager $eventManager
+     * @param \Magento\Event\ManagerInterface $eventManager
      * @param \Magento\Core\Model\Translate $translator
      * @param \Magento\Core\Model\Config $config
      * @param \Magento\Core\Model\ObjectManager $objectManager
@@ -133,7 +133,7 @@ class Area
      */
     public function __construct(
         \Magento\Core\Model\Logger $logger,
-        \Magento\Core\Model\Event\Manager $eventManager,
+        \Magento\Event\ManagerInterface $eventManager,
         \Magento\Core\Model\Translate $translator,
         \Magento\Core\Model\Config $config,
         \Magento\Core\Model\ObjectManager $objectManager,
@@ -176,7 +176,7 @@ public function load($part=null)
     /**
      * Detect and apply design for the area
      *
-     * @param \Zend_Controller_Request_Http $request
+     * @param \Magento\App\RequestInterface $request
      */
     public function detectDesign($request = null)
     {
@@ -193,7 +193,7 @@ public function detectDesign($request = null)
     /**
      * Analyze user-agent information to override custom design settings
      *
-     * @param \Zend_Controller_Request_Http $request
+     * @param \Magento\App\RequestInterface $request
      * @return bool
      */
     protected function _applyUserAgentDesignException($request)
@@ -221,11 +221,11 @@ protected function _applyUserAgentDesignException($request)
     }
 
     /**
-     * @return \Magento\Core\Model\View\DesignInterface
+     * @return \Magento\View\DesignInterface
      */
     protected function _getDesign()
     {
-        return $this->_objectManager->get('Magento\Core\Model\View\DesignInterface');
+        return $this->_objectManager->get('Magento\View\DesignInterface');
     }
 
     /**
@@ -276,7 +276,7 @@ protected function _initTranslate()
             'inline_type' => null,
             'params' => array('area' => $this->_code)
         ));
-        $eventManager = $this->_objectManager->get('Magento\Core\Model\Event\Manager');
+        $eventManager = $this->_objectManager->get('Magento\Event\ManagerInterface');
         $eventManager->dispatch('translate_initialization_before', array(
             'translate_object' => $this->_translator,
             'result' => $dispatchResult
diff --git a/app/code/Magento/Core/Model/App/Emulation.php b/app/code/Magento/Core/Model/App/Emulation.php
index e43e82d5958d2..bb586f4c813cf 100644
--- a/app/code/Magento/Core/Model/App/Emulation.php
+++ b/app/code/Magento/Core/Model/App/Emulation.php
@@ -75,7 +75,7 @@ class Emulation extends \Magento\Object
     /**
      * @param \Magento\Core\Model\App $app
      * @param \Magento\Core\Model\StoreManager $storeManager
-     * @param \Magento\Core\Model\View\DesignInterface $viewDesign
+     * @param \Magento\View\DesignInterface $viewDesign
      * @param \Magento\Core\Model\Design $design
      * @param \Magento\Core\Model\Translate $translate
      * @param \Magento\Core\Helper\Translate $helperTranslate
@@ -86,7 +86,7 @@ class Emulation extends \Magento\Object
     public function __construct(
         \Magento\Core\Model\App $app,
         \Magento\Core\Model\StoreManager $storeManager,
-        \Magento\Core\Model\View\DesignInterface $viewDesign,
+        \Magento\View\DesignInterface $viewDesign,
         \Magento\Core\Model\Design $design,
         \Magento\Core\Model\Translate $translate,
         \Magento\Core\Helper\Translate $helperTranslate,
diff --git a/app/code/Magento/Core/Model/App/Proxy.php b/app/code/Magento/Core/Model/App/Proxy.php
deleted file mode 100644
index 8cfef3e1d1862..0000000000000
--- a/app/code/Magento/Core/Model/App/Proxy.php
+++ /dev/null
@@ -1,561 +0,0 @@
-_objectManager = $objectManager;
-    }
-
-    /**
-     * Get application model
-     *
-     * @return \Magento\Core\Model\App
-     */
-    protected function _getApp()
-    {
-        if (null === $this->_app) {
-            $this->_app = $this->_objectManager->get('Magento\Core\Model\App');
-        }
-
-        return $this->_app;
-    }
-
-    /**
-     * Run application. Run process responsible for request processing and sending response.
-     *
-     * @return \Magento\Core\Model\AppInterface
-     */
-    public function run()
-    {
-        return $this->_getApp()->run();
-    }
-
-    /**
-     * Throw an exception, if the application has not been installed yet
-     *
-     * @throws \Magento\Exception
-     */
-    public function requireInstalledInstance()
-    {
-        $this->_getApp()->requireInstalledInstance();
-    }
-
-    /**
-     * Retrieve cookie object
-     *
-     * @return \Magento\Core\Model\Cookie
-     */
-    public function getCookie()
-    {
-        return $this->_getApp()->getCookie();
-    }
-
-    /**
-     * Reinitialize stores
-     *
-     * @return void
-     */
-    public function reinitStores()
-    {
-        $this->_getApp()->reinitStores();
-    }
-
-    /**
-     * Check if system is run in the single store mode
-     *
-     * @return bool
-     */
-    public function isSingleStoreMode()
-    {
-        return $this->_getApp()->isSingleStoreMode();
-    }
-
-    /**
-     * Check if store has only one store view
-     *
-     * @return bool
-     */
-    public function hasSingleStore()
-    {
-        return $this->_getApp()->hasSingleStore();
-    }
-
-    /**
-     * Set current default store
-     *
-     * @param string $store
-     */
-    public function setCurrentStore($store)
-    {
-        $this->_getApp()->setCurrentStore($store);
-    }
-
-    /**
-     * Get current store code
-     *
-     * @return string
-     */
-    public function getCurrentStore()
-    {
-        return $this->_getApp()->getCurrentStore();
-    }
-
-    /**
-     * Re-declare custom error handler
-     *
-     * @param   string $handler
-     * @return  \Magento\Core\Model\AppInterface
-     */
-    public function setErrorHandler($handler)
-    {
-        return $this->_getApp()->setErrorHandler($handler);
-    }
-
-    /**
-     * Loading application area
-     *
-     * @param   string $code
-     * @return  \Magento\Core\Model\AppInterface
-     */
-    public function loadArea($code)
-    {
-        return $this->_getApp()->loadArea($code);
-    }
-
-    /**
-     * Loading part of area data
-     *
-     * @param   string $area
-     * @param   string $part
-     * @return  \Magento\Core\Model\AppInterface
-     */
-    public function loadAreaPart($area, $part)
-    {
-        return $this->_getApp()->loadAreaPart($area, $part);
-    }
-
-    /**
-     * Retrieve application area
-     *
-     * @param   string $code
-     * @return  \Magento\Core\Model\App\Area
-     */
-    public function getArea($code)
-    {
-        return $this->_getApp()->getArea($code);
-    }
-
-    /**
-     * Retrieve application store object
-     *
-     * @param null|string|bool|int|\Magento\Core\Model\Store $storeId
-     * @return \Magento\Core\Model\Store
-     * @throws \Magento\Core\Model\Store\Exception
-     */
-    public function getStore($storeId = null)
-    {
-        return $this->_getApp()->getStore($storeId);
-    }
-
-    /**
-     * Retrieve application store object without Store_Exception
-     *
-     * @param string|int|\Magento\Core\Model\Store $storeId
-     * @return \Magento\Core\Model\Store
-     */
-    public function getSafeStore($storeId = null)
-    {
-        return $this->_getApp()->getSafeStore($storeId);
-    }
-
-    /**
-     * Retrieve stores array
-     *
-     * @param bool $withDefault
-     * @param bool $codeKey
-     * @return array
-     */
-    public function getStores($withDefault = false, $codeKey = false)
-    {
-        return $this->_getApp()->getStores($withDefault, $codeKey);
-    }
-
-    /**
-     * Retrieve default store for default group and website
-     *
-     * @return \Magento\Core\Model\Store
-     */
-    public function getDefaultStoreView()
-    {
-        return $this->_getApp()->getDefaultStoreView();
-    }
-
-    /**
-     * Get distributive locale code
-     *
-     * @return string
-     */
-    public function getDistroLocaleCode()
-    {
-        return $this->_getApp()->getDistroLocaleCode();
-    }
-
-    /**
-     * Retrieve application website object
-     *
-     * @param null|bool|int|string|\Magento\Core\Model\Website $websiteId
-     * @return \Magento\Core\Model\Website
-     * @throws \Magento\Core\Exception
-     */
-    public function getWebsite($websiteId = null)
-    {
-        return $this->_getApp()->getWebsite($websiteId);
-    }
-
-    /**
-     * Get websites
-     *
-     * @param bool $withDefault
-     * @param bool $codeKey
-     * @return array
-     */
-    public function getWebsites($withDefault = false, $codeKey = false)
-    {
-        return $this->_getApp()->getWebsites($withDefault, $codeKey);
-    }
-
-    /**
-     * Retrieve application store group object
-     *
-     * @param null|\Magento\Core\Model\Store\Group|string $groupId
-     * @return \Magento\Core\Model\Store\Group
-     * @throws \Magento\Core\Exception
-     */
-    public function getGroup($groupId = null)
-    {
-        return $this->_getApp()->getGroup($groupId);
-    }
-
-    /**
-     * Retrieve application locale object
-     *
-     * @return \Magento\Core\Model\LocaleInterface
-     */
-    public function getLocale()
-    {
-        return $this->_getApp()->getLocale();
-    }
-
-    /**
-     * Retrieve layout object
-     *
-     * @return \Magento\Core\Model\Layout
-     */
-    public function getLayout()
-    {
-        return $this->_getApp()->getLayout();
-    }
-
-    /**
-     * Retrieve helper object
-     *
-     * @param string $name
-     * @return \Magento\Core\Helper\AbstractHelper
-     */
-    public function getHelper($name)
-    {
-        return $this->_getApp()->getHelper($name);
-    }
-
-    /**
-     * Retrieve application base currency code
-     *
-     * @return string
-     */
-    public function getBaseCurrencyCode()
-    {
-        return $this->_getApp()->getBaseCurrencyCode();
-    }
-
-    /**
-     * Retrieve configuration object
-     *
-     * @return \Magento\Core\Model\Config
-     */
-    public function getConfig()
-    {
-        return $this->_getApp()->getConfig();
-    }
-
-    /**
-     * Retrieve front controller object
-     *
-     * @return \Magento\Core\Controller\Varien\Front
-     */
-    public function getFrontController()
-    {
-        return $this->_getApp()->getFrontController();
-    }
-
-    /**
-     * Get core cache model
-     *
-     * @return \Magento\Core\Model\CacheInterface
-     */
-    public function getCacheInstance()
-    {
-        return $this->_getApp()->getCacheInstance();
-    }
-
-    /**
-     * Retrieve cache object
-     *
-     * @return \Zend_Cache_Core
-     */
-    public function getCache()
-    {
-        return $this->_getApp()->getCache();
-    }
-
-    /**
-     * Loading cache data
-     *
-     * @param   string $cacheId
-     * @return  mixed
-     */
-    public function loadCache($cacheId)
-    {
-        return $this->_getApp()->loadCache($cacheId);
-    }
-
-    /**
-     * Saving cache data
-     *
-     * @param mixed $data
-     * @param string $cacheId
-     * @param array $tags
-     * @param bool $lifeTime
-     * @return \Magento\Core\Model\AppInterface
-     */
-    public function saveCache($data, $cacheId, $tags = array(), $lifeTime = false)
-    {
-        return $this->_getApp()->saveCache($data, $cacheId, $tags, $lifeTime);
-    }
-
-    /**
-     * Remove cache
-     *
-     * @param   string $cacheId
-     * @return  \Magento\Core\Model\AppInterface
-     */
-    public function removeCache($cacheId)
-    {
-        return $this->_getApp()->removeCache($cacheId);
-    }
-
-    /**
-     * Cleaning cache
-     *
-     * @param   array $tags
-     * @return  \Magento\Core\Model\AppInterface
-     */
-    public function cleanCache($tags = array())
-    {
-        return $this->_getApp()->cleanCache($tags);
-    }
-
-    /**
-     * Deletes all session files
-     *
-     * @return \Magento\Core\Model\AppInterface
-     */
-    public function cleanAllSessions()
-    {
-        return $this->_getApp()->cleanAllSessions();
-    }
-
-    /**
-     * Retrieve request object
-     *
-     * @return \Magento\Core\Controller\Request\Http
-     */
-    public function getRequest()
-    {
-        return $this->_getApp()->getRequest();
-    }
-
-    /**
-     * Request setter
-     *
-     * @param \Magento\Core\Controller\Request\Http $request
-     * @return \Magento\Core\Model\AppInterface
-     */
-    public function setRequest(\Magento\Core\Controller\Request\Http $request)
-    {
-        return $this->_getApp()->setRequest($request);
-    }
-
-    /**
-     * Retrieve response object
-     *
-     * @return \Zend_Controller_Response_Http
-     */
-    public function getResponse()
-    {
-        return $this->_getApp()->getResponse();
-    }
-
-    /**
-     * Response setter
-     *
-     * @param \Magento\Core\Controller\Response\Http $response
-     * @return \Magento\Core\Model\AppInterface
-     */
-    public function setResponse(\Magento\Core\Controller\Response\Http $response)
-    {
-        return $this->_getApp()->setResponse($response);
-    }
-
-   /**
-     * @throws \Magento\Core\Model\Store\Exception
-     */
-    public function throwStoreException()
-    {
-        $this->_getApp()->throwStoreException();
-    }
-
-    /**
-     * Set use session var instead of SID for URL
-     *
-     * @param bool $var
-     * @return \Magento\Core\Model\AppInterface
-     */
-    public function setUseSessionVar($var)
-    {
-        return $this->_getApp()->setUseSessionVar($var);
-    }
-
-    /**
-     * Retrieve use flag session var instead of SID for URL
-     *
-     * @return bool
-     */
-    public function getUseSessionVar()
-    {
-        return $this->_getApp()->getUseSessionVar();
-    }
-
-    /**
-     * Get either default or any store view
-     *
-     * @return \Magento\Core\Model\Store
-     */
-    public function getAnyStoreView()
-    {
-        return $this->_getApp()->getAnyStoreView();
-    }
-
-    /**
-     * Set Use session in URL flag
-     *
-     * @param bool $flag
-     * @return \Magento\Core\Model\AppInterface
-     */
-    public function setUseSessionInUrl($flag = true)
-    {
-        return $this->_getApp()->setUseSessionInUrl($flag);
-    }
-
-    /**
-     * Retrieve use session in URL flag
-     *
-     * @return bool
-     */
-    public function getUseSessionInUrl()
-    {
-        return $this->_getApp()->getUseSessionInUrl();
-    }
-
-    /**
-     * Allow or disallow single store mode
-     *
-     * @param bool $value
-     */
-    public function setIsSingleStoreModeAllowed($value)
-    {
-        $this->_getApp()->setIsSingleStoreModeAllowed($value);
-    }
-
-    /**
-     * Prepare array of store groups
-     * can be filtered to contain default store group or not by $withDefault flag
-     * depending on flag $codeKey array keys can be group id or group code
-     *
-     * @param bool $withDefault
-     * @param bool $codeKey
-     * @return array
-     */
-    public function getGroups($withDefault = false, $codeKey = false)
-    {
-        return $this->_getApp()->getGroups($withDefault, $codeKey);
-    }
-
-    /**
-     *  Unset website by id from app cache
-     *
-     * @param null|bool|int|string|\Magento\Core\Model\Website $websiteId
-     */
-    public function clearWebsiteCache($websiteId = null)
-    {
-        $this->_getApp()->clearWebsiteCache($websiteId);
-    }
-
-    /**
-     * Check if developer mode is enabled.
-     *
-     * @return bool
-     */
-    public function isDeveloperMode()
-    {
-        return $this->_getApp()->isDeveloperMode();
-    }
-}
diff --git a/app/code/Magento/Core/Model/AppInterface.php b/app/code/Magento/Core/Model/AppInterface.php
index f1d0cfa30a653..f0a690829be70 100644
--- a/app/code/Magento/Core/Model/AppInterface.php
+++ b/app/code/Magento/Core/Model/AppInterface.php
@@ -55,13 +55,6 @@ interface AppInterface extends \Magento\Core\Model\StoreManagerInterface
      */
     const CONFIGURATION_DI_NODE = 'di';
 
-    /**
-     * Run application. Run process responsible for request processing and sending response.
-     *
-     * @return \Magento\Core\Model\AppInterface
-     */
-    public function run();
-
     /**
      * Throw an exception, if the application has not been installed yet
      *
@@ -126,7 +119,7 @@ public function getLocale();
     /**
      * Retrieve layout object
      *
-     * @return \Magento\Core\Model\Layout
+     * @return \Magento\View\LayoutInterface
      */
     public function getLayout();
 
@@ -147,7 +140,7 @@ public function getConfig();
     /**
      * Retrieve front controller object
      *
-     * @return \Magento\Core\Controller\Varien\Front
+     * @return \Magento\App\FrontController
      */
     public function getFrontController();
 
@@ -211,32 +204,32 @@ public function cleanAllSessions();
     /**
      * Retrieve request object
      *
-     * @return \Magento\Core\Controller\Request\Http
+     * @return \Magento\App\RequestInterface
      */
     public function getRequest();
 
     /**
      * Request setter
      *
-     * @param \Magento\Core\Controller\Request\Http $request
+     * @param \Magento\App\RequestInterface $request
      * @return \Magento\Core\Model\AppInterface
      */
-    public function setRequest(\Magento\Core\Controller\Request\Http $request);
+    public function setRequest(\Magento\App\RequestInterface $request);
 
     /**
      * Retrieve response object
      *
-     * @return \Zend_Controller_Response_Http
+     * @return \Magento\App\ResponseInterface
      */
     public function getResponse();
 
     /**
      * Response setter
      *
-     * @param \Magento\Core\Controller\Response\Http $response
+     * @param \Magento\App\ResponseInterface $response
      * @return \Magento\Core\Model\AppInterface
      */
-    public function setResponse(\Magento\Core\Controller\Response\Http $response);
+    public function setResponse(\Magento\App\ResponseInterface $response);
 
     /**
      * Set use session var instead of SID for URL
diff --git a/app/code/Magento/Core/Model/Cache/Frontend/Factory.php b/app/code/Magento/Core/Model/Cache/Frontend/Factory.php
index 9e3e4c648fd48..0a1c04524fbf5 100644
--- a/app/code/Magento/Core/Model/Cache/Frontend/Factory.php
+++ b/app/code/Magento/Core/Model/Cache/Frontend/Factory.php
@@ -47,7 +47,7 @@ class Factory
     private $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     private $_dirs;
 
@@ -97,7 +97,7 @@ class Factory
     /**
      * @param \Magento\ObjectManager $objectManager
      * @param \Magento\Filesystem $filesystem
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param \Magento\Core\Model\Resource $resource
      * @param array $enforcedOptions
      * @param array $decorators
@@ -105,7 +105,7 @@ class Factory
     public function __construct(
         \Magento\ObjectManager $objectManager,
         \Magento\Filesystem $filesystem,
-        \Magento\Core\Model\Dir $dirs,
+        \Magento\App\Dir $dirs,
         \Magento\Core\Model\Resource $resource,
         array $enforcedOptions = array(),
         array $decorators = array()
@@ -130,21 +130,21 @@ public function create(array $options)
 
         foreach (array('backend_options', 'slow_backend_options') as $section) {
             if (!empty($options[$section]['cache_dir'])) {
-                $dir = $this->_dirs->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . $options[$section]['cache_dir'];
+                $dir = $this->_dirs->getDir(\Magento\App\Dir::VAR_DIR) . DS . $options[$section]['cache_dir'];
                 $this->_filesystem->setIsAllowCreateDirectories(true);
                 $this->_filesystem->ensureDirectoryExists($dir, 0777);
                 $options[$section]['cache_dir'] = $dir;
             }
         }
 
-        $this->_backendOptions['cache_dir'] = $this->_dirs->getDir(\Magento\Core\Model\Dir::CACHE);
+        $this->_backendOptions['cache_dir'] = $this->_dirs->getDir(\Magento\App\Dir::CACHE);
 
         $idPrefix = isset($options['id_prefix']) ? $options['id_prefix'] : '';
         if (!$idPrefix && isset($options['prefix'])) {
             $idPrefix = $options['prefix'];
         }
         if (empty($idPrefix)) {
-            $idPrefix = substr(md5($this->_dirs->getDir(\Magento\Core\Model\Dir::CONFIG)), 0, 3) . '_';
+            $idPrefix = substr(md5($this->_dirs->getDir(\Magento\App\Dir::CONFIG)), 0, 3) . '_';
         }
         $options['frontend_options']['cache_id_prefix'] = $idPrefix;
 
diff --git a/app/code/Magento/Core/Model/Cache/State.php b/app/code/Magento/Core/Model/Cache/State.php
index 2ef1d409549ec..6827d417cea7d 100644
--- a/app/code/Magento/Core/Model/Cache/State.php
+++ b/app/code/Magento/Core/Model/Cache/State.php
@@ -56,13 +56,13 @@ class State implements \Magento\Core\Model\Cache\StateInterface
     /**
      * @param \Magento\Core\Model\Resource\Cache $resource
      * @param \Magento\Core\Model\Cache\Frontend\Pool $cacheFrontendPool
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      * @param bool $banAll Whether all cache types are forced to be disabled
      */
     public function __construct(
         \Magento\Core\Model\Resource\Cache $resource,
         \Magento\Core\Model\Cache\Frontend\Pool $cacheFrontendPool,
-        \Magento\Core\Model\App\State $appState,
+        \Magento\App\State $appState,
         $banAll = false
     ) {
         $this->_resource = $resource;
diff --git a/app/code/Magento/Core/Model/Config.php b/app/code/Magento/Core/Model/Config.php
index 9b3041ed688e7..f5301f8c03630 100644
--- a/app/code/Magento/Core/Model/Config.php
+++ b/app/code/Magento/Core/Model/Config.php
@@ -61,20 +61,6 @@ class Config implements \Magento\Core\Model\ConfigInterface
      */
     protected $_secureUrlCache = array();
 
-    /**
-     * Active modules array per namespace
-     *
-     * @var array
-     */
-    private $_moduleNamespaces = null;
-
-    /**
-     * Areas allowed to use
-     *
-     * @var array
-     */
-    protected $_allowedAreas = null;
-
     /**
      * Object manager
      *
@@ -109,7 +95,7 @@ class Config implements \Magento\Core\Model\ConfigInterface
     protected $_configScope;
 
     /**
-     * @var \Magento\Core\Model\ModuleListInterface
+     * @var \Magento\App\ModuleListInterface
      */
     protected $_moduleList;
 
@@ -127,19 +113,17 @@ class Config implements \Magento\Core\Model\ConfigInterface
      * @param \Magento\Core\Model\ObjectManager           $objectManager
      * @param \Magento\Core\Model\Config\StorageInterface $storage
      * @param \Magento\Core\Model\Config\Modules\Reader   $moduleReader
-     * @param \Magento\Core\Model\ModuleListInterface     $moduleList
+     * @param \Magento\App\ModuleListInterface     $moduleList
      * @param \Magento\Config\ScopeInterface              $configScope
      * @param \Magento\Core\Model\Config\SectionPool      $sectionPool
-     * @param array                                      $areas
      */
     public function __construct(
         \Magento\Core\Model\ObjectManager $objectManager,
         \Magento\Core\Model\Config\StorageInterface $storage,
         \Magento\Core\Model\Config\Modules\Reader $moduleReader,
-        \Magento\Core\Model\ModuleListInterface $moduleList,
+        \Magento\App\ModuleListInterface $moduleList,
         \Magento\Config\ScopeInterface $configScope,
-        \Magento\Core\Model\Config\SectionPool $sectionPool,
-        array $areas = array()
+        \Magento\Core\Model\Config\SectionPool $sectionPool
     ) {
         \Magento\Profiler::start('config_load');
         $this->_objectManager = $objectManager;
@@ -149,7 +133,6 @@ public function __construct(
         $this->_moduleList = $moduleList;
         $this->_configScope = $configScope;
         $this->_sectionPool = $sectionPool;
-        $this->_allowedAreas = $areas;
         \Magento\Profiler::stop('config_load');
     }
 
@@ -213,23 +196,6 @@ public function getAreas()
         return $this->_allowedAreas;
     }
 
-    /**
-     * Retrieve area config by area code
-     *
-     * @param string|null $areaCode
-     * @throws \InvalidArgumentException
-     * @return array
-     */
-    public function getAreaConfig($areaCode = null)
-    {
-        $areaCode = empty($areaCode) ? $this->_configScope->getCurrentScope() : $areaCode;
-        $areas = $this->getAreas();
-        if (!isset($areas[$areaCode])) {
-            throw new \InvalidArgumentException('Requested area (' . $areaCode . ') does not exist');
-        }
-        return $areas[$areaCode];
-    }
-
     /**
      * Identify front name of the requested area. Return current area front name if area code is not specified.
      *
@@ -262,20 +228,6 @@ public function getModuleDir($type, $moduleName)
         return $this->_moduleReader->getModuleDir($type, $moduleName);
     }
 
-    /**
-     * Set path to the corresponding module directory
-     *
-     * @param string $moduleName
-     * @param string $type directory type (etc, controllers, locale etc)
-     * @param string $path
-     * @return \Magento\Core\Model\Config
-     */
-    public function setModuleDir($moduleName, $type, $path)
-    {
-        $this->_moduleReader->setModuleDir($moduleName, $type, $path);
-        return $this;
-    }
-
     /**
      * Retrieve store Ids for $path with checking
      *
diff --git a/app/code/Magento/Core/Model/Config/FileResolver.php b/app/code/Magento/Core/Model/Config/FileResolver.php
index f1c50b237c940..21b798400f58f 100644
--- a/app/code/Magento/Core/Model/Config/FileResolver.php
+++ b/app/code/Magento/Core/Model/Config/FileResolver.php
@@ -35,17 +35,17 @@ class FileResolver implements \Magento\Config\FileResolverInterface
     protected $_moduleReader;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_applicationDirs;
 
     /**
      * @param \Magento\Core\Model\Config\Modules\Reader $moduleReader
-     * @param \Magento\Core\Model\Dir $applicationDirs
+     * @param \Magento\App\Dir $applicationDirs
      */
     public function __construct(
         \Magento\Core\Model\Config\Modules\Reader $moduleReader,
-        \Magento\Core\Model\Dir $applicationDirs
+        \Magento\App\Dir $applicationDirs
     ) {
         $this->_moduleReader = $moduleReader;
         $this->_applicationDirs = $applicationDirs;
@@ -58,7 +58,7 @@ public function get($filename, $scope)
     {
         switch ($scope) {
             case 'primary':
-                $appConfigDir = $this->_applicationDirs->getDir(\Magento\Core\Model\Dir::CONFIG);
+                $appConfigDir = $this->_applicationDirs->getDir(\Magento\App\Dir::CONFIG);
                 // Create pattern similar to app/etc/{*config.xml,*/*config.xml}
                 $filePattern = $appConfigDir . DIRECTORY_SEPARATOR
                     . '{*' . $filename . ',*' . DIRECTORY_SEPARATOR . '*' . $filename . '}';
diff --git a/app/code/Magento/Core/Model/Config/FileResolver/Primary.php b/app/code/Magento/Core/Model/Config/FileResolver/Primary.php
index 0e95f804cc19e..b84b42fb2edf6 100644
--- a/app/code/Magento/Core/Model/Config/FileResolver/Primary.php
+++ b/app/code/Magento/Core/Model/Config/FileResolver/Primary.php
@@ -31,14 +31,14 @@
 class Primary implements \Magento\Config\FileResolverInterface
 {
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_applicationDirs;
 
     /**
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      */
-    public function __construct(\Magento\Core\Model\Dir $dirs)
+    public function __construct(\Magento\App\Dir $dirs)
     {
         $this->_applicationDirs = $dirs;
     }
@@ -53,7 +53,7 @@ public function __construct(\Magento\Core\Model\Dir $dirs)
      */
     public function get($filename, $scope)
     {
-        $configDir = $this->_applicationDirs->getDir(\Magento\Core\Model\Dir::CONFIG);
+        $configDir = $this->_applicationDirs->getDir(\Magento\App\Dir::CONFIG);
         $fileList = glob($configDir . DIRECTORY_SEPARATOR . '*' . DIRECTORY_SEPARATOR . $filename);
 
         if (file_exists($configDir . DIRECTORY_SEPARATOR . $filename)) {
diff --git a/app/code/Magento/Core/Model/Config/Modules/Reader.php b/app/code/Magento/Core/Model/Config/Modules/Reader.php
index f532af219e7f6..494bc763bbfdf 100644
--- a/app/code/Magento/Core/Model/Config/Modules/Reader.php
+++ b/app/code/Magento/Core/Model/Config/Modules/Reader.php
@@ -37,14 +37,14 @@ class Reader
     /**
      * Directory registry
      *
-     * @var \Magento\Core\Model\Module\Dir
+     * @var \Magento\App\Module\Dir
      */
     protected $_moduleDirs;
 
     /**
      * Modules configuration provider
      *
-     * @var \Magento\Core\Model\ModuleListInterface
+     * @var \Magento\App\ModuleListInterface
      */
     protected $_modulesList;
 
@@ -56,14 +56,14 @@ class Reader
     protected $_prototypeFactory;
 
     /**
-     * @param \Magento\Core\Model\Module\Dir $moduleDirs
+     * @param \Magento\App\Module\Dir $moduleDirs
      * @param \Magento\Core\Model\Config\BaseFactory $prototypeFactory
-     * @param \Magento\Core\Model\ModuleListInterface $moduleList
+     * @param \Magento\App\ModuleListInterface $moduleList
      */
     public function __construct(
-        \Magento\Core\Model\Module\Dir $moduleDirs,
+        \Magento\App\Module\Dir $moduleDirs,
         \Magento\Core\Model\Config\BaseFactory $prototypeFactory,
-        \Magento\Core\Model\ModuleListInterface $moduleList
+        \Magento\App\ModuleListInterface $moduleList
     ) {
         $this->_moduleDirs = $moduleDirs;
         $this->_prototypeFactory = $prototypeFactory;
diff --git a/app/code/Magento/Core/Model/Config/Primary.php b/app/code/Magento/Core/Model/Config/Primary.php
index 76b871e99cda6..731419ba6811a 100644
--- a/app/code/Magento/Core/Model/Config/Primary.php
+++ b/app/code/Magento/Core/Model/Config/Primary.php
@@ -42,35 +42,35 @@ class Primary extends \Magento\Core\Model\Config\Base
     /**
      * Directory list
      *
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dir;
 
     /**
      * @param string $baseDir
      * @param array $params
-     * @param \Magento\Core\Model\Dir $dir
+     * @param \Magento\App\Dir $dir
      * @param \Magento\Core\Model\Config\LoaderInterface $loader
      */
     public function __construct(
         $baseDir,
         array $params,
-        \Magento\Core\Model\Dir $dir = null,
+        \Magento\App\Dir $dir = null,
         \Magento\Core\Model\Config\LoaderInterface $loader = null
     ) {
         parent::__construct('');
         $this->_params = $params;
-        $this->_dir = $dir ?: new \Magento\Core\Model\Dir(
+        $this->_dir = $dir ?: new \Magento\App\Dir(
             $baseDir,
             $this->getParam(\Magento\Core\Model\App::PARAM_APP_URIS, array()),
             $this->getParam(\Magento\Core\Model\App::PARAM_APP_DIRS, array())
         );
         \Magento\Autoload\IncludePath::addIncludePath(array(
-            $this->_dir->getDir(\Magento\Core\Model\Dir::GENERATION)
+            $this->_dir->getDir(\Magento\App\Dir::GENERATION)
         ));
 
         $this->_loader = $loader ?: new \Magento\Core\Model\Config\Loader\Primary(
-            $this->_dir->getDir(\Magento\Core\Model\Dir::CONFIG)
+            $this->_dir->getDir(\Magento\App\Dir::CONFIG)
         );
         $this->_loader->load($this);
     }
@@ -100,7 +100,7 @@ public function getParams()
     /**
      * Retrieve directories
      *
-     * @return \Magento\Core\Model\Dir
+     * @return \Magento\App\Dir
      */
     public function getDirectories()
     {
@@ -127,9 +127,9 @@ public function getDefinitionPath()
         if (isset($pathInfo['path'])) {
             return $pathInfo['path'];
         } else if (isset($pathInfo['relativePath'])) {
-            return $this->_dir->getDir(\Magento\Core\Model\Dir::ROOT) . DIRECTORY_SEPARATOR . $pathInfo['relativePath'];
+            return $this->_dir->getDir(\Magento\App\Dir::ROOT) . DIRECTORY_SEPARATOR . $pathInfo['relativePath'];
         } else {
-            return $this->_dir->getDir(\Magento\Core\Model\Dir::DI);
+            return $this->_dir->getDir(\Magento\App\Dir::DI);
         }
     }
 
@@ -155,7 +155,7 @@ public function configure(\Magento\Core\Model\ObjectManager $objectManager)
         $objectManager->configure(array(
             'Magento\Core\Model\Config\Loader\Local' => array(
                 'parameters' => array(
-                    'configDirectory' => $this->_dir->getDir(\Magento\Core\Model\Dir::CONFIG),
+                    'configDirectory' => $this->_dir->getDir(\Magento\App\Dir::CONFIG),
                 )
             ),
             'Magento\Core\Model\Cache\Frontend\Factory' => array(
diff --git a/app/code/Magento/Core/Model/Config/Resource.php b/app/code/Magento/Core/Model/Config/Resource.php
index 3cc04e5fe67f1..e6fbae397cd17 100644
--- a/app/code/Magento/Core/Model/Config/Resource.php
+++ b/app/code/Magento/Core/Model/Config/Resource.php
@@ -30,6 +30,13 @@ class Resource extends \Magento\Config\Data\Scoped
 {
     const DEFAULT_SETUP_CONNECTION = 'default';
 
+    /**
+     * List of connection names per resource
+     *
+     * @var array
+     */
+    protected $_connectionNames = array();
+
     /**
      * @param \Magento\Core\Model\Resource\Config\Reader $reader
      * @param \Magento\Config\ScopeInterface $configScope
diff --git a/app/code/Magento/Core/Model/Config/Section/Processor/Placeholder.php b/app/code/Magento/Core/Model/Config/Section/Processor/Placeholder.php
index 8060d4ce366cb..b03e148880f8b 100644
--- a/app/code/Magento/Core/Model/Config/Section/Processor/Placeholder.php
+++ b/app/code/Magento/Core/Model/Config/Section/Processor/Placeholder.php
@@ -28,14 +28,14 @@
 class Placeholder
 {
     /**
-     * @var \Magento\Core\Controller\Request\Http
+     * @var \Magento\App\RequestInterface
      */
     protected $_request;
 
     /**
-     * @param \Magento\Core\Controller\Request\Http $request
+     * @param \Magento\App\RequestInterface $request
      */
-    public function __construct(\Magento\Core\Controller\Request\Http $request)
+    public function __construct(\Magento\App\RequestInterface $request)
     {
         $this->_request = $request;
     }
diff --git a/app/code/Magento/Core/Model/Config/Section/Reader/DefaultReader.php b/app/code/Magento/Core/Model/Config/Section/Reader/DefaultReader.php
index dffce7edd8f2e..4a8961cac0f70 100644
--- a/app/code/Magento/Core/Model/Config/Section/Reader/DefaultReader.php
+++ b/app/code/Magento/Core/Model/Config/Section/Reader/DefaultReader.php
@@ -43,7 +43,7 @@ class DefaultReader
     protected $_collectionFactory;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
@@ -51,13 +51,13 @@ class DefaultReader
      * @param \Magento\Core\Model\Config\Initial $initialConfig
      * @param \Magento\Core\Model\Config\Section\Converter $converter
      * @param \Magento\Core\Model\Resource\Config\Value\Collection\ScopedFactory $collectionFactory
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      */
     public function __construct(
         \Magento\Core\Model\Config\Initial $initialConfig,
         \Magento\Core\Model\Config\Section\Converter $converter,
         \Magento\Core\Model\Resource\Config\Value\Collection\ScopedFactory $collectionFactory,
-        \Magento\Core\Model\App\State $appState
+        \Magento\App\State $appState
     ) {
         $this->_initialConfig = $initialConfig;
         $this->_converter = $converter;
diff --git a/app/code/Magento/Core/Model/Config/Section/Reader/Store.php b/app/code/Magento/Core/Model/Config/Section/Reader/Store.php
index c8cb7551283de..23091df894048 100644
--- a/app/code/Magento/Core/Model/Config/Section/Reader/Store.php
+++ b/app/code/Magento/Core/Model/Config/Section/Reader/Store.php
@@ -51,7 +51,7 @@ class Store
     protected $_storeFactory;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
@@ -61,7 +61,7 @@ class Store
      * @param \Magento\Core\Model\Config\Section\Store\Converter $converter
      * @param \Magento\Core\Model\Resource\Config\Value\Collection\ScopedFactory $collectionFactory
      * @param \Magento\Core\Model\StoreFactory $storeFactory
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      */
     public function __construct(
         \Magento\Core\Model\Config\Initial $initialConfig,
@@ -69,7 +69,7 @@ public function __construct(
         \Magento\Core\Model\Config\Section\Store\Converter $converter,
         \Magento\Core\Model\Resource\Config\Value\Collection\ScopedFactory $collectionFactory,
         \Magento\Core\Model\StoreFactory $storeFactory,
-        \Magento\Core\Model\App\State $appState
+        \Magento\App\State $appState
     ) {
         $this->_initialConfig = $initialConfig;
         $this->_sectionPool = $sectionPool;
diff --git a/app/code/Magento/Core/Model/Config/Section/Reader/Website.php b/app/code/Magento/Core/Model/Config/Section/Reader/Website.php
index 3680d3387d0ef..e7553c068dcd0 100644
--- a/app/code/Magento/Core/Model/Config/Section/Reader/Website.php
+++ b/app/code/Magento/Core/Model/Config/Section/Reader/Website.php
@@ -51,7 +51,7 @@ class Website
     protected $_websiteFactory;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
@@ -61,7 +61,7 @@ class Website
      * @param \Magento\Core\Model\Config\Section\Converter $converter
      * @param \Magento\Core\Model\Resource\Config\Value\Collection\ScopedFactory $collectionFactory
      * @param \Magento\Core\Model\WebsiteFactory $websiteFactory
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      */
     public function __construct(
         \Magento\Core\Model\Config\Initial $initialConfig,
@@ -69,7 +69,7 @@ public function __construct(
         \Magento\Core\Model\Config\Section\Converter $converter,
         \Magento\Core\Model\Resource\Config\Value\Collection\ScopedFactory $collectionFactory,
         \Magento\Core\Model\WebsiteFactory $websiteFactory,
-        \Magento\Core\Model\App\State $appState
+        \Magento\App\State $appState
     ) {
         $this->_initialConfig = $initialConfig;
         $this->_sectionPool = $sectionPool;
diff --git a/app/code/Magento/Core/Model/Config/ValidationState.php b/app/code/Magento/Core/Model/Config/ValidationState.php
index 520082edca07c..ecd1e612ef081 100644
--- a/app/code/Magento/Core/Model/Config/ValidationState.php
+++ b/app/code/Magento/Core/Model/Config/ValidationState.php
@@ -47,6 +47,6 @@ public function __construct($appMode)
      */
     public function isValidated()
     {
-        return $this->_appMode == \Magento\Core\Model\App\State::MODE_DEVELOPER;
+        return $this->_appMode == \Magento\App\State::MODE_DEVELOPER;
     }
 }
diff --git a/app/code/Magento/Core/Model/Context.php b/app/code/Magento/Core/Model/Context.php
index 0e63672655daa..7fd80fdfd4800 100644
--- a/app/code/Magento/Core/Model/Context.php
+++ b/app/code/Magento/Core/Model/Context.php
@@ -28,7 +28,7 @@
 class Context implements \Magento\ObjectManager\ContextInterface
 {
     /**
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventDispatcher;
 
@@ -44,21 +44,21 @@ class Context implements \Magento\ObjectManager\ContextInterface
 
     /**
      * @param \Magento\Core\Model\Logger $logger
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
     /**
      * @param \Magento\Core\Model\Logger $logger
-     * @param \Magento\Core\Model\Event\Manager $eventDispatcher
+     * @param \Magento\Event\ManagerInterface $eventDispatcher
      * @param \Magento\Core\Model\CacheInterface $cacheManager
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      */
     public function __construct(
         \Magento\Core\Model\Logger $logger,
-        \Magento\Core\Model\Event\Manager $eventDispatcher,
+        \Magento\Event\ManagerInterface $eventDispatcher,
         \Magento\Core\Model\CacheInterface $cacheManager,
-        \Magento\Core\Model\App\State $appState
+        \Magento\App\State $appState
     ) {
         $this->_eventDispatcher = $eventDispatcher;
         $this->_cacheManager = $cacheManager;
@@ -75,7 +75,7 @@ public function getCacheManager()
     }
 
     /**
-     * @return \Magento\Core\Model\Event\Manager
+     * @return \Magento\Event\ManagerInterface
      */
     public function getEventDispatcher()
     {
@@ -91,7 +91,7 @@ public function getLogger()
     }
 
     /**
-     * @return \Magento\Core\Model\App\State
+     * @return \Magento\App\State
      */
     public function getAppState()
     {
diff --git a/app/code/Magento/Core/Model/Cookie.php b/app/code/Magento/Core/Model/Cookie.php
index 7ea96ff9662fd..b7a2ec5e4eacb 100644
--- a/app/code/Magento/Core/Model/Cookie.php
+++ b/app/code/Magento/Core/Model/Cookie.php
@@ -56,12 +56,12 @@ class Cookie
     protected $_storeManager;
 
     /**
-     * @var \Magento\Core\Controller\Request\Http
+     * @var \Magento\App\RequestInterface
      */
     protected $_httpRequest;
 
     /**
-     * @var \Magento\Core\Controller\Response\Http
+     * @var \Magento\App\ResponseInterface
      */
     protected $_httpResponse;
 
@@ -73,19 +73,19 @@ class Cookie
     protected $_coreStoreConfig;
 
     /**
-     * @param \Magento\Core\Controller\Request\Http $httpRequest
-     * @param \Magento\Core\Controller\Response\Http $httpResponse
-     * @param \Magento\Core\Model\Store\Config $coreStoreConfig
-     * @param \Magento\Core\Model\StoreManager $storeManager
+     * @param \Magento\App\RequestInterface $request
+     * @param \Magento\App\ResponseInterface $response
+     * @param Store\Config $coreStoreConfig
+     * @param StoreManager $storeManager
      */
     public function __construct(
-        \Magento\Core\Controller\Request\Http $httpRequest,
-        \Magento\Core\Controller\Response\Http $httpResponse,
+        \Magento\App\RequestInterface $request,
+        \Magento\App\ResponseInterface $response,
         \Magento\Core\Model\Store\Config $coreStoreConfig,
         \Magento\Core\Model\StoreManager $storeManager
     ) {
-        $this->_httpRequest = $httpRequest;
-        $this->_httpResponse = $httpResponse;
+        $this->_httpRequest = $request;
+        $this->_httpResponse = $response;
         $this->_coreStoreConfig = $coreStoreConfig;
         $this->_storeManager = $storeManager;
     }
@@ -118,7 +118,7 @@ public function getStore()
     /**
      * Retrieve Request object
      *
-     * @return \Magento\Core\Controller\Request\Http
+     * @return \Magento\App\RequestInterface
      */
     protected function _getRequest()
     {
@@ -128,7 +128,7 @@ protected function _getRequest()
     /**
      * Retrieve Response object
      *
-     * @return \Magento\Core\Controller\Response\Http
+     * @return \Magento\App\ResponseInterface
      */
     protected function _getResponse()
     {
diff --git a/app/code/Magento/Core/Model/DataService/Path/Request.php b/app/code/Magento/Core/Model/DataService/Path/Request.php
index d24c2d6d13510..80440e34fb4e8 100644
--- a/app/code/Magento/Core/Model/DataService/Path/Request.php
+++ b/app/code/Magento/Core/Model/DataService/Path/Request.php
@@ -1,9 +1,9 @@
 _request = $request;
     }
diff --git a/app/code/Magento/Core/Model/Design.php b/app/code/Magento/Core/Model/Design.php
index 932a8b07617a5..3f6695993aa47 100644
--- a/app/code/Magento/Core/Model/Design.php
+++ b/app/code/Magento/Core/Model/Design.php
@@ -136,10 +136,10 @@ public function loadChange($storeId, $date = null)
     /**
      * Apply design change from self data into specified design package instance
      *
-     * @param \Magento\Core\Model\View\DesignInterface $packageInto
+     * @param \Magento\View\DesignInterface $packageInto
      * @return \Magento\Core\Model\Design
      */
-    public function changeDesign(\Magento\Core\Model\View\DesignInterface $packageInto)
+    public function changeDesign(\Magento\View\DesignInterface $packageInto)
     {
         $design = $this->getDesign();
         if ($design) {
diff --git a/app/code/Magento/Core/Model/Design/Backend/Exceptions.php b/app/code/Magento/Core/Model/Design/Backend/Exceptions.php
index e8627feb25772..b6b02d75145e9 100644
--- a/app/code/Magento/Core/Model/Design/Backend/Exceptions.php
+++ b/app/code/Magento/Core/Model/Design/Backend/Exceptions.php
@@ -31,12 +31,12 @@ class Exceptions extends \Magento\Backend\Model\Config\Backend\Serialized\ArrayS
     /**
      * Design package instance
      *
-     * @var \Magento\Core\Model\View\DesignInterface
+     * @var \Magento\View\DesignInterface
      */
     protected $_design = null;
 
     /**
-     * @param \Magento\Core\Model\View\DesignInterface $design
+     * @param \Magento\View\DesignInterface $design
      * @param \Magento\Core\Model\Context $context
      * @param \Magento\Core\Model\Registry $registry
      * @param \Magento\Core\Model\StoreManager $storeManager
@@ -46,7 +46,7 @@ class Exceptions extends \Magento\Backend\Model\Config\Backend\Serialized\ArrayS
      * @param array $data
      */
     public function __construct(
-        \Magento\Core\Model\View\DesignInterface $design,
+        \Magento\View\DesignInterface $design,
         \Magento\Core\Model\Context $context,
         \Magento\Core\Model\Registry $registry,
         \Magento\Core\Model\StoreManager $storeManager,
diff --git a/app/code/Magento/Core/Model/Design/Backend/Theme.php b/app/code/Magento/Core/Model/Design/Backend/Theme.php
index f9ee0af063e79..679e4a723c0d0 100644
--- a/app/code/Magento/Core/Model/Design/Backend/Theme.php
+++ b/app/code/Magento/Core/Model/Design/Backend/Theme.php
@@ -31,12 +31,12 @@ class Theme extends \Magento\Core\Model\Config\Value
     /**
      * Design package instance
      *
-     * @var \Magento\Core\Model\View\DesignInterface
+     * @var \Magento\View\DesignInterface
      */
     protected $_design = null;
 
     /**
-     * @param \Magento\Core\Model\View\DesignInterface $design
+     * @param \Magento\View\DesignInterface $design
      * @param \Magento\Core\Model\Context $context
      * @param \Magento\Core\Model\Registry $registry
      * @param \Magento\Core\Model\StoreManager $storeManager
@@ -46,7 +46,7 @@ class Theme extends \Magento\Core\Model\Config\Value
      * @param array $data
      */
     public function __construct(
-        \Magento\Core\Model\View\DesignInterface $design,
+        \Magento\View\DesignInterface $design,
         \Magento\Core\Model\Context $context,
         \Magento\Core\Model\Registry $registry,
         \Magento\Core\Model\StoreManager $storeManager,
diff --git a/app/code/Magento/Core/Model/Design/Fallback/Factory.php b/app/code/Magento/Core/Model/Design/Fallback/Factory.php
index 900d9e37c190e..684b41d6ddf78 100644
--- a/app/code/Magento/Core/Model/Design/Fallback/Factory.php
+++ b/app/code/Magento/Core/Model/Design/Fallback/Factory.php
@@ -30,16 +30,16 @@
 class Factory
 {
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     private $_dirs;
 
     /**
      * Constructor
      *
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      */
-    public function __construct(\Magento\Core\Model\Dir $dirs)
+    public function __construct(\Magento\App\Dir $dirs)
     {
         $this->_dirs = $dirs;
     }
@@ -51,7 +51,7 @@ public function __construct(\Magento\Core\Model\Dir $dirs)
      */
     public function createLocaleFileRule()
     {
-        $themesDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::THEMES);
+        $themesDir = $this->_dirs->getDir(\Magento\App\Dir::THEMES);
         return new \Magento\Core\Model\Design\Fallback\Rule\Theme(
             new \Magento\Core\Model\Design\Fallback\Rule\Simple("$themesDir///i18n/")
         );
@@ -64,8 +64,8 @@ public function createLocaleFileRule()
      */
     public function createFileRule()
     {
-        $themesDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::THEMES);
-        $modulesDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::MODULES);
+        $themesDir = $this->_dirs->getDir(\Magento\App\Dir::THEMES);
+        $modulesDir = $this->_dirs->getDir(\Magento\App\Dir::MODULES);
         return new \Magento\Core\Model\Design\Fallback\Rule\ModularSwitch(
             new \Magento\Core\Model\Design\Fallback\Rule\Theme(
                 new \Magento\Core\Model\Design\Fallback\Rule\Simple(
@@ -92,9 +92,9 @@ public function createFileRule()
      */
     public function createViewFileRule()
     {
-        $themesDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::THEMES);
-        $modulesDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::MODULES);
-        $pubLibDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::PUB_LIB);
+        $themesDir = $this->_dirs->getDir(\Magento\App\Dir::THEMES);
+        $modulesDir = $this->_dirs->getDir(\Magento\App\Dir::MODULES);
+        $pubLibDir = $this->_dirs->getDir(\Magento\App\Dir::PUB_LIB);
         return new \Magento\Core\Model\Design\Fallback\Rule\ModularSwitch(
             new \Magento\Core\Model\Design\Fallback\Rule\Composite(array(
                 new \Magento\Core\Model\Design\Fallback\Rule\Theme(
diff --git a/app/code/Magento/Core/Model/Design/Fallback/Rule/Theme.php b/app/code/Magento/Core/Model/Design/Fallback/Rule/Theme.php
index a64797d435bc6..f6ee233caee8d 100644
--- a/app/code/Magento/Core/Model/Design/Fallback/Rule/Theme.php
+++ b/app/code/Magento/Core/Model/Design/Fallback/Rule/Theme.php
@@ -52,13 +52,13 @@ public function __construct(\Magento\Core\Model\Design\Fallback\Rule\RuleInterfa
      */
     public function getPatternDirs(array $params)
     {
-        if (!array_key_exists('theme', $params) || !($params['theme'] instanceof \Magento\Core\Model\ThemeInterface)) {
+        if (!array_key_exists('theme', $params) || !($params['theme'] instanceof \Magento\View\Design\ThemeInterface)) {
             throw new \InvalidArgumentException(
                 'Parameter "theme" should be specified and should implement the theme interface.'
             );
         }
         $result = array();
-        /** @var $theme \Magento\Core\Model\ThemeInterface */
+        /** @var $theme \Magento\View\Design\ThemeInterface */
         $theme = $params['theme'];
         unset($params['theme']);
         while ($theme) {
diff --git a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/Fallback.php b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/Fallback.php
index 0d6342fed0e82..e9eff08dfb56d 100644
--- a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/Fallback.php
+++ b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/Fallback.php
@@ -72,12 +72,12 @@ public function __construct(
      * Get existing file name, using fallback mechanism
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $file
      * @param string|null $module
      * @return string
      */
-    public function getFile($area, \Magento\Core\Model\Theme $themeModel, $file, $module = null)
+    public function getFile($area, \Magento\View\Design\ThemeInterface $themeModel, $file, $module = null)
     {
         $params = array('area' => $area, 'theme' => $themeModel, 'namespace' => null, 'module' => null);
         if ($module) {
@@ -90,12 +90,12 @@ public function getFile($area, \Magento\Core\Model\Theme $themeModel, $file, $mo
      * Get locale file name, using fallback mechanism
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $locale
      * @param string $file
      * @return string
      */
-    public function getLocaleFile($area, \Magento\Core\Model\Theme $themeModel, $locale, $file)
+    public function getLocaleFile($area, \Magento\View\Design\ThemeInterface $themeModel, $locale, $file)
     {
         $params = array('area' => $area, 'theme' => $themeModel, 'locale' => $locale);
         return $this->_resolveFile($this->_getLocaleFileRule(), $file, $params);
@@ -105,13 +105,13 @@ public function getLocaleFile($area, \Magento\Core\Model\Theme $themeModel, $loc
      * Get theme file name, using fallback mechanism
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $locale
      * @param string $file
      * @param string|null $module
      * @return string
      */
-    public function getViewFile($area, \Magento\Core\Model\Theme $themeModel, $locale, $file, $module = null)
+    public function getViewFile($area, \Magento\View\Design\ThemeInterface $themeModel, $locale, $file, $module = null)
     {
         $params = array(
             'area' => $area, 'theme' => $themeModel, 'locale' => $locale, 'namespace' => null, 'module' => null
diff --git a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/Fallback/CachingProxy.php b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/Fallback/CachingProxy.php
index dc14008ca668e..f46081438d636 100644
--- a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/Fallback/CachingProxy.php
+++ b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/Fallback/CachingProxy.php
@@ -125,12 +125,12 @@ public function __destruct()
      * Proxy to \Magento\Core\Model\Design\FileResolution\Strategy\Fallback::getFile()
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $file
      * @param string|null $module
      * @return string
      */
-    public function getFile($area, \Magento\Core\Model\Theme $themeModel, $file, $module = null)
+    public function getFile($area, \Magento\View\Design\ThemeInterface $themeModel, $file, $module = null)
     {
         $result = $this->_getFromMap('file', $area, $themeModel, null, $module, $file);
         if (!$result) {
@@ -144,12 +144,12 @@ public function getFile($area, \Magento\Core\Model\Theme $themeModel, $file, $mo
      * Proxy to \Magento\Core\Model\Design\FileResolution\Strategy\Fallback::getLocaleFile()
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $locale
      * @param string $file
      * @return string
      */
-    public function getLocaleFile($area, \Magento\Core\Model\Theme $themeModel, $locale, $file)
+    public function getLocaleFile($area, \Magento\View\Design\ThemeInterface $themeModel, $locale, $file)
     {
         $result = $this->_getFromMap('locale', $area, $themeModel, $locale, null, $file);
         if (!$result) {
@@ -163,13 +163,13 @@ public function getLocaleFile($area, \Magento\Core\Model\Theme $themeModel, $loc
      * Proxy to \Magento\Core\Model\Design\FileResolution\Strategy\Fallback::getViewFile()
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $locale
      * @param string $file
      * @param string|null $module
      * @return string
      */
-    public function getViewFile($area, \Magento\Core\Model\Theme $themeModel, $locale, $file, $module = null)
+    public function getViewFile($area, \Magento\View\Design\ThemeInterface $themeModel, $locale, $file, $module = null)
     {
         $result = $this->_getFromMap('view', $area, $themeModel, $locale, $module, $file);
         if (!$result) {
@@ -184,14 +184,15 @@ public function getViewFile($area, \Magento\Core\Model\Theme $themeModel, $local
      *
      * @param string $fileType
      * @param string $area
-     * @param \Magento\Core\Model\Theme $theme
+     * @param \Magento\View\Design\ThemeInterface $theme
      * @param string|null $locale
      * @param string|null $module
      * @param string $file
      * @return null|string
      */
-    protected function _getFromMap($fileType, $area, \Magento\Core\Model\Theme $theme, $locale, $module, $file)
-    {
+    protected function _getFromMap(
+        $fileType, $area, \Magento\View\Design\ThemeInterface $theme, $locale, $module, $file
+    ) {
         $sectionKey = $this->_loadSection($area, $theme, $locale);
         $fileKey = "$fileType|$file|$module";
         if (isset($this->_sections[$sectionKey]['data'][$fileKey])) {
@@ -209,15 +210,16 @@ protected function _getFromMap($fileType, $area, \Magento\Core\Model\Theme $them
      *
      * @param string $fileType
      * @param string $area
-     * @param \Magento\Core\Model\Theme $theme
+     * @param \Magento\View\Design\ThemeInterface $theme
      * @param string|null $locale
      * @param string|null $module
      * @param string $file
      * @param string $filePath
      * @throws \Magento\Exception
      */
-    protected function _setToMap($fileType, $area, \Magento\Core\Model\Theme $theme, $locale, $module, $file, $filePath)
-    {
+    protected function _setToMap(
+        $fileType, $area, \Magento\View\Design\ThemeInterface $theme, $locale, $module, $file, $filePath
+    ) {
         $pattern = $this->_baseDir . DIRECTORY_SEPARATOR;
         if (0 !== strpos($filePath, $pattern)) {
             throw new \Magento\Exception(
@@ -236,11 +238,11 @@ protected function _setToMap($fileType, $area, \Magento\Core\Model\Theme $theme,
      * Compose section file name
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string|null $locale
      * @return string
      */
-    protected function _getSectionFile($area, \Magento\Core\Model\Theme $themeModel, $locale)
+    protected function _getSectionFile($area, \Magento\View\Design\ThemeInterface $themeModel, $locale)
     {
         $theme = $themeModel->getId() ?: md5($themeModel->getThemePath());
         return "{$area}_{$theme}_{$locale}.ser";
@@ -250,11 +252,11 @@ protected function _getSectionFile($area, \Magento\Core\Model\Theme $themeModel,
      * Load section and return its key
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string|null $locale
      * @return string
      */
-    protected function _loadSection($area, \Magento\Core\Model\Theme $themeModel, $locale)
+    protected function _loadSection($area, \Magento\View\Design\ThemeInterface $themeModel, $locale)
     {
         $sectionFile = $this->_getSectionFile($area, $themeModel, $locale);
         if (!isset($this->_sections[$sectionFile])) {
@@ -274,15 +276,15 @@ protected function _loadSection($area, \Magento\Core\Model\Theme $themeModel, $l
      * Set file path to map.
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $locale
      * @param string|null $module
      * @param string $file
      * @param string $newFilePath
      * @return \Magento\Core\Model\Design\FileResolution\Strategy\Fallback\CachingProxy
      */
-    public function setViewFilePathToMap($area, \Magento\Core\Model\Theme $themeModel, $locale, $module, $file,
-        $newFilePath
+    public function setViewFilePathToMap(
+        $area, \Magento\View\Design\ThemeInterface $themeModel, $locale, $module, $file, $newFilePath
     ) {
         $this->_setToMap('view', $area, $themeModel, $locale, $module, $file, $newFilePath);
         return $this;
diff --git a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/FileInterface.php b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/FileInterface.php
index 51df254a1bcc8..d78cc5176789b 100644
--- a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/FileInterface.php
+++ b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/FileInterface.php
@@ -35,10 +35,10 @@ interface FileInterface
      * Get a usual file path (e.g. template)
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $file
      * @param string|null $module
      * @return string
      */
-    public function getFile($area, \Magento\Core\Model\Theme $themeModel, $file, $module = null);
+    public function getFile($area, \Magento\View\Design\ThemeInterface $themeModel, $file, $module = null);
 }
diff --git a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/LocaleInterface.php b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/LocaleInterface.php
index ec05f67229c80..37e5e4376828d 100644
--- a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/LocaleInterface.php
+++ b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/LocaleInterface.php
@@ -35,10 +35,10 @@ interface LocaleInterface
      * Get locale file name (e.g. file with translations)
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $locale
      * @param string $file
      * @return string
      */
-    public function getLocaleFile($area, \Magento\Core\Model\Theme $themeModel, $locale, $file);
+    public function getLocaleFile($area, \Magento\View\Design\ThemeInterface $themeModel, $locale, $file);
 }
diff --git a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/View/NotifiableInterface.php b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/View/NotifiableInterface.php
index 041ae1fbbe32c..b0905dacd2852 100644
--- a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/View/NotifiableInterface.php
+++ b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/View/NotifiableInterface.php
@@ -36,14 +36,14 @@ interface NotifiableInterface
      * new location.
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $locale
      * @param string|null $module
      * @param string $file
      * @param string $newFilePath
      * @return \Magento\Core\Model\Design\FileResolution\Strategy\Fallback\CachingProxy
      */
-    public function setViewFilePathToMap($area, \Magento\Core\Model\Theme $themeModel, $locale, $module, $file,
-        $newFilePath
+    public function setViewFilePathToMap(
+        $area, \Magento\View\Design\ThemeInterface $themeModel, $locale, $module, $file, $newFilePath
     );
 }
diff --git a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/ViewInterface.php b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/ViewInterface.php
index 7b51fe58fb586..5717bd25e6a44 100644
--- a/app/code/Magento/Core/Model/Design/FileResolution/Strategy/ViewInterface.php
+++ b/app/code/Magento/Core/Model/Design/FileResolution/Strategy/ViewInterface.php
@@ -35,11 +35,11 @@ interface ViewInterface
      * Get theme file name (e.g. a javascript file)
      *
      * @param string $area
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @param string $locale
      * @param string $file
      * @param string|null $module
      * @return string
      */
-    public function getViewFile($area, \Magento\Core\Model\Theme $themeModel, $locale, $file, $module = null);
+    public function getViewFile($area, \Magento\View\Design\ThemeInterface $themeModel, $locale, $file, $module = null);
 }
diff --git a/app/code/Magento/Core/Model/Design/FileResolution/StrategyPool.php b/app/code/Magento/Core/Model/Design/FileResolution/StrategyPool.php
index cd9fae0be2158..0f18e0351eff8 100644
--- a/app/code/Magento/Core/Model/Design/FileResolution/StrategyPool.php
+++ b/app/code/Magento/Core/Model/Design/FileResolution/StrategyPool.php
@@ -52,7 +52,7 @@ class StrategyPool
     protected $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dirs;
 
@@ -88,14 +88,14 @@ class StrategyPool
 
     /**
      * @param \Magento\ObjectManager $objectManager
-     * @param \Magento\Core\Model\App\State $appState
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\State $appState
+     * @param \Magento\App\Dir $dirs
      * @param \Magento\Filesystem $filesystem
      */
     public function __construct(
         \Magento\ObjectManager $objectManager,
-        \Magento\Core\Model\App\State $appState,
-        \Magento\Core\Model\Dir $dirs,
+        \Magento\App\State $appState,
+        \Magento\App\Dir $dirs,
         \Magento\Filesystem $filesystem
     ) {
         $this->_objectManager = $objectManager;
@@ -164,11 +164,11 @@ protected function _getStrategy($fileType, $skipProxy = false)
     protected function _getStrategyClass($fileType, $skipProxy = false)
     {
         $mode = $this->_appState->getMode();
-        if ($mode == \Magento\Core\Model\App\State::MODE_PRODUCTION) {
+        if ($mode == \Magento\App\State::MODE_PRODUCTION) {
             $strategyClasses = $this->_strategies['production_mode'];
-        } else if (($mode == \Magento\Core\Model\App\State::MODE_DEVELOPER) || $skipProxy) {
+        } else if (($mode == \Magento\App\State::MODE_DEVELOPER) || $skipProxy) {
             $strategyClasses = $this->_strategies['full_check'];
-        } else if ($mode == \Magento\Core\Model\App\State::MODE_DEFAULT) {
+        } else if ($mode == \Magento\App\State::MODE_DEFAULT) {
             $strategyClasses = $this->_strategies['caching_map'];
         } else {
             throw new \Magento\Core\Exception("Unknown mode to choose strategy: {$mode}");
@@ -186,11 +186,11 @@ protected function _createStrategy($className)
     {
         switch ($className) {
             case 'Magento\Core\Model\Design\FileResolution\Strategy\Fallback\CachingProxy':
-                $mapDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DIRECTORY_SEPARATOR
+                $mapDir = $this->_dirs->getDir(\Magento\App\Dir::VAR_DIR) . DIRECTORY_SEPARATOR
                     . self::FALLBACK_MAP_DIR;
                 $arguments = array(
                     'mapDir' => str_replace('/', DIRECTORY_SEPARATOR, $mapDir),
-                    'baseDir' => $this->_dirs->getDir(\Magento\Core\Model\Dir::ROOT),
+                    'baseDir' => $this->_dirs->getDir(\Magento\App\Dir::ROOT),
                 );
                 break;
             default:
diff --git a/app/code/Magento/Core/Model/Email.php b/app/code/Magento/Core/Model/Email.php
index 90e4994818353..bbad0794757d6 100644
--- a/app/code/Magento/Core/Model/Email.php
+++ b/app/code/Magento/Core/Model/Email.php
@@ -53,18 +53,18 @@ class Email extends \Magento\Object
     /**
      * Layout factory
      *
-     * @var \Magento\Core\Model\LayoutFactory
+     * @var \Magento\View\LayoutFactory
      */
     protected $_layoutFactory;
 
     /**
-     * @param \Magento\Core\Model\Store\Config $coreStoreConfig
-     * @param \Magento\Core\Model\LayoutFactory $layoutFactory
+     * @param Store\Config $coreStoreConfig
+     * @param \Magento\View\LayoutFactory $layoutFactory
      * @param array $data
      */
     public function __construct(
         \Magento\Core\Model\Store\Config $coreStoreConfig,
-        \Magento\Core\Model\LayoutFactory $layoutFactory,
+        \Magento\View\LayoutFactory $layoutFactory,
         array $data = array()
     ) {
         $this->_layoutFactory = $layoutFactory;
diff --git a/app/code/Magento/Core/Model/Email/Template.php b/app/code/Magento/Core/Model/Email/Template.php
index 787471494f140..183450178ab1e 100644
--- a/app/code/Magento/Core/Model/Email/Template.php
+++ b/app/code/Magento/Core/Model/Email/Template.php
@@ -132,7 +132,7 @@ class Template extends \Magento\Core\Model\Template
     protected $_emailFilterFactory;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dir;
 
@@ -143,12 +143,12 @@ class Template extends \Magento\Core\Model\Template
      * @param \Magento\Filesystem $filesystem
      * @param \Magento\Core\Model\View\Url $viewUrl
      * @param \Magento\Core\Model\View\FileSystem $viewFileSystem
-     * @param \Magento\Core\Model\View\DesignInterface $design
+     * @param \Magento\View\DesignInterface $design
      * @param \Magento\Core\Model\Store\ConfigInterface $coreStoreConfig
      * @param \Magento\Core\Model\ConfigInterface $coreConfig
      * @param \Magento\Core\Model\Email\Template\FilterFactory $emailFilterFactory
      * @param \Magento\Core\Model\StoreManagerInterface $storeManager
-     * @param \Magento\Core\Model\Dir $dir
+     * @param \Magento\App\Dir $dir
      * @param \Magento\Core\Model\Email\Template\Config $emailConfig
      * @param array $data
      *
@@ -161,12 +161,12 @@ public function __construct(
         \Magento\Filesystem $filesystem,
         \Magento\Core\Model\View\Url $viewUrl,
         \Magento\Core\Model\View\FileSystem $viewFileSystem,
-        \Magento\Core\Model\View\DesignInterface $design,
+        \Magento\View\DesignInterface $design,
         \Magento\Core\Model\Store\ConfigInterface $coreStoreConfig,
         \Magento\Core\Model\ConfigInterface $coreConfig,
         \Magento\Core\Model\Email\Template\FilterFactory $emailFilterFactory,
         \Magento\Core\Model\StoreManagerInterface $storeManager,
-        \Magento\Core\Model\Dir $dir,
+        \Magento\App\Dir $dir,
         \Magento\Core\Model\Email\Template\Config $emailConfig,
         array $data = array()
     ) {
diff --git a/app/code/Magento/Core/Model/Email/Template/Config/Reader.php b/app/code/Magento/Core/Model/Email/Template/Config/Reader.php
index 6bd96655e1cbb..0fd11cdb39447 100644
--- a/app/code/Magento/Core/Model/Email/Template/Config/Reader.php
+++ b/app/code/Magento/Core/Model/Email/Template/Config/Reader.php
@@ -28,7 +28,7 @@
 class Reader extends \Magento\Config\Reader\Filesystem
 {
     /**
-     * @var \Magento\Core\Model\Module\Dir\ReverseResolver
+     * @var \Magento\App\Module\Dir\ReverseResolver
      */
     private $_moduleDirResolver;
 
@@ -37,14 +37,14 @@ class Reader extends \Magento\Config\Reader\Filesystem
      * @param \Magento\Core\Model\Email\Template\Config\Converter $converter
      * @param \Magento\Core\Model\Email\Template\Config\SchemaLocator $schemaLocator
      * @param \Magento\Config\ValidationStateInterface $validationState
-     * @param \Magento\Core\Model\Module\Dir\ReverseResolver $moduleDirResolver
+     * @param \Magento\App\Module\Dir\ReverseResolver $moduleDirResolver
      */
     public function __construct(
         \Magento\Config\FileResolverInterface $fileResolver,
         \Magento\Core\Model\Email\Template\Config\Converter $converter,
         \Magento\Core\Model\Email\Template\Config\SchemaLocator $schemaLocator,
         \Magento\Config\ValidationStateInterface $validationState,
-        \Magento\Core\Model\Module\Dir\ReverseResolver $moduleDirResolver
+        \Magento\App\Module\Dir\ReverseResolver $moduleDirResolver
     ) {
         $fileName = 'email_templates.xml';
         $idAttributes = array(
diff --git a/app/code/Magento/Core/Model/Email/Template/Filter.php b/app/code/Magento/Core/Model/Email/Template/Filter.php
index 048e80c35632b..51baf6ce46831 100644
--- a/app/code/Magento/Core/Model/Email/Template/Filter.php
+++ b/app/code/Magento/Core/Model/Email/Template/Filter.php
@@ -92,12 +92,12 @@ class Filter extends \Magento\Filter\Template
     protected $_storeManager;
 
     /**
-     * @var \Magento\Core\Model\Layout
+     * @var \Magento\View\LayoutInterface
      */
     protected $_layout;
 
     /**
-     * @var \Magento\Core\Model\LayoutFactory
+     * @var \Magento\View\LayoutFactory
      */
     protected $_layoutFactory;
 
@@ -115,8 +115,8 @@ class Filter extends \Magento\Filter\Template
      * @param \Magento\Core\Model\Store\Config $coreStoreConfig
      * @param \Magento\Core\Model\VariableFactory $coreVariableFactory
      * @param \Magento\Core\Model\StoreManager $storeManager
-     * @param \Magento\Core\Model\Layout $layout
-     * @param \Magento\Core\Model\LayoutFactory $layoutFactory
+     * @param \Magento\View\LayoutInterface $layout
+     * @param \Magento\View\LayoutFactory $layoutFactory
      */
     public function __construct(
         \Magento\Core\Model\Logger $logger,
@@ -125,8 +125,8 @@ public function __construct(
         \Magento\Core\Model\Store\Config $coreStoreConfig,
         \Magento\Core\Model\VariableFactory $coreVariableFactory,
         \Magento\Core\Model\StoreManager $storeManager,
-        \Magento\Core\Model\Layout $layout,
-        \Magento\Core\Model\LayoutFactory $layoutFactory
+        \Magento\View\LayoutInterface $layout,
+        \Magento\View\LayoutFactory $layoutFactory
     ) {
         $this->_coreData = $coreData;
         $this->_viewUrl = $viewUrl;
@@ -269,7 +269,7 @@ public function layoutDirective($construction)
         if (isset($params['area'])) {
             $layoutParams['area'] = $params['area'];
         }
-        /** @var $layout \Magento\Core\Model\Layout */
+        /** @var $layout \Magento\View\LayoutInterface */
         $layout = $this->_layoutFactory->create($layoutParams);
         $layout->getUpdate()->addHandle($params['handle'])
             ->load();
@@ -298,7 +298,6 @@ public function layoutDirective($construction)
             $layout->addOutputElement($rootBlock->getNameInLayout());
         }
 
-        $layout->setDirectOutput(false);
         $result = $layout->getOutput();
         $layout->__destruct(); // To overcome bug with SimpleXML memory leak (https://bugs.php.net/bug.php?id=62468)
         return $result;
diff --git a/app/code/Magento/Core/Model/EntryPoint/Cron.php b/app/code/Magento/Core/Model/EntryPoint/Cron.php
index f8289d8e8ddaa..99faf24e5b21b 100644
--- a/app/code/Magento/Core/Model/EntryPoint/Cron.php
+++ b/app/code/Magento/Core/Model/EntryPoint/Cron.php
@@ -35,10 +35,10 @@ protected function _processRequest()
         $app->setUseSessionInUrl(false);
         $app->requireInstalledInstance();
 
-        /** @var $eventManager \Magento\Core\Model\Event\Manager */
-        $eventManager = $this->_objectManager->get('Magento\Core\Model\Event\Manager');
-        /** @var \Magento\Core\Model\Config\Scope $configScope */
-        $configScope = $this->_objectManager->get('Magento\Core\Model\Config\Scope');
+        /** @var $eventManager \Magento\Event\ManagerInterface */
+        $eventManager = $this->_objectManager->get('Magento\Event\ManagerInterface');
+        /** @var \Magento\Config\Scope $configScope */
+        $configScope = $this->_objectManager->get('Magento\Config\ScopeInterface');
         $configScope->setCurrentScope('crontab');
         $eventManager->dispatch('default');
     }
diff --git a/app/code/Magento/Core/Model/EntryPoint/Http.php b/app/code/Magento/Core/Model/EntryPoint/Http.php
index f7f626e22db6e..054c14c2dba87 100644
--- a/app/code/Magento/Core/Model/EntryPoint/Http.php
+++ b/app/code/Magento/Core/Model/EntryPoint/Http.php
@@ -39,8 +39,8 @@ public function processRequest()
                 'Location: ' . $this->_objectManager->get('Magento\Core\Model\StoreManager')->getStore()->getBaseUrl()
             );
         } catch (\Magento\Core\Model\Store\Exception $e) {
-            require $this->_objectManager->get('Magento\Core\Model\Dir')
-                    ->getDir(\Magento\Core\Model\Dir::PUB) . DS . 'errors' . DS . '404.php';
+            require $this->_objectManager->get('Magento\App\Dir')
+                    ->getDir(\Magento\App\Dir::PUB) . DS . 'errors' . DS . '404.php';
         } catch (\Magento\BootstrapException $e) {
             header('Content-Type: text/plain', true, 503);
             echo $e->getMessage();
@@ -54,9 +54,14 @@ public function processRequest()
      */
     protected function _processRequest()
     {
-        $request = $this->_objectManager->get('Magento\Core\Controller\Request\Http');
-        $response = $this->_objectManager->get('Magento\Core\Controller\Response\Http');
-        $handler = $this->_objectManager->get('Magento\HTTP\Handler\Composite');
-        $handler->handle($request, $response);
+        $request = $this->_objectManager->get('Magento\App\RequestInterface');
+        $areas = $this->_objectManager->get('Magento\App\AreaList');
+        $areaCode = $areas->getCodeByFrontName($request->getFrontName());
+        $this->_objectManager->get('Magento\Config\Scope')->setCurrentScope($areaCode);
+        $this->_objectManager->configure(
+            $this->_objectManager->get('Magento\Core\Model\ObjectManager\ConfigLoader')->load($areaCode)
+        );
+        $frontController = $this->_objectManager->get('Magento\App\FrontControllerInterface');
+        $frontController->dispatch($request);
     }
 }
diff --git a/app/code/Magento/Core/Model/EntryPoint/Media.php b/app/code/Magento/Core/Model/EntryPoint/Media.php
index c74eb84749c2f..740b4cce7e279 100644
--- a/app/code/Magento/Core/Model/EntryPoint/Media.php
+++ b/app/code/Magento/Core/Model/EntryPoint/Media.php
@@ -110,7 +110,7 @@ public function __construct(
     protected function _processRequest()
     {
         try {
-            $appState = $this->_objectManager->get('Magento\Core\Model\App\State');
+            $appState = $this->_objectManager->get('Magento\App\State');
             if (!$appState->isInstalled()) {
                 $this->_response->sendNotFound();
                 return;
diff --git a/app/code/Magento/Core/Model/Event/Config/SchemaLocator.php b/app/code/Magento/Core/Model/Event/Config/SchemaLocator.php
deleted file mode 100644
index 957e11ad964a2..0000000000000
--- a/app/code/Magento/Core/Model/Event/Config/SchemaLocator.php
+++ /dev/null
@@ -1,71 +0,0 @@
-_schema = $moduleReader->getModuleDir('etc', 'Magento_Core') . DIRECTORY_SEPARATOR . 'events.xsd';
-    }
-
-    /**
-     * Get path to merged config schema
-     *
-     * @return string|null
-     */
-    public function getSchema()
-    {
-        return $this->_schema;
-    }
-
-    /**
-     * Get path to pre file validation schema
-     *
-     * @return string|null
-     */
-    public function getPerFileSchema()
-    {
-        return $this->_perFileSchema;
-    }
-}
diff --git a/app/code/Magento/Core/Model/File/Storage.php b/app/code/Magento/Core/Model/File/Storage.php
index e8d8fb4dd5593..f9e3c77f5f955 100644
--- a/app/code/Magento/Core/Model/File/Storage.php
+++ b/app/code/Magento/Core/Model/File/Storage.php
@@ -97,7 +97,7 @@ class Storage extends \Magento\Core\Model\AbstractModel
     protected $_databaseFactory;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dir;
 
@@ -110,7 +110,7 @@ class Storage extends \Magento\Core\Model\AbstractModel
      * @param \Magento\Core\Model\File\Storage\Flag $fileFlag
      * @param \Magento\Core\Model\File\Storage\FileFactory $fileFactory
      * @param \Magento\Core\Model\File\Storage\DatabaseFactory $databaseFactory
-     * @param \Magento\Core\Model\Dir $dir
+     * @param \Magento\App\Dir $dir
      * @param \Magento\Core\Model\Resource\AbstractResource $resource
      * @param \Magento\Data\Collection\Db $resourceCollection
      * @param array $data
@@ -124,7 +124,7 @@ public function __construct(
         \Magento\Core\Model\File\Storage\Flag $fileFlag,
         \Magento\Core\Model\File\Storage\FileFactory $fileFactory,
         \Magento\Core\Model\File\Storage\DatabaseFactory $databaseFactory,
-        \Magento\Core\Model\Dir $dir,
+        \Magento\App\Dir $dir,
         \Magento\Core\Model\Resource\AbstractResource $resource = null,
         \Magento\Data\Collection\Db $resourceCollection = null,
         array $data = array()
diff --git a/app/code/Magento/Core/Model/Layout.php b/app/code/Magento/Core/Model/Layout.php
index 392352d6a01a6..559ae3853da49 100644
--- a/app/code/Magento/Core/Model/Layout.php
+++ b/app/code/Magento/Core/Model/Layout.php
@@ -41,7 +41,7 @@
  * @SuppressWarnings(PHPMD.TooManyMethods)
  * @SuppressWarnings(PHPMD.ExcessiveParameterList)
  */
-class Layout extends \Magento\Simplexml\Config
+class Layout extends \Magento\Simplexml\Config implements \Magento\View\LayoutInterface
 {
     /**#@+
      * Supported layout directives
@@ -97,14 +97,14 @@ class Layout extends \Magento\Simplexml\Config
     const SCHEDULED_STRUCTURE_INDEX_LAYOUT_ELEMENT = 5;
 
     /**
-     * @var \Magento\Core\Model\View\DesignInterface
+     * @var \Magento\View\DesignInterface
      */
     protected $_design;
 
     /**
      * Layout Update module
      *
-     * @var \Magento\Core\Model\Layout\Merge
+     * @var \Magento\View\Layout\ProcessorInterface
      */
     protected $_update;
 
@@ -141,13 +141,6 @@ class Layout extends \Magento\Simplexml\Config
      */
     protected $_helpers = array();
 
-    /**
-     * Flag to have blocks' output go directly to browser as oppose to return result
-     *
-     * @var boolean
-     */
-    protected $_directOutput = false;
-
     /**
      * A variable for transporting output into observer during rendering
      *
@@ -217,7 +210,7 @@ class Layout extends \Magento\Simplexml\Config
     /**
      * Core event manager proxy
      *
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager = null;
 
@@ -234,9 +227,9 @@ class Layout extends \Magento\Simplexml\Config
     protected $_logger;
 
     /**
-     * @var \Magento\Core\Model\Layout\MergeFactory
+     * @var \Magento\View\Layout\ProcessorFactory
      */
-    protected $_mergeFactory;
+    protected $_processorFactory;
 
     /**
      * @var \Magento\Core\Model\Resource\Theme\CollectionFactory
@@ -244,36 +237,36 @@ class Layout extends \Magento\Simplexml\Config
     protected $_themeFactory;
 
     /**
-     * @param \Magento\Core\Model\Layout\MergeFactory $mergeFactory
-     * @param \Magento\Core\Model\Resource\Theme\CollectionFactory $themeFactory
-     * @param \Magento\Core\Model\Logger $logger
-     * @param \Magento\Core\Model\Event\Manager $eventManager
-     * @param \Magento\Core\Model\Factory\Helper $factoryHelper
+     * @param \Magento\View\Layout\ProcessorFactory $processorFactory
+     * @param Resource\Theme\CollectionFactory $themeFactory
+     * @param Logger $logger
+     * @param \Magento\Event\ManagerInterface $eventManager
+     * @param Factory\Helper $factoryHelper
      * @param \Magento\Core\Helper\Data $coreData
-     * @param \Magento\Core\Model\View\DesignInterface $design
-     * @param \Magento\Core\Model\BlockFactory $blockFactory
+     * @param \Magento\View\DesignInterface $design
+     * @param BlockFactory $blockFactory
      * @param \Magento\Data\Structure $structure
-     * @param \Magento\Core\Model\Layout\Argument\Processor $argumentProcessor
-     * @param \Magento\Core\Model\Layout\ScheduledStructure $scheduledStructure
-     * @param \Magento\Core\Model\DataService\Graph $dataServiceGraph
-     * @param \Magento\Core\Model\Store\Config $coreStoreConfig
-     * @param $area
+     * @param Layout\Argument\Processor $argumentProcessor
+     * @param Layout\ScheduledStructure $scheduledStructure
+     * @param DataService\Graph $dataServiceGraph
+     * @param Store\Config $coreStoreConfig
+     * @param string $area
      */
     public function __construct(
-        \Magento\Core\Model\Layout\MergeFactory $mergeFactory,
+        \Magento\View\Layout\ProcessorFactory $processorFactory,
         \Magento\Core\Model\Resource\Theme\CollectionFactory $themeFactory,
         \Magento\Core\Model\Logger $logger,
-        \Magento\Core\Model\Event\Manager $eventManager,
+        \Magento\Event\ManagerInterface $eventManager,
         \Magento\Core\Model\Factory\Helper $factoryHelper,
         \Magento\Core\Helper\Data $coreData,
-        \Magento\Core\Model\View\DesignInterface $design,
+        \Magento\View\DesignInterface $design,
         \Magento\Core\Model\BlockFactory $blockFactory,
         \Magento\Data\Structure $structure,
         \Magento\Core\Model\Layout\Argument\Processor $argumentProcessor,
         \Magento\Core\Model\Layout\ScheduledStructure $scheduledStructure,
         \Magento\Core\Model\DataService\Graph $dataServiceGraph,
         \Magento\Core\Model\Store\Config $coreStoreConfig,
-        $area = \Magento\Core\Model\View\DesignInterface::DEFAULT_AREA
+        $area = \Magento\View\DesignInterface::DEFAULT_AREA
     ) {
         $this->_eventManager = $eventManager;
         $this->_factoryHelper = $factoryHelper;
@@ -284,12 +277,12 @@ public function __construct(
         $this->_area = $area;
         $this->_structure = $structure;
         $this->_argumentProcessor = $argumentProcessor;
-        $this->_elementClass = 'Magento\Core\Model\Layout\Element';
+        $this->_elementClass = 'Magento\View\Layout\Element';
         $this->setXml(simplexml_load_string('', $this->_elementClass));
         $this->_renderingOutput = new \Magento\Object;
         $this->_scheduledStructure = $scheduledStructure;
         $this->_dataServiceGraph = $dataServiceGraph;
-        $this->_mergeFactory = $mergeFactory;
+        $this->_processorFactory = $processorFactory;
         $this->_themeFactory = $themeFactory;
         $this->_logger = $logger;
     }
@@ -313,13 +306,13 @@ public function __destruct()
     /**
      * Retrieve the layout update instance
      *
-     * @return \Magento\Core\Model\Layout\Merge
+     * @return \Magento\View\Layout\ProcessorInterface
      */
     public function getUpdate()
     {
         if (!$this->_update) {
             $theme = $this->_getThemeInstance($this->getArea());
-            $this->_update = $this->_mergeFactory->create(array('theme' => $theme));
+            $this->_update = $this->_processorFactory->create(array('theme' => $theme));
         }
         return $this->_update;
     }
@@ -367,28 +360,6 @@ public function setArea($areaCode)
         $this->_area = $areaCode;
     }
 
-    /**
-     * Declaring layout direct output flag
-     *
-     * @param   bool $flag
-     * @return  \Magento\Core\Model\Layout
-     */
-    public function setDirectOutput($flag)
-    {
-        $this->_directOutput = $flag;
-        return $this;
-    }
-
-    /**
-     * Retrieve direct output flag
-     *
-     * @return bool
-     */
-    public function isDirectOutput()
-    {
-        return $this->_directOutput;
-    }
-
     /**
      * Layout xml generation
      *
@@ -496,13 +467,13 @@ protected function _moveElementInStructure($element)
     /**
      * Traverse through all elements of specified XML-node and schedule structural elements of it
      *
-     * @param \Magento\Core\Model\Layout\Element $parent
+     * @param \Magento\View\Layout\Element $parent
      * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _readStructure($parent)
     {
         foreach ($parent as $node) {
-            /** @var $node \Magento\Core\Model\Layout\Element */
+            /** @var $node \Magento\View\Layout\Element */
             switch ($node->getName()) {
                 case self::TYPE_CONTAINER:
                     $this->_scheduleStructure($node, $parent);
@@ -558,7 +529,7 @@ protected function _readStructure($parent)
     /**
      * Grab information about data service from the node
      *
-     * @param \Magento\Core\Model\Layout\Element $node
+     * @param \Magento\View\Layout\Element $node
      * @return \Magento\Core\Model\Layout
      */
     protected function _initServiceCalls($node)
@@ -584,9 +555,9 @@ protected function _initServiceCalls($node)
     /**
      * Merge Container attributes
      *
-     * @param \Magento\Core\Model\Layout\Element $node
+     * @param \Magento\View\Layout\Element $node
      */
-    protected function _mergeContainerAttributes(\Magento\Core\Model\Layout\Element $node)
+    protected function _mergeContainerAttributes(\Magento\View\Layout\Element $node)
     {
         $containerName = $node->getAttribute('name');
         $element = $this->_scheduledStructure->getStructureElement($containerName, array());
@@ -628,14 +599,14 @@ protected function _mergeArguments(array $element, array $arguments)
     /**
      * Parse argument nodes and create prepared array of items
      *
-     * @param \Magento\Core\Model\Layout\Element $node
+     * @param \Magento\View\Layout\Element $node
      * @return array
      */
-    protected function _parseArguments(\Magento\Core\Model\Layout\Element $node)
+    protected function _parseArguments(\Magento\View\Layout\Element $node)
     {
         $arguments = array();
         foreach ($node->xpath('argument') as $argument) {
-            /** @var $argument \Magento\Core\Model\Layout\Element */
+            /** @var $argument \Magento\View\Layout\Element */
             $argumentName = (string)$argument['name'];
             $arguments[$argumentName] = $this->_argumentProcessor->parse($argument);
         }
@@ -660,7 +631,7 @@ protected function _processArguments(array $arguments)
     /**
      * Schedule structural changes for move directive
      *
-     * @param \Magento\Core\Model\Layout\Element $node
+     * @param \Magento\View\Layout\Element $node
      * @throws \Magento\Exception
      * @return \Magento\Core\Model\Layout
      */
@@ -684,8 +655,8 @@ protected function _scheduleMove($node)
     /**
      * Populate queue for generating structural elements
      *
-     * @param \Magento\Core\Model\Layout\Element $node
-     * @param \Magento\Core\Model\Layout\Element $parent
+     * @param \Magento\View\Layout\Element $node
+     * @param \Magento\View\Layout\Element $parent
      * @see _scheduleElement() where the _scheduledStructure is used
      */
     protected function _scheduleStructure($node, $parent)
@@ -740,7 +711,7 @@ protected function _scheduleStructure($node, $parent)
     /**
      * Analyze "before" and "after" information in the node and return sibling name and whether "after" or "before"
      *
-     * @param \Magento\Core\Model\Layout\Element $node
+     * @param \Magento\View\Layout\Element $node
      * @return array
      */
     protected function _beforeAfterToSibling($node)
@@ -971,8 +942,8 @@ protected function _generateContainer($name, $label = '', array $options)
     /**
      * Run action defined in layout update
      *
-     * @param \Magento\Core\Model\Layout\Element $node
-     * @param \Magento\Core\Model\Layout\Element $parent
+     * @param \Magento\View\Layout\Element $node
+     * @param \Magento\View\Layout\Element $parent
      */
     protected function _generateAction($node, $parent)
     {
diff --git a/app/code/Magento/Core/Model/Layout/Argument/AbstractHandler.php b/app/code/Magento/Core/Model/Layout/Argument/AbstractHandler.php
index 1bd628e3de567..4c404907103a3 100644
--- a/app/code/Magento/Core/Model/Layout/Argument/AbstractHandler.php
+++ b/app/code/Magento/Core/Model/Layout/Argument/AbstractHandler.php
@@ -44,10 +44,10 @@ abstract class AbstractHandler
     /**
      * Retrieve value from argument
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return mixed|null
      */
-    protected function _getArgumentValue(\Magento\Core\Model\Layout\Element $argument)
+    protected function _getArgumentValue(\Magento\View\Layout\Element $argument)
     {
         if ($this->_isUpdater($argument)) {
             return null;
@@ -63,10 +63,10 @@ protected function _getArgumentValue(\Magento\Core\Model\Layout\Element $argumen
     /**
      * Check whether updater used and value not overwriten
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return string
      */
-    protected function _isUpdater(\Magento\Core\Model\Layout\Element $argument)
+    protected function _isUpdater(\Magento\View\Layout\Element $argument)
     {
         $updaters = $argument->xpath('./updater');
         if (!empty($updaters) && !isset($argument->value)) {
@@ -78,26 +78,26 @@ protected function _isUpdater(\Magento\Core\Model\Layout\Element $argument)
     /**
      * Retrieve xsi:type attribute value from argument
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return string
      */
-    protected function _getArgumentType(\Magento\Core\Model\Layout\Element $argument)
+    protected function _getArgumentType(\Magento\View\Layout\Element $argument)
     {
         return (string)$argument->attributes('xsi', true)->type;
     }
 
     /**
      * Parse argument node
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return array
      */
-    public function parse(\Magento\Core\Model\Layout\Element $argument)
+    public function parse(\Magento\View\Layout\Element $argument)
     {
         $result = array();
         $updaters = array();
         $result['type'] = $this->_getArgumentType($argument);
         foreach ($argument->xpath('./updater') as $updaterNode) {
-            /** @var $updaterNode \Magento\Core\Model\Layout\Element */
+            /** @var $updaterNode \Magento\View\Layout\Element */
             $updaters[uniqid() . '_' . mt_rand()] = trim((string)$updaterNode);
         }
 
diff --git a/app/code/Magento/Core/Model/Layout/Argument/Handler/ArrayHandler.php b/app/code/Magento/Core/Model/Layout/Argument/Handler/ArrayHandler.php
index b46e23c9c1248..89d68ef43cd07 100644
--- a/app/code/Magento/Core/Model/Layout/Argument/Handler/ArrayHandler.php
+++ b/app/code/Magento/Core/Model/Layout/Argument/Handler/ArrayHandler.php
@@ -93,17 +93,17 @@ protected function _validate(array $argument)
     /**
      * Retrive value from Array argument
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return array|null
      */
-    protected function _getArgumentValue(\Magento\Core\Model\Layout\Element $argument)
+    protected function _getArgumentValue(\Magento\View\Layout\Element $argument)
     {
         $items = $argument->xpath('item');
         if ($this->_isUpdater($argument) && empty($items)) {
             return null;
         }
         $result = array();
-        /** @var $item \Magento\Core\Model\Layout\Element */
+        /** @var $item \Magento\View\Layout\Element */
         foreach ($items as $item) {
             $itemName = (string)$item['name'];
             $itemType = $this->_getArgumentType($item);
diff --git a/app/code/Magento/Core/Model/Layout/Argument/Handler/Helper.php b/app/code/Magento/Core/Model/Layout/Argument/Handler/Helper.php
index 69c0aa775d3d1..6d89b855167e6 100644
--- a/app/code/Magento/Core/Model/Layout/Argument/Handler/Helper.php
+++ b/app/code/Magento/Core/Model/Layout/Argument/Handler/Helper.php
@@ -89,10 +89,10 @@ protected function _validate(array $argument)
     /**
      * Retrieve value from argument
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return array
      */
-    protected function _getArgumentValue(\Magento\Core\Model\Layout\Element $argument)
+    protected function _getArgumentValue(\Magento\View\Layout\Element $argument)
     {
         $value = array(
             'helperClass' => '',
diff --git a/app/code/Magento/Core/Model/Layout/Argument/Handler/Object.php b/app/code/Magento/Core/Model/Layout/Argument/Handler/Object.php
index 63e4a3ab30667..449bef65b4377 100644
--- a/app/code/Magento/Core/Model/Layout/Argument/Handler/Object.php
+++ b/app/code/Magento/Core/Model/Layout/Argument/Handler/Object.php
@@ -89,10 +89,10 @@ protected function _validate(array $argument)
     /**
      * Retrieve value from argument
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return array|null
      */
-    protected function _getArgumentValue(\Magento\Core\Model\Layout\Element $argument)
+    protected function _getArgumentValue(\Magento\View\Layout\Element $argument)
     {
         $value = parent::_getArgumentValue($argument);
         if (!isset($value)) {
diff --git a/app/code/Magento/Core/Model/Layout/Argument/Handler/Options.php b/app/code/Magento/Core/Model/Layout/Argument/Handler/Options.php
index 46b9876c33237..4005a11952b51 100644
--- a/app/code/Magento/Core/Model/Layout/Argument/Handler/Options.php
+++ b/app/code/Magento/Core/Model/Layout/Argument/Handler/Options.php
@@ -76,10 +76,10 @@ public function process(array $argument)
     }
 
     /**
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return array
      */
-    protected function _getArgumentValue(\Magento\Core\Model\Layout\Element $argument)
+    protected function _getArgumentValue(\Magento\View\Layout\Element $argument)
     {
         return array('model' => (string)$argument['model']);
     }
diff --git a/app/code/Magento/Core/Model/Layout/Argument/Handler/String.php b/app/code/Magento/Core/Model/Layout/Argument/Handler/String.php
index 830d5f665193c..a9573ee3871fe 100644
--- a/app/code/Magento/Core/Model/Layout/Argument/Handler/String.php
+++ b/app/code/Magento/Core/Model/Layout/Argument/Handler/String.php
@@ -78,10 +78,10 @@ protected function _validate(array $argument)
     /**
      * Retrieve value from argument
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return array|null
      */
-    protected function _getArgumentValue(\Magento\Core\Model\Layout\Element $argument)
+    protected function _getArgumentValue(\Magento\View\Layout\Element $argument)
     {
         $value = parent::_getArgumentValue($argument);
         if (!isset($value)) {
diff --git a/app/code/Magento/Core/Model/Layout/Argument/Handler/Url.php b/app/code/Magento/Core/Model/Layout/Argument/Handler/Url.php
index 9bb03d1ada2d6..30267e09eab15 100644
--- a/app/code/Magento/Core/Model/Layout/Argument/Handler/Url.php
+++ b/app/code/Magento/Core/Model/Layout/Argument/Handler/Url.php
@@ -36,15 +36,15 @@
 class Url extends \Magento\Core\Model\Layout\Argument\AbstractHandler
 {
     /**
-     * @var \Magento\Core\Model\UrlInterface
+     * @var \Magento\UrlInterface
      */
     protected $_urlModel;
 
     /**
      * @param \Magento\ObjectManager $objectManager
-     * @param \Magento\Core\Model\UrlInterface $urlModel
+     * @param \Magento\UrlInterface $urlModel
      */
-    public function __construct(\Magento\Core\Model\UrlInterface  $urlModel)
+    public function __construct(\Magento\UrlInterface  $urlModel)
     {
         $this->_urlModel = $urlModel;
     }
@@ -84,7 +84,7 @@ protected function _validate(array $argument)
      * @param $argument
      * @return array
      */
-    protected function _getArgumentValue(\Magento\Core\Model\Layout\Element $argument)
+    protected function _getArgumentValue(\Magento\View\Layout\Element $argument)
     {
         $result = array(
             'path' => (string)$argument['path'],
diff --git a/app/code/Magento/Core/Model/Layout/Argument/HandlerInterface.php b/app/code/Magento/Core/Model/Layout/Argument/HandlerInterface.php
index eff9601c7c121..3cdf8e7b6071c 100644
--- a/app/code/Magento/Core/Model/Layout/Argument/HandlerInterface.php
+++ b/app/code/Magento/Core/Model/Layout/Argument/HandlerInterface.php
@@ -38,10 +38,10 @@ interface HandlerInterface
     /**
      * Parse specified argument node
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return array
      */
-    public function parse(\Magento\Core\Model\Layout\Element $argument);
+    public function parse(\Magento\View\Layout\Element $argument);
 
     /**
      * Process argument value
diff --git a/app/code/Magento/Core/Model/Layout/Argument/Processor.php b/app/code/Magento/Core/Model/Layout/Argument/Processor.php
index c35a586521458..b4389dd83d647 100644
--- a/app/code/Magento/Core/Model/Layout/Argument/Processor.php
+++ b/app/code/Magento/Core/Model/Layout/Argument/Processor.php
@@ -67,11 +67,11 @@ public function __construct(
     /**
      * Parse given argument
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @throws \InvalidArgumentException
      * @return array
      */
-    public function parse(\Magento\Core\Model\Layout\Element $argument)
+    public function parse(\Magento\View\Layout\Element $argument)
     {
         $type = $this->_getArgumentType($argument);
         $handler = $this->_handlerFactory->getArgumentHandlerByType($type);
@@ -98,10 +98,10 @@ public function process(array $argument)
     /**
      * Get Argument's XSI type
      *
-     * @param \Magento\Core\Model\Layout\Element $argument
+     * @param \Magento\View\Layout\Element $argument
      * @return string
      */
-    protected function _getArgumentType(\Magento\Core\Model\Layout\Element $argument)
+    protected function _getArgumentType(\Magento\View\Layout\Element $argument)
     {
         return (string)$argument->attributes('xsi', true)->type;
     }
diff --git a/app/code/Magento/Core/Model/Layout/File.php b/app/code/Magento/Core/Model/Layout/File.php
index 39c81607e1cd7..2f61b36365a28 100644
--- a/app/code/Magento/Core/Model/Layout/File.php
+++ b/app/code/Magento/Core/Model/Layout/File.php
@@ -40,16 +40,16 @@ class File
     private $_module;
 
     /**
-     * @var \Magento\Core\Model\ThemeInterface
+     * @var \Magento\View\Design\ThemeInterface
      */
     private $_theme;
 
     /**
      * @param string $filename
      * @param string $module
-     * @param \Magento\Core\Model\ThemeInterface $theme
+     * @param \Magento\View\Design\ThemeInterface $theme
      */
-    public function __construct($filename, $module, \Magento\Core\Model\ThemeInterface $theme = null)
+    public function __construct($filename, $module, \Magento\View\Design\ThemeInterface $theme = null)
     {
         $this->_filename = $filename;
         $this->_module = $module;
@@ -89,7 +89,7 @@ public function getModule()
     /**
      * Retrieve instance of a theme a file belongs to
      *
-     * @return \Magento\Core\Model\ThemeInterface|null
+     * @return \Magento\View\Design\ThemeInterface|null
      */
     public function getTheme()
     {
diff --git a/app/code/Magento/Core/Model/Layout/File/Factory.php b/app/code/Magento/Core/Model/Layout/File/Factory.php
index 3e87e14b403eb..9bc257d742243 100644
--- a/app/code/Magento/Core/Model/Layout/File/Factory.php
+++ b/app/code/Magento/Core/Model/Layout/File/Factory.php
@@ -47,10 +47,10 @@ public function __construct(\Magento\ObjectManager $objectManager)
      *
      * @param string $filename
      * @param string $module
-     * @param \Magento\Core\Model\ThemeInterface $theme
+     * @param \Magento\View\Design\ThemeInterface $theme
      * @return \Magento\Core\Model\Layout\File
      */
-    public function create($filename, $module, \Magento\Core\Model\ThemeInterface $theme = null)
+    public function create($filename, $module, \Magento\View\Design\ThemeInterface $theme = null)
     {
         return $this->_objectManager->create(
             'Magento\Core\Model\Layout\File',
diff --git a/app/code/Magento/Core/Model/Layout/File/Source/Aggregated.php b/app/code/Magento/Core/Model/Layout/File/Source/Aggregated.php
index 897522f23c593..89c4ad29fe27e 100644
--- a/app/code/Magento/Core/Model/Layout/File/Source/Aggregated.php
+++ b/app/code/Magento/Core/Model/Layout/File/Source/Aggregated.php
@@ -80,7 +80,7 @@ public function __construct(
      *
      * {@inheritdoc}
      */
-    public function getFiles(\Magento\Core\Model\ThemeInterface $theme)
+    public function getFiles(\Magento\View\Design\ThemeInterface $theme)
     {
         $list = $this->_fileListFactory->create();
         $list->add($this->_baseFiles->getFiles($theme));
@@ -95,10 +95,10 @@ public function getFiles(\Magento\Core\Model\ThemeInterface $theme)
     /**
      * Return the full theme inheritance sequence, from the root theme till a specified one
      *
-     * @param \Magento\Core\Model\ThemeInterface $theme
-     * @return \Magento\Core\Model\ThemeInterface[] Format: array([, ..., ,] )
+     * @param \Magento\View\Design\ThemeInterface $theme
+     * @return \Magento\View\Design\ThemeInterface[] Format: array([, ..., ,] )
      */
-    protected function _getInheritedThemes(\Magento\Core\Model\ThemeInterface $theme)
+    protected function _getInheritedThemes(\Magento\View\Design\ThemeInterface $theme)
     {
         $result = array();
         while ($theme) {
diff --git a/app/code/Magento/Core/Model/Layout/File/Source/Base.php b/app/code/Magento/Core/Model/Layout/File/Source/Base.php
index 8c94b82e04ce1..2276624f22f0a 100644
--- a/app/code/Magento/Core/Model/Layout/File/Source/Base.php
+++ b/app/code/Magento/Core/Model/Layout/File/Source/Base.php
@@ -35,7 +35,7 @@ class Base implements \Magento\Core\Model\Layout\File\SourceInterface
     private $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     private $_dirs;
 
@@ -46,12 +46,12 @@ class Base implements \Magento\Core\Model\Layout\File\SourceInterface
 
     /**
      * @param \Magento\Filesystem $filesystem
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param \Magento\Core\Model\Layout\File\Factory $fileFactory
      */
     public function __construct(
         \Magento\Filesystem $filesystem,
-        \Magento\Core\Model\Dir $dirs,
+        \Magento\App\Dir $dirs,
         \Magento\Core\Model\Layout\File\Factory $fileFactory
     ) {
         $this->_filesystem = $filesystem;
@@ -62,12 +62,12 @@ public function __construct(
     /**
      * {@inheritdoc}
      */
-    public function getFiles(\Magento\Core\Model\ThemeInterface $theme)
+    public function getFiles(\Magento\View\Design\ThemeInterface $theme)
     {
         $namespace = $module = '*';
         $area = $theme->getArea();
         $files = $this->_filesystem->searchKeys(
-            $this->_dirs->getDir(\Magento\Core\Model\Dir::MODULES),
+            $this->_dirs->getDir(\Magento\App\Dir::MODULES),
             "{$namespace}/{$module}/view/{$area}/layout/*.xml"
         );
         $result = array();
diff --git a/app/code/Magento/Core/Model/Layout/File/Source/Decorator/ModuleDependency.php b/app/code/Magento/Core/Model/Layout/File/Source/Decorator/ModuleDependency.php
index bac1bb546fabc..1fa4cb0946674 100644
--- a/app/code/Magento/Core/Model/Layout/File/Source/Decorator/ModuleDependency.php
+++ b/app/code/Magento/Core/Model/Layout/File/Source/Decorator/ModuleDependency.php
@@ -36,7 +36,7 @@ class ModuleDependency
     private $_subject;
 
     /**
-     * @var \Magento\Core\Model\ModuleListInterface
+     * @var \Magento\App\ModuleListInterface
      */
     private $_moduleList;
 
@@ -49,11 +49,11 @@ class ModuleDependency
 
     /**
      * @param \Magento\Core\Model\Layout\File\SourceInterface $subject
-     * @param \Magento\Core\Model\ModuleListInterface $listInterface
+     * @param \Magento\App\ModuleListInterface $listInterface
      */
     public function __construct(
         \Magento\Core\Model\Layout\File\SourceInterface $subject,
-        \Magento\Core\Model\ModuleListInterface $listInterface
+        \Magento\App\ModuleListInterface $listInterface
     ) {
         $this->_subject = $subject;
         $this->_moduleList = $listInterface;
@@ -64,7 +64,7 @@ public function __construct(
      *
      * {@inheritdoc}
      */
-    public function getFiles(\Magento\Core\Model\ThemeInterface $theme)
+    public function getFiles(\Magento\View\Design\ThemeInterface $theme)
     {
         $result = $this->_subject->getFiles($theme);
         usort($result, array($this, 'compareFiles'));
diff --git a/app/code/Magento/Core/Model/Layout/File/Source/Decorator/ModuleOutput.php b/app/code/Magento/Core/Model/Layout/File/Source/Decorator/ModuleOutput.php
index c0b8cc59ba2f0..f95a340b83c5b 100644
--- a/app/code/Magento/Core/Model/Layout/File/Source/Decorator/ModuleOutput.php
+++ b/app/code/Magento/Core/Model/Layout/File/Source/Decorator/ModuleOutput.php
@@ -56,7 +56,7 @@ public function __construct(
      *
      * {@inheritdoc}
      */
-    public function getFiles(\Magento\Core\Model\ThemeInterface $theme)
+    public function getFiles(\Magento\View\Design\ThemeInterface $theme)
     {
         $result = array();
         foreach ($this->_subject->getFiles($theme) as $file) {
diff --git a/app/code/Magento/Core/Model/Layout/File/Source/Override/Base.php b/app/code/Magento/Core/Model/Layout/File/Source/Override/Base.php
index 02889c46ce123..121c33d0ca54c 100644
--- a/app/code/Magento/Core/Model/Layout/File/Source/Override/Base.php
+++ b/app/code/Magento/Core/Model/Layout/File/Source/Override/Base.php
@@ -35,7 +35,7 @@ class Base implements \Magento\Core\Model\Layout\File\SourceInterface
     private $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     private $_dirs;
 
@@ -46,12 +46,12 @@ class Base implements \Magento\Core\Model\Layout\File\SourceInterface
 
     /**
      * @param \Magento\Filesystem $filesystem
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param \Magento\Core\Model\Layout\File\Factory $fileFactory
      */
     public function __construct(
         \Magento\Filesystem $filesystem,
-        \Magento\Core\Model\Dir $dirs,
+        \Magento\App\Dir $dirs,
         \Magento\Core\Model\Layout\File\Factory $fileFactory
     ) {
         $this->_filesystem = $filesystem;
@@ -62,12 +62,12 @@ public function __construct(
     /**
      * {@inheritdoc}
      */
-    public function getFiles(\Magento\Core\Model\ThemeInterface $theme)
+    public function getFiles(\Magento\View\Design\ThemeInterface $theme)
     {
         $namespace = $module = '*';
         $themePath = $theme->getFullPath();
         $files = $this->_filesystem->searchKeys(
-            $this->_dirs->getDir(\Magento\Core\Model\Dir::THEMES),
+            $this->_dirs->getDir(\Magento\App\Dir::THEMES),
             "{$themePath}/{$namespace}_{$module}/layout/override/*.xml"
         );
         $result = array();
diff --git a/app/code/Magento/Core/Model/Layout/File/Source/Override/Theme.php b/app/code/Magento/Core/Model/Layout/File/Source/Override/Theme.php
index d490fa463737f..ad8e7065fbaf0 100644
--- a/app/code/Magento/Core/Model/Layout/File/Source/Override/Theme.php
+++ b/app/code/Magento/Core/Model/Layout/File/Source/Override/Theme.php
@@ -35,7 +35,7 @@ class Theme implements \Magento\Core\Model\Layout\File\SourceInterface
     private $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     private $_dirs;
 
@@ -46,12 +46,12 @@ class Theme implements \Magento\Core\Model\Layout\File\SourceInterface
 
     /**
      * @param \Magento\Filesystem $filesystem
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param \Magento\Core\Model\Layout\File\Factory $fileFactory
      */
     public function __construct(
         \Magento\Filesystem $filesystem,
-        \Magento\Core\Model\Dir $dirs,
+        \Magento\App\Dir $dirs,
         \Magento\Core\Model\Layout\File\Factory $fileFactory
     ) {
         $this->_filesystem = $filesystem;
@@ -62,12 +62,12 @@ public function __construct(
     /**
      * {@inheritdoc}
      */
-    public function getFiles(\Magento\Core\Model\ThemeInterface $theme)
+    public function getFiles(\Magento\View\Design\ThemeInterface $theme)
     {
         $namespace = $module = '*';
         $themePath = $theme->getFullPath();
         $files = $this->_filesystem->searchKeys(
-            $this->_dirs->getDir(\Magento\Core\Model\Dir::THEMES),
+            $this->_dirs->getDir(\Magento\App\Dir::THEMES),
             "{$themePath}/{$namespace}_{$module}/layout/override/*/*.xml"
         );
 
diff --git a/app/code/Magento/Core/Model/Layout/File/Source/Theme.php b/app/code/Magento/Core/Model/Layout/File/Source/Theme.php
index a3ececa9408d5..2cdd4d4eec66b 100644
--- a/app/code/Magento/Core/Model/Layout/File/Source/Theme.php
+++ b/app/code/Magento/Core/Model/Layout/File/Source/Theme.php
@@ -35,7 +35,7 @@ class Theme implements \Magento\Core\Model\Layout\File\SourceInterface
     private $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     private $_dirs;
 
@@ -46,12 +46,12 @@ class Theme implements \Magento\Core\Model\Layout\File\SourceInterface
 
     /**
      * @param \Magento\Filesystem $filesystem
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param \Magento\Core\Model\Layout\File\Factory $fileFactory
      */
     public function __construct(
         \Magento\Filesystem $filesystem,
-        \Magento\Core\Model\Dir $dirs,
+        \Magento\App\Dir $dirs,
         \Magento\Core\Model\Layout\File\Factory $fileFactory
     ) {
         $this->_filesystem = $filesystem;
@@ -62,12 +62,12 @@ public function __construct(
     /**
      * {@inheritdoc}
      */
-    public function getFiles(\Magento\Core\Model\ThemeInterface $theme)
+    public function getFiles(\Magento\View\Design\ThemeInterface $theme)
     {
         $namespace = $module = '*';
         $themePath = $theme->getFullPath();
         $files = $this->_filesystem->searchKeys(
-            $this->_dirs->getDir(\Magento\Core\Model\Dir::THEMES),
+            $this->_dirs->getDir(\Magento\App\Dir::THEMES),
             "{$themePath}/{$namespace}_{$module}/layout/*.xml"
         );
         $result = array();
diff --git a/app/code/Magento/Core/Model/Layout/File/SourceInterface.php b/app/code/Magento/Core/Model/Layout/File/SourceInterface.php
index 3b414b1e3f66f..5f95486b05e77 100644
--- a/app/code/Magento/Core/Model/Layout/File/SourceInterface.php
+++ b/app/code/Magento/Core/Model/Layout/File/SourceInterface.php
@@ -32,8 +32,8 @@ interface SourceInterface
     /**
      * Retrieve instances of layout files
      *
-     * @param \Magento\Core\Model\ThemeInterface $theme Theme that defines the design context
+     * @param \Magento\View\Design\ThemeInterface $theme Theme that defines the design context
      * @return \Magento\Core\Model\Layout\File[]
      */
-    public function getFiles(\Magento\Core\Model\ThemeInterface $theme);
+    public function getFiles(\Magento\View\Design\ThemeInterface $theme);
 }
diff --git a/app/code/Magento/Core/Model/Layout/Merge.php b/app/code/Magento/Core/Model/Layout/Merge.php
index 0d460020c2c98..7c7927de9034d 100644
--- a/app/code/Magento/Core/Model/Layout/Merge.php
+++ b/app/code/Magento/Core/Model/Layout/Merge.php
@@ -29,7 +29,7 @@
  */
 namespace Magento\Core\Model\Layout;
 
-class Merge
+class Merge implements  \Magento\View\Layout\ProcessorInterface
 {
     /**#@+
      * Available item type names
@@ -56,7 +56,7 @@ class Merge
     /**
      * In-memory cache for loaded layout updates
      *
-     * @var \Magento\Core\Model\Layout\Element
+     * @var \Magento\View\Layout\Element
      */
     protected $_layoutUpdatesCache;
 
@@ -99,7 +99,7 @@ class Merge
     private $_resource;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     private $_appState;
 
@@ -121,26 +121,26 @@ class Merge
     /**
      * Init merge model
      *
-     * @param \Magento\Core\Model\View\DesignInterface $design
+     * @param \Magento\View\DesignInterface $design
      * @param \Magento\Core\Model\StoreManagerInterface $storeManager
      * @param \Magento\Core\Model\Layout\File\SourceInterface $fileSource,
      * @param \Magento\Core\Model\Resource\Layout\Update $resource
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      * @param \Magento\Cache\FrontendInterface $cache
      * @param \Magento\Adminhtml\Model\LayoutUpdate\Validator $validator
      * @param \Magento\Core\Model\Logger $logger
-     * @param \Magento\Core\Model\Theme $theme Non-injectable theme instance
+     * @param \Magento\View\Design\ThemeInterface $theme Non-injectable theme instance
      */
     public function __construct(
-        \Magento\Core\Model\View\DesignInterface $design,
+        \Magento\View\DesignInterface $design,
         \Magento\Core\Model\StoreManagerInterface $storeManager,
         \Magento\Core\Model\Layout\File\SourceInterface $fileSource,
         \Magento\Core\Model\Resource\Layout\Update $resource,
-        \Magento\Core\Model\App\State $appState,
+        \Magento\App\State $appState,
         \Magento\Cache\FrontendInterface $cache,
         \Magento\Adminhtml\Model\LayoutUpdate\Validator $validator,
         \Magento\Core\Model\Logger $logger,
-        \Magento\Core\Model\Theme $theme = null
+        \Magento\View\Design\ThemeInterface $theme = null
     ) {
         $this->_theme = $theme ?: $design->getDesignTheme();
         $this->_store = $storeManager->getStore();
@@ -291,7 +291,7 @@ public function pageHandleExists($handleName)
      * Get handle xml node by handle name
      *
      * @param string $handleName
-     * @return \Magento\Core\Model\Layout\Element|null
+     * @return \Magento\View\Layout\Element|null
      */
     protected function _getPageHandleNode($handleName)
     {
@@ -366,7 +366,7 @@ protected function _getPageHandleChildren($parentName)
         }
         $xpath = '/layouts/*[' . implode(' or ', $conditions) . ']';
         $nodes = $this->getFileLayoutUpdatesXml()->xpath($xpath) ?: array();
-        /** @var $node \Magento\Core\Model\Layout\Element */
+        /** @var $node \Magento\View\Layout\Element */
         foreach ($nodes as $node) {
             $name = $node->getAttribute('id');
             $info = array(
@@ -424,7 +424,7 @@ public function load($handles = array())
         }
 
         $layout = $this->asString();
-        if ($this->_appState->getMode() === \Magento\Core\Model\App\State::MODE_DEVELOPER) {
+        if ($this->_appState->getMode() === \Magento\App\State::MODE_DEVELOPER) {
             if (!$this->_layoutValidator->isValid(
                     $layout,
                     \Magento\Adminhtml\Model\LayoutUpdate\Validator::LAYOUT_SCHEMA_MERGED,
@@ -443,7 +443,7 @@ public function load($handles = array())
     }
 
     /**
-     * Get layout updates as \Magento\Core\Model\Layout\Element object
+     * Get layout updates as \Magento\View\Layout\Element object
      *
      * @return \SimpleXMLElement
      */
@@ -463,7 +463,7 @@ public function asSimplexml()
      */
     protected function _loadXmlString($xmlString)
     {
-        return simplexml_load_string($xmlString, 'Magento\Core\Model\Layout\Element');
+        return simplexml_load_string($xmlString, 'Magento\View\Layout\Element');
     }
 
     /**
@@ -582,7 +582,7 @@ protected function _fetchRecursiveUpdates($updateXml)
     /**
      * Retrieve already merged layout updates from files for specified area/theme/package/store
      *
-     * @return \Magento\Core\Model\Layout\Element
+     * @return \Magento\View\Layout\Element
      */
     public function getFileLayoutUpdatesXml()
     {
@@ -639,7 +639,7 @@ protected function _saveCache($data, $cacheId, array $cacheTags = array())
      * Collect and merge layout updates from files
      *
      * @throws \Magento\Exception
-     * @return \Magento\Core\Model\Layout\Element
+     * @return \Magento\View\Layout\Element
      */
     protected function _loadFileLayoutUpdatesXml()
     {
@@ -649,7 +649,7 @@ protected function _loadFileLayoutUpdatesXml()
         foreach ($updateFiles as $file) {
             $fileStr = file_get_contents($file->getFilename());
             $fileStr = $this->_substitutePlaceholders($fileStr);
-            /** @var $fileXml \Magento\Core\Model\Layout\Element */
+            /** @var $fileXml \Magento\View\Layout\Element */
             $fileXml = $this->_loadXmlString($fileStr);
             if (!$file->isBase() && $fileXml->xpath(self::XPATH_HANDLE_DECLARATION)) {
                 throw new \Magento\Exception(sprintf(
@@ -670,11 +670,11 @@ protected function _loadFileLayoutUpdatesXml()
     /**
      * Find the closest physical theme among ancestors and a theme itself
      *
-     * @param \Magento\Core\Model\Theme $theme
+     * @param \Magento\View\Design\ThemeInterface $theme
      * @return \Magento\Core\Model\Theme
      * @throws \Magento\Exception
      */
-    protected function _getPhysicalTheme(\Magento\Core\Model\Theme $theme)
+    protected function _getPhysicalTheme(\Magento\View\Design\ThemeInterface $theme)
     {
         $result = $theme;
         while ($result->getId() && !$result->isPhysical()) {
@@ -716,7 +716,7 @@ public function getContainers()
     {
         $result = array();
         $containerNodes = $this->asSimplexml()->xpath('//container');
-        /** @var $oneContainerNode \Magento\Core\Model\Layout\Element */
+        /** @var $oneContainerNode \Magento\View\Layout\Element */
         foreach ($containerNodes as $oneContainerNode) {
             $label = $oneContainerNode->getAttribute('label');
             if ($label) {
diff --git a/app/code/Magento/Core/Model/Locale.php b/app/code/Magento/Core/Model/Locale.php
index d5161ae22b111..3dfcfb390bc09 100644
--- a/app/code/Magento/Core/Model/Locale.php
+++ b/app/code/Magento/Core/Model/Locale.php
@@ -66,7 +66,7 @@ class Locale implements \Magento\Core\Model\LocaleInterface
     /**
      * Core event manager proxy
      *
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager = null;
 
@@ -83,7 +83,7 @@ class Locale implements \Magento\Core\Model\LocaleInterface
     protected $_coreStoreConfig;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
@@ -103,20 +103,20 @@ class Locale implements \Magento\Core\Model\LocaleInterface
     protected $_app;
 
     /**
-     * @param \Magento\Core\Model\Event\Manager $eventManager
+     * @param \Magento\Event\ManagerInterface $eventManager
      * @param \Magento\Core\Helper\Translate $translate
      * @param \Magento\Core\Model\Store\Config $coreStoreConfig
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      * @param \Magento\Core\Model\StoreManager $storeManager
      * @param \Magento\Core\Model\Locale\Config $config
      * @param \Magento\Core\Model\App $app
      * @param string $locale
      */
     public function __construct(
-        \Magento\Core\Model\Event\Manager $eventManager,
+        \Magento\Event\ManagerInterface $eventManager,
         \Magento\Core\Helper\Translate $translate,
         \Magento\Core\Model\Store\Config $coreStoreConfig,
-        \Magento\Core\Model\App\State $appState,
+        \Magento\App\State $appState,
         \Magento\Core\Model\StoreManager $storeManager,
         \Magento\Core\Model\Locale\Config $config,
         \Magento\Core\Model\App $app,
diff --git a/app/code/Magento/Core/Model/Locale/Hierarchy/Config/FileResolver.php b/app/code/Magento/Core/Model/Locale/Hierarchy/Config/FileResolver.php
index 61b2c3d9be6d8..59c603adf84da 100644
--- a/app/code/Magento/Core/Model/Locale/Hierarchy/Config/FileResolver.php
+++ b/app/code/Magento/Core/Model/Locale/Hierarchy/Config/FileResolver.php
@@ -29,14 +29,14 @@ class FileResolver implements \Magento\Config\FileResolverInterface
 {
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_applicationDirs;
 
     /**
-     * @param \Magento\Core\Model\Dir $applicationDirs
+     * @param \Magento\App\Dir $applicationDirs
      */
-    public function __construct(\Magento\Core\Model\Dir $applicationDirs)
+    public function __construct(\Magento\App\Dir $applicationDirs)
     {
         $this->_applicationDirs = $applicationDirs;
     }
@@ -46,7 +46,7 @@ public function __construct(\Magento\Core\Model\Dir $applicationDirs)
      */
     public function get($filename, $scope)
     {
-        $appLocaleDir = $this->_applicationDirs->getDir(\Magento\Core\Model\Dir::LOCALE);
+        $appLocaleDir = $this->_applicationDirs->getDir(\Magento\App\Dir::LOCALE);
         // Create pattern similar to app/locale/*/config.xml
         $filePattern = $appLocaleDir . DIRECTORY_SEPARATOR . '*' . DIRECTORY_SEPARATOR . $filename;
         $fileList = glob($filePattern, GLOB_BRACE);
diff --git a/app/code/Magento/Core/Model/Logger.php b/app/code/Magento/Core/Model/Logger.php
index deaf06c22e18c..bc5bc45b052e3 100644
--- a/app/code/Magento/Core/Model/Logger.php
+++ b/app/code/Magento/Core/Model/Logger.php
@@ -44,7 +44,7 @@ class Logger
     protected $_loggers = array();
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dirs = null;
 
@@ -54,11 +54,11 @@ class Logger
     protected $_fileSystem;
 
     /**
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param \Magento\Io\File $fileSystem
      * @param string $defaultFile
      */
-    public function __construct(\Magento\Core\Model\Dir $dirs, \Magento\Io\File $fileSystem, $defaultFile = '')
+    public function __construct(\Magento\App\Dir $dirs, \Magento\Io\File $fileSystem, $defaultFile = '')
     {
         $this->_dirs = $dirs;
         $this->_fileSystem = $fileSystem;
@@ -81,7 +81,7 @@ public function addStreamLog($loggerKey, $fileOrWrapper = '', $writerClass = '')
     {
         $file = $fileOrWrapper ?: "{$loggerKey}.log";
         if (!preg_match('#^[a-z][a-z0-9+.-]*\://#i', $file)) {
-            $logDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::LOG);
+            $logDir = $this->_dirs->getDir(\Magento\App\Dir::LOG);
             $this->_fileSystem->checkAndCreateFolder($logDir);
             $file = $logDir . DIRECTORY_SEPARATOR . $file;
         }
diff --git a/app/code/Magento/Core/Model/ModuleManager.php b/app/code/Magento/Core/Model/ModuleManager.php
index 8aecfcbdc4f56..3aa3b8e9a283d 100644
--- a/app/code/Magento/Core/Model/ModuleManager.php
+++ b/app/code/Magento/Core/Model/ModuleManager.php
@@ -40,7 +40,7 @@ class ModuleManager
     private $_storeConfig;
 
     /**
-     * @var \Magento\Core\Model\ModuleListInterface
+     * @var \Magento\App\ModuleListInterface
      */
     private $_moduleList;
 
@@ -51,12 +51,12 @@ class ModuleManager
 
     /**
      * @param \Magento\Core\Model\Store\ConfigInterface $storeConfig
-     * @param \Magento\Core\Model\ModuleListInterface $moduleList
+     * @param \Magento\App\ModuleListInterface $moduleList
      * @param array $outputConfigPaths
      */
     public function __construct(
         \Magento\Core\Model\Store\ConfigInterface $storeConfig,
-        \Magento\Core\Model\ModuleListInterface $moduleList,
+        \Magento\App\ModuleListInterface $moduleList,
         array $outputConfigPaths = array()
     ) {
         $this->_storeConfig = $storeConfig;
diff --git a/app/code/Magento/Core/Model/ObjectManager.php b/app/code/Magento/Core/Model/ObjectManager.php
index 2b979512e9a8c..b06155b6cf359 100644
--- a/app/code/Magento/Core/Model/ObjectManager.php
+++ b/app/code/Magento/Core/Model/ObjectManager.php
@@ -92,11 +92,11 @@ public function __construct(
         );
 
         $localConfig = new \Magento\Core\Model\Config\Local(new \Magento\Core\Model\Config\Loader\Local(
-            $primaryConfig->getDirectories()->getDir(\Magento\Core\Model\Dir::CONFIG),
+            $primaryConfig->getDirectories()->getDir(\Magento\App\Dir::CONFIG),
             $primaryConfig->getParam(\Magento\Core\Model\App::PARAM_CUSTOM_LOCAL_CONFIG),
             $primaryConfig->getParam(\Magento\Core\Model\App::PARAM_CUSTOM_LOCAL_FILE)
         ));
-        $appMode = $primaryConfig->getParam(\Magento\Core\Model\App::PARAM_MODE, \Magento\Core\Model\App\State::MODE_DEFAULT);
+        $appMode = $primaryConfig->getParam(\Magento\Core\Model\App::PARAM_MODE, \Magento\App\State::MODE_DEFAULT);
         $factory = new \Magento\ObjectManager\Factory\Factory($config, $this, $definitions, array_replace(
             $localConfig->getParams(),
             $primaryConfig->getParams()
@@ -104,7 +104,7 @@ public function __construct(
 
         $sharedInstances['Magento\Core\Model\Config\Local'] = $localConfig;
         $sharedInstances['Magento\Core\Model\Config\Primary'] = $primaryConfig;
-        $sharedInstances['Magento\Core\Model\Dir'] = $primaryConfig->getDirectories();
+        $sharedInstances['Magento\App\Dir'] = $primaryConfig->getDirectories();
         $sharedInstances['Magento\Core\Model\ObjectManager'] = $this;
 
         parent::__construct($factory, $config, $sharedInstances);
@@ -136,15 +136,18 @@ public function __construct(
                 new \Magento\Code\Generator\Io(
                     new \Magento\Io\File(),
                     $autoloader,
-                    $primaryConfig->getDirectories()->getDir(\Magento\Core\Model\Dir::GENERATION)
+                    $primaryConfig->getDirectories()->getDir(\Magento\App\Dir::GENERATION)
                 )
             ));
         }
 
         \Magento\Profiler::stop('global_primary');
-        $verification = $this->get('Magento\Core\Model\Dir\Verification');
+        $verification = $this->get('Magento\App\Dir\Verification');
         $verification->createAndVerifyDirectories();
 
+        $this->_config->setCache($this->get('Magento\Core\Model\ObjectManager\ConfigCache'));
+        $this->configure($this->get('Magento\Core\Model\ObjectManager\ConfigLoader')->load('global'));
+
         $interceptionConfig = $this->create('Magento\Interception\Config\Config', array(
             'relations' => $definitionFactory->createRelations(),
             'omConfig' => $this->_config,
@@ -171,8 +174,6 @@ public function __construct(
             'config' => $interceptionConfig,
             'pluginList' => $pluginList
         ));
-        $this->_config->setCache($this->get('Magento\Core\Model\ObjectManager\ConfigCache'));
-        $this->configure($this->get('Magento\Core\Model\ObjectManager\ConfigLoader')->load('global'));
         $this->get('Magento\Core\Model\Resource')->setConfig($this->get('Magento\Core\Model\Config\Resource'));
 
         self::setInstance($this);
diff --git a/app/code/Magento/Core/Model/ObjectManager/ConfigLoader/Primary.php b/app/code/Magento/Core/Model/ObjectManager/ConfigLoader/Primary.php
index 5808e7caec9dc..d8d4bb71f0002 100644
--- a/app/code/Magento/Core/Model/ObjectManager/ConfigLoader/Primary.php
+++ b/app/code/Magento/Core/Model/ObjectManager/ConfigLoader/Primary.php
@@ -33,15 +33,15 @@ class Primary
     protected $_appMode;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dirs;
 
     /**
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param string $appMode
      */
-    public function __construct(\Magento\Core\Model\Dir $dirs, $appMode = \Magento\Core\Model\App\State::MODE_DEFAULT)
+    public function __construct(\Magento\App\Dir $dirs, $appMode = \Magento\App\State::MODE_DEFAULT)
     {
         $this->_dirs = $dirs;
         $this->_appMode = $appMode;
diff --git a/app/code/Magento/Core/Model/ObjectManager/DefinitionFactory.php b/app/code/Magento/Core/Model/ObjectManager/DefinitionFactory.php
index f5f49a51da393..a24fe3d0e1093 100644
--- a/app/code/Magento/Core/Model/ObjectManager/DefinitionFactory.php
+++ b/app/code/Magento/Core/Model/ObjectManager/DefinitionFactory.php
@@ -92,7 +92,7 @@ public function createClassDefinition()
             $definitionModel = $this->_getDefinitionModel($this->_definitionFormat);
             $output = new $definitionModel($definitions);
         } else {
-            $genDir = $this->_config->getDirectories()->getDir(\Magento\Core\Model\Dir::GENERATION);
+            $genDir = $this->_config->getDirectories()->getDir(\Magento\App\Dir::GENERATION);
             $autoloader = new \Magento\Autoload\IncludePath();
             $generatorIo = new \Magento\Code\Generator\Io(new \Magento\Io\File(), $autoloader, $genDir);
             $generator = new \Magento\Code\Generator\ClassGenerator(
diff --git a/app/code/Magento/Core/Model/Observer.php b/app/code/Magento/Core/Model/Observer.php
index 39dd651575be5..468be6d48c013 100644
--- a/app/code/Magento/Core/Model/Observer.php
+++ b/app/code/Magento/Core/Model/Observer.php
@@ -70,7 +70,7 @@ class Observer
 
     /**
      * @param \Magento\Core\Model\Cache\Frontend\Pool $cacheFrontendPool
-     * @param \Magento\Core\Model\View\DesignInterface $design
+     * @param \Magento\View\DesignInterface $design
      * @param \Magento\Core\Model\Page $page
      * @param \Magento\Core\Model\ConfigInterface $config
      * @param \Magento\Core\Model\Page\Asset\PublicFileFactory $assetFileFactory
@@ -79,7 +79,7 @@ class Observer
      */
     public function __construct(
         \Magento\Core\Model\Cache\Frontend\Pool $cacheFrontendPool,
-        \Magento\Core\Model\View\DesignInterface $design,
+        \Magento\View\DesignInterface $design,
         \Magento\Core\Model\Page $page,
         \Magento\Core\Model\ConfigInterface $config,
         \Magento\Core\Model\Page\Asset\PublicFileFactory $assetFileFactory,
diff --git a/app/code/Magento/Core/Model/Page/Asset/MergeService.php b/app/code/Magento/Core/Model/Page/Asset/MergeService.php
index e7fc39ccff1d9..30731ab0bbe90 100644
--- a/app/code/Magento/Core/Model/Page/Asset/MergeService.php
+++ b/app/code/Magento/Core/Model/Page/Asset/MergeService.php
@@ -52,12 +52,12 @@ class MergeService
     private $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     private $_dirs;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     private $_state;
 
@@ -65,15 +65,15 @@ class MergeService
      * @param \Magento\ObjectManager $objectManager
      * @param \Magento\Core\Model\Store\Config $storeConfig
      * @param \Magento\Filesystem $filesystem,
-     * @param \Magento\Core\Model\Dir $dirs
-     * @param \Magento\Core\Model\App\State $state
+     * @param \Magento\App\Dir $dirs
+     * @param \Magento\App\State $state
      */
     public function __construct(
         \Magento\ObjectManager $objectManager,
         \Magento\Core\Model\Store\Config $storeConfig,
         \Magento\Filesystem $filesystem,
-        \Magento\Core\Model\Dir $dirs,
-        \Magento\Core\Model\App\State $state
+        \Magento\App\Dir $dirs,
+        \Magento\App\State $state
     ) {
         $this->_objectManager = $objectManager;
         $this->_storeConfig = $storeConfig;
@@ -101,7 +101,7 @@ public function getMergedAssets(array $assets, $contentType)
         $isCssMergeEnabled = $this->_storeConfig->getConfigFlag(self::XML_PATH_MERGE_CSS_FILES);
         $isJsMergeEnabled = $this->_storeConfig->getConfigFlag(self::XML_PATH_MERGE_JS_FILES);
         if (($isCss && $isCssMergeEnabled) || ($isJs && $isJsMergeEnabled)) {
-            if ($this->_state->getMode() == \Magento\Core\Model\App\State::MODE_PRODUCTION) {
+            if ($this->_state->getMode() == \Magento\App\State::MODE_PRODUCTION) {
                 $mergeStrategyClass = 'Magento\Core\Model\Page\Asset\MergeStrategy\FileExists';
             } else {
                 $mergeStrategyClass = 'Magento\Core\Model\Page\Asset\MergeStrategy\Checksum';
@@ -121,7 +121,7 @@ public function getMergedAssets(array $assets, $contentType)
      */
     public function cleanMergedJsCss()
     {
-        $mergedDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::PUB_VIEW_CACHE) . '/'
+        $mergedDir = $this->_dirs->getDir(\Magento\App\Dir::PUB_VIEW_CACHE) . '/'
             . \Magento\Core\Model\Page\Asset\Merged::PUBLIC_MERGE_DIR;
         $this->_filesystem->delete($mergedDir);
 
diff --git a/app/code/Magento/Core/Model/Page/Asset/MergeStrategy/Direct.php b/app/code/Magento/Core/Model/Page/Asset/MergeStrategy/Direct.php
index a0910bec784a8..3361279a13ff6 100644
--- a/app/code/Magento/Core/Model/Page/Asset/MergeStrategy/Direct.php
+++ b/app/code/Magento/Core/Model/Page/Asset/MergeStrategy/Direct.php
@@ -35,7 +35,7 @@ class Direct implements \Magento\Core\Model\Page\Asset\MergeStrategyInterface
     private $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     private $_dirs;
 
@@ -46,12 +46,12 @@ class Direct implements \Magento\Core\Model\Page\Asset\MergeStrategyInterface
 
     /**
      * @param \Magento\Filesystem $filesystem
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param \Magento\Core\Helper\Css $cssHelper
      */
     public function __construct(
         \Magento\Filesystem $filesystem,
-        \Magento\Core\Model\Dir $dirs,
+        \Magento\App\Dir $dirs,
         \Magento\Core\Helper\Css $cssHelper
     ) {
         $this->_filesystem = $filesystem;
diff --git a/app/code/Magento/Core/Model/Page/Asset/Merged.php b/app/code/Magento/Core/Model/Page/Asset/Merged.php
index c9a4fb8c1fafb..8224ff51ffd6c 100644
--- a/app/code/Magento/Core/Model/Page/Asset/Merged.php
+++ b/app/code/Magento/Core/Model/Page/Asset/Merged.php
@@ -69,7 +69,7 @@ class Merged implements \Iterator
     /**
      * @param \Magento\ObjectManager $objectManager
      * @param \Magento\Core\Model\Logger $logger,
-     * @param \Magento\Core\Model\Dir $dirs,
+     * @param \Magento\App\Dir $dirs,
      * @param \Magento\Core\Model\Page\Asset\MergeStrategyInterface $mergeStrategy
      * @param array $assets
      * @throws \InvalidArgumentException
@@ -77,7 +77,7 @@ class Merged implements \Iterator
     public function __construct(
         \Magento\ObjectManager $objectManager,
         \Magento\Core\Model\Logger $logger,
-        \Magento\Core\Model\Dir $dirs,
+        \Magento\App\Dir $dirs,
         \Magento\Core\Model\Page\Asset\MergeStrategyInterface $mergeStrategy,
         array $assets
     ) {
@@ -165,8 +165,8 @@ protected function _getPublicFilesToMerge(array $assets)
      */
     protected function _getMergedFilePath(array $publicFiles)
     {
-        $jsDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\Core\Model\Dir::PUB_LIB));
-        $publicDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\Core\Model\Dir::STATIC_VIEW));
+        $jsDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\App\Dir::PUB_LIB));
+        $publicDir = \Magento\Filesystem::fixSeparator($this->_dirs->getDir(\Magento\App\Dir::STATIC_VIEW));
         $prefixRemovals = array($jsDir, $publicDir);
 
         $relFileNames = array();
@@ -175,7 +175,7 @@ protected function _getMergedFilePath(array $publicFiles)
             $relFileNames[] = str_replace($prefixRemovals, '', $file);
         }
 
-        $mergedDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::PUB_VIEW_CACHE) . '/'
+        $mergedDir = $this->_dirs->getDir(\Magento\App\Dir::PUB_VIEW_CACHE) . '/'
             . self::PUBLIC_MERGE_DIR;
         return $mergedDir . '/' . md5(implode('|', $relFileNames)) . '.' . $this->_contentType;
     }
diff --git a/app/code/Magento/Core/Model/Page/Asset/MinifyService.php b/app/code/Magento/Core/Model/Page/Asset/MinifyService.php
index 65ea7e10b44dc..40843490f03aa 100644
--- a/app/code/Magento/Core/Model/Page/Asset/MinifyService.php
+++ b/app/code/Magento/Core/Model/Page/Asset/MinifyService.php
@@ -57,26 +57,26 @@ class MinifyService
     protected $_minifiers = array();
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dirs;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
     /**
      * @param \Magento\Core\Model\Store\Config $config
      * @param \Magento\ObjectManager $objectManager
-     * @param \Magento\Core\Model\Dir $dirs
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\Dir $dirs
+     * @param \Magento\App\State $appState
      */
     public function __construct(
         \Magento\Core\Model\Store\Config $config,
         \Magento\ObjectManager $objectManager,
-        \Magento\Core\Model\Dir $dirs,
-        \Magento\Core\Model\App\State $appState
+        \Magento\App\Dir $dirs,
+        \Magento\App\State $appState
     ) {
         $this->_storeConfig = $config;
         $this->_objectManager = $objectManager;
@@ -123,7 +123,7 @@ protected function _getMinifier($contentType)
                 'adapter' => $adapter,
             );
             switch ($this->_appState->getMode()) {
-                case \Magento\Core\Model\App\State::MODE_PRODUCTION:
+                case \Magento\App\State::MODE_PRODUCTION:
                     $strategy = $this->_objectManager->create('Magento\Code\Minifier\Strategy\Lite', $strategyParams);
                     break;
                 default:
@@ -134,7 +134,7 @@ protected function _getMinifier($contentType)
             $this->_minifiers[$contentType] = $this->_objectManager->create('Magento\Code\Minifier',
                 array(
                     'strategy' => $strategy,
-                    'baseDir' => $this->_dirs->getDir(\Magento\Core\Model\Dir::PUB_VIEW_CACHE) . '/minify',
+                    'baseDir' => $this->_dirs->getDir(\Magento\App\Dir::PUB_VIEW_CACHE) . '/minify',
                 )
             );
         }
diff --git a/app/code/Magento/Core/Model/Resource/Config/Value/Collection/Scoped.php b/app/code/Magento/Core/Model/Resource/Config/Value/Collection/Scoped.php
index bd5b17d3e757d..6ff0dc81f5e04 100644
--- a/app/code/Magento/Core/Model/Resource/Config/Value/Collection/Scoped.php
+++ b/app/code/Magento/Core/Model/Resource/Config/Value/Collection/Scoped.php
@@ -42,7 +42,7 @@ class Scoped extends \Magento\Core\Model\Resource\Db\Collection\AbstractCollecti
     protected $_scopeId;
 
     /**
-     * @param \Magento\Core\Model\Event\Manager $eventManager
+     * @param \Magento\Event\ManagerInterface $eventManager
      * @param \Magento\Core\Model\Logger $logger
      * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy
      * @param \Magento\Core\Model\EntityFactory $entityFactory
@@ -51,7 +51,7 @@ class Scoped extends \Magento\Core\Model\Resource\Db\Collection\AbstractCollecti
      * @param null $scopeId
      */
     public function __construct(
-        \Magento\Core\Model\Event\Manager $eventManager,
+        \Magento\Event\ManagerInterface $eventManager,
         \Magento\Core\Model\Logger $logger,
         \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy,
         \Magento\Core\Model\EntityFactory $entityFactory,
diff --git a/app/code/Magento/Core/Model/Resource/Db/Collection/AbstractCollection.php b/app/code/Magento/Core/Model/Resource/Db/Collection/AbstractCollection.php
index 4ea612cf9614f..06108c61f90e1 100644
--- a/app/code/Magento/Core/Model/Resource/Db/Collection/AbstractCollection.php
+++ b/app/code/Magento/Core/Model/Resource/Db/Collection/AbstractCollection.php
@@ -116,19 +116,19 @@ abstract class AbstractCollection extends \Magento\Data\Collection\Db
     /**
      * Core event manager proxy
      *
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager = null;
 
     /**
-     * @param \Magento\Core\Model\Event\Manager $eventManager
+     * @param \Magento\Event\ManagerInterface $eventManager
      * @param \Magento\Core\Model\Logger $logger
      * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy
      * @param \Magento\Core\Model\EntityFactory $entityFactory
      * @param \Magento\Core\Model\Resource\Db\AbstractDb $resource
      */
     public function __construct(
-        \Magento\Core\Model\Event\Manager $eventManager,
+        \Magento\Event\ManagerInterface $eventManager,
         \Magento\Core\Model\Logger $logger,
         \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy,
         \Magento\Core\Model\EntityFactory $entityFactory,
diff --git a/app/code/Magento/Core/Model/Resource/Layout/Update.php b/app/code/Magento/Core/Model/Resource/Layout/Update.php
index 4c2caab91aabe..37b921a5f41b3 100644
--- a/app/code/Magento/Core/Model/Resource/Layout/Update.php
+++ b/app/code/Magento/Core/Model/Resource/Layout/Update.php
@@ -60,11 +60,11 @@ protected function _construct()
      * Retrieve layout updates by handle
      *
      * @param string $handle
-     * @param \Magento\Core\Model\Theme $theme
+     * @param \Magento\View\Design\ThemeInterface $theme
      * @param \Magento\Core\Model\Store $store
      * @return string
      */
-    public function fetchUpdatesByHandle($handle, \Magento\Core\Model\Theme $theme, \Magento\Core\Model\Store $store)
+    public function fetchUpdatesByHandle($handle, \Magento\View\Design\ThemeInterface $theme, \Magento\Core\Model\Store $store)
     {
         $bind = array(
             'layout_update_handle' => $handle,
diff --git a/app/code/Magento/Core/Model/Resource/Session.php b/app/code/Magento/Core/Model/Resource/Session.php
index 407397cef4560..913c2fb12be2b 100644
--- a/app/code/Magento/Core/Model/Resource/Session.php
+++ b/app/code/Magento/Core/Model/Resource/Session.php
@@ -58,7 +58,7 @@ class Session implements \Zend_Session_SaveHandler_Interface
     protected $_write;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dir;
 
@@ -66,9 +66,9 @@ class Session implements \Zend_Session_SaveHandler_Interface
      * Constructor
      *
      * @param \Magento\Core\Model\Resource $resource
-     * @param \Magento\Core\Model\Dir $dir
+     * @param \Magento\App\Dir $dir
      */
-    public function __construct(\Magento\Core\Model\Resource $resource, \Magento\Core\Model\Dir $dir)
+    public function __construct(\Magento\Core\Model\Resource $resource, \Magento\App\Dir $dir)
     {
         $this->_sessionTable = $resource->getTableName('core_session');
         $this->_write        = $resource->getConnection('core_write');
diff --git a/app/code/Magento/Core/Model/Resource/Setup.php b/app/code/Magento/Core/Model/Resource/Setup.php
index 99a72bcaa0281..1bdde6f9065e3 100644
--- a/app/code/Magento/Core/Model/Resource/Setup.php
+++ b/app/code/Magento/Core/Model/Resource/Setup.php
@@ -25,7 +25,7 @@
  */
 namespace Magento\Core\Model\Resource;
 
-class Setup implements \Magento\Core\Model\Resource\SetupInterface
+class Setup implements \Magento\App\Updater\SetupInterface
 {
     /**
      * Setup resource name
@@ -81,7 +81,7 @@ class Setup implements \Magento\Core\Model\Resource\SetupInterface
     protected $_modulesReader;
 
     /**
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager;
 
@@ -801,7 +801,7 @@ public function afterApplyAllUpdates()
     }
 
     /**
-     * @return \Magento\Core\Model\Event\Manager
+     * @return \Magento\Event\ManagerInterface
      */
     public function getEventManager()
     {
diff --git a/app/code/Magento/Core/Model/Resource/Setup/Context.php b/app/code/Magento/Core/Model/Resource/Setup/Context.php
index c839388a5ffbb..d885f8dd82d5e 100644
--- a/app/code/Magento/Core/Model/Resource/Setup/Context.php
+++ b/app/code/Magento/Core/Model/Resource/Setup/Context.php
@@ -31,7 +31,7 @@ class Context implements \Magento\ObjectManager\ContextInterface
     protected $_logger;
 
     /**
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager;
 
@@ -46,7 +46,7 @@ class Context implements \Magento\ObjectManager\ContextInterface
     protected $_modulesReader;
 
     /**
-     * @var \Magento\Core\Model\ModuleListInterface
+     * @var \Magento\App\ModuleListInterface
      */
     protected $_moduleList;
 
@@ -72,10 +72,10 @@ class Context implements \Magento\ObjectManager\ContextInterface
 
     /**
      * @param \Magento\Core\Model\Logger $logger
-     * @param \Magento\Core\Model\Event\Manager $eventManager
+     * @param \Magento\Event\ManagerInterface $eventManager
      * @param \Magento\Core\Model\Resource $resource
      * @param \Magento\Core\Model\Config\Modules\Reader $modulesReader
-     * @param \Magento\Core\Model\ModuleListInterface $moduleList
+     * @param \Magento\App\ModuleListInterface $moduleList
      * @param \Magento\Core\Model\Resource\Resource $resourceResource
      * @param \Magento\Core\Model\Resource\Setup\MigrationFactory $migrationFactory
      * @param \Magento\Core\Model\Resource\Theme\CollectionFactory $themeResourceFactory
@@ -83,10 +83,10 @@ class Context implements \Magento\ObjectManager\ContextInterface
      */
     public function __construct(
         \Magento\Core\Model\Logger $logger,
-        \Magento\Core\Model\Event\Manager $eventManager,
+        \Magento\Event\ManagerInterface $eventManager,
         \Magento\Core\Model\Resource $resource,
         \Magento\Core\Model\Config\Modules\Reader $modulesReader,
-        \Magento\Core\Model\ModuleListInterface $moduleList,
+        \Magento\App\ModuleListInterface $moduleList,
         \Magento\Core\Model\Resource\Resource $resourceResource,
         \Magento\Core\Model\Resource\Setup\MigrationFactory $migrationFactory,
         \Magento\Core\Model\Resource\Theme\CollectionFactory $themeResourceFactory,
@@ -104,7 +104,7 @@ public function __construct(
     }
 
     /**
-     * @return \\Magento\Core\Model\Event\Manager
+     * @return \Magento\Event\ManagerInterface
      */
     public function getEventManager()
     {
@@ -112,7 +112,7 @@ public function getEventManager()
     }
 
     /**
-     * @return \\Magento\Core\Model\Logger
+     * @return \Magento\Core\Model\Logger
      */
     public function getLogger()
     {
@@ -120,7 +120,7 @@ public function getLogger()
     }
 
     /**
-     * @return \\Magento\Core\Model\ModuleListInterface
+     * @return \Magento\App\ModuleListInterface
      */
     public function getModuleList()
     {
@@ -128,7 +128,7 @@ public function getModuleList()
     }
 
     /**
-     * @return \\Magento\Core\Model\Config\Modules\Reader
+     * @return \Magento\Core\Model\Config\Modules\Reader
      */
     public function getModulesReader()
     {
@@ -136,7 +136,7 @@ public function getModulesReader()
     }
 
     /**
-     * @return \\Magento\Core\Model\Resource
+     * @return \Magento\Core\Model\Resource
      */
     public function getResourceModel()
     {
@@ -144,7 +144,7 @@ public function getResourceModel()
     }
 
     /**
-     * @return \\Magento\Core\Model\Resource\Setup\MigrationFactory
+     * @return \Magento\Core\Model\Resource\Setup\MigrationFactory
      */
     public function getMigrationFactory()
     {
@@ -152,7 +152,7 @@ public function getMigrationFactory()
     }
 
     /**
-     * @return \\Magento\Core\Model\Resource\Resource
+     * @return \Magento\Core\Model\Resource\Resource
      */
     public function getResourceResource()
     {
@@ -160,7 +160,7 @@ public function getResourceResource()
     }
 
     /**
-     * @return \\Magento\Core\Model\Theme\CollectionFactory
+     * @return \Magento\Core\Model\Theme\CollectionFactory
      */
     public function getThemeFactory()
     {
@@ -168,7 +168,7 @@ public function getThemeFactory()
     }
 
     /**
-     * @return \\Magento\Core\Model\Resource\Theme\CollectionFactory
+     * @return \Magento\Core\Model\Resource\Theme\CollectionFactory
      */
     public function getThemeResourceFactory()
     {
diff --git a/app/code/Magento/Core/Model/Resource/Setup/Migration.php b/app/code/Magento/Core/Model/Resource/Setup/Migration.php
index 5da16eb9e80de..480d4dec4f384 100644
--- a/app/code/Magento/Core/Model/Resource/Setup/Migration.php
+++ b/app/code/Magento/Core/Model/Resource/Setup/Migration.php
@@ -150,17 +150,17 @@ class Migration extends \Magento\Core\Model\Resource\Setup
     protected $_filesystem;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dir;
 
     /**
-     * @param \Magento\Core\Model\Resource\Setup\Context $context
+     * @param Context $context
      * @param \Magento\Filesystem $filesystem
      * @param \Magento\Core\Helper\Data $helper
-     * @param \Magento\Core\Model\Dir $dir
-     * @param string $resourceName
-     * @param string $confPathToMapFile
+     * @param \Magento\App\Dir $dir
+     * @param $resourceName
+     * @param $confPathToMapFile
      * @param string $moduleName
      * @param string $connectionName
      */
@@ -168,7 +168,7 @@ public function __construct(
         \Magento\Core\Model\Resource\Setup\Context $context,
         \Magento\Filesystem $filesystem,
         \Magento\Core\Helper\Data $helper,
-        \Magento\Core\Model\Dir $dir,
+        \Magento\App\Dir $dir,
         $resourceName,
         $confPathToMapFile,
         $moduleName = 'Magento_Core',
diff --git a/app/code/Magento/Core/Model/Resource/Theme/Collection.php b/app/code/Magento/Core/Model/Resource/Theme/Collection.php
index 0f7c4db359e56..9b69e996c0f66 100644
--- a/app/code/Magento/Core/Model/Resource/Theme/Collection.php
+++ b/app/code/Magento/Core/Model/Resource/Theme/Collection.php
@@ -161,15 +161,15 @@ public function setPageSize($size = self::DEFAULT_PAGE_SIZE)
     /**
      * Update all child themes relations
      *
-     * @param \Magento\Core\Model\Theme $themeModel
+     * @param \Magento\View\Design\ThemeInterface $themeModel
      * @return $this
      */
-    public function updateChildRelations(\Magento\Core\Model\Theme $themeModel)
+    public function updateChildRelations(\Magento\View\Design\ThemeInterface $themeModel)
     {
         $parentThemeId = $themeModel->getParentId();
         $this->addFieldToFilter('parent_id', array('eq' => $themeModel->getId()))->load();
 
-        /** @var $theme \Magento\Core\Model\Theme */
+        /** @var $theme \Magento\View\Design\ThemeInterface */
         foreach ($this->getItems() as $theme) {
             $theme->setParentId($parentThemeId)->save();
         }
diff --git a/app/code/Magento/Core/Model/Resource/Theme/File/Collection.php b/app/code/Magento/Core/Model/Resource/Theme/File/Collection.php
index 3cf66ead44fff..cbc6de8ddbbbf 100644
--- a/app/code/Magento/Core/Model/Resource/Theme/File/Collection.php
+++ b/app/code/Magento/Core/Model/Resource/Theme/File/Collection.php
@@ -67,10 +67,10 @@ public function setDefaultOrder($direction = self::SORT_ORDER_ASC)
     /**
      * Filter out files that do not belong to a theme
      *
-     * @param \Magento\Core\Model\Theme $theme
+     * @param \Magento\View\Design\ThemeInterface $theme
      * @return \Magento\Core\Model\Resource\Theme\File\Collection
      */
-    public function addThemeFilter(\Magento\Core\Model\Theme $theme)
+    public function addThemeFilter(\Magento\View\Design\ThemeInterface $theme)
     {
         $this->addFieldToFilter('theme_id', $theme->getId());
         return $this;
diff --git a/app/code/Magento/Core/Model/Resource/Translate.php b/app/code/Magento/Core/Model/Resource/Translate.php
index 976c2c043faf1..215efc0aff9cb 100644
--- a/app/code/Magento/Core/Model/Resource/Translate.php
+++ b/app/code/Magento/Core/Model/Resource/Translate.php
@@ -37,7 +37,7 @@
 class Translate extends \Magento\Core\Model\Resource\Db\AbstractDb
 {
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
@@ -48,12 +48,12 @@ class Translate extends \Magento\Core\Model\Resource\Db\AbstractDb
 
     /**
      * @param \Magento\Core\Model\Resource $resource
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      * @param \Magento\Core\Model\StoreManager $storeManager
      */
     public function __construct(
         \Magento\Core\Model\Resource $resource,
-        \Magento\Core\Model\App\State $appState,
+        \Magento\App\State $appState,
         \Magento\Core\Model\StoreManager $storeManager
     ) {
         parent::__construct($resource);
diff --git a/app/code/Magento/Core/Model/Resource/Type/Db/Pdo/Mysql.php b/app/code/Magento/Core/Model/Resource/Type/Db/Pdo/Mysql.php
index 8550c7ac5082a..b0540c2c950a8 100644
--- a/app/code/Magento/Core/Model/Resource/Type/Db/Pdo/Mysql.php
+++ b/app/code/Magento/Core/Model/Resource/Type/Db/Pdo/Mysql.php
@@ -29,7 +29,7 @@ class Mysql extends \Magento\Core\Model\Resource\Type\Db
     /**
      * Dirs instance
      *
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dirs;
 
@@ -49,7 +49,7 @@ class Mysql extends \Magento\Core\Model\Resource\Type\Db
     protected $_isActive;
 
     /**
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param string $host
      * @param string $username
      * @param string $password
@@ -60,7 +60,7 @@ class Mysql extends \Magento\Core\Model\Resource\Type\Db
      * @param bool $active
      */
     public function __construct(
-        \Magento\Core\Model\Dir $dirs,
+        \Magento\App\Dir $dirs,
         $host,
         $username,
         $password,
diff --git a/app/code/Magento/Core/Model/Resource/Url/Rewrite/Collection.php b/app/code/Magento/Core/Model/Resource/Url/Rewrite/Collection.php
index 9274787b51070..63d5e9da94e4f 100644
--- a/app/code/Magento/Core/Model/Resource/Url/Rewrite/Collection.php
+++ b/app/code/Magento/Core/Model/Resource/Url/Rewrite/Collection.php
@@ -42,7 +42,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl
     protected $_storeManager;
 
     /**
-     * @param \Magento\Core\Model\Event\Manager $eventManager
+     * @param \Magento\Event\ManagerInterface $eventManager
      * @param \Magento\Core\Model\Logger $logger
      * @param \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy
      * @param \Magento\Core\Model\EntityFactory $entityFactory
@@ -50,7 +50,7 @@ class Collection extends \Magento\Core\Model\Resource\Db\Collection\AbstractColl
      * @param \Magento\Core\Model\Resource\Db\AbstractDb $resource
      */
     public function __construct(
-        \Magento\Core\Model\Event\Manager $eventManager,
+        \Magento\Event\ManagerInterface $eventManager,
         \Magento\Core\Model\Logger $logger,
         \Magento\Data\Collection\Db\FetchStrategyInterface $fetchStrategy,
         \Magento\Core\Model\EntityFactory $entityFactory,
diff --git a/app/code/Magento/Core/Model/Session/AbstractSession.php b/app/code/Magento/Core/Model/Session/AbstractSession.php
index c0c8ddbab7e2f..3760d5fd63664 100644
--- a/app/code/Magento/Core/Model/Session/AbstractSession.php
+++ b/app/code/Magento/Core/Model/Session/AbstractSession.php
@@ -79,7 +79,7 @@ class AbstractSession extends \Magento\Object
     /**
      * Core event manager proxy
      *
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager = null;
 
@@ -120,12 +120,12 @@ class AbstractSession extends \Magento\Object
     protected $_messageFactory;
 
     /**
-     * @var \Magento\Core\Controller\Request\Http
+     * @var \Magento\App\RequestInterface
      */
     protected $_request;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
@@ -135,7 +135,7 @@ class AbstractSession extends \Magento\Object
     protected $_storeManager;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dir;
 
diff --git a/app/code/Magento/Core/Model/Session/Context.php b/app/code/Magento/Core/Model/Session/Context.php
index 1b4025b0b97ab..530e968a78fd9 100644
--- a/app/code/Magento/Core/Model/Session/Context.php
+++ b/app/code/Magento/Core/Model/Session/Context.php
@@ -38,7 +38,7 @@ class Context implements \Magento\ObjectManager\ContextInterface
     protected $_logger;
 
     /**
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager;
 
@@ -96,12 +96,12 @@ class Context implements \Magento\ObjectManager\ContextInterface
     protected $_messageFactory;
 
     /**
-     * @var \Magento\Core\Controller\Request\Http
+     * @var \Magento\App\RequestInterface
      */
     protected $_request;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
@@ -111,7 +111,7 @@ class Context implements \Magento\ObjectManager\ContextInterface
     protected $_storeManager;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dir;
 
@@ -123,16 +123,16 @@ class Context implements \Magento\ObjectManager\ContextInterface
     /**
      * @param \Magento\Core\Model\Session\Validator $validator
      * @param \Magento\Core\Model\Logger $logger
-     * @param \Magento\Core\Model\Event\Manager $eventManager
+     * @param \Magento\Event\ManagerInterface $eventManager
      * @param \Magento\Core\Helper\Http $coreHttp
      * @param \Magento\Core\Model\Store\Config $coreStoreConfig
      * @param \Magento\Core\Model\Message\CollectionFactory $messageFactory
      * @param \Magento\Core\Model\Message $message
      * @param \Magento\Core\Model\Cookie $cookie
-     * @param \Magento\Core\Controller\Request\Http $request
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\RequestInterface $request
+     * @param \Magento\App\State $appState
      * @param \Magento\Core\Model\StoreManager $storeManager
-     * @param \Magento\Core\Model\Dir $dir
+     * @param \Magento\App\Dir $dir
      * @param \Magento\Core\Model\Url $url
      * @param $saveMethod
      * @param null $savePath
@@ -142,16 +142,16 @@ class Context implements \Magento\ObjectManager\ContextInterface
     public function __construct(
         \Magento\Core\Model\Session\Validator $validator,
         \Magento\Core\Model\Logger $logger,
-        \Magento\Core\Model\Event\Manager $eventManager,
+        \Magento\Event\ManagerInterface $eventManager,
         \Magento\Core\Helper\Http $coreHttp,
         \Magento\Core\Model\Store\Config $coreStoreConfig,
         \Magento\Core\Model\Message\CollectionFactory $messageFactory,
         \Magento\Core\Model\Message $message,
         \Magento\Core\Model\Cookie $cookie,
-        \Magento\Core\Controller\Request\Http $request,
-        \Magento\Core\Model\App\State $appState,
+        \Magento\App\RequestInterface $request,
+        \Magento\App\State $appState,
         \Magento\Core\Model\StoreManager $storeManager,
-        \Magento\Core\Model\Dir $dir,
+        \Magento\App\Dir $dir,
         \Magento\Core\Model\Url $url,
         $saveMethod,
         $savePath = null,
@@ -178,7 +178,7 @@ public function __construct(
     }
 
     /**
-     * @return \\Magento\Core\Model\Event\Manager
+     * @return \Magento\Event\ManagerInterface
      */
     public function getEventManager()
     {
@@ -186,7 +186,7 @@ public function getEventManager()
     }
 
     /**
-     * @return \\Magento\Core\Helper\Http
+     * @return \Magento\Core\Helper\Http
      */
     public function getHttpHelper()
     {
@@ -194,7 +194,7 @@ public function getHttpHelper()
     }
 
     /**
-     * @return \\Magento\Core\Model\Logger
+     * @return \Magento\Core\Model\Logger
      */
     public function getLogger()
     {
@@ -202,7 +202,7 @@ public function getLogger()
     }
 
     /**
-     * @return \\Magento\Core\Model\Store\Config
+     * @return \Magento\Core\Model\Store\Config
      */
     public function getStoreConfig()
     {
@@ -210,7 +210,7 @@ public function getStoreConfig()
     }
 
     /**
-     * @return \\Magento\Core\Model\Session\Validator
+     * @return \Magento\Core\Model\Session\Validator
      */
     public function getValidator()
     {
@@ -250,7 +250,7 @@ public function getSidMap()
     }
 
     /**
-     * @return \\Magento\Core\Model\App\State
+     * @return \Magento\App\State
      */
     public function getAppState()
     {
@@ -258,7 +258,7 @@ public function getAppState()
     }
 
     /**
-     * @return \\Magento\Core\Model\Cookie
+     * @return \Magento\Core\Model\Cookie
      */
     public function getCookie()
     {
@@ -266,7 +266,7 @@ public function getCookie()
     }
 
     /**
-     * @return \\Magento\Core\Model\Dir
+     * @return \Magento\App\Dir
      */
     public function getDir()
     {
@@ -274,7 +274,7 @@ public function getDir()
     }
 
     /**
-     * @return \\Magento\Core\Model\Message
+     * @return \Magento\Core\Model\Message
      */
     public function getMessage()
     {
@@ -282,7 +282,7 @@ public function getMessage()
     }
 
     /**
-     * @return \\Magento\Core\Model\Message\CollectionFactory
+     * @return \Magento\Core\Model\Message\CollectionFactory
      */
     public function getMessageFactory()
     {
@@ -290,7 +290,7 @@ public function getMessageFactory()
     }
 
     /**
-     * @return \\Magento\Core\Controller\Request\Http
+     * @return \Magento\App\RequestInterface
      */
     public function getRequest()
     {
@@ -298,7 +298,7 @@ public function getRequest()
     }
 
     /**
-     * @return \\Magento\Core\Model\StoreManager
+     * @return \Magento\Core\Model\StoreManager
      */
     public function getStoreManager()
     {
@@ -306,7 +306,7 @@ public function getStoreManager()
     }
 
     /**
-     * @return \\Magento\Core\Model\Url
+     * @return \Magento\Core\Model\Url
      */
     public function getUrl()
     {
diff --git a/app/code/Magento/Core/Model/Store.php b/app/code/Magento/Core/Model/Store.php
index 2b94ccf84d180..990294d8f77fe 100644
--- a/app/code/Magento/Core/Model/Store.php
+++ b/app/code/Magento/Core/Model/Store.php
@@ -246,7 +246,7 @@ class Store extends \Magento\Core\Model\AbstractModel
     protected $_url;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
@@ -256,7 +256,7 @@ class Store extends \Magento\Core\Model\AbstractModel
     protected $_isCustomEntryPoint = false;
 
     /**
-     * @var \Magento\Core\Controller\Request\Http
+     * @var \Magento\App\RequestInterface
      */
     protected $_request;
 
@@ -273,7 +273,7 @@ class Store extends \Magento\Core\Model\AbstractModel
     protected $_coreFileStorageDatabase = null;
 
     /**
-     * @var \Magento\Core\Model\Dir
+     * @var \Magento\App\Dir
      */
     protected $_dir;
 
@@ -295,10 +295,10 @@ class Store extends \Magento\Core\Model\AbstractModel
      * @param \Magento\Core\Model\Registry $registry
      * @param \Magento\Core\Model\Cache\Type\Config $configCacheType
      * @param \Magento\Core\Model\Url $url
-     * @param \Magento\Core\Model\App\State $appState
-     * @param \Magento\Core\Controller\Request\Http $request
+     * @param \Magento\App\State $appState
+     * @param \Magento\App\RequestInterface $request
      * @param \Magento\Core\Model\Resource\Config\Data $configDataResource
-     * @param \Magento\Core\Model\Dir $dir
+     * @param \Magento\App\Dir $dir
      * @param \Magento\Core\Model\Store\Config $coreStoreConfig
      * @param \Magento\Core\Model\Config $coreConfig
      * @param \Magento\Core\Model\Resource\Store $resource
@@ -313,10 +313,10 @@ public function __construct(
         \Magento\Core\Model\Registry $registry,
         \Magento\Core\Model\Cache\Type\Config $configCacheType,
         \Magento\Core\Model\Url $url,
-        \Magento\Core\Model\App\State $appState,
-        \Magento\Core\Controller\Request\Http $request,
+        \Magento\App\State $appState,
+        \Magento\App\RequestInterface $request,
         \Magento\Core\Model\Resource\Config\Data $configDataResource,
-        \Magento\Core\Model\Dir $dir,
+        \Magento\App\Dir $dir,
         \Magento\Core\Model\Store\Config $coreStoreConfig,
         \Magento\Core\Model\Config $coreConfig,
         \Magento\Core\Model\Resource\Store $resource,
@@ -359,7 +359,7 @@ public function __wakeup()
     {
         parent::__wakeup();
         $this->_eventDispatcher = \Magento\Core\Model\ObjectManager::getInstance()
-            ->get('Magento\Core\Model\Event\Manager');
+            ->get('Magento\Event\ManagerInterface');
         $this->_cacheManager    = \Magento\Core\Model\ObjectManager::getInstance()
             ->get('Magento\Core\Model\CacheInterface');
         $this->_coreStoreConfig = \Magento\Core\Model\ObjectManager::getInstance()
@@ -557,7 +557,7 @@ public function getBaseUrl($type = self::URL_TYPE_LINK, $secure = null)
                     $url = $this->getConfig($path);
                     if (!$url) {
                         $url = $this->getBaseUrl(self::URL_TYPE_WEB, $secure)
-                            . $this->_dir->getUri(\Magento\Core\Model\Dir::PUB_LIB);
+                            . $this->_dir->getUri(\Magento\App\Dir::PUB_LIB);
                     }
                     break;
 
@@ -566,7 +566,7 @@ public function getBaseUrl($type = self::URL_TYPE_LINK, $secure = null)
                     $url = $this->getConfig($path);
                     if (!$url) {
                         $url = $this->getBaseUrl(self::URL_TYPE_WEB, $secure)
-                            . $this->_dir->getUri(\Magento\Core\Model\Dir::STATIC_VIEW);
+                            . $this->_dir->getUri(\Magento\App\Dir::STATIC_VIEW);
                     }
                     break;
 
@@ -575,7 +575,7 @@ public function getBaseUrl($type = self::URL_TYPE_LINK, $secure = null)
                     $url = $this->getConfig($path);
                     if (!$url) {
                         $url = $this->getBaseUrl(self::URL_TYPE_WEB, $secure)
-                            . $this->_dir->getUri(\Magento\Core\Model\Dir::PUB_VIEW_CACHE);
+                            . $this->_dir->getUri(\Magento\App\Dir::PUB_VIEW_CACHE);
                     }
                     break;
 
@@ -586,7 +586,7 @@ public function getBaseUrl($type = self::URL_TYPE_LINK, $secure = null)
                         $url = $this->getConfig($path);
                         if (!$url) {
                             $url = $this->getBaseUrl(self::URL_TYPE_WEB, $secure)
-                                . $this->_dir->getUri(\Magento\Core\Model\Dir::MEDIA);
+                                . $this->_dir->getUri(\Magento\App\Dir::MEDIA);
                         }
                     }
                     break;
@@ -644,16 +644,16 @@ protected function _isCustomEntryPoint()
      * If we use Database file storage and server doesn't support rewrites (.htaccess in media folder)
      * we have to put name of fetching media script exactly into URL
      *
-     * @param \Magento\Core\Model\Dir $dirs
+     * @param \Magento\App\Dir $dirs
      * @param bool $secure
      * @return string|bool
      */
-    protected function _getMediaScriptUrl(\Magento\Core\Model\Dir $dirs, $secure)
+    protected function _getMediaScriptUrl(\Magento\App\Dir $dirs, $secure)
     {
         if (!$this->getConfig(self::XML_PATH_USE_REWRITES)
             && $this->_coreFileStorageDatabase->checkDbUsage()
         ) {
-            return $this->getBaseUrl(self::URL_TYPE_WEB, $secure) . $dirs->getUri(\Magento\Core\Model\Dir::PUB)
+            return $this->getBaseUrl(self::URL_TYPE_WEB, $secure) . $dirs->getUri(\Magento\App\Dir::PUB)
             . '/' . self::MEDIA_REWRITE_SCRIPT;
         }
         return false;
diff --git a/app/code/Magento/Core/Model/Store/Storage/Db.php b/app/code/Magento/Core/Model/Store/Storage/Db.php
index 5c3daad80a8f3..48006d75d331f 100644
--- a/app/code/Magento/Core/Model/Store/Storage/Db.php
+++ b/app/code/Magento/Core/Model/Store/Storage/Db.php
@@ -135,7 +135,7 @@ class Db implements \Magento\Core\Model\Store\StorageInterface
     /**
      * Application state model
      *
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
@@ -150,7 +150,7 @@ class Db implements \Magento\Core\Model\Store\StorageInterface
      * @param \Magento\Core\Model\Store\Group\Factory $groupFactory
      * @param \Magento\Core\Model\Config $config
      * @param \Magento\Core\Model\Cookie $cookie
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      * @param \Magento\Backend\Model\Url\Proxy $proxy
      * @param bool $isSingleStoreAllowed
      * @param string $scopeCode
@@ -163,7 +163,7 @@ public function __construct(
         \Magento\Core\Model\Store\Group\Factory $groupFactory,
         \Magento\Core\Model\Config $config,
         \Magento\Core\Model\Cookie $cookie,
-        \Magento\Core\Model\App\State $appState,
+        \Magento\App\State $appState,
         \Magento\Backend\Model\Url\Proxy $proxy,
         $isSingleStoreAllowed,
         $scopeCode,
diff --git a/app/code/Magento/Core/Model/Store/StorageFactory.php b/app/code/Magento/Core/Model/Store/StorageFactory.php
index 95135c130bcf3..ac28d5c395d57 100644
--- a/app/code/Magento/Core/Model/Store/StorageFactory.php
+++ b/app/code/Magento/Core/Model/Store/StorageFactory.php
@@ -50,7 +50,7 @@ class StorageFactory
     protected $_cache = array();
 
     /**
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager;
 
@@ -70,27 +70,27 @@ class StorageFactory
     protected $_app;
 
     /**
-     * @var \Magento\Core\Model\App\State
+     * @var \Magento\App\State
      */
     protected $_appState;
 
     /**
      * @param \Magento\ObjectManager $objectManager
-     * @param \Magento\Core\Model\Event\Manager $eventManager
+     * @param \Magento\Event\ManagerInterface $eventManager
      * @param \Magento\Core\Model\Logger $log
      * @param \Magento\Core\Model\ConfigInterface $config
      * @param \Magento\Core\Model\App\Proxy $app
-     * @param \Magento\Core\Model\App\State $appState
+     * @param \Magento\App\State $appState
      * @param string $defaultStorageClassName
      * @param string $installedStoreClassName
      */
     public function __construct(
         \Magento\ObjectManager $objectManager,
-        \Magento\Core\Model\Event\Manager $eventManager,
+        \Magento\Event\ManagerInterface $eventManager,
         \Magento\Core\Model\Logger $log,
         \Magento\Core\Model\ConfigInterface $config,
         \Magento\Core\Model\App\Proxy $app,
-        \Magento\Core\Model\App\State $appState,
+        \Magento\App\State $appState,
         $defaultStorageClassName = 'Magento\Core\Model\Store\Storage\DefaultStorage',
         $installedStoreClassName = 'Magento\Core\Model\Store\Storage\Db'
     ) {
diff --git a/app/code/Magento/Core/Model/StoreManager.php b/app/code/Magento/Core/Model/StoreManager.php
index 263bab13342b8..a7b0c1fe6eed1 100644
--- a/app/code/Magento/Core/Model/StoreManager.php
+++ b/app/code/Magento/Core/Model/StoreManager.php
@@ -35,14 +35,14 @@ class StoreManager implements \Magento\Core\Model\StoreManagerInterface
     /**
      * Event manager
      *
-     * @var \Magento\Core\Model\Event\Manager
+     * @var \Magento\Event\ManagerInterface
      */
     protected $_eventManager;
 
     /**
      * Request model
      *
-     * @var \Magento\Core\Controller\Request\Http
+     * @var \Magento\App\RequestInterface
      */
     protected $_request;
 
@@ -83,14 +83,14 @@ class StoreManager implements \Magento\Core\Model\StoreManagerInterface
 
     /**
      * @param \Magento\Core\Model\Store\StorageFactory $factory
-     * @param \Magento\Core\Controller\Request\Http $request
+     * @param \Magento\App\RequestInterface $request
      * @param \Magento\Core\Model\Factory\Helper $helperFactory
      * @param string $scopeCode
      * @param string $scopeType
      */
     public function __construct(
         \Magento\Core\Model\Store\StorageFactory $factory,
-        \Magento\Core\Controller\Request\Http $request,
+        \Magento\App\RequestInterface $request,
         \Magento\Core\Model\Factory\Helper $helperFactory,
         $scopeCode = '',
         $scopeType = 'store'
diff --git a/app/code/Magento/Core/Model/Template.php b/app/code/Magento/Core/Model/Template.php
index 15c4affe69c5b..29b8ee28314a7 100644
--- a/app/code/Magento/Core/Model/Template.php
+++ b/app/code/Magento/Core/Model/Template.php
@@ -87,7 +87,7 @@ abstract class Template extends \Magento\Core\Model\AbstractModel
     /**
      * Design package instance
      *
-     * @var \Magento\Core\Model\View\DesignInterface
+     * @var \Magento\View\DesignInterface
      */
     protected $_design = null;
 
@@ -102,7 +102,7 @@ abstract class Template extends \Magento\Core\Model\AbstractModel
     protected $_storeManager;
 
     /**
-     * @param \Magento\Core\Model\View\DesignInterface $design
+     * @param \Magento\View\DesignInterface $design
      * @param \Magento\Core\Model\Context $context
      * @param \Magento\Core\Model\Registry $registry
      * @param \Magento\Core\Model\App\Emulation $appEmulation
@@ -110,7 +110,7 @@ abstract class Template extends \Magento\Core\Model\AbstractModel
      * @param array $data
      */
     public function __construct(
-        \Magento\Core\Model\View\DesignInterface $design,
+        \Magento\View\DesignInterface $design,
         \Magento\Core\Model\Context $context,
         \Magento\Core\Model\Registry $registry,
         \Magento\Core\Model\App\Emulation $appEmulation,
diff --git a/app/code/Magento/Core/Model/TemplateEngine/Decorator/DebugHints.php b/app/code/Magento/Core/Model/TemplateEngine/Decorator/DebugHints.php
new file mode 100644
index 0000000000000..c7569483920ac
--- /dev/null
+++ b/app/code/Magento/Core/Model/TemplateEngine/Decorator/DebugHints.php
@@ -0,0 +1,103 @@
+_subject = $subject;
+        $this->_showBlockHints = $showBlockHints;
+    }
+
+    /**
+     * Insert debugging hints into the rendered block contents
+     *
+     * {@inheritdoc}
+     */
+    public function render(\Magento\Core\Block\Template $block, $templateFile, array $dictionary = array())
+    {
+        $result = $this->_subject->render($block, $templateFile, $dictionary);
+        if ($this->_showBlockHints) {
+            $result = $this->_renderBlockHints($result, $block);
+        }
+        $result = $this->_renderTemplateHints($result, $templateFile);
+        return $result;
+    }
+
+    /**
+     * Insert template debugging hints into the rendered block contents
+     *
+     * @param string $blockHtml
+     * @param string $templateFile
+     * @return string
+     */
+    protected function _renderTemplateHints($blockHtml, $templateFile)
+    {
+        return <<
+
{$templateFile}
+{$blockHtml} + +HTML; + } + + /** + * Insert block debugging hints into the rendered block contents + * + * @param string $blockHtml + * @param \Magento\Core\Block\Template $block + * @return string + */ + protected function _renderBlockHints($blockHtml, \Magento\Core\Block\Template $block) + { + $blockClass = get_class($block); + return <<{$blockClass} +{$blockHtml} +HTML; + } +} diff --git a/app/code/Magento/Core/Model/TemplateEngine/Factory.php b/app/code/Magento/Core/Model/TemplateEngine/Factory.php index edb42aac889f2..bfa8d00ca740f 100644 --- a/app/code/Magento/Core/Model/TemplateEngine/Factory.php +++ b/app/code/Magento/Core/Model/TemplateEngine/Factory.php @@ -1,6 +1,6 @@ ' => 'TemplateEngine\Class', ...) + */ + public function __construct( + \Magento\ObjectManager $objectManager, + array $engines + ) { $this->_objectManager = $objectManager; + $this->_engines = $engines; } /** - * Gets the singleton instance of the appropriate template engine + * Retrieve a template engine instance by its unique name * * @param string $name * @return \Magento\Core\Model\TemplateEngine\EngineInterface - * @throws \InvalidArgumentException if template engine doesn't exist + * @throws \InvalidArgumentException If template engine doesn't exist + * @throws \UnexpectedValueException If template engine doesn't implement the necessary interface */ - public function get($name) + public function create($name) { - if (self::ENGINE_TWIG == $name) { - return $this->_objectManager->get('Magento\Core\Model\TemplateEngine\Twig'); - } else if (self::ENGINE_PHTML == $name) { - return $this->_objectManager->get('Magento\Core\Model\TemplateEngine\Php'); + if (!isset($this->_engines[$name])) { + throw new \InvalidArgumentException("Unknown template engine '$name'."); + } + $engineClass = $this->_engines[$name]; + $engineInstance = $this->_objectManager->create($engineClass); + if (!($engineInstance instanceof \Magento\Core\Model\TemplateEngine\EngineInterface)) { + throw new \UnexpectedValueException("$engineClass has to implement the template engine interface."); } - // unknown type, throw exception - throw new \InvalidArgumentException('Unknown template engine type: ' . $name); + return $engineInstance; } } diff --git a/app/code/Magento/Core/Model/TemplateEngine/Plugin/DebugHints.php b/app/code/Magento/Core/Model/TemplateEngine/Plugin/DebugHints.php new file mode 100644 index 0000000000000..cb0e63a238c48 --- /dev/null +++ b/app/code/Magento/Core/Model/TemplateEngine/Plugin/DebugHints.php @@ -0,0 +1,87 @@ +_objectManager = $objectManager; + $this->_storeConfig = $storeConfig; + $this->_coreData = $coreData; + } + + /** + * Wrap template engine instance with the debugging hints decorator, depending of the store configuration + * + * @param \Magento\Core\Model\TemplateEngine\EngineInterface $invocationResult + * @return \Magento\Core\Model\TemplateEngine\EngineInterface + */ + public function afterCreate(\Magento\Core\Model\TemplateEngine\EngineInterface $invocationResult) + { + if ($this->_storeConfig->getConfig(self::XML_PATH_DEBUG_TEMPLATE_HINTS) && $this->_coreData->isDevAllowed()) { + $showBlockHints = $this->_storeConfig->getConfig(self::XML_PATH_DEBUG_TEMPLATE_HINTS_BLOCKS); + return $this->_objectManager->create( + 'Magento\Core\Model\TemplateEngine\Decorator\DebugHints', + array( + 'subject' => $invocationResult, + 'showBlockHints' => $showBlockHints, + ) + ); + } + return $invocationResult; + } +} diff --git a/app/code/Magento/Core/Model/App/Handler.php b/app/code/Magento/Core/Model/TemplateEngine/Pool.php similarity index 57% rename from app/code/Magento/Core/Model/App/Handler.php rename to app/code/Magento/Core/Model/TemplateEngine/Pool.php index 72c55e6c17061..cffdaa8750d14 100644 --- a/app/code/Magento/Core/Model/App/Handler.php +++ b/app/code/Magento/Core/Model/TemplateEngine/Pool.php @@ -1,6 +1,6 @@ _app = $app; + $this->_factory = $factory; } /** - * Handle http request + * Retrieve a template engine instance by its unique name * - * @param \Zend_Controller_Request_Http $request - * @param \Zend_Controller_Response_Http $response + * @param string $name + * @return EngineInterface */ - public function handle(\Zend_Controller_Request_Http $request, \Zend_Controller_Response_Http $response) + public function get($name) { - $this->_app->setRequest($request)->setResponse($response)->run(); + if (!isset($this->_engines[$name])) { + $this->_engines[$name] = $this->_factory->create($name); + } + return $this->_engines[$name]; } } - diff --git a/app/code/Magento/Core/Model/TemplateEngine/Twig.php b/app/code/Magento/Core/Model/TemplateEngine/Twig.php deleted file mode 100644 index a93d4162ffcce..0000000000000 --- a/app/code/Magento/Core/Model/TemplateEngine/Twig.php +++ /dev/null @@ -1,106 +0,0 @@ -_factory = $factory; - $this->_extension = $extension; - - $this->_extension->setBlockTracker($this); - } - - /** - * Render the named Twig template using the given block as the context of the Twig helper functions/filters. - * - * @param \Magento\Core\Block\Template $block - * @param string $fileName - * @param array $dictionary - * @throws \Exception - * @return string - */ - public function render(\Magento\Core\Block\Template $block, $fileName, array $dictionary = array()) - { - if ($this->_environment === null) { - $this->_environment = $this->_factory->create(); - } - $dictionary['block'] = $block; - // save state from previous block - $previousBlock = $this->_currentBlock; - $this->_currentBlock = $block; - try { - $output = $this->_environment->render($fileName, $dictionary); - } catch (\Exception $renderException) { - // restore state for previous block - $this->_currentBlock = $previousBlock; - throw $renderException; - } - // restore state for previous block - $this->_currentBlock = $previousBlock; - return $output; - } - - /** - * Get the current block - * - * @return \Magento\Core\Block\Template - */ - public function getCurrentBlock() - { - return $this->_currentBlock; - } -} diff --git a/app/code/Magento/Core/Model/TemplateEngine/Twig/CommonFunctions.php b/app/code/Magento/Core/Model/TemplateEngine/Twig/CommonFunctions.php deleted file mode 100644 index a58e8b9a7eee7..0000000000000 --- a/app/code/Magento/Core/Model/TemplateEngine/Twig/CommonFunctions.php +++ /dev/null @@ -1,228 +0,0 @@ -_urlBuilder = $urlBuilder; - $this->_urlHelper = $urlHelper; - $this->_dataHelper = $dataHelper; - $this->_storeManager = $storeManager; - $this->_viewUrl = $viewUrl; - $this->_viewConfig = $viewConfig; - $this->_helperImage = $helperImage; - $this->_logger = $logger; - $this->_locale = $locale; - } - - /** - * Returns a list of global functions to add to the existing list. - * - * @return array An array of global functions - */ - public function getFunctions() - { - $options = array('is_safe' => array('html')); - return array( - new \Twig_SimpleFunction('viewFileUrl', array($this, 'getViewFileUrl'), $options), - new \Twig_SimpleFunction('getSelectHtml', array($this, 'getSelectHtml'), $options), - new \Twig_SimpleFunction('getDateFormat', array($this->_locale, 'getDateFormat')), - new \Twig_SimpleFunction('getSelectFromToHtml', array($this, 'getSelectFromToHtml'), $options), - new \Twig_SimpleFunction('getUrl', array($this->_urlBuilder, 'getUrl'), $options), - new \Twig_SimpleFunction('encodeUrl', array($this->_urlHelper, 'getEncodedUrl'), $options), - new \Twig_SimpleFunction('getCurrentUrl', array($this->_urlHelper, 'getCurrentUrl'), $options), - new \Twig_SimpleFunction('isModuleOutputEnabled', - array($this->_dataHelper, 'isModuleOutputEnabled'), $options), - new \Twig_SimpleFunction('getStoreConfig', array($this->_storeManager->getStore(), 'getConfig'), $options), - new \Twig_SimpleFunction('getDesignVarValue', array($this->_viewConfig->getViewConfig(), 'getVarValue'), - $options), - new \Twig_SimpleFunction('getDefaultImage', array($this->_helperImage, 'getDefaultImage'), $options), - ); - } - - /** - * Retrieve url of themes file - * - * @param string $file path to file in theme - * @param array $params - * @return string - * @throws \Magento\Exception - */ - public function getViewFileUrl($file = null, array $params = array()) - { - try { - return $this->_viewUrl->getViewFileUrl($file, $params); - } catch (\Magento\Exception $e) { - $this->_logger->logException($e); - return $this->_urlBuilder->getUrl('', array('_direct' => 'core/index/notfound')); - } - } - - /** - * @param \Magento\Core\Block\Html\Select $selectBlock - * @param $identifier - * @param $name - * @param $nameOptionsById - * @param null $selectedValue - * @return mixed - */ - public function getSelectHtml($selectBlock, $identifier, $name, $nameOptionsById, $selectedValue = null) - { - - $options = array(); - foreach ($nameOptionsById as $value => $label) { - $options[] = array('value' => $value, 'label' => $label); - } - return $this->_initSelectBlock($selectBlock, $identifier, $name, $nameOptionsById, $selectedValue) - ->setOptions($options) - ->getHtml(); - } - - /** - * From \Magento\Catalog\Block\Product\View\Options\Type\Date: Return drop-down html with range of values - * - * @param \Magento\Core\Block\Html\Select $selectBlock - * @param string $name Id/name of html select element - * @param int $fromNumber Start position - * @param int $toNumber End position - * @param $nameOptionsById - * @param $optionsId - * @param null $value Value selected - * @return string Formatted Html - */ - public function getSelectFromToHtml( - $selectBlock, $name, $fromNumber, $toNumber, - $nameOptionsById, $optionsId, $value = null - ) { - $options = array( - array('value' => '', 'label' => '-') - ); - for ($i = $fromNumber; $i <= $toNumber; $i++) { - $options[] = array('value' => $i, 'label' => $this->_getValueWithLeadingZeros($i)); - } - return $this->_initSelectBlock($selectBlock, $optionsId, $name, $nameOptionsById, $value) - ->setOptions($options) - ->getHtml(); - } - - /** - * Initializes values in the selection list. - * From \Magento\Catalog\Block\Product\View\Options\Type\Date: HTML select element - * - * @param \Magento\Core\Block\Html\Select $selectBlock - * @param $identifier - * @param $name - * @param $nameOptionsById - * @param null $value - * @return \Magento\Core\Block\Html\Select - */ - protected function _initSelectBlock($selectBlock, $identifier, $name, $nameOptionsById, $value = null) - { - $selectBlock->setId('options_' . $identifier . '_' . $name); - $selectBlock->setClass('product-custom-option datetime-picker'); - $selectBlock->setExtraParams(); - $selectBlock->setName('options[' . $identifier . '][' . $name . ']'); - - $extraParams = 'style="width:auto"'; - $selectBlock->setExtraParams($extraParams); - - if (is_null($value)) { - $value = $nameOptionsById; - } - if (!is_null($value)) { - $selectBlock->setValue($value); - } - - return $selectBlock; - } - - /** - * From \Magento\Catalog\Block\Product\View\Options\Type\Date: Add Leading Zeros to number less than 10 - * - * @param int|string $value value to pad with zeros - * @return string - */ - protected function _getValueWithLeadingZeros($value) - { - return $value < 10 ? '0'.$value : $value; - } -} diff --git a/app/code/Magento/Core/Model/TemplateEngine/Twig/EnvironmentFactory.php b/app/code/Magento/Core/Model/TemplateEngine/Twig/EnvironmentFactory.php deleted file mode 100644 index 806220890a55e..0000000000000 --- a/app/code/Magento/Core/Model/TemplateEngine/Twig/EnvironmentFactory.php +++ /dev/null @@ -1,112 +0,0 @@ -_filesystem = $filesystem; - $this->_extension = $extension; - $this->_dir = $dir; - $this->_logger = $logger; - $this->_loader = $loader; - $this->_environment = null; - } - - /** - * Initialize (if necessary) and return the Twig environment. - * - * @return \Twig_Environment - */ - public function create() - { - if ($this->_environment === null) { - $this->_environment = new \Twig_Environment($this->_loader); - try { - $precompiledTmpltDir = $this->_dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . '/twig_templates'; - $this->_filesystem->createDirectory($precompiledTmpltDir); - $this->_environment->setCache($precompiledTmpltDir); - } catch (\Magento\Filesystem\FilesystemException $e) { - // Twig will just run slowly but not worth stopping Magento for it - $this->_logger->logException($e); - } catch (\InvalidArgumentException $e) { - // Can happen if path isn't found, shouldn't stop Magento - $this->_logger->logException($e); - } - $this->_environment->enableStrictVariables(); - $this->_environment->addExtension(new \Twig_Extension_Escaper('html')); - $this->_environment->addExtension(new \Twig_Extension_Optimizer(1)); - $this->_environment->addExtension($this->_extension); - $this->_environmentInitialized = true; - } - return $this->_environment; - } -} diff --git a/app/code/Magento/Core/Model/TemplateEngine/Twig/Extension.php b/app/code/Magento/Core/Model/TemplateEngine/Twig/Extension.php deleted file mode 100644 index c87f4899f14f8..0000000000000 --- a/app/code/Magento/Core/Model/TemplateEngine/Twig/Extension.php +++ /dev/null @@ -1,118 +0,0 @@ -_commonFunctions = $commonFunctions; - $this->_layoutFunctions = $layoutFunctions; - } - - /** - * Define the name of the extension to be used in Twig environment - * - * @return string - */ - public function getName() - { - return self::MAGENTO; - } - - /** - * Returns a list of global functions to add to the existing list. - * - * @return array An array of global functions - */ - public function getFunctions() - { - $functions = $this->_commonFunctions->getFunctions(); - $functions = array_merge($functions, $this->_layoutFunctions->getFunctions()); - - return $functions; - } - - /** - * Returns a list of filters to add to the existing list. - * - * @return array An array of filters - */ - public function getFilters() - { - $options = array('is_safe' => array('html')); - return array( - new \Twig_SimpleFilter('translate', array($this, 'translate'), $options), - ); - } - - /** - * Translate block sentence - * - * @return string - */ - public function translate() - { - return call_user_func_array('__', func_get_args()); - } - - /** - * Sets the block tracker - * - * @param \Magento\Core\Model\TemplateEngine\BlockTrackerInterface $blockTracker - */ - public function setBlockTracker(\Magento\Core\Model\TemplateEngine\BlockTrackerInterface $blockTracker) - { - $this->_blockTracker = $blockTracker; - // Need to inject this dependency at runtime to avoid cyclical dependency - $this->_layoutFunctions->setBlockTracker($blockTracker); - } -} diff --git a/app/code/Magento/Core/Model/TemplateEngine/Twig/FullFileName.php b/app/code/Magento/Core/Model/TemplateEngine/Twig/FullFileName.php deleted file mode 100644 index 997d6a6f6fd87..0000000000000 --- a/app/code/Magento/Core/Model/TemplateEngine/Twig/FullFileName.php +++ /dev/null @@ -1,121 +0,0 @@ -_appState = $appState; - } - - - /** - * Gets the source code of a template, given its name. - * - * @param string $name The name of the template to load - * @return string The template source code - * @throws \Twig_Error_Loader When $name is not found - */ - public function getSource($name) - { - $return = file_get_contents($name); - if ($return === false) { - throw new \Twig_Error_Loader(sprintf('Unable to find "%s".', $name)); - } - // add to cache - $this->exists($name); - return $return; - } - - /** - * Gets the cache key to use for the cache for a given template name. - * - * @param string $name The name of the template to load - * @return string The cache key - */ - public function getCacheKey($name) - { - return $name; - } - - /** - * Returns true if the template is still fresh. - * - * @param string $name The template name - * @param int $time The last modification time of the cached template - * @return Boolean true if the template is fresh, false otherwise - * @throws \Twig_Error_Loader When last-modified time of $name cannot be found - */ - public function isFresh($name, $time) - { - if ($this->_appState->getMode() === \Magento\Core\Model\App\State::MODE_DEVELOPER) { - $lastModifiedTime = filemtime($name); - if ($lastModifiedTime === false) { - throw new \Twig_Error_Loader(sprintf('Could not get last-modified time for "%s".', $name)); - } - return $lastModifiedTime < $time; - } - - return true; - } - - /** - * Determines whether the template exists or not. - * - * Since the template name is interpreted as a fully-qualified path, - * this is equivalent to checking whether - * the file at the given location exists. - * - * @param string $name - * @return bool - * @throws \Twig_Error_Loader if $name is not a file - */ - public function exists($name) - { - if (!isset($this->_existsCache[$name])) { - $this->_existsCache[$name] = file_exists($name); - } - return $this->_existsCache[$name]; - } -} diff --git a/app/code/Magento/Core/Model/TemplateEngine/Twig/LayoutFunctions.php b/app/code/Magento/Core/Model/TemplateEngine/Twig/LayoutFunctions.php deleted file mode 100644 index 152dc3580db72..0000000000000 --- a/app/code/Magento/Core/Model/TemplateEngine/Twig/LayoutFunctions.php +++ /dev/null @@ -1,164 +0,0 @@ -_layout = $layout; - } - - /** - * Sets the block tracker that is needed for dynamically determining the child html at runtime - * - * @param \Magento\Core\Model\TemplateEngine\BlockTrackerInterface $blockTracker - */ - public function setBlockTracker(\Magento\Core\Model\TemplateEngine\BlockTrackerInterface $blockTracker) - { - $this->_blockTracker = $blockTracker; - } - - /** - * Returns a list of global functions to add to the existing list. - * - * @return array An array of global functions - */ - public function getFunctions() - { - $options = array('is_safe' => array('html')); - return array( - new \Twig_SimpleFunction('getBlockData', array($this, 'getBlockData'), $options), - new \Twig_SimpleFunction('getMessagesHtml', - array($this->_layout->getMessagesBlock(), 'getGroupedHtml'), $options), - new \Twig_SimpleFunction('executeRenderer', array($this->_layout, 'executeRenderer'), $options), - new \Twig_SimpleFunction('getChildHtml', array($this, 'getChildHtml'), $options), - new \Twig_SimpleFunction('getGroupChildNames', array($this, 'getGroupChildNames'), $options), - new \Twig_SimpleFunction('getBlockNameByAlias', array($this, 'getBlockNameByAlias'), $options), - new \Twig_SimpleFunction('createBlock', array($this->_layout, 'createBlock')), - new \Twig_SimpleFunction('getElementAlias', array($this->_layout, 'getElementAlias'), $options), - new \Twig_SimpleFunction('renderElement', array($this->_layout, 'renderElement'), $options), - ); - } - - /** - * Returns data assigned to the block instance - * - * @param $name - * @param string $key - * @return mixed|null - */ - public function getBlockData($name, $key = '') - { - $block = $this->_layout->getBlock($name); - if ($block) { - return $block->getData($key); - } - return null; - } - - /** - * Render Block defined by the alias from the parent block defined by the name - * - * @param $name - * @param string $alias - * @param bool $useCache - * @return string - */ - public function renderBlock($name, $alias = '', $useCache = true) - { - $out = ''; - if ($alias) { - $childName = $this->_layout->getChildName($name, $alias); - if ($childName) { - $out = $this->_layout->renderElement($childName, $useCache); - } - } else { - foreach ($this->_layout->getChildNames($name) as $child) { - $out .= $this->_layout->renderElement($child, $useCache); - } - } - - return $out; - } - - /** - * Render children of the current block defined by alias - * - * @param string $alias - * @param bool $useCache - * @return string - */ - public function getChildHtml($alias = '', $useCache = true) - { - $name = $this->_blockTracker->getCurrentBlock()->getNameInLayout(); - return $this->renderBlock($name, $alias, $useCache); - } - - /** - * Get a group of child blocks - * - * Returns an array of => - * or an array of => - * The callback currently supports only $this methods and passes the alias as parameter - * - * @param string $parentName - * @param string $groupName - * @return array - */ - public function getGroupChildNames($parentName, $groupName) - { - return $this->_layout->getGroupChildNames($parentName, $groupName); - } - - /** - * Get name of the block defined by alias in context of parent block defined by name - * - * @param $parentName - * @param $alias - * @return bool|string - */ - public function getBlockNameByAlias($parentName, $alias) - { - $name = $this->_layout->getChildName($parentName, $alias); - if (!$name) { - return ''; - } - return $name; - } -} diff --git a/app/code/Magento/Core/Model/Theme.php b/app/code/Magento/Core/Model/Theme.php index 3a462a139d993..38fc8e2c31829 100644 --- a/app/code/Magento/Core/Model/Theme.php +++ b/app/code/Magento/Core/Model/Theme.php @@ -29,7 +29,7 @@ /** * Theme model class * - * @method \Magento\Core\Model\Theme save() + * @method \Magento\View\Design\ThemeInterface save() * @method string getPackageCode() * @method string getParentThemePath() * @method string getParentId() @@ -41,22 +41,22 @@ * @method int getType() * @method array getAssignedStores() * @method \Magento\Core\Model\Resource\Theme\Collection getCollection() - * @method \Magento\Core\Model\Theme setAssignedStores(array $stores) - * @method \Magento\Core\Model\Theme addData(array $data) - * @method \Magento\Core\Model\Theme setParentId(int $id) - * @method \Magento\Core\Model\Theme setParentTheme($parentTheme) - * @method \Magento\Core\Model\Theme setPackageCode(string $packageCode) - * @method \Magento\Core\Model\Theme setThemeCode(string $themeCode) - * @method \Magento\Core\Model\Theme setThemePath(string $themePath) - * @method \Magento\Core\Model\Theme setThemeVersion(string $themeVersion) - * @method \Magento\Core\Model\Theme setArea(string $area) - * @method \Magento\Core\Model\Theme setThemeTitle(string $themeTitle) - * @method \Magento\Core\Model\Theme setType(int $type) - * @method \Magento\Core\Model\Theme setCode(string $code) + * @method \Magento\View\Design\ThemeInterface setAssignedStores(array $stores) + * @method \Magento\View\Design\ThemeInterface addData(array $data) + * @method \Magento\View\Design\ThemeInterface setParentId(int $id) + * @method \Magento\View\Design\ThemeInterface setParentTheme($parentTheme) + * @method \Magento\View\Design\ThemeInterface setPackageCode(string $packageCode) + * @method \Magento\View\Design\ThemeInterface setThemeCode(string $themeCode) + * @method \Magento\View\Design\ThemeInterface setThemePath(string $themePath) + * @method \Magento\View\Design\ThemeInterface setThemeVersion(string $themeVersion) + * @method \Magento\View\Design\ThemeInterface setArea(string $area) + * @method \Magento\View\Design\ThemeInterface setThemeTitle(string $themeTitle) + * @method \Magento\View\Design\ThemeInterface setType(int $type) + * @method \Magento\View\Design\ThemeInterface setCode(string $code) * * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ -class Theme extends \Magento\Core\Model\AbstractModel implements \Magento\Core\Model\ThemeInterface +class Theme extends \Magento\Core\Model\AbstractModel implements \Magento\View\Design\ThemeInterface { /**#@+ * Theme types group diff --git a/app/code/Magento/Core/Model/Theme/Collection.php b/app/code/Magento/Core/Model/Theme/Collection.php index 3599b97bbe2b9..0308169d70928 100644 --- a/app/code/Magento/Core/Model/Theme/Collection.php +++ b/app/code/Magento/Core/Model/Theme/Collection.php @@ -59,17 +59,17 @@ class Collection extends \Magento\Data\Collection /** * @param \Magento\Filesystem $filesystem - * @param \Magento\Core\Model\Dir $dirs + * @param \Magento\App\Dir $dirs * @param \Magento\Core\Model\EntityFactory $entityFactory */ public function __construct( \Magento\Filesystem $filesystem, - \Magento\Core\Model\Dir $dirs, + \Magento\App\Dir $dirs, \Magento\Core\Model\EntityFactory $entityFactory ) { parent::__construct($entityFactory); $this->_filesystem = $filesystem; - $this->setBaseDir($dirs->getDir(\Magento\Core\Model\Dir::THEMES)); + $this->setBaseDir($dirs->getDir(\Magento\App\Dir::THEMES)); } /** @@ -188,11 +188,11 @@ public function loadData($printQuery = false, $logQuery = false) protected function _updateRelations() { $themeItems = $this->getItems(); - /** @var $theme \Magento\Object|\Magento\Core\Model\ThemeInterface */ + /** @var $theme \Magento\Object|\Magento\View\Design\ThemeInterface */ foreach ($themeItems as $theme) { $parentThemePath = $theme->getData('parent_theme_path'); if ($parentThemePath) { - $themePath = $theme->getArea() . \Magento\Core\Model\ThemeInterface::PATH_SEPARATOR . $parentThemePath; + $themePath = $theme->getArea() . \Magento\View\Design\ThemeInterface::PATH_SEPARATOR . $parentThemePath; if (isset($themeItems[$themePath])) { $theme->setParentTheme($themeItems[$themePath]); } @@ -277,7 +277,7 @@ public function _prepareConfigurationData($configPath) protected function _renderFilters() { $filters = $this->getFilter(array()); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($this->getItems() as $itemKey => $theme) { $removeItem = false; foreach ($filters as $filter) { @@ -340,10 +340,10 @@ public function toOptionArray($addEmptyField = false) /** * Checks that a theme present in filesystem collection * - * @param \Magento\Core\Model\ThemeInterface $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return bool */ - public function hasTheme(\Magento\Core\Model\ThemeInterface $theme) + public function hasTheme(\Magento\View\Design\ThemeInterface $theme) { $themeItems = $this->getItems(); return $theme->getThemePath() && isset($themeItems[$theme->getFullPath()]); diff --git a/app/code/Magento/Core/Model/Theme/CopyService.php b/app/code/Magento/Core/Model/Theme/CopyService.php index 718e309013c19..8af315c0e13b7 100644 --- a/app/code/Magento/Core/Model/Theme/CopyService.php +++ b/app/code/Magento/Core/Model/Theme/CopyService.php @@ -52,7 +52,7 @@ class CopyService protected $_updateFactory; /** - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -66,7 +66,7 @@ class CopyService * @param \Magento\Core\Model\Theme\FileFactory $fileFactory * @param \Magento\Core\Model\Layout\Link $link * @param \Magento\Core\Model\Layout\UpdateFactory $updateFactory - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Model\Theme\Customization\Path $customization */ public function __construct( @@ -74,7 +74,7 @@ public function __construct( \Magento\Core\Model\Theme\FileFactory $fileFactory, \Magento\Core\Model\Layout\Link $link, \Magento\Core\Model\Layout\UpdateFactory $updateFactory, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Model\Theme\Customization\Path $customization ) { $this->_filesystem = $filesystem; @@ -88,10 +88,10 @@ public function __construct( /** * Copy customizations from one theme to another * - * @param \Magento\Core\Model\Theme $source - * @param \Magento\Core\Model\Theme $target + * @param \Magento\View\Design\ThemeInterface $source + * @param \Magento\View\Design\ThemeInterface $target */ - public function copy(\Magento\Core\Model\Theme $source, \Magento\Core\Model\Theme $target) + public function copy(\Magento\View\Design\ThemeInterface $source, \Magento\View\Design\ThemeInterface $target) { $this->_copyDatabaseCustomization($source, $target); $this->_copyLayoutCustomization($source, $target); @@ -101,11 +101,13 @@ public function copy(\Magento\Core\Model\Theme $source, \Magento\Core\Model\Them /** * Copy customizations stored in a database from one theme to another, overriding existing data * - * @param \Magento\Core\Model\Theme $source - * @param \Magento\Core\Model\Theme $target + * @param \Magento\View\Design\ThemeInterface $source + * @param \Magento\View\Design\ThemeInterface $target */ - protected function _copyDatabaseCustomization(\Magento\Core\Model\Theme $source, \Magento\Core\Model\Theme $target) - { + protected function _copyDatabaseCustomization( + \Magento\View\Design\ThemeInterface $source, + \Magento\View\Design\ThemeInterface $target + ) { /** @var $themeFile \Magento\Core\Model\Theme\File */ foreach ($target->getCustomization()->getFiles() as $themeFile) { $themeFile->delete(); @@ -130,11 +132,13 @@ protected function _copyDatabaseCustomization(\Magento\Core\Model\Theme $source, /** * Add layout links to general layout updates for themes * - * @param \Magento\Core\Model\Theme $source - * @param \Magento\Core\Model\Theme $target + * @param \Magento\View\Design\ThemeInterface $source + * @param \Magento\View\Design\ThemeInterface $target */ - protected function _copyLayoutCustomization(\Magento\Core\Model\Theme $source, \Magento\Core\Model\Theme $target) - { + protected function _copyLayoutCustomization( + \Magento\View\Design\ThemeInterface $source, + \Magento\View\Design\ThemeInterface $target + ) { $update = $this->_updateFactory->create(); /** @var $targetUpdates \Magento\Core\Model\Resource\Layout\Update\Collection */ $targetUpdates = $update->getCollection(); @@ -163,12 +167,12 @@ protected function _copyLayoutCustomization(\Magento\Core\Model\Theme $source, \ /** * Copy customizations stored in a file system from one theme to another, overriding existing data * - * @param \Magento\Core\Model\Theme $source - * @param \Magento\Core\Model\Theme $target + * @param \Magento\View\Design\ThemeInterface $source + * @param \Magento\View\Design\ThemeInterface $target */ protected function _copyFilesystemCustomization( - \Magento\Core\Model\Theme $source, - \Magento\Core\Model\Theme $target + \Magento\View\Design\ThemeInterface $source, + \Magento\View\Design\ThemeInterface $target ) { $sourcePath = $this->_customizationPath->getCustomizationPath($source); $targetPath = $this->_customizationPath->getCustomizationPath($target); diff --git a/app/code/Magento/Core/Model/Theme/Customization.php b/app/code/Magento/Core/Model/Theme/Customization.php index 2c6d7d65eff3b..e0bd1b786a013 100644 --- a/app/code/Magento/Core/Model/Theme/Customization.php +++ b/app/code/Magento/Core/Model/Theme/Customization.php @@ -59,12 +59,12 @@ class Customization implements \Magento\Core\Model\Theme\CustomizationInterface /** * @param \Magento\Core\Model\Resource\Theme\File\CollectionFactory $fileFactory * @param \Magento\Core\Model\Theme\Customization\Path $customizationPath - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme */ public function __construct( \Magento\Core\Model\Resource\Theme\File\CollectionFactory $fileFactory, \Magento\Core\Model\Theme\Customization\Path $customizationPath, - \Magento\Core\Model\Theme $theme = null + \Magento\View\Design\ThemeInterface $theme = null ) { $this->_fileFactory = $fileFactory; $this->_customizationPath = $customizationPath; diff --git a/app/code/Magento/Core/Model/Theme/Customization/Path.php b/app/code/Magento/Core/Model/Theme/Customization/Path.php index ec49ab44db934..0addfb608d317 100644 --- a/app/code/Magento/Core/Model/Theme/Customization/Path.php +++ b/app/code/Magento/Core/Model/Theme/Customization/Path.php @@ -37,16 +37,16 @@ class Path const DIR_NAME = 'theme_customization'; /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; /** * Initialize dependencies * - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir */ - public function __construct(\Magento\Core\Model\Dir $dir) + public function __construct(\Magento\App\Dir $dir) { $this->_dir = $dir; } @@ -54,14 +54,14 @@ public function __construct(\Magento\Core\Model\Dir $dir) /** * Returns customization absolute path * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return string|null */ - public function getCustomizationPath(\Magento\Core\Model\Theme $theme) + public function getCustomizationPath(\Magento\View\Design\ThemeInterface $theme) { $path = null; if ($theme->getId()) { - $path = $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA) + $path = $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DIRECTORY_SEPARATOR . self::DIR_NAME . DIRECTORY_SEPARATOR . $theme->getId(); } @@ -71,14 +71,14 @@ public function getCustomizationPath(\Magento\Core\Model\Theme $theme) /** * Get directory where themes files are stored * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return string|null */ - public function getThemeFilesPath(\Magento\Core\Model\Theme $theme) + public function getThemeFilesPath(\Magento\View\Design\ThemeInterface $theme) { $path = null; if ($theme->getFullPath()) { - $physicalThemesDir = $this->_dir->getDir(\Magento\Core\Model\Dir::THEMES); + $physicalThemesDir = $this->_dir->getDir(\Magento\App\Dir::THEMES); $path = \Magento\Filesystem::fixSeparator($physicalThemesDir . DIRECTORY_SEPARATOR . $theme->getFullPath()); } return $path; @@ -87,10 +87,10 @@ public function getThemeFilesPath(\Magento\Core\Model\Theme $theme) /** * Get path to custom view configuration file * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return string|null */ - public function getCustomViewConfigPath(\Magento\Core\Model\Theme $theme) + public function getCustomViewConfigPath(\Magento\View\Design\ThemeInterface $theme) { $path = null; if ($theme->getId()) { diff --git a/app/code/Magento/Core/Model/Theme/Domain/Factory.php b/app/code/Magento/Core/Model/Theme/Domain/Factory.php index bf4f93a1a7d6f..6353cc6a7d951 100644 --- a/app/code/Magento/Core/Model/Theme/Domain/Factory.php +++ b/app/code/Magento/Core/Model/Theme/Domain/Factory.php @@ -56,11 +56,11 @@ public function __construct(\Magento\ObjectManager $objectManager) /** * Create new config object * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return \Magento\Core\Model\Theme\Domain\Virtual|\Magento\Core\Model\Theme\Domain\Staging * @throws \Magento\Core\Exception */ - public function create(\Magento\Core\Model\Theme $theme) + public function create(\Magento\View\Design\ThemeInterface $theme) { if (!isset($this->_types[$theme->getType()])) { throw new \Magento\Core\Exception(sprintf('Invalid type of theme domain model "%s"', $theme->getType())); diff --git a/app/code/Magento/Core/Model/Theme/Domain/Physical.php b/app/code/Magento/Core/Model/Theme/Domain/Physical.php index 427f1d4bba194..3cd5363558317 100644 --- a/app/code/Magento/Core/Model/Theme/Domain/Physical.php +++ b/app/code/Magento/Core/Model/Theme/Domain/Physical.php @@ -54,13 +54,13 @@ class Physical protected $_themeCollection; /** - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @param \Magento\Core\Model\ThemeFactory $themeFactory * @param \Magento\Core\Model\Theme\CopyService $themeCopyService * @param \Magento\Core\Model\Resource\Theme\Collection $themeCollection */ public function __construct( - \Magento\Core\Model\Theme $theme, + \Magento\View\Design\ThemeInterface $theme, \Magento\Core\Model\ThemeFactory $themeFactory, \Magento\Core\Model\Theme\CopyService $themeCopyService, \Magento\Core\Model\Resource\Theme\Collection $themeCollection @@ -74,7 +74,7 @@ public function __construct( /** * Create theme customization * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return \Magento\Core\Model\Theme */ public function createVirtualTheme($theme) @@ -86,7 +86,7 @@ public function createVirtualTheme($theme) $themeData['theme_title'] = $this->_getVirtualThemeTitle($theme); $themeData['type'] = \Magento\Core\Model\Theme::TYPE_VIRTUAL; - /** @var $themeCustomization \Magento\Core\Model\Theme */ + /** @var $themeCustomization \Magento\View\Design\ThemeInterface */ $themeCustomization = $this->_themeFactory->create()->setData($themeData); $themeCustomization->getThemeImage()->createPreviewImageCopy($theme->getPreviewImage()); $themeCustomization->save(); @@ -99,7 +99,7 @@ public function createVirtualTheme($theme) /** * Get virtual theme title * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return string */ protected function _getVirtualThemeTitle($theme) diff --git a/app/code/Magento/Core/Model/Theme/Domain/Staging.php b/app/code/Magento/Core/Model/Theme/Domain/Staging.php index f43153fc5e80d..f1302a2d0ce93 100644 --- a/app/code/Magento/Core/Model/Theme/Domain/Staging.php +++ b/app/code/Magento/Core/Model/Theme/Domain/Staging.php @@ -44,11 +44,11 @@ class Staging protected $_themeCopyService; /** - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @param \Magento\Core\Model\Theme\CopyService $themeCopyService */ public function __construct( - \Magento\Core\Model\Theme $theme, + \Magento\View\Design\ThemeInterface $theme, \Magento\Core\Model\Theme\CopyService $themeCopyService ) { $this->_theme = $theme; diff --git a/app/code/Magento/Core/Model/Theme/Domain/Virtual.php b/app/code/Magento/Core/Model/Theme/Domain/Virtual.php index 29600e46f1b08..491a5f0708753 100644 --- a/app/code/Magento/Core/Model/Theme/Domain/Virtual.php +++ b/app/code/Magento/Core/Model/Theme/Domain/Virtual.php @@ -63,13 +63,13 @@ class Virtual protected $_customizationConfig; /** - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @param \Magento\Core\Model\ThemeFactory $themeFactory * @param \Magento\Core\Model\Theme\CopyService $themeCopyService * @param \Magento\Theme\Model\Config\Customization $customizationConfig */ public function __construct( - \Magento\Core\Model\Theme $theme, + \Magento\View\Design\ThemeInterface $theme, \Magento\Core\Model\ThemeFactory $themeFactory, \Magento\Core\Model\Theme\CopyService $themeCopyService, \Magento\Theme\Model\Config\Customization $customizationConfig @@ -104,7 +104,7 @@ public function getStagingTheme() */ public function getPhysicalTheme() { - /** @var $parentTheme \Magento\Core\Model\Theme */ + /** @var $parentTheme \Magento\View\Design\ThemeInterface */ $parentTheme = $this->_theme->getParentTheme(); while ($parentTheme && !$parentTheme->isPhysical()) { $parentTheme = $parentTheme->getParentTheme(); diff --git a/app/code/Magento/Core/Model/Theme/File.php b/app/code/Magento/Core/Model/Theme/File.php index 067f18d71fa6b..c7fb466d569e2 100644 --- a/app/code/Magento/Core/Model/Theme/File.php +++ b/app/code/Magento/Core/Model/Theme/File.php @@ -126,7 +126,7 @@ public function getCustomizationService() /** * {@inheritdoc} */ - public function setTheme(\Magento\Core\Model\Theme $theme) + public function setTheme(\Magento\View\Design\ThemeInterface $theme) { $this->_theme = $theme; $this->setData('theme_id', $theme->getId()); diff --git a/app/code/Magento/Core/Model/Theme/FileInterface.php b/app/code/Magento/Core/Model/Theme/FileInterface.php index 09374c19d21ad..71de934f586b7 100644 --- a/app/code/Magento/Core/Model/Theme/FileInterface.php +++ b/app/code/Magento/Core/Model/Theme/FileInterface.php @@ -49,10 +49,10 @@ public function getCustomizationService(); /** * Attaches selected theme to current file * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return $this */ - public function setTheme(\Magento\Core\Model\Theme $theme); + public function setTheme(\Magento\View\Design\ThemeInterface $theme); /** * Get theme model diff --git a/app/code/Magento/Core/Model/Theme/FlyweightFactory.php b/app/code/Magento/Core/Model/Theme/FlyweightFactory.php index 6524b43832ab8..7c5ec567b8af8 100644 --- a/app/code/Magento/Core/Model/Theme/FlyweightFactory.php +++ b/app/code/Magento/Core/Model/Theme/FlyweightFactory.php @@ -64,7 +64,7 @@ public function __construct(\Magento\ObjectManager $objectManager) * @return \Magento\Core\Model\Theme|null * @throws \InvalidArgumentException */ - public function create($themeKey, $area = \Magento\Core\Model\View\DesignInterface::DEFAULT_AREA) + public function create($themeKey, $area = \Magento\View\DesignInterface::DEFAULT_AREA) { if (is_numeric($themeKey)) { $themeModel = $this->_loadById($themeKey); @@ -92,8 +92,8 @@ protected function _loadById($themeId) return $this->_themes[$themeId]; } - /** @var $themeModel \Magento\Core\Model\Theme */ - $themeModel = $this->_objectManager->create('Magento\Core\Model\Theme'); + /** @var $themeModel \Magento\View\Design\ThemeInterface */ + $themeModel = $this->_objectManager->create('Magento\View\Design\ThemeInterface'); $themeModel->load($themeId); return $themeModel; } @@ -107,7 +107,7 @@ protected function _loadById($themeId) */ protected function _loadByPath($themePath, $area) { - $fullPath = $area . \Magento\Core\Model\ThemeInterface::PATH_SEPARATOR . $themePath; + $fullPath = $area . \Magento\View\Design\ThemeInterface::PATH_SEPARATOR . $themePath; if (isset($this->_themesByPath[$fullPath])) { return $this->_themesByPath[$fullPath]; } @@ -121,10 +121,10 @@ protected function _loadByPath($themePath, $area) /** * Add theme to shared collection * - * @param \Magento\Core\Model\Theme $themeModel + * @param \Magento\View\Design\ThemeInterface $themeModel * @return $this */ - protected function _addTheme(\Magento\Core\Model\Theme $themeModel) + protected function _addTheme(\Magento\View\Design\ThemeInterface $themeModel) { if ($themeModel->getId()) { $this->_themes[$themeModel->getId()] = $themeModel; diff --git a/app/code/Magento/Core/Model/Theme/Image.php b/app/code/Magento/Core/Model/Theme/Image.php index 1b36c85986d53..19c0909655ee2 100644 --- a/app/code/Magento/Core/Model/Theme/Image.php +++ b/app/code/Magento/Core/Model/Theme/Image.php @@ -79,7 +79,7 @@ class Image * @param \Magento\Core\Model\Theme\Image\Uploader $uploader * @param \Magento\Core\Model\Theme\Image\Path $themeImagePath * @param \Magento\Core\Model\Logger $logger - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme */ public function __construct( \Magento\Filesystem $filesystem, @@ -87,7 +87,7 @@ public function __construct( \Magento\Core\Model\Theme\Image\Uploader $uploader, \Magento\Core\Model\Theme\Image\Path $themeImagePath, \Magento\Core\Model\Logger $logger, - \Magento\Core\Model\Theme $theme = null + \Magento\View\Design\ThemeInterface $theme = null ) { $this->_filesystem = $filesystem; $this->_imageFactory = $imageFactory; diff --git a/app/code/Magento/Core/Model/Theme/Image/Path.php b/app/code/Magento/Core/Model/Theme/Image/Path.php index 7203ce50b642d..9fc553dd6a797 100644 --- a/app/code/Magento/Core/Model/Theme/Image/Path.php +++ b/app/code/Magento/Core/Model/Theme/Image/Path.php @@ -42,7 +42,7 @@ class Path const DEFAULT_PREVIEW_IMAGE = 'Magento_Core::theme/default_preview.jpg'; /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -59,12 +59,12 @@ class Path /** * Initialize dependencies * - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\View\Url $viewUrl * @param \Magento\Core\Model\StoreManager $storeManager */ public function __construct( - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Core\Model\View\Url $viewUrl, \Magento\Core\Model\StoreManager $storeManager ) { @@ -101,7 +101,7 @@ public function getPreviewImageDefaultUrl() */ public function getImagePreviewDirectory() { - return $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA) . DIRECTORY_SEPARATOR + return $this->_dir->getDir(\Magento\App\Dir::MEDIA) . DIRECTORY_SEPARATOR . str_replace('/', DIRECTORY_SEPARATOR, self::PREVIEW_DIRECTORY_PATH); } @@ -113,7 +113,7 @@ public function getImagePreviewDirectory() public function getTemporaryDirectory() { return implode(DIRECTORY_SEPARATOR, array( - $this->_dir->getDir(\Magento\Core\Model\Dir::MEDIA), 'theme', 'origin' + $this->_dir->getDir(\Magento\App\Dir::MEDIA), 'theme', 'origin' )); } } diff --git a/app/code/Magento/Core/Model/Theme/Observer.php b/app/code/Magento/Core/Model/Theme/Observer.php index 21e2622a20d68..c985b9bc41ce0 100644 --- a/app/code/Magento/Core/Model/Theme/Observer.php +++ b/app/code/Magento/Core/Model/Theme/Observer.php @@ -47,7 +47,7 @@ class Observer protected $_themeConfig; /** - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventDispatcher; @@ -55,13 +55,13 @@ class Observer * @param \Magento\Core\Model\Theme\ImageFactory $themeImageFactory * @param \Magento\Core\Model\Resource\Layout\Update\Collection $updateCollection * @param \Magento\Theme\Model\Config\Customization $themeConfig - * @param \Magento\Core\Model\Event\Manager $eventDispatcher + * @param \Magento\Event\ManagerInterface $eventDispatcher */ public function __construct( \Magento\Core\Model\Theme\ImageFactory $themeImageFactory, \Magento\Core\Model\Resource\Layout\Update\Collection $updateCollection, \Magento\Theme\Model\Config\Customization $themeConfig, - \Magento\Core\Model\Event\Manager $eventDispatcher + \Magento\Event\ManagerInterface $eventDispatcher ) { $this->_themeImageFactory = $themeImageFactory; $this->_updateCollection = $updateCollection; @@ -81,7 +81,7 @@ public function cleanThemeRelatedContent(\Magento\Event\Observer $observer) if ($theme instanceof \Magento\Core\Model\Theme) { return; } - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ if ($this->_themeConfig->isThemeAssignedToStore($theme)) { throw new \Magento\Core\Exception(__('Theme isn\'t deletable.')); } @@ -98,7 +98,7 @@ public function checkThemeIsAssigned(\Magento\Event\Observer $observer) { $theme = $observer->getEvent()->getData('theme'); if ($theme instanceof \Magento\Core\Model\Theme) { - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ if ($this->_themeConfig->isThemeAssignedToStore($theme)) { $this->_eventDispatcher->dispatch('assigned_theme_changed', array('theme' => $this)); } diff --git a/app/code/Magento/Core/Model/Theme/Registration.php b/app/code/Magento/Core/Model/Theme/Registration.php index 6dbd31069e5bf..2e0d0a8a5653c 100644 --- a/app/code/Magento/Core/Model/Theme/Registration.php +++ b/app/code/Magento/Core/Model/Theme/Registration.php @@ -109,7 +109,7 @@ public function register($baseDir = '', $pathPattern = '') * Register theme and recursively all its ascendants * Second param is optional and is used to prevent circular references in inheritance chain * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @param array $inheritanceChain * @return \Magento\Core\Model\Theme\Collection * @throws \Magento\Core\Exception @@ -146,10 +146,10 @@ protected function _registerThemeRecursively(&$theme, $inheritanceChain = array( /** * Save preview image for theme * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return $this */ - protected function _savePreviewImage(\Magento\Core\Model\Theme $theme) + protected function _savePreviewImage(\Magento\View\Design\ThemeInterface $theme) { $themeDirectory = $theme->getCustomization()->getThemeFilesPath(); if (!$theme->getPreviewImage() || !$themeDirectory) { @@ -181,7 +181,7 @@ public function getThemeFromDb($fullPath) public function checkPhysicalThemes() { $themes = $this->_collectionFactory->create()->addTypeFilter(\Magento\Core\Model\Theme::TYPE_PHYSICAL); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($themes as $theme) { if (!$this->_themeCollection->hasTheme($theme)) { $theme->setType(\Magento\Core\Model\Theme::TYPE_VIRTUAL)->save(); @@ -201,7 +201,7 @@ public function checkAllowedThemeRelations() list($parentType, $childType) = $typesSequence; $collection = $this->_collectionFactory->create(); $collection->addTypeRelationFilter($parentType, $childType); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($collection as $theme) { $parentId = $this->_getResetParentId($theme); if ($theme->getParentId() != $parentId) { @@ -215,10 +215,10 @@ public function checkAllowedThemeRelations() /** * Reset parent themes by type * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return int|null */ - protected function _getResetParentId(\Magento\Core\Model\Theme $theme) + protected function _getResetParentId(\Magento\View\Design\ThemeInterface $theme) { $parentTheme = $theme->getParentTheme(); while ($parentTheme) { diff --git a/app/code/Magento/Core/Model/Translate.php b/app/code/Magento/Core/Model/Translate.php index 30338a4be86c6..ea8f4e757c7ed 100644 --- a/app/code/Magento/Core/Model/Translate.php +++ b/app/code/Magento/Core/Model/Translate.php @@ -139,7 +139,7 @@ class Translate protected $_localeHierarchy = array(); /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_viewDesign; @@ -164,7 +164,7 @@ class Translate protected $_placeholderRender; /** - * @var \Magento\Core\Model\ModuleList + * @var \Magento\App\ModuleList */ protected $_moduleList; @@ -189,13 +189,13 @@ class Translate protected $_app; /** - * @param \Magento\Core\Model\View\DesignInterface $viewDesign + * @param \Magento\View\DesignInterface $viewDesign * @param \Magento\Core\Model\Locale\Hierarchy\Config $config * @param \Magento\Core\Model\Translate\Factory $translateFactory * @param \Magento\Cache\FrontendInterface $cache * @param \Magento\Core\Model\View\FileSystem $viewFileSystem * @param \Magento\Phrase\Renderer\Placeholder $placeholderRender - * @param \Magento\Core\Model\ModuleList $moduleList + * @param \Magento\App\ModuleList $moduleList * @param \Magento\Core\Model\Config\Modules\Reader $modulesReader * @param \Magento\Core\Model\Config $coreConfig * @param \Magento\Core\Model\StoreManager $storeManager @@ -205,13 +205,13 @@ class Translate * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( - \Magento\Core\Model\View\DesignInterface $viewDesign, + \Magento\View\DesignInterface $viewDesign, \Magento\Core\Model\Locale\Hierarchy\Config $config, \Magento\Core\Model\Translate\Factory $translateFactory, \Magento\Cache\FrontendInterface $cache, \Magento\Core\Model\View\FileSystem $viewFileSystem, \Magento\Phrase\Renderer\Placeholder $placeholderRender, - \Magento\Core\Model\ModuleList $moduleList, + \Magento\App\ModuleList $moduleList, \Magento\Core\Model\Config\Modules\Reader $modulesReader, \Magento\Core\Model\Config $coreConfig, \Magento\Core\Model\StoreManager $storeManager, @@ -474,7 +474,7 @@ protected function _loadDbTranslation($forceReload = false) */ protected function _getModuleTranslationFile($moduleName, $locale) { - $file = $this->_modulesReader->getModuleDir(\Magento\Core\Model\Dir::LOCALE, $moduleName); + $file = $this->_modulesReader->getModuleDir(\Magento\App\Dir::LOCALE, $moduleName); $file .= DS . $locale . '.csv'; return $file; } @@ -487,7 +487,7 @@ protected function _getModuleTranslationFile($moduleName, $locale) */ protected function _getThemeTranslationFile($locale) { - return $this->_viewFileSystem->getFilename(\Magento\Core\Model\Dir::LOCALE . DS . $locale . '.csv'); + return $this->_viewFileSystem->getFilename(\Magento\App\Dir::LOCALE . DS . $locale . '.csv'); } /** diff --git a/app/code/Magento/Core/Model/Translate/Inline.php b/app/code/Magento/Core/Model/Translate/Inline.php index 5e4b5a434e512..ec89a025037c8 100644 --- a/app/code/Magento/Core/Model/Translate/Inline.php +++ b/app/code/Magento/Core/Model/Translate/Inline.php @@ -73,7 +73,7 @@ class Inline implements \Magento\Core\Model\Translate\InlineInterface protected $_url; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -87,11 +87,11 @@ class Inline implements \Magento\Core\Model\Translate\InlineInterface /** * Initialize inline translation model * - * @param \Magento\Core\Model\Translate\InlineParser $parser + * @param InlineParser $parser * @param \Magento\Core\Model\Translate $translate * @param \Magento\Backend\Model\Url $backendUrl * @param \Magento\Core\Model\Url $url - * @param \Magento\Core\Model\Layout $layout + * @param \Magento\View\LayoutInterface $layout * @param \Magento\Core\Model\Store\Config $coreStoreConfig */ public function __construct( @@ -99,7 +99,7 @@ public function __construct( \Magento\Core\Model\Translate $translate, \Magento\Backend\Model\Url $backendUrl, \Magento\Core\Model\Url $url, - \Magento\Core\Model\Layout $layout, + \Magento\View\LayoutInterface $layout, \Magento\Core\Model\Store\Config $coreStoreConfig ) { $this->_coreStoreConfig = $coreStoreConfig; diff --git a/app/code/Magento/Core/Model/Translate/InlineParser.php b/app/code/Magento/Core/Model/Translate/InlineParser.php index 7541a7d17503c..9591182193869 100644 --- a/app/code/Magento/Core/Model/Translate/InlineParser.php +++ b/app/code/Magento/Core/Model/Translate/InlineParser.php @@ -125,7 +125,7 @@ class InlineParser ); /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_design; @@ -154,13 +154,13 @@ class InlineParser * * @param \Magento\Core\Model\Resource\Translate\String $resource * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Core\Model\View\DesignInterface $design + * @param \Magento\View\DesignInterface $design * @param \Magento\Core\Helper\Data $helper * @param \Zend_Filter_Interface $inputFilter */ public function __construct( \Magento\Core\Model\Resource\Translate\String $resource, - \Magento\Core\Model\View\DesignInterface $design, + \Magento\View\DesignInterface $design, \Magento\Core\Helper\Data $helper, \Magento\Core\Model\StoreManager $storeManager, \Zend_Filter_Interface $inputFilter @@ -173,7 +173,7 @@ public function __construct( } /** - * @return \Magento\Core\Model\View\DesignInterface + * @return \Magento\View\DesignInterface */ public function getDesignPackage() { diff --git a/app/code/Magento/Core/Model/Url.php b/app/code/Magento/Core/Model/Url.php index 207c27abb8732..6b458f9220260 100644 --- a/app/code/Magento/Core/Model/Url.php +++ b/app/code/Magento/Core/Model/Url.php @@ -78,7 +78,12 @@ */ namespace Magento\Core\Model; -class Url extends \Magento\Object implements \Magento\Core\Model\UrlInterface +use Magento\Core\Model\App; +use Magento\Core\Model\Session; +use Magento\Core\Model\Store; +use Magento\Core\Model\StoreManager; + +class Url extends \Magento\Object implements \Magento\UrlInterface { /** * Configuration data cache @@ -106,9 +111,9 @@ class Url extends \Magento\Object implements \Magento\Core\Model\UrlInterface ); /** - * Controller request object + * Request instance * - * @var \Zend_Controller_Request_Http + * @var \Magento\App\RequestInterface */ protected $_request; @@ -154,21 +159,27 @@ class Url extends \Magento\Object implements \Magento\Core\Model\UrlInterface protected $_session; /** - * Constructor - * - * By default is looking for first argument as array and assigns it as object - * attributes This behavior may change in child classes + * Router list * - * @param \Magento\Core\Model\Url\SecurityInfoInterface $urlSecurityInfo - * @param \Magento\Core\Model\Store\Config $coreStoreConfig + * @var \Magento\App\RouterListInterface + */ + protected $_routerList; + + /** + * @param \Magento\App\RouterListInterface $routerList + * @param \Magento\App\RequestInterface $request + * @param Url\SecurityInfoInterface $urlSecurityInfo + * @param Store\Config $coreStoreConfig * @param \Magento\Core\Helper\Data $coreData - * @param \Magento\Core\Model\App $app - * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Core\Model\Session $session + * @param App $app + * @param StoreManager $storeManager + * @param Session $session * @param array $data */ public function __construct( - \Magento\Core\Model\Url\SecurityInfoInterface $urlSecurityInfo, + \Magento\App\RouterListInterface $routerList, + \Magento\App\RequestInterface $request, + Url\SecurityInfoInterface $urlSecurityInfo, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Helper\Data $coreData, \Magento\Core\Model\App $app, @@ -176,6 +187,8 @@ public function __construct( \Magento\Core\Model\Session $session, array $data = array() ) { + $this->_request = $request; + $this->_routerList = $routerList; $this->_urlSecurityInfo = $urlSecurityInfo; $this->_coreStoreConfig = $coreStoreConfig; $this->_coreData = $coreData; @@ -325,10 +338,10 @@ public function getConfigData($key, $prefix = null) /** * Set request * - * @param \Zend_Controller_Request_Http $request + * @param \Magento\App\RequestInterface $request * @return \Magento\Core\Model\Url */ - public function setRequest(\Zend_Controller_Request_Http $request) + public function setRequest(\Magento\App\RequestInterface $request) { $this->_request = $request; return $this; @@ -337,13 +350,10 @@ public function setRequest(\Zend_Controller_Request_Http $request) /** * Zend request object * - * @return \Magento\Core\Controller\Request\Http + * @return \Magento\App\RequestInterface */ public function getRequest() { - if (!$this->_request) { - $this->_request = $this->_app->getRequest(); - } return $this->_request; } @@ -537,7 +547,7 @@ public function getActionPath() public function getRoutePath($routeParams = array()) { if (!$this->hasData('route_path')) { - $routePath = $this->getRequest()->getAlias(\Magento\Core\Model\Url\Rewrite::REWRITE_REQUEST_PATH_ALIAS); + $routePath = $this->getRequest()->getAlias(Url\Rewrite::REWRITE_REQUEST_PATH_ALIAS); if (!empty($routeParams['_use_rewrite']) && ($routePath !== null)) { $this->setData('route_path', $routePath); return $routePath; @@ -587,7 +597,7 @@ public function getRouteFrontName() { if (!$this->hasData('route_front_name')) { $routeId = $this->getRouteName(); - $router = $this->_app->getFrontController()->getRouterList()->getRouterByRoute($routeId); + $router = $this->_routerList->getRouterByRoute($routeId); $frontName = $router->getFrontNameByRoute($routeId); $this->setRouteFrontName($frontName); @@ -1192,7 +1202,7 @@ public function useSessionIdForUrl($secure = false) { $key = 'use_session_id_for_url_' . (int) $secure; if (is_null($this->getData($key))) { - $httpHost = $this->_app->getFrontController()->getRequest()->getHttpHost(); + $httpHost = $this->_request->getHttpHost(); $urlHost = parse_url($this->getStore()->getBaseUrl(\Magento\Core\Model\Store::URL_TYPE_LINK, $secure), PHP_URL_HOST); diff --git a/app/code/Magento/Core/Model/Url/Rewrite.php b/app/code/Magento/Core/Model/Url/Rewrite.php index 67ca0c0fdd893..313ea3ac05a5a 100644 --- a/app/code/Magento/Core/Model/Url/Rewrite.php +++ b/app/code/Magento/Core/Model/Url/Rewrite.php @@ -81,7 +81,7 @@ class Rewrite extends \Magento\Core\Model\AbstractModel protected $_app; /** - * @var \Magento\Core\Model\App\State + * @var \Magento\App\State */ protected $_appState; @@ -95,7 +95,7 @@ class Rewrite extends \Magento\Core\Model\AbstractModel * @param \Magento\Core\Model\Registry $registry * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\App $app - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\State $appState * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Resource\AbstractResource $resource * @param \Magento\Data\Collection\Db $resourceCollection @@ -106,7 +106,7 @@ public function __construct( \Magento\Core\Model\Registry $registry, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\App $app, - \Magento\Core\Model\App\State $appState, + \Magento\App\State $appState, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Resource\AbstractResource $resource = null, \Magento\Data\Collection\Db $resourceCollection = null, @@ -240,14 +240,14 @@ public function removeTag($tags) return $this; } + /** - * Implement logic of custom rewrites + * Perform custom url rewrites * - * @param \Zend_Controller_Request_Http $request - * @param \Zend_Controller_Response_Http $response - * @return \Magento\Core\Model\Url + * @param \Magento\App\RequestInterface $request + * @return bool */ - public function rewrite(\Zend_Controller_Request_Http $request=null, \Zend_Controller_Response_Http $response=null) + public function rewrite(\Magento\App\RequestInterface $request = null) { if (!$this->_appState->isInstalled()) { return false; @@ -255,9 +255,6 @@ public function rewrite(\Zend_Controller_Request_Http $request=null, \Zend_Contr if (is_null($request)) { $request = $this->_app->getFrontController()->getRequest(); } - if (is_null($response)) { - $response = $this->_app->getFrontController()->getResponse(); - } if (is_null($this->getStoreId()) || false === $this->getStoreId()) { $this->setStoreId($this->_storeManager->getStore()->getId()); } diff --git a/app/code/Magento/Core/Model/View/Config.php b/app/code/Magento/Core/Model/View/Config.php index d4f22e275de0a..628d99c58c0dc 100644 --- a/app/code/Magento/Core/Model/View/Config.php +++ b/app/code/Magento/Core/Model/View/Config.php @@ -29,7 +29,7 @@ */ namespace Magento\Core\Model\View; -class Config +class Config implements \Magento\View\ConfigInterface { /** * List of view configuration objects per theme @@ -91,7 +91,7 @@ public function __construct( public function getViewConfig(array $params = array()) { $this->_viewService->updateDesignParams($params); - /** @var $currentTheme \Magento\Core\Model\Theme */ + /** @var $currentTheme \Magento\View\Design\ThemeInterface */ $currentTheme = $params['themeModel']; $key = $currentTheme->getId(); if (isset($this->_viewConfigs[$key])) { diff --git a/app/code/Magento/Core/Model/View/DeployedFilesManager.php b/app/code/Magento/Core/Model/View/DeployedFilesManager.php index 5a4c021ec074b..6fb6a5e1ef965 100644 --- a/app/code/Magento/Core/Model/View/DeployedFilesManager.php +++ b/app/code/Magento/Core/Model/View/DeployedFilesManager.php @@ -83,7 +83,7 @@ public static function buildDeployedFilePath($area, $themePath, $locale, $file, */ protected function _getDeployedFilePath($filePath, $params) { - /** @var $themeModel \Magento\Core\Model\Theme */ + /** @var $themeModel \Magento\View\Design\ThemeInterface */ $themeModel = $params['themeModel']; $themePath = $themeModel->getThemePath(); while (empty($themePath) && $themeModel) { diff --git a/app/code/Magento/Core/Model/View/Design.php b/app/code/Magento/Core/Model/View/Design.php index d00868d90970b..9ee5dafee23fb 100644 --- a/app/code/Magento/Core/Model/View/Design.php +++ b/app/code/Magento/Core/Model/View/Design.php @@ -29,7 +29,7 @@ */ namespace Magento\Core\Model\View; -class Design implements \Magento\Core\Model\View\DesignInterface +class Design implements \Magento\View\DesignInterface { /** * Common node path to theme design configuration diff --git a/app/code/Magento/Core/Model/View/Design/Proxy.php b/app/code/Magento/Core/Model/View/Design/Proxy.php index 70fc9df0c8541..cae0f470c428e 100644 --- a/app/code/Magento/Core/Model/View/Design/Proxy.php +++ b/app/code/Magento/Core/Model/View/Design/Proxy.php @@ -29,7 +29,7 @@ */ namespace Magento\Core\Model\View\Design; -class Proxy implements \Magento\Core\Model\View\DesignInterface +class Proxy implements \Magento\View\DesignInterface { /** * @var \Magento\ObjectManager @@ -64,7 +64,7 @@ protected function _getInstance() * Set package area * * @param string $area - * @return \Magento\Core\Model\View\DesignInterface + * @return \Magento\View\DesignInterface */ public function setArea($area) { @@ -86,7 +86,7 @@ public function getArea() * * @param \Magento\Core\Model\Theme|int|string $theme * @param string $area - * @return \Magento\Core\Model\View\DesignInterface + * @return \Magento\View\DesignInterface */ public function setDesignTheme($theme, $area = null) { @@ -108,7 +108,7 @@ public function getConfigurationDesignTheme($area = null, array $params = array( /** * Set default design theme * - * @return \Magento\Core\Model\View\DesignInterface + * @return \Magento\View\DesignInterface */ public function setDefaultDesignTheme() { diff --git a/app/code/Magento/Core/Model/View/Publisher.php b/app/code/Magento/Core/Model/View/Publisher.php index b94a60feffe18..1385462c67073 100644 --- a/app/code/Magento/Core/Model/View/Publisher.php +++ b/app/code/Magento/Core/Model/View/Publisher.php @@ -89,7 +89,7 @@ class Publisher implements \Magento\Core\Model\View\PublicFilesManagerInterface protected $_allowFilesDuplication; /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; @@ -106,7 +106,7 @@ class Publisher implements \Magento\Core\Model\View\PublicFilesManagerInterface * @param \Magento\Core\Helper\Css $cssHelper * @param \Magento\Core\Model\View\Service $viewService * @param \Magento\Core\Model\View\FileSystem $viewFileSystem - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir * @param \Magento\Core\Model\Config\Modules\Reader $modulesReader * @param $allowFilesDuplication */ @@ -116,7 +116,7 @@ public function __construct( \Magento\Core\Helper\Css $cssHelper, \Magento\Core\Model\View\Service $viewService, \Magento\Core\Model\View\FileSystem $viewFileSystem, - \Magento\Core\Model\Dir $dir, + \Magento\App\Dir $dir, \Magento\Core\Model\Config\Modules\Reader $modulesReader, $allowFilesDuplication ) { @@ -252,7 +252,7 @@ protected function _buildPublishedFilePath($filePath, $params, $sourcePath) */ protected function _needToProcessFile($filePath) { - $jsPath = $this->_dir->getDir(\Magento\Core\Model\Dir::PUB_LIB) . DS; + $jsPath = $this->_dir->getDir(\Magento\App\Dir::PUB_LIB) . DS; if (strncmp($filePath, $jsPath, strlen($jsPath)) === 0) { return false; } @@ -271,7 +271,7 @@ protected function _needToProcessFile($filePath) return true; } - return ($this->_viewService->getAppMode() == \Magento\Core\Model\App\State::MODE_DEVELOPER) + return ($this->_viewService->getAppMode() == \Magento\App\State::MODE_DEVELOPER) && $this->_getExtension($filePath) == self::CONTENT_TYPE_CSS; } @@ -296,7 +296,7 @@ protected function _getExtension($filePath) */ protected function _buildPublicViewRedundantFilename($file, array $params) { - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ $theme = $params['themeModel']; if ($theme->getThemePath()) { $designPath = str_replace('/', DS, $theme->getThemePath()); @@ -321,7 +321,7 @@ protected function _buildPublicViewRedundantFilename($file, array $params) */ protected function _buildPublicViewSufficientFilename($filename, array $params) { - $designDir = $this->_dir->getDir(\Magento\Core\Model\Dir::THEMES) . DS; + $designDir = $this->_dir->getDir(\Magento\App\Dir::THEMES) . DS; if (0 === strpos($filename, $designDir)) { // theme file $publicFile = substr($filename, strlen($designDir)); @@ -388,7 +388,7 @@ protected function _getRelatedViewFile($fileId, $parentFilePath, $parentFileName $filePath = $this->_viewService->extractScope($fileId, $params); } else { /* Check if module file overridden on theme level based on _module property and file path */ - if ($params['module'] && strpos($parentFilePath, $this->_dir->getDir(\Magento\Core\Model\Dir::THEMES)) === 0) { + if ($params['module'] && strpos($parentFilePath, $this->_dir->getDir(\Magento\App\Dir::THEMES)) === 0) { /* Add module directory to relative URL */ $filePath = dirname($params['module'] . '/' . $parentFileName) . '/' . $fileId; diff --git a/app/code/Magento/Core/Model/View/Service.php b/app/code/Magento/Core/Model/View/Service.php index 656e0c8f5c64c..bbf4b542a6c2a 100644 --- a/app/code/Magento/Core/Model/View/Service.php +++ b/app/code/Magento/Core/Model/View/Service.php @@ -37,12 +37,12 @@ class Service const SCOPE_SEPARATOR = '::'; /** - * @var \Magento\Core\Model\App\State + * @var \Magento\App\State */ protected $_appState; /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ private $_design; @@ -52,24 +52,21 @@ class Service protected $_themeFactory; /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dir; /** - * View files system model - * - * - * @param \Magento\Core\Model\App\State $appState - * @param \Magento\Core\Model\View\DesignInterface $design + * @param \Magento\App\State $appState + * @param \Magento\View\DesignInterface $design * @param \Magento\Core\Model\Theme\FlyweightFactory $themeFactory - * @param \Magento\Core\Model\Dir $dir + * @param \Magento\App\Dir $dir */ public function __construct( - \Magento\Core\Model\App\State $appState, - \Magento\Core\Model\View\DesignInterface $design, + \Magento\App\State $appState, + \Magento\View\DesignInterface $design, \Magento\Core\Model\Theme\FlyweightFactory $themeFactory, - \Magento\Core\Model\Dir $dir + \Magento\App\Dir $dir ) { $this->_appState = $appState; $this->_design = $design; @@ -113,7 +110,7 @@ public function extractScope($fileId, array &$params) */ public function isViewFileOperationAllowed() { - return $this->getAppMode() != \Magento\Core\Model\App\State::MODE_PRODUCTION; + return $this->getAppMode() != \Magento\App\State::MODE_PRODUCTION; } /** @@ -133,7 +130,7 @@ public function getAppMode() */ public function getPublicDir() { - return $this->_dir->getDir(\Magento\Core\Model\Dir::STATIC_VIEW); + return $this->_dir->getDir(\Magento\App\Dir::STATIC_VIEW); } /** diff --git a/app/code/Magento/Core/Model/View/Url.php b/app/code/Magento/Core/Model/View/Url.php index e7945e13f0e60..c89537d232f41 100644 --- a/app/code/Magento/Core/Model/View/Url.php +++ b/app/code/Magento/Core/Model/View/Url.php @@ -42,7 +42,7 @@ class Url protected $_filesystem; /** - * @var \Magento\Core\Model\Dir + * @var \Magento\App\Dir */ protected $_dirs; @@ -71,7 +71,7 @@ class Url * View files URL model * * @param \Magento\Filesystem $filesystem - * @param \Magento\Core\Model\Dir $dirs + * @param \Magento\App\Dir $dirs * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\View\Service $viewService * @param \Magento\Core\Model\View\Publisher $publisher @@ -79,7 +79,7 @@ class Url */ public function __construct( \Magento\Filesystem $filesystem, - \Magento\Core\Model\Dir $dirs, + \Magento\App\Dir $dirs, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\View\Service $viewService, \Magento\Core\Model\View\Publisher $publisher, @@ -140,10 +140,10 @@ public function getViewFilePublicPath($fileId, array $params = array()) public function getPublicFileUrl($publicFilePath, $isSecure = null) { foreach (array( - \Magento\Core\Model\Store::URL_TYPE_LIB => \Magento\Core\Model\Dir::PUB_LIB, - \Magento\Core\Model\Store::URL_TYPE_MEDIA => \Magento\Core\Model\Dir::MEDIA, - \Magento\Core\Model\Store::URL_TYPE_STATIC => \Magento\Core\Model\Dir::STATIC_VIEW, - \Magento\Core\Model\Store::URL_TYPE_CACHE => \Magento\Core\Model\Dir::PUB_VIEW_CACHE, + \Magento\Core\Model\Store::URL_TYPE_LIB => \Magento\App\Dir::PUB_LIB, + \Magento\Core\Model\Store::URL_TYPE_MEDIA => \Magento\App\Dir::MEDIA, + \Magento\Core\Model\Store::URL_TYPE_STATIC => \Magento\App\Dir::STATIC_VIEW, + \Magento\Core\Model\Store::URL_TYPE_CACHE => \Magento\App\Dir::PUB_VIEW_CACHE, ) as $urlType => $dirType ) { $dir = $this->_dirs->getDir($dirType); diff --git a/app/code/Magento/Core/data/core_setup/data-upgrade-1.6.0.10-1.6.0.11.php b/app/code/Magento/Core/data/core_setup/data-upgrade-1.6.0.10-1.6.0.11.php index a8cc99ff1f800..6282084b476f2 100644 --- a/app/code/Magento/Core/data/core_setup/data-upgrade-1.6.0.10-1.6.0.11.php +++ b/app/code/Magento/Core/data/core_setup/data-upgrade-1.6.0.10-1.6.0.11.php @@ -28,7 +28,7 @@ $filesystemCollection = $this->_themeFactory->create(); $filesystemCollection->addDefaultPattern('*'); -/** @var $theme \Magento\Core\Model\Theme */ +/** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($this->_themeResourceFactory->create() as $theme) { $themeType = $filesystemCollection->hasTheme($theme) ? \Magento\Core\Model\Theme::TYPE_PHYSICAL diff --git a/app/code/Magento/Core/data/core_setup/data-upgrade-1.6.0.12-1.6.0.13.php b/app/code/Magento/Core/data/core_setup/data-upgrade-1.6.0.12-1.6.0.13.php index d638d7d01cbd7..f686c6ba07430 100644 --- a/app/code/Magento/Core/data/core_setup/data-upgrade-1.6.0.12-1.6.0.13.php +++ b/app/code/Magento/Core/data/core_setup/data-upgrade-1.6.0.12-1.6.0.13.php @@ -27,7 +27,7 @@ /** @var $themeDbCollection \Magento\Core\Model\Resource\Theme\Collection */ $themeDbCollection = $this->_themeResourceFactory->create(); -/** @var $theme \Magento\Core\Model\Theme */ +/** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($this->_themeFactory->create()->addDefaultPattern('*') as $theme) { $dbTheme = $themeDbCollection->getThemeByFullPath($theme->getFullPath()); $dbTheme->setCode($theme->getCode()); diff --git a/app/code/Magento/Core/etc/di.xml b/app/code/Magento/Core/etc/di.xml index 1f881c8023d87..6da0b5e55b833 100644 --- a/app/code/Magento/Core/etc/di.xml +++ b/app/code/Magento/Core/etc/di.xml @@ -25,13 +25,14 @@ --> + + - @@ -42,7 +43,22 @@ - + + + + + + + + + + + + + + frontend + + @@ -240,7 +256,7 @@ - + @@ -249,7 +265,7 @@ 20 - Magento\Core\Controller\Varien\Router\DefaultRouter + Magento\App\Router\DefaultRouter false 100 @@ -267,11 +283,11 @@ standard - + - Magento\Core\Model\Router\NoRouteHandler + Magento\Core\App\Router\NoRouteHandler 100 @@ -293,7 +309,7 @@ - magento_demo + magento_plushe magento_backend magento_basic @@ -367,18 +383,21 @@ - + - + + + + @@ -395,19 +414,17 @@ - - - - - - - - + + + + + Magento\Core\Model\TemplateEngine\Php + diff --git a/app/code/Magento/Core/functions.php b/app/code/Magento/Core/functions.php index 5e6b3cb810e2c..c8264b4e4ede2 100644 --- a/app/code/Magento/Core/functions.php +++ b/app/code/Magento/Core/functions.php @@ -163,11 +163,11 @@ function mageCoreErrorHandler($errorNo, $errorStr, $errorFile, $errorLine) $errorMessage .= ": {$errorStr} in {$errorFile} on line {$errorLine}"; $exception = new \Exception($errorMessage); $errorMessage .= $exception->getTraceAsString(); - $appState = \Magento\Core\Model\ObjectManager::getInstance()->get('Magento\Core\Model\App\State'); - if ($appState == \Magento\Core\Model\App\State::MODE_DEVELOPER) { + $appState = \Magento\Core\Model\ObjectManager::getInstance()->get('Magento\App\State'); + if ($appState == \Magento\App\State::MODE_DEVELOPER) { throw $exception; } else { - $dirs = new \Magento\Core\Model\Dir('.'); + $dirs = new \Magento\App\Dir('.'); $fileSystem = new \Magento\Io\File(); $logger = new \Magento\Core\Model\Logger($dirs, $fileSystem); $logger->log($errorMessage, \Zend_Log::ERR); diff --git a/app/code/Magento/Core/view/adminhtml/prototype/magento.css b/app/code/Magento/Core/view/adminhtml/prototype/magento.css index aa5a2895496a7..d9ba2471cafaf 100644 --- a/app/code/Magento/Core/view/adminhtml/prototype/magento.css +++ b/app/code/Magento/Core/view/adminhtml/prototype/magento.css @@ -161,7 +161,7 @@ } .popup-window .magento_message .fieldset .widget-option-label { - padding: 5px 0 0; + padding: 6px 0 0; } .popup-window [id$="_focus_anchor"]:focus { diff --git a/app/code/Magento/Cron/etc/di.xml b/app/code/Magento/Cron/etc/di.xml index a3b7139d8be26..2a0f0c9f40e2e 100644 --- a/app/code/Magento/Cron/etc/di.xml +++ b/app/code/Magento/Cron/etc/di.xml @@ -45,8 +45,5 @@ - - -
diff --git a/app/code/Magento/CurrencySymbol/Helper/Data.php b/app/code/Magento/CurrencySymbol/Helper/Data.php index de19ed5b1694e..6bf937958825e 100644 --- a/app/code/Magento/CurrencySymbol/Helper/Data.php +++ b/app/code/Magento/CurrencySymbol/Helper/Data.php @@ -42,28 +42,28 @@ class Data extends \Magento\Core\Helper\Data /** * @param \Magento\Core\Helper\Context $context - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager * @param \Magento\Core\Helper\Http $coreHttp * @param \Magento\Core\Model\Config $config * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\StoreManager $storeManager * @param \Magento\Core\Model\Locale $locale * @param \Magento\Core\Model\Date $dateModel - * @param \Magento\Core\Model\App\State $appState + * @param \Magento\App\State $appState * @param \Magento\Core\Model\Encryption $encryptor * @param \Magento\CurrencySymbol\Model\System\Currencysymbol\Factory $symbolFactory * @param bool $dbCompatibleMode */ public function __construct( \Magento\Core\Helper\Context $context, - \Magento\Core\Model\Event\Manager $eventManager, + \Magento\Event\ManagerInterface $eventManager, \Magento\Core\Helper\Http $coreHttp, \Magento\Core\Model\Config $config, \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\StoreManager $storeManager, \Magento\Core\Model\Locale $locale, \Magento\Core\Model\Date $dateModel, - \Magento\Core\Model\App\State $appState, + \Magento\App\State $appState, \Magento\Core\Model\Encryption $encryptor, \Magento\CurrencySymbol\Model\System\Currencysymbol\Factory $symbolFactory, $dbCompatibleMode = true diff --git a/app/code/Magento/CurrencySymbol/Model/System/Currencysymbol.php b/app/code/Magento/CurrencySymbol/Model/System/Currencysymbol.php index 06a219d0ac011..7cc457a3342a3 100644 --- a/app/code/Magento/CurrencySymbol/Model/System/Currencysymbol.php +++ b/app/code/Magento/CurrencySymbol/Model/System/Currencysymbol.php @@ -85,7 +85,7 @@ class Currencysymbol /** * Core event manager proxy * - * @var \Magento\Core\Model\Event\Manager + * @var \Magento\Event\ManagerInterface */ protected $_eventManager; @@ -134,7 +134,7 @@ class Currencysymbol * @param \Magento\Core\Model\StoreManagerInterface $storeManager * @param \Magento\Core\Model\LocaleInterface $locale * @param \Magento\Core\Model\System\Store $systemStore - * @param \Magento\Core\Model\Event\Manager $eventManager + * @param \Magento\Event\ManagerInterface $eventManager */ public function __construct( \Magento\Core\Model\Store\Config $coreStoreConfig, @@ -144,7 +144,7 @@ public function __construct( \Magento\Core\Model\StoreManagerInterface $storeManager, \Magento\Core\Model\LocaleInterface $locale, \Magento\Core\Model\System\Store $systemStore, - \Magento\Core\Model\Event\Manager $eventManager + \Magento\Event\ManagerInterface $eventManager ) { $this->_coreConfig = $coreConfig; $this->_configFactory = $configFactory; diff --git a/app/code/Magento/CurrencySymbol/view/adminhtml/grid.phtml b/app/code/Magento/CurrencySymbol/view/adminhtml/grid.phtml index 1e967819ada34..658bb74ade6dc 100644 --- a/app/code/Magento/CurrencySymbol/view/adminhtml/grid.phtml +++ b/app/code/Magento/CurrencySymbol/view/adminhtml/grid.phtml @@ -37,34 +37,30 @@
-
- - - - - - - - - - - - - getCurrencySymbolsData() as $code => $data): ?> - - - + + + +
*
- - + + + + + + + + + getCurrencySymbolsData() as $code => $data): ?> + + + - - - -
+ + +
name="custom_currency_symbol[]"> value="1" name="inherit_custom_currency_symbol[]"> - -
- + + +
+ +
+ + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/title.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/title.phtml new file mode 100644 index 0000000000000..63eb6350d4590 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/title.phtml @@ -0,0 +1,31 @@ + + +getProduct() ?> +
+

productAttribute($_product, $_product->getName(), 'name')) ?>

+ Go back to product detail +
diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle.phtml new file mode 100644 index 0000000000000..6874d31838708 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle.phtml @@ -0,0 +1,59 @@ + +getProduct() ?> +isSaleable()): ?> + + +displayProductStockStatus()): ?> + isAvailable()): ?> +

+ +

+ +

+ +

+ + +getChildHtml('bundle_prices') ?> diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/checkbox.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/checkbox.phtml new file mode 100644 index 0000000000000..56646524696b6 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/checkbox.phtml @@ -0,0 +1,53 @@ + + + +getOption() ?> +getSelections() ?> +
+ +
+
+ getRequired()): ?> + getSelectionQtyTitlePrice($_selections[0]) ?> + + + +
+ getRequired()) echo 'data-validate="{\'validate-one-required-by-name\':true}"'?> name="bundle_option[getId() ?>][]"isSelected($_selection)) echo ' checked="checked"' ?>isSaleable()) echo ' disabled="disabled"' ?> value="getSelectionId() ?>"/> + +
+ +
+ +
+
+
\ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/multi.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/multi.phtml new file mode 100644 index 0000000000000..50e74d9111e9b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/multi.phtml @@ -0,0 +1,50 @@ + + + +getOption() ?> +getSelections() ?> +
+ +
+ getRequired()): ?> + getSelectionQtyTitlePrice($_selections[0]) ?> + + + + +
+
diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/radio.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/radio.phtml new file mode 100644 index 0000000000000..5c9b0991dba67 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/radio.phtml @@ -0,0 +1,70 @@ + + + +getOption(); ?> +getSelections(); ?> +getDefaultSelection(); ?> +getDefaultValues(); ?> + +
+ +
+
+ showSingle()): ?> + getSelectionTitlePrice($_selections[0]) ?> + + + getRequired()): ?> +
+ isSalable())?'':' checked="checked" ' ?> value=""/> + +
+ + +
+ getRequired()) echo 'data-validate="{\'validate-one-required-by-name\':true}"'?> name="bundle_option[getId() ?>]"isSelected($_selection)) echo ' checked="checked"' ?>isSaleable()) echo ' disabled="disabled"' ?> value="getSelectionId() ?>"/> + +
+ +
+ +
+ +
+ id="bundle-option-getId() ?>-qty-input" class="input-text qty" type="text" name="bundle_option_qty[getId() ?>]" value=""/> +
+
+
+
+
diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/select.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/select.phtml new file mode 100644 index 0000000000000..30109f6040619 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/option/select.phtml @@ -0,0 +1,61 @@ + + + +getOption(); ?> +getSelections(); ?> +getDefaultSelection(); ?> +getDefaultValues(); ?> + +
+ +
+ showSingle()): ?> + getSelectionTitlePrice($_selections[0]) ?> + + + + +
+
+ +
+ id="bundle-option-getId() ?>-qty-input" class="input-text qty" type="text" name="bundle_option_qty[getId() ?>]" value=""/> +
+
+
+
+
diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/options.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/options.phtml new file mode 100644 index 0000000000000..f11c5e3a2f0a0 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/catalog/product/view/type/bundle/options.phtml @@ -0,0 +1,55 @@ + + +getProduct(); +$_helper = $this->helper('Magento\Catalog\Helper\Output'); +?> +helper('Magento\Core\Helper\Data')->decorateArray($this->getOptions()); ?> +isSaleable()):?> + + +
+ + productAttribute($_product, $_product->getName(), 'name')) ?> +
+ + getSelections()): ?> + + + getOptionHtml($_option) ?> + +
+ +

+ + diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/js/slide.js b/app/design/frontend/magento_plushe/Magento_Bundle/js/slide.js new file mode 100644 index 0000000000000..69e8678d33937 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/js/slide.js @@ -0,0 +1,99 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category frontend bundle product slide + * @package mage + * @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) + */ +/*jshint browser:true jquery:true expr:true*/ +(function($) { + $.widget('mage.slide', { + options: { + slideSpeed: 1500, + slideSelector: '#bundle-slide', + slideBackSelector: '.bundle-slide-back', + bundleProductSelector: '#bundleProduct', + bundleOptionsContainer: '#options-container', + productViewContainer: '#productView', + slidedown: true + + }, + + _create: function() { + if(this.options.slidedown === true) { + $(this.options.slideSelector).on('click', $.proxy(this._show, this)); + $(this.options.slideBackSelector).on('click', $.proxy(this._hide, this)); + this.options.autostart && this._show(); + } else { + $(this.options.slideSelector).on('click', $.proxy(this._slide, this)); + $(this.options.slideBackSelector).on('click', $.proxy(this._slideBack, this)); + this.options.autostart && this._slide(); + } + }, + + /** + * slide bundleOptionsContainer over to the main view area + * @private + */ + _slide: function() { + $(this.options.bundleProductSelector).css('top', '0px'); + $(this.options.bundleOptionsContainer).show(); + this.element.css('height',$(this.options.productViewContainer).height() + 'px'); + $(this.options.bundleProductSelector).css('left', '0px').animate( + {'left': '-' + this.element.width() + 'px'}, + this.options.slideSpeed, + $.proxy(function() { + this.element.css('height','auto'); + $(this.options.productViewContainer).hide(); + }, this) + ); + }, + + /** + * slideback productViewContainer to main view area + * @private + */ + _slideBack: function() { + $(this.options.bundleProductSelector).css('top', '0px'); + $(this.options.productViewContainer).show(); + this.element.css('height', $(this.options.bundleOptionsContainer).height() + 'px'); + $(this.options.bundleProductSelector).animate( + {'left': '0px'}, + this.options.slideSpeed, + $.proxy(function() { + $(this.options.bundleOptionsContainer).hide(); + this.element.css('height','auto'); + }, this) + ); + }, + _show: function () { + $(this.options.bundleOptionsContainer).slideDown(800); + $('html, body').animate({ + scrollTop: $(this.options.bundleOptionsContainer).offset().top + }, 600); + }, + _hide: function () { + $('html, body').animate({ + scrollTop: 0 + }, 600); + $(this.options.bundleOptionsContainer).slideUp(function(){800}); + } + }); +}(jQuery)); \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/layout/override/catalog_product_view_type_bundle.xml b/app/design/frontend/magento_plushe/Magento_Bundle/layout/override/catalog_product_view_type_bundle.xml new file mode 100644 index 0000000000000..fef09fb09da9b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/layout/override/catalog_product_view_type_bundle.xml @@ -0,0 +1,113 @@ + + + + + + + Magento_Bundle::bundle.js + + + + + Magento_Bundle::js/product-summary.js + + + + + + type-bundle + + + + + + + Magento_Catalog::product/price_msrp_item.phtml + + + + + + + + + + + select + Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Select + + + multi + Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Multi + + + radio + Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Radio + + + checkbox + Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Checkbox + + + + + + + + + + product.info.addtocart + + + 1 + + + product.info.addto + + + + + + + + + + bundle + Magento\Bundle\Block\Catalog\Product\Price + catalog/product/view/price.phtml + + + + + + + + bundle + Magento\Bundle\Block\Catalog\Product\Price + catalog/product/view/price.phtml + + + diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/layout/override/checkout_cart_index.xml b/app/design/frontend/magento_plushe/Magento_Bundle/layout/override/checkout_cart_index.xml new file mode 100644 index 0000000000000..f56f9a2b65b5b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/layout/override/checkout_cart_index.xml @@ -0,0 +1,37 @@ + + + + + + + + + bundle + Magento\Bundle\Block\Catalog\Product\Price + catalog/product/price.phtml + + + diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Bundle/layout/override/default.xml new file mode 100644 index 0000000000000..30de3dbeb470c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/layout/override/default.xml @@ -0,0 +1,44 @@ + + + + + + bundle + Magento\Bundle\Block\Catalog\Product\Price + catalog/product/price.phtml + + + + + bundle + Magento\Bundle\Block\Catalog\Product\Price + catalog/product/price.phtml + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/layout/review_product_list.xml b/app/design/frontend/magento_plushe/Magento_Bundle/layout/review_product_list.xml new file mode 100644 index 0000000000000..db29516ed066d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/layout/review_product_list.xml @@ -0,0 +1,28 @@ + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/creditmemo/items/renderer.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/creditmemo/items/renderer.phtml new file mode 100644 index 0000000000000..23199f3a6a547 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/creditmemo/items/renderer.phtml @@ -0,0 +1,314 @@ + +getItem() ?> + +getChilds($parentItem) ?> +getItem()->getOrderItem()->getOrder() ?> + + + + + + + +getItemOptions() || $parentItem->getDescription() || $this->helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $parentItem) && $parentItem->getGiftMessageId()): ?> + + + + + +getOrderItem()->getParentItem()): ?> + getSelectionAttributes($_item) ?> + + +
+ + + + + id="order-item-row-getId() ?>"> + getOrderItem()->getParentItem()): ?> + + escapeHtml($_item->getName()) ?> + + +
getValueHtml($_item) ?>
+ + escapeHtml($_item->getSku()) ?> + + canShowPriceInfo($_item)): ?> + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getPrice()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?>
+
+ + +
+
+ + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxDisposition()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?>
+
+ + +
+ + +   + + + + canShowPriceInfo($_item)): ?> + getQty()*1 ?> + +   + + + + canShowPriceInfo($_item)): ?> + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getRowTotal()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?>
+
+ + +
+
+ + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + getOrder()->formatPrice($this->helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($_item)); ?> + + + +   + + +   + + + + canShowPriceInfo($_item)): ?> + getOrder()->formatPrice(-$_item->getDiscountAmount()) ?> + +   + + + + canShowPriceInfo($_item)): ?> + getOrder()->formatPrice($_item->getRowTotal()-$_item->getDiscountAmount()+$_item->getTaxAmount()+$_item->getWeeeTaxAppliedRowAmount()) ?> + +   + + + + + + + + + getItemOptions()): ?> +
+ +
escapeHtml($_option['label']) ?>
+ getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + + +
+
+
escapeHtml($_option['label']) ?>
+
+
+
+ + + +
escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) ) ?>
+ + +
+ + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $parentItem) && $parentItem->getGiftMessageId()): ?> + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/invoice/items/renderer.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/invoice/items/renderer.phtml new file mode 100644 index 0000000000000..49fe7219b4a2d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/invoice/items/renderer.phtml @@ -0,0 +1,330 @@ + +getItem() ?> +getItem()->getOrderItem()->getOrder() ?> + +getChilds($parentItem) ?> + + + + + + + +getItemOptions() || $parentItem->getDescription() || $this->helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $parentItem) && $parentItem->getGiftMessageId()): ?> + + + + + +getOrderItem()->getParentItem()): ?> + getSelectionAttributes($_item) ?> + + +
+ + + + + id="order-item-row-getId() ?>"> + getOrderItem()->getParentItem()): ?> + + escapeHtml($_item->getName()) ?> + + +
getValueHtml($_item) ?>
+ + escapeHtml($_item->getSku()) ?> + + canShowPriceInfo($_item)): ?> + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getPrice()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?>
+
+ + +
+
+ + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxDisposition()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?>
+
+ + +
+ + +   + + + + canShowPriceInfo($_item)): ?> + getQty()*1 ?> + +   + + + + canShowPriceInfo($_item)): ?> + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getRowTotal()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?>
+
+ + +
+
+ + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxRowDisposition()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?>
+
+ + + +
+ + +   + + + + + + + + + getItemOptions()): ?> +
+ +
escapeHtml($_option['label']) ?>
+ getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + + +
+
+
escapeHtml($_option['label']) ?>
+
+
+
+ + + +
escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) ) ?>
+ + +
+ + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $parentItem) && $parentItem->getGiftMessageId()): ?> + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/items/renderer.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/items/renderer.phtml new file mode 100644 index 0000000000000..3692830fff3e0 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/items/renderer.phtml @@ -0,0 +1,354 @@ + +getItem() ?> +getChildrenItems()); ?> + + + + + + + +getItemOptions() || $parentItem->getDescription() || $this->helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $parentItem) && $parentItem->getGiftMessageId()): ?> + + + + + +getParentItem()): ?> + getSelectionAttributes($_item) ?> + + getLastRow()) echo 'class="last"'; ?>> +
+ + + + + id="order-item-row-getId() ?>"> + getParentItem()): ?> + + escapeHtml($_item->getName()) ?> + + +
getValueHtml($_item)?>
+ + escapeHtml($this->helper('Magento\Core\Helper\String')->splitInjection($_item->getSku())) ?> + + getParentItem()): ?> + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getPrice()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?>
+
+ + +
+
+ + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxDisposition()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?>
+
+ + +
+ + +   + + + + getParentItem() && $this->isChildCalculated()) || + (!$_item->getParentItem() && !$this->isChildCalculated())): ?> + + getQtyOrdered() > 0): ?> + : getQtyOrdered()*1 ?>
+ + getQtyShipped() > 0 && !$this->isShipmentSeparately()): ?> + : getQtyShipped()*1 ?>
+ + getQtyCanceled() > 0): ?> + : getQtyCanceled()*1 ?>
+ + getQtyRefunded() > 0): ?> + : getQtyRefunded()*1 ?> + +
+ getQtyShipped() > 0 && $_item->getParentItem() && $this->isShipmentSeparately()): ?> + : getQtyShipped()*1 ?> + +   + + + + getParentItem()): ?> + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getRowTotal()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?>
+
+ + +
+
+ + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxRowDisposition()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?>
+
+ + + +
+ + +   + + + + + + + + + getItemOptions()): ?> +
+ +
escapeHtml($_option['label']) ?>
+ getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + + +
+
+
escapeHtml($_option['label']) ?>
+
+
+
+ + + +
escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) ) ?>
+ + +
+ + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $parentItem) && $parentItem->getGiftMessageId()): ?> + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/shipment/items/renderer.phtml b/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/shipment/items/renderer.phtml new file mode 100644 index 0000000000000..b786722032605 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Bundle/sales/order/shipment/items/renderer.phtml @@ -0,0 +1,109 @@ + +getItem() ?> +getOrderItem()), $parentItem->getOrderItem()->getChildrenItems()) ?> +getChilds($parentItem) ?> + + + + + + + +getItemOptions() || $parentItem->getDescription() || $this->helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $parentItem) && $parentItem->getGiftMessageId()): ?> + + + + + +getParentItem()): ?> + getSelectionAttributes($_item) ?> + + +
+ + + + + id="order-item-row-getId() ?>"> + getParentItem()): ?> + + escapeHtml($_item->getName()) ?> + + +
getValueHtml($_item) ?>
+ + escapeHtml($_item->getSku()) ?> + + isShipmentSeparately() && $_item->getParentItem()) || (!$this->isShipmentSeparately() && !$_item->getParentItem())): ?> + getId()])): ?> + getId()]->getQty()*1 ?> + getIsVirtual()): ?> + + + 0 + + +   + + + + + + + + + getItemOptions()): ?> +
+ +
escapeHtml($_option['label']) ?>
+ getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + + +
+
+
escapeHtml($_option['label']) ?>
+
+
+
+ + + +
escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) ) ?>
+ + +
+ + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $parentItem) && $parentItem->getGiftMessageId()): ?> + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Captcha/captcha.js b/app/design/frontend/magento_plushe/Magento_Captcha/captcha.js new file mode 100644 index 0000000000000..dd6ef9edd81b5 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Captcha/captcha.js @@ -0,0 +1,70 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category mage + * @package captcha + * @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) + */ +/*jshint browser:true jquery:true*/ +(function($, undefined) { + "use strict"; + $.widget('mage.captcha', { + options: { + refreshClass: 'refreshing', + reloadSelector: '.captcha-reload', + imageSelector: '.captcha-img' + }, + + /** + * Method binds click event to reload image + * @private + */ + _create: function() { + this.element.on('click', this.options.reloadSelector, $.proxy(this.refresh, this)); + }, + + /** + * Method triggeres an AJAX request to refresh the CAPTCHA image + * @param e - Event + */ + refresh: function(e) { + var reloadImage = $(e.currentTarget); + reloadImage.addClass(this.options.refreshClass); + $.ajax({ + url: this.options.url, + type: 'post', + dataType: 'json', + context: this, + data: { + 'formId': this.options.type + }, + success: function (response) { + if (response.imgSrc) { + this.element.find(this.options.imageSelector).attr('src', response.imgSrc); + } + }, + complete: function() { + reloadImage.removeClass(this.options.refreshClass); + } + }); + } + }); +})(jQuery); + diff --git a/app/design/frontend/magento_plushe/Magento_Captcha/default.phtml b/app/design/frontend/magento_plushe/Magento_Captcha/default.phtml new file mode 100644 index 0000000000000..7c9d351bfaf57 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Captcha/default.phtml @@ -0,0 +1,59 @@ + + + + +getCaptchaModel() ?> +
+ +
+ +
+
+
+ + <?php echo __('Please type the letters below')?> + isCaseSensitive()) :?> +
+ Attention: Captcha is case sensitive.') ?> +
+ +
+ +
+
+
+
diff --git a/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/checkout_onepage_index.xml b/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/checkout_onepage_index.xml new file mode 100644 index 0000000000000..86dfd2318b84d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/checkout_onepage_index.xml @@ -0,0 +1,60 @@ + + + + + + + user_login + + + 230 + + + 50 + + + + + + + + + Magento_Captcha::onepage.js + + + + + guest_checkout + + + 230 + + + 50 + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/customer_account_create.xml b/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/customer_account_create.xml new file mode 100644 index 0000000000000..8a497d5df2d2c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/customer_account_create.xml @@ -0,0 +1,40 @@ + + + + + + + user_create + + + 230 + + + 50 + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/customer_account_forgotpassword.xml b/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/customer_account_forgotpassword.xml new file mode 100644 index 0000000000000..c61719c3ff946 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/customer_account_forgotpassword.xml @@ -0,0 +1,40 @@ + + + + + + + user_forgotpassword + + + 230 + + + 50 + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/customer_account_login.xml b/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/customer_account_login.xml new file mode 100644 index 0000000000000..95dff1a4b3fe4 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Captcha/layout/override/customer_account_login.xml @@ -0,0 +1,40 @@ + + + + + + + user_login + + + 230 + + + 50 + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Captcha/onepage.js b/app/design/frontend/magento_plushe/Magento_Captcha/onepage.js new file mode 100644 index 0000000000000..42e01875c0966 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Captcha/onepage.js @@ -0,0 +1,40 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category mage + * @package captcha + * @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) + */ +/*jshint browser:true jquery:true*/ +(function($, window, document, undefined) { + "use strict"; + + $(document).on("login:setMethod", function() { + $("[role='guest_checkout'], [role='register_during_checkout']").hide(); + var type = ($("#login\\:guest").is(':checked')) ? 'guest_checkout' : 'register_during_checkout'; + $("[role='" + type + "']").show(); + }); + + $(document).on('billing-request:completed', function() { + if (typeof window.checkout !== 'undefined') { + $(".captcha-reload:visible").trigger("click"); + } + }); +})(jQuery, window, document); \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/category/title.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/category/title.phtml new file mode 100644 index 0000000000000..ac3fc02f0b8c3 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/category/title.phtml @@ -0,0 +1,42 @@ + + +helper('Magento\Catalog\Helper\Output'); + $_category = $this->getCurrentCategory(); +?> +
+

categoryAttribute($_category, $this->getCurrentCategory()->getName(), 'name') ?>

+ IsRssCatalogEnable()): ?> + + +
diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/category/view.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/category/view.phtml new file mode 100644 index 0000000000000..4d40df3d1f65d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/category/view.phtml @@ -0,0 +1,63 @@ + + +helper('Magento\Catalog\Helper\Output'); + $_category = $this->getCurrentCategory(); + $_imgHtml = ''; + if ($_imgUrl = $_category->getImageUrl()) { + $_imgHtml = '

'.$this->escapeHtml($_category->getName()).'

'; + $_imgHtml = $_helper->categoryAttribute($_category, $_imgHtml, 'image'); + } +?> +
+ + + + + getCurrentCategory()->getDescription()): ?> +
+ categoryAttribute($_category, $_description, 'description') ?> +
+ + + isContentMode()): ?> + getCmsBlockHtml() ?> + + isMixedMode()): ?> + getCmsBlockHtml() ?> + getProductListHtml() ?> + + + getProductListHtml() ?> + +
diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/category/widget/link/link_block.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/category/widget/link/link_block.phtml new file mode 100644 index 0000000000000..f57a72063c9a6 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/category/widget/link/link_block.phtml @@ -0,0 +1,26 @@ + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/category/widget/link/link_inline.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/category/widget/link/link_inline.phtml new file mode 100644 index 0000000000000..4d36857a85107 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/category/widget/link/link_inline.phtml @@ -0,0 +1,26 @@ + +getLinkAttributes() ?>>escapeHtml($this->getAnchorText()) ?> diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/js/list.js b/app/design/frontend/magento_plushe/Magento_Catalog/js/list.js new file mode 100644 index 0000000000000..1ed2bc0520771 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/js/list.js @@ -0,0 +1,74 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category mage compare list + * @package mage + * @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) + */ +/*jshint browser:true jquery:true*/ +(function ($, window) { + $.widget('mage.compareList', { + _create: function() { + + var elem = this.element, + products = $('thead td', elem); + + if (products.length > this.options.productsInRow) { + var headings = $('') + .addClass('comparison headings data table') + .insertBefore(elem.closest('.container')); + elem.addClass('scroll'); + + $('th', elem).each(function(){ + var th = $(this), + thCopy = th.clone(); + + th.animate({ + top: '+=0' + }, 50, function(){ + var height; + if ($.browser.mozilla && $.browser.version <= '11.0') { + height = th.outerHeight(); + } + else { + height = th.height(); + } + thCopy.css('height', height) + .appendTo(headings) + .wrap(''); + }); + }); + } + + $(this.options.windowPrintSelector).on('click', function(e) { + e.preventDefault(); + window.print(); + }); + + $.each(this.options.selectors, function(i, selector) { + $(selector).on('click', function(e) { + e.preventDefault(); + window.location.href = $(this).data('url'); + }); + }); + + } + }); +})(jQuery, window); \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layer/filter.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/layer/filter.phtml new file mode 100644 index 0000000000000..4a504db562255 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layer/filter.phtml @@ -0,0 +1,46 @@ + + + +
    +getItems() as $_item): ?> +
  1. + getCount() > 0): ?> + getLabel() ?> + getLabel() ?> + + shouldDisplayProductCount()): ?> + getCount() ?> + +
  2. + +
diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layer/state.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/layer/state.phtml new file mode 100644 index 0000000000000..5a896c8ce7125 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layer/state.phtml @@ -0,0 +1,61 @@ + + +getActiveFilters() ?> + +
+ +
    + +
  1. + getName()) ?>: + stripTags($_filter->getLabel()) ?> + getClearLinkUrl(); + if ($clearLinkUrl): + ?> + + + escapeHtml($_filter->getFilter()->getClearLinkText()) ?> + + + + + + +
  2. + +
+
+ diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layer/view.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/layer/view.phtml new file mode 100644 index 0000000000000..6216489ee8b58 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layer/view.phtml @@ -0,0 +1,57 @@ + + +canShowBlock()): ?> +
+
+ +
+
+ getStateHtml() ?> + getLayer()->getState()->getFilters()): ?> +
+ +
+ + +
+ getFilters() ?> + + getItemsCount()): ?> +
getName()) ?>
+
getHtml() ?>
+ + +
+
+
+ diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_category_view.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_category_view.xml new file mode 100644 index 0000000000000..204dba582da7e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_category_view.xml @@ -0,0 +1,35 @@ + + + + + + + positions:list-secondary + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_product_compare_index.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_product_compare_index.xml new file mode 100644 index 0000000000000..b40295454ee0a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_product_compare_index.xml @@ -0,0 +1,33 @@ + + + + + + + Compare Products + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_product_view.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_product_view.xml new file mode 100644 index 0000000000000..16e0c3b203088 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_product_view.xml @@ -0,0 +1,40 @@ + + + + + + none + Overview + + + detailed_info + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_product_view_type_grouped.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_product_view_type_grouped.xml new file mode 100644 index 0000000000000..6ee5a363eadc0 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/catalog_product_view_type_grouped.xml @@ -0,0 +1,27 @@ + + + + diff --git a/app/code/Magento/PageCache/etc/di.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/default.xml similarity index 67% rename from app/code/Magento/PageCache/etc/di.xml rename to app/design/frontend/magento_plushe/Magento_Catalog/layout/default.xml index 8de7f62d82fc0..6268243ca28ff 100644 --- a/app/code/Magento/PageCache/etc/di.xml +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/default.xml @@ -23,19 +23,9 @@ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) */ --> - - - - - - - \Magento\PageCache\Model\Control\Zend - - - - - - - + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_category_view.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_category_view.xml new file mode 100644 index 0000000000000..34ec89d16c394 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_category_view.xml @@ -0,0 +1,92 @@ + + + + + + 2columns-left.phtml + + + + + + + + + + + + product_list_toolbar + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_category_view_type_default.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_category_view_type_default.xml new file mode 100644 index 0000000000000..fd6d078f24f5b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_category_view_type_default.xml @@ -0,0 +1,30 @@ + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_category_view_type_layered.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_category_view_type_layered.xml new file mode 100644 index 0000000000000..288770e392f2a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_category_view_type_layered.xml @@ -0,0 +1,30 @@ + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_compare_index.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_compare_index.xml new file mode 100644 index 0000000000000..3a704346d3d29 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_compare_index.xml @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view.xml new file mode 100644 index 0000000000000..508164ddc257a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view.xml @@ -0,0 +1,145 @@ + + + + + + 1column.phtml + + + + + product + + + + + + mage/zoom.js + + + + + mage/gallery.css + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + getSku + sku + sku + default + + + + + + getShortDescription + short_description + overview + Overview + Details + + + + + + + + + + + + + + + + + + + + + getDescription + description + description + none + Details + + + detailed_info + + + + + Additional Information + + + detailed_info + + + + + + + + related + + + + + upsell + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_configurable.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_configurable.xml new file mode 100644 index 0000000000000..c17f71b4eb1c1 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_configurable.xml @@ -0,0 +1,39 @@ + + + + + + type-configurable + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_grouped.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_grouped.xml new file mode 100644 index 0000000000000..c72de82bdac78 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_grouped.xml @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_simple.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_simple.xml new file mode 100644 index 0000000000000..7ed2cfd91318a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_simple.xml @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_virtual.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_virtual.xml new file mode 100644 index 0000000000000..29c391803b63c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/catalog_product_view_type_virtual.xml @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/default.xml new file mode 100644 index 0000000000000..c22c8528c0d92 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/layout/override/default.xml @@ -0,0 +1,48 @@ + + + + + + + + + + msrp + Magento\Catalog\Block\Product\Price + product/price_msrp.phtml + + + msrp_item + Magento\Catalog\Block\Product\Price + product/price_msrp_item.phtml + + + msrp_noform + Magento\Catalog\Block\Product\Price + product/price_msrp_noform.phtml + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/navigation/left.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/navigation/left.phtml new file mode 100644 index 0000000000000..200d38687e64e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/navigation/left.phtml @@ -0,0 +1,59 @@ + +getCategory()) return ?> +getCurrentChildCategories() ?> +count(); ?> + +
+
+ +
+
+ +
+
+
+
    + + getIsActive()): ?> +
  1. + isCategoryActive($_category)): ?> class="current">escapeHtml($_category->getName()) ?> + getProductCount() ?> +
  2. + + +
+
+
+
+
+ diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/compare/link.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/compare/link.phtml new file mode 100644 index 0000000000000..288e5ce1f9abd --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/compare/link.phtml @@ -0,0 +1,39 @@ + +helper('Magento\Catalog\Helper\Product\Compare'); +$_items = $_helper->getItemCount() > 0 ? $_helper->getItemCollection() : null; +?> +getItemCount() > 0): ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/compare/list.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/compare/list.phtml new file mode 100644 index 0000000000000..f959e3087b402 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/compare/list.phtml @@ -0,0 +1,150 @@ + +getItems()->getSize() ?> + + + + +getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); ?> +
+
+
+ + + + getItems() as $_item): ?> + + + + + + + + + + + helper('Magento\Catalog\Helper\Output'); ?> + getItems() as $_item): ?> + + + + + + + + + getAttributes() as $_attribute): ?> + + + getItems() as $_item): ?> + + + + + + + + +
  + + + +
  + + + init($_item, 'product_comparison_list')->toHtml() ?> + + + + productAttribute($_item, $_item->getName(), 'name') ?> + + + getReviewsSummaryHtml($_item, 'short') ?> + getPriceHtml($_item, true, '-compare-list-top') ?> +
+
+ isSaleable()): ?> + + + getIsSalable()): ?> +

+ +

+ + +
+ helper('Magento\Wishlist\Helper\Data')->isAllow()) : ?> + + +
+
+ + getStoreLabel() ? $_attribute->getStoreLabel() : __($_attribute->getFrontendLabel()) ?> + + +
+ getAttributeCode()) { + case "price": ?> + getPriceHtml($_item, true, '-compare-list-' . $_attribute->getCode()) ?> + + <?php echo $this->stripTags($_item->getName(), null, true) ?> + + productAttribute($_item, $this->getProductAttributeValue($_item, $_attribute), $_attribute->getAttributeCode()) ?> + +
+
+ + + +

+ + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/compare/sidebar.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/compare/sidebar.phtml new file mode 100644 index 0000000000000..1b873ba6d41d4 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/compare/sidebar.phtml @@ -0,0 +1,79 @@ + +helper('Magento\Catalog\Helper\Product\Compare'); +$_items = $_helper->getItemCount() > 0 ? $_helper->getItemCollection() : null; +?> +
+
+ + + getItemCount() > 0): ?> + getItemCount()) ?> + + +
+
+ getItemCount() > 0): ?> +
    + $_item): ?> +
  1. + + + helper('Magento\Catalog\Helper\Output')->productAttribute($_item, $_item->getName(), 'name') ?> + + +
  2. + +
+
+
+ +
+
+ +
+
+ + +

+ +
+
diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/image.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/image.phtml new file mode 100644 index 0000000000000..363f3e4b4bb36 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/image.phtml @@ -0,0 +1,31 @@ + + + +<?php echo $this->stripTags($this->getProductImageView()->getLabel(), null, true) ?> diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/image_with_borders.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/image_with_borders.phtml new file mode 100644 index 0000000000000..1aa7f4e151f55 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/image_with_borders.phtml @@ -0,0 +1,32 @@ + + + +<?php echo $this->stripTags($this->getProductImageView()->getLabel(), null, true) ?> diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/list.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/list.phtml new file mode 100644 index 0000000000000..c5cec832a6e92 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/list.phtml @@ -0,0 +1,126 @@ + + +getLoadedProductCollection(); +$_helper = $this->helper('Magento\Catalog\Helper\Output'); +$imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); +?> +count()): ?> +

+ +getToolbarHtml() ?> +getAdditionalHtml() ?> +getMode() == 'grid') { + $viewMode ='grid'; + $image = 'category_page_grid'; + $showDescription = false; + $rating = 'short'; +} else { + $viewMode ='list'; + $image = 'category_page_list'; + $showDescription = true; + $rating = 'full'; +} +/** +* Position for actions regarding image size changing in vde if needed +*/ +$pos = $this->getPositioned(); +$position = ''; +if ($pos != null) { + $position = ' style="left:' . $this->getVar("{$image}:width") . 'px;' + .'top:' . $this->getVar("{$image}:height") . 'px;"'; +} +?> +
+ +
    + + ' : '
  1. ' ?> +
    + + + init($_product, $image)->toHtml() ?> + +
    + stripTags($_product->getName(), null, true); ?> + + + productAttribute($_product, $_product->getName(), 'name'); ?> + + + getPriceHtml($_product, true) ?> + getRatingSummary()): ?> + getReviewsSummaryHtml($_product,$rating) ?> + + +
    + productAttribute($_product, $_product->getShortDescription(), 'short_description') ?> + +
    + +
    > +
    > + isSaleable()): ?> + + + getIsSalable()): ?> +

    + +

    + + +
    + +
    +
    +
    + ' : '' ?> + +
+
+
+ getToolbarHtml() ?> +
+ diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/list/items.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/list/items.phtml new file mode 100644 index 0000000000000..5ff16b20042ba --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/list/items.phtml @@ -0,0 +1,272 @@ + + +getType()) { + + case 'related-rule': + if ($exist = $this->hasItems()) { + $type = 'related'; + $class = $type; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image ='related_products_list'; + $title = __('Related Products'); + $items = $this->getItemCollection(); + + $showWishlist = true; + $showCompare = true; + $showCart = false; + $rating = false; + $description = false; + } + break; + + case 'related': + if ($exist = $this->getItems()->getSize()) { + $type = 'related'; + $class = $type; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image ='related_products_list'; + $title = __('Related Products'); + $items = $this->getItems(); + + $showWishlist = true; + $showCompare = true; + $showCart = false; + $rating = false; + $description = false; + } + break; + + case 'upsell-rule': + if ($exist = $this->hasItems()) { + $type = 'upsell'; + $class = $type; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image ='upsell_products_list'; + $title = __('You may also be interested in the following product(s)'); + $items = $this->getItemCollection(); + + $showWishlist = false; + $showCompare = false; + $showCart = false; + $rating = false; + $description = false; + } + break; + + case 'upsell': + if ($exist = count($this->getItemCollection()->getItems())) { + $type = 'upsell'; + $class = $type; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image ='upsell_products_list'; + $title = __('You may also be interested in the following product(s)'); + $items = $this->getItemCollection()->getItems(); + + $showWishlist = false; + $showCompare = false; + $showCart = false; + $rating = false; + $description = false; + } + break; + + case 'crosssell-rule': + if ($exist = $this->hasItems()) { + $type = 'crosssell'; + $class = $type; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image ='cart_cross_sell_products'; + $title = __('More Choices:'); + $items = $this->getItemCollection(); + + $showWishlist = true; + $showCompare = true; + $showCart = true; + $rating = 'short'; + $description = false; + } + break; + + case 'crosssell': + if ($exist = $this->getItemCount()) { + $type = 'crosssell'; + $class = $type; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image ='cart_cross_sell_products'; + $title = __('More Choices:'); + $items = $this->getItems(); + + $showWishlist = true; + $showCompare = true; + $showCart = true; + $rating = 'short'; + $description = false; + } + break; + + case 'widget-viewed': + if ($exist = $this->getRecentlyViewedProducts()) { + + $mode = $this->getViewMode(); + + $type = $type . '-' . $mode; + + $class = 'widget viewed' . ' ' . $mode; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image = $this->getImageType(); + $title = __('Recently Viewed'); + $items = $exist; + + $showWishlist = true; + $showCompare = true; + $showCart = true; + $rating = 'short'; + $description = ($mode == 'list') ? true : false; + } + break; + + case 'other': + break; +} +?> + + + +
+ +
+ +
+ +
+ + +
+ + +
+ + + +
    + + + ' : '
  1. ' ?> + +
    + + ' ?> + + init($_item, $image)->toHtml() ?> + + +
    + + + escapeHtml($_item->getName()) ?> + + + getPriceHtml($_item, true, '-' . $type) ?> + + getRatingSummary() && $rating): ?> + getReviewsSummaryHtml($_item,$rating) ?> + + + isComposite() && $_item->isSaleable() && $type == 'related'): ?> + getRequiredOptions()): ?> + + + + + +
    + + +
    + isSaleable()): ?> + + + getIsSalable()): ?> +

    + +

    + + +
    + + + + + +
    + + +
    +
    + ' : '' ?> + +
+
+ + + + +
+ diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/list/toolbar.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/list/toolbar.phtml new file mode 100644 index 0000000000000..4dbf3286a34da --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/list/toolbar.phtml @@ -0,0 +1,111 @@ + + +getCollection()->getSize()): ?> +
+ isExpanded()): ?> +
+ + isEnabledViewSwitcher()): ?> +
+ getModes(); ?> + 1): ?> + + getModes() as $_code => $_label): ?> + isModeActive($_code)): ?> + + + + + + + + + + +
+ + +
+ + + getCurrentDirection() == 'desc'): ?> + + + + + + + + +
+ +
+ + +
+

+ getLastPageNum() > 1): ?> + getFirstNum(), $this->getLastNum(), $this->getTotalNum()) ?> + getLastPageNum() == 1): ?> + getTotalNum()) ?> + + getTotalNum()) ?> + +

+ +
+ + + +
+ + getPagerHtml() ?> +
+
+ diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/listing.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/listing.phtml new file mode 100644 index 0000000000000..4b85d9fb21995 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/listing.phtml @@ -0,0 +1,123 @@ + + +getLoadedProductCollection(); +$_helper = $this->helper('Magento\Catalog\Helper\Output'); +$imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); +?> +count()): ?> +

+ +getToolbarHtml() ?> +getAdditionalHtml() ?> +getMode() == 'grid') { + $viewMode ='grid'; + $image = 'category_page_grid'; + $showDescription = false; + $rating = 'short'; +} else { + $viewMode ='list'; + $image = 'category_page_list'; + $showDescription = true; + $rating = 'full'; +} + +?> +
+ +
    + + ' : '
  1. ' ?> +
    + + + init($_product, $image)->toHtml() ?> + +
    + ' + . ' ' + . $_helper->productAttribute($_product, $_product->getName(), 'name') + . ''; + $info['price'] = $this->getPriceHtml($_product, true); + $info['rating'] = $_product->getRatingSummary() ? $this->getReviewsSummaryHtml($_product,$rating) : ''; + + if ($_product->isSaleable()) { + $info['button'] = ''; + } else { + $info['button'] = $_product->getIsSalable() ? '

    ' . __('In stock') . '

    ' : + '

    ' . __('Out of stock') . '

    '; + } + + $info['links'] = ''; + $info['actions'] = '
    ' . $info['button'] . $info['links'] . '
    '; + + if ($showDescription) { + $info['description'] = '
    ' + . $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description') + . ' ' + . __('Learn More') . '
    '; + } else { + $info['description'] = ''; + } + + $details = $this->getInfoOrder() ? : array('name','price','rating','description','actions'); + foreach ($details as $detail) { + echo $info[$detail]; + } + ?> + +
    +
    + ' : '' ?> + +
+ +
+
+ getToolbarHtml() ?> +
+ + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/addto.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/addto.phtml new file mode 100644 index 0000000000000..076fc1132f6e7 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/addto.phtml @@ -0,0 +1,48 @@ + + +getProduct(); ?> +helper('Magento\Wishlist\Helper\Data')->getAddUrl($_product); ?> + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/addtocart.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/addtocart.phtml new file mode 100644 index 0000000000000..726d90b9c1fba --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/addtocart.phtml @@ -0,0 +1,93 @@ + +getProduct(); ?> + +isSaleable()): ?> +
+ isGrouped()): ?> +
+ +
+ +
+
+ +
+ + getChildHtml('', true) ?> +
+
+ + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/attribute.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/attribute.phtml new file mode 100644 index 0000000000000..ffe146694c701 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/attribute.phtml @@ -0,0 +1,59 @@ + +helper('Magento\Catalog\Helper\Output'); +$_product = $this->getProduct(); +$_call = $this->getAtCall(); +$_code = $this->getAtCode(); +$_className = $this->getCssClass(); +$_attributeLabel = $this->getAtLabel(); +$_attributeType = $this->getAtType(); + +if ( $_attributeLabel && $_attributeLabel == 'default' ) { + $_attributeLabel = $_product->getResource()->getAttribute($_code)->getFrontendLabel(); +} +if ( $_attributeType && $_attributeType == 'text' ) { + $_attributeValue = ($_helper->productAttribute($_product, $_product->$_call(), $_code)) ? $_product->getAttributeText($_code) : ''; +} else { + $_attributeValue = $_helper->productAttribute($_product, $_product->$_call(), $_code); +} + +?> + + +
+ +
+
+ + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/attributes.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/attributes.phtml new file mode 100644 index 0000000000000..f4a0c38483cd6 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/attributes.phtml @@ -0,0 +1,47 @@ + +helper('Magento\Catalog\Helper\Output'); + $_product = $this->getProduct() +?> +getAdditionalData()): ?> + + + + + + + + + +
escapeHtml(__($_data['label'])) ?>productAttribute($_product, $_data['value'], $_data['code']) ?>
+ diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/base-image.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/base-image.phtml new file mode 100644 index 0000000000000..9e8ee027a8aed --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/base-image.phtml @@ -0,0 +1,153 @@ + +getProduct(); + $_helper = $this->helper('Magento\Catalog\Helper\Output'); + + //list($_imgWidth, $_imgHeight) = $this->helper('Magento\Catalog\Helper\Image')->init($_product, 'image')->getOriginalSizeArray(); + + $image = 'product_page_main_image'; + + $_resizedWidth = $this->getVar("{$image}:width"); + $_resizedHeight = $this->getVar("{$image}:height") ?: $_resizedWidth ; + + $_hasImage = ($_product->getImage() && $_product->getImage() != "no_selection") ? true : false; + + //$_isOldDisplayMode = $this->getOldDisplayMode() || 0; + $_isOldDisplayMode = 0; + $whiteBorders = $this->getVar("product_image_white_borders"); +?> + + + +
+ + getChildBlock('product.image.main')->init($_product, $image)->toHtml() ?> + + + + +

+ + + +
+ +getGalleryImages()) > 0): ?> + +getVar("product_page_more_views:width"); + $thumbHeight = $this->getVar("product_page_more_views:height") ? : $thumbWidth; +?> +
+ +
    + getGalleryImages() as $_image): ?> + getGalleryUrl($_image) + . ',windowName:\'gallery\',width:300,height:300,status:1,scrollbars:1,resizable:1}"'; + } else { + $attributes = ' href="' + . $this->helper('Magento\Catalog\Helper\Image')->init($_product, 'image', $_image->getFile()) + . '" rel="'; + if ($whiteBorders) { + $attributes .= $this->helper('Magento\Catalog\Helper\Image')->init($_product, 'image', $_image->getFile())->resize($_resizedWidth,$_resizedHeight) . '"'; + } else { + $attributes .= $this->helper('Magento\Catalog\Helper\Image')->init($_product, 'image', $_image->getFile())->constrainOnly(TRUE)->keepAspectRatio(TRUE)->keepFrame(FALSE)->resize($_resizedWidth,$_resizedHeight) . '"'; + } + };?> +
  • + class="magento-zoom" title="escapeHtml($_image->getLabel()) ?>"> + + + <?php echo $this->escapeHtml($_image->getLabel()) ?> + + + + <?php echo $this->escapeHtml($_image->getLabel()) ?> + + + +
  • + +
+
+ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/description.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/description.phtml new file mode 100644 index 0000000000000..cd98c96ea758d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/description.phtml @@ -0,0 +1,32 @@ + +helper('Magento\Catalog\Helper\Output')->productAttribute($this->getProduct(), $this->getProduct()->getDescription(), 'description') ?> diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/details.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/details.phtml new file mode 100644 index 0000000000000..52e095b6f80f7 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/details.phtml @@ -0,0 +1,42 @@ + +getGroupChildNames('detailed_info', 'getChildHtml')):?> +
+ getLayout(); ?> +
+ + renderElement($name); + if (!trim($html)) continue; + $alias = $layout->getElementAlias($name); + $label = $this->escapeHtml($this->getChildData($alias, 'title')); + ?> +
+
+ +
+
+ diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/form.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/form.phtml new file mode 100644 index 0000000000000..ee446447da120 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/form.phtml @@ -0,0 +1,62 @@ + +helper('Magento\Catalog\Helper\Output'); ?> +getProduct(); ?> + + +
+
getOptions()): ?> enctype="multipart/form-data"> + + + + getChildHtml('form_top'); ?> + hasOptions()):?> + getChildHtml('product_info_form_content'); ?> + + isSaleable() && $this->getOptionsContainer() == 'container1'):?> + getChildChildHtml('options_container') ?> + + + + isSaleable() && $this->hasOptions() && $this->getOptionsContainer() == 'container2'):?> + getChildChildHtml('options_container') ?> + + getChildHtml('form_bottom'); ?> +
+
diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/gallery.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/gallery.phtml new file mode 100644 index 0000000000000..815bfc49d92db --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/gallery.phtml @@ -0,0 +1,77 @@ + +getGalleryImages()) > 0): ?> + +getVar("product_page_more_views:width"); + $thumbHeight = $this->getVar("product_page_more_views:height") ? : $thumbWidth; +?> +
+ +
    + getGalleryImages() as $_image): ?> + getGalleryUrl($_image) + . ',windowName:\'gallery\',width:300,height:300,status:1,scrollbars:1,resizable:1}"'; + } else { + $attributes = ' href="' + . $this->helper('Magento\Catalog\Helper\Image')->init($_product, 'image', $_image->getFile()) + . '" rel="'; + if ($whiteBorders) { + $attributes .= $this->helper('Magento\Catalog\Helper\Image')->init($_product, 'image', $_image->getFile())->resize($_resizedWidth,$_resizedHeight) . '"'; + } else { + $attributes .= $this->helper('Magento\Catalog\Helper\Image')->init($_product, 'image', $_image->getFile())->constrainOnly(TRUE)->keepAspectRatio(TRUE)->keepFrame(FALSE)->resize($_resizedWidth,$_resizedHeight) . '"'; + } + };?> +
  • + class="magento-zoom" title="escapeHtml($_image->getLabel()) ?>"> + + + <?php echo $this->escapeHtml($_image->getLabel()) ?> + + + + <?php echo $this->escapeHtml($_image->getLabel()) ?> + + + +
  • + +
+
+ + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/mailto.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/mailto.phtml new file mode 100644 index 0000000000000..0c7658ab609ae --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/mailto.phtml @@ -0,0 +1,31 @@ + +getProduct() ?> +canEmailToFriend()): ?> + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options.phtml new file mode 100644 index 0000000000000..b79c02ce4ace6 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options.phtml @@ -0,0 +1,43 @@ + + +helper('Magento\Core\Helper\Data')->decorateArray($this->getOptions()) ?> + + + + getOptionHtml($_option) ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/js.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/js.phtml new file mode 100644 index 0000000000000..9cafa8bb47440 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/js.phtml @@ -0,0 +1,88 @@ + + diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/date.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/date.phtml new file mode 100644 index 0000000000000..8322a297e9c23 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/date.phtml @@ -0,0 +1,79 @@ + +getOption() ?> +getId() ?> +getIsRequire()) ? ' required' : ''; ?> +
+ +
+ getType() == \Magento\Catalog\Model\Product\Option::OPTION_TYPE_DATE_TIME + || $_option->getType() == \Magento\Catalog\Model\Product\Option::OPTION_TYPE_DATE): ?> + + getDateHtml() ?> + + useCalendar()): ?> + + + + + + getType() == \Magento\Catalog\Model\Product\Option::OPTION_TYPE_DATE_TIME + || $_option->getType() == \Magento\Catalog\Model\Product\Option::OPTION_TYPE_TIME): ?> + getTimeHtml() ?> + + + getIsRequire()): ?> + + + + + + +
+
diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/default.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/default.phtml new file mode 100644 index 0000000000000..5bfb09586a90b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/default.phtml @@ -0,0 +1,29 @@ + +getOption() ?> +
+ +
diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/file.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/file.phtml new file mode 100644 index 0000000000000..3d4432539caa2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/file.phtml @@ -0,0 +1,88 @@ + +getOption(); ?> +getFileInfo(); ?> +hasData(); ?> +getId() . '_file'; ?> + + + +getIsRequire()) ? ' required' : ''; ?> + + + + +
+ + +
+ getTitle(); ?> + + +   + getIsRequire()): ?> + + + +
+ +
> + /> + + getFileExtension()): ?> +

+ : getFileExtension() ?> +

+ + getImageSizeX() > 0): ?> +

+ : getImageSizeX() ?> +

+ + getImageSizeY() > 0): ?> +

+ : getImageSizeY() ?> +

+ +
+
diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/select.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/select.phtml new file mode 100644 index 0000000000000..765061bced1c8 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/select.phtml @@ -0,0 +1,44 @@ + + + +getOption(); + $class = ($_option->getIsRequire()) ? ' required' : ''; +?> +
+ +
+ getValuesHtml() ?> + getIsRequire()): ?> + getType() == \Magento\Catalog\Model\Product\Option::OPTION_TYPE_RADIO || $_option->getType() == \Magento\Catalog\Model\Product\Option::OPTION_TYPE_CHECKBOX): ?> + + + +
+
diff --git a/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/text.phtml b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/text.phtml new file mode 100644 index 0000000000000..8a1d38825fcb2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Catalog/product/view/options/type/text.phtml @@ -0,0 +1,61 @@ + +getOption(); + $class = ($_option->getIsRequire()) ? ' required' : ''; +?> +
+ +
+ getType() == \Magento\Catalog\Model\Product\Option::OPTION_TYPE_FIELD): ?> + getIsRequire()){ + $_textValidate['required'] = true; + } + if($_option->getMaxCharacters()){ + $_textValidate['maxlength'] = $_option->getMaxCharacters(); + } + ?> + getMaxCharacters()){ + $_textAreaValidate['maxlength'] = $_option->getMaxCharacters(); + } + ?> + +
+
+ +
+ + +
+ + diff --git a/app/design/frontend/magento_plushe/Magento_Contacts/layout/contacts_index_index.xml b/app/design/frontend/magento_plushe/Magento_Contacts/layout/contacts_index_index.xml new file mode 100644 index 0000000000000..58a124e9c1548 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Contacts/layout/contacts_index_index.xml @@ -0,0 +1,28 @@ + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Contacts/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Contacts/layout/override/default.xml new file mode 100644 index 0000000000000..d9b1bc6867ee2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Contacts/layout/override/default.xml @@ -0,0 +1,36 @@ + + + + + + + Contact Us + contacts + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Core/text.phtml b/app/design/frontend/magento_plushe/Magento_Core/text.phtml new file mode 100644 index 0000000000000..26002f9e02f98 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Core/text.phtml @@ -0,0 +1,35 @@ +getCssClass() ? ' class="' . $this->getCssClass() . '"' : ''; +$attr = $this->getAttributes(); +if ( !empty($attr) ) { + foreach ($this->getAttributes() as $attribute => $value ) { + $attributes .= ' '. $attribute . '="' . $value . '"'; + } +}; +echo + '<' . $this->getTag() . $attributes . '>' . $this->getText() . 'getTag() . '>'; diff --git a/app/design/frontend/magento_plushe/Magento_Customer/account/customer.phtml b/app/design/frontend/magento_plushe/Magento_Customer/account/customer.phtml new file mode 100644 index 0000000000000..f158025e4468a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/account/customer.phtml @@ -0,0 +1,37 @@ + +customerLoggedIn()): ?> +
  • + + getCustomerName(); ?> + + getChildHtml()):?> + + getChildHtml();?> + + +
  • + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/account/dashboard/address.phtml b/app/design/frontend/magento_plushe/Magento_Customer/account/dashboard/address.phtml new file mode 100644 index 0000000000000..b0c420fc344ee --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/account/dashboard/address.phtml @@ -0,0 +1,51 @@ + +
    +
    + + +
    +
    +
    + + + + +
    + getPrimaryBillingAddressHtml() ?> +
    +
    +
    + + + + +
    + getPrimaryShippingAddressHtml() ?> +
    +
    +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Customer/account/dashboard/hello.phtml b/app/design/frontend/magento_plushe/Magento_Customer/account/dashboard/hello.phtml new file mode 100644 index 0000000000000..29e0f6bbfe238 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/account/dashboard/hello.phtml @@ -0,0 +1,31 @@ + +
    +
    escapeHtml($this->getCustomerName())) ?>
    +
    +

    +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Customer/account/dashboard/info.phtml b/app/design/frontend/magento_plushe/Magento_Customer/account/dashboard/info.phtml new file mode 100644 index 0000000000000..c9a1d6f15fdb2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/account/dashboard/info.phtml @@ -0,0 +1,58 @@ + +
    +
    +
    +
    + + + + +

    + escapeHtml($this->getCustomer()->getName()) ?>
    + escapeHtml($this->getCustomer()->getEmail()) ?>
    + +

    +
    + isNewsletterEnabled() ): ?> + + +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Customer/account/link/back.phtml b/app/design/frontend/magento_plushe/Magento_Customer/account/link/back.phtml new file mode 100644 index 0000000000000..f983ab287d73e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/account/link/back.phtml @@ -0,0 +1,28 @@ + +
    +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Customer/account/navigation.phtml b/app/design/frontend/magento_plushe/Magento_Customer/account/navigation.phtml new file mode 100644 index 0000000000000..cb0c609ef628a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/account/navigation.phtml @@ -0,0 +1,38 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/address/book.phtml b/app/design/frontend/magento_plushe/Magento_Customer/address/book.phtml new file mode 100644 index 0000000000000..797ef9838b46d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/address/book.phtml @@ -0,0 +1,110 @@ + + +
    +
    +
    + getDefaultBilling()): ?> +
    + + + + + + +
    + getAddressHtml($this->getAddressById($_pAddsses)) ?> +
    +
    + +
    + +

    +
    + + + getDefaultShipping()): ?> +
    + + + + + + +
    + getAddressHtml($this->getAddressById($_pAddsses)) ?> +
    +
    + +
    + +

    +
    + +
    +
    + +
    +
    +
    + getAdditionalAddresses()): ?> +
      + +
    1. +
      + getAddressHtml($_address) ?>
      +
      +
      + + +
      +
    2. + +
    + +

    + +
    +
    + +
    +
    +
    + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Customer/address/button.phtml b/app/design/frontend/magento_plushe/Magento_Customer/address/button.phtml new file mode 100644 index 0000000000000..7cf5a8cafe8ee --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/address/button.phtml @@ -0,0 +1,32 @@ + + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Customer/address/edit.phtml b/app/design/frontend/magento_plushe/Magento_Customer/address/edit.phtml new file mode 100644 index 0000000000000..560d23a119d4a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/address/edit.phtml @@ -0,0 +1,164 @@ + + +
    +
    +
    + getBlockHtml('formkey')?> + + + getNameBlockHtml() ?> +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    +
    +
    + helper('Magento\Customer\Helper\Address')->getAttributeValidationClass('street'); ?> +
    + +
    + +
    + + helper('Magento\Customer\Helper\Address')->getStreetLines(); $_i <= $_n; $_i++): ?> +
    +
    + +
    +
    + +
    +
    +
    + + helper('Magento\Customer\Helper\Address')->isVatAttributeVisible()) : ?> +
    + +
    + +
    +
    + +
    + +
    + +
    +
    +
    + +
    + + +
    +
    +
    + +
    + +
    +
    +
    + +
    + getCountryHtmlSelect() ?> +
    +
    + + isDefaultBilling()): ?> +
    + canSetAsDefaultBilling()): ?> +
    + + +
    + + + + + isDefaultShipping()): ?> +
    + canSetAsDefaultShipping()): ?> +
    + + +
    + + + +
    +
    +
    +
    +
    +
    + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/form/address.phtml b/app/design/frontend/magento_plushe/Magento_Customer/form/address.phtml new file mode 100644 index 0000000000000..b2493aded84f2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/form/address.phtml @@ -0,0 +1,155 @@ + +
    +

    getAddressId()): ?>

    +
    +getMessagesBlock()->getGroupedHtml() ?> +
    +
    + + +

    +
      +
    • + getLayout()->createBlock('Magento\Customer\Block\Widget\Name')->setObject($data)->toHtml() ?> +
    • +
    • + +
      + +
      +
    • +
    +
    +
    +

    +
      + helper('Magento\Customer\Helper\Address')->getAttributeValidationClass('street'); ?> +
    • + +
      + +
      +
    • + + helper('Magento\Customer\Helper\Address')->getStreetLines(); $_i <= $_n; $_i++): ?> +
    • +
      + +
      +
    • + +
    • +
      + +
      + +
      +
      +
      + +
      + + +
      +
      +
    • +
    • +
      + +
      + +
      +
      +
      + +
      + +
      +
      +
    • +
    • +
      + +
      + +
      +
      +
      + +
      + +
      +
      +
    • + $type): ?> +
    • + isPrimary($type['address_type_id'])): ?> +

      + +
      + +
      + + +
    • + +
    +
    +
    + + +
    +

    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/form/changepassword.phtml b/app/design/frontend/magento_plushe/Magento_Customer/form/changepassword.phtml new file mode 100644 index 0000000000000..756af607ee28c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/form/changepassword.phtml @@ -0,0 +1,68 @@ + +getMessagesBlock()->getGroupedHtml() ?> +
    +
    +
      +
    • +
      + +
      + +
      +
      +
    • +
    • +
      + +
      + +
      +
      +
      + +
      + +
      +
      +
    • +
    +
    +
    + + +
    +

    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/form/confirmation.phtml b/app/design/frontend/magento_plushe/Magento_Customer/form/confirmation.phtml new file mode 100644 index 0000000000000..e1c81f393e71d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/form/confirmation.phtml @@ -0,0 +1,59 @@ + +
    +

    +
    +getMessagesBlock()->getGroupedHtml() ?> +
    +
    +

    +
      +
    • + +
      + +
      +
    • +
    +
    +
    + + +
    +

    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/form/edit.phtml b/app/design/frontend/magento_plushe/Magento_Customer/form/edit.phtml new file mode 100644 index 0000000000000..6f95865e86918 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/form/edit.phtml @@ -0,0 +1,129 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/form/forgotpassword.phtml b/app/design/frontend/magento_plushe/Magento_Customer/form/forgotpassword.phtml new file mode 100644 index 0000000000000..8e253400da2f1 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/form/forgotpassword.phtml @@ -0,0 +1,57 @@ + +
    +
    +

    + + getChildHtml('form_additional_info'); ?> +
    +
    +
    + +
    +
    + +
    +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/form/login.phtml b/app/design/frontend/magento_plushe/Magento_Customer/form/login.phtml new file mode 100644 index 0000000000000..2c6b40d8dbb09 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/form/login.phtml @@ -0,0 +1,82 @@ + + +helper('Magento\Customer\Helper\Data')->isRegistrationAllowed()) echo ' login-only' ?>"> +
    +

    helper('Magento\Customer\Helper\Data')->isRegistrationAllowed()): ?> + + + +

    +
    + */ +?> + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/form/newsletter.phtml b/app/design/frontend/magento_plushe/Magento_Customer/form/newsletter.phtml new file mode 100644 index 0000000000000..cd4a812be3748 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/form/newsletter.phtml @@ -0,0 +1,45 @@ + +getChildHtml('form_before')?> + + +getChildHtml('customer.form.newsletter.extra2')?> \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Customer/form/register.phtml b/app/design/frontend/magento_plushe/Magento_Customer/form/register.phtml new file mode 100644 index 0000000000000..be555e0be84ba --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/form/register.phtml @@ -0,0 +1,234 @@ + + + + getChildHtml('form_fields_before')?> + + getChildHtml('customer.form.register.extra')?> + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/form/resetforgottenpassword.phtml b/app/design/frontend/magento_plushe/Magento_Customer/form/resetforgottenpassword.phtml new file mode 100644 index 0000000000000..5cb725070f61c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/form/resetforgottenpassword.phtml @@ -0,0 +1,59 @@ + +
    +
    +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    +
    +
    + +
    +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/layout/customer_account.xml b/app/design/frontend/magento_plushe/Magento_Customer/layout/customer_account.xml new file mode 100644 index 0000000000000..c8cdb22c4514a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/layout/customer_account.xml @@ -0,0 +1,35 @@ + + + + + + + account + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/layout/default.xml b/app/design/frontend/magento_plushe/Magento_Customer/layout/default.xml new file mode 100644 index 0000000000000..78ca4af2db4bc --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/layout/default.xml @@ -0,0 +1,38 @@ + + + + + + + + register + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_create.xml b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_create.xml new file mode 100644 index 0000000000000..7dd7c664bdd18 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_create.xml @@ -0,0 +1,42 @@ + + + + + + 1column.phtml + + + + + + + + customer.form.register.fields.before + form_fields_before + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_edit.xml b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_edit.xml new file mode 100644 index 0000000000000..df916091a3c1d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_edit.xml @@ -0,0 +1,36 @@ + + + + + + + Edit Account Info + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_forgotpassword.xml b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_forgotpassword.xml new file mode 100644 index 0000000000000..128f53260916b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_forgotpassword.xml @@ -0,0 +1,45 @@ + + + + + + Forgot Your Password + + + + + 1column.phtml + + + Password forgotten + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_index.xml b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_index.xml new file mode 100644 index 0000000000000..3aa28cf32072f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_index.xml @@ -0,0 +1,40 @@ + + + + + + + + My Dashboard + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_login.xml b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_login.xml new file mode 100644 index 0000000000000..50e86321f0267 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_account_login.xml @@ -0,0 +1,41 @@ + + + + + + 1column.phtml + + + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_address_index.xml b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_address_index.xml new file mode 100644 index 0000000000000..c864da39dd202 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/layout/override/customer_address_index.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/newcustomer.phtml b/app/design/frontend/magento_plushe/Magento_Customer/newcustomer.phtml new file mode 100644 index 0000000000000..52620acc2d5c4 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/newcustomer.phtml @@ -0,0 +1,44 @@ + + +helper('Magento\Customer\Helper\Data')->isRegistrationAllowed()): ?> +
    +
    +
    +

    +
    + +
    +
    +
    + + diff --git a/app/design/frontend/magento_plushe/Magento_Customer/widget/dob.phtml b/app/design/frontend/magento_plushe/Magento_Customer/widget/dob.phtml new file mode 100644 index 0000000000000..8bede14224774 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/widget/dob.phtml @@ -0,0 +1,84 @@ +getLayout()->createBlock('Magento\Customer\Block\Widget\Dob') + ->setDate($this->getCustomer()->getDob()) + ->toHtml() ?> + +For checkout/onepage/billing.phtml: + +getLayout()->createBlock('Magento\Customer\Block\Widget\Dob') + ->setDate($this->getCustomer()->getDob()) + ->setFieldIdFormat('billing:%s') + ->setFieldNameFormat('billing[%s]') + ->toHtml() ?> + +NOTE: Regarding styles - if we leave it this way, we'll move it to boxes.css + Alternatively we could calculate widths automatically using block input parameters. +*/ + +/** + * @see \Magento\Customer\Block\Widget\Dob + */ +?> +
    + +
    +
    + setDateInput('d', + '
    + +
    getFieldParams() . ' />
    +
    ' + ); + + $this->setDateInput('m', + '
    + +
    getFieldParams() . ' />
    +
    ' + ); + + $this->setDateInput('y', + '
    + +
    getFieldParams() . ' />
    +
    ' + ); + ?> + getSortedDateInputs() ?> +
    + + +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Customer/widget/gender.phtml b/app/design/frontend/magento_plushe/Magento_Customer/widget/gender.phtml new file mode 100644 index 0000000000000..13010e23213ab --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/widget/gender.phtml @@ -0,0 +1,37 @@ + +
    + +
    + +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Customer/widget/name.phtml b/app/design/frontend/magento_plushe/Magento_Customer/widget/name.phtml new file mode 100644 index 0000000000000..cc30b8872c90b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/widget/name.phtml @@ -0,0 +1,112 @@ +getLayout()->createBlock('Magento\Customer\Block\Widget\Name') + ->setObject($this->getAddress()) + ->toHtml() ?> + +For checkout/onepage/shipping.phtml: + +getLayout()->createBlock('Magento\Customer\Block\Widget\Name') + ->setObject($this->getAddress()) + ->setFieldIdFormat('shipping:%s') + ->setFieldNameFormat('shipping[%s]') + ->setFieldParams('onchange="shipping.setSameAsBilling(false);"') + ->toHtml() ?> +*/ +/* @var $this \Magento\Customer\Block\Widget\Name */ +$prefix = $this->showPrefix(); +$middle = $this->showMiddlename(); +$suffix = $this->showSuffix(); +?> +getNoWrap()): ?> +
    + +
    +
    + + +
    + +
    + getPrefixOptions() === false): ?> + getFieldParams() ?> isPrefixRequired()) echo ' data-validate="{required:true}"' ?> /> + + + +
    +
    + +
    + +
    + getFieldParams() ?> helper('Magento\Customer\Helper\Address')->getAttributeValidationClass('firstname') == 'required-entry') echo ' data-validate="{required:true}"' ?> /> +
    +
    + +isMiddlenameRequired(); ?> +
    + +
    + getFieldParams() ?> /> +
    +
    + +
    + +
    + getFieldParams() ?> helper('Magento\Customer\Helper\Address')->getAttributeValidationClass('lastname') == 'required-entry') echo ' data-validate="{required:true}"' ?> /> +
    +
    + +
    + +
    + getSuffixOptions() === false): ?> + getFieldParams() ?> isSuffixRequired()) echo ' data-validate="{required:true}"' ?> /> + + + +
    +
    + +getNoWrap()): ?> +
    +
    +
    + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Customer/widget/taxvat.phtml b/app/design/frontend/magento_plushe/Magento_Customer/widget/taxvat.phtml new file mode 100644 index 0000000000000..57fc40a725d6f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Customer/widget/taxvat.phtml @@ -0,0 +1,31 @@ + +
    + +
    + getFieldParams() ?> isRequired()) echo ' data-validate="{required:true}"' ?> /> +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_DesignEditor/controls/image_sizing.xml b/app/design/frontend/magento_plushe/Magento_DesignEditor/controls/image_sizing.xml new file mode 100644 index 0000000000000..2d4d9e45b793f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_DesignEditor/controls/image_sizing.xml @@ -0,0 +1,787 @@ + + + + + white-border + + + white-border + Magento_Catalog::product_image_white_borders + + + + + + image-sizing + + + image-type + Magento_Catalog::review_page_product_image:type + + + image-width + Magento_Catalog::review_page_product_image:width + + + image-ratio + Magento_Catalog::review_page_product_image:ratio + + + image-height + Magento_Catalog::review_page_product_image:height + + + + + + image-sizing + + + image-type + Magento_Catalog::customer_account_product_review_page:type + + + image-width + Magento_Catalog::customer_account_product_review_page:width + + + image-ratio + Magento_Catalog::customer_account_product_review_page:ratio + + + image-height + Magento_Catalog::customer_account_product_review_page:height + + + + + + image-sizing + + + image-type + Magento_Catalog::category_page_list:type + + + image-width + Magento_Catalog::category_page_list:width + + + image-ratio + Magento_Catalog::category_page_list:ratio + + + image-height + Magento_Catalog::category_page_list:height + + + + + + image-sizing + + + image-type + Magento_Catalog::category_page_grid:type + + + image-width + Magento_Catalog::category_page_grid:width + + + image-ratio + Magento_Catalog::category_page_grid:ratio + + + image-height + Magento_Catalog::category_page_grid:height + + + + + + image-sizing + + + image-type + Magento_Catalog::product_comparison_list:type + + + image-width + Magento_Catalog::product_comparison_list:width + + + image-ratio + Magento_Catalog::product_comparison_list:ratio + + + image-height + Magento_Catalog::product_comparison_list:height + + + + + + image-sizing + + + image-type + Magento_Catalog::related_products_list:type + + + image-width + Magento_Catalog::related_products_list:width + + + image-ratio + Magento_Catalog::related_products_list:ratio + + + image-height + Magento_Catalog::related_products_list:height + + + + + + image-sizing + + + image-type + Magento_Catalog::upsell_products_list:type + + + image-width + Magento_Catalog::upsell_products_list:width + + + image-ratio + Magento_Catalog::upsell_products_list:ratio + + + image-height + Magento_Catalog::upsell_products_list:height + + + + + + image-sizing + + + image-type + Magento_Catalog::product_page_main_image:type + + + image-width + Magento_Catalog::product_page_main_image:width + + + image-ratio + Magento_Catalog::product_page_main_image:ratio + + + image-height + Magento_Catalog::product_page_main_image:height + + + + + + image-sizing + + + image-type + Magento_Catalog::product_page_main_image_default:type + + + image-width + Magento_Catalog::product_page_main_image_default:width + + + image-ratio + Magento_Catalog::product_page_main_image_default:ratio + + + image-height + Magento_Catalog::product_page_main_image_default:height + + + + + + image-sizing + + + image-type + Magento_Catalog::product_page_more_views:type + + + image-width + Magento_Catalog::product_page_more_views:width + + + image-ratio + Magento_Catalog::product_page_more_views:ratio + + + image-height + Magento_Catalog::product_page_more_views:height + + + + + + image-sizing + + + image-type + Magento_Catalog::side_column_widget_product_thumbnail:type + + + image-width + Magento_Catalog::side_column_widget_product_thumbnail:width + + + image-ratio + Magento_Catalog::side_column_widget_product_thumbnail:ratio + + + image-height + Magento_Catalog::side_column_widget_product_thumbnail:height + + + + + + image-sizing + + + image-type + Magento_Catalog::new_products_content_widget_list:type + + + image-width + Magento_Catalog::new_products_content_widget_list:width + + + image-ratio + Magento_Catalog::new_products_content_widget_list:ratio + + + image-height + Magento_Catalog::new_products_content_widget_list:height + + + + + + image-sizing + + + image-type + Magento_Catalog::new_products_content_widget_grid:type + + + image-width + Magento_Catalog::new_products_content_widget_grid:width + + + image-ratio + Magento_Catalog::new_products_content_widget_grid:ratio + + + image-height + Magento_Catalog::new_products_content_widget_grid:height + + + + + + image-sizing + + + image-type + Magento_Catalog::recently_compared_products_images_names_widget:type + + + image-width + Magento_Catalog::recently_compared_products_images_names_widget:width + + + image-ratio + Magento_Catalog::recently_compared_products_images_names_widget:ratio + + + image-height + Magento_Catalog::recently_compared_products_images_names_widget:height + + + + + + image-sizing + + + image-type + Magento_Catalog::recently_viewed_products_images_names_widget:type + + + image-width + Magento_Catalog::recently_viewed_products_images_names_widget:width + + + image-ratio + Magento_Catalog::recently_viewed_products_images_names_widget:ratio + + + image-height + Magento_Catalog::recently_viewed_products_images_names_widget:height + + + + + + image-sizing + + + image-type + Magento_Catalog::recently_compared_products_images_only_widget:type + + + image-width + Magento_Catalog::recently_compared_products_images_only_widget:width + + + image-ratio + Magento_Catalog::recently_compared_products_images_only_widget:ratio + + + image-height + Magento_Catalog::recently_compared_products_images_only_widget:height + + + + + + image-sizing + + + image-type + Magento_Catalog::recently_viewed_products_images_only_widget:type + + + image-width + Magento_Catalog::recently_viewed_products_images_only_widget:width + + + image-ratio + Magento_Catalog::recently_viewed_products_images_only_widget:ratio + + + image-height + Magento_Catalog::recently_viewed_products_images_only_widget:height + + + + + + image-sizing + + + image-type + Magento_Catalog::bundled_product_customization_page:type + + + image-width + Magento_Catalog::bundled_product_customization_page:width + + + image-ratio + Magento_Catalog::bundled_product_customization_page:ratio + + + image-height + Magento_Catalog::bundled_product_customization_page:height + + + + + + image-sizing + + + image-type + Magento_Catalog::recently_compared_products_grid_content_widget:type + + + image-width + Magento_Catalog::recently_compared_products_grid_content_widget:width + + + image-ratio + Magento_Catalog::recently_compared_products_grid_content_widget:ratio + + + image-height + Magento_Catalog::recently_compared_products_grid_content_widget:height + + + + + + image-sizing + + + image-type + Magento_Catalog::recently_compared_products_list_content_widget:type + + + image-width + Magento_Catalog::recently_compared_products_list_content_widget:width + + + image-ratio + Magento_Catalog::recently_compared_products_list_content_widget:ratio + + + image-height + Magento_Catalog::recently_compared_products_list_content_widget:height + + + + + + image-sizing + + + image-type + Magento_Catalog::recently_viewed_products_grid_content_widget:type + + + image-width + Magento_Catalog::recently_viewed_products_grid_content_widget:width + + + image-ratio + Magento_Catalog::recently_viewed_products_grid_content_widget:ratio + + + image-height + Magento_Catalog::recently_viewed_products_grid_content_widget:height + + + + + + image-sizing + + + image-type + Magento_Catalog::recently_viewed_products_list_content_widget:type + + + image-width + Magento_Catalog::recently_viewed_products_list_content_widget:width + + + image-ratio + Magento_Catalog::recently_viewed_products_list_content_widget:ratio + + + image-height + Magento_Catalog::recently_viewed_products_list_content_widget:height + + + + + + image-sizing + + + image-type + Magento_Catalog::customer_shared_wishlist:type + + + image-width + Magento_Catalog::customer_shared_wishlist:width + + + image-ratio + Magento_Catalog::customer_shared_wishlist:ratio + + + image-height + Magento_Catalog::customer_shared_wishlist:height + + + + + + image-sizing + + + image-type + Magento_Catalog::wishlist_thumbnail:type + + + image-width + Magento_Catalog::wishlist_thumbnail:width + + + image-ratio + Magento_Catalog::wishlist_thumbnail:ratio + + + image-height + Magento_Catalog::wishlist_thumbnail:height + + + + + + image-sizing + + + image-type + Magento_Catalog::wishlist_sidebar_block:type + + + image-width + Magento_Catalog::wishlist_sidebar_block:width + + + image-ratio + Magento_Catalog::wishlist_sidebar_block:ratio + + + image-height + Magento_Catalog::wishlist_sidebar_block:height + + + + + + image-sizing + + + image-type + Magento_Catalog::shared_wishlist_email:type + + + image-width + Magento_Catalog::shared_wishlist_email:width + + + image-ratio + Magento_Catalog::shared_wishlist_email:ratio + + + image-height + Magento_Catalog::shared_wishlist_email:height + + + + + + image-sizing + + + image-type + Magento_Catalog::customer_account_my_tags_tag_view:type + + + image-width + Magento_Catalog::customer_account_my_tags_tag_view:width + + + image-ratio + Magento_Catalog::customer_account_my_tags_tag_view:ratio + + + image-height + Magento_Catalog::customer_account_my_tags_tag_view:height + + + + + + image-sizing + + + image-type + Magento_Catalog::cart_cross_sell_products:type + + + image-width + Magento_Catalog::cart_cross_sell_products:width + + + image-ratio + Magento_Catalog::cart_cross_sell_products:ratio + + + image-height + Magento_Catalog::cart_cross_sell_products:height + + + + + + image-sizing + + + image-type + Magento_Catalog::gift_messages_checkout_thumbnail:type + + + image-width + Magento_Catalog::gift_messages_checkout_thumbnail:width + + + image-ratio + Magento_Catalog::gift_messages_checkout_thumbnail:ratio + + + image-height + Magento_Catalog::gift_messages_checkout_thumbnail:height + + + + + + image-sizing + + + image-type + Magento_Catalog::gift_messages_checkout_small_image:type + + + image-width + Magento_Catalog::gift_messages_checkout_small_image:width + + + image-ratio + Magento_Catalog::gift_messages_checkout_small_image:ratio + + + image-height + Magento_Catalog::gift_messages_checkout_small_image:height + + + + + + image-sizing + + + image-type + Magento_Catalog::mini_cart_product_thumbnail:type + + + image-width + Magento_Catalog::mini_cart_product_thumbnail:width + + + image-ratio + Magento_Catalog::mini_cart_product_thumbnail:ratio + + + image-height + Magento_Catalog::mini_cart_product_thumbnail:height + + + + + + image-sizing + + + image-type + Magento_Catalog::new_products_images_only_widget:type + + + image-width + Magento_Catalog::new_products_images_only_widget:width + + + image-ratio + Magento_Catalog::new_products_images_only_widget:ratio + + + image-height + Magento_Catalog::new_products_images_only_widget:height + + + + + + image-sizing + + + image-type + Magento_Catalog::cart_page_product_thumbnail:type + + + image-width + Magento_Catalog::cart_page_product_thumbnail:width + + + image-ratio + Magento_Catalog::cart_page_product_thumbnail:ratio + + + image-height + Magento_Catalog::cart_page_product_thumbnail:height + + + + + + image-sizing + + + image-type + Magento_Catalog::product_stock_alert_email_product_image:type + + + image-width + Magento_Catalog::product_stock_alert_email_product_image:width + + + image-ratio + Magento_Catalog::product_stock_alert_email_product_image:ratio + + + image-height + Magento_Catalog::product_stock_alert_email_product_image:height + + + + diff --git a/app/design/frontend/magento_plushe/Magento_DesignEditor/controls/quick_styles.xml b/app/design/frontend/magento_plushe/Magento_DesignEditor/controls/quick_styles.xml new file mode 100644 index 0000000000000..d3956d3d84927 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_DesignEditor/controls/quick_styles.xml @@ -0,0 +1,1118 @@ + + + + + logo + + + font + + + font-picker + + font-family + + + + + + + + + + + + + + + + + + + Magento_DesignEditor::store-name:font-picker + + + color-picker + + color + Magento_DesignEditor::store-name:color-picker + + + + + logo-uploader + + + Magento_DesignEditor::store-name:logo-uploader + + + + + background + + + color-picker + + background-color + Magento_DesignEditor::header-background:color-picker + + + background-uploader + + + image-uploader + + background-image + Magento_DesignEditor::header-background:image-uploader + + + checkbox + + background-repeat + + + + + + + + Magento_DesignEditor::header-background:tile + + + + + + + + color-picker + ul > .level-top > .submenu, + .navigation > ul > .level-top.more > .submenu > ul, + .level-top.more.hover:after, + .switcher .options > ul + ]]> + background-color + Magento_DesignEditor::menu-background + + + color-picker + + .navigation > ul > .level-top > .submenu, + .switcher .options > ul + + border-color + Magento_DesignEditor::menu-stroke + + + color-picker + ul > .level-top > .submenu a, + .navigation > ul > .level-top > .submenu a span + ]]> + color + Magento_DesignEditor::menu-links + + + color-picker + ul > .level-top > .submenu a:hover, + .navigation > ul > .level-top > .submenu a:hover span + ]]> + color + Magento_DesignEditor::menu-links-hover + + + + color-picker + ul > .level-top > a, + .navigation > ul > .level-top > a > span, + .action.showcart, + .header > .content .links a, + .switcher .options > ul a, + .action.switch + ]]> + color + Magento_DesignEditor::header-links + + + color-picker + ul > .level-top > a:hover, + .navigation > ul > .level-top > a:hover > span, + .navigation > ul > .level-top > a:active span, + .navigation > ul > .level-top > a:focus span, + .navigation > ul > .level-top.hover:hover > a span, + .navigation > ul > .level-top.hover.parent.hover > a span, + .navigation > ul > .level-top.hover.parent > a span, + .action.showcart:hover, + .action.showcart:active, + .action.showcart:focus, + .action.showcart.active, + .header > .content .links a:hover, + .switcher .options > ul a:hover, + .action.switch:focus, + .action.switch:hover, + .action.switch.active + ]]> + color + Magento_DesignEditor::header-links-hover + + + + color-picker + + .block.search input, + .block.search .action.search + + background-color + Magento_DesignEditor::search-field + + + color-picker + + .block.search input, + .block.search .action.search span, + .block.search input[type="password"]::-webkit-input-placeholder, + .block.search input[type="text"]::-webkit-input-placeholder + + color + Magento_DesignEditor::search-field-text + + + color-picker + + .block.search input, + .block.search .action.search + + border-color + Magento_DesignEditor::search-field-stroke + + + + + background + + + color-picker + .item.title:not(.disabled) > .switch:active, + .product.data > .item.title:not(.disabled) > .switch:focus, + .product.data > .item.title:not(.disabled) > .switch:hover, + .product.data > .item.title.active > .switch, + .footer + ]]> + background-color + Magento_DesignEditor::page-background:color-picker + + + background-uploader + + + image-uploader + + background-image + Magento_DesignEditor::page-background:image-uploader + + + checkbox + + background-repeat + + + + + + + + Magento_DesignEditor::page-background:tile + + + + + + + + color-picker + .opc .section > .step, + .opc.wrapper > .opc .section.active > .step-title, + .items.data tbody:nth-child(even) tr, + .cart.summary, + .minicart.wrapper .block.minicart, + .prices.tier, + .form.send.friend .fieldset, + .form.address.edit .fieldset, + .form.edit.account .fieldset, + .form.search.advanced, + .form.orders.search, + .form.contact, + .form.password.forget .fieldset, + .form.create.account .fieldset, + .form.wishlist.share .fieldset, + .block.dashboard:not(.welcome):not(.orders) .content, + .block.reviews.list .item.review:nth-child(odd), + .fieldset.bundle.options > .field, + .block.bundle.summary, + .data.table.reviews tbody tr:nth-child(even) td, + .data.table.wishlist tbody tr:nth-child(even), + .data.table.tags tbody tr:nth-child(even) td, + .data.comparison tr:nth-child(odd) .cell.attribute + ]]> + background-color + Magento_DesignEditor::form-background + + + + color-picker + .field .addon .addbefore, .fieldset > .field .addon .addafter, .product.main.info .product.options.wrapper .field .addon .addbefore, .product.main.info .product.options.wrapper .field .addon .addafter, .form.password.forget .fieldset > .field .addon .addbefore, .form.create.account .fieldset > .field .addon .addbefore, .form.password.forget .fieldset > .field .addon .addafter, .form.create.account .fieldset > .field .addon .addafter, .block.add.review .fieldset > .field:not(.ratings) .addon .addbefore, .block.add.review .fieldset > .field:not(.ratings) .addon .addafter]]> + border-color + Magento_DesignEditor::form-field-stroke + + + color-picker + + input[type="password"]:focus, + input[type="text"]:focus, + select:focus, + textarea:focus + + border-color + Magento_DesignEditor::form-field-stroke-clicked + + + color-picker + .opc .section > .step:before, + .step.login.wrapper .block.guest:before, + .order.data.items tfoot tr:first-child td, + .items.data .item.actions td:before, + .cart.summary .summary.title, + .cart.summary .block, + .data-table td, + + .data.comparison .cell.product.info, + .data.comparison .addto.links, + .data.comparison .cell.label, + .data.comparison .cell.label.product, + .data.comparison .cell.label, + .data.comparison td:last-child, + + .block.widget.viewed, + .block.crosssell, + .block.upsell, + .block.related, + .block.widget.viewed .products.list .item.product .addto.links, + .block.crosssell .products.list .item.product .addto.links, + .block.upsell .products.list .item.product .addto.links, + .block.related .products.list .item.product .addto.links, + .product.info.detailed + .block.upsell, + .product.info.detailed + .block.related, + .toolbar.alternative .pages, + .toolbar.alternative .amount, + .toolbar.alternative .limiter, + .toolbar .options, + .product.info.main .page.title.product + .price-box, + .product.info.main .product.addto.links, + .block.bundle.summary > .title, + .block.bundle.summary .photo, + .block.bundle.summary .box.tocart, + .block.bundle.summary .subtitle, + .product.photo.thumbs .item.thumb .active img, + + .login.container .block.new:before, + .block.filter .filtered .item, + .block.add.review .fieldset > .legend, + .data.table.tags tbody td, + .data.table.reviews tbody td + ]]> + border-color + Magento_DesignEditor::image-stroke-keylines + + + + + + color-picker + .menu a:hover + color + Magento_DesignEditor::radio-checkbox-icon + + + color-picker + .menu a:hover + color + Magento_DesignEditor::radio-checkbox-background + + + color-picker + .menu a:hover + color + Magento_DesignEditor::radio-checkbox-stroke + + + + color-picker + + color + Magento_DesignEditor::button-text + + + color-picker + + background-color + Magento_DesignEditor::button-background + + + color-picker + + background-color + Magento_DesignEditor::button-hover + + + color-picker + + color + Magento_DesignEditor::icons + + + color-picker + + color + Magento_DesignEditor::icons-hover + + + + + color-picker + *:first-child:before]]> + color + Magento_DesignEditor::error-icon + + + color-picker + + background-color + Magento_DesignEditor::error-box + + + + color-picker + *:first-child:before]]> + color + Magento_DesignEditor::success-icon + + + color-picker + + background-color + Magento_DesignEditor::success-box + + + + color-picker + *:first-child:before, + .note-msg > *:first-child:before + ]]> + color + Magento_DesignEditor::notice-icon + + + color-picker + + background-color + Magento_DesignEditor::notice-box + + + + font + + + font-picker + + font-family + + + + + + + + + + + + + + + + + + + Magento_DesignEditor::banner-text:font-picker + + + color-picker + + color + Magento_DesignEditor::banner-text:color-picker + + + + + + font + + + font-picker + ul > .level-top > a, + .action.showcart .qty, + .switcher strong, + .product.name, + .toolbar .limiter select, + .toolbar .sorter select, + .navigation > ul > .level-top > .submenu > ul .level1 > a + ]]> + font-family + + + + + + + + + + + + + + + + + + + Magento_DesignEditor::menu:font-picker + + + color-picker + ul > .level-top > a, + .action.showcart .qty, + .switcher strong, + .product.name, + .toolbar .limiter select, + .toolbar .sorter select + ]]> + color + Magento_DesignEditor::menu:color-picker + + + + + font + + + font-picker + .opc .section > .step-title h2, + .column.main .block > .title + ]]> + font-family + + + + + + + + + + + + + + + + + + + Magento_DesignEditor::page-headings:font-picker + + + color-picker + .opc .section > .step-title h2, + .column.main .block > .title + ]]> + color + Magento_DesignEditor::page-headings:color-picker + + + + + + font + + + font-picker + .legend, + .column.main .block > .title + ]]> + font-family + + + + + + + + + + + + + + + + + + + Magento_DesignEditor::body-text:font-picker + + + color-picker + .legend, + .column.main .block > .title + ]]> + color + Magento_DesignEditor::body-text:color-picker + + + + + + font + + + font-picker + + font-family + + + + + + + + + + + + + + + + + + + Magento_DesignEditor::buttons:font-picker + + + color-picker + + color + Magento_DesignEditor::buttons:color-picker + + + + + + color-picker + span, + .products.wrapper.grid .products.list .secondary .action > span, + .filter a + ]]> + color + Magento_DesignEditor::text-links + + + color-picker + span, + .products.wrapper.grid .products.list .secondary .action:hover > span, + .filter a:hover + ]]> + color + Magento_DesignEditor::text-links-hover + + + + color-picker + + color + Magento_DesignEditor::small-links + + + color-picker + + color + Magento_DesignEditor::small-links-hover + + diff --git a/app/design/frontend/magento_plushe/Magento_Directory/currency.phtml b/app/design/frontend/magento_plushe/Magento_Directory/currency.phtml new file mode 100644 index 0000000000000..74171ad140c58 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Directory/currency.phtml @@ -0,0 +1,54 @@ + + +getCurrencyCount() > 1): ?> +getCurrencies(); ?> +getCurrentCurrencyCode(); ?> +
    + +
    + + escapeHtml($currentCurrencyCode) ?> - escapeHtml($currencies[$currentCurrencyCode]) ?> + + +
      + $_name): ?> + +
    • + - +
    • + + +
    +
    +
    + diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/TemplateEngine/_files/simple.twig b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalog_category_view.xml similarity index 90% rename from dev/tests/integration/testsuite/Magento/Core/Model/TemplateEngine/_files/simple.twig rename to app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalog_category_view.xml index d2c6608ac1f9c..6c60196129d6c 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/TemplateEngine/_files/simple.twig +++ b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalog_category_view.xml @@ -1,4 +1,5 @@ -{# + + + diff --git a/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalogsearch_advanced_index.xml b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalogsearch_advanced_index.xml new file mode 100644 index 0000000000000..6c60196129d6c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalogsearch_advanced_index.xml @@ -0,0 +1,26 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalogsearch_advanced_result.xml b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalogsearch_advanced_result.xml new file mode 100644 index 0000000000000..6c60196129d6c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalogsearch_advanced_result.xml @@ -0,0 +1,26 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalogsearch_result_index.xml b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalogsearch_result_index.xml new file mode 100644 index 0000000000000..6c60196129d6c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/catalogsearch_result_index.xml @@ -0,0 +1,26 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Directory/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/default.xml new file mode 100644 index 0000000000000..7eae7a3f7e9c4 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Directory/layout/override/default.xml @@ -0,0 +1,33 @@ + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/catalog/product/links.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/catalog/product/links.phtml new file mode 100644 index 0000000000000..d494ef4bb92af --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/catalog/product/links.phtml @@ -0,0 +1,68 @@ + + +getLinksPurchasedSeparately(); ?> +getProduct()->isSaleable() && $this->hasLinks()):?> + getLinks(); ?> + getLinkSelectionRequired(); ?> +
    + + + + + +
    + + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/catalog/product/samples.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/catalog/product/samples.phtml new file mode 100644 index 0000000000000..a130635232b5b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/catalog/product/samples.phtml @@ -0,0 +1,44 @@ + + +hasSamples()): ?> +
    +
    getSamplesTitle() ?>
    + getSamples() ?> + +
    + getIsOpenInNewWindow()?'onclick="this.target=\'_blank\'"':''; ?>>escapeHtml($_sample->getTitle()) ?> +
    + +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/catalog/product/type.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/catalog/product/type.phtml new file mode 100644 index 0000000000000..36f5df0a2cfe2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/catalog/product/type.phtml @@ -0,0 +1,41 @@ + +getProduct() ?> + +getIsSalable()): ?> +

    + +

    + +getChildHtml('product_type_data_extra') ?> +getPriceHtml($_product) ?> +getChildHtml('samples') ?> diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/cart/item/default.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/cart/item/default.phtml new file mode 100644 index 0000000000000..3e5638117de0f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/cart/item/default.phtml @@ -0,0 +1,305 @@ + +getItem(); +$isVisibleProduct = $_item->getProduct()->isVisibleInSiteVisibility(); +$canApplyMsrp = $this->helper('Magento\Catalog\Helper\Data')->canApplyMsrp($_item->getProduct(), \Magento\Catalog\Model\Product\Attribute\Source\Msrp\Type::TYPE_BEFORE_ORDER_CONFIRM); +?> +getChildHtml('item_extra') ?> + + + + hasProductUrl()):?> + getLayout()->createBlock('Magento\Catalog\Block\Product\Image')->init($_item->getProduct(), 'cart_page_product_thumbnail')->toHtml(); ?> + hasProductUrl()):?> +
    + + hasProductUrl()):?> + escapeHtml($this->getProductName()) ?> + + escapeHtml($this->getProductName()) ?> + + + getOptionList()):?> +
    + + getFormatedOptionValue($_option) ?> +
    escapeHtml($_option['label']) ?>
    + class="truncated" data-mage-init="{truncateOptions:[]}"> + +
    +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    +
    + + + +
    + + + getLinks()): ?> +
    +
    getLinksTitle() ?>
    + +
    escapeHtml($link->getTitle()) ?>
    + +
    + + getChildHtml('item_extra'); ?> + + getMessages()): ?> + +

    * escapeHtml($message['text']) ?>

    + + + getProductAdditionalInformationBlock(); ?> + + setItem($_item)->toHtml() ?> + +
    + + + + helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> colspan="2"> + + + getId(); ?> + + + + + + + helper('Magento\Tax\Helper\Data')->displayCartPriceExclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getCalculationPrice()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + : helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?> +
    + + + + + + helper('Magento\Tax\Helper\Data')->displayCartPriceInclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($_item); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + : helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?> +
    + + + + + + +
    + +
    + + helper('Magento\Tax\Helper\Data')->displayCartPriceExclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()) && !$_item->getNoSubtotal()): ?> + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + + + + + + + -- + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getRowTotal()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + : helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?> +
    + + + + + helper('Magento\Tax\Helper\Data')->displayCartPriceInclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()) && !$_item->getNoSubtotal()): ?> + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($_item); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + + + + + + + -- + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?> + + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + : helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?> +
    + + + + + + + +
    + + helper('Magento\Wishlist\Helper\Data')->isAllowInCart()) : ?> + + + + + + + + + + + + +
    + + + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/multishipping/item/default.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/multishipping/item/default.phtml new file mode 100644 index 0000000000000..ebf63dc44e18f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/multishipping/item/default.phtml @@ -0,0 +1,57 @@ + +
    + escapeHtml($this->getProductName()) ?> + getOptionList()): ?> +
    + + getFormatedOptionValue($_option) ?> +
    escapeHtml($_option['label']) ?>
    + class="truncated" data-mage-init="{truncateOptions:[]}"> + +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    + + + +
    + + + getLinks()): ?> +
    +
    getLinksTitle() ?>
    + +
    escapeHtml($link->getTitle()); ?>
    + +
    + + + getProductAdditionalInformationBlock()): ?> + setItem($this->getItem())->toHtml() ?> + +
    diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/onepage/review/item.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/onepage/review/item.phtml new file mode 100644 index 0000000000000..dbd0f629fc26a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/onepage/review/item.phtml @@ -0,0 +1,247 @@ + +getItem()?> + + escapeHtml($this->getProductName()) ?> + getOptionList()):?> +
    + + getFormatedOptionValue($_option) ?> +
    escapeHtml($_option['label']) ?>
    + class="truncated" data-mage-init="{truncateOptions:[]}"> + +
    +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    +
    + + + +
    + + getLinks()): ?> +
    +
    getLinksTitle() ?>
    + +
    escapeHtml($link->getTitle()) ?>
    + +
    + + + getProductAdditionalInformationBlock()):?> + setItem($_item)->toHtml() ?> + + + helper('Magento\Tax\Helper\Data')->displayCartPriceExclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getCalculationPrice()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + :
    helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
    +
    + + + + + helper('Magento\Tax\Helper\Data')->displayCartPriceInclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($_item); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + :
    helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?>
    +
    + + + + + getQty() ?> + helper('Magento\Tax\Helper\Data')->displayCartPriceExclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getRowTotal()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + :
    helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?>
    +
    + + + + + helper('Magento\Tax\Helper\Data')->displayCartPriceInclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($_item); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + :
    helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?>
    +
    + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/onepage/review/item_down.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/onepage/review/item_down.phtml new file mode 100644 index 0000000000000..cdbdcffdae09f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/checkout/onepage/review/item_down.phtml @@ -0,0 +1,246 @@ + +getItem()?> + +

    escapeHtml($this->getProductName()) ?>

    + + getOptionList()):?> +
    + + getFormatedOptionValue($_option) ?> +
    escapeHtml($_option['label']) ?>
    + class="truncated" data-mage-init="{truncateOptions:[]}"> + +
    +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    +
    + + + +
    + + getLinks()): ?> +
    +
    getLinksTitle() ?>
    + +
    escapeHtml($link->getTitle()) ?>
    + +
    + + + + helper('Magento\Tax\Helper\Data')->displayCartPriceExclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + +
    + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getCalculationPrice()) ?> + + +
    + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + :
    helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
    +
    + + + + + helper('Magento\Tax\Helper\Data')->displayCartPriceInclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($_item); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + +
    + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?> + + +
    + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + :
    helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?>
    +
    + + + + + getQty() ?> + helper('Magento\Tax\Helper\Data')->displayCartPriceExclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + +
    + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getRowTotal()) ?> + + +
    + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + :
    helper('Magento\Checkout\Helper\Data')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?>
    +
    + + + + + helper('Magento\Tax\Helper\Data')->displayCartPriceInclTax() || $this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($_item); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + +
    + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?> + + helper('Magento\Checkout\Helper\Data')->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?> + + +
    + + + helper('Magento\Weee\Helper\Data')->getApplied($_item)): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?> +
    + :
    helper('Magento\Checkout\Helper\Data')->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?>
    +
    + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/customer/products/list.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/customer/products/list.phtml new file mode 100644 index 0000000000000..7f2054f740900 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/customer/products/list.phtml @@ -0,0 +1,75 @@ + + +getItems(); ?> +
    + getChildHtml('pager'); ?> +
    + + + + + + + + + + + + + + + + + + + + + + +
    + + getPurchased()->getOrderIncrementId() ?> + + formatDate($_item->getPurchased()->getCreatedAt()) ?> + escapeHtml($_item->getPurchased()->getProductName()) ?> - getIsOpenInNewWindow()?'onclick="this.target=\'_blank\'"':''; ?>>escapeHtml($_item->getLinkTitle()) ?> + getStatus())) ?>getRemainingDownloads($_item) ?>
    + +

    + +
    + getChildHtml('pager'); ?> +
    + +
    +
    + +
    +
    \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/layout/override/catalog_product_view_type_downloadable.xml b/app/design/frontend/magento_plushe/Magento_Downloadable/layout/override/catalog_product_view_type_downloadable.xml new file mode 100644 index 0000000000000..d1f574903d6a2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/layout/override/catalog_product_view_type_downloadable.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/layout/override/checkout_cart_index.xml b/app/design/frontend/magento_plushe/Magento_Downloadable/layout/override/checkout_cart_index.xml new file mode 100644 index 0000000000000..b8f5e1921341c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/layout/override/checkout_cart_index.xml @@ -0,0 +1,30 @@ + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/sales/order/creditmemo/items/renderer/downloadable.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/sales/order/creditmemo/items/renderer/downloadable.phtml new file mode 100644 index 0000000000000..65f32a6e195ca --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/sales/order/creditmemo/items/renderer/downloadable.phtml @@ -0,0 +1,315 @@ + +getItem() ?> +getItem()->getOrderItem()->getOrder() ?> + + + escapeHtml($_item->getName()) ?> + getItemOptions()): ?> +
    + +
    escapeHtml($_option['label']) ?>
    + getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + +
    +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    +
    + + + +
    escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) ) ?>
    + + +
    + + + + getLinks()): ?> +
    +
    getLinksTitle() ?>
    + getPurchasedItems() as $link): ?> +
    escapeHtml($link->getLinkTitle()); ?>
    + +
    + + + + getProductAdditionalInformationBlock(); ?> + + setItem($_item->getOrderItem())->toHtml(); ?> + + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $_item->getOrderItem()) && $_item->getGiftMessageId()): ?> + + + + escapeHtml($this->helper('Magento\Core\Helper\String')->splitInjection($this->getSku())) ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getPrice()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxDisposition()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?>
    +
    + + +
    + + + getQty()*1 ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getRowTotal()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxRowDisposition()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?>
    +
    + + + + + +
    + + + formatPrice(-$_item->getDiscountAmount()) ?> + + formatPrice($_item->getRowTotal()-$_item->getDiscountAmount()+$_item->getTaxAmount()+$_item->getWeeeTaxAppliedRowAmount()) ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/sales/order/invoice/items/renderer/downloadable.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/sales/order/invoice/items/renderer/downloadable.phtml new file mode 100644 index 0000000000000..cc6e3bad1652c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/sales/order/invoice/items/renderer/downloadable.phtml @@ -0,0 +1,305 @@ + +getItem() ?> +getItem()->getOrderItem()->getOrder() ?> + + + escapeHtml($_item->getName()) ?> + getItemOptions()): ?> +
    + +
    escapeHtml($_option['label']) ?>
    + getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + + +
    +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    +
    + + + +
    escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) ) ?>
    + + +
    + + + getLinks()): ?> +
    +
    getLinksTitle() ?>
    + getPurchasedItems() as $link): ?> +
    escapeHtml($link->getLinkTitle()); ?>
    + +
    + + + getProductAdditionalInformationBlock(); ?> + + setItem($_item->getOrderItem())->toHtml(); ?> + + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $_item->getOrderItem()) && $_item->getGiftMessageId()): ?> + + + + escapeHtml($this->helper('Magento\Core\Helper\String')->splitInjection($this->getSku())) ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getPrice()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxDisposition()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?>
    +
    + + +
    + + + + getQty()*1 ?> + + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getRowTotal()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxRowDisposition()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?>
    +
    + + + +
    + + + diff --git a/app/design/frontend/magento_plushe/Magento_Downloadable/sales/order/items/renderer/downloadable.phtml b/app/design/frontend/magento_plushe/Magento_Downloadable/sales/order/items/renderer/downloadable.phtml new file mode 100644 index 0000000000000..5b73ec009c1d6 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Downloadable/sales/order/items/renderer/downloadable.phtml @@ -0,0 +1,327 @@ + +getItem() ?> + + + escapeHtml($_item->getName()) ?> + getItemOptions()): ?> +
    + +
    escapeHtml($_option['label']) ?>
    + getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + + +
    +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    +
    + + + +
    + escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) )) ?> +
    + + +
    + + + getLinks()): ?> +
    +
    getLinksTitle() ?>
    + getPurchasedItems() as $link): ?> +
    escapeHtml($link->getLinkTitle()); ?>
    + +
    + + + getProductAdditionalInformationBlock(); ?> + + setItem($_item)->toHtml(); ?> + + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $_item) && $_item->getGiftMessageId()): ?> + + + + + + escapeHtml($this->helper('Magento\Core\Helper\String')->splitInjection($this->getSku())) ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getPrice()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxDisposition()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?>
    +
    + + +
    + + + + + getItem()->getQtyOrdered() > 0): ?> + : getItem()->getQtyOrdered()*1 ?>
    + + getItem()->getQtyShipped() > 0): ?> + : getItem()->getQtyShipped()*1 ?>
    + + getItem()->getQtyCanceled() > 0): ?> + : getItem()->getQtyCanceled()*1 ?>
    + + getItem()->getQtyRefunded() > 0): ?> + : getItem()->getQtyRefunded()*1 ?>
    + +
    + + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getRowTotal()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxRowDisposition()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?>
    +
    + + + +
    + + + + diff --git a/app/design/frontend/magento_plushe/Magento_GiftMessage/inline.phtml b/app/design/frontend/magento_plushe/Magento_GiftMessage/inline.phtml new file mode 100644 index 0000000000000..dfb98bdc890a4 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_GiftMessage/inline.phtml @@ -0,0 +1,301 @@ + + +getDontDisplayContainer()): ?> + + + +getType()): ?> + +
    +
    + +
    + getItemsHasMesssages() || $this->getEntityHasMessage()): ?> checked="checked" class="checkbox" /> + +
    + +
    +
    +
    +
    + getEntityHasMessage()): ?> checked="checked" class="checkbox" /> + +
    +
    + +
    +
    + + isMessagesAvailable()): ?> + +
    +
    + +

    +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    + +
    + +
    + isItemsAvailable()): ?> +
    +
    +
    + getItemsHasMesssages()): ?> checked="checked" class="checkbox" /> + +
    +
    + +
    +
      + getItems() as $_index=>$_item): ?> + getProduct() ?> +
    1. + +

      countItems()) ?>

      +
      +
      + <?php echo $this->escapeHtml($_product->getName()) ?> +
      + escapeHtml($_product->getName()) ?> +
      +
      +
      + isItemMessagesAvailable($_item)): ?> + +
      +
      +

      + +
      + +
      + +
      +
      +
      + +
      + +
      +
      +
      + +
      + +
      +
      +
      +
      + +
      +
    2. + +
    +
    + + +
    +
    +
    + + + + + + +
    +
    + +
    + getItemsHasMesssages() || $this->getEntityHasMessage()): ?> checked="checked" class="checkbox" /> + +
    + +
    +
    +
    +
    + getEntityHasMessage()): ?> checked="checked" class="checkbox" /> + +
    +
    + +
    +
    + + isMessagesAvailable()): ?> + + +
    +
    +

    + +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    +
    + +
    + + isItemsAvailable()): ?> +
    +
    +
    + getItemsHasMesssages()): ?> checked="checked" class="checkbox" /> + +
    +
    + +
    +
      + getItems() as $_index=>$_item): ?> + getProduct() ?> +
    1. +

      countItems()) ?>

      +
      +
      + <?php echo $this->escapeHtml($_product->getName()) ?> +
      + escapeHtml($_product->getName()) ?> +
      +
      +
      + + + + isItemMessagesAvailable($_item)): ?> + + +
      +
      +

      + + +
      + +
      + +
      +
      +
      + +
      + +
      +
      +
      + +
      + +
      +
      +
      +
      + +
      +
    2. + +
    +
    + +
    +
    +
    + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Newsletter/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Newsletter/layout/override/default.xml new file mode 100644 index 0000000000000..fcd852ac5f705 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Newsletter/layout/override/default.xml @@ -0,0 +1,30 @@ + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Newsletter/layout/override/newsletter_manage_index.xml b/app/design/frontend/magento_plushe/Magento_Newsletter/layout/override/newsletter_manage_index.xml new file mode 100644 index 0000000000000..cbcc9786b9ca2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Newsletter/layout/override/newsletter_manage_index.xml @@ -0,0 +1,33 @@ + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Newsletter/subscribe.phtml b/app/design/frontend/magento_plushe/Magento_Newsletter/subscribe.phtml new file mode 100644 index 0000000000000..c3e4533928135 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Newsletter/subscribe.phtml @@ -0,0 +1,62 @@ + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/1column.phtml b/app/design/frontend/magento_plushe/Magento_Page/1column.phtml new file mode 100644 index 0000000000000..11954afe5a71b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/1column.phtml @@ -0,0 +1,60 @@ + +getBodyClass() ? $this->getBodyClass() : ''; +?> + + + + + + + getChildHtml('head') ?> + + + getChildHtml('after_body_start') ?> +
    + getChildHtml('global_notices') ?> + getChildHtml('header-container') ?> + getChildHtml('page_top') ?> +
    + getChildHtml('columns_top') ?> +
    + getChildHtml('main') ?> +
    +
    + getChildHtml('page_bottom') ?> + + getChildHtml('footer') ?> + + getChildHtml('before_body_end') ?> +
    + getAbsoluteFooter() ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/2columns-left.phtml b/app/design/frontend/magento_plushe/Magento_Page/2columns-left.phtml new file mode 100644 index 0000000000000..1f1cdf3674f72 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/2columns-left.phtml @@ -0,0 +1,66 @@ + +getBodyClass() ? $this->getBodyClass() : ''; +?> + + + + + + + getChildHtml('head') ?> + + + getChildHtml('after_body_start') ?> +
    + getChildHtml('global_notices') ?> + getChildHtml('header-container') ?> + getChildHtml('page_top') ?> +
    + getChildHtml('columns_top') ?> +
    + getChildHtml('main'); + // Inside of to avoid spaces between tags + echo ''; + ?> +
    +
    + getChildHtml('page_bottom') ?> + + getChildHtml('footer') ?> + + getChildHtml('before_body_end') ?> +
    + getAbsoluteFooter() ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/2columns-right.phtml b/app/design/frontend/magento_plushe/Magento_Page/2columns-right.phtml new file mode 100644 index 0000000000000..59de269895276 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/2columns-right.phtml @@ -0,0 +1,66 @@ + +getBodyClass() ? $this->getBodyClass() : ''; +?> + + + + + + + getChildHtml('head') ?> + + + getChildHtml('after_body_start') ?> +
    + getChildHtml('global_notices') ?> + getChildHtml('header-container') ?> + getChildHtml('page_top') ?> +
    + getChildHtml('columns_top') ?> +
    + getChildHtml('main'); + // Inside of to avoid spaces between tags + echo ''; + ?> +
    +
    + getChildHtml('page_bottom') ?> + + getChildHtml('footer') ?> + + getChildHtml('before_body_end') ?> +
    + getAbsoluteFooter() ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/3columns.phtml b/app/design/frontend/magento_plushe/Magento_Page/3columns.phtml new file mode 100644 index 0000000000000..b87d7e01b3e5b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/3columns.phtml @@ -0,0 +1,69 @@ + +getBodyClass() ? $this->getBodyClass() : ''; +?> + + + + + + + getChildHtml('head') ?> + + + getChildHtml('after_body_start') ?> +
    + getChildHtml('global_notices') ?> + getChildHtml('header-container') ?> + getChildHtml('page_top') ?> +
    + getChildHtml('columns_top') ?> +
    + getChildHtml('main'); + // Inside of to avoid spaces between tags + echo ''; + echo ''; + ?> +
    +
    + getChildHtml('page_bottom') ?> + + getChildHtml('footer') ?> + + getChildHtml('before_body_end') ?> +
    + getAbsoluteFooter() ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/blank.phtml b/app/design/frontend/magento_plushe/Magento_Page/blank.phtml new file mode 100644 index 0000000000000..947fc6c18a9df --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/blank.phtml @@ -0,0 +1,31 @@ + + +getChildHtml('content'); ?> diff --git a/app/design/frontend/magento_plushe/Magento_Page/empty.phtml b/app/design/frontend/magento_plushe/Magento_Page/empty.phtml new file mode 100644 index 0000000000000..b61be5ca1b9df --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/empty.phtml @@ -0,0 +1,55 @@ + +getBodyClass() ? $this->getBodyClass() : ''; +?> + + + + + + + getChildHtml('head') ?> + + + getChildHtml('after_body_start') ?> +
    + getChildHtml('global_notices') ?> +
    + getChildHtml('columns_top') ?> +
    + getChildHtml('main') ?> +
    +
    + getChildHtml('page_bottom') ?> + getChildHtml('before_body_end') ?> +
    + getAbsoluteFooter() ?> + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Page/html/block.phtml b/app/design/frontend/magento_plushe/Magento_Page/html/block.phtml new file mode 100644 index 0000000000000..e0d3181c353d7 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/html/block.phtml @@ -0,0 +1,31 @@ + +
    +
    getBlockTitle(); ?>
    +
    + getChildHtml(); ?> +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Page/html/breadcrumbs.phtml b/app/design/frontend/magento_plushe/Magento_Page/html/breadcrumbs.phtml new file mode 100644 index 0000000000000..5bfd676819042 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/html/breadcrumbs.phtml @@ -0,0 +1,42 @@ + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/html/copyright.phtml b/app/design/frontend/magento_plushe/Magento_Page/html/copyright.phtml new file mode 100644 index 0000000000000..614ecf30ea44e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/html/copyright.phtml @@ -0,0 +1,28 @@ + + + getCopyright() ?> + diff --git a/app/design/frontend/magento_plushe/Magento_Page/html/head.phtml b/app/design/frontend/magento_plushe/Magento_Page/html/head.phtml new file mode 100644 index 0000000000000..9254ba1971dab --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/html/head.phtml @@ -0,0 +1,36 @@ + + +<?php echo $this->getTitle() ?> + + + + + +getCssJsHtml() ?> +getChildHtml() ?> +getIncludes() ?> +helper('Magento\Core\Helper\Js')->getTranslatorScript() ?> diff --git a/app/design/frontend/magento_plushe/Magento_Page/html/header.phtml b/app/design/frontend/magento_plushe/Magento_Page/html/header.phtml new file mode 100644 index 0000000000000..d7747717eee25 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/html/header.phtml @@ -0,0 +1,52 @@ + + +getShowPart()): + case 'logo': ?> + getThemeName() ? $this->getThemeName() : $this->getLogoAlt();?> + getIsHomePage()):?> + + + + + + + +

    getWelcome() ?>

    + + + + getChildHtml(); ?> + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/html/notices.phtml b/app/design/frontend/magento_plushe/Magento_Page/html/notices.phtml new file mode 100644 index 0000000000000..7814e18e1c7c8 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/html/notices.phtml @@ -0,0 +1,90 @@ + + +displayNoscriptNotice()): ?> + + +displayDemoNotice()): ?> +
    +

    +
    + + +helper('Magento\Core\Helper\Cookie')->isUserNotAllowSaveCookie()): ?> + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/html/pager.phtml b/app/design/frontend/magento_plushe/Magento_Page/html/pager.phtml new file mode 100644 index 0000000000000..689cd83158f3a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/html/pager.phtml @@ -0,0 +1,119 @@ + + +getCollection()->getSize()): ?> + + getUseContainer()): ?> +
    + + + getShowAmounts()): ?> +

    + getLastPageNum()>1): ?> + getFirstNum(), $this->getLastNum(), $this->getTotalNum()) ?> + getLastPageNum() == 1): ?> + getTotalNum()) ?> + + getTotalNum()) ?> + +

    + + + getShowPerPage()): ?> +
    + + + +
    + + + getLastPageNum()>1): ?> +
    + +
      + isFirstPage()): ?> +
    1. + getAnchorTextForPrevious() ? $this->getAnchorTextForPrevious() : '';?> + +
    2. + + + canShowFirst()): ?> +
    3. 1
    4. + + + canShowPreviousJump()): ?> +
    5. + + + getFramePages() as $_page): ?> + isPageCurrent($_page)): ?> +
    6. + +
    7. + + + + canShowNextJump()): ?> +
    8. + + + canShowLast()): ?> +
    9. getLastPageNum() ?>
    10. + + + isLastPage()): ?> +
    11. + getAnchorTextForNext() ? $this->getAnchorTextForNext() : '';?> + +
    12. + +
    +
    + + + getUseContainer()): ?> +
    + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/html/title.phtml b/app/design/frontend/magento_plushe/Magento_Page/html/title.phtml new file mode 100644 index 0000000000000..103a2c8d32fc3 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/html/title.phtml @@ -0,0 +1,42 @@ +getCssClass() ? ' ' . $this->getCssClass() : ''; +$prefix = $this->getPrefix() ? '' . $this->getPrefix() . '' : ''; +$suffix = $this->getSuffix() ? '' . $this->getSuffix() . '' : ''; +$title = ''; +if (trim($this->getPageTitle())) { + $title = $prefix . '' . $this->getPageTitle() . '' . $suffix; +} +?> + +
    +

    + getChildHtml(); ?> +
    + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Page/html/topmenu.phtml b/app/design/frontend/magento_plushe/Magento_Page/html/topmenu.phtml new file mode 100644 index 0000000000000..9c10e155293e4 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/html/topmenu.phtml @@ -0,0 +1,42 @@ + + +getColumnsLimit() ? : 0; ?> +getHtml('level-top','submenu', $columnsLimit) ?> + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/layout/default.xml b/app/design/frontend/magento_plushe/Magento_Page/layout/default.xml new file mode 100644 index 0000000000000..e686483e6ccb3 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/layout/default.xml @@ -0,0 +1,100 @@ + + + + + + plushe + + + + + + css/styles.css + + + + + js/matchMedia.js + + + + + js/head.js + + + + + js/jquery.dropdowns.js + + + + + js/tabs.js + + + + + js/navigation-menu.js + + + + + js/theme.js + + + + + js/selectivizr.js + + lt IE 9 + + + + + + + + links + + + + + + + links + + + + + links + + + + + 1 + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Page/layout/override/default.xml new file mode 100644 index 0000000000000..f005e0a0a0ab5 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/layout/override/default.xml @@ -0,0 +1,168 @@ + + + + + + + + + + + + + + + + logo + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + mage/calendar.css + + + + + jquery/jquery.js + + + + + mage/jquery-no-conflict.js + + + + + head.load.min.js + + + + + mage/mage.js + + + + + mage/decorate.js + + + + + mage/translate.js + + + + + mage/cookies.js + + + + + jquery/jquery-ui.js + + + + + jquery/jquery.tmpl.min.js + + + + + mage/bootstrap.js + + + + + Magento_Page::js/truncate.js + + + + + mage/common.js + + + + + mage/toggle.js + + + + + mage/popup-window.js + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/layout/override/print.xml b/app/design/frontend/magento_plushe/Magento_Page/layout/override/print.xml new file mode 100644 index 0000000000000..befe0f664c0a5 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/layout/override/print.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + css/print.css + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/link/current.phtml b/app/design/frontend/magento_plushe/Magento_Page/link/current.phtml new file mode 100644 index 0000000000000..d8e6268840b44 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/link/current.phtml @@ -0,0 +1,40 @@ + +isCurrent()):?> + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/page.phtml b/app/design/frontend/magento_plushe/Magento_Page/page.phtml new file mode 100644 index 0000000000000..8a1435696655e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/page.phtml @@ -0,0 +1,57 @@ + +getBodyClass() ? $this->getBodyClass() : ''; +?> + + + + + + + getChildHtml('head') ?> + + + getChildHtml('after_body_start') ?> +
    + getChildHtml('global_notices') ?> + getChildHtml('header-container') ?> + getChildHtml('page_top') ?> +
    + getChildHtml('page_main') ?> +
    + getChildHtml('page_bottom') ?> + + getChildHtml('footer') ?> + + getChildHtml('before_body_end') ?> +
    + getAbsoluteFooter() ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/popup.phtml b/app/design/frontend/magento_plushe/Magento_Page/popup.phtml new file mode 100644 index 0000000000000..816610ffdd643 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/popup.phtml @@ -0,0 +1,48 @@ + +getBodyClass() ? $this->getBodyClass() : ''; +?> + + + + + + + getChildHtml('head') ?> + + + getChildHtml('after_body_start') ?> +
    + getChildHtml('main') ?> +
    + getChildHtml('before_body_end') ?> + getAbsoluteFooter() ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/print.phtml b/app/design/frontend/magento_plushe/Magento_Page/print.phtml new file mode 100644 index 0000000000000..19e15f9c16602 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/print.phtml @@ -0,0 +1,57 @@ + + + + + +getChildHtml('head') ?> + + +getChildHtml('after_body_start') ?> +
    +
    + + getPrintLogoText()):?> +
    escapeHtml($this->getPrintLogoText())) ?>
    + +
    +
    + getChildHtml('content') ?> +
    +
    +
    + +
    +
    + getAbsoluteFooter() ?> +
    + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/switch/languages.phtml b/app/design/frontend/magento_plushe/Magento_Page/switch/languages.phtml new file mode 100644 index 0000000000000..3b6a76e6cb629 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/switch/languages.phtml @@ -0,0 +1,54 @@ + + + +getStores())>1): ?> +
    + +
    + + escapeHtml($this->getStoreName()) ?> + + + +
    +
    + + diff --git a/app/design/frontend/magento_plushe/Magento_Page/switch/stores.phtml b/app/design/frontend/magento_plushe/Magento_Page/switch/stores.phtml new file mode 100644 index 0000000000000..cb4d6d80c79df --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Page/switch/stores.phtml @@ -0,0 +1,59 @@ + + +getGroups())>1): ?> +
    + +
      + getGroups() as $_group): ?> + getId()==$this->getCurrentGroupId()) ? ' class="current"' : '' */ ?> + getId()==$this->getCurrentGroupId()): ?> +
    • escapeHtml($_group->getName()) ?>
    • + +
    • escapeHtml($_group->getName()) ?>
    • + + +
    +
    + + +getGroups())>1): ?> +
    + + +
    + diff --git a/app/design/frontend/magento_plushe/Magento_PageCache/layout/default.xml b/app/design/frontend/magento_plushe/Magento_PageCache/layout/default.xml new file mode 100644 index 0000000000000..f3514857ff87e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_PageCache/layout/default.xml @@ -0,0 +1,28 @@ + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Paypal/express/review.phtml b/app/design/frontend/magento_plushe/Magento_Paypal/express/review.phtml new file mode 100644 index 0000000000000..ed52fbe4f8b8b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Paypal/express/review.phtml @@ -0,0 +1,111 @@ +getChildBlock('billing')->setFieldNamePrefix('billing')->setHideEmailAddress(true); +$shippingAddress = $this->getShippingAddress(); +?> +
    +

    +
    +getMessagesBlock()->toHtml() ?> +
    +
    Please confirm your addresses
    + +
    + isCustomerLoggedIn()): ?> + + + +
    + +
    + + setShowAsShippingCheckbox(true)->toHtml(); ?> + + toHtml(); ?> + +
    + + +
    + +
    + getChildBlock('shipping')->setFieldNamePrefix('shipping')->setHideEmailAddress(true)->toHtml(); ?> +
    + +
    + +
    + getChildBlock('shipping_method')->toHtml(); ?> +
    + + +
    +
    + + +
    + +
    + getChildHtml('details') ?> +
    +
    + + getChildHtml('agreements'); ?> +
    + + + + +
    +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Paypal/express/review/address.phtml b/app/design/frontend/magento_plushe/Magento_Paypal/express/review/address.phtml new file mode 100644 index 0000000000000..2cf078fc7861d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Paypal/express/review/address.phtml @@ -0,0 +1,143 @@ + +getFieldNamePrefix();?> + + getLayout()->createBlock('Magento\Customer\Block\Widget\Name')->setObject($this->getAddress()->getFirstname() ? $this->getAddress() : $this->getQuote()->getCustomer())->setForceUseCustomerRequiredAttributes(!$this->isCustomerLoggedIn())->setFieldIdFormat($prefix . ':%s')->setFieldNameFormat($prefix . '[%s]')->toHtml() ?> + +
    + +
    + +
    +
    + + isCustomerLoggedIn() && !$this->getHideEmailAddress()): ?> + + + + helper('Magento\Customer\Helper\Address')->getAttributeValidationClass('street'); ?> +
    + +
    + + + helper('Magento\Customer\Helper\Address')->getStreetLines(); $_i <= $_n; $_i++): ?> +
    + +
    + +
    +
    + + helper('Magento\Customer\Helper\Address')->isVatAttributeVisible()) : ?> +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    + +
    + +
    + + +
    +
    + +
    + +
    + +
    +
    + +
    + +
    + getCountryHtmlSelect($prefix) ?> +
    +
    + +
    + +
    + +
    +
    + +
    + +
    + +
    +
    + + getChildHtml('form.additional.info'); ?> + getShowAsShippingCheckbox()): ?> +
    + getAddress()->getSameAsBilling()):?>checked="checked"/> + +
    + + + diff --git a/app/design/frontend/magento_plushe/Magento_Paypal/express/review/details.phtml b/app/design/frontend/magento_plushe/Magento_Paypal/express/review/details.phtml new file mode 100644 index 0000000000000..5170606775164 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Paypal/express/review/details.phtml @@ -0,0 +1,55 @@ + + + helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): $colspan = $rowspan = 2; else: $colspan = $rowspan = 1; endif; ?> + + + + + + + + helper('Magento\Tax\Helper\Data')->displayCartBothPrices()): ?> + + + + + + + + +getChildHtml('totals'); ?> + + getItems() as $_item): ?> + getItemHtml($_item) ?> + + +
    helper('Magento\Tax\Helper\Data')->getIncExcTaxLabel(false) ?>helper('Magento\Tax\Helper\Data')->getIncExcTaxLabel(true) ?>helper('Magento\Tax\Helper\Data')->getIncExcTaxLabel(false) ?>helper('Magento\Tax\Helper\Data')->getIncExcTaxLabel(true) ?>
    diff --git a/app/design/frontend/magento_plushe/Magento_Paypal/express/review/shipping/method.phtml b/app/design/frontend/magento_plushe/Magento_Paypal/express/review/shipping/method.phtml new file mode 100644 index 0000000000000..a3f9482b40a58 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Paypal/express/review/shipping/method.phtml @@ -0,0 +1,56 @@ + +
    + getCanEditShippingMethod() || !$this->getCurrentShippingRate()): ?> + getShippingRateGroups()): ?> + getCurrentShippingRate(); ?> + + +

    + + +

    renderShippingRateOption($this->getCurrentShippingRate()) ?>

    + +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Paypal/express/shortcut.phtml b/app/design/frontend/magento_plushe/Magento_Paypal/express/shortcut.phtml new file mode 100644 index 0000000000000..4f4a98cca3439 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Paypal/express/shortcut.phtml @@ -0,0 +1,70 @@ + + +isOrPositionBefore()) { +$labelPosition = ' before'; +} elseif ($this->isOrPositionAfter()) { +$labelPosition = ' after'; +} +?> + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Paypal/layout/override/catalog_product_view.xml b/app/design/frontend/magento_plushe/Magento_Paypal/layout/override/catalog_product_view.xml new file mode 100644 index 0000000000000..5f06f13a7ce67 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Paypal/layout/override/catalog_product_view.xml @@ -0,0 +1,42 @@ + + + + + + + + 1 + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Paypal/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Paypal/layout/override/default.xml new file mode 100644 index 0000000000000..78c6f1d1ccc40 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Paypal/layout/override/default.xml @@ -0,0 +1,33 @@ + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Persistent/layout/override/checkout_onepage_index.xml b/app/design/frontend/magento_plushe/Magento_Persistent/layout/override/checkout_onepage_index.xml new file mode 100644 index 0000000000000..1147945ddc759 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Persistent/layout/override/checkout_onepage_index.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Persistent/layout/override/customer_account_create.xml b/app/design/frontend/magento_plushe/Magento_Persistent/layout/override/customer_account_create.xml new file mode 100644 index 0000000000000..8ac15eae41557 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Persistent/layout/override/customer_account_create.xml @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Persistent/layout/override/customer_account_login.xml b/app/design/frontend/magento_plushe/Magento_Persistent/layout/override/customer_account_login.xml new file mode 100644 index 0000000000000..8ac15eae41557 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Persistent/layout/override/customer_account_login.xml @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Persistent/remember_me.phtml b/app/design/frontend/magento_plushe/Magento_Persistent/remember_me.phtml new file mode 100644 index 0000000000000..9ce5ee378a6d3 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Persistent/remember_me.phtml @@ -0,0 +1,41 @@ + + +
    + helper('Magento\Core\Helper\Data')->getRandomString(10); ?> + isRememberMeChecked()): ?> checked="checked" title="" /> + + +
    +helper('Magento\Checkout\Helper\Data')->isContextCheckout()): ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Persistent/remember_me_tooltip.phtml b/app/design/frontend/magento_plushe/Magento_Persistent/remember_me_tooltip.phtml new file mode 100644 index 0000000000000..100a5cee1c502 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Persistent/remember_me_tooltip.phtml @@ -0,0 +1,58 @@ + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Rating/detailed.phtml b/app/design/frontend/magento_plushe/Magento_Rating/detailed.phtml new file mode 100644 index 0000000000000..e0321a261957c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Rating/detailed.phtml @@ -0,0 +1,45 @@ + +getSize()): ?> + + + + + + getSummary()): ?> + + + + + + + +
    escapeHtml($_rating->getRatingCode())) ?> +
    +
    +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/layout/catalog_product_view.xml b/app/design/frontend/magento_plushe/Magento_Reports/layout/catalog_product_view.xml new file mode 100644 index 0000000000000..1c2c346263d9b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/layout/catalog_product_view.xml @@ -0,0 +1,36 @@ + + + + + + + widget-viewed + grid + recently_viewed_products_grid_content_widget + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Reports/layout/override/default.xml new file mode 100644 index 0000000000000..46e55c7076c9c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/layout/override/default.xml @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/layout/override/print.xml b/app/design/frontend/magento_plushe/Magento_Reports/layout/override/print.xml new file mode 100644 index 0000000000000..6c60196129d6c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/layout/override/print.xml @@ -0,0 +1,26 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/product_compared.phtml b/app/design/frontend/magento_plushe/Magento_Reports/product_compared.phtml new file mode 100644 index 0000000000000..0925c4376f185 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/product_compared.phtml @@ -0,0 +1,44 @@ + +getRecentlyComparedProducts()): ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/product_viewed.phtml b/app/design/frontend/magento_plushe/Magento_Reports/product_viewed.phtml new file mode 100644 index 0000000000000..006415faeaa1a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/product_viewed.phtml @@ -0,0 +1,44 @@ + +getRecentlyViewedProducts()): ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/widget/compared/column/compared_default_list.phtml b/app/design/frontend/magento_plushe/Magento_Reports/widget/compared/column/compared_default_list.phtml new file mode 100644 index 0000000000000..ad0e07081a83b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/widget/compared/column/compared_default_list.phtml @@ -0,0 +1,58 @@ + +getRecentlyComparedProducts()): ?> +
    +
    +
    + +
    +
    + getNameInLayout(); ?> +
      + +
    1. + <?php echo $this->stripTags($_product->getName(), null, true) ?> +
      +

      helper('Magento\Catalog\Helper\Output')->productAttribute($_product, $_product->getName() , 'name') ?>

      + getPriceHtml($_product, true, '-widget-compared-'.$suffix) ?> + isSaleable()): ?> + + + getIsSalable()): ?> +

      + +

      + + +
      +
    2. + +
    + +
    +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/widget/compared/content/compared_grid.phtml b/app/design/frontend/magento_plushe/Magento_Reports/widget/compared/content/compared_grid.phtml new file mode 100644 index 0000000000000..5e5bfa290ce0f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/widget/compared/content/compared_grid.phtml @@ -0,0 +1,125 @@ + + +getRecentlyComparedProducts()) { + $type = 'widget-compared'; + $mode = 'grid'; + + $type = $type . '-' . $mode; + + $class = 'widget compared' . ' ' . $mode; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image = 'recently_compared_products_grid_content_widget'; + $title = __('Recently Compared'); + $items = $exist; + + $showWishlist = true; + $showCompare = true; + $showCart = true; + $rating = 'short'; + $description = ($mode == 'list') ? true : false; + } +?> + + +
    +
    + +
    +
    + getPagerHtml() ?> + ' ?> +
      + + + ' : '
    1. ' ?> +
      + + + init($_item, $image)->toHtml() ?> + + +
      + + + escapeHtml($_item->getName()) ?> + + + getPriceHtml($_item, true, '-' . $type) ?> + + getRatingSummary() && $rating): ?> + getReviewsSummaryHtml($_item,$rating) ?> + + + +
      + + +
      + isSaleable()): ?> + + + getIsSalable()): ?> +

      + +

      + + +
      + + + + + +
      + + +
      +
      + ' : '' ?> + +
    + +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/widget/compared/content/compared_list.phtml b/app/design/frontend/magento_plushe/Magento_Reports/widget/compared/content/compared_list.phtml new file mode 100644 index 0000000000000..a9149fb99a09a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/widget/compared/content/compared_list.phtml @@ -0,0 +1,125 @@ + + +getRecentlyComparedProducts()) { + $type = 'widget-compared'; + $mode = 'list'; + + $type = $type . '-' . $mode; + + $class = 'widget compared' . ' ' . $mode; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image = 'recently_compared_products_list_content_widget'; + $title = __('Recently Compared'); + $items = $exist; + + $showWishlist = true; + $showCompare = true; + $showCart = true; + $rating = 'short'; + $description = ($mode == 'list') ? true : false; + } +?> + + +
    +
    + +
    +
    + getPagerHtml() ?> + ' ?> +
      + + + ' : '
    1. ' ?> +
      + + + init($_item, $image)->toHtml() ?> + + +
      + + + escapeHtml($_item->getName()) ?> + + + getPriceHtml($_item, true, '-' . $type) ?> + + getRatingSummary() && $rating): ?> + getReviewsSummaryHtml($_item,$rating) ?> + + + +
      + + +
      + isSaleable()): ?> + + + getIsSalable()): ?> +

      + +

      + + +
      + + + + + +
      + + +
      +
      + ' : '' ?> + +
    + +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/widget/viewed/column/viewed_default_list.phtml b/app/design/frontend/magento_plushe/Magento_Reports/widget/viewed/column/viewed_default_list.phtml new file mode 100644 index 0000000000000..c8344e639f758 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/widget/viewed/column/viewed_default_list.phtml @@ -0,0 +1,63 @@ + + +getRecentlyViewedProducts()): ?> +
    +
    +
    + +
    +
    + getNameInLayout(); ?> +
      + +
    1. + <?php echo $this->stripTags($_product->getName(), null, true) ?> +
      +

      helper('Magento\Catalog\Helper\Output')->productAttribute($_product, $_product->getName() , 'name') ?>

      + getPriceHtml($_product, true, '-widget-viewed-'.$suffix) ?> + isSaleable()): ?> + + + getIsSalable()): ?> +

      + +

      + + +
      +
    2. + +
    + +
    +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/widget/viewed/content/viewed_grid.phtml b/app/design/frontend/magento_plushe/Magento_Reports/widget/viewed/content/viewed_grid.phtml new file mode 100644 index 0000000000000..678aba0dd82b2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/widget/viewed/content/viewed_grid.phtml @@ -0,0 +1,129 @@ + + +getRecentlyViewedProducts()) { + $type = 'widget-viewed'; + $mode = 'grid'; + + $type = $type . '-' . $mode; + + $class = 'widget viewed' . ' ' . $mode; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image = 'recently_viewed_products_grid_content_widget'; + $title = __('Recently Viewed'); + $items = $exist; + + $showWishlist = true; + $showCompare = true; + $showCart = true; + $rating = 'short'; + $description = ($mode == 'list') ? true : false; + } +?> + + +
    +
    + +
    +
    + getPagerHtml() ?> + ' ?> +
      + + + ' : '
    1. ' ?> +
      + + + init($_item, $image)->toHtml() ?> + + +
      + + + escapeHtml($_item->getName()) ?> + + + getPriceHtml($_item, true, '-' . $type) ?> + + getRatingSummary() && $rating): ?> + getReviewsSummaryHtml($_item,$rating) ?> + + + +
      + + +
      + isSaleable()): ?> + + + getIsSalable()): ?> +

      + +

      + + +
      + + + + + +
      + + +
      +
      + ' : '' ?> + +
    + +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Reports/widget/viewed/content/viewed_list.phtml b/app/design/frontend/magento_plushe/Magento_Reports/widget/viewed/content/viewed_list.phtml new file mode 100644 index 0000000000000..b30e980f338fc --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Reports/widget/viewed/content/viewed_list.phtml @@ -0,0 +1,128 @@ + + +getRecentlyViewedProducts()) { + $type = 'widget-viewed'; + $mode = 'list'; + + $type = $type . '-' . $mode; + + $class = 'widget viewed' . ' ' . $mode; + + $imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); + $image = 'recently_viewed_products_list_content_widget'; + $title = __('Recently Viewed'); + $items = $exist; + + $showWishlist = true; + $showCompare = true; + $showCart = true; + $rating = 'short'; + $description = ($mode == 'list') ? true : false; + } +?> + + +
    +
    + +
    +
    + getPagerHtml() ?> + ' ?> +
      + + + ' : '
    1. ' ?> +
      + + init($_item, $image)->toHtml() ?> + + +
      + + + escapeHtml($_item->getName()) ?> + + + getPriceHtml($_item, true, '-' . $type) ?> + + getRatingSummary() && $rating): ?> + getReviewsSummaryHtml($_item,$rating) ?> + + + +
      + + +
      + isSaleable()): ?> + + + getIsSalable()): ?> +

      + +

      + + +
      + + + + + +
      + + +
      +
      + ' : '' ?> + +
    + +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Review/customer/list.phtml b/app/design/frontend/magento_plushe/Magento_Review/customer/list.phtml new file mode 100644 index 0000000000000..a1bfcc3a450ef --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/customer/list.phtml @@ -0,0 +1,82 @@ + +getCollection() && $this->count()): ?> +
    + getToolbarHtml() ?> +
    + + + + + + + + + + + + getCollection() as $_review): ?> + + + + + + + + + +
     
    dateFormat($_review->getReviewCreatedAt()); ?> + + escapeHtml($_review->getName()) ?> + + + getSum()): ?> +
    + +
    + +
    +
    + helper('Magento\Review\Helper\Data')->getDetailHtml($_review->getDetail()) ?> +
    +
    + + + +
    +
    + getToolbarHtml() ?> +
    + +

    + +
    +
    + + + +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Review/customer/recent.phtml b/app/design/frontend/magento_plushe/Magento_Review/customer/recent.phtml new file mode 100644 index 0000000000000..3b25d298b0e2e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/customer/recent.phtml @@ -0,0 +1,50 @@ + +getCollection() && $this->count()): ?> +
    +
    + + +
    +
    +
      + getCollection() as $_review): ?> +
    1. + escapeHtml($_review->getName()) ?> + getSum()): ?> + getSum() / $_review->getCount() ?> +
      + + + +
      + +
    2. + +
    +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Review/customer/view.phtml b/app/design/frontend/magento_plushe/Magento_Review/customer/view.phtml new file mode 100644 index 0000000000000..d4816e5e5e786 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/customer/view.phtml @@ -0,0 +1,78 @@ + +getProductData()->getId()): ?> +getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); ?> +
    +

    escapeHtml($this->getProductData()->getName()) ?>

    +
    + + + init($this->getProductData(), 'customer_account_product_review_page')->toHtml() ?> + + getRating() && $this->getRating()->getSize()): ?> +

    + getReviewsSummaryHtml($this->getProductData()) ?> + +
    +
    + + getRating() && $this->getRating()->getSize()): ?> +
    + isReviewOwner()) ? __('Your Rating:') : __('Rating:'); ?> + + getRating() as $_rating): ?> + getPercent()): ?> + getPercent()) ?> +
    +
    escapeHtml($_rating->getRatingCode()) ?>
    +
    + + + +
    +
    + + +
    + + +
    escapeHtml($this->getReviewData()->getTitle()) ?>
    +

    + isReviewOwner()): ?> + ' . $this->dateFormat($this->getReviewData()->getCreatedAt()) . '') ?> + + ' . $this->dateFormat($this->getReviewData()->getCreatedAt()) . '') ?> + +

    +
    escapeHtml($this->getReviewData()->getDetail())) ?>
    +
    +
    +
    +
    + +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Review/form.phtml b/app/design/frontend/magento_plushe/Magento_Review/form.phtml new file mode 100644 index 0000000000000..16724df55f4d1 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/form.phtml @@ -0,0 +1,110 @@ + +
    +
    +
    +getAllowWriteReviewFlag()): ?> +
    + getChildHtml('form_fields_before')?> +
    + escapeHtml($this->getProductInfo()->getName()) ?>
    + getRatings() && $this->getRatings()->getSize()): ?> + +
    + +
    +
    + getRatings() as $_rating): ?> +
    + +
    + getOptions();?> + + + + + +
    +
    + +
    + +
    +
    + +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    +
    + + +
    +
    + + +

    + log in or register', $this->getLoginLink(), $this->helper('Magento\Customer\Helper\Data')->getRegisterUrl()) ?> +

    + +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Review/helper/summary.phtml b/app/design/frontend/magento_plushe/Magento_Review/helper/summary.phtml new file mode 100644 index 0000000000000..a6ebbe0023278 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/helper/summary.phtml @@ -0,0 +1,66 @@ + +getReviewsUrl(); ?> +getReviewsUrl() . '#review-form'; ?> +getProduct()->getProductUrl() . '#info-product_reviews' ?> +getProduct()->getProductUrl() . '#info-product_reviews' ?> +getReviewsCount()): ?> +getRatingSummary(); ?> +
    + +
    + + + +
    + +
    + getReviewsUrl() ?>'; return false;"> */ ?> + getReviewsCount() ?> + +
    +
    +getDisplayIfEmpty()): ?> + + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Review/helper/summary_short.phtml b/app/design/frontend/magento_plushe/Magento_Review/helper/summary_short.phtml new file mode 100644 index 0000000000000..c2c7fde574c03 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/helper/summary_short.phtml @@ -0,0 +1,65 @@ + +getReviewsUrl(); ?> +getReviewsUrl() . '#review-form'; ?> +getProduct()->getProductUrl() . '#info-product_reviews' ?> +getProduct()->getProductUrl() . '#info-product_reviews' ?> +getReviewsCount()): ?> +getRatingSummary(); ?> +
    + +
    + + + +
    + +
    + getReviewsUrl() ?>'; return false;"> */ ?> + getReviewsCount() ?> +
    +
    +getDisplayIfEmpty()): ?> + + + diff --git a/app/design/frontend/magento_plushe/Magento_Review/layout/catalog_product_view.xml b/app/design/frontend/magento_plushe/Magento_Review/layout/catalog_product_view.xml new file mode 100644 index 0000000000000..c3e14735591c7 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/layout/catalog_product_view.xml @@ -0,0 +1,43 @@ + + + + + + + Reviews + + + detailed_info + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Review/layout/override/customer_account_index.xml b/app/design/frontend/magento_plushe/Magento_Review/layout/override/customer_account_index.xml new file mode 100644 index 0000000000000..8df4eb25e2356 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/layout/override/customer_account_index.xml @@ -0,0 +1,30 @@ + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Review/layout/override/review_product_view.xml b/app/design/frontend/magento_plushe/Magento_Review/layout/override/review_product_view.xml new file mode 100644 index 0000000000000..5c720fb8ad51d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/layout/override/review_product_view.xml @@ -0,0 +1,35 @@ + + + + + + 1column.phtml + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Review/layout/review_product_list.xml b/app/design/frontend/magento_plushe/Magento_Review/layout/review_product_list.xml new file mode 100644 index 0000000000000..4a54296ac1175 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/layout/review_product_list.xml @@ -0,0 +1,33 @@ + + + + + + blank.phtml + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Review/layout/review_product_view.xml b/app/design/frontend/magento_plushe/Magento_Review/layout/review_product_view.xml new file mode 100644 index 0000000000000..58a124e9c1548 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/layout/review_product_view.xml @@ -0,0 +1,28 @@ + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Review/product/view/list.phtml b/app/design/frontend/magento_plushe/Magento_Review/product/view/list.phtml new file mode 100644 index 0000000000000..fc4b25f7e030e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/product/view/list.phtml @@ -0,0 +1,74 @@ + + +getReviewsCollection()->getItems(); + $format = $this->getDateFormat() ?: 'short'; +?> + +
    +
    + +
    +
    + getChildHtml('toolbar') ?> +
      + +
    1. +
      + getRatingVotes() as $_vote): ?> + escapeHtml($_vote->getRatingCode()) ?> +
      + + getPercent() ?> + +
      + +
      +
      +

      + + escapeHtml($_review->getNickname()) ?> +

      +

      + + +

      +
      +
      escapeHtml($_review->getTitle()) ?>
      + getReviewUrl($_review->getId()) ?>"> + */?> +
      + escapeHtml($_review->getDetail())) ?> +
      +
    2. + +
    + getChildHtml('toolbar') ?> +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Review/redirect.phtml b/app/design/frontend/magento_plushe/Magento_Review/redirect.phtml new file mode 100644 index 0000000000000..63372095a6e7b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/redirect.phtml @@ -0,0 +1,32 @@ + +getProduct()->getProductUrl()}#info-product_reviews"); + exit; +?> diff --git a/app/design/frontend/magento_plushe/Magento_Review/view.phtml b/app/design/frontend/magento_plushe/Magento_Review/view.phtml new file mode 100644 index 0000000000000..e75d946912aad --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Review/view.phtml @@ -0,0 +1,64 @@ + +getProductData()->getId()): ?> +
    +
    +

    +
    +
    + <?php echo $this->escapeHtml($this->getProductData()->getName()) ?> + getRating() && $this->getRating()->getSize()): ?> +

    :

    + getReviewsSummaryHtml($this->getProductData()) ?> + +
    +
    +

    escapeHtml($this->getProductData()->getName()) ?>

    + getRating() && $this->getRating()->getSize()): ?> +

    + + + getRating() as $_rating): ?> + getPercent()): ?> + + + + + + +
    escapeHtml($_rating->getRatingCode())) ?> +
    +
    +
    + +

    dateFormat($this->getReviewData()->getCreatedAt())) ?>

    +

    escapeHtml($this->getReviewData()->getDetail())) ?>

    +
    +
    + +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/billing/agreement/view.phtml b/app/design/frontend/magento_plushe/Magento_Sales/billing/agreement/view.phtml new file mode 100644 index 0000000000000..f352e60e34c24 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/billing/agreement/view.phtml @@ -0,0 +1,101 @@ + + +
    +
    + escapeHtml($this->getReferenceId())) ?> + getCanCancel()): ?> + + +
    +
    +

    + + + + + + + getAgreementUpdatedAt()): ?> + + + + + + + + + + + getAgreementUpdatedAt()): ?> + + + + + +
    escapeHtml($this->getReferenceId()); ?>getAgreementStatus() ?>escapeHtml($this->getAgreementCreatedAt()) ?>escapeHtml($this->getAgreementUpdatedAt()); ?>getPaymentMethodTitle() ?>
    + + getRelatedOrders() ?> + 0): ?> + getChildHtml('pager'); ?> +

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + +
    +
    +
    +
    \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Sales/billing/agreements.phtml b/app/design/frontend/magento_plushe/Magento_Sales/billing/agreements.phtml new file mode 100644 index 0000000000000..e8d240d9002fe --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/billing/agreements.phtml @@ -0,0 +1,91 @@ + + +
    + getBillingAgreements(); ?> + 0): ?> + getChildHtml('pager'); ?> + + + + + + + + + + + + + + + + + + + + + + + +
     
    getItemValue($item, 'reference_id') ?>getItemValue($item, 'status') ?>getItemValue($item, 'created_at') ?>getItemValue($item, 'updated_at') ?>getItemValue($item, 'payment_method_label') ?> + +
    + +

    + + + getWizardPaymentMethodOptions() ?> + +

    + +
    +
    +

    + +
    +
    + +
    +
    + +
    +
    + + +
    +
    + +
    +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Sales/guest/form.phtml b/app/design/frontend/magento_plushe/Magento_Sales/guest/form.phtml new file mode 100644 index 0000000000000..7965d508ecfa0 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/guest/form.phtml @@ -0,0 +1,75 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/customer_account_index.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/customer_account_index.xml new file mode 100644 index 0000000000000..20442ea314081 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/customer_account_index.xml @@ -0,0 +1,30 @@ + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/default.xml new file mode 100644 index 0000000000000..f62b5835f3f51 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/default.xml @@ -0,0 +1,38 @@ + + + + + + + + + + Orders and Returns + sales/guest/form + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_guest_view.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_guest_view.xml new file mode 100644 index 0000000000000..0e6bfb02a39a6 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_guest_view.xml @@ -0,0 +1,51 @@ + + + + + + 1column.phtml + + + + + + + + + + + + + colspan="4" class="mark" + class="amount" + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_creditmemo.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_creditmemo.xml new file mode 100644 index 0000000000000..194a0cd24349a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_creditmemo.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + colspan="6" class="mark" + class="amount" + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_info_links.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_info_links.xml new file mode 100644 index 0000000000000..20aa47ee1d77b --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_info_links.xml @@ -0,0 +1,61 @@ + + + + + + + items + + + + sales/order/view + Order Information + + + + + Invoices + sales/order/invoice + Invoices + + + + + Shipments + sales/order/shipment + Order Shipments + + + + + Creditmemos + sales/order/creditmemo + Refunds + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_invoice.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_invoice.xml new file mode 100644 index 0000000000000..f40d14e2ee576 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_invoice.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + colspan="4" class="mark" + class="amount" + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_printorder.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_printorder.xml new file mode 100644 index 0000000000000..7f7eff98c8de8 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_printorder.xml @@ -0,0 +1,45 @@ + + + + + + + + + + colspan="4" class="mark" + class="amount" + + + + 1 + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_printordercreditmemo.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_printordercreditmemo.xml new file mode 100644 index 0000000000000..71bc0ee17dfac --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_printordercreditmemo.xml @@ -0,0 +1,41 @@ + + + + + + + + + + colspan="6" class="mark" + class="amount" + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_printorderinvoice.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_printorderinvoice.xml new file mode 100644 index 0000000000000..cca9e34aee1d8 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_printorderinvoice.xml @@ -0,0 +1,41 @@ + + + + + + + + + + colspan="4" class="mark" + class="amount" + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_view.xml b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_view.xml new file mode 100644 index 0000000000000..8ea32e55ea715 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/layout/override/sales_order_view.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + colspan="4" class="mark" + class="amount" + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/comments.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/comments.phtml new file mode 100644 index 0000000000000..bd9d1a61b540f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/comments.phtml @@ -0,0 +1,42 @@ + + +hasComments()):?> +
    +

    getTitle() ?>

    +
    + getComments() as $_commentItem): ?> +
    formatDate($_commentItem->getCreatedAtStoreDate(), 'medium', true) ?>
    +
    escapeHtml($_commentItem->getComment()) ?>
    + +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/creditmemo.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/creditmemo.phtml new file mode 100644 index 0000000000000..247b9c523661e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/creditmemo.phtml @@ -0,0 +1,35 @@ + +
    + getChildHtml('creditmemo_items') ?> + +
    diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/creditmemo/items.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/creditmemo/items.phtml new file mode 100644 index 0000000000000..5c3d8d8559037 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/creditmemo/items.phtml @@ -0,0 +1,72 @@ + +getOrder() ?> +
    +
    + + + +
    +
    +getCreditmemosCollection() as $_creditmemo): ?> +
    + getIncrementId(); ?> + + + +
    + +
    + + + + + + + + + + + + + + getTotalsHtml($_creditmemo);?> + + getAllItems(); ?> + + + getOrderItem()->getParentItem()) continue; ?> + + getItemHtml($_item) ?> + + +
    +getCommentsHtml($_creditmemo)?> + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/creditmemo/items/renderer/default.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/creditmemo/items/renderer/default.phtml new file mode 100644 index 0000000000000..65f32a6e195ca --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/creditmemo/items/renderer/default.phtml @@ -0,0 +1,315 @@ + +getItem() ?> +getItem()->getOrderItem()->getOrder() ?> + + + escapeHtml($_item->getName()) ?> + getItemOptions()): ?> +
    + +
    escapeHtml($_option['label']) ?>
    + getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + +
    +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    +
    + + + +
    escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) ) ?>
    + + +
    + + + + getLinks()): ?> +
    +
    getLinksTitle() ?>
    + getPurchasedItems() as $link): ?> +
    escapeHtml($link->getLinkTitle()); ?>
    + +
    + + + + getProductAdditionalInformationBlock(); ?> + + setItem($_item->getOrderItem())->toHtml(); ?> + + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $_item->getOrderItem()) && $_item->getGiftMessageId()): ?> + + + + escapeHtml($this->helper('Magento\Core\Helper\String')->splitInjection($this->getSku())) ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getPrice()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxDisposition()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?>
    +
    + + +
    + + + getQty()*1 ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getRowTotal()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxRowDisposition()) ?> + + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?>
    +
    + + + + + +
    + + + formatPrice(-$_item->getDiscountAmount()) ?> + + formatPrice($_item->getRowTotal()-$_item->getDiscountAmount()+$_item->getTaxAmount()+$_item->getWeeeTaxAppliedRowAmount()) ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/history.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/history.phtml new file mode 100644 index 0000000000000..e5bc8f2590c8f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/history.phtml @@ -0,0 +1,66 @@ + +getOrders(); ?> +getChildHtml('info');?> +
    getPagerHtml(); ?>
    +getSize()): ?> + + + + + + + + + + + + + + + + + + + + + + + +
     
    getRealOrderId() ?>formatDate($_order->getCreatedAtStoreDate()) ?>getShippingAddress() ? $this->escapeHtml($_order->getShippingAddress()->getName()) : ' ' ?>formatPrice($_order->getGrandTotal()) ?>getStatusLabel() ?> + + + + helper('Magento\Sales\Helper\Reorder')->canReorder($_order)) : ?> + + + + +
    +
    getPagerHtml(); ?>
    + +

    + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/info.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/info.phtml new file mode 100644 index 0000000000000..d549180709588 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/info.phtml @@ -0,0 +1,77 @@ + + +getOrder() ?> +
    + getStatusLabel() ?> +
    + getChildHtml('buttons') ?> + getStatusHistoryRssUrl($_order) ?> +
    +
    +
    +
    + getChildHtml('links') ?> +
    +
    +

    Order Date: %1', '' . $this->formatDate($_order->getCreatedAtStoreDate(), 'long') . '' ) ?>

    +getIsVirtual()): ?> +
    +
    +
    +
    getShippingAddress()->format('html') ?>
    +
    +
    + +
    +
    +
    + getShippingDescription()): ?> + escapeHtml($_order->getShippingDescription()) ?> + + + +
    +
    + + +
    +
    + +
    +
    +
    getBillingAddress()->format('html') ?>
    +
    +
    +
    +
    + +
    +
    + getPaymentInfoHtml() ?> +
    +
    +
    \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/info/buttons.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/info/buttons.phtml new file mode 100644 index 0000000000000..345c5e7357760 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/info/buttons.phtml @@ -0,0 +1,45 @@ + +
    + getOrder() ?> + helper('Magento\Sales\Helper\Reorder')->canReorder($_order)) : ?> + + + + + + + + helper('Magento\Rss\Helper\Order')->isStatusNotificationAllow()): ?> + + + + + getChildHtml(); ?> +
    \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/invoice.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/invoice.phtml new file mode 100644 index 0000000000000..fff36854de19a --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/invoice.phtml @@ -0,0 +1,35 @@ + +
    + getChildHtml('invoice_items') ?> + +
    diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/invoice/items.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/invoice/items.phtml new file mode 100644 index 0000000000000..b9be6d9379d45 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/invoice/items.phtml @@ -0,0 +1,69 @@ + +getOrder() ?> +
    +
    + + + +
    +
    +getInvoiceCollection() as $_invoice): ?> +
    + getIncrementId(); ?> + + + +
    +
    + + + + + + + + + + + + getInvoiceTotalsHtml($_invoice)?> + + getAllItems(); ?> + + + getOrderItem()->getParentItem()) continue; ?> + + getItemHtml($_item) ?> + + +
    +getInvoiceCommentsHtml($_invoice)?> + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/invoice/items/renderer/default.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/invoice/items/renderer/default.phtml new file mode 100644 index 0000000000000..2cfb7fdce1785 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/invoice/items/renderer/default.phtml @@ -0,0 +1,295 @@ + +getItem() ?> +getItem()->getOrderItem()->getOrder() ?> + + + escapeHtml($_item->getName()) ?> + getItemOptions()): ?> +
    + +
    escapeHtml($_option['label']) ?>
    + getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + + +
    +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    +
    + + + +
    escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) ) ?>
    + + +
    + + getProductAdditionalInformationBlock(); ?> + + setItem($_item->getOrderItem())->toHtml(); ?> + + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $_item->getOrderItem()) && $_item->getGiftMessageId()): ?> + + + + escapeHtml($this->helper('Magento\Core\Helper\String')->splitInjection($this->getSku())) ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getPrice()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxDisposition()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?>
    +
    + + +
    + + + + getQty()*1 ?> + + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getRowTotal()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxRowDisposition()) ?> + + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?>
    +
    + + + +
    + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/items.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/items.phtml new file mode 100644 index 0000000000000..0ab62e2dc0779 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/items.phtml @@ -0,0 +1,79 @@ + +getOrder() ?> + + + + + + + + + + + + + getChildHtml('order_totals') ?> + + getItemsCollection(); ?> + + count(); ?> + + + getParentItem()) continue; ?> + + getItemHtml($_item) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $_item) && $_item->getGiftMessageId()): ?> + + helper('Magento\GiftMessage\Helper\Message')->getGiftMessageForEntity($_item); ?> + + + + + +
    + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/items/renderer/default.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/items/renderer/default.phtml new file mode 100644 index 0000000000000..f0c35ef35a632 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/items/renderer/default.phtml @@ -0,0 +1,317 @@ + +getItem() ?> + + + escapeHtml($_item->getName()) ?> + getItemOptions()): ?> +
    + +
    escapeHtml($_option['label']) ?>
    + getPrintStatus()): ?> + getFormatedOptionValue($_option) ?> + class="truncated" data-mage-init="{truncateOptions:[]}"> + + +
    +
    +
    escapeHtml($_option['label']) ?>
    +
    +
    +
    + + + +
    + escapeHtml( (isset($_option['print_value']) ? $_option['print_value'] : $_option['value']) )) ?> +
    + + +
    + + getProductAdditionalInformationBlock(); ?> + + setItem($_item)->toHtml(); ?> + + escapeHtml($_item->getDescription()) ?> + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order_item', $_item) && $_item->getGiftMessageId()): ?> + + + + + + escapeHtml($this->helper('Magento\Core\Helper\String')->splitInjection($this->getSku())) ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getPrice()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($this->getItem()->getPrice()+$this->getItem()->getWeeeTaxAppliedAmount()+$this->getItem()->getWeeeTaxDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getPriceInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxDisposition()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedAmount()); ?>
    +
    + + +
    + + + + + getItem()->getQtyOrdered() > 0): ?> + : getItem()->getQtyOrdered()*1 ?>
    + + getItem()->getQtyShipped() > 0): ?> + : getItem()->getQtyShipped()*1 ?>
    + + getItem()->getQtyCanceled() > 0): ?> + : getItem()->getQtyCanceled()*1 ?>
    + + getItem()->getQtyRefunded() > 0): ?> + : getItem()->getQtyRefunded()*1 ?>
    + +
    + + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceExclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?> + + getOrder()->formatPrice($this->getItem()->getRowTotal()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($this->getItem()->getRowTotal()+$this->getItem()->getWeeeTaxAppliedRowAmount()+$this->getItem()->getWeeeTaxRowDisposition()); ?>
    +
    + + +
    +
    + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices() || $this->helper('Magento\Tax\Helper\Data')->displaySalesPriceInclTax()): ?> + + helper('Magento\Tax\Helper\Data')->displaySalesBothPrices()): ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + : + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + helper('Magento\Checkout\Helper\Data')->getSubtotalInclTax($this->getItem()); ?> + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), array(0, 1, 4), 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?> + + getOrder()->formatPrice($_incl-$this->getItem()->getWeeeTaxRowDisposition()) ?> + + + + helper('Magento\Weee\Helper\Data')->getApplied($this->getItem())): ?> + + + + helper('Magento\Weee\Helper\Data')->typeOfDisplay($this->getItem(), 2, 'sales') && (float)$this->getItem()->getWeeeTaxAppliedAmount()): ?> + + :
    getOrder()->formatPrice($_incl+$this->getItem()->getWeeeTaxAppliedRowAmount()); ?>
    +
    + + + +
    + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/print.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/print.phtml new file mode 100644 index 0000000000000..90b9eaacd6327 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/print.phtml @@ -0,0 +1,98 @@ + +getOrder() ?> +
    +

    getRealOrderId()) ?>

    +
    +

    formatDate($_order->getCreatedAtStoreDate(), 'long')) ?>

    + +
    +
    +
    + +
    +
    +
    getShippingAddress()->format('html') ?>
    +
    +
    +
    +
    + +
    +
    +
    getBillingAddress()->format('html') ?>
    +
    +
    + getIsVirtual()): ?> +
    +
    + +
    + escapeHtml($_order->getShippingDescription()) ?> +
    + +
    +
    + +
    +
    + getPaymentInfoHtml() ?> +
    +
    +
    + +
    +
    + +
    + + + + + + + + + + + + getChildHtml('order_totals') ?> + + getItemsCollection(); ?> + count(); ?> + + getParentItem()) continue; ?> + + getItemHtml($_item) ?> + + +
    +
    + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/print/creditmemo.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/print/creditmemo.phtml new file mode 100644 index 0000000000000..4d2a53c668ecc --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/print/creditmemo.phtml @@ -0,0 +1,117 @@ + +getOrder() ?> +
    +

    getRealOrderId()) ?>

    +
    +

    formatDate($_order->getCreatedAtStoreDate(), 'long')) ?>

    +getCreditmemo() ?> + + + + getCreditmemosCollection() ?> + + +
    +
    + getIncrementId()) ?> +
    + +
    + getIsVirtual()): ?> +
    + +
    +
    + getShippingAddress() ?> +
    format('html') ?>
    +
    +
    + +
    + +
    + +
    +
    + getbillingAddress() ?> +
    getBillingAddress()->format('html') ?>
    +
    +
    + + getIsVirtual()): ?> +
    +
    + +
    +
    + escapeHtml($_order->getShippingDescription()) ?> +
    +
    + +
    +
    + +
    +
    + getPaymentInfoHtml() ?> +
    +
    + +
    +
    +
    + +
    + + + + + + + + + + + + + + getTotalsHtml($_creditmemo);?> + + getAllItems(); ?> + + + getOrderItem()->getParentItem()) continue; ?> + + getItemHtml($_item) ?> + + +
    +
    + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/print/invoice.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/print/invoice.phtml new file mode 100644 index 0000000000000..0c5043a86c679 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/print/invoice.phtml @@ -0,0 +1,115 @@ + +getOrder() ?> +
    +

    getRealOrderId()) ?>

    +
    +

    formatDate($_order->getCreatedAtStoreDate(), 'long')) ?>

    +getInvoice() ?> + + + +getInvoiceCollection() ?> + + +
    +
    + getIncrementId()) ?> +
    + +
    + getIsVirtual()): ?> +
    + +
    +
    + getShippingAddress() ?> +
    format('html') ?>
    +
    +
    +
    + +
    + +
    +
    + getbillingAddress() ?> +
    getBillingAddress()->format('html') ?>
    +
    +
    + getIsVirtual()): ?> + +
    +
    + +
    +
    + escapeHtml($_order->getShippingDescription()) ?> +
    +
    + +
    +
    + +
    +
    + getPaymentInfoHtml() ?> +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + getInvoiceTotalsHtml($_invoice)?> + + getItemsCollection(); ?> + count(); ?> + + getOrderItem()->getParentItem()) continue; ?> + + getItemHtml($_item) ?> + + +
    +
    + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/print/shipment.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/print/shipment.phtml new file mode 100644 index 0000000000000..dd0510a86cc3d --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/print/shipment.phtml @@ -0,0 +1,123 @@ + + +getOrder(); ?> +
    +

    + getObjectData($order, 'real_order_id')); ?> +

    +
    +

    formatDate($this->getObjectData($order, 'created_at_store_date'), 'long')) ?>

    +getObjectData($order, 'is_virtual')): ?> +getShipmentsCollection() as $shipment): ?> +
    +
    + getObjectData($shipment, 'increment_id')); ?> +
    + +
    +
    + +
    +
    +
    getShipmentAddressFormattedHtml($shipment); ?>
    +
    +
    + +
    +
    + +
    +
    +
    getBillingAddressFormattedHtml($order); ?>
    +
    +
    + +
    +
    + +
    + escapeHtml($this->getObjectData($order, 'shipping_description')); ?> + getShipmentTracks($shipment); + if ($tracks): ?> + + + + + + + + + + + + + + + +
    escapeHtml($this->getObjectData($track, 'title')); ?>escapeHtml($this->getObjectData($track, 'number')); ?>
    + + +
    + +
    +
    + +
    +
    + getPaymentInfoHtml() ?> +
    +
    + +
    +
    +
    + +
    + + + + + + + + + getShipmentItems($shipment) as $item): ?> + + getItemHtml($item) ?> + + +
    +
    + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/recent.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/recent.phtml new file mode 100644 index 0000000000000..35af465a6a1e3 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/recent.phtml @@ -0,0 +1,76 @@ + +
    +getOrders(); ?> +
    + + getItems()) > 0 ): ?> + + + + +
    +
    + getChildHtml()?> + getItems()) > 0 ): ?> + + + + + + + + + + + + + + + + + + + + + + + +
     
    getRealOrderId() ?>formatDate($_order->getCreatedAtStoreDate()) ?>getShippingAddress() ? $this->escapeHtml($_order->getShippingAddress()->getName()) : ' ' ?>formatPrice($_order->getGrandTotal()) ?>getStatusLabel() ?> + + + + helper('Magento\Sales\Helper\Reorder')->canReorder($_order)) : ?> + + + + +
    + +

    + +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/shipment.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/shipment.phtml new file mode 100644 index 0000000000000..191012ded1811 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/shipment.phtml @@ -0,0 +1,35 @@ + +
    + getChildHtml('shipment_items') ?> + +
    diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/shipment/items.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/shipment/items.phtml new file mode 100644 index 0000000000000..23843a765beaf --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/shipment/items.phtml @@ -0,0 +1,105 @@ + +getOrder() ?> +
    +
    + getTracksCollection()->count()) : ?> + + + + + + + +
    +
    +getShipmentsCollection() as $_shipment): ?> +
    + getIncrementId(); ?> + + + + + +
    +getTracksCollection(); ?> +count()): ?> + + + + + + + +
    + count(); + foreach($tracks as $track): ?> + isCustom()): ?> + escapeHtml($track->getNumber()) ?> + + + escapeHtml($track->getNumber()) ?> + + + , + +
    + +
    + + + + + + + + + getAllItems(); ?> + + + getOrderItem()->getParentItem()) continue; ?> + + getItemHtml($_item) ?> + + +
    +getCommentsHtml($_shipment)?> + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/order/view.phtml b/app/design/frontend/magento_plushe/Magento_Sales/order/view.phtml new file mode 100644 index 0000000000000..5c6065afbe0e6 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/order/view.phtml @@ -0,0 +1,73 @@ + +
    + getOrder() ?> + +
    + + getTracksCollection()->count()) : ?> + + + + +
    + + getChildHtml('order_items') ?> + + helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('order', $_order) && $_order->getGiftMessageId()): ?> +
    +
    + helper('Magento\GiftMessage\Helper\Message')->getGiftMessageForEntity($_order); ?> +
    +
    escapeHtml($_giftMessage->getSender()) ?>
    +
    escapeHtml($_giftMessage->getRecipient()) ?>
    +
    helper('Magento\GiftMessage\Helper\Message')->getEscapedGiftMessage($_order) ?>
    +
    +
    + + getOrder()->getVisibleStatusHistory() ?> + +
    +
    +
    + +
    formatDate($_historyItem->getCreatedAtStoreDate(), 'medium', true) ?>
    +
    escapeHtml($_historyItem->getComment()) ?>
    + +
    +
    + + +
    diff --git a/app/design/frontend/magento_plushe/Magento_Sales/recurring/profiles.phtml b/app/design/frontend/magento_plushe/Magento_Sales/recurring/profiles.phtml new file mode 100644 index 0000000000000..ad0f270ca559f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/recurring/profiles.phtml @@ -0,0 +1,38 @@ + + +getMessagesBlock()->getGroupedHtml() ?> + +
    + getChildHtml('grid')?> + +
    +
    + +
    +
    +
    diff --git a/app/design/frontend/magento_plushe/Magento_Sales/reorder/sidebar.phtml b/app/design/frontend/magento_plushe/Magento_Sales/reorder/sidebar.phtml new file mode 100644 index 0000000000000..92f812bc6d2ad --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/reorder/sidebar.phtml @@ -0,0 +1,85 @@ + + +getItems()?> + +
    +
    + +
    +
    +
    + +
      + + +
    1. + isItemAvailableForReorder($_item)): ?> + + + + escapeHtml($_item->getName()) ?> +
    2. + +
    +
    +
    + +
    + +
    + +
    +
    +
    +
    + getPagerHtml(); ?> + +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Sales/success.phtml b/app/design/frontend/magento_plushe/Magento_Sales/success.phtml new file mode 100644 index 0000000000000..737dfe3fca923 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sales/success.phtml @@ -0,0 +1,63 @@ + +
    +

    +
    +getMessagesBlock()->getGroupedHtml() ?> +

    + +getOrderId()):?> +getCanViewOrder()) :?> +

    %s', $this->escapeHtml($this->getViewOrderUrl()), $this->escapeHtml($this->getOrderId()))) ?>

    + +

    escapeHtml($this->getOrderId())) ?>

    + +

    +getCanViewOrder() && $this->getCanPrintOrder()) :?> +

    + here to print a copy of your order confirmation.', $this->getPrintUrl()) ?> + getChildHtml() ?> +

    + + + +getAgreementRefId()): ?> +

    %s', $this->escapeHtml($this->getAgreementUrl()), $this->escapeHtml($this->getAgreementRefId())))?>

    + + +getRecurringProfiles()):?> +

    +
      + +getCanViewProfiles() ? sprintf('%s', $this->escapeHtml($this->getProfileUrl($profile)), $this->escapeHtml($this->getObjectData($profile, 'reference_id'))) : $this->escapeHtml($this->getObjectData($profile, 'reference_id')));?> +
    • escapeHtml($this->getObjectData($profile, 'schedule_description')))?>
    • + +
    + + +
    + +
    diff --git a/app/design/frontend/magento_plushe/Magento_Sendfriend/layout/override/sendfriend_product_send.xml b/app/design/frontend/magento_plushe/Magento_Sendfriend/layout/override/sendfriend_product_send.xml new file mode 100644 index 0000000000000..9e24f817f9d7f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sendfriend/layout/override/sendfriend_product_send.xml @@ -0,0 +1,36 @@ + + + + + + + Email to a Friend + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Sendfriend/send.phtml b/app/design/frontend/magento_plushe/Magento_Sendfriend/send.phtml new file mode 100644 index 0000000000000..998017fe960d5 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Sendfriend/send.phtml @@ -0,0 +1,118 @@ + + + +
    +
    + getBlockHtml('formkey')?> + +
    +
    + +
    + +
    +
    + + + +
    + +
    + +
    +
    +
    + +
    + getBlockHtml('formkey')?> +
    +
    +
    +
    + + + getMaxRecipients()): ?> + + +
    +
    + +
    +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Shipping/tracking/popup.phtml b/app/design/frontend/magento_plushe/Magento_Shipping/tracking/popup.phtml new file mode 100644 index 0000000000000..c3ca1b3567643 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Shipping/tracking/popup.phtml @@ -0,0 +1,174 @@ + + +getTrackingInfo(); ?> +
    +
    +

    + +

    +
    + 0): ?> + $_result): ?> + +
    + + 0): ?> + + + + + + + + + + getCarrierTitle()): ?> + + + + + + getErrorMessage()): ?> + + + + + getTrackSummary()): ?> + + + + + getUrl()): ?> + + + + + + getStatus()): ?> + + + + + + + getDeliverydate()): ?> + + + + + + + getSignedby()): ?> + + + + + + + getDeliveryLocation()): ?> + + + + + + + getShippedDate()): ?> + + + + + + + getService()): ?> + + + + + + + getWeight()): ?> + + + + + + + + + + + + + + +
    escapeHtml($track->getTracking()); ?>
    escapeHtml($track->getCarrierTitle()); ?>
    getContactUsEnabled()) : ?>getStoreSupportEmail() ?>
    getTrackSummary(); ?>
    escapeHtml($track->getUrl()); ?>
    getStatus(); ?>
    formatDeliveryDateTime($track->getDeliverydate(),$track->getDeliverytime()); ?>
    getSignedby(); ?>
    getDeliveryLocation(); ?>
    getShippedDate(); ?>
    getService(); ?>
    getWeight(); ?>
    escapeHtml($track['title']) : __('N/A')); ?>:escapeHtml($track['number']) : ''); ?>
    + getProgressdetail())>0): ?> + + + + + + + + + + + getProgressdetail() as $_detail): ?> + formatDeliveryDate($_detail['deliverydate']) : '') ?> + formatDeliveryTime($_detail['deliverytime'], $_detail['deliverydate']) : '') ?> + + + + + + + + +
    + + + + + + + +

    + + + + +

    + +
    + +
    +
    \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Tax/checkout/grandtotal.phtml b/app/design/frontend/magento_plushe/Magento_Tax/checkout/grandtotal.phtml new file mode 100644 index 0000000000000..b522d286f7666 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Tax/checkout/grandtotal.phtml @@ -0,0 +1,57 @@ + +includeTax() && $this->getTotalExclTax()>=0):?> + + + + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getTotalExclTax()) ?> + + +renderTotals('taxes', $this->getColspan()); ?> + + + + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getTotal()->getValue()) ?> + + + + + + getTotal()->getTitle() ?> + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getTotal()->getValue()) ?> + + + diff --git a/app/design/frontend/magento_plushe/Magento_Tax/checkout/shipping.phtml b/app/design/frontend/magento_plushe/Magento_Tax/checkout/shipping.phtml new file mode 100644 index 0000000000000..29a032f765ecc --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Tax/checkout/shipping.phtml @@ -0,0 +1,65 @@ + +displayBoth()):?> + + + getExcludeTaxLabel() ?> + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getShippingExcludeTax()) ?> + + + + + getIncludeTaxLabel() ?> + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getShippingIncludeTax()) ?> + + +displayIncludeTax()) : ?> + + + getTotal()->getTitle() ?> + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getShippingIncludeTax()) ?> + + + + + + escapeHtml($this->getTotal()->getTitle()) ?> + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getShippingExcludeTax()) ?> + + + diff --git a/app/design/frontend/magento_plushe/Magento_Tax/checkout/subtotal.phtml b/app/design/frontend/magento_plushe/Magento_Tax/checkout/subtotal.phtml new file mode 100644 index 0000000000000..7eecfc2657ad4 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Tax/checkout/subtotal.phtml @@ -0,0 +1,56 @@ + +displayBoth()):?> + + + + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getTotal()->getValueExclTax()) ?> + + + + + + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getTotal()->getValueInclTax()) ?> + + + + + + getTotal()->getTitle() ?> + + + helper('Magento\Checkout\Helper\Data')->formatPrice($this->getTotal()->getValue()) ?> + + + diff --git a/app/design/frontend/magento_plushe/Magento_Tax/checkout/tax.phtml b/app/design/frontend/magento_plushe/Magento_Tax/checkout/tax.phtml new file mode 100644 index 0000000000000..7fe118b5710b1 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Tax/checkout/tax.phtml @@ -0,0 +1,80 @@ + +getTotal()->getValue(); + $_style = $this->getTotal()->getStyle(); +?> + +helper('Magento\Tax\Helper\Data')->displayFullSummary() && $_value!=0): ?> + + getTotal()->getFullInfo() as $info): ?> + + + + + + + + + + escapeHtml($rate['title']); ?> + + (%) + +
    + + + + helper('Magento\Checkout\Helper\Data')->formatPrice($amount); ?> + + + + + + + + +helper('Magento\Tax\Helper\Data')->displayFullSummary() && $_value!=0) { + $attributes = 'class="summary-total tax total" onclick="expandDetails(this, \'.summary-details-' . $taxIter . '\')"'; + } +?> + +> + + helper('Magento\Tax\Helper\Data')->displayFullSummary()): ?> +
    getTotal()->getTitle() ?>
    + + getTotal()->getTitle() ?> + + + helper('Magento\Checkout\Helper\Data')->formatPrice($_value) ?> + diff --git a/app/design/frontend/magento_plushe/Magento_Widget/layout/override/default.xml b/app/design/frontend/magento_plushe/Magento_Widget/layout/override/default.xml new file mode 100644 index 0000000000000..6c60196129d6c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Widget/layout/override/default.xml @@ -0,0 +1,26 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Widget/layout/override/print.xml b/app/design/frontend/magento_plushe/Magento_Widget/layout/override/print.xml new file mode 100644 index 0000000000000..6c60196129d6c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Widget/layout/override/print.xml @@ -0,0 +1,26 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/button/share.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/button/share.phtml new file mode 100644 index 0000000000000..0b79afbd5dec1 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/button/share.phtml @@ -0,0 +1,28 @@ + +getWishlist()->getItemsCount() && $this->getWishlist()->getShared() < $this->getConfig()->getSharingEmailLimit()): ?> + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/button/tocart.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/button/tocart.phtml new file mode 100644 index 0000000000000..e242ea9021607 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/button/tocart.phtml @@ -0,0 +1,29 @@ + + +getWishlist()->getItemsCount() && $this->getWishlist()->isSalable()): ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/button/update.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/button/update.phtml new file mode 100644 index 0000000000000..1a5b92add28f6 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/button/update.phtml @@ -0,0 +1,29 @@ + + +getWishlist()->getItemsCount()): ?> + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/cart.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/cart.phtml new file mode 100644 index 0000000000000..a5681f4bdf3a5 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/cart.phtml @@ -0,0 +1,57 @@ +getItem(); +$product = $item->getProduct(); +$options = $this->getChildBlock('customer.wishlist.item.options') + ->setItem($item) + ->getConfiguredOptions(); +?> + getPriceHtml($product, empty($options));?> +
    + canHaveQty() && $item->getProduct()->isVisibleInSiteVisibility()): ?> + + + isSaleable()): ?> + + + getIsSalable()): ?> +

    + +

    + + +
    + getChildNames() as $childName): ?> + getLayout()->renderElement($childName, false); ?> + + isVisibleInSiteVisibility()): ?> +

    +

    + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/image.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/image.phtml new file mode 100644 index 0000000000000..5d5bd9f71e733 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/image.phtml @@ -0,0 +1,33 @@ +getItem(); +$product = $item->getProduct(); +$imageBlock = $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); +?> + + init($product, 'wishlist_thumbnail')->toHtml() ?> + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/info.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/info.phtml new file mode 100644 index 0000000000000..275b996e650b2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/info.phtml @@ -0,0 +1,40 @@ +getItem(); +$product = $item->getProduct(); +?> +escapeHtml($product->getName()) ?> +
    escapeHtml($this->stripTags($product->getShortDescription()));?>
    + +getChildNames(); ?> + +
    + + getLayout()->renderElement($childName, false);?> + +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/remove.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/remove.phtml new file mode 100644 index 0000000000000..91dcd50b45666 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/item/column/remove.phtml @@ -0,0 +1,28 @@ + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/item/configure/addto.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/item/configure/addto.phtml new file mode 100644 index 0000000000000..0b0f085bbc762 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/item/configure/addto.phtml @@ -0,0 +1,37 @@ + +getWishlistItem(); ?> +helper('Magento\Wishlist\Helper\Data')->getUpdateUrl($_wishlistItem); ?> + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/item/list.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/item/list.phtml new file mode 100644 index 0000000000000..96d64947ea1e0 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/item/list.phtml @@ -0,0 +1,53 @@ + +getColumns(); +?> + + + + + + + + + + getItems())): ?> + getItems() as $item): ?> + + + + + + + + + + +
    getTitle();?>
    setItem($item); echo $column->toHtml($item);?>
    + + getAdditionalHtml();?> + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure.xml b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure.xml new file mode 100644 index 0000000000000..8321608c8c181 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure.xml @@ -0,0 +1,39 @@ + + + + + + + + + + product.info.addtocart.additional + + + product.info.addtocart.additional + + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_bundle.xml b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_bundle.xml new file mode 100644 index 0000000000000..33c45528fb4b2 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_bundle.xml @@ -0,0 +1,113 @@ + + + + + + + Magento_Bundle::bundle.js + + + + + Magento_Bundle::js/product-summary.js + + + + + + type-bundle + + + + + + + catalog/product/price_msrp_item.phtml + + + + + + + + + + + select + Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Select + + + multi + Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Multi + + + radio + Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Radio + + + checkbox + Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Checkbox + + + + + + + + + + product.info.addtocart + + + 1 + + + product.info.addto + + + + + + + + + + bundle + Magento\Bundle\Block\Catalog\Product\Price + catalog/product/price.phtml + + + + + + + + bundle + Magento\Bundle\Block\Catalog\Product\Price + catalog/product/view/price.phtml + + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_configurable.xml b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_configurable.xml new file mode 100644 index 0000000000000..9ed018ba6bc36 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_configurable.xml @@ -0,0 +1,39 @@ + + + + + + type-configurable + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_grouped.xml b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_grouped.xml new file mode 100644 index 0000000000000..6bceb727e4c0e --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_grouped.xml @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_simple.xml b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_simple.xml new file mode 100644 index 0000000000000..6c60196129d6c --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_configure_type_simple.xml @@ -0,0 +1,26 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_index.xml b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_index.xml new file mode 100644 index 0000000000000..26a3cfbd6a2a6 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_index_index.xml @@ -0,0 +1,65 @@ + + + + + + + + My Wish List + + + + + photo + + + + + item + Product Details and Comment + + + + + actions + Add to Cart + + + + + + remove + + + + + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_shared_index.xml b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_shared_index.xml new file mode 100644 index 0000000000000..1e6bd663cc673 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/layout/override/wishlist_shared_index.xml @@ -0,0 +1,30 @@ + + + + + + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/shared.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/shared.phtml new file mode 100644 index 0000000000000..bb5f0b8f42579 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/shared.phtml @@ -0,0 +1,79 @@ + + +hasWishlistItems()): ?> +
    + + + + + + + + + + getWishlistItems() as $item): ?> + getProduct(); + $isVisibleProduct = $product->isVisibleInSiteVisibility(); + ?> + + + + + + + +
    + + <?php echo $this->escapeHtml($item->getName()) ?> + + escapeHtml($product->getName()) ?> + getPriceHtml($product) ?> + getDetailsHtml($item) ?> + getEscapedDescription($item) ?> + isSaleable()): ?> + + + + + +
    +
    + isSaleable()):?> +
    + +
    + +
    + +
    +
    +
    + +

    + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/sharing.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/sharing.phtml new file mode 100644 index 0000000000000..70da9af4b1c3f --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/sharing.phtml @@ -0,0 +1,67 @@ + + + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/sidebar.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/sidebar.phtml new file mode 100644 index 0000000000000..0925ab152d4cd --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/sidebar.phtml @@ -0,0 +1,71 @@ + +helper('Magento\Wishlist\Helper\Data')->isAllow()) : ?> +getLayout()->createBlock('Magento\Catalog\Block\Product\Image');?> +
    +
    + getTitle(); ?> +
    +
    + + hasWishlistItems()): ?> +
      + + getWishlistItems() as $_item): ?> + getProduct(); ?> + ' : '
    1. ' ?> +
      + + init($product, 'wishlist_sidebar_block')->toHtml() ?> + +
      + escapeHtml($product->getName()) ?> + getPriceHtml($product, false, '-wishlist') ?> +
      + isSaleable() && $product->isVisibleInSiteVisibility()): ?> +
      + +
      + + + +
      +
      +
      +
      + getWishlistItems())+1) ? '
    2. ' : '' ?> + +
    +
    + +
    + +

    + +
    +
    + diff --git a/app/design/frontend/magento_plushe/Magento_Wishlist/view.phtml b/app/design/frontend/magento_plushe/Magento_Wishlist/view.phtml new file mode 100644 index 0000000000000..dc803e1dc10f5 --- /dev/null +++ b/app/design/frontend/magento_plushe/Magento_Wishlist/view.phtml @@ -0,0 +1,81 @@ + +helper('Magento\Wishlist\Helper\Data')->isAllow()) : ?> + helper('Magento\Wishlist\Helper\Data')->isRssAllow() && $this->hasWishlistItems()): ?> + + +
    + getChildHtml('top'); ?> + hasWishlistItems()): ?> + getBlockHtml('formkey');?> + getChildBlock('items')->setItems($this->getWishlistItems()); ?> + getChildHtml('items');?> + +

    + + getChildHtml('bottom'); ?> +
    +
    getChildHtml('control_buttons');?>
    +
    +
    +
    + + + diff --git a/app/design/frontend/magento_plushe/css/print.css b/app/design/frontend/magento_plushe/css/print.css new file mode 100644 index 0000000000000..c522d1b9e47c5 --- /dev/null +++ b/app/design/frontend/magento_plushe/css/print.css @@ -0,0 +1,158 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category design + * @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) + */ + +* { background:none !important; text-align:left !important; } +body { background:#fff !important; font-size:9pt !important; margin:15px !important; } + +.header-container, +.footer-before-container, +.footer-container, +.widget, +.pager, +.toolbar, +.actions, +.buttons-set { display:none !important; } + +.page-print .data-table .cart-tax-total { background-position:100% -54px; } +.page-print .data-table .cart-tax-info { display:block !important; } + + + + +/* + * My Account -> My Orders + * +----------------------------------------------------------------------------- */ +.order-date { + margin-bottom: 15px; +} + +.order.details .title, +.order.details .caption { + clear: both; + margin-bottom: 15px; +} + +.order.details .title strong, +.order.details .caption strong { + line-height: 1.2; + font-weight: 200; + font-size: 20px; +} + +/* blocks */ +.order.details .block.order { + float: left; + width: 48%; + margin-bottom: 30px; + padding-right: 2%; +} +.order.details .block.order .title { + margin-bottom: 15px; +} +.order.details .block.order .title strong { + line-height: 1.2; + font-weight: 200; + font-size: 20px; +} +.order.details .block.order .content address { + font-style: normal; +} +.data.table.order.tracking { + margin: 10px 0; +} + +/* tables */ +.data.table.order { + margin-bottom: 45px; + width: 100%; +} +.data.table.order thead th { + padding: 0 10px; +} +.data.table.order thead tr:last-child th { + padding-bottom: 10px; + border-bottom: 3px solid #e5e5e5; +} +.data.table.order td.col.qty { + width: 90px; + text-align: left; +} +.data.table.order td.col.price, +.data.table.order td.col.subtotal { + text-align: left; +} +.data.table.order td { + padding: 16px 10px 10px; + vertical-align: top; +} +.data.table.order th { + text-align: left; + font-weight: 400; + font-size: 14px; + vertical-align: top; +} +.data.table.order tr:first-child th { + font-weight: 400; + font-size: 16px; +} + +/* h4 */ +.data.table.order td h4 { + margin: 0; +} + +/* .item.options */ +.data.table.order .item.options, +.data.table.order .item-options { + margin: 5px 0; +} +.data.table.order .item.options dt, +.data.table.order .item-options dt { + font-weight: 400; + display: inline; + margin-right: 10px; + float: left; + clear: left; +} +.data.table.order .item.options dt:after, +.data.table.order .item-options dt:after { + content: ': '; +} +.data.table.order .item.options dd, +.data.table.order .item-options dd { + font-weight: 200; + margin: 0 0 10px 10px; + padding: 0; +} + +/* tfoot */ +.data.table.order tfoot tr:first-child td { + border-top: 3px solid #e5e5e5; + padding-top: 15px; +} +.data.table.order.tracking th, +.data.table.order.tracking td { + padding: 0; +} \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/css/styles.css b/app/design/frontend/magento_plushe/css/styles.css new file mode 100644 index 0000000000000..85ba910cf2f2b --- /dev/null +++ b/app/design/frontend/magento_plushe/css/styles.css @@ -0,0 +1,10859 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category design + * @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) + */ +/* normalize.css 2012-03-11T12:53 UTC - http://github.com/necolas/normalize.css */ +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section, +summary { + display: block; +} +audio, +canvas, +video { + display: inline-block; + *display: inline; + *zoom: 1; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden] { + display: none; +} +html { + font-size: 100%; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +html, +button, +input, +select, +textarea { + font-family: sans-serif; +} +body { + margin: 0; +} +a:focus { + outline: thin dotted; +} +a:hover, +a:active { + outline: 0; +} +h1 { + font-size: 2em; + margin: 0.67em 0; +} +h2 { + font-size: 1.5em; + margin: 0.83em 0; +} +h3 { + font-size: 1.17em; + margin: 1em 0; +} +h4 { + font-size: 1em; + margin: 1.33em 0; +} +h5 { + font-size: 0.83em; + margin: 1.67em 0; +} +h6 { + font-size: 0.75em; + margin: 2.33em 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +blockquote { + margin: 1em 40px; +} +dfn { + font-style: italic; +} +mark { + background: #ff0; + color: #000; +} +p, +pre { + margin: 1em 0; +} +pre, +code, +kbd, +samp { + font-family: monospace, serif; + _font-family: 'courier new', monospace; + font-size: 1em; +} +pre { + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; +} +q { + quotes: none; +} +q:before, +q:after { + content: ''; + content: none; +} +small { + font-size: 75%; +} +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +sup { + top: -0.5em; +} +sub { + bottom: -0.25em; +} +dl, +menu, +ol, +ul { + margin: 1em 0; +} +dd { + margin: 0 0 0 40px; +} +menu, +ol, +ul { + padding: 0 0 0 40px; +} +nav ul, +nav ol { + list-style: none; + list-style-image: none; +} +img { + border: 0; + -ms-interpolation-mode: bicubic; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 0; +} +form { + margin: 0; +} +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} +legend { + border: 0; + padding: 0; + white-space: normal; + *margin-left: -7px; +} +button, +input, +select, +textarea { + font-size: 100%; + margin: 0; + vertical-align: baseline; + *vertical-align: middle; +} +button, +input { + line-height: normal; +} +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; + *overflow: visible; +} +button[disabled], +input[disabled] { + cursor: default; +} +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; + padding: 0; + *height: 13px; + *width: 13px; +} +input[type="search"] { + -webkit-appearance: textfield; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-decoration, +input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} +textarea { + overflow: auto; + vertical-align: top; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +@font-face { + font-family: "sourcesanspro"; + src: url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.eot'); + src: url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.woff') format('woff'), url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.ttf') format('truetype'), url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.svg#sourcesanspro') format('svg'); + font-weight: 200; + font-style: normal; +} +@font-face { + font-family: "sourcesanspro"; + src: url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.eot'); + src: url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.woff') format('woff'), url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.ttf') format('truetype'), url('../fonts/sourcesanspro/sourcesanspro-200-normal-webfont.svg#sourcesanspro') format('svg'); + font-weight: 200; + font-style: normal; +} +@font-face { + font-family: "sourcesanspro"; + src: url('../fonts/sourcesanspro/sourcesanspro-400-normal-webfont.eot'); + src: url('../fonts/sourcesanspro/sourcesanspro-400-normal-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/sourcesanspro/sourcesanspro-400-normal-webfont.woff') format('woff'), url('../fonts/sourcesanspro/sourcesanspro-400-normal-webfont.ttf') format('truetype'), url('../fonts/sourcesanspro/sourcesanspro-400-normal-webfont.svg#sourcesanspro') format('svg'); + font-weight: 400; + font-style: normal; +} +@font-face { + font-family: "sourcesanspro"; + src: url('../fonts/sourcesanspro/sourcesanspro-600-normal-webfont.eot'); + src: url('../fonts/sourcesanspro/sourcesanspro-600-normal-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/sourcesanspro/sourcesanspro-600-normal-webfont.woff') format('woff'), url('../fonts/sourcesanspro/sourcesanspro-600-normal-webfont.ttf') format('truetype'), url('../fonts/sourcesanspro/sourcesanspro-600-normal-webfont.svg#sourcesanspro') format('svg'); + font-weight: 600; + font-style: normal; +} +@font-face { + font-family: "sourcesanspro"; + src: url('../fonts/sourcesanspro/sourcesanspro-700-normal-webfont.eot'); + src: url('../fonts/sourcesanspro/sourcesanspro-700-normal-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/sourcesanspro/sourcesanspro-700-normal-webfont.woff') format('woff'), url('../fonts/sourcesanspro/sourcesanspro-700-normal-webfont.ttf') format('truetype'), url('../fonts/sourcesanspro/sourcesanspro-700-normal-webfont.svg#sourcesanspro') format('svg'); + font-weight: 700; + font-style: normal; +} +@font-face { + font-family: "marvel"; + src: url('../fonts/marvel/marvel-400-normal-webfont.eot'); + src: url('../fonts/marvel/marvel-400-normal-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/marvel/marvel-400-normal-webfont.woff') format('woff'), url('../fonts/marvel/marvel-400-normal-webfont.ttf') format('truetype'), url('../fonts/marvel/marvel-400-normal-webfont.svg#marvel') format('svg'); + font-weight: 400; + font-style: normal; +} +@font-face { + font-family: "icons"; + src: url('../fonts/icons/icons.eot'); + src: url('../fonts/icons/icons.eot?#iefix') format('embedded-opentype'), url('../fonts/icons/icons.woff') format('woff'), url('../fonts/icons/icons.ttf') format('truetype'), url('../fonts/icons/icons.svg#icons') format('svg'); + font-weight: 400; + font-style: normal; +} +html, +body, +button, +input, +select, +textarea { + font: 400 14px/1.33 "sourcesanspro"; + color: #675f55; +} +nav ul, +nav ol { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +h1 { + color: #675f55; + font: 200 30px/1.2 "sourcesanspro"; +} +h2 { + color: #675f55; + font: 400 20px/1.2 "sourcesanspro"; +} +h3 { + color: #675f55; + font: 600 18px/1.2 "sourcesanspro"; +} +h4 { + color: #675f55; + font: 600 16px/1.2 "sourcesanspro"; +} +h5 { + color: #675f55; + font: 600 14px/1.2 "sourcesanspro"; +} +h6 { + color: #675f55; + font: 600 12px/1.2 "sourcesanspro"; +} +a { + color: #332e29; + text-decoration: none; +} +a:visited { + color: #332e29; +} +a:hover, +a:active { + color: #da370a; +} +q:before { + content: "\201c"; +} +q:after { + content: "\201d"; +} +q q:before { + content: "\2018"; +} +q q:after { + content: "\2019"; +} +table th { + border-right: 1px solid #e5e5e5; + font-size: 16px; + padding: 7px 10px; +} +table th:last-child { + border-right: 0; +} +table td { + border-right: 1px solid #e5e5e5; + padding: 7px 10px; + vertical-align: top; +} +table td:last-child { + border-right: 0; +} +table tbody tr:nth-child(odd) td { + background: #f8f8f8; +} +blockquote { + margin: 10px 20px 10px 40px; +} +blockquote:before { + color: #999999; + content: "\201C"; + display: block; + font-family: Georgia, serif; + font-size: 60px; + font-style: italic; + position: absolute; + left: 15px; + top: 10px; +} +blockquote cite { + color: #999999; + font-style: italic; + font-size: 12px; + margin: 1em 0; +} +hr { + background: #c2c2c2; + border: 0; + color: #c2c2c2; + height: 1px; + margin: 1em 0; +} +.profileBlockWithBg, +.multicheckout > .block.shipping .box, +.multicheckout > .block.billing .box, +.multicheckout .block.other .content { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #f8f8f8; + padding: 30px; +} +.primary.action, +.action.myPrimary, +input[type="submit"], +input[type="button"], +.form.settings .action.submit, +.fieldset.login .actions .action.login, +.opc .actions .primary .action, +.cart.summary .fieldset .action:not(.check), +.popup .actions .action.submit, +.page.title .action, +.block.add.review .action.submit, +.opc.wrapper .form:not(.login) .actions button.action, +.step.login.wrapper button.action:not(.reload), +.multicheckout .action.continue, +.multicheckout .action.submit, +.multicheckout .action.add, +.cart.summary .block .action, +.action.checkout, +.form.newsletter.manage .action.save, +.action.tocart, +.action.primary.customize, +.action.primary.tocart, +.login.container .action.login, +.login.container .action.create, +.form.send.friend .action.save, +.form.address.edit .action.save, +.form.edit.account .action.save, +.form.search.advanced .action.save, +.form.orders.search .action.save, +.form.contact .action.save, +.form.password.forget .action.save, +.form.create.account .action.save, +.form.wishlist.share .action.save, +.form.password.reset .action.save, +.form.paypal.review .action.save, +.form.send.friend .action.submit, +.form.address.edit .action.submit, +.form.edit.account .action.submit, +.form.search.advanced .action.submit, +.form.orders.search .action.submit, +.form.contact .action.submit, +.form.password.forget .action.submit, +.form.create.account .action.submit, +.form.wishlist.share .action.submit, +.form.password.reset .action.submit, +.form.paypal.review .action.submit, +.form.send.friend .action.add, +.form.address.edit .action.add, +.form.edit.account .action.add, +.form.search.advanced .action.add, +.form.orders.search .action.add, +.form.contact .action.add, +.form.password.forget .action.add, +.form.create.account .action.add, +.form.wishlist.share .action.add, +.form.password.reset .action.add, +.form.paypal.review .action.add, +.form.search.advanced .action, +.form.orders.search .action, +.form.contact .action, +.data.table.wishlist + .actions .primary .action.share, +.data.table.wishlist + .actions .primary .action.update, +.action.myPrimary, +input[type="submit"], +input[type="button"], +.form.settings .action.submit, +.fieldset.login .actions .action.login, +.opc .actions .primary .action, +.cart.summary .fieldset .action:not(.check), +.popup .actions .action.submit, +.page.title .action, +.block.add.review .action.submit, +.opc.wrapper .form:not(.login) .actions button.action, +.step.login.wrapper button.action:not(.reload), +.multicheckout .action.continue, +.multicheckout .action.submit, +.multicheckout .action.add, +.cart.summary .block .action, +.action.checkout, +.form.newsletter.manage .action.save, +.action.tocart, +.action.primary.customize, +.action.primary.tocart, +.login.container .action.login, +.login.container .action.create, +.form.send.friend .action.save, +.form.address.edit .action.save, +.form.edit.account .action.save, +.form.search.advanced .action.save, +.form.orders.search .action.save, +.form.contact .action.save, +.form.password.forget .action.save, +.form.create.account .action.save, +.form.wishlist.share .action.save, +.form.password.reset .action.save, +.form.paypal.review .action.save, +.form.send.friend .action.submit, +.form.address.edit .action.submit, +.form.edit.account .action.submit, +.form.search.advanced .action.submit, +.form.orders.search .action.submit, +.form.contact .action.submit, +.form.password.forget .action.submit, +.form.create.account .action.submit, +.form.wishlist.share .action.submit, +.form.password.reset .action.submit, +.form.paypal.review .action.submit, +.form.send.friend .action.add, +.form.address.edit .action.add, +.form.edit.account .action.add, +.form.search.advanced .action.add, +.form.orders.search .action.add, +.form.contact .action.add, +.form.password.forget .action.add, +.form.create.account .action.add, +.form.wishlist.share .action.add, +.form.password.reset .action.add, +.form.paypal.review .action.add, +.form.search.advanced .action, +.form.orders.search .action, +.form.contact .action, +.data.table.wishlist + .actions .primary .action.share, +.data.table.wishlist + .actions .primary .action.update { + background-color: #da370a; + color: #ffffff; +} +.primary.action:focus, +.primary.action:active, +.primary.action:hover, +.action.myPrimary:focus, +.action.myPrimary:active, +.action.myPrimary:hover, +input[type="submit"]:focus, +input[type="submit"]:active, +input[type="submit"]:hover, +input[type="button"]:focus, +input[type="button"]:active, +input[type="button"]:hover, +.form.settings .action.submit:focus, +.form.settings .action.submit:active, +.form.settings .action.submit:hover, +.fieldset.login .actions .action.login:focus, +.fieldset.login .actions .action.login:active, +.fieldset.login .actions .action.login:hover, +.opc .actions .primary .action:focus, +.opc .actions .primary .action:active, +.opc .actions .primary .action:hover, +.cart.summary .fieldset .action:not(.check):focus, +.cart.summary .fieldset .action:not(.check):active, +.cart.summary .fieldset .action:not(.check):hover, +.popup .actions .action.submit:focus, +.popup .actions .action.submit:active, +.popup .actions .action.submit:hover, +.page.title .action:focus, +.page.title .action:active, +.page.title .action:hover, +.block.add.review .action.submit:focus, +.block.add.review .action.submit:active, +.block.add.review .action.submit:hover, +.opc.wrapper .form:not(.login) .actions button.action:focus, +.opc.wrapper .form:not(.login) .actions button.action:active, +.opc.wrapper .form:not(.login) .actions button.action:hover, +.step.login.wrapper button.action:not(.reload):focus, +.step.login.wrapper button.action:not(.reload):active, +.step.login.wrapper button.action:not(.reload):hover, +.multicheckout .action.continue:focus, +.multicheckout .action.continue:active, +.multicheckout .action.continue:hover, +.multicheckout .action.submit:focus, +.multicheckout .action.submit:active, +.multicheckout .action.submit:hover, +.multicheckout .action.add:focus, +.multicheckout .action.add:active, +.multicheckout .action.add:hover, +.cart.summary .block .action:focus, +.cart.summary .block .action:active, +.cart.summary .block .action:hover, +.action.checkout:focus, +.action.checkout:active, +.action.checkout:hover, +.form.newsletter.manage .action.save:focus, +.form.newsletter.manage .action.save:active, +.form.newsletter.manage .action.save:hover, +.action.tocart:focus, +.action.tocart:active, +.action.tocart:hover, +.action.primary.customize:focus, +.action.primary.customize:active, +.action.primary.customize:hover, +.action.primary.tocart:focus, +.action.primary.tocart:active, +.action.primary.tocart:hover, +.login.container .action.login:focus, +.login.container .action.login:active, +.login.container .action.login:hover, +.login.container .action.create:focus, +.login.container .action.create:active, +.login.container .action.create:hover, +.form.send.friend .action.save:focus, +.form.send.friend .action.save:active, +.form.send.friend .action.save:hover, +.form.address.edit .action.save:focus, +.form.address.edit .action.save:active, +.form.address.edit .action.save:hover, +.form.edit.account .action.save:focus, +.form.edit.account .action.save:active, +.form.edit.account .action.save:hover, +.form.search.advanced .action.save:focus, +.form.search.advanced .action.save:active, +.form.search.advanced .action.save:hover, +.form.orders.search .action.save:focus, +.form.orders.search .action.save:active, +.form.orders.search .action.save:hover, +.form.contact .action.save:focus, +.form.contact .action.save:active, +.form.contact .action.save:hover, +.form.password.forget .action.save:focus, +.form.password.forget .action.save:active, +.form.password.forget .action.save:hover, +.form.create.account .action.save:focus, +.form.create.account .action.save:active, +.form.create.account .action.save:hover, +.form.wishlist.share .action.save:focus, +.form.wishlist.share .action.save:active, +.form.wishlist.share .action.save:hover, +.form.password.reset .action.save:focus, +.form.password.reset .action.save:active, +.form.password.reset .action.save:hover, +.form.paypal.review .action.save:focus, +.form.paypal.review .action.save:active, +.form.paypal.review .action.save:hover, +.form.send.friend .action.submit:focus, +.form.send.friend .action.submit:active, +.form.send.friend .action.submit:hover, +.form.address.edit .action.submit:focus, +.form.address.edit .action.submit:active, +.form.address.edit .action.submit:hover, +.form.edit.account .action.submit:focus, +.form.edit.account .action.submit:active, +.form.edit.account .action.submit:hover, +.form.search.advanced .action.submit:focus, +.form.search.advanced .action.submit:active, +.form.search.advanced .action.submit:hover, +.form.orders.search .action.submit:focus, +.form.orders.search .action.submit:active, +.form.orders.search .action.submit:hover, +.form.contact .action.submit:focus, +.form.contact .action.submit:active, +.form.contact .action.submit:hover, +.form.password.forget .action.submit:focus, +.form.password.forget .action.submit:active, +.form.password.forget .action.submit:hover, +.form.create.account .action.submit:focus, +.form.create.account .action.submit:active, +.form.create.account .action.submit:hover, +.form.wishlist.share .action.submit:focus, +.form.wishlist.share .action.submit:active, +.form.wishlist.share .action.submit:hover, +.form.password.reset .action.submit:focus, +.form.password.reset .action.submit:active, +.form.password.reset .action.submit:hover, +.form.paypal.review .action.submit:focus, +.form.paypal.review .action.submit:active, +.form.paypal.review .action.submit:hover, +.form.send.friend .action.add:focus, +.form.send.friend .action.add:active, +.form.send.friend .action.add:hover, +.form.address.edit .action.add:focus, +.form.address.edit .action.add:active, +.form.address.edit .action.add:hover, +.form.edit.account .action.add:focus, +.form.edit.account .action.add:active, +.form.edit.account .action.add:hover, +.form.search.advanced .action.add:focus, +.form.search.advanced .action.add:active, +.form.search.advanced .action.add:hover, +.form.orders.search .action.add:focus, +.form.orders.search .action.add:active, +.form.orders.search .action.add:hover, +.form.contact .action.add:focus, +.form.contact .action.add:active, +.form.contact .action.add:hover, +.form.password.forget .action.add:focus, +.form.password.forget .action.add:active, +.form.password.forget .action.add:hover, +.form.create.account .action.add:focus, +.form.create.account .action.add:active, +.form.create.account .action.add:hover, +.form.wishlist.share .action.add:focus, +.form.wishlist.share .action.add:active, +.form.wishlist.share .action.add:hover, +.form.password.reset .action.add:focus, +.form.password.reset .action.add:active, +.form.password.reset .action.add:hover, +.form.paypal.review .action.add:focus, +.form.paypal.review .action.add:active, +.form.paypal.review .action.add:hover, +.form.search.advanced .action:focus, +.form.search.advanced .action:active, +.form.search.advanced .action:hover, +.form.orders.search .action:focus, +.form.orders.search .action:active, +.form.orders.search .action:hover, +.form.contact .action:focus, +.form.contact .action:active, +.form.contact .action:hover, +.data.table.wishlist + .actions .primary .action.share:focus, +.data.table.wishlist + .actions .primary .action.share:active, +.data.table.wishlist + .actions .primary .action.share:hover, +.data.table.wishlist + .actions .primary .action.update:focus, +.data.table.wishlist + .actions .primary .action.update:active, +.data.table.wishlist + .actions .primary .action.update:hover { + background-color: #a92b08; +} +.secondary.action, +.action.mySecondary, +input[type="reset"], +.action.mySecondaryButton, +.popup .actions .action.cancel, +.multicheckout .action.update, +.cart.main.actions .action.update, +.cart.main.actions .action.clear, +.block.compare .action.compare, +.data.comparison .cell.remove .action.delete, +.form.send.friend .actions > .primary .action.add, +.paypal.review.view .actions .action.update, +.shipping-tracking-popup .action.close, +.action.mySecondary, +input[type="reset"], +.action.mySecondaryButton, +.popup .actions .action.cancel, +.multicheckout .action.update, +.cart.main.actions .action.update, +.cart.main.actions .action.clear, +.block.compare .action.compare, +.data.comparison .cell.remove .action.delete, +.form.send.friend .actions > .primary .action.add, +.paypal.review.view .actions .action.update, +.shipping-tracking-popup .action.close { + background-color: #c2c2c2; + color: #ffffff; +} +.secondary.action:focus, +.secondary.action:active, +.secondary.action:hover, +.action.mySecondary:focus, +.action.mySecondary:active, +.action.mySecondary:hover, +input[type="reset"]:focus, +input[type="reset"]:active, +input[type="reset"]:hover, +.action.mySecondaryButton:focus, +.action.mySecondaryButton:active, +.action.mySecondaryButton:hover, +.popup .actions .action.cancel:focus, +.popup .actions .action.cancel:active, +.popup .actions .action.cancel:hover, +.multicheckout .action.update:focus, +.multicheckout .action.update:active, +.multicheckout .action.update:hover, +.cart.main.actions .action.update:focus, +.cart.main.actions .action.update:active, +.cart.main.actions .action.update:hover, +.cart.main.actions .action.clear:focus, +.cart.main.actions .action.clear:active, +.cart.main.actions .action.clear:hover, +.block.compare .action.compare:focus, +.block.compare .action.compare:active, +.block.compare .action.compare:hover, +.data.comparison .cell.remove .action.delete:focus, +.data.comparison .cell.remove .action.delete:active, +.data.comparison .cell.remove .action.delete:hover, +.form.send.friend .actions > .primary .action.add:focus, +.form.send.friend .actions > .primary .action.add:active, +.form.send.friend .actions > .primary .action.add:hover, +.paypal.review.view .actions .action.update:focus, +.paypal.review.view .actions .action.update:active, +.paypal.review.view .actions .action.update:hover, +.shipping-tracking-popup .action.close:focus, +.shipping-tracking-popup .action.close:active, +.shipping-tracking-popup .action.close:hover { + background-color: #a9a9a9; +} +.button.link, +.action.myLink, +.fieldset .fields.dates .field .ui-datepicker-trigger, +.multicheckout.success .action.continue { + background: none; + border: 0; + display: inline; + color: #332e29; + margin: 0; + padding: 0; + text-decoration: underline; +} +.button.link:focus, +.button.link:active, +.button.link:hover, +.action.myLink:focus, +.action.myLink:active, +.action.myLink:hover, +.fieldset .fields.dates .field .ui-datepicker-trigger:focus, +.fieldset .fields.dates .field .ui-datepicker-trigger:active, +.fieldset .fields.dates .field .ui-datepicker-trigger:hover, +.multicheckout.success .action.continue:focus, +.multicheckout.success .action.continue:active, +.multicheckout.success .action.continue:hover { + color: #da370a; + text-decoration: none; +} +.button.action, +.primary.action, +.secondary.action, +.action.myPrimary, +.action.mySecondary, +input[type="submit"], +input[type="button"], +input[type="reset"], +.form.settings .action.submit, +.fieldset.login .actions .action.login, +.action.mySecondaryButton, +.opc .actions .primary .action, +.cart.summary .fieldset .action:not(.check), +.popup .actions .action.submit, +.popup .actions .action.cancel, +.page.title .action, +.block.add.review .action.submit, +.opc.wrapper .form:not(.login) .actions button.action, +.step.login.wrapper button.action:not(.reload), +.multicheckout .action.update, +.multicheckout .action.continue, +.multicheckout .action.submit, +.multicheckout .action.add, +.cart.main.actions .action.update, +.cart.main.actions .action.clear, +.cart.summary .block .action, +.action.checkout, +.form.newsletter.manage .action.save, +.block.compare .action.compare, +.data.comparison .cell.remove .action.delete, +.action.tocart, +.action.primary.customize, +.action.primary.tocart, +.login.container .action.login, +.login.container .action.create, +.form.send.friend .action.save, +.form.address.edit .action.save, +.form.edit.account .action.save, +.form.search.advanced .action.save, +.form.orders.search .action.save, +.form.contact .action.save, +.form.password.forget .action.save, +.form.create.account .action.save, +.form.wishlist.share .action.save, +.form.password.reset .action.save, +.form.paypal.review .action.save, +.form.send.friend .action.submit, +.form.address.edit .action.submit, +.form.edit.account .action.submit, +.form.search.advanced .action.submit, +.form.orders.search .action.submit, +.form.contact .action.submit, +.form.password.forget .action.submit, +.form.create.account .action.submit, +.form.wishlist.share .action.submit, +.form.password.reset .action.submit, +.form.paypal.review .action.submit, +.form.send.friend .action.add, +.form.address.edit .action.add, +.form.edit.account .action.add, +.form.search.advanced .action.add, +.form.orders.search .action.add, +.form.contact .action.add, +.form.password.forget .action.add, +.form.create.account .action.add, +.form.wishlist.share .action.add, +.form.password.reset .action.add, +.form.paypal.review .action.add, +.form.send.friend .actions > .primary .action.add, +.form.search.advanced .action, +.form.orders.search .action, +.form.contact .action, +.paypal.review.view .actions .action.update, +.data.table.wishlist + .actions .primary .action.share, +.data.table.wishlist + .actions .primary .action.update, +.shipping-tracking-popup .action.close { + border: none; + border-radius: 0; + font: 600 14px/16px; + text-transform: uppercase; + margin: 0; + padding: 9px 11px 9px; + box-shadow: none; + text-shadow: none; + outline: none; + text-decoration: none; +} +.action + .action { + margin-left: 5px; +} +.hasRequired:after, +.form.validation:after, +.opc .form:after { + content: attr(data-hasrequired); + display: block; + font-size: 14px; + margin: 10px 0 0; + color: #da370a; + letter-spacing: normal; + word-spacing: normal; +} +.load.indicator { + display: inline-block; + margin: 20px auto; + padding: 8px; + vertical-align: middle; +} +.load.indicator span { + display: block; + line-height: 16px; +} +.load.indicator span:before { + content: ''; + margin-right: 5px; + display: inline-block; + width: 16px; + height: 16px; + background: url("../images/loader.gif") no-repeat 0 0; + background-color: #da370a; + vertical-align: top; +} +.form .actions { + margin-right: 10px; + text-align: right; +} +.fieldset { + border: 0; + margin: 30px 10px 30px 30px; + padding: 0; + letter-spacing: -0.31em; + word-spacing: -0.43em; +} +.fieldset > * { + letter-spacing: normal; + word-spacing: normal; +} +.fieldset > .legend { + float: left; + font: 400 20px/1.2 "sourcesanspro"; + margin: -30px 30px 50px -30px; + width: 100%; +} +.fieldset > .legend + br { + display: block; + *zoom: 1; +} +.fieldset > .legend + br:before, +.fieldset > .legend + br:after { + content: ""; + display: table; +} +.fieldset > .legend + br:after { + clear: both; +} +.fieldset > .field { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: 0 0 20px; +} +.fieldset > .field > .label { + display: block; + padding-bottom: 5px; +} +.fieldset > .field .nested .field { + margin: 5px 0; +} +.fieldset > .field.choice > .control { + width: auto; +} +.fieldset > .field.choice > .label { + display: inline; +} +.fieldset > .field.choice > input { + vertical-align: top; + margin-top: 2px; + margin-right: 5px; +} +.fieldset > .field.required > .label > span:first-child:after { + content: '*'; + color: #da370a; +} +.fieldset > .field .addon { + display: table; + padding: 0; + width: 100%; +} +.fieldset > .field .addon textarea, +.fieldset > .field .addon select, +.fieldset > .field .addon input { + box-shadow: none; + display: table-cell; + margin: 0; + width: 100%; +} +.fieldset > .field .addon .addbefore, +.fieldset > .field .addon .addafter { + height: 0; + white-space: nowrap; + display: inline-block; + display: table-cell; + vertical-align: middle; + width: 1px; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #ffffff; + border: 1px solid #c2c2c2; + border-radius: 3px; + font: 400 14px "sourcesanspro"; + /* Prevent background color leak outs */ + + background-clip: padding-box; + outline: none; + height: 32px; + line-height: 1; + padding: 0 10px; +} +.fieldset > .field .addon .addbefore:focus, +.fieldset > .field .addon .addafter:focus { + border-color: #999999; +} +.control .fieldset > .field .addon .addbefore, +.control .fieldset > .field .addon .addafter { + width: 100%; +} +.fieldset > .field .addon .addbefore:disabled, +.fieldset > .field .addon .addafter:disabled { + opacity: 0.5; +} +.fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.fieldset > .field .addon .addafter::-webkit-input-placeholder { + line-height: 1.333; +} +.fieldset > .field .addon .addbefore:-ms-input-placeholder, +.fieldset > .field .addon .addafter:-ms-input-placeholder { + line-height: 1.333; +} +.eq-ie8 .fieldset > .field .addon .addbefore, +.eq-ie8 .fieldset > .field .addon .addafter { + padding-top: 8px; +} +.fieldset > .field .note { + font-size: 12px; + margin-top: 3px; + padding-left: 15px; +} +.fieldset > .field .note:before { + border-bottom: 5px solid #675f55; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + content: ''; + display: inline-block; + font-size: 0; + line-height: 0; + margin: 4px 0 0 -14px; + position: absolute; + vertical-align: top; + width: 0; +} +.fieldset .fields.range .field { + display: inline-block; + letter-spacing: normal; + margin: 0; + vertical-align: top; + word-spacing: normal; +} +.fieldset .fields.range .field:first-child .control { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + padding-right: 30px; +} +.fieldset .fields.range .field:first-child .control:after { + content: '\2014'; + display: inline-block; + margin-right: -30px; + text-align: center; + width: 29px; +} +.fieldset .fields.range .field:first-child input { + width: 98%; +} +.fieldset .fields.dates .field { + display: inline-block; + letter-spacing: normal; + margin: 0 25px 0 0; + padding: 0 34px 0 0; + position: relative; + vertical-align: top; +} +.fieldset .fields.dates .field:first-child { + margin: 0 30px 0 0; +} +.fieldset .fields.dates .field:first-child .control { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.fieldset .fields.dates .field:first-child .control:after { + content: '\2014'; + display: inline-block; + position: absolute; + right: -39px; + top: 7px; + width: 29px; +} +.fieldset .fields.dates .field .ui-datepicker-trigger { + text-decoration: none; + position: absolute; + right: 0; + top: 9px; +} +input[type="text"], +input[type="search"], +input[type="tel"], +input[type="url"], +input[type="email"], +input[type="datetime"], +input[type="password"] { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #ffffff; + border: 1px solid #c2c2c2; + border-radius: 3px; + font: 400 14px "sourcesanspro"; + /* Prevent background color leak outs */ + + background-clip: padding-box; + outline: none; + height: 32px; + line-height: 1; + padding: 0 10px; +} +input[type="text"]:focus, +input[type="search"]:focus, +input[type="tel"]:focus, +input[type="url"]:focus, +input[type="email"]:focus, +input[type="datetime"]:focus, +input[type="password"]:focus { + border-color: #999999; +} +.control input[type="text"], +.control input[type="search"], +.control input[type="tel"], +.control input[type="url"], +.control input[type="email"], +.control input[type="datetime"], +.control input[type="password"] { + width: 100%; +} +input[type="text"]:disabled, +input[type="search"]:disabled, +input[type="tel"]:disabled, +input[type="url"]:disabled, +input[type="email"]:disabled, +input[type="datetime"]:disabled, +input[type="password"]:disabled { + opacity: 0.5; +} +input[type="text"]::-webkit-input-placeholder, +input[type="search"]::-webkit-input-placeholder, +input[type="tel"]::-webkit-input-placeholder, +input[type="url"]::-webkit-input-placeholder, +input[type="email"]::-webkit-input-placeholder, +input[type="datetime"]::-webkit-input-placeholder, +input[type="password"]::-webkit-input-placeholder { + line-height: 1.333; +} +input[type="text"]:-ms-input-placeholder, +input[type="search"]:-ms-input-placeholder, +input[type="tel"]:-ms-input-placeholder, +input[type="url"]:-ms-input-placeholder, +input[type="email"]:-ms-input-placeholder, +input[type="datetime"]:-ms-input-placeholder, +input[type="password"]:-ms-input-placeholder { + line-height: 1.333; +} +.eq-ie8 input[type="text"], +.eq-ie8 input[type="search"], +.eq-ie8 input[type="tel"], +.eq-ie8 input[type="url"], +.eq-ie8 input[type="email"], +.eq-ie8 input[type="datetime"], +.eq-ie8 input[type="password"] { + padding-top: 8px; +} +select { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #ffffff; + border: 1px solid #c2c2c2; + border-radius: 3px; + font: 400 14px "sourcesanspro"; + /* Prevent background color leak outs */ + + background-clip: padding-box; + outline: none; + padding: 5px 10px 4px; +} +select:focus { + border-color: #999999; +} +.control select { + width: 100%; +} +select:disabled { + opacity: 0.5; +} +select.multiselect { + height: auto; +} +textarea { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #ffffff; + border: 1px solid #c2c2c2; + border-radius: 3px; + font: 400 14px "sourcesanspro"; + /* Prevent background color leak outs */ + + background-clip: padding-box; + outline: none; + height: auto; + line-height: 1.2; + min-height: 4.8em; + padding: 10px; + resize: vertical; +} +textarea:focus { + border-color: #999999; +} +.control textarea { + width: 100%; +} +textarea:disabled { + opacity: 0.5; +} +.fieldset textarea.valid, +.fieldset select.valid, +.fieldset input[type="text"].valid, +.fieldset input[type="search"].valid, +.fieldset input[type="tel"].valid, +.fieldset input[type="url"].valid, +.fieldset input[type="email"].valid, +.fieldset input[type="datetime"].valid, +.fieldset input[type="password"].valid { + border-color: #42b649 !important; +} +.fieldset textarea.mage-error, +.fieldset select.mage-error, +.fieldset input[type="text"].mage-error, +.fieldset input[type="search"].mage-error, +.fieldset input[type="tel"].mage-error, +.fieldset input[type="url"].mage-error, +.fieldset input[type="email"].mage-error, +.fieldset input[type="datetime"].mage-error, +.fieldset input[type="password"].mage-error { + border-color: #da370a !important; +} +.fieldset div.mage-error[generated] { + color: #da370a !important; + font-size: 12px; + padding-top: 4px; +} +.form.validation .fieldset { + margin: 20px 0; +} +.form.settings .field { + display: inline-block; + padding-right: 20px; + vertical-align: top; + width: 50%; +} +.form.settings .nested .field { + width: 100%; +} +.form.settings .actions { + margin-right: 30px; +} +.ui-datepicker { + background: #efefef; + border: 4px solid #ffffff; + box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.35); + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + display: none; + padding: 15px; + width: auto; + z-index: 999999 !important; +} +.ui-datepicker .ui-datepicker-header { + position: relative; + padding: .2em 0; +} +.ui-datepicker .ui-datepicker-prev, +.ui-datepicker .ui-datepicker-next { + position: absolute; + top: 2px; + width: 1.8em; + height: 1.8em; + cursor: pointer; +} +.ui-datepicker .ui-datepicker-prev span, +.ui-datepicker .ui-datepicker-next span { + border: solid; + display: block; + font-size: 0; + margin-top: -5px; + position: absolute; + left: 50%; + top: 50%; + width: 0; + height: 0; +} +.ui-datepicker .ui-datepicker-prev { + left: 2px; +} +.ui-datepicker .ui-datepicker-prev span { + margin-left: -8px; + border-width: 5px 8px 5px 0; + border-color: transparent #da370a transparent transparent; +} +.ui-datepicker .ui-datepicker-prev.ui-datepicker-prev-hover span { + border-color: transparent #a92b08 transparent transparent; +} +.ui-datepicker .ui-datepicker-next { + right: 2px; +} +.ui-datepicker .ui-datepicker-next span { + margin-left: 0; + border-width: 5px 0 5px 8px; + border-color: transparent transparent transparent #da370a; +} +.ui-datepicker .ui-datepicker-next.ui-datepicker-next-hover span { + border-color: transparent transparent transparent #a92b08; +} +.ui-datepicker .ui-datepicker-title { + margin: 0 2.3em; + line-height: 1.8em; + text-align: center; +} +.ui-datepicker .ui-datepicker-title select { + margin: 1px 0; + padding: 0; +} +.ui-datepicker .ui-datepicker-title .ui-datepicker-month, +.ui-datepicker .ui-datepicker-title .ui-datepicker-year { + width: 47%; +} +.ui-datepicker .ui-datepicker-title .ui-datepicker-month { + margin-right: 6%; +} +.ui-datepicker .ui-datepicker-title .ui-datepicker-month-year { + width: 100%; +} +.ui-datepicker table { + width: 100%; + font-size: 12px; +} +.ui-datepicker th { + font-size: 12px; +} +.ui-datepicker td { + padding: 0; +} +.ui-datepicker td span, +.ui-datepicker td a { + color: #000000; + display: block; + line-height: 14px; + padding: 4px; + text-align: right; + text-decoration: none; +} +.ui-datepicker .ui-datepicker-buttonpane { + overflow: hidden; + padding-top: 10px; +} +.ui-datepicker .ui-datepicker-buttonpane button { + float: right; +} +.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { + float: left; +} +.ui-datepicker .ui-datepicker-calendar { + background: #ffffff; + border: 1px solid #cfcfcf; +} +.ui-datepicker .ui-datepicker-calendar th { + background: #efefef; + border: 1px solid #cfcfcf; + padding: 4px; + text-transform: uppercase; +} +.ui-datepicker .ui-datepicker-calendar td { + border: 1px solid #cfcfcf; +} +.ui-datepicker .ui-datepicker-calendar td a { + padding: 4px; + display: block; +} +.ui-datepicker .ui-datepicker-calendar td .ui-state-hover:hover { + background: #f9eae7; +} +.ui-datepicker .ui-datepicker-calendar .ui-datepicker-week-col { + text-align: center; + border: 1px solid #cfcfcf; +} +.ui-datepicker .ui-datepicker-calendar .ui-datepicker-today { + background: #f3d7d2; +} +.ui-datepicker .ui-datepicker-calendar .ui-state-active { + background: #f77653; +} +.ui-datepicker .ui-datepicker-calendar .ui-state-disabled { + background: #f9f9f9; +} +.ui-datepicker .ui-datepicker-calendar .ui-state-disabled span { + color: #959595; +} +.ui-datepicker-rtl { + direction: rtl; +} +.ui-datepicker-rtl .ui-datepicker-prev { + right: 2px; + left: auto; +} +.ui-datepicker-rtl .ui-datepicker-prev:hover { + right: 1px; + left: auto; +} +.ui-datepicker-rtl .ui-datepicker-next { + left: 2px; + right: auto; +} +.ui-datepicker-rtl .ui-datepicker-next:hover { + left: 1px; + right: auto; +} +.ui-datepicker-rtl .ui-datepicker-buttonpane { + clear: right; +} +.ui-datepicker-rtl .ui-datepicker-buttonpane button { + float: left; +} +.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { + float: right; +} +.ui-datepicker-rtl .ui-datepicker-group { + float: right; +} +.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { + border-right-width: 0; + border-left-width: 1px; +} +.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { + border-right-width: 0; + border-left-width: 1px; +} +.ui-timepicker-div { + padding: 10px 0 5px 0; +} +.ui-timepicker-div .ui-widget-header { + margin-bottom: 8px; +} +.ui-timepicker-div dl { + text-align: left; +} +.ui-timepicker-div dl dt { + height: 25px; + margin-bottom: -22px; +} +.ui-timepicker-div dl dd { + margin: 0 10px 10px 65px; +} +.ui-timepicker-div dl .ui_tpicker_time_label { + margin-bottom: -25px; +} +.ui-timepicker-div td { + font-size: 90%; +} +.ui-tpicker-grid-label { + background: none; + border: none; + margin: 0; + padding: 0; +} +.ui-slider { + position: relative; + text-align: left; +} +.ui-slider .ui-slider-handle { + position: absolute; + z-index: 2; + cursor: default; +} +.ui-slider-horizontal { + border-radius: 10px; + border: none; + background: #efefef; + height: 10px; +} +.ui-slider-horizontal .ui-slider-handle { + margin-left: -5px; + height: 10px; + width: 10px; + border-radius: 10px; + background: #da370a; + display: block; + position: absolute; +} +.clearlessgrid1 { + width: 100%; +} +.clearlessgrid1 > .grid-1 { + float: left; + margin-right: 0%; + width: 100%; + margin-right: 0; + float: right; +} +.clearlessgrid2 { + width: 100%; +} +.clearlessgrid2 .main { + float: left; + margin-right: 0%; + width: 75%; +} +.clearlessgrid2 .sidebar { + float: left; + margin-right: 0%; + width: 25%; + margin-right: 0; + float: right; +} +.clearlessgrid3 { + width: 100%; +} +.clearlessgrid3 .main { + float: left; + margin-right: 0%; + width: 75%; + margin-right: 0; + float: right; +} +.clearlessgrid3 .sidebar { + float: left; + margin-right: 0%; + width: 25%; +} +.clearlessgrid4 { + width: 100%; +} +.clearlessgrid4 .main { + float: left; + margin-right: 0%; + width: 50%; +} +.clearlessgrid4 .sidebar1, +.clearlessgrid4 .sidebar2 { + float: left; + margin-right: 0%; + width: 25%; +} +.clearlessgrid4 .sidebar2 { + margin-right: 0; + float: right; +} +.clearlessgrid5 { + width: 100%; +} +.clearlessgrid5 > .grid-1 { + float: left; + margin-right: 0%; + width: 25%; +} +.clearlessgrid5 > .grid-1:last-child { + margin-right: 0; + float: right; +} +.clearlessgrid6 { + width: 100%; +} +.clearlessgrid6 > .grid-1 { + float: left; + margin-right: 0%; + width: 16.666666666666664%; +} +.clearlessgrid6 > .grid-1:last-child { + margin-right: 0; + float: right; +} +.clearlessgrid12 { + width: 100%; +} +.clearlessgrid12 > .grid-1 { + float: left; + margin-right: 0%; + width: 8.333333333333332%; +} +.clearlessgrid12 > .grid-1:last-child { + margin-right: 0; + float: right; +} +.inlinegrid1 { + letter-spacing: -0.31em; + *letter-spacing: normal; + word-spacing: -0.43em; +} +.inlinegrid1 > .grid-1 { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 100%; + margin-right: 0; +} +.inlinegrid2 { + letter-spacing: -0.31em; + *letter-spacing: normal; + word-spacing: -0.43em; +} +.inlinegrid2 .main { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 75%; +} +.inlinegrid2 .sidebar { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 25%; + margin-right: 0; +} +.inlinegrid3 { + letter-spacing: -0.31em; + *letter-spacing: normal; + word-spacing: -0.43em; +} +.inlinegrid3 .main { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 75%; + margin-right: 0; +} +.inlinegrid3 .sidebar { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 25%; +} +.inlinegrid4 { + letter-spacing: -0.31em; + *letter-spacing: normal; + word-spacing: -0.43em; +} +.inlinegrid4 .main { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 50%; +} +.inlinegrid4 .sidebar1, +.inlinegrid4 .sidebar2 { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 25%; +} +.inlinegrid4 .sidebar2 { + margin-right: 0; +} +.inlinegrid5 { + letter-spacing: -0.31em; + *letter-spacing: normal; + word-spacing: -0.43em; +} +.inlinegrid5 > .grid-1 { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 25%; +} +.inlinegrid5 > .grid-1:last-child { + margin-right: 0; +} +.inlinegrid6 { + letter-spacing: -0.31em; + *letter-spacing: normal; + word-spacing: -0.43em; +} +.inlinegrid6 > .grid-1 { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 16.666666666666664%; +} +.inlinegrid6 > .grid-1:last-child { + margin-right: 0; +} +.inlinegrid12 { + letter-spacing: -0.31em; + *letter-spacing: normal; + word-spacing: -0.43em; +} +.inlinegrid12 > .grid-1 { + display: inline-block; + *display: inline; + *zoom: 1; + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + margin-right: 0%; + width: 8.333333333333332%; +} +.inlinegrid12 > .grid-1:last-child { + margin-right: 0; +} +.gridwrapper > div, +.inlinegridwrapper > div { + background: #e5e5e5; + border: 1px solid #999; + padding: 5px 0; + text-align: center; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.example.icon { + display: inline-block; + margin: 0 0 16px; + width: 20%; + text-align: center; +} +.example.icon:before { + font-family: "icons"; + font-size: 32px; + line-height: 32px; + height: 32px; + margin: 0 0 10px 0; + overflow: hidden; + content: ""; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.example.icon:before { + content: attr(data-icon); + display: block; +} +.example.icon:hover { + color: #55c2e6; +} +.action.showcart1:before { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0 5px 0 0; + overflow: hidden; + content: "\e014"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.showcart2:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0 0 0 10px; + overflow: hidden; + content: "\e014"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.showcart3 { + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; +} +.action.showcart3:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 10px; + overflow: hidden; + content: "\e014"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.showcart3:active { + outline: 0; +} +.action.showcart3:after { + text-indent: 0; + display: block; + margin: 0; +} +ul.messages { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +.message.base, +.message.error, +.message.success, +.message.notice, +.message.info, +.error-msg, +.success-msg, +.notice-msg, +.note-msg { + display: block; + *zoom: 1; + padding: 13px 60px 12px 20px; + margin: 3px 0 3px; + border-radius: 3px; + position: relative; + line-height: 16px; + z-index: 1; +} +.message.base:before, +.message.base:after, +.message.error:before, +.message.error:after, +.message.success:before, +.message.success:after, +.message.notice:before, +.message.notice:after, +.message.info:before, +.message.info:after, +.error-msg:before, +.error-msg:after, +.success-msg:before, +.success-msg:after, +.notice-msg:before, +.notice-msg:after, +.note-msg:before, +.note-msg:after { + content: ""; + display: table; +} +.message.base:after, +.message.error:after, +.message.success:after, +.message.notice:after, +.message.info:after, +.error-msg:after, +.success-msg:after, +.notice-msg:after, +.note-msg:after { + clear: both; +} +.message.base:before, +.message.error:before, +.message.success:before, +.message.notice:before, +.message.info:before, +.error-msg:before, +.success-msg:before, +.notice-msg:before, +.note-msg:before { + content: ''; + position: absolute; + width: 31px; + text-align: center; + right: 0; + top: 0; + height: 100%; + display: block; + padding: 0; + border-radius: 3px; + z-index: 1; +} +.message.base > *:first-child:before, +.message.error > *:first-child:before, +.message.success > *:first-child:before, +.message.notice > *:first-child:before, +.message.info > *:first-child:before, +.error-msg > *:first-child:before, +.success-msg > *:first-child:before, +.notice-msg > *:first-child:before, +.note-msg > *:first-child:before { + content: ''; + width: 0; + height: 0; + border: 5px solid transparent; + border-right-color: #ffc000; + position: absolute; + overflow: hidden; + top: 50%; + margin-top: -3px; + right: 31px; + z-index: 2; +} +.message.base > *:first-child:after, +.message.error > *:first-child:after, +.message.success > *:first-child:after, +.message.notice > *:first-child:after, +.message.info > *:first-child:after, +.error-msg > *:first-child:after, +.success-msg > *:first-child:after, +.notice-msg > *:first-child:after, +.note-msg > *:first-child:after { + font-family: "icons"; + color: #ffffff; + font-size: 20px; + line-height: 20px; + position: absolute; + top: 50%; + right: 0; + margin-top: -10px; + width: 31px; + text-align: center; + display: block; + z-index: 3; +} +.message.base ul, +.message.error ul, +.message.success ul, +.message.notice ul, +.message.info ul, +.error-msg ul, +.success-msg ul, +.notice-msg ul, +.note-msg ul { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +.message.base li, +.message.error li, +.message.success li, +.message.notice li, +.message.info li, +.error-msg li, +.success-msg li, +.notice-msg li, +.note-msg li { + margin-top: 5px; +} +.message.base li:first-child, +.message.error li:first-child, +.message.success li:first-child, +.message.notice li:first-child, +.message.info li:first-child, +.error-msg li:first-child, +.success-msg li:first-child, +.notice-msg li:first-child, +.note-msg li:first-child { + margin-top: 0; +} +.message.error, +.error-msg, +.error-msg { + background: #ffd9d0; + color: #911c00; +} +.message.error:before, +.error-msg:before { + background: #ff3200; +} +.message.error > *:first-child:before, +.error-msg > *:first-child:before { + border-right-color: #ff3200; +} +.message.error > *:first-child:after, +.error-msg > *:first-child:after { + content: "\e00e"; +} +.message.success, +.success-msg, +.success-msg { + background: #d3edd5; + color: #1b6720; +} +.message.success:before, +.success-msg:before { + background: #42b649; +} +.message.success > *:first-child:before, +.success-msg > *:first-child:before { + border-right-color: #42b649; +} +.message.success > *:first-child:after, +.success-msg > *:first-child:after { + content: "\e013"; +} +.message.notice, +.notice-msg, +.note-msg, +.notice-msg, +.note-msg { + background: #ffedb8; + color: #926e00; +} +.message.notice:before, +.notice-msg:before, +.note-msg:before { + background: #ffc000; +} +.message.notice > *:first-child:before, +.notice-msg > *:first-child:before, +.note-msg > *:first-child:before { + border-right-color: #ffc000; +} +.message.notice > *:first-child:after, +.notice-msg > *:first-child:after, +.note-msg > *:first-child:after { + content: "\e00a"; +} +.message.info { + background: #ffedb8; + color: #926e00; + border: 1px solid #ffe085; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.message.info:before { + background: #ffc000; + top: -2px; + height: auto; + bottom: -2px; +} +.message.info > *:first-child:before { + border-right-color: #ffc000; +} +.message.info > *:first-child:after { + content: "\e00a"; +} +.navigation { + background-color: #d6d7d2; + background-image: url("../images/header-bg.jpg"); + background-repeat: repeat; + background-position: 0 0; + border-top: 1px solid; + border-color: #f6f6f5; + position: relative; + z-index: 2; + *zoom: 1; +} +.navigation:before, +.navigation:after { + content: ""; + display: table; +} +.navigation:after { + clear: both; +} +.navigation > ul > .level-top { + display: inline-block; + line-height: 1.2; + vertical-align: top; + padding-right: 40px; +} +.navigation > ul > .level-top:last-child { + padding-right: 0; +} +.navigation > ul > .level-top.active > a:after { + opacity: 1; + border-bottom-color: #ffffff; +} +.navigation > ul > .level-top.hover > a:after { + border-bottom-color: #f8f8f8; +} +.navigation > ul > .level-top.hover > .submenu { + border-bottom: 1px solid #c2c2c2; +} +.navigation > ul > .level-top.hover > .submenu, +.navigation > ul > .level-top:hover > .submenu { + z-index: 2; +} +.navigation > ul > .level-top.hover:hover > a span, +.navigation > ul > .level-top:hover:hover > a span, +.navigation > ul > .level-top.hover.parent.hover > a span, +.navigation > ul > .level-top:hover.parent.hover > a span, +.navigation > ul > .level-top.hover.parent > a span, +.navigation > ul > .level-top:hover.parent > a span { + color: #675f55; +} +.navigation > ul > .level-top.hover:hover > a:after, +.navigation > ul > .level-top:hover:hover > a:after, +.navigation > ul > .level-top.hover.hover > a:after, +.navigation > ul > .level-top:hover.hover > a:after, +.navigation > ul > .level-top.hover.parent > a:after, +.navigation > ul > .level-top:hover.parent > a:after { + opacity: 1; +} +.navigation > ul > .level-top.more:after { + cursor: pointer; + content: "\e010"; + font-family: "icons"; + font-size: 16px; + display: inline-block; + padding: .6em .7em 1em; + margin-top: 0.4em; + border-radius: 4px 4px 0 0; + position: relative; + z-index: 1; +} +.navigation > ul > .level-top.more.hover:after { + background: #f8f8f8; +} +.navigation > ul > .level-top.more li.level-top { + width: 200px; + margin: 0 0 0 -10px !important; + padding: 7px 10px 7px 30px; +} +.navigation > ul > .level-top.more li.level-top > a { + font-size: 16px; +} +.navigation > ul > .level-top.more li.level-top.hover, +.navigation > ul > .level-top.more li.level-top:hover { + background: #f8f8f8; +} +.navigation > ul > .level-top.more li.level-top.hover > a span, +.navigation > ul > .level-top.more li.level-top:hover > a span { + color: #675f55; +} +.navigation > ul > .level-top.more li.level-top.hover.parent:before, +.navigation > ul > .level-top.more li.level-top:hover.parent:before { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0 8px 0 0; + overflow: hidden; + content: "\e01a"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.navigation > ul > .level-top.more li.level-top.hover.parent:before, +.navigation > ul > .level-top.more li.level-top:hover.parent:before { + float: right; + color: #da370a; +} +.navigation > ul > .level-top.more li.level-top.hover .submenu, +.navigation > ul > .level-top.more li.level-top:hover .submenu { + display: block !important; +} +.navigation > ul > .level-top.more li.level-top > a span { + color: #837d75; +} +.navigation > ul > .level-top.more li.level-top .submenu { + display: none; +} +.navigation > ul > .level-top.more li.level-top > .submenu { + position: absolute; + right: 0; + padding: 0; + left: 0; + top: 0; + margin-left: 230px; + min-height: 100%; + background: #f8f8f8; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.3); + box-shadow: 0 10px 8px rgba(0, 0, 0, 0.3); +} +.no-boxshadow .navigation > ul > .level-top.more li.level-top > .submenu { + border: 2px solid #c2c2c2; + border-width: 0 2px 2px; +} +.navigation > ul > .level-top.more li.level-top > .submenu > ul { + background: #f8f8f8; + position: relative; + z-index: 1; + padding: 10px; +} +.navigation > ul > .level-top.more > .submenu { + background: none; + border-width: 0; +} +.navigation > ul > .level-top.more > .submenu > ul { + position: relative; +} +.navigation > ul > .level-top > a { + position: relative; + display: inline-block; + vertical-align: top; + padding: 1em 0; + font-size: 16px; + text-align: center; + color: #837d75; +} +.navigation > ul > .level-top > a:after { + opacity: 0; + content: ''; + overflow: hidden; + display: block; + position: absolute; + bottom: 0; + left: 50%; + zoom: 1; + z-index: 2; + color: #675f55; + width: 0; + height: 0; + border: 10px solid transparent; +} +.navigation > ul > .level-top > a > span { + color: #837d75; +} +.navigation > ul > .level-top > a:active span, +.navigation > ul > .level-top > a:focus span { + color: #675f55; +} +.navigation > ul > .level-top > a:active:after, +.navigation > ul > .level-top > a:focus:after { + opacity: 1; +} +.navigation > ul > .level-top > .submenu { + display: none; + position: absolute; + left: 0; + top: 100%; + background: #f8f8f8; + width: 100%; + z-index: 1; +} +.navigation > ul > .level-top > .submenu > ul { + height: auto; + padding-top: 45px; + padding-bottom: 45px; +} +.navigation > ul > .level-top > .submenu > ul li.column { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + width: 25%; + display: inline-block; + padding-right: 30px; + vertical-align: top; +} +.navigation > ul > .level-top > .submenu > ul .level1 > a { + text-transform: uppercase; +} +.navigation > ul > .level-top > .submenu > ul .parent ul { + padding-left: 10px; +} +.navigation > ul > .level-top > .submenu > ul li { + margin: 8px 0; +} +.navigation > ul > .level-top > .submenu > ul li:fist-child { + margin-top: 0; +} +@media only screen and (max-width: 640px) { + html { + height: 100%; + min-width: 0; + overflow: hidden; + } + body { + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + position: relative; + height: 100%; + width: 100%; + overflow: hidden; + } + body.opened .navigation { + left: 0; + } + body.opened .page.wrapper { + margin-right: -86%; + cursor: pointer; + } + .page.wrapper { + position: relative; + width: 100%; + float: right; + margin: 0; + -webkit-transition: margin 0.3s ease-out 0; + -moz-transition: margin 0.3s ease-out 0; + transition: margin 0.3s ease-out 0; + } + .navigation { + display: block; + position: absolute; + width: 86%; + left: -86%; + height: 100%; + background: #ffffff; + overflow-x: hidden; + border-right: #b6b8af 1px solid; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: left 0.3s ease-out 0; + -moz-transition: left 0.3s ease-out 0; + transition: left 0.3s ease-out 0; + } + .navigation ul { + margin: 0; + padding: 0; + } + .navigation ul li.hidden { + display: none; + } + .navigation > ul { + -webkit-transition: left 0.3s linear 0; + -moz-transition: left 0.3s linear 0; + transition: left 0.3s linear 0; + position: relative; + overflow: hidden; + } + .navigation > ul > .level-top { + display: block; + padding: 0; + background: #ffffff; + } + .navigation > ul > .level-top > a { + display: block; + padding: 10px 20px; + text-transform: none; + font-size: 20px; + font-weight: 600; + border-bottom: 1px solid #e5e5e5; + color: #675f55; + text-align: left; + } + .navigation > ul > .level-top > a:hover, + .navigation > ul > .level-top > a:visited { + color: #675f55; + } + .navigation > ul > .level-top > a:active { + background: #dbdcd7; + } + .navigation > ul > .level-top > a:after { + border: 0; + } + .navigation > ul > .level-top.parent:after { + display: none; + } + .navigation > ul > .level-top.parent > a { + position: relative; + text-transform: none !important; + } + .navigation > ul > .level-top.parent > a:after { + font-family: "icons"; + font-size: 18px; + line-height: 18px; + height: 18px; + margin: 0; + overflow: hidden; + content: "\e01a"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; + } + .navigation > ul > .level-top.parent > a:after { + position: absolute; + width: 18px; + top: 12px; + right: 17px; + left: auto; + opacity: 1; + z-index: auto; + } + .navigation > ul > .level-top.parent > .submenu { + position: absolute; + display: block; + left: 100%; + top: 0; + width: 100%; + overflow-x: hidden; + background: #ffffff; + -webkit-transition: left 0.3s ease-out 0; + -moz-transition: left 0.3s ease-out 0; + transition: left 0.3s ease-out 0; + } + .navigation > ul > .level-top.parent > .submenu.opened { + left: 0; + z-index: 3; + } + .navigation > ul > .level-top.parent > .submenu > ul { + padding-top: 0; + padding-bottom: 0; + } + .navigation > ul > .level-top.parent > .submenu > ul li { + margin: 0; + } + .navigation > ul > .level-top.parent > .submenu > ul li > a { + display: block; + padding: 10px 20px; + text-transform: none; + font-size: 20px; + font-weight: 600; + border-bottom: 1px solid #e5e5e5; + color: #675f55; + text-align: left; + } + .navigation > ul > .level-top.parent > .submenu > ul li > a:hover, + .navigation > ul > .level-top.parent > .submenu > ul li > a:visited { + color: #675f55; + } + .navigation > ul > .level-top.parent > .submenu > ul li > a:active { + background: #dbdcd7; + } + .navigation > ul > .level-top.parent > .submenu > ul li > a:after { + border: 0; + } + .navigation > ul > .level-top.parent > .submenu > ul li.column { + width: 100%; + display: block; + padding-right: 0; + } + .navigation > ul > .level-top.parent > .submenu > ul .parent ul { + padding-left: 0; + } + .navigation .action.back a { + background: #675f55; + position: relative; + color: #ffffff !important; + border-bottom-color: transparent; + cursor: pointer; + } + .navigation .action.back a:before { + font-family: "icons"; + font-size: 18px; + line-height: 18px; + height: 18px; + margin: 0; + overflow: hidden; + content: "\e01b"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; + } + .navigation .action.back a:hover, + .navigation .action.back a:active, + .navigation .action.back a:visited { + color: #ffffff !important; + background: #675f55 !important; + } + .navigation .action.back a:before { + position: absolute; + top: 12px; + left: 3px; + } + .navigation .action.back a span:before { + content: ""; + } + .navigation .parent:after { + display: none; + } + .navigation .parent > a { + position: relative; + } + .navigation .parent > a:after { + font-family: "icons"; + font-size: 18px; + line-height: 18px; + height: 18px; + margin: 0; + overflow: hidden; + content: "\e01a"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; + } + .navigation .parent > a:after { + position: absolute; + width: 18px; + top: 16px; + right: 17px; + left: auto; + opacity: 1; + z-index: auto; + } + .navigation .parent .submenu { + position: absolute; + display: block; + left: 100%; + top: 0; + width: 100%; + overflow-x: hidden; + background: #ffffff; + -webkit-transition: left 0.3s ease-out 0; + -moz-transition: left 0.3s ease-out 0; + transition: left 0.3s ease-out 0; + } + .navigation .parent .submenu.opened { + left: 0; + z-index: 3; + } + .navigation .parent .submenu > ul { + padding-top: 0; + padding-bottom: 0; + } + .navigation .parent .submenu > ul li { + margin: 0; + } + .navigation .parent .submenu > ul li > a { + display: block; + padding: 10px 20px; + text-transform: none; + font-size: 20px; + font-weight: 600; + border-bottom: 1px solid #e5e5e5; + color: #675f55; + text-align: left; + } + .navigation .parent .submenu > ul li > a:hover, + .navigation .parent .submenu > ul li > a:visited { + color: #675f55; + } + .navigation .parent .submenu > ul li > a:active { + background: #dbdcd7; + } + .navigation .parent .submenu > ul li > a:after { + border: 0; + } + .navigation .parent .submenu > ul li.column { + width: 100%; + display: block; + padding-right: 0; + } + .navigation .parent .submenu > ul .parent ul { + padding-left: 0; + } + .action.toggle.nav { + margin-top: 19px; + position: absolute; + top: 0; + left: 20px; + font-size: 0; + width: 32px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + cursor: pointer; + } + .action.toggle.nav:after { + font-family: "icons"; + font-size: 32px; + line-height: 32px; + height: 32px; + margin: 0; + overflow: hidden; + content: "\e007"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; + } + .action.toggle.nav:active { + outline: 0; + } + .action.toggle.nav:after { + text-indent: 0; + display: block; + margin: 0; + } + .action.toggle.nav:before { + position: absolute; + width: 100%; + height: 100%; + left: -100%; + top: -20px; + padding: 20px 0; + content: ""; + } + .active-nav .action.toggle.nav:before { + position: fixed; + padding: 0; + left: 86%; + right: 0; + top: 0; + bottom: 0; + } + .header { + padding: 0; + position: relative; + margin-bottom: 35px; + } +} +@media only screen and (max-width: 99999px) { + .product.data { + *zoom: 1; + position: relative; + z-index: 1; + } + .product.data:before, + .product.data:after { + content: ""; + display: table; + } + .product.data:after { + clear: both; + } + .product.data > .item.title { + float: left; + } + .product.data > .item.title > .switch { + display: block; + position: relative; + top: 1px; + z-index: 2; + } + .product.data > .item.content { + width: 100%; + float: right; + margin-left: -100%; + display: none; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + } + .product.data > .item.content.active { + display: block; + } + .product.data .tabs > .term-content.active { + border: 1px solid #BFBFBF; + color: #808080; + display: block; + } + .product.data > .item.title { + margin-right: 1px; + min-height: 35px; + } + .product.data > .item.title > .switch { + font-size: 14px; + line-height: 1; + font-weight: 600; + text-decoration: none; + padding: 11px 11px 8px; + border: 2px solid #e5e5e5; + background: rgba(0, 0, 0, 0.03); + border-bottom: none; + text-transform: uppercase; + border-radius: 4px 4px 0 0; + } + .product.data > .item.title:not(.disabled) > .switch:active, + .product.data > .item.title:not(.disabled) > .switch:focus, + .product.data > .item.title:not(.disabled) > .switch:hover, + .product.data > .item.title.active > .switch { + background: #fff; + border-width: 3px; + padding: 10px 10px 8px; + outline: none; + } + .product.data > .item.title.active > .switch { + padding: 10px 20px 11px !important; + } + .product.data > .item.content { + *zoom: 1; + margin-top: 36px; + padding: 20px; + } + .product.data > .item.content:before, + .product.data > .item.content:after { + content: ""; + display: table; + } + .product.data > .item.content:after { + clear: both; + } + .product.data > .item.content:before { + content: ''; + border-top: 3px solid #e5e5e5; + width: 100%; + display: block; + position: absolute; + left: 0; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: -20px 0 20px; + } +} +@media only screen and (max-width: 768px) { + .product.data { + margin: 0; + padding: 0; + } + .product.data > .item.title { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + width: 100%; + } + .product.data > .item.title > .item.switch { + display: block; + } + .product.data > .item.content { + *zoom: 1; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + display: none; + } + .product.data > .item.content:before, + .product.data > .item.content:after { + content: ""; + display: table; + } + .product.data > .item.content:after { + clear: both; + } + .product.data > .item.content.active { + display: block; + } + .product.data > .item.title { + margin: 3px 0 0; + } + .product.data > .item.title > .switch { + display: block; + font-size: 14px; + line-height: 1; + font-weight: 600; + text-decoration: none; + padding: 11px; + border: 2px solid #e5e5e5; + background: #f8f8f8; + text-transform: uppercase; + border-radius: 4px; + } + .product.data > .item.title:not(.disabled) > .switch:active, + .product.data > .item.title:not(.disabled) > .switch:focus, + .product.data > .item.title:not(.disabled) > .switch:hover, + .product.data > .item.title.active > .switch { + background: #fff; + border-width: 3px; + padding: 10px; + outline: none; + } + .product.data > .item.title.active > .switch { + border-radius: 4px 4px 0 0; + } + .product.data > .item.content { + margin: 0; + padding: 20px; + background: #fff; + } +} +.block.search input { + border-radius: 3px 0 0 3px; + border-right: 0; + float: left; + width: 100%; +} +.block.search input:focus { + border-color: #c2c2c2; +} +.block.search .field .control { + width: 260px; +} +.block.search .label, +.block.search > .title, +.block.search .action.advanced { + display: none; +} +.block.search .action.search { + background: #ffffff; + border: 1px solid #c2c2c2; + border-radius: 0 3px 3px 0; + color: #c2c2c2; + float: left; + padding: 7px; +} +.block.search .action.search:hover { + color: #675f55; +} +.block.search .action.search span { + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; +} +.block.search .action.search span:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: "\e005"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.block.search .action.search span:active { + outline: 0; +} +.block.search .action.search span:after { + text-indent: 0; + display: block; + margin: 0; +} +.block.search .action.search .search.autocomplete { + display: none !important; +} +.block.search ::-webkit-input-placeholder { + color: #999999; +} +.block.search :-moz-placeholder { + color: #999999; +} +.block.search ::-moz-placeholder { + color: #999999; +} +.block.search :-ms-input-placeholder { + color: #999999; +} +.block.newsletter > .title { + display: none; +} +.block.newsletter .label { + display: block; + font-size: 16px; + line-height: 1.2; + margin-bottom: 10px; +} +.block.newsletter .control { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + float: left; + padding-right: 45px; + width: 100%; +} +.block.newsletter input[type="text"] { + width: 100%; +} +.block.newsletter .actions { + float: right; + margin-left: -45px; + padding-left: 10px; +} +.block.newsletter .action.subscribe { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #da370a; + border-radius: 3px; + border: 1px solid #da370a; + padding: 7px; + vertical-align: top; +} +.block.newsletter .action.subscribe:hover { + background: #a92b08; +} +.block.newsletter .action.subscribe span { + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + color: #ffffff; +} +.block.newsletter .action.subscribe span:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: "\e001"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.block.newsletter .action.subscribe span:active { + outline: 0; +} +.block.newsletter .action.subscribe span:after { + text-indent: 0; + display: block; + margin: 0; +} +.breadcrumbs { + font-size: 12px; +} +.breadcrumbs .items { + margin: 0; + padding: 0; +} +.breadcrumbs .item { + display: inline; + font-weight: 200; +} +.breadcrumbs .item:before { + content: " / "; +} +.breadcrumbs .item:first-child:before { + content: ""; +} +.breadcrumbs strong { + font-weight: 400; +} +.pages ol { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +.pages .item { + display: inline-block; +} +.pages a { + padding: 0 3px; +} +.pages strong { + color: #da370a; + font-weight: normal; + padding: 0 3px; +} +.pages > .label { + display: none; +} +.pages .action { + color: #c2c2c2; +} +.pages .action.previous { + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + display: inline-block; +} +.pages .action.previous:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: "\e01b"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.pages .action.previous:active { + outline: 0; +} +.pages .action.previous:after { + text-indent: 0; + display: block; + margin: 0; +} +.pages .action.next { + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + display: inline-block; +} +.pages .action.next:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: "\e01a"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.pages .action.next:active { + outline: 0; +} +.pages .action.next:after { + text-indent: 0; + display: block; + margin: 0; +} +.pages .action:hover { + color: #8f8f8f; +} +.modes .label { + display: none; +} +.modes .mode { + border: 1px solid #c2c2c2; + color: #c2c2c2; + display: inline-block; + margin: 0 3px; + overflow: hidden; + padding: 4px; +} +.modes .mode.active { + background: #c2c2c2; + border-color: #c2c2c2; + cursor: default; + color: #ffffff; +} +.modes .mode.active span { + color: #ffffff; +} +.modes .mode.active:hover { + background: #c2c2c2; + border-color: #c2c2c2; + color: #ffffff; +} +.modes .mode.active:hover span { + color: #ffffff; +} +.modes .mode:hover { + background: #999999; + border-color: #999999; + color: #ffffff; +} +.modes .mode:hover span { + color: #ffffff; +} +.modes .mode.grid { + width: 13px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + display: inline-block; +} +.modes .mode.grid:after { + font-family: "icons"; + font-size: 13px; + line-height: 13px; + height: 13px; + margin: 0; + overflow: hidden; + content: "\e003"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.modes .mode.grid:active { + outline: 0; +} +.modes .mode.grid:after { + text-indent: 0; + display: block; + margin: 0; +} +.modes .mode.list { + width: 13px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + display: inline-block; +} +.modes .mode.list:after { + font-family: "icons"; + font-size: 13px; + line-height: 13px; + height: 13px; + margin: 0; + overflow: hidden; + content: "\e002"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.modes .mode.list:active { + outline: 0; +} +.modes .mode.list:after { + text-indent: 0; + display: block; + margin: 0; +} +.sorter .label { + font-weight: 400; + line-height: 25px; + margin-right: 5px; +} +.sorter select { + padding: 0; +} +.sorter .action.sort.desc { + width: 13px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + display: inline-block; +} +.sorter .action.sort.desc:after { + font-family: "icons"; + font-size: 13px; + line-height: 13px; + height: 13px; + margin: 0; + overflow: hidden; + content: "\e01c"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.sorter .action.sort.desc:active { + outline: 0; +} +.sorter .action.sort.desc:after { + text-indent: 0; + display: block; + margin: 0; +} +.sorter .action.sort.asc { + width: 13px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + display: inline-block; +} +.sorter .action.sort.asc:after { + font-family: "icons"; + font-size: 13px; + line-height: 13px; + height: 13px; + margin: 0; + overflow: hidden; + content: "\e019"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.sorter .action.sort.asc:active { + outline: 0; +} +.sorter .action.sort.asc:after { + text-indent: 0; + display: block; + margin: 0; +} +.limiter .label { + font-weight: 400; + line-height: 25px; + margin-right: 5px; +} +.limiter select { + padding: 0; +} +.limiter .text { + display: none; +} +.tags.items.cloud { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; + margin: 0 0 20px; +} +.tags.items.cloud .item { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; + display: inline-block; + margin: 0 0 5px 5px; +} +.tags.items.cloud .item:first-child { + margin-left: 0; +} +.tags.items.cloud .amount { + margin-left: 3px; +} +.tags.items.cloud .amount:before { + content: '('; +} +.tags.items.cloud .amount:after { + content: ')'; +} +.field.ratings { + border-bottom: 1px solid; + border-color: #d7d7d7; + padding-bottom: 15px; + margin-bottom: 30px; + overflow: hidden; + position: relative; + z-index: 1; +} +.field.ratings .nested { + display: table; +} +.field.ratings .field.rating { + display: table-row; +} +.field.ratings .field.rating > .label { + display: table-cell; + vertical-align: top; + padding: 6px 0; +} +.field.ratings .field.rating .control { + padding: 5px 10px; + display: table-cell; + z-index: 1; +} +.field.ratings .field.rating .control:before { + letter-spacing: 0.2em; + position: absolute; + z-index: 1; + display: block; + float: left; + font-family: "icons"; + content: "\e009\e009\e009\e009\e009"; + font-style: normal; + font-size: 16px; + color: rgba(218, 55, 10, 0.3); + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; +} +.field.ratings .field.rating .control input:focus + label:before, +.field.ratings .field.rating .control input:checked + label:before { + color: #da370a; + opacity: 1; +} +.field.ratings .field.rating .control input[type="radio"] { + position: absolute; + margin-left: -999em; +} +.field.ratings .field.rating .control label { + position: absolute; + display: block; + cursor: pointer; +} +.field.ratings .field.rating .control label span { + display: none; +} +.field.ratings .field.rating .control label:before { + letter-spacing: 0.2em; + font-family: "icons"; + font-style: normal; + font-size: 16px; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + opacity: 0; +} +.field.ratings .field.rating .control label:hover:before { + color: #da370a; + opacity: 1; +} +.field.ratings .field.rating .control label:hover ~ label:before { + opacity: 0 !important; +} +.field.ratings .field.rating .control .rating-1 { + z-index: 6; +} +.field.ratings .field.rating .control .rating-1:before { + content: "\e009"; +} +.field.ratings .field.rating .control .rating-2 { + z-index: 5; +} +.field.ratings .field.rating .control .rating-2:before { + content: "\e009\e009"; +} +.field.ratings .field.rating .control .rating-3 { + z-index: 4; +} +.field.ratings .field.rating .control .rating-3:before { + content: "\e009\e009\e009"; +} +.field.ratings .field.rating .control .rating-4 { + z-index: 3; +} +.field.ratings .field.rating .control .rating-4:before { + content: "\e009\e009\e009\e009"; +} +.field.ratings .field.rating .control .rating-5 { + z-index: 2; +} +.field.ratings .field.rating .control .rating-5:before { + content: "\e009\e009\e009\e009\e009"; +} +.fieldset.login { + margin: 0; + padding: 0; +} +.fieldset.login > .field { + *zoom: 1; +} +.fieldset.login > .field:before, +.fieldset.login > .field:after { + content: ""; + display: table; +} +.fieldset.login > .field:after { + clear: both; +} +.fieldset.login > .field > .label { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + float: left; + margin: 0; + padding-right: 10px; + padding-top: 7px; + text-align: right; + width: 40%; +} +.fieldset.login > .field > .control { + float: left; + margin: 0; + width: 60%; +} +.fieldset.login .actions { + text-align: right; +} +.fieldset.login .actions .secondary { + margin-top: 0.8em; +} +.loader { + background: url("../images/loader.gif") no-repeat 50% 50%; + width: 20px; + height: 20px; +} +.action.mySecondaryButton.loading { + padding-right: 30px; + position: relative; +} +.action.mySecondaryButton.loading:after { + background: url("../images/loader.gif") no-repeat 50% 50%; + width: 16px; + height: 16px; + content: ""; + margin: -8px 0 0; + position: absolute; + right: 7px; + top: 50%; +} +.textUnderLoader { + background: #f8f8f8; + border: 1px solid #c2c2c2; + padding: 10px 20px; +} +.textUnderLoader.loading { + position: relative; +} +.textUnderLoader.loading:before { + background: #ffffff; + opacity: 0.7; + content: ""; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; +} +.textUnderLoader.loading:after { + background: url("../images/loader.gif") no-repeat 50% 50%; + width: 16px; + height: 16px; + content: ""; + margin: -8px 0 0 -8px; + position: absolute; + left: 50%; + top: 50%; +} +.opc .fieldset { + margin: 20px 0; +} +.opc .fieldset .field { + display: inline-block; + padding-right: 20px; + vertical-align: top; + width: 50%; +} +.opc .fieldset .nested .field { + width: 100%; +} +.opc .fieldset .actions { + margin-right: 30px; +} +.opc .field { + margin-bottom: 10px; +} +.opc .field.fullname + .field.company, +.opc .field.name-lastname + .field.company, +.opc .field.country, +.opc .field.taxvat { + margin: 0 40% 30px 0; +} +.form-list { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +.form-list .required em { + display: none; +} +.form-list .required:first-child:after { + color: #da370a; + content: '*'; +} +.form-list > li { + *zoom: 1; + margin: 0 0 10px; +} +.form-list > li:before, +.form-list > li:after { + content: ""; + display: table; +} +.form-list > li:after { + clear: both; +} +.form-list > li .field { + *zoom: 1; + margin: 10px 0 0; +} +.form-list > li .field:before, +.form-list > li .field:after { + content: ""; + display: table; +} +.form-list > li .field:after { + clear: both; +} +.form-list > li .field:first-child { + margin: 0; +} +.form-list > li > label, +.form-list > li .field > label { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + clear: left; + float: left; + padding: 7px 10px 0 0; + text-align: right; + width: 30%; +} +.form-list > li .input-box { + float: left; + width: 70%; +} +.form-list > li .input-box > input, +.form-list > li .input-box > select, +.form-list > li .input-box > textarea { + width: 100%; +} +.form-list > li .input-box > .v-fix { + float: left; + margin: 0 10px 0 0; +} +.cart.summary .fieldset { + border: 0; + font-size: 12px; + padding: 0; + margin: 0; +} +.cart.summary .fieldset .field { + margin: 0 0 10px; +} +.cart.summary .fieldset .field:not(.choice) .label { + padding: 0 0 5px; + display: block; +} +.cart.summary .fieldset .action:not(.check) { + padding: 6px 11px 5px; +} +.cart.summary .fieldset .action:not(.check) span { + font-size: 12px; + line-height: 12px; +} +.cart.summary .fieldset.coupon .actions, +.cart.summary .fieldset.estimate .actions { + display: table-cell; + width: 1%; + white-space: nowrap; + vertical-align: bottom; +} +.cart.summary .fieldset.coupon .field, +.cart.summary .fieldset .field.postcode { + display: table-cell; + padding-right: 10px; + vertical-align: bottom; + width: 99%; +} +.cart.summary .fieldset.coupon .field div.mage-error, +.cart.summary .fieldset .field.postcode div.mage-error { + position: absolute; +} +.cart.summary .fieldset.rates { + padding-top: 25px; +} +.cart.summary .fieldset.rates .actions { + text-align: right; +} +.cart.summary .title { + cursor: pointer; + line-height: 16px; + margin: 0; + padding: 10px 5px; +} +.cart.summary .content { + padding: 15px 15px 20px; +} +.cart.summary input[type="text"] { + padding: 0 5px; + font-size: 12px; + height: 30px; +} +.cart.summary select { + padding: 5px 5px 4px; + font-size: 12px; +} +.cart.summary .items.methods dt { + font-weight: 700; +} +.cart.summary .items.methods dd { + margin: 10px 10px 25px; +} +.popup { + background: #e5e5e5; + border: 1px solid #c2c2c2; + display: inline-block; + padding: 20px; + position: relative; +} +.popup .close { + color: #999999; + cursor: pointer; + position: absolute; + right: 5px; + top: 3px; +} +.popup .close:before { + font-family: "icons"; + font-size: 12px; + line-height: 12px; + height: 12px; + margin: 0; + overflow: hidden; + content: "\e012"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.popup .close:hover { + color: #675f55; +} +.fade .popup { + background: #ffffff; + box-shadow: 0 0 10px 0 #999999; +} +.popup > .header, +.popup > .content { + margin: 0 0 5px; +} +.popup > .header { + font-size: 16px; + font-weight: 700; +} +.popup .actions { + margin: 15px 0 0; +} +.popup .actions .action.submit { + margin-right: 10px; +} +.popup.system { + background: #ffffff; + padding: 0; +} +.popup.system > .header { + background: #e5e5e5; + border-bottom: 1px solid #c2c2c2; + border-radius: 5px 5px 0 0; + cursor: move; + padding: 10px 20px; +} +.popup.system > .content { + padding: 20px; +} +.popup.system > .footer { + border-top: 1px solid #c2c2c2; + padding: 10px 20px; +} +.popup.system .actions { + margin: 0; +} +.popup.system .close { + right: 8px; + top: 8px; +} +.fade { + background-color: rgba(0, 0, 0, 0.5); + position: relative; + left: 0; + top: 0; + right: 0; + bottom: 0; + padding: 10%; +} +.tooltip { + display: inline-block; + vertical-align: middle; + line-height: 1.1; + cursor: help; +} +.tooltip .tooltip-content { + display: none; + position: absolute; + max-width: 500px; + margin: 10px 0 0; + padding: 8px; + background: rgba(0, 0, 0, 0.5); + color: #ffffff; + border-radius: 3px; + z-index: 20; +} +.tooltip .tooltip-content:before { + content: ''; + position: absolute; + width: 0; + height: 0; + top: -5px; + left: 20px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid rgba(0, 0, 0, 0.5); +} +.tooltip:hover > .tooltip-content { + display: block; +} +.tipsy { + position: absolute; + left: 0; + top: 0; + display: none; + padding: 5px; + font-size: 16px; + z-index: 9999; +} +.tipsy .tipsy-inner { + padding: 5px 8px 4px; + background-color: rgba(0, 0, 0, 0.9); + color: #ffffff; + max-width: 200px; + border-radius: 3px; +} +.tipsy .tipsy-arrow { + position: absolute; + width: 0; + height: 0; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid rgba(0, 0, 0, 0.9); +} +.tipsy.tipsy-s .tipsy-arrow { + top: 0; + left: 50%; + margin-left: -4px; +} +.tipsy.tipsy-se .tipsy-arrow { + top: 0; + left: 10px; +} +.tipsy.tipsy-sw .tipsy-arrow { + top: 0; + right: 10px; +} +.tipsy.tipsy-n .tipsy-arrow, +.tipsy.tipsy-ne .tipsy-arrow, +.tipsy.tipsy-nw .tipsy-arrow { + bottom: 0; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-top: 5px solid rgba(0, 0, 0, 0.9); + border-bottom: none; +} +.tipsy.tipsy-n .tipsy-arrow { + left: 50%; + margin-left: -4px; +} +.tipsy.tipsy-ne .tipsy-arrow { + left: 10px; +} +.tipsy.tipsy-nw .tipsy-arrow { + right: 10px; +} +.tipsy.tipsy-w .tipsy-arrow, +.tipsy.tipsy-e .tipsy-arrow { + top: 50%; + margin-top: -4px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; +} +.tipsy.tipsy-w .tipsy-arrow { + right: 0; + border-right: none; + border-left: 5px solid rgba(0, 0, 0, 0.9); +} +.tipsy.tipsy-e .tipsy-arrow { + left: 0; + border-right: 5px solid rgba(0, 0, 0, 0.9); + border-left: none; +} +.example-tooltips { + /*presentation styles*/ + + padding: 70px; + text-align: center; +} +.example-tooltips button { + /*presentation styles*/ + + width: 70px; + height: 70px; + font-size: 18px; + margin: 10px 5px; +} +strong { + font-weight: 700; +} +.items { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +/* + Forms +-------------------------------------- */ +.field.required > .label > span:first-child:after { + content: ' *'; + color: #da370a; +} +/* + Magento_Page +-------------------------------------- */ +html, +body, +button, +input, +select, +textarea { + color: #675f55; + font: 400 14px/1.33 "sourcesanspro"; +} +html { + background: #ffffff; +} +body { + position: relative; +} +.page.wrapper { + background: #ffffff; +} +/* + Page Layout +-------------------------------------- */ +.columns { + padding-left: 10px; + padding-right: 10px; + margin: 0 auto; + min-width: 1005px; + max-width: 1005px; +} +.page.main { + *zoom: 1; + clear: both; + padding: 30px 0; +} +.page.main:before, +.page.main:after { + content: ""; + display: table; +} +.page.main:after { + clear: both; +} +.page.title { + *zoom: 1; + margin-bottom: 30px; +} +.page.title:before, +.page.title:after { + content: ""; + display: table; +} +.page.title:after { + clear: both; +} +.page.title .title { + display: inline; + margin: 0; + line-height: 1.2; + font-weight: 200; + font-size: 30px; + color: #837d75; +} +.page.title .action { + float: right; +} +.page.main > .page.title { + padding-left: 10px; + padding-right: 10px; + margin: 0 auto; + min-width: 1005px; + max-width: 1005px; + margin-bottom: 30px; +} +.column.main { + min-height: 500px; +} +.column.left, +.column.right { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + min-height: 1px; +} +.col1-layout .column.main { + float: left; + width: 100%; + margin-right: 0%; +} +.col2-left-layout .column.main { + float: right !important; + float: left; + width: 83.33333333333334%; + margin-right: 0%; +} +.col2-left-layout .column.left { + float: left; + width: 16.666666666666664%; + margin-right: 0%; + padding-right: 12px; +} +.col2-right-layout .column.main { + float: left; + width: 83.33333333333334%; + margin-right: 0%; +} +.col2-right-layout .column.right { + float: left; + width: 16.666666666666664%; + margin-right: 0%; + padding-left: 12px; +} +.col3-layout .column.main { + *zoom: 1; + float: left; + width: 66.66666666666666%; + margin-right: 0%; + float: none !important; + display: inline-block !important; + vertical-align: top; +} +.col3-layout .column.main:before, +.col3-layout .column.main:after { + content: ""; + display: table; +} +.col3-layout .column.main:after { + clear: both; +} +.col3-layout .column.left { + width: 16.666666666666664%; + margin-right: 0%; + float: left; + padding-right: 12px; +} +.col3-layout .column.right { + float: left; + width: 16.666666666666664%; + margin-right: 0%; + float: none !important; + display: inline-block !important; + padding-left: 12px; +} +/* + Header +-------------------------------------- */ +.header { + background-color: #d6d7d2; + background-image: url("../images/header-bg.jpg"); + background-repeat: repeat; + background-position: 0; + border-bottom: 1px solid; + border-color: #b6b8af; + padding: 15px 0; +} +.header > .content { + padding-left: 10px; + padding-right: 10px; + margin: 0 auto; + min-width: 1005px; + max-width: 1005px; + *zoom: 1; + text-align: right; +} +.header > .content:before, +.header > .content:after { + content: ""; + display: table; +} +.header > .content:after { + clear: both; +} +.header > .content .links { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; + margin-bottom: 5px; +} +.header > .content .links li { + margin-left: 20px; + display: inline; + text-transform: capitalize; +} +.header > .content .links a { + color: #837d75; +} +.header > .content .links a > span { + color: #837d75; +} +.header > .content .links a:hover, +.header > .content .links a:hover > span { + color: #da370a; +} +.header .panel { + padding-left: 10px; + padding-right: 10px; + margin: 0 auto; + min-width: 1005px; + max-width: 1005px; + *zoom: 1; + margin-bottom: 15px; + text-align: right; +} +.header .panel:before, +.header .panel:after { + content: ""; + display: table; +} +.header .panel:after { + clear: both; +} +.logo { + font-family: "marvel"; + font-style: normal; + font-weight: 400; + font-size: 55px; + display: block; + float: left; + line-height: 1; + text-align: center; +} +.logo img { + display: inline-block; + vertical-align: middle; + margin: 0 auto; +} +.logo span { + display: inline-block; + vertical-align: middle; + margin-left: 15px; + color: #837d75; + margin-top: -8px; +} +.logo:active { + outline: 0; +} +/* + Header Banner +-------------------------------------- */ +.header .panel .widget { + display: inline-block; + text-align: left; +} +.banner-header:visited, +.banner-header:hover, +.banner-header { + font-size: 16px; + text-transform: uppercase; + color: #da370a; +} +/* + Search +-------------------------------------- */ +.block.search { + float: right; +} +.block.search > .content { + white-space: nowrap; +} +.block.search .field, +.block.search .actions, +.block.search .field .control { + float: left; +} +.block.search .actions { + margin-right: 0; +} +.block.search .search.autocomplete { + background: #ffffff; + border: 1px solid #c2c2c2; + border-width: 0 1px 1px; + border-radius: 0 0 5px 5px; + z-index: 5; +} +.block.search .search.autocomplete ul { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +.block.search .search.autocomplete ul li { + border-top: 1px solid #e5e5e5; + cursor: pointer; + padding: 5px 40px 5px 10px; + position: relative; + text-align: left; + white-space: normal; +} +.block.search .search.autocomplete ul li:first-child { + border-top: none; +} +.block.search .search.autocomplete ul li:hover { + background: #f8f8f8; +} +.block.search .search.autocomplete ul li .amount { + color: #999999; + font-weight: 600; + position: absolute; + right: 7px; + top: 6px; +} +/* + Navigation +-------------------------------------- */ +.navigation { + z-index: 4; +} +.navigation > ul > .level-top.hover > .submenu, +.navigation > ul > .level-top:hover > .submenu { + z-index: 3; +} +.navigation > ul > .level-top.more > .submenu { + background: #f8f8f8; +} +.navigation > ul > .level-top.more > .submenu > ul { + padding-left: 10px; + padding-right: 10px; + margin: 0 auto; + min-width: 1005px; + max-width: 1005px; + position: relative; +} +.navigation > ul > .level-top.more.hover > .submenu { + border-bottom: 1px solid #c2c2c2; + overflow: visible !important; +} +.navigation > ul, +.navigation > ul > .level0 > .submenu > ul.level0 { + padding-left: 10px; + padding-right: 10px; + margin: 0 auto; + min-width: 1005px; + max-width: 1005px; + padding-left: 0; + padding-right: 0; +} +@media only screen and (max-width: 640px) { + .navigation > ul { + min-width: 100%; + max-width: 100%; + } + .action.toggle.nav { + top: 100%; + } +} +/* + General block +-------------------------------------- */ +.column.main .block, +.sidebar .block { + margin-bottom: 45px; +} +.column.main .block > .title, +.sidebar .block > .title { + margin-bottom: 15px; +} +.column.main .block > .title strong, +.sidebar .block > .title strong { + line-height: 1.2; + font-weight: 200; + font-size: 20px; +} +.column.main .block.filter .item, +.sidebar .block.filter .item { + margin-bottom: 10px; +} +.sidebar .block > .title strong { + font-size: 18px; +} +/* + Breadcrumbs +-------------------------------------- */ +.breadcrumbs { + padding-left: 10px; + padding-right: 10px; + margin: 0 auto; + min-width: 1005px; + max-width: 1005px; + margin-top: 30px; +} +/* + Footer +-------------------------------------- */ +.footer { + background: #ffffff; + border-top: 1px solid; + border-color: #dedede; + padding: 30px 0 80px; +} +.footer > .content { + padding-left: 10px; + padding-right: 10px; + margin: 0 auto; + min-width: 1005px; + max-width: 1005px; + text-align: left; +} +.footer .links { + display: inline-block; + padding: 0; + margin: 1px 3px 19px 0; +} +.footer .links ul { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +.footer .links li { + list-style: none; + list-style-image: none; + margin: 0; + padding: 0; + display: inline; +} +.footer .links li:after { + content: ' | '; +} +.footer .links li:last-child:after { + content: ''; +} +.footer .links + .links li:first-child:before { + content: ' | '; +} +.footer .links a { + color: #837d75; +} +.footer .links a > span { + color: #837d75; +} +.footer .links a:hover, +.footer .links a:hover > span { + color: #da370a; +} +.footer .copyright { + font-size: 14px; + display: block; + padding-top: 10px; +} +.footer .bugs { + margin-top: 25px; + font-size: 11px; +} +.footer .bugs a { + font-weight: bold; +} +.footer .bugs a:before { + content: ' - '; + display: inline-block; +} +/* + Switchers +-------------------------------------- */ +.switcher { + display: inline-block; + text-align: left; + font-size: 11px; + vertical-align: middle; +} +.header .panel .switcher { + margin-right: 25px; +} +.header .panel .switcher:last-child { + margin-right: 0; +} +.switcher .label { + display: none; +} +.switcher strong { + color: #837d75; + font-weight: 600; +} +.switcher .options { + display: inline-block; + position: relative; + z-index: 1; +} +.switcher .options > ul { + padding: 0; + list-style-type: none; + list-style-image: none; + margin: 0; + padding: 5px 10px; + position: absolute; + top: 100%; + right: 0; + margin-left: -11px; + min-width: 100%; + float: left; + background: #f8f8f8; + border: 1px solid #cacbc4; + visibility: hidden; + opacity: 0; + -webkit-transition: visibility 0s linear 2s; + -moz-transition: visibility 0s linear 2s; + transition: visibility 0s linear 2s; +} +.switcher .options > ul li { + margin: 5px 0; + white-space: nowrap; +} +.switcher .options.active { + z-index: 999; +} +.switcher .options.active > ul { + visibility: visible; + opacity: 1; + -webkit-transition-delay: 0s; + -moz-transition-delay: 0s; + -ms-transition-delay: 0s; + -o-transition-delay: 0s; + transition-delay: 0s; +} +.switcher .options.active strong, +.switcher .options:hover strong { + color: #675f55; +} +.action.switch { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; + vertical-align: top; + color: #837d75; +} +.action.switch span { + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; +} +.action.switch span:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: '\e02c'; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.switch span:active { + outline: 0; +} +.action.switch span:after { + text-indent: 0; + display: block; + margin: 0; +} +.action.switch span:after { + line-height: 12px; +} +.action.switch:focus, +.action.switch:hover, +.action.switch.active { + color: #675f55; +} +.action.switch.active span:after { + content: "\e029"; +} +.no-js .action.switch:focus + ul { + visibility: visible; + opacity: 1; + -webkit-transition-delay: 0s; + -moz-transition-delay: 0s; + -ms-transition-delay: 0s; + -o-transition-delay: 0s; + transition-delay: 0s; +} +/* + Global Notices +-------------------------------------- */ +.notice.global.site { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + position: absolute; + width: 100%; + padding: 8px; + background: #4d5d64; + color: #fff; + top: 0; + left: 0; + text-align: center; +} +.notice.global.site p { + margin: 0; +} +/* + Reviews +-------------------------------------- */ +.reviews.summary { + line-height: 16px; +} +.reviews.summary .action { + font-size: 12px; +} +.reviews.summary .reviews.actions { + font-size: 12px; + display: inline; +} +.reviews.summary .action.view span:before { + content: ' '; +} +.reviews.summary .action.view + .action.add:before { + content: '\00A0|\00A0\00A0'; + display: inline-block; + color: #332e29; +} +.reviews.summary.short:not(.no-rating) .action.view span { + display: none; +} +.reviews.summary.short:not(.no-rating) .action.view:before { + content: '('; + display: inline-block; +} +.reviews.summary.short:not(.no-rating) .action.view:after { + content: ')'; + display: inline-block; +} +.block.reviews.dashboard .rating, +.reviews.summary .rating { + width: 80px; + margin-right: 3px; + line-height: 1; + color: rgba(218, 55, 10, 0.3); + display: inline-block; + vertical-align: top; + margin-top: -1px; +} +.block.reviews.dashboard .rating > span, +.reviews.summary .rating > span { + display: block; + overflow: hidden; + color: #da370a; + height: 0; + padding-top: 16px; + line-height: 1; + margin-top: -16px; +} +.block.reviews.dashboard .rating > span:before, +.reviews.summary .rating > span:before { + margin-top: -16px; +} +.block.reviews.dashboard .rating:before, +.reviews.summary .rating:before, +.block.reviews.dashboard .rating > span:before, +.reviews.summary .rating > span:before { + display: block; + top: 0; + left: 0; + width: 100%; + font-family: "icons"; + content: "\e009" "\e009" "\e009" "\e009" "\e009"; + font-style: normal; + font-size: 16px; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; +} +/* + Customer Reviews +-------------------------------------- */ +.block.reviews.list { + margin: 0 0 30px -20px; + padding: 0; +} +.block.reviews.list > .title { + display: none; +} +.block.reviews.list .item.review { + padding: 15px; +} +.block.reviews.list .item.review .review.title { + font-weight: 600; + display: block; + margin: 15px 0; +} +.block.reviews.list .item.review:nth-child(odd) { + background: #f8f8f8; +} +.block.reviews.list .review.details .author strong { + text-transform: uppercase; + font-weight: 600; +} +.block.reviews.list .review.details .review.date { + font-size: 12px; +} +.block.reviews.list .review.details p { + margin: 5px 0; +} +.block.reviews.list .review.details p span { + display: none; +} +.block.add.review { + margin: 0 0 30px -20px; + padding: 20px; + background: #f8f8f8; +} +.block.add.review .title { + display: none; +} +.block.add.review .fieldset { + margin: 30px 10px 30px 30px; + letter-spacing: -0.31em; + word-spacing: -0.43em; + border: 0; + padding: 0; + margin: 0; +} +.block.add.review .fieldset > * { + letter-spacing: normal; + word-spacing: normal; +} +.block.add.review .fieldset > .legend { + float: left; + font: 400 20px/1.2 "sourcesanspro"; + margin: -30px 30px 50px -30px; + width: 100%; +} +.block.add.review .fieldset > .legend + br { + display: block; + *zoom: 1; +} +.block.add.review .fieldset > .legend + br:before, +.block.add.review .fieldset > .legend + br:after { + content: ""; + display: table; +} +.block.add.review .fieldset > .legend + br:after { + clear: both; +} +.block.add.review .fieldset > .legend { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + float: left; + width: 100%; + margin: 0 0 20px; + padding: 10px 0 30px; + border-bottom: 1px solid; + border-color: #d7d7d7; +} +.block.add.review .fieldset > .legend + br { + clear: both; + display: block !important; +} +.block.add.review .fieldset > .legend span { + line-height: 1.2; + font-weight: 200; + font-size: 20px; +} +.block.add.review .fieldset > .legend strong { + margin-left: 20px; + font-size: 14px; + font-weight: 600; +} +.block.add.review .fieldset > .field:not(.ratings) { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: 0 0 20px; + margin: 0 0 10px; +} +.block.add.review .fieldset > .field:not(.ratings) > .label { + display: block; + padding-bottom: 5px; +} +.block.add.review .fieldset > .field:not(.ratings) .nested .field { + margin: 5px 0; +} +.block.add.review .fieldset > .field:not(.ratings).choice > .control { + width: auto; +} +.block.add.review .fieldset > .field:not(.ratings).choice > .label { + display: inline; +} +.block.add.review .fieldset > .field:not(.ratings).choice > input { + vertical-align: top; + margin-top: 2px; + margin-right: 5px; +} +.block.add.review .fieldset > .field:not(.ratings).required > .label > span:first-child:after { + content: '*'; + color: #da370a; +} +.block.add.review .fieldset > .field:not(.ratings) .addon { + display: table; + padding: 0; + width: 100%; +} +.block.add.review .fieldset > .field:not(.ratings) .addon textarea, +.block.add.review .fieldset > .field:not(.ratings) .addon select, +.block.add.review .fieldset > .field:not(.ratings) .addon input { + box-shadow: none; + display: table-cell; + margin: 0; + width: 100%; +} +.block.add.review .fieldset > .field:not(.ratings) .addon .addbefore, +.block.add.review .fieldset > .field:not(.ratings) .addon .addafter { + height: 0; + white-space: nowrap; + display: inline-block; + display: table-cell; + vertical-align: middle; + width: 1px; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #ffffff; + border: 1px solid #c2c2c2; + border-radius: 3px; + font: 400 14px "sourcesanspro"; + /* Prevent background color leak outs */ + + background-clip: padding-box; + outline: none; + height: 32px; + line-height: 1; + padding: 0 10px; +} +.block.add.review .fieldset > .field:not(.ratings) .addon .addbefore:focus, +.block.add.review .fieldset > .field:not(.ratings) .addon .addafter:focus { + border-color: #999999; +} +.control .block.add.review .fieldset > .field:not(.ratings) .addon .addbefore, +.control .block.add.review .fieldset > .field:not(.ratings) .addon .addafter { + width: 100%; +} +.block.add.review .fieldset > .field:not(.ratings) .addon .addbefore:disabled, +.block.add.review .fieldset > .field:not(.ratings) .addon .addafter:disabled { + opacity: 0.5; +} +.block.add.review .fieldset > .field:not(.ratings) .addon .addbefore::-webkit-input-placeholder, +.block.add.review .fieldset > .field:not(.ratings) .addon .addafter::-webkit-input-placeholder { + line-height: 1.333; +} +.block.add.review .fieldset > .field:not(.ratings) .addon .addbefore:-ms-input-placeholder, +.block.add.review .fieldset > .field:not(.ratings) .addon .addafter:-ms-input-placeholder { + line-height: 1.333; +} +.eq-ie8 .block.add.review .fieldset > .field:not(.ratings) .addon .addbefore, +.eq-ie8 .block.add.review .fieldset > .field:not(.ratings) .addon .addafter { + padding-top: 8px; +} +.block.add.review .fieldset > .field:not(.ratings) .note { + font-size: 12px; + margin-top: 3px; + padding-left: 15px; +} +.block.add.review .fieldset > .field:not(.ratings) .note:before { + border-bottom: 5px solid #675f55; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + content: ''; + display: inline-block; + font-size: 0; + line-height: 0; + margin: 4px 0 0 -14px; + position: absolute; + vertical-align: top; + width: 0; +} +.block.add.review .fieldset > .field:not(.ratings):last-child { + margin-bottom: 0; +} +.block.add.review .fieldset > .field:not(.ratings) .nested { + padding: 0 0 0; +} +.block.add.review .fieldset > .field:not(.ratings) .nested .field { + margin: 5px 0; +} +.block.add.review .fieldset > .field:not(.ratings) > .label { + padding: 0 0 5px; +} +.block.add.review .action.cancel { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; + display: inline; + color: #332e29; + text-decoration: none; + position: absolute; + left: 100%; + text-decoration: underline; + text-transform: uppercase; + margin-left: 20px; + margin-top: 10px; +} +.block.add.review .action.cancel:focus, +.block.add.review .action.cancel:active, +.block.add.review .action.cancel:hover { + color: #da370a; +} +.block.add.review .actions, +.block.add.review .field:not(.ratings) { + width: 60%; +} +.block.add.review .actions { + padding-top: 20px; + text-align: right; + position: relative; + z-index: 1; +} +/* + Review details +-------------------------------------- */ +.review.view .product.name { + display: inline-block; + margin: 0; +} +.review.view .product.details { + float: left; + margin-right: 30px; +} +.review.view .product.photo { + display: block; + margin-bottom: 30px; +} +.review.view .review.details { + margin: 30px 0; + display: table; +} +.review.view .review.details .ratings.summary { + margin-bottom: 30px; +} +.review.view .review.details .ratings.summary strong { + font-weight: 600; + display: block; + margin: 0 0 15px; +} +.review.view .review.details .ratings.summary .item { + display: table-row; +} +.review.view .review.details .ratings.summary .label { + padding: 0 0 10px; + padding-right: 10px; + display: table-cell; +} +.review.view .review.details .ratings.summary .label:after { + content: ': '; +} +.review.view .review.details .review.date { + font-size: 12px; +} +.review.view .review.details .review.title { + font-weight: 600; + font-size: 16px; + margin: 0 0 15px; +} +.customer.review.view + .actions { + clear: both; +} +/* + Messages +-------------------------------------- */ +.page.messages { + padding-left: 10px; + padding-right: 10px; + margin: 0 auto; + min-width: 1005px; + max-width: 1005px; + margin: 15px auto; +} +/* + Magento_Checkout + One page +-------------------------------------- */ +.block.progress.onepage { + float: left; + width: 200px; +} +.block.progress.onepage dt { + font-size: 16px; + font-weight: 400; + margin: 0 0 10px 0; +} +.block.progress.onepage dt a { + font-size: 14px; +} +.block.progress.onepage dd.complete { + padding: 0; + margin: 0 0 30px; +} +.block.progress.onepage address { + font-style: normal; +} +.opc.wrapper { + float: right; + width: 725px; +} +.opc.wrapper > .opc { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +.opc.wrapper > .opc .section { + margin-bottom: 4px; +} +.opc.wrapper > .opc .section > .step-title { + padding: 15px 20px; + line-height: 1; + background: #da370a; + font-size: 22px; +} +.opc.wrapper > .opc .section > .step-title h2 { + font-weight: 400; + font-size: 18px; + margin: 0; + padding: 0; + color: #fff; +} +.opc.wrapper > .opc .section > .step-title .number { + display: none; +} +.opc.wrapper > .opc .section.active > .step-title { + background: #f8f8f8; + margin-bottom: 0; +} +.opc.wrapper > .opc .section.active > .step-title h2 { + color: #675f55; +} +.opc.wrapper > .opc .section.allow > .step-title { + cursor: pointer; +} +.opc.wrapper > .opc .section.allow > .step-title h2:after { + display: block; +} +.opc.wrapper > .opc .section > .step { + padding: 0 20px 20px; + background: #f8f8f8; +} +.opc.wrapper > .opc .section > .step:before { + content: ''; + border-top: 3px solid #e5e5e5; + display: block; + margin-bottom: 20px; +} +.opc.wrapper .form:not(.login) .fieldset { + padding: 0; + margin: 20px 0; + border: 0; +} +.opc.wrapper .form:not(.login) .fieldset .field { + display: inline-block; + padding-right: 20px; + vertical-align: top; + width: 50%; +} +.opc.wrapper .form:not(.login) .fieldset .nested .field { + width: 100%; +} +.opc.wrapper .form:not(.login) .fieldset .actions { + margin-right: 30px; +} +.opc.wrapper .form:not(.login) .field { + margin: 0 0 10px; +} +.opc.wrapper .form:not(.login) .field:last-child { + margin-bottom: 0; +} +.opc.wrapper .form:not(.login) .field .nested { + padding: 0 0 0; +} +.opc.wrapper .form:not(.login) .field .nested .field { + margin: 5px 0; +} +.opc.wrapper .form:not(.login) .field:not(.choice) .label { + display: block; + padding-bottom: 5px; +} +.opc.wrapper .form:not(.login) .actions { + *zoom: 1; + text-align: right; +} +.opc.wrapper .form:not(.login) .actions:before, +.opc.wrapper .form:not(.login) .actions:after { + content: ""; + display: table; +} +.opc.wrapper .form:not(.login) .actions:after { + clear: both; +} +.opc.wrapper .form:not(.login) .actions button.action { + float: right; +} +.opc.wrapper .form:not(.login) .actions .secondary { + padding-top: 10px; + clear: right; + float: right; +} +.opc.wrapper .form:not(.login) .field.fullname + .field.company, +.opc.wrapper .form:not(.login) .field.name-lastname + .field.company, +.opc.wrapper .form:not(.login) .field.country, +.opc.wrapper .form:not(.login) .field.taxvat { + margin: 0 40% 30px 0; +} +.opc.wrapper .form:not(.login) .field.confirm, +.opc.wrapper .form:not(.login) .field.password { + margin-top: 20px; + margin-bottom: 20px; +} +.opc.wrapper .form:not(.login) .field.choice { + width: 100%; + display: block; +} +.opc.wrapper .form:not(.login) .field.persistent, +.opc.wrapper .form:not(.login) .field.save { + margin: 20px 0 0; +} +.opc.wrapper .form:not(.login) .field.addresses { + margin-bottom: 20px; +} +.opc.wrapper .form:not(.login):after { + content: attr(data-hasrequired); + display: block; + letter-spacing: normal; + word-spacing: normal; + color: #da370a; +} +.opc.loading .active { + position: relative; + z-index: 1; +} +.opc.loading .active:before { + content: ''; + display: block; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(255, 255, 255, 0.1); +} +.opc.loading .active .actions .action { + visibility: hidden; + width: 1px; + overflow: hidden; +} +/* + Load Indicator +-------------------------------------- */ +.load.indicator { + display: inline-block; + padding: 8px; + vertical-align: middle; +} +.load.indicator span { + display: block; + line-height: 16px; +} +.load.indicator span:before { + content: ''; + margin-right: 5px; + display: inline-block; + width: 16px; + height: 16px; + background: url(../images/loader.gif) no-repeat 0 0; + background-color: #da370a; + vertical-align: top; +} +/* + Step Login +-------------------------------------- */ +.step.login.wrapper { + *zoom: 1; + position: relative; + z-index: 1; + padding-bottom: 70px; +} +.step.login.wrapper:before, +.step.login.wrapper:after { + content: ""; + display: table; +} +.step.login.wrapper:after { + clear: both; +} +.step.login.wrapper .block { + float: left; + width: 50%; + margin-right: 0%; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.step.login.wrapper .block .fieldset { + border: 0; + margin: 0; + padding: 0; +} +.step.login.wrapper .block .fieldset .field { + width: 100%; +} +.step.login.wrapper .block.guest { + padding-left: 50px; +} +.step.login.wrapper .block.guest:before { + content: ''; + border-left: 1px solid #e5e5e5; + position: absolute; + top: 0; + margin-left: -25px; + bottom: 20px; +} +.step.login.wrapper .actions { + position: absolute; + bottom: 0; + padding: 20px 0; + text-align: right; + margin: 0; + width: 50%; +} +.step.login.wrapper .actions .secondary { + font-size: 12px; + margin-top: .5em; + line-height: 1.4em; + margin-bottom: -1.9em; +} +.step.login.wrapper .guest .actions { + margin-left: -50px; +} +.fieldset.guest > .field { + margin: 0 0 10px; +} +.fieldset.guest > .field:last-child { + margin-bottom: 0; +} +.fieldset.guest > .field .nested { + padding: 0 0 0; +} +.fieldset.guest > .field .nested .field { + margin: 5px 0; +} +/* + Step Review +-------------------------------------- */ +.checkout.submit.order .actions { + margin-top: 15px; + *zoom: 1; +} +.checkout.submit.order .actions:before, +.checkout.submit.order .actions:after { + content: ""; + display: table; +} +.checkout.submit.order .actions:after { + clear: both; +} +.checkout.submit.order .actions .primary { + float: right; +} +.checkout.submit.order .actions .secondary { + float: left; + line-height: 32px; +} +.order.data.items tfoot tr:first-child td { + border-top: 3px solid #e5e5e5; + padding-top: 15px; +} +.order.data.items tr.total td { + padding-top: 5px; + padding-bottom: 5px; + text-align: right; +} +.order.data.items tr.total:last-child td { + padding-bottom: 20px; +} +.order.data.items tr.grand.total td { + vertical-align: middle; +} +.order.data.items tr.grand.total .amount { + font-size: 24px; + color: #da370a; +} +.order.review.data th.col.price, +.order.review.data th.col.subtotal { + text-align: right; + padding-right: 10px; +} +.order.review.data th.col.item { + text-align: left; + padding-left: 20px; +} +/* + Magento_Checkout + Multishipping +-------------------------------------- */ +.multicheckout.progress { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; + float: left; + width: 200px; +} +.multicheckout.progress li { + font-size: 16px; + font-weight: 400; + margin: 0 0 10px 0; +} +.multicheckout.progress li.active { + font-weight: bold; +} +.multicheckout.progress + .form.address.edit { + float: right; + width: 725px; +} +.multicheckout.form.address, +.multicheckout.form.billing, +.multicheckout.form.shipping, +.multicheckout.form.overview, +.multicheckout.success, +.multicheckout.change.billing { + float: right; + width: 725px; +} +.multicheckout .title { + *zoom: 1; + margin: 0 0 30px; +} +.multicheckout .title:before, +.multicheckout .title:after { + content: ""; + display: table; +} +.multicheckout .title:after { + clear: both; +} +.multicheckout .title > strong { + font-size: 20px; + font-weight: 400; + margin: 4px 0 0; +} +.multicheckout .subtitle { + display: block; + *zoom: 1; + margin: 0 0 20px; +} +.multicheckout .subtitle:before, +.multicheckout .subtitle:after { + content: ""; + display: table; +} +.multicheckout .subtitle:after { + clear: both; +} +.multicheckout .subtitle > span { + font-size: 18px; + font-weight: normal; + margin: 4px 0 0; +} +.multicheckout .title .action, +.multicheckout .subtitle .action { + font-weight: 400; + font-size: 14px; + margin-left: 20px; + text-decoration: underline; + display: inline-block; + text-transform: lowercase; +} +.multicheckout .title .action:hover, +.multicheckout .subtitle .action:hover { + text-decoration: none; +} +.multicheckout .content { + *zoom: 1; +} +.multicheckout .content:before, +.multicheckout .content:after { + content: ""; + display: table; +} +.multicheckout .content:after { + clear: both; +} +.multicheckout .content > .block { + margin-bottom: 20px; +} +.multicheckout .content > .block:last-child { + margin-bottom: 0; +} +.multicheckout address { + font-style: normal; +} +.multicheckout > .block.shipping .box, +.multicheckout > .block.billing .box { + margin-bottom: 20px; +} +.multicheckout > .block.shipping .box:last-child, +.multicheckout > .block.billing .box:last-child { + margin-bottom: 0; +} +.multicheckout > .block.shipping .box.address, +.multicheckout.overview > .block.billing .box.address { + float: left; + width: 49%; +} +.multicheckout > .block.shipping .box.method, +.multicheckout.overview > .block.billing .box.method { + float: right; + width: 49%; +} +.multicheckout > .block.shipping .box.items, +.multicheckout.overview > .block.billing .box.items { + clear: both; +} +.multicheckout.overview > .block.billing { + *zoom: 1; +} +.multicheckout.overview > .block.billing:before, +.multicheckout.overview > .block.billing:after { + content: ""; + display: table; +} +.multicheckout.overview > .block.billing:after { + clear: both; +} +.multicheckout.overview > .block.billing .box.method p { + margin: 0 0 10px; +} +.multicheckout.overview > .block.billing .box.method th, +.multicheckout.overview > .block.billing .box.method td { + font-size: 14px; + padding: 0; +} +.multicheckout.overview > .block.shipping .content { + margin-bottom: 20px; +} +.multicheckout.overview > .block.shipping .content:last-child { + margin-bottom: 0; +} +.multicheckout.overview .checkout.agreements { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; + margin: 10px 0; +} +.multicheckout.overview .checkout.agreements .item { + margin: 0 0 10px; +} +.multicheckout.overview .checkout.agreements .item:last-child { + margin: 0; +} +.multicheckout.overview .checkout.agreements .agreement { + background-color: #f8f8f8; + border: 1px solid #e5e5e5; + font-size: 11px; + overflow: auto; + margin: 0 0 10px; + padding: 15px; +} +.multicheckout.overview > .checkout.review .grand.total { + margin: 15px 0; + text-align: right; +} +.multicheckout.overview > .checkout.review .grand.total .label { + font-size: 18px; + font-weight: 400; +} +.multicheckout.overview > .checkout.review .grand.total .price { + color: #da370a; + font-size: 24px; + font-weight: 700; +} +.multicheckout.change.billing .box { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #f8f8f8; + float: left; + margin-bottom: 20px; + margin-left: 2%; + padding: 30px; + width: 49%; +} +.multicheckout.change.billing .box.odd { + clear: left; + margin-left: 0; +} +.multicheckout.change.billing .box .actions { + margin: 15px 0 0; +} +.multicheckout.change.billing .actions { + clear: left; +} +.multicheckout .actions { + *zoom: 1; + margin: 20px 0; +} +.multicheckout .actions:before, +.multicheckout .actions:after { + content: ""; + display: table; +} +.multicheckout .actions:after { + clear: both; +} +.multicheckout.change.billing .actions { + margin-top: 0; +} +.multicheckout .action.back { + float: left; + margin: 9px 0 0; +} +.multicheckout .action.back span:before { + content: "\00AB\00A0"; +} +.multicheckout .action.continue.disabled, +.multicheckout .action.submit.disabled { + opacity: 0.3; +} +.multicheckout .action.continue.disabled:hover, +.multicheckout .action.submit.disabled:hover { + background: #da370a; +} +.multicheckout .action.add { + float: right; + text-decoration: none; + text-transform: uppercase; +} +.multicheckout.success .action.continue { + text-decoration: none; + text-transform: none; +} +.multicheckout .product.name { + margin-bottom: 0; +} +.multicheckout .items.data td.col.address { + padding-top: 10px; +} +.multicheckout .items.data td.col.delete, +.multicheckout .items.data td.col.product { + padding-top: 18px; +} +.multicheckout .items.data .col.item { + padding-left: 0; + text-align: left; +} +.multicheckout .items.data th.col.item, +.multicheckout .items.data th.col.qty { + padding-bottom: 5px; +} +.multicheckout .items.data .mark, +.multicheckout .items.data .amount { + text-align: right; +} +.multicheckout .items.data tfoot tr.total:first-child td { + border-top: 3px solid #e5e5e5; + padding-top: 15px; +} +.multicheckout .items.data tfoot tr.total:last-child td { + border-bottom: 0; +} +.multicheckout .items.data tfoot tr.total td { + padding-top: 5px; + padding-bottom: 5px; + text-align: right; +} +.multicheckout .items.data tfoot tr.total.grand td { + vertical-align: middle; +} +.multicheckout .items.data tfoot tr.total.grand .amount { + color: #da370a; + font-size: 24px; +} +.multicheckout .items.data .applicable { + padding-top: 7px; +} +.multicheckout .block .items.data tr td:first-child { + padding-left: 0; +} +.multicheckout .block .items.data tr td:last-child { + padding-right: 0; +} +.multicheckout .shipping .items.data tr:last-child td { + border-bottom: 1px solid #e5e5e5; +} +.multicheckout .sp-methods, +.multicheckout .items.methods { + margin: 0; +} +.multicheckout .sp-methods dt, +.multicheckout .items.methods dt { + margin: 0; +} +.multicheckout .sp-methods dd, +.multicheckout .items.methods dd { + margin: 0; + padding: 0; +} +.multicheckout .sp-methods dd ul, +.multicheckout .items.methods dd ul { + margin: 0 0 15px; + padding: 10px; +} +.multicheckout.form.address .col.address select { + max-width: 450px; +} +.checkout-multishipping-address-newshipping .form.address.edit, +.checkout-multishipping-address-editshipping .form.address.edit { + float: right; + width: 725px; +} +.block.gift.message { + margin: 30px 0 0; +} +.block.gift.message .title { + font-size: 16px; + font-weight: 400; + margin-bottom: 15px; +} +/* + Magento_Checkout + Gift Message +-------------------------------------- */ +.gift.message > .legend { + font-size: 16px; + margin: 0 0 20px; +} +.gift.message .block.items { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + border: 1px solid #e5e5e5; + height: 310px; + overflow: auto; + padding: 20px; +} +.gift.message dt { + margin: 30px 0 0; +} +.gift.message dt:first-child { + margin: 0; +} +.gift.message dt .title { + font-size: 16px; + margin: 0 0 15px; +} +.gift.message dt > .price { + margin: 0 0 10px; +} +.gift.message dd { + margin: 20px 0 0 20px; +} +.gift.message .field.choice input { + margin-right: 5px; + margin-top: 2px; + vertical-align: top; +} +.gift.message .design { + *zoom: 1; + margin: 10px 0 0; +} +.gift.message .design:before, +.gift.message .design:after { + content: ""; + display: table; +} +.gift.message .design:after { + clear: both; +} +.gift.message .design img { + height: 75px; + width: 75px; + float: left; + margin-right: 15px; +} +.gift.message .design > .price { + float: left; +} +.gift.message .field.gift.wrapping .label { + display: block; + padding-bottom: 5px; +} +.gift.message .field.gift.wrapping .control select { + width: 100%; +} +.gift.message .activate.message { + display: inline-block; + margin: 10px 0 0; +} +.gift.message .activate.message + div .fieldset { + margin-top: 0; +} +.gift.message .field.gift.wrapping .design > .price > .price, +.gift.message dt > .price > .price { + display: block; +} +.gift.message .field.gift.wrapping .design > .price > .price > span, +.gift.message dt > .price > .price > span { + display: inline-block; +} +.gift.message .no-display { + display: none; +} +.gift.message .options.order .field.gift.wrapping, +.gift.message .options.order .field.text { + width: 100%; +} +.gift.message .options.individual ol { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +.gift.message .options.individual li { + *zoom: 1; + border-bottom: 1px solid #e5e5e5; + margin: 0 0 15px; + padding: 0 0 15px; + overflow: hidden; +} +.gift.message .options.individual li:before, +.gift.message .options.individual li:after { + content: ""; + display: table; +} +.gift.message .options.individual li:after { + clear: both; +} +.gift.message .options.individual .number { + border-bottom: 1px solid #e5e5e5; + color: #999999; + margin: 0 0 15px; + padding: 0 0 5px; +} +.gift.message .options.individual .product { + float: left; + margin-right: 20px; + text-align: center; +} +.gift.message .options.individual .product > .product { + float: none; + margin: 0; +} +.gift.message .options.individual .product .img { + margin-bottom: 5px; +} +.gift.message .options.individual .options-items-container { + width: 100%; +} +.gift.message .options.individual .options-items-container .field { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + width: 100%; +} +.gift.message .options.individual .field.text { + width: 100%; +} +.gift.message .options.individual .item.options { + overflow: hidden; +} +.gift.message .extra-options-container { + margin: 10px 0 0; +} +.gift.message .extra-options-container .field.choice { + margin: 0 0 10px; +} +.multicheckout .gift.message { + margin: 20px 0; +} +.multicheckout .gift.message .fieldset { + margin: 20px 0; +} +.multicheckout .gift.message .block.message { + margin: 0; +} +.multicheckout .gift.message .block.message .fieldset { + margin: 0; +} +.multicheckout .gift.message .field { + display: inline-block; + padding-right: 20px; + vertical-align: top; + width: 50%; +} +.data.table .gift.wrapping { + font-size: 13px; + margin: 0; +} +.data.table .gift.wrapping dt { + font-weight: 600; + margin: 5px 0 0; +} +.data.table .gift.wrapping dd { + margin: 0 0 5px; +} +/* + Magento_Checkout + Shopping Cart +-------------------------------------- */ +.cart.container { + *zoom: 1; + position: relative; + z-index: 1; +} +.cart.container:before, +.cart.container:after { + content: ""; + display: table; +} +.cart.container:after { + clear: both; +} +.cart.main.actions { + padding: 20px 0; +} +.cart.main.actions .action.continue { + position: absolute; + text-decoration: underline; + right: 0; + top: 3px; +} +.items.data { + width: 100%; +} +.items.data thead tr:last-child th { + padding-bottom: 10px; +} +.items.data th.col.item > span { + display: none; +} +.items.data td.col.qty { + width: 40px; + padding-top: 20px; + text-align: center; +} +.review .items.data td.col.qty { + padding-top: 16px; +} +.items.data th.col.qty { + text-transform: uppercase; +} +.items.data input.qty { + width: 50px; + text-align: center; +} +.items.data td.col.price, +.items.data td.col.subtotal { + text-align: right; +} +.items.data .product.photo { + padding-right: 20px; + display: table-cell; + width: 1%; + vertical-align: top; +} +.items.data .product.details { + display: table-cell; + width: 99%; + vertical-align: top; +} +.items.data .item.actions { + text-align: right; +} +.items.data .item.actions div.actions { + padding-bottom: 30px; +} +.items.data td { + border-left: 0; + border-right: 0; + padding: 26px 10px 10px; + vertical-align: top; + background: transparent; +} +.items.data td:first-child { + padding-left: 20px; +} +.items.data td:last-child { + padding-right: 20px; +} +.items.data tbody:nth-child(even) tr { + background: #f8f8f8; +} +.items.data th { + border-left: 0; + border-right: 0; + text-align: center; + font-weight: 400; + font-size: 14px; + vertical-align: top; +} +.items.data tr:first-child th { + font-weight: 400; + font-size: 16px; +} +.items.data .item.actions td { + padding: 0 20px 10px; + line-height: 16px; +} +.items.data .item.actions td .action { + margin-left: 20px; +} +.items.data .item.actions td .action.towishlist { + font-size: 14px; +} +.items.data .item.actions td .action.delete { + vertical-align: top; + margin-top: 0; +} +.items.data .item.actions td:before { + content: ''; + border-top: 1px solid #e5e5e5; + display: block; + height: 0; + overflow: hidden; + margin: 0 0 10px; +} +.items.data .item.options dt { + font-weight: 400; + display: inline; + margin-right: 10px; + float: left; + clear: left; +} +.items.data .item.options dt:after { + content: ': '; +} +.items.data .item.options dd { + font-weight: 200; + margin: 0 0 10px 10px; + padding: 0; +} +.cart.table.wrapper { + float: left; + width: 665px; +} +.cart.summary { + position: relative; + z-index: 1; + margin-top: 33px; + background: #f8f8f8; + display: inline-block; + width: 290px; + padding: 20px; + margin-left: 10px; +} +.cart.summary .summary.title { + font-size: 20px; + font-weight: 200; + display: block; + border-bottom: 3px solid #e5e5e5; + padding-bottom: 15px; +} +.cart.summary .block { + margin-bottom: 0; + border-bottom: 1px solid #e5e5e5; + font-size: 12px; +} +.cart.summary .block > .title { + cursor: pointer; + padding: 10px 5px; + margin: 0; + line-height: 16px; +} +.cart.summary .block > .title strong { + font-size: 12px; + font-weight: 600; +} +.cart.summary .block > .title strong:after { + content: "\e00d"; + font-family: "icons"; + float: right; + font-weight: 400; + font-size: 16px; + line-height: 16px; +} +.cart.summary .block > .title.active strong:after { + content: "\e011"; +} +.cart.summary .block > .content { + display: none; + padding: 15px 15px 20px; +} +.cart.summary .block.active > .content { + display: block; +} +.cart.summary .block .fieldset { + padding: 0; + margin: 0; + border: 0; +} +.cart.summary .block .fieldset .field { + margin: 0 0 10px; +} +.cart.summary .block input[type="text"] { + padding: 0 5px; + font-size: 12px; + height: 30px; +} +.cart.summary .block .field:not(.choice) .label { + padding: 0 0 5px; + display: block; +} +.cart.summary .block select { + padding: 5px 5px 4px; + font-size: 12px; +} +.cart.summary .block .action { + padding: 6px 11px 5px; +} +.cart.summary .block .action span { + font-size: 12px; + line-height: 12px; +} +.cart.summary .block .action.check span { + display: inline; + color: #332e29; + text-decoration: none; +} +.cart.summary .block .action.check span:focus, +.cart.summary .block .action.check span:active, +.cart.summary .block .action.check span:hover { + color: #da370a; +} +.cart.container > .summary.sticky { + position: fixed; + display: inline-block !important; +} +.cart.container > .summary.bottom { + position: absolute; + vertical-align: bottom; + bottom: 0; +} +.cart > .summary.fixed, +.cart.container > .summary > .container.fixed { + position: fixed; + top: 0; +} +.cart.table.wrapper.detailed + .cart.summary { + margin-top: 54px; +} +.block.shipping .content { + *zoom: 1; +} +.block.shipping .content:before, +.block.shipping .content:after { + content: ""; + display: table; +} +.block.shipping .content:after { + clear: both; +} +.block.shipping .fieldset.estimate .actions { + display: table-cell; + width: 1%; + white-space: nowrap; + vertical-align: bottom; +} +.block.shipping .fieldset.rates { + padding-top: 20px; +} +.block.shipping .fieldset.rates .actions { + text-align: right; +} +.block.shipping .field.postcode { + display: table-cell; + width: 99%; + vertical-align: bottom; + padding-right: 10px; +} +.block.shipping .field.postcode div.mage-error { + position: absolute; +} +.block.discount .content { + *zoom: 1; +} +.block.discount .content:before, +.block.discount .content:after { + content: ""; + display: table; +} +.block.discount .content:after { + clear: both; +} +.block.discount .fieldset.coupon { + position: relative; +} +.block.discount .fieldset.coupon.applied { + padding-bottom: 20px; +} +.block.discount .fieldset.coupon .field { + display: table-cell; + width: 99%; + vertical-align: bottom; + padding-right: 10px; +} +.block.discount .fieldset.coupon .field .label { + float: left; + margin-right: -100px; +} +.block.discount .fieldset.coupon .field input { + clear: left; +} +.block.discount .fieldset.coupon .field div.mage-error { + position: absolute; +} +.block.discount .fieldset.coupon .actions { + vertical-align: bottom; + display: table-cell; + width: 1%; + white-space: nowrap; +} +.block.discount .fieldset.coupon .action.cancel { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; + display: inline; + color: #332e29; + text-decoration: none; + position: absolute; + left: 0; + bottom: 0; + margin-bottom: -15px; +} +.block.discount .fieldset.coupon .action.cancel:focus, +.block.discount .fieldset.coupon .action.cancel:active, +.block.discount .fieldset.coupon .action.cancel:hover { + color: #da370a; +} +.block.discount .fieldset.coupon .action.cancel span { + text-transform: none; +} +.sp-methods dt, +.items.methods dt, +.sp-methods .item.title, +.items.methods .item.title { + font-weight: bold; +} +.sp-methods dd, +.items.methods dd, +.sp-methods .item.options, +.items.methods .item.options { + margin: 0 0 15px; + padding: 10px; +} +.field.choice.payment > .label { + font-weight: bold; +} +.data-table { + width: 100%; + border: 0; +} +.data-table td { + border-right: 1px solid #e5e5e5; + padding: 5px; + vertical-align: top; +} +.data-table td:last-child { + border: 0; +} +.cart.totals { + padding: 20px 0; +} +.cart.totals .table.totals { + width: 100%; +} +.cart.totals td, +.cart.totals th { + text-align: right; + padding: 4px 0 4px 5px; +} +.cart.totals td:not(:first-child) strong { + font-size: 24px; + color: #da370a; +} +.cart.totals td:first-child { + text-align: left; + padding-left: 0; +} +.cart.totals td:first-child strong { + font-size: 14px; +} +.checkout.methods.items { + background: #fff; + padding: 20px; +} +.checkout.methods.items .item { + margin: 15px auto; + text-align: center; +} +.checkout.methods.items .action.multicheckout { + text-decoration: underline; +} +/* + Magento_Checkout + Mini cart +-------------------------------------- */ +.minicart.wrapper { + float: right; + margin-right: 40px; + z-index: 11; +} +.minicart.wrapper .block.minicart { + *zoom: 1; + left: -100%; + margin-top: 15px; + position: absolute; + z-index: 2; + background: #f8f8f8; + border: 2px solid #d7d7d7; + border-radius: 3px; + text-align: center; + padding: 58px 345px 25px 15px; +} +.minicart.wrapper .block.minicart:before, +.minicart.wrapper .block.minicart:after { + content: ""; + display: table; +} +.minicart.wrapper .block.minicart:after { + clear: both; +} +.minicart.wrapper .block.minicart:before { + content: ''; + border-left: 10px solid transparent; + border-right: 10px solid transparent; + border-bottom: 10px solid #f8f8f8; + height: 0; + width: 0; + overflow: hidden; + display: block; + position: absolute; + top: 0; + margin-top: -10px; + margin-right: 25px; + right: 0; + zoom: 1; + z-index: 2; +} +.minicart.wrapper .block.minicart > .content { + margin-top: -33px; +} +.minicart.wrapper .block.minicart > .content .subtotal { + *zoom: 1; +} +.minicart.wrapper .block.minicart > .content .subtotal:before, +.minicart.wrapper .block.minicart > .content .subtotal:after { + content: ""; + display: table; +} +.minicart.wrapper .block.minicart > .content .subtotal:after { + clear: both; +} +.minicart.wrapper .block.minicart > .content .subtotal .mark { + display: inline-block; + font-weight: 600; + font-size: 18px; + float: left; + line-height: 24px; +} +.minicart.wrapper .block.minicart > .content .subtotal > .amount { + text-align: right; + float: right; + display: inline-block; + font-weight: 700; + font-size: 24px; + line-height: 24px; + color: #da370a; +} +.minicart.wrapper .block.minicart > .content .subtotal .amount.incl.tax { + display: block; + font-size: 14px; +} +.minicart.wrapper .block.minicart > .content .subtotal .amount.incl.tax:after { + content: ')'; +} +.minicart.wrapper .block.minicart > .content .subtotal .amount.incl.tax .price:after { + content: ' ('; +} +.minicart.wrapper .block.minicart > .content .disclaimer { + font-size: 12px; +} +.minicart.wrapper .block.minicart > .content .actions .secondary { + margin-top: 15px; + margin-bottom: -15px; + text-align: right; +} +.minicart.wrapper .block.minicart > .content .actions .secondary a { + color: #da370a; +} +.minicart.wrapper .block.minicart > .content .subtitle { + display: block; + text-align: left; + padding: 0 50px; + margin: 0 0 15px 0; + font-weight: 400; +} +.minicart.wrapper .block.minicart > .content .subtitle.empty { + margin: 10px -320px 0 0; + padding: 0; + float: right; + width: 310px; + clear: right; +} +.minicart.wrapper .block.minicart .minicart.empty.text, +.minicart.wrapper .block.minicart > .title, +.minicart.wrapper .block.minicart > .content .subtotal, +.minicart.wrapper .block.minicart > .content .disclaimer, +.minicart.wrapper .block.minicart > .content > .actions { + margin: 0 -330px 15px 0; + text-align: left; + float: right; + width: 310px; + clear: right; +} +.minicart.wrapper .block.minicart > .title .text { + display: none; +} +.minicart.wrapper .block.minicart > .title .qty:before { + content: attr(title) ": "; +} +.minicart.wrapper .block.minicart .minicart.empty.text { + margin-top: 15px; +} +.minicart.wrapper .block.minicart > .title strong { + font-weight: 400; +} +.minicart.wrapper.active { + position: relative; + z-index: 11; +} +.minicart.wrapper.active:before { + content: ''; + position: fixed; + z-index: 1; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: #000; + opacity: 0.01; +} +.minicart.wrapper.active .block.minicart { + left: auto; + right: -20px; +} +.minicart.wrapper .action.previous, +.minicart.wrapper .action.next { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; + width: 25px; + overflow: hidden; + position: absolute; + right: 10px; + top: 50%; + margin-top: -22px; +} +.minicart.wrapper .action.previous span, +.minicart.wrapper .action.next span { + width: 42px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + color: #c2c2c2; + margin-left: -10px; + overflow: hidden; +} +.minicart.wrapper .action.previous span:after, +.minicart.wrapper .action.next span:after { + font-family: "icons"; + font-size: 42px; + line-height: 42px; + height: 42px; + margin: 0; + overflow: hidden; + content: "\e01a"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.minicart.wrapper .action.previous span:active, +.minicart.wrapper .action.next span:active { + outline: 0; +} +.minicart.wrapper .action.previous span:after, +.minicart.wrapper .action.next span:after { + text-indent: 0; + display: block; + margin: 0; +} +.minicart.wrapper .action.previous[disabled], +.minicart.wrapper .action.next[disabled] { + opacity: 0.3; +} +.minicart.wrapper .action.previous { + right: auto; + left: 0; +} +.minicart.wrapper .action.previous span:after { + content: "\e01b"; +} +.minicart.wrapper .action.close { + position: absolute; + top: 10px; + right: 15px; +} +.minicart.wrapper p { + clear: both; +} +.block.minicart.empty > .title, +.eq-ie8 .minicart.wrapper.active:before { + display: none; +} +/* + Product options +-------------------------------------- */ +.minicart .product.options.wrapper { + position: relative; + display: inline; + z-index: 1; + margin: 7px 0; +} +.minicart .product.options.wrapper .more { + color: #675f55; + font-size: 12px; + line-height: 1; + padding: 0; + border-bottom: 1px dotted #675f55; + cursor: help; +} +.minicart .product.options.wrapper:hover { + z-index: 99; +} +.minicart .product.options.wrapper:hover .product.options.details { + display: block; +} +.minicart .product.options.wrapper:hover:before { + content: ''; + border-left: 10px solid rgba(0, 0, 0, 0.8); + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + height: 0; + width: 0; + overflow: hidden; + display: block; + position: absolute; + top: 0; + margin-top: 0; + left: -10px; + zoom: 1; + z-index: 2; +} +.minicart .product.options.details { + display: none; + position: absolute; + background: rgba(0, 0, 0, 0.8); + border-radius: 6px; + padding: 10px; + right: 100%; + top: 50%; + margin-top: -20px; + margin-right: 10px; + float: left; + max-width: 200px; + min-width: 100px; + color: #ffffff; +} +.minicart .product.options.details .title { + font-weight: 600; +} +.minicart .product.options.list { + padding-left: 10px; +} +.minicart .product.options.list dt { + font-size: 12px; + display: inline; + margin: 0; + padding: 0; + font-weight: 600; +} +.minicart .product.options.list dt:after { + content: ': '; +} +.minicart .product.options.list dt:before { + content: ''; + display: block; +} +.minicart .product.options.list dd { + font-size: 12px; + display: inline-block; + padding: 0; + margin: 0; +} +.minicart .item:not(.shown) + .shown .product.options.details, +.minicart :first-child .product.options.details { + right: auto; + left: 100%; + margin-left: 10px; +} +.minicart .item:not(.shown) + .shown .product.options.wrapper:before, +.minicart :first-child .product.options.wrapper:before { + border-right: 10px solid rgba(0, 0, 0, 0.8); + border-left: 0; + left: auto; + right: -10px; +} +.minicart.wrapper .block.minicart > .content > .actions .primary { + *zoom: 1; + text-align: center; +} +.minicart.wrapper .block.minicart > .content > .actions .primary:before, +.minicart.wrapper .block.minicart > .content > .actions .primary:after { + content: ""; + display: table; +} +.minicart.wrapper .block.minicart > .content > .actions .primary:after { + clear: both; +} +.minicart.wrapper .block.minicart > .content > .actions .primary .checkout.paypal { + display: inline; +} +.minicart.wrapper .block.minicart > .content > .actions .primary .checkout.paypal input[type="image"] { + margin-top: 5px; + float: left; +} +.minicart.wrapper .block.minicart > .content > .actions .primary .checkout.paypal:after { + float: none; +} +.minicart.wrapper .block.minicart > .content > .actions .primary .checkout.paypal + .action.checkout { + float: right; +} +.block.minicart .products.minilist { + float: left; + padding: 0; + border-right: 1px solid #d7d7d7; + max-width: 561px; + padding: 0 30px; + position: relative; + z-index: 1; +} +.block.minicart .products.minilist .minilist.items { + position: relative; + white-space: nowrap; +} +.block.minicart .products.minilist.animation { + position: relative; +} +.block.minicart .products.minilist.animation .items-wrapper { + overflow: hidden; +} +.block.minicart .products.minilist.animation .item { + visibility: visible; +} +.block.minicart .products.minilist .item { + padding: 0 20px; + vertical-align: top; + text-align: left; + white-space: normal; + display: none; + display: inline-block; + width: 187px; + visibility: hidden; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin-left: 0; +} +.block.minicart .products.minilist .item:before { + content: ''; + width: 0; + display: block; + border-left: 1px solid #d7d7d7; + height: 100%; + margin-left: -20px; + position: absolute; +} +.block.minicart .products.minilist .item.item:not(.shown) + .shown:before, +.block.minicart .products.minilist .item:first-child:before { + display: none; +} +.wrapper.active .block.minicart .products.minilist .item.shown { + visibility: visible; +} +.block.minicart .products.minilist .item.hidden { + margin-left: -187px !important; +} +.block.minicart .products.minilist .item .product.photo { + display: block; + margin-bottom: 10px; +} +.block.minicart .products.minilist .item .product.photo .photo.container { + overflow: visible !important; + margin: 0 auto; +} +.block.minicart .products.minilist .item .product.photo .photo.image { + border: 1px solid #dcdcdc; + display: block; + margin: 0 auto; +} +.block.minicart .products.minilist .item .pricing { + margin-top: 10px; +} +.block.minicart .products.minilist .item .pricing:not(.complex) .label.display { + display: none; +} +.block.minicart .products.minilist .item .pricing .label:after { + content: ': '; +} +.block.minicart .products.minilist .item .actions { + float: right; +} +.block.minicart .products.minilist .item .action.edit { + font-size: 12px; +} +.block.minicart .products.minilist .item .product.options.wrapper + .action.edit { + margin-right: 8px; +} +.block.minicart .products.minilist .item .product.options.wrapper + .action.edit:before { + content: '|'; + display: inline-block; + text-decoration: none; + padding: 0 8px; + margin-right: -16px; +} +.block.minicart .products.minilist .item .product.options.wrapper + .action.edit:hover:before { + color: #675f55; +} +.block.minicart .products.minilist .item .action.delete { + position: absolute; + margin-left: -5px; + margin-top: -1.35em; + bottom: 0; +} +.eq-ie8 .block.minicart .products.minilist .action.delete, +.eq-ie8 .block.minicart .products.minilist .action.edit { + visibility: hidden; +} +.eq-ie8 .block.minicart .products.minilist .shown .action.delete, +.eq-ie8 .block.minicart .products.minilist .shown .action.edit { + visibility: visible; +} +.eq-ie8 .block.minicart .products.minilist .item:before { + border-left: 0; +} +.action.delete { + display: inline-block; +} +.action.delete span { + color: #c2c2c2; + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; +} +.action.delete span:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: "\e000"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.delete span:active { + outline: 0; +} +.action.delete span:after { + text-indent: 0; + display: block; + margin: 0; +} +.action.delete:focus, +.action.delete:active, +.action.delete:hover { + outline: none; +} +.action.delete:focus span, +.action.delete:active span, +.action.delete:hover span { + color: #999999; +} +.action.checkout.shadow span { + text-shadow: 0px 1px 2px #000; +} +.action.close { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; +} +.action.close span { + width: 11px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; +} +.action.close span:after { + font-family: "icons"; + font-size: 11px; + line-height: 11px; + height: 11px; + margin: 0; + overflow: hidden; + content: "\e012"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.close span:active { + outline: 0; +} +.action.close span:after { + text-indent: 0; + display: block; + margin: 0; +} +.action.showcart { + width: 32px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + margin-top: 20px; + margin-left: 20px; + color: #837d75; + position: relative; +} +.action.showcart:after { + font-family: "icons"; + font-size: 32px; + line-height: 32px; + height: 32px; + margin: 0; + overflow: hidden; + content: "\e014"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.showcart:active { + outline: 0; +} +.action.showcart:after { + text-indent: 0; + display: block; + margin: 0; +} +.action.showcart:hover, +.action.showcart:active, +.action.showcart:focus, +.action.showcart.active { + color: #999999; + outline: none; +} +.action.showcart .qty { + position: absolute; + left: 70%; + top: 0; + margin-top: -30%; + text-indent: 0; + background: #da370a; + display: inline-block; + border: 1px solid #da370a; + border-radius: 50px; + font-size: 14px; + font-weight: 600; + color: #fff; + line-height: 1.7em; + vertical-align: middle; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + min-width: 1.87em; + min-height: 1.7em; + text-align: center; + padding: 0 4px; +} +.action.showcart .qty.empty { + display: none; +} +/* + Paypal button +-------------------------------------- */ +.checkout.paypal { + display: none; + display: inline-block; + vertical-align: top; +} +.checkout.paypal input[type="image"] { + display: inline-block; + vertical-align: top; +} +.checkout.paypal.before:before { + content: "- " attr(data-label) " -"; + text-transform: uppercase; + display: inline-block; + line-height: 32px; + font-size: 14px; + vertical-align: middle; + margin: 0 5px; +} +.checkout.paypal.after:after { + content: "- " attr(data-label) " -"; + text-transform: uppercase; + display: inline-block; + line-height: 32px; + font-size: 14px; + vertical-align: middle; + margin: 0 5px; +} +.box.tocart .checkout.paypal.after:after { + display: none; +} +.box.tocart .checkout.paypal.after:before { + content: "- " attr(data-label) " -"; + text-transform: uppercase; + display: inline-block; + line-height: 32px; + font-size: 14px; + vertical-align: middle; + margin: 0 5px; +} +.checkout.methods .checkout.paypal.after:after { + display: block; + text-align: center; +} +/* + Magento_Sales +-------------------------------------- */ +.block.reorder { + padding-right: 30px; +} +.block.reorder .item { + padding-left: 20px; +} +.block.reorder .item input { + float: left; + margin-top: 2px; + margin-left: -20px; +} +.block.reorder .subtitle { + display: block; + margin: 0 0 15px; + font-weight: 600; +} +.block.reorder .actions { + margin: 15px 0 0; +} +.block.reorder .actions .primary, +.block.reorder .actions .secondary { + margin-right: 5px; + display: inline-block; + vertical-align: middle; +} +/* + Magento_Newsletter +-------------------------------------- */ +.block.newsletter { + text-align: left; +} +.block.newsletter .title { + display: none; +} +.block.newsletter .field { + *zoom: 1; +} +.block.newsletter .field:before, +.block.newsletter .field:after { + content: ""; + display: table; +} +.block.newsletter .field:after { + clear: both; +} +.block.newsletter .label { + display: block; + font-size: 16px; + margin-bottom: 10px; + line-height: 1.2; +} +.block.newsletter .control { + float: left; + width: 100%; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + padding-right: 45px; +} +.block.newsletter .actions { + padding-left: 10px; + float: right; + margin-left: -45px; +} +.block.newsletter input[type="text"] { + width: 100%; +} +.footer .block.newsletter { + width: 310px; + float: right; +} +.action.subscribe { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; + background: #da370a; + border-radius: 3px; + padding: 7px; + border: 1px solid #da370a; + vertical-align: top; +} +.action.subscribe span { + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + color: #fff; +} +.action.subscribe span:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: "\e001"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.subscribe span:active { + outline: 0; +} +.action.subscribe span:after { + text-indent: 0; + display: block; + margin: 0; +} +.form.newsletter.manage .fieldset { + margin: 0 0 20px; + padding: 0; + border: 0; +} +.form.newsletter.manage .fieldset .legend { + float: left; + margin: 0 0 20px; + font-weight: 600; +} +.form.newsletter.manage .fieldset .legend + br { + display: block; + clear: both; +} +.form.newsletter.manage .actions .primary { + margin-bottom: 15px; +} +/* + Widgets +-------------------------------------- */ +.widget ul { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +/* + Magento_Catalog + Compare +-------------------------------------- */ +.block.compare > .title .qty { + font-size: 16px; + margin-right: -5px; +} +.block.compare > .title .qty:before { + content: '('; +} +.block.compare > .title .qty:after { + content: ')'; +} +.block.compare .item { + padding-right: 20px; + overflow: hidden; +} +.block.compare .product.name { + float: left; +} +.block.compare .action.delete { + margin-right: -20px; + float: right; +} +.block.compare .action.compare { + float: right; +} +.block.compare .action.clear { + float: left; + margin-top: 10px; +} +.block.compare .actions { + *zoom: 1; + margin-top: 15px; +} +.block.compare .actions:before, +.block.compare .actions:after { + content: ""; + display: table; +} +.block.compare .actions:after { + clear: both; +} +.catalog-product-compare-index .action.print { + float: right; + margin-top: -50px; +} +.comparison.wrapper { + clear: both; + position: relative; + z-index: 1; + margin-bottom: 50px; +} +.comparison.wrapper:after { + content: ''; + position: absolute; + z-index: 2; + right: 0; + top: 0; + height: 100%; + width: 15px; +} +.comparison.container { + overflow-y: hidden; + overflow-x: auto; +} +.data.comparison { + table-layout: fixed; +} +.data.comparison .cell.label { + width: 130px; + padding-left: 10px; + font-weight: 600; + text-align: left; + border-right: 1px solid #e5e5e5; +} +.data.comparison .cell.label .attribute.label { + display: block; + width: 100%; + word-break: break-all; +} +.data.comparison .cell.label.product { + border-bottom: 1px solid #e5e5e5; +} +.data.comparison .cell { + padding: 15px; + vertical-align: top; +} +.data.comparison .cell p:first-child { + margin-top: 0; +} +.data.comparison .cell .attibute.value { + width: 100%; + overflow: hidden; +} +.data.comparison .cell.product { + width: 140px; +} +.data.comparison .cell.product.info { + border-bottom: 1px solid #e5e5e5; +} +.data.comparison .cell.attribute { + font-size: 12px; +} +.data.comparison td:last-child { + border-right: 1px solid #e5e5e5; +} +.data.comparison tr:nth-child(odd) .cell.attribute { + background-color: #f8f8f8; +} +.data.comparison .product.photo { + text-align: center; + display: block; + margin: 0 auto 15px; +} +.data.comparison .product.photo .img.photo.container { + display: inline-block !important; +} +.data.comparison .actions, +.data.comparison .price-box, +.data.comparison .product.rating, +.data.comparison .product.name { + margin: 15px 0; +} +.data.comparison .addto.links { + margin-top: 15px; + padding-top: 15px; + border-top: 1px solid #e5e5e5; + font-size: 12px; +} +.data.comparison .cell.remove { + padding-top: 0; + padding-bottom: 0; + text-align: right; +} +.data.comparison .cell.remove .action.delete { + float: right; + padding: 4px; + margin-right: -15px; +} +.data.comparison .cell.remove .action.delete span { + overflow: hidden; + line-height: 0; +} +.data.comparison .cell.remove .action.delete span:after { + content: "\e012"; + font-size: 12px; + color: #fff; +} +.comparison.headings { + position: absolute; + z-index: 2; + top: 0; + left: 0; + width: auto; + background-color: #ffffff; +} +.comparison.headings th { + background-color: #ffffff; +} +/* + Magento_Catalog + Compare +-------------------------------------- */ +.item.link.compare .qty:before { + content: '('; +} +.item.link.compare .qty:after { + content: ')'; +} +/* + Magento_Catalog + Product lists +-------------------------------------- */ +.block.related .action.select { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; + display: inline; + color: #332e29; + text-decoration: none; +} +.block.related .action.select:focus, +.block.related .action.select:active, +.block.related .action.select:hover { + color: #da370a; +} +.block.related .field.choice.related { + margin: 0 0 10px; +} +.block.widget.viewed, +.block.crosssell, +.block.upsell, +.block.related, +.block.widget.new, +.block.widget.compared { + clear: both; + margin: 30px 0; + padding-top: 25px; + border-top: 1px solid #e5e5e5; +} +.block.widget.viewed .products.list, +.block.crosssell .products.list, +.block.upsell .products.list, +.block.related .products.list, +.block.widget.new .products.list, +.block.widget.compared .products.list { + clear: both; + margin: 0 -20px; +} +.block.widget.viewed .products.list .item.product, +.block.crosssell .products.list .item.product, +.block.upsell .products.list .item.product, +.block.related .products.list .item.product, +.block.widget.new .products.list .item.product, +.block.widget.compared .products.list .item.product { + float: left; + width: 33.33333333333333%; + margin-right: 0%; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + display: inline-block; + vertical-align: top; + margin: 0; + padding: 20px; + float: none; +} +.col3-layout .block.widget.viewed .products.list .item.product, +.col3-layout .block.crosssell .products.list .item.product, +.col3-layout .block.upsell .products.list .item.product, +.col3-layout .block.related .products.list .item.product, +.col3-layout .block.widget.new .products.list .item.product, +.col3-layout .block.widget.compared .products.list .item.product { + width: 50%; +} +.block.widget.viewed .products.list .item.product .product.photo, +.block.crosssell .products.list .item.product .product.photo, +.block.upsell .products.list .item.product .product.photo, +.block.related .products.list .item.product .product.photo, +.block.widget.new .products.list .item.product .product.photo, +.block.widget.compared .products.list .item.product .product.photo { + float: left; + margin-right: 20px; +} +.block.widget.viewed .products.list .item.product .product.details, +.block.crosssell .products.list .item.product .product.details, +.block.upsell .products.list .item.product .product.details, +.block.related .products.list .item.product .product.details, +.block.widget.new .products.list .item.product .product.details, +.block.widget.compared .products.list .item.product .product.details { + overflow: hidden; +} +.block.widget.viewed .products.list .item.product .product.name, +.block.crosssell .products.list .item.product .product.name, +.block.upsell .products.list .item.product .product.name, +.block.related .products.list .item.product .product.name, +.block.widget.new .products.list .item.product .product.name, +.block.widget.compared .products.list .item.product .product.name, +.block.widget.viewed .products.list .item.product .price-box, +.block.crosssell .products.list .item.product .price-box, +.block.upsell .products.list .item.product .price-box, +.block.related .products.list .item.product .price-box, +.block.widget.new .products.list .item.product .price-box, +.block.widget.compared .products.list .item.product .price-box { + margin: 0 0 10px; +} +.block.widget.viewed .products.list .item.product .addto.links .action:after, +.block.crosssell .products.list .item.product .addto.links .action:after, +.block.upsell .products.list .item.product .addto.links .action:after, +.block.related .products.list .item.product .addto.links .action:after, +.block.widget.new .products.list .item.product .addto.links .action:after, +.block.widget.compared .products.list .item.product .addto.links .action:after { + content: ''; + display: block; +} +.block.widget.viewed .products.list .item.product .actions, +.block.crosssell .products.list .item.product .actions, +.block.upsell .products.list .item.product .actions, +.block.related .products.list .item.product .actions, +.block.widget.new .products.list .item.product .actions, +.block.widget.compared .products.list .item.product .actions { + visibility: hidden; +} +.block.widget.viewed .products.list .item.product .actions .primary, +.block.crosssell .products.list .item.product .actions .primary, +.block.upsell .products.list .item.product .actions .primary, +.block.related .products.list .item.product .actions .primary, +.block.widget.new .products.list .item.product .actions .primary, +.block.widget.compared .products.list .item.product .actions .primary { + margin: 0 0 10px; +} +.block.widget.viewed .products.list .item.product:hover .actions, +.block.crosssell .products.list .item.product:hover .actions, +.block.upsell .products.list .item.product:hover .actions, +.block.related .products.list .item.product:hover .actions, +.block.widget.new .products.list .item.product:hover .actions, +.block.widget.compared .products.list .item.product:hover .actions { + visibility: visible; +} +.block.crosssell .products.list.items.crosssell { + margin: 0 -13px; +} +.block.crosssell .products.list.items.crosssell .item.product { + float: left; + width: 16.666666666666664%; + margin-right: 0%; + padding: 13px; + margin-bottom: 90px; +} +.block.crosssell .products.list.items.crosssell .item.product .product.photo { + float: none; + display: block; + margin: 0 0 10px; +} +.block.crosssell .products.list.items.crosssell .item.product .actions { + position: absolute; +} +.block.widget.viewed .products.list.items.widget-viewed-grid .item.product { + float: left; + width: 16.666666666666664%; + margin-right: 0%; + float: none; + display: inline-block; +} +.col2-left-layout .block.widget.viewed .products.list.items.widget-viewed-grid .item.product, +.col2-right-layout .block.widget.viewed .products.list.items.widget-viewed-grid .item.product { + width: 19.99%; +} +.col3-layout .block.widget.viewed .products.list.items.widget-viewed-grid .item.product { + width: 25%; +} +.block.widget.viewed .products.list.items.widget-viewed-grid .item.product .product.photo { + float: none; + display: block; + margin: 0 0 10px; +} +.block.widget.viewed .products.list.items.widget-viewed-list .item.product { + float: left; + width: 100%; + margin-right: 0%; + float: none; + display: inline-block; +} +.block.widget.compared .products.list.items.widget-compared-grid .item.product { + float: left; + width: 16.666666666666664%; + margin-right: 0%; + float: none; + display: inline-block; +} +.col2-left-layout .block.widget.compared .products.list.items.widget-compared-grid .item.product, +.col2-right-layout .block.widget.compared .products.list.items.widget-compared-grid .item.product { + width: 19.99%; +} +.col3-layout .block.widget.compared .products.list.items.widget-compared-grid .item.product { + width: 25%; +} +.block.widget.compared .products.list.items.widget-compared-grid .item.product .product.photo { + float: none; + display: block; + margin: 0 0 10px; +} +.block.widget.compared .products.list.items.widget-compared-list .item.product { + float: left; + width: 100%; + margin-right: 0%; + float: none; + display: inline-block; +} +.block.widget.new .products.list.items.widget-new-grid .item.product { + width: 20%; + float: none; + display: inline-block; +} +.col2-left-layout .block.widget.new .products.list.items.widget-new-grid .item.product, +.col2-right-layout .block.widget.new .products.list.items.widget-new-grid .item.product { + float: left; + width: 25%; + margin-right: 0%; + float: none; + display: inline-block; +} +.col3-layout .block.widget.new .products.list.items.widget-new-grid .item.product { + float: left; + width: 33.33333333333333%; + margin-right: 0%; + float: none; + display: inline-block; +} +.block.widget.new .products.list.items.widget-new-grid .item.product .product.photo { + float: none; + display: block; + margin: 0 0 10px; +} +.block.widget.new .products.list.items.widget-new-list .item.product { + float: left; + width: 100%; + margin-right: 0%; + float: none; + display: inline-block; +} +.product.info.detailed + .block.upsell, +.product.info.detailed + .block.related { + margin-top: 70px; + clear: none; + float: right; + width: 140px; + border-top: 0; + padding-top: 0; + padding-left: 25px; + border-left: 1px solid #e5e5e5; +} +.product.info.detailed + .block.upsell .products.list, +.product.info.detailed + .block.related .products.list { + margin: 0; +} +.product.info.detailed + .block.upsell .products.list .item.product, +.product.info.detailed + .block.related .products.list .item.product { + display: block; + width: auto; + padding: 13px 0; +} +.product.info.detailed + .block.upsell .products.list .item.product .product.photo, +.product.info.detailed + .block.related .products.list .item.product .product.photo { + float: none; + display: block; + margin: 0 0 10px; +} +.block.widget .pager { + float: right; +} +.block.widget .pager .amount { + float: left; + line-height: 25px; + margin: 2px 15px 0 0; + display: none; +} +.block.widget .pager .text { + display: none; +} +.block.widget .pages { + margin-left: 15px; + float: left; +} +.block.widget .pages .label { + line-height: 25px; + display: inline-block; +} +.block.widget .pages strong.label { + font-weight: 400; + float: left; + line-height: 25px; + margin-top: 2px; + margin-right: 5px; + display: none; +} +.block.widget .pages input { + width: 30px; + margin: 0 5px; + text-align: center; + padding: 0 5px; + height: 25px; + line-height: 25px; +} +.block.widget .pages > ol { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; + display: inline-block; + vertical-align: top; + margin-top: 2px; + line-height: 25px; + vertical-align: middle; +} +.block.widget .pages > ol li { + display: inline; +} +.block.widget .pages > ol strong, +.block.widget .pages > ol a { + padding: 0 3px; +} +.block.widget .pages > ol strong { + font-weight: 400; + color: #da370a; +} +.block.widget .action.next, +.block.widget .action.previous { + overflow: hidden; + display: inline-block; + vertical-align: middle; +} +.block.widget .action.next span, +.block.widget .action.previous span { + color: #c2c2c2; + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; +} +.block.widget .action.next span:after, +.block.widget .action.previous span:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: ''; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.block.widget .action.next span:active, +.block.widget .action.previous span:active { + outline: 0; +} +.block.widget .action.next span:after, +.block.widget .action.previous span:after { + text-indent: 0; + display: block; + margin: 0; +} +.block.widget .action.next span:after { + content: "\e016"; +} +.block.widget .action.previous span:after { + content: "\e017"; +} +/* + Magento_Catalog + Layered Navigation +-------------------------------------- */ +.block.filter .subtitle { + display: none; +} +.block.filter > .content { + padding: 0; +} +.block.filter .filtered .item { + border-top: 1px solid #c2c2c2; + padding: 2px 0 5px; + margin: 0 0 5px; + position: relative; + z-index: 1; +} +.block.filter .filtered .label { + font-weight: 600; + text-transform: uppercase; + display: block; +} +.block.filter .action.remove { + overflow: hidden; + display: inline-block; + padding: 4px; + position: absolute; + top: -1px; + right: 0; + background: #c2c2c2; +} +.block.filter .action.remove span { + color: #fff; + width: 13px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; +} +.block.filter .action.remove span:after { + font-family: "icons"; + font-size: 13px; + line-height: 13px; + height: 13px; + margin: 0; + overflow: hidden; + content: "\e012"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.block.filter .action.remove span:active { + outline: 0; +} +.block.filter .action.remove span:after { + text-indent: 0; + display: block; + margin: 0; +} +.block.filter .actions { + margin-bottom: 30px; +} +.block.filter .action.reset { + font-size: 12px; + text-transform: lowercase; + text-decoration: underline; +} +.block.filter dt { + text-transform: uppercase; +} +.block.filter dd { + margin: 0; + padding: 15px 0 25px; +} +.block.filter .count { + font-size: 12px; +} +.block.filter .count:before { + content: ' ('; +} +.block.filter .count:after { + content: ')'; +} +/* + Magento_Catalog + Product Listing +-------------------------------------- */ +.toolbar { + clear: both; + margin: 17px 0; + *zoom: 1; +} +.toolbar:first-child { + margin-top: 0; +} +.toolbar.alternative { + direction: rtl; +} +.toolbar.alternative .pager { + direction: ltr; +} +.toolbar.alternative .settings { + display: inline; + direction: ltr; +} +.toolbar.alternative .pages, +.toolbar.alternative .amount, +.toolbar.alternative .limiter { + border-left: 1px solid #e5e5e5; + padding: 2px 0 2px 15px; +} +.toolbar .amount { + display: none; +} +.toolbar:before, +.toolbar:after { + content: ""; + display: table; +} +.toolbar:after { + clear: both; +} +.toolbar .settings { + display: inline; +} +.toolbar .modes { + margin-left: 30px; + display: inline-block; + margin-top: 3px; + margin-right: 14px; + vertical-align: top; +} +.toolbar .modes .label { + display: none; +} +.toolbar .limiter, +.toolbar .sorter { + *zoom: 1; + padding: 2px 0; + float: left; + display: inline-block; +} +.toolbar .limiter:before, +.toolbar .sorter:before, +.toolbar .limiter:after, +.toolbar .sorter:after { + content: ""; + display: table; +} +.toolbar .limiter:after, +.toolbar .sorter:after { + clear: both; +} +.toolbar .limiter select, +.toolbar .sorter select { + margin-top: 1px; + margin-right: 5px; +} +.toolbar .options { + float: left; + border: 1px solid #e5e5e5; + white-space: nowrap; + height: 23px; + line-height: 23px; + overflow: visible; + display: block; + padding: 0 7px; +} +.toolbar .options .current { + font-weight: 400; + float: left; + padding-right: 7px; +} +.toolbar .options ul { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; + height: 0; + overflow: hidden; + clear: both; + padding: 0 30px 0 7px; + margin: 0 -8px; + border: 1px solid #c2c2c2; + visibility: hidden; + top: -24px; + background: #fff; + position: relative; + z-index: 2; +} +.toolbar .options .action.switch { + float: right; + margin-top: 4px; +} +.toolbar .options .selected { + color: #da370a; +} +.toolbar .options.active ul { + height: auto; + visibility: visible; +} +.toolbar .pager { + float: right; +} +.toolbar .pager .amount { + float: left; + line-height: 25px; + margin: 2px 15px 0 0; +} +.toolbar .pager .text { + display: none; +} +.toolbar .pages { + margin-left: 15px; + float: left; +} +.toolbar .pages .label { + line-height: 25px; + display: inline-block; +} +.toolbar .pages strong.label { + font-weight: 400; + float: left; + line-height: 25px; + margin-top: 2px; + margin-right: 5px; + display: none; +} +.toolbar .pages input { + width: 30px; + margin: 0 5px; + text-align: center; + padding: 0 5px; + height: 25px; + line-height: 25px; +} +.toolbar .pages > ol { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; + display: inline-block; + vertical-align: top; + margin-top: 2px; + line-height: 25px; + vertical-align: middle; +} +.toolbar .pages > ol li { + display: inline; +} +.toolbar .pages > ol strong, +.toolbar .pages > ol a { + padding: 0 3px; +} +.toolbar .pages > ol strong { + font-weight: 400; + color: #da370a; +} +/* + Magento_Catalog + Product List +-------------------------------------- */ +.products.wrapper .products.list .item { + z-index: 1; + position: relative; + border: 1px solid transparent; + background: transparent; +} +.products.wrapper .products.list .item .product.photo { + display: block; + margin-bottom: 10px; + text-align: center; +} +.products.wrapper .products.list .item .product.photo > .photo { + display: block; + margin: 0 auto; +} +.products.wrapper .products.list .item:hover { + border: 1px solid #c2c2c2; + background: #f8f8f8; + z-index: 99; +} +.products.wrapper .products.list .item:hover .product.actions { + opacity: 1; + visibility: hidden; +} +.products.wrapper .products.list .item:hover .product.actions .action.tocart, +.products.wrapper .products.list .item:hover .product.actions .secondary { + visibility: visible; +} +.products.wrapper .products.list .item .product.actions { + opacity: 0.8; + visibility: hidden; +} +.products.wrapper .products.list .item .product.actions .action.tocart, +.products.wrapper .products.list .item .product.actions .secondary { + visibility: hidden; +} +.products.wrapper .products.list .item .price-box, +.products.wrapper .products.list .item .product.reviews { + display: block; + margin-bottom: 7px; +} +.products.wrapper .products.list .item .secondary { + border: solid #c2c2c2; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + white-space: nowrap; + position: absolute; +} +.products.wrapper .products.list .item .secondary .action { + padding: 10px; + white-space: normal; + vertical-align: top; + display: inline-block; + line-height: 1; +} +.products.wrapper.grid { + margin-bottom: 20px; +} +.products.wrapper.grid .products.list .item.product { + float: left; + width: 16.666666666666664%; + margin-right: 0%; + display: inline-block; + float: none; + padding: 9px 9px 9px; + vertical-align: top; +} +.col2-left-layout .products.wrapper.grid .products.list .item.product, +.col2-right-layout .products.wrapper.grid .products.list .item.product { + float: left; + width: 25%; + margin-right: 0%; + display: inline-block; + float: none; + margin-bottom: 30px; +} +.col3-layout .products.wrapper.grid .products.list .item.product { + float: left; + width: 33.33333333333333%; + margin-right: 0%; + display: inline-block; + float: none; + margin-bottom: 30px; +} +.products.wrapper.grid .products.list .secondary { + border-width: 1px; + background: #f8f8f8; + top: 100%; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + left: -1px; + right: -1px; +} +.products.wrapper.grid .products.list .secondary .action { + padding: 10px 0; + text-align: center; + width: 49%; +} +.products.wrapper.list .products.list { + margin-bottom: 20px; +} +.products.wrapper.list .products.list .item.product { + *zoom: 1; + display: block; + border-bottom: 1px solid #c2c2c2; + padding: 9px 9px 9px 9px; + margin-bottom: -1px; +} +.products.wrapper.list .products.list .item.product:before, +.products.wrapper.list .products.list .item.product:after { + content: ""; + display: table; +} +.products.wrapper.list .products.list .item.product:after { + clear: both; +} +.products.wrapper.list .products.list .item.product .product.details { + padding-bottom: 40px; +} +.products.wrapper.list .products.list .product.details { + display: table; +} +.products.wrapper.list .products.list .product.photo { + float: left; + margin-right: 9px; + margin-bottom: 0; +} +.products.wrapper.list .products.list .secondary { + bottom: 0; + top: auto !important; + margin-left: 18px; + border-width: 1px 0 0; + right: 20px; +} +.products.wrapper.list .products.list .product.description { + margin: 9px 0; +} +/* + General product item styling +-------------------------------------- */ +.product.name { + color: #675f55; + font-weight: 600; + line-height: 1.2; + display: block; + margin-bottom: 10px; +} +.price-box p, +.pricing p { + margin: 5px 0; +} +.price-box p:first-child, +.pricing p:first-child { + margin-top: 0; +} +.price-box p:last-child, +.pricing p:last-child { + margin-bottom: 0; +} +.stock[title] { + line-height: 16px; +} +.stock[title] span:before { + content: ''; + line-height: 16px; + background: #42b649; + display: inline-block; + border-radius: 5px; + width: 10px; + height: 10px; + margin-right: 5px; + vertical-align: middle; +} +.stock[title].unavailable { + color: #c2c2c2; +} +.stock[title].unavailable span:before { + background: #c2c2c2; +} +.product.item .product.description { + font-size: 12px; +} +.action.tocart { + padding: 5px 11px; +} +.block .product.actions .action.tocart { + display: inline-block; + margin: 10px 0; +} +.action.tocompare, +.action.towishlist { + font-size: 12px; +} +.action.tocompare span:before, +.action.towishlist span:before { + content: "\002B\00A0"; +} +.item.product .action.tocompare, +.item.product .action.towishlist { + margin-left: 0; +} +/* + Magento_Catalog + Product View +-------------------------------------- */ +.fieldset { + border: 0; + margin: 30px 10px 30px 30px; + padding: 0; + letter-spacing: -0.31em; + word-spacing: -0.43em; +} +.fieldset > * { + letter-spacing: normal; + word-spacing: normal; +} +.fieldset > .legend { + float: left; + font: 400 20px/1.2 "sourcesanspro"; + margin: -30px 30px 50px -30px; + width: 100%; +} +.fieldset > .legend + br { + display: block; + *zoom: 1; +} +.fieldset > .legend + br:before, +.fieldset > .legend + br:after { + content: ""; + display: table; +} +.fieldset > .legend + br:after { + clear: both; +} +.fieldset > .field { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: 0 0 20px; +} +.fieldset > .field > .label { + display: block; + padding-bottom: 5px; +} +.fieldset > .field .nested .field { + margin: 5px 0; +} +.fieldset > .field.choice > .control { + width: auto; +} +.fieldset > .field.choice > .label { + display: inline; +} +.fieldset > .field.choice > input { + vertical-align: top; + margin-top: 2px; + margin-right: 5px; +} +.fieldset > .field.required > .label > span:first-child:after { + content: '*'; + color: #da370a; +} +.fieldset > .field .addon { + display: table; + padding: 0; + width: 100%; +} +.fieldset > .field .addon textarea, +.fieldset > .field .addon select, +.fieldset > .field .addon input { + box-shadow: none; + display: table-cell; + margin: 0; + width: 100%; +} +.fieldset > .field .addon .addbefore, +.fieldset > .field .addon .addafter { + height: 0; + white-space: nowrap; + display: inline-block; + display: table-cell; + vertical-align: middle; + width: 1px; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #ffffff; + border: 1px solid #c2c2c2; + border-radius: 3px; + font: 400 14px "sourcesanspro"; + /* Prevent background color leak outs */ + + background-clip: padding-box; + outline: none; + height: 32px; + line-height: 1; + padding: 0 10px; +} +.fieldset > .field .addon .addbefore:focus, +.fieldset > .field .addon .addafter:focus { + border-color: #999999; +} +.control .fieldset > .field .addon .addbefore, +.control .fieldset > .field .addon .addafter { + width: 100%; +} +.fieldset > .field .addon .addbefore:disabled, +.fieldset > .field .addon .addafter:disabled { + opacity: 0.5; +} +.fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.fieldset > .field .addon .addafter::-webkit-input-placeholder { + line-height: 1.333; +} +.fieldset > .field .addon .addbefore:-ms-input-placeholder, +.fieldset > .field .addon .addafter:-ms-input-placeholder { + line-height: 1.333; +} +.eq-ie8 .fieldset > .field .addon .addbefore, +.eq-ie8 .fieldset > .field .addon .addafter { + padding-top: 8px; +} +.fieldset > .field .note { + font-size: 12px; + margin-top: 3px; + padding-left: 15px; +} +.fieldset > .field .note:before { + border-bottom: 5px solid #675f55; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + content: ''; + display: inline-block; + font-size: 0; + line-height: 0; + margin: 4px 0 0 -14px; + position: absolute; + vertical-align: top; + width: 0; +} +.product.info.main { + float: right; + width: 430px; + padding-bottom: 30px; +} +.col2-left-layout .product.info.main, +.col2-right-layout .product.info.main { + width: 370px; +} +.col3-layout .product.info.main { + float: none; + width: 100%; +} +.product.info.main .price-box { + font-size: 20px; + padding-bottom: 10px; + margin: 15px 0; + line-height: 1.2; + font-weight: 200; +} +.product.info.main .page.title.product + .price-box { + border-bottom: 1px solid #e5e5e5; +} +.product.info.main p { + margin: 5px 0; +} +.product.info.main .old-price { + font-size: 16px; +} +.product.info.main .old-price .price { + text-decoration: line-through; +} +.product.info.main .special-price { + color: #da370a; +} +.product.info.main .stock { + margin: 15px 0; +} +.product.info.main .product.options.bottom .price-box { + display: none; +} +.product.info.main .product.addto.links { + margin: 15px 0 0; + padding-top: 10px; + border-top: 1px solid #e5e5e5; +} +.product.info.main .product.addto.links .action { + float: left; + margin-right: 15px; +} +.product.main.info .product.options.wrapper .field { + margin: 0 0 10px; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: 0 0 20px; +} +.product.main.info .product.options.wrapper .field:last-child { + margin-bottom: 0; +} +.product.main.info .product.options.wrapper .field .nested { + padding: 0 0 0; +} +.product.main.info .product.options.wrapper .field .nested .field { + margin: 5px 0; +} +.product.main.info .product.options.wrapper .field > .label { + display: block; + padding-bottom: 5px; +} +.product.main.info .product.options.wrapper .field .nested .field { + margin: 5px 0; +} +.product.main.info .product.options.wrapper .field.choice > .control { + width: auto; +} +.product.main.info .product.options.wrapper .field.choice > .label { + display: inline; +} +.product.main.info .product.options.wrapper .field.choice > input { + vertical-align: top; + margin-top: 2px; + margin-right: 5px; +} +.product.main.info .product.options.wrapper .field.required > .label > span:first-child:after { + content: '*'; + color: #da370a; +} +.product.main.info .product.options.wrapper .field .addon { + display: table; + padding: 0; + width: 100%; +} +.product.main.info .product.options.wrapper .field .addon textarea, +.product.main.info .product.options.wrapper .field .addon select, +.product.main.info .product.options.wrapper .field .addon input { + box-shadow: none; + display: table-cell; + margin: 0; + width: 100%; +} +.product.main.info .product.options.wrapper .field .addon .addbefore, +.product.main.info .product.options.wrapper .field .addon .addafter { + height: 0; + white-space: nowrap; + display: inline-block; + display: table-cell; + vertical-align: middle; + width: 1px; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #ffffff; + border: 1px solid #c2c2c2; + border-radius: 3px; + font: 400 14px "sourcesanspro"; + /* Prevent background color leak outs */ + + background-clip: padding-box; + outline: none; + height: 32px; + line-height: 1; + padding: 0 10px; +} +.product.main.info .product.options.wrapper .field .addon .addbefore:focus, +.product.main.info .product.options.wrapper .field .addon .addafter:focus { + border-color: #999999; +} +.control .product.main.info .product.options.wrapper .field .addon .addbefore, +.control .product.main.info .product.options.wrapper .field .addon .addafter { + width: 100%; +} +.product.main.info .product.options.wrapper .field .addon .addbefore:disabled, +.product.main.info .product.options.wrapper .field .addon .addafter:disabled { + opacity: 0.5; +} +.product.main.info .product.options.wrapper .field .addon .addbefore::-webkit-input-placeholder, +.product.main.info .product.options.wrapper .field .addon .addafter::-webkit-input-placeholder { + line-height: 1.333; +} +.product.main.info .product.options.wrapper .field .addon .addbefore:-ms-input-placeholder, +.product.main.info .product.options.wrapper .field .addon .addafter:-ms-input-placeholder { + line-height: 1.333; +} +.eq-ie8 .product.main.info .product.options.wrapper .field .addon .addbefore, +.eq-ie8 .product.main.info .product.options.wrapper .field .addon .addafter { + padding-top: 8px; +} +.product.main.info .product.options.wrapper .field .note { + font-size: 12px; + margin-top: 3px; + padding-left: 15px; +} +.product.main.info .product.options.wrapper .field .note:before { + border-bottom: 5px solid #675f55; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + content: ''; + display: inline-block; + font-size: 0; + line-height: 0; + margin: 4px 0 0 -14px; + position: absolute; + vertical-align: top; + width: 0; +} +.product.main.info .product.options.wrapper .field:not(.choice) > .label { + text-transform: uppercase; + font-weight: 600; + padding: 0 0 5px; +} +.type-configurable .product.main.info .product.options.wrapper select { + min-width: 40%; + width: auto; + padding: 2px; +} +.product.main.info .product.options.wrapper .fieldset { + margin: 0; +} +.product.main.info .product.options.wrapper .fieldset .field.required .control .field.choice .label span:after { + content: ""; +} +.product.main.info .product.options.wrapper .fieldset .field.date input[type="text"] { + width: auto; +} +.product.main.info .product.options.wrapper .fieldset .datetime-picker + .ui-datepicker-trigger { + margin: 0 15px 0 7px; +} +.action.primary.customize, +.action.primary.tocart { + line-height: 16px; + padding: 9px 15px; +} +.action.primary.customize span, +.action.primary.tocart span { + font-weight: 400; + font-size: 16px; +} +.product.media { + float: left; + width: 540px; + padding-bottom: 30px; +} +.col2-left-layout .product.media, +.col2-right-layout .product.media { + width: 400px; +} +.col3-layout .product.media { + float: none; + width: 100%; +} +.box.tocart { + *zoom: 1; + margin: 15px 0; +} +.box.tocart:before, +.box.tocart:after { + content: ""; + display: table; +} +.box.tocart:after { + clear: both; +} +.box.tocart .field { + float: left; + padding-right: 10px; +} +.box.tocart .label { + display: block; + text-align: left; + font-weight: 600; + text-transform: uppercase; + line-height: 25px; +} +.box.tocart .control { + width: 60px; + text-align: center; +} +.box.tocart .actions { + float: left; + padding-top: 24px; +} +.box.tocart .qty { + text-align: center; +} +.prices.tier { + padding: 20px; + margin: 15px 0; + background: #f8f8f8; +} +.prices.tier strong { + font-weight: 400; +} +.product.social.links { + float: right; + text-align: right; +} +.action.mailto span { + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + color: #c2c2c2; +} +.action.mailto span:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: "\e001"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.mailto span:active { + outline: 0; +} +.action.mailto span:after { + text-indent: 0; + display: block; + margin: 0; +} +.product.photo.thumbs { + float: left; + padding-left: 15px; +} +.product.photo.thumbs .title { + display: none; +} +.product.photo.thumbs .item.thumb { + margin-bottom: 8px; +} +.product.photo.thumbs .item.thumb img { + border: 1px solid transparent; +} +.product.photo.thumbs .item.thumb .active img { + border: 1px solid #837d75; +} +.product.photo.main { + float: left; + text-align: center; +} +.product.photo.main .notice { + font-size: 11px; +} +.product.attibute.sku { + font-size: 12px; +} +.product.attibute.sku .value { + display: inline; +} +.product.attibute.sku .type:after { + content: '#'; +} +@media only screen and (max-width: 99999px) { + .product.data { + float: left; + width: 83.33333333333334%; + margin-right: 0%; + *zoom: 1; + position: relative; + z-index: 1; + } + .product.data:before, + .product.data:after { + content: ""; + display: table; + } + .product.data:after { + clear: both; + } + .product.data > .item.title { + float: left; + } + .product.data > .item.title > .switch { + display: block; + position: relative; + top: 1px; + z-index: 2; + } + .product.data > .item.content { + width: 100%; + float: right; + margin-left: -100%; + display: none; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + } + .product.data > .item.content.active { + display: block; + } + .product.data .tabs > .term-content.active { + border: 1px solid #BFBFBF; + color: #808080; + display: block; + } + .product.data > .item.title { + margin-right: 1px; + min-height: 35px; + } + .product.data > .item.title > .switch { + font-size: 14px; + line-height: 1; + font-weight: 600; + text-decoration: none; + padding: 11px 11px 8px; + border: 2px solid #e5e5e5; + background: rgba(0, 0, 0, 0.03); + border-bottom: none; + text-transform: uppercase; + border-radius: 4px 4px 0 0; + } + .product.data > .item.title:not(.disabled) > .switch:active, + .product.data > .item.title:not(.disabled) > .switch:focus, + .product.data > .item.title:not(.disabled) > .switch:hover, + .product.data > .item.title.active > .switch { + background: #fff; + border-width: 3px; + padding: 10px 10px 8px; + outline: none; + } + .product.data > .item.title.active > .switch { + padding: 10px 20px 11px !important; + } + .product.data > .item.content { + *zoom: 1; + margin-top: 36px; + padding: 20px; + } + .product.data > .item.content:before, + .product.data > .item.content:after { + content: ""; + display: table; + } + .product.data > .item.content:after { + clear: both; + } + .product.data > .item.content:before { + content: ''; + border-top: 3px solid #e5e5e5; + width: 100%; + display: block; + position: absolute; + left: 0; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: -20px 0 20px; + } + .temp-upsell-placeholder { + float: left; + width: 16.666666666666664%; + margin-right: 0%; + background: red; + height: 200px; + margin-top: 50px; + } +} +@media only screen and (max-width: 768px) { + .product.data { + float: left; + width: 100%; + margin-right: 0%; + margin: 0; + padding: 0; + } + .product.data > .item.title { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + width: 100%; + } + .product.data > .item.title > .item.switch { + display: block; + } + .product.data > .item.content { + *zoom: 1; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + display: none; + } + .product.data > .item.content:before, + .product.data > .item.content:after { + content: ""; + display: table; + } + .product.data > .item.content:after { + clear: both; + } + .product.data > .item.content.active { + display: block; + } + .product.data > .item.title { + margin: 3px 0 0; + } + .product.data > .item.title > .switch { + display: block; + font-size: 14px; + line-height: 1; + font-weight: 600; + text-decoration: none; + padding: 11px; + border: 2px solid #e5e5e5; + background: #f8f8f8; + text-transform: uppercase; + border-radius: 4px; + } + .product.data > .item.title:not(.disabled) > .switch:active, + .product.data > .item.title:not(.disabled) > .switch:focus, + .product.data > .item.title:not(.disabled) > .switch:hover, + .product.data > .item.title.active > .switch { + background: #fff; + border-width: 3px; + padding: 10px; + outline: none; + } + .product.data > .item.title.active > .switch { + border-radius: 4px 4px 0 0; + } + .product.data > .item.content { + margin: 0; + padding: 20px; + background: #fff; + } + .temp-upsell-placeholder { + float: left; + width: 100%; + margin-right: 0%; + background: red; + height: 200px; + margin-top: 20px; + } +} +/* + Magento_Bundle + Product View +-------------------------------------- */ +body.type-bundle { + overflow-x: hidden; +} +@media only screen and (max-width: 768px) { + body.type-bundle { + overflow: auto; + } + body.type-bundle .customize:before { + left: -10px; + right: -10px; + } +} +.product.info.main .action.primary.customize { + margin: 40px 0; +} +.bundle.options.container { + margin: 45px 0; + clear: both; + position: relative; + z-index: 1; +} +.bundle.options.container:before { + position: relative; + z-index: 1; + content: ''; + display: block; + position: absolute; + left: -999em; + right: -999em; + z-index: -1; + background: #f8f8f8; + top: 0; + bottom: 0; +} +.bundle.options.container .product.add.form { + *zoom: 1; + position: relative; + z-index: 1; + display: none; + padding: 45px 0; +} +.bundle.options.container .product.add.form:before, +.bundle.options.container .product.add.form:after { + content: ""; + display: table; +} +.bundle.options.container .product.add.form:after { + clear: both; +} +.bundle.options.container .product.options.wrapper { + float: left; + width: 500px; +} +.col2-left-layout .bundle.options.container .product.options.wrapper, +.col2-right-layout .bundle.options.container .product.options.wrapper { + width: 450px; +} +.col3-layout .bundle.options.container .product.options.wrapper { + width: 360px; +} +.bundle.options.container .product.options.bottom { + float: left; + width: 500px; + clear: left; +} +.fieldset.bundle.options { + border: 0; + padding: 0; + margin: 0; +} +.fieldset.bundle.options .legend { + font-size: 26px; + font-weight: 200; + float: left; + margin-bottom: 20px; +} +.fieldset.bundle.options .legend + br { + display: block; + clear: both; +} +.fieldset.bundle.options .bundle-slide-back { + float: right; +} +.fieldset.bundle.options > .field { + margin: 0 0 50px; + padding: 20px; + background: #ffffff; +} +.fieldset.bundle.options > .field > .label { + font-size: 20px; + font-weight: 200; + display: block; + margin-bottom: 20px; +} +.fieldset.bundle.options > .field:last-child { + margin-bottom: 0; +} +.fieldset.bundle.options .nested .field { + margin: 10px 0; +} +.fieldset.bundle.options .nested .field.qty { + margin-top: 20px; +} +.fieldset.bundle.options .nested .field.qty .label { + display: inline-block; + vertical-align: middle; +} +.fieldset.bundle.options .nested .field.qty .label span:after { + content: ':'; +} +.fieldset.bundle.options .nested .field.qty .control { + width: 60px; + display: inline-block; + vertical-align: middle; +} +.fieldset.bundle.options .nested .field.qty input { + text-align: center; +} +.product.options.wrapper .nested.mage-error-group { + position: relative; + z-index: 1; +} +.product.options.wrapper .nested.mage-error-group .field { + z-index: 2; + position: relative; +} +.product.options.wrapper .nested.mage-error-group:before { + z-index: 1; + border: 1px solid #da370a !important; + background: rgba(218, 55, 10, 0.040000000000000036); + content: ''; + left: -8px; + right: -8px; + top: -5px; + bottom: -5px; + display: block; + position: absolute; +} +.block.bundle.summary { + background: #ffffff; + margin-top: 54px; + float: right; + position: relative; + width: 380px; +} +.col2-left-layout .block.bundle.summary, +.col2-right-layout .block.bundle.summary { + width: 320px; +} +.col3-layout .block.bundle.summary { + width: 230px; +} +.block.bundle.summary > .title { + font-weight: 400; + border-bottom: 3px solid #e5e5e5; + line-height: 1; + padding: 20px 20px 10px; + margin-bottom: 0; +} +.block.bundle.summary .photo { + float: left; + border: 1px solid #e5e5e5; + margin-right: 20px; +} +.block.bundle.summary .photo .photo { + float: none; + border: none; + margin-right: 0; +} +.block.bundle.summary > .content { + padding: 20px; +} +.block.bundle.summary .price-box { + *zoom: 1; + padding: 20px 0 0; + clear: both; + line-height: 24px; +} +.block.bundle.summary .price-box:before, +.block.bundle.summary .price-box:after { + content: ""; + display: table; +} +.block.bundle.summary .price-box:after { + clear: both; +} +.block.bundle.summary .price-box .price-label { + float: left; + font-size: 18px; + font-weight: 600; +} +.block.bundle.summary .price-box .full-product-price { + float: right; +} +.block.bundle.summary .price-box .full-product-price .price { + color: #da370a; + font-weight: 700; + font-size: 24px; +} +.block.bundle.summary .box.tocart { + padding: 10px 0 20px; + border-top: 1px solid #e5e5e5; + border-bottom: 1px solid #e5e5e5; +} +.block.bundle.summary .addto.links .action { + font-size: 14px; + margin-right: 20px; +} +.block.bundle.summary .addto.links .action:last-child { + margin-right: 0; +} +.block.bundle.summary .subtitle { + display: block; + margin: 20px -20px 0; + font-weight: 200; + font-size: 20px; + border-bottom: 3px solid #e5e5e5; + line-height: 1; + padding: 20px 20px 10px; + margin-bottom: 0; +} +.block.bundle.summary .bundle.summary div > ul { + list-style: none; + margin: 10px 0 0; + padding: 0; +} +.block.bundle.summary .bundle.summary div > ul > li { + margin: 0 0 10px; +} +.block.bundle.summary .bundle.summary div > ul > li > div > div { + margin: 0 0 5px; +} +.action.back.customization { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; + display: inline; + color: #332e29; + text-decoration: none; + position: absolute; + top: 57px; + right: 0; +} +.action.back.customization:focus, +.action.back.customization:active, +.action.back.customization:hover { + color: #da370a; +} +/* + CMS +-------------------------------------- */ +img[align="left"] { + margin: 0 22px 22px 0; +} +img[align="right"] { + margin: 0 0 22px 22px; +} +.home.main.slider img { + width: 100%; + display: block; +} +/* + Magento_Customer +-------------------------------------- */ +.customer.welcome { + display: inline-block !important; + position: relative; + z-index: 1; + cursor: pointer; +} +.customer.welcome .menu > ul { + font-weight: 600; + font-size: 12px; + margin: 0; + position: absolute; + top: 100%; + margin-left: -11px; + float: left; + right: 0; + text-align: left; + background: #f8f8f8; + border: 1px solid #cacbc4; + visibility: hidden; + opacity: 0; + -webkit-transition: visibility 0s linear 0.2s; + -moz-transition: visibility 0s linear 0.2s; + transition: visibility 0s linear 0.2s; +} +.customer.welcome .menu > ul li { + margin: 15px; + display: block; + white-space: nowrap; +} +.customer.welcome.active { + z-index: 9999; +} +.customer.welcome.active .menu > ul { + visibility: visible; + opacity: 1; + -webkit-transition-delay: 0s; + -moz-transition-delay: 0s; + -ms-transition-delay: 0s; + -o-transition-delay: 0s; + transition-delay: 0s; +} +.header .content .customer.welcome .customer.name { + font-weight: 400; +} +.header .content .customer.welcome .customer.name span { + color: #837d75; +} +.header .content .customer.welcome .customer.name span:after { + font-family: "icons"; + font-size: 16px; + line-height: 16px; + height: 16px; + margin: 0; + overflow: hidden; + content: "\e02c"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.header .content .customer.welcome .customer.name span:after { + line-height: 14px; +} +.header .content .customer.welcome .customer.name:focus span, +.header .content .customer.welcome .customer.name:hover span, +.header .content .customer.welcome .customer.name.active span { + color: #675f55; + outline: 0; +} +.header .content .customer.welcome .customer.name.active span:after { + content: "\e029"; +} +.customer.welcome + li { + display: none; +} +.customer.welcome + li { + display: none !important; +} +.login.container { + *zoom: 1; + background: #f8f8f8; + padding: 40px; + position: relative; + z-index: 1; + padding-bottom: 150px; +} +.login.container:before, +.login.container:after { + content: ""; + display: table; +} +.login.container:after { + clear: both; +} +.login.container .block { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + float: left; + width: 50%; +} +.login.container .block > .title { + margin-bottom: 25px; +} +.login.container .block .actions { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + text-align: right; + position: absolute; + bottom: 140px; + width: 50%; + padding: 0 40px; +} +.login.container .block .actions .secondary { + margin-bottom: -2em; + margin-top: 0.8em; + line-height: 1.2em; + float: right; +} +.login.container .block.login { + padding-right: 90px; +} +.login.container .block.login .actions { + margin-left: -90px; +} +.login.container .block.new { + padding-left: 40px; +} +.login.container .block.new .actions { + margin-left: -40px; +} +.login.container .block.new:before { + content: ''; + border-left: 1px solid; + border-color: #d7d7d7; + position: absolute; + top: 40px; + margin-left: -40px; + bottom: 60px; +} +.form.login .fieldset.login { + margin: 30px 10px 30px 30px; + letter-spacing: -0.31em; + word-spacing: -0.43em; + margin: 0; + padding: 0; + border: 0; +} +.form.login .fieldset.login > * { + letter-spacing: normal; + word-spacing: normal; +} +.form.login .fieldset.login > .legend { + float: left; + font: 400 20px/1.2 "sourcesanspro"; + margin: -30px 30px 50px -30px; + width: 100%; +} +.form.login .fieldset.login > .legend + br { + display: block; + *zoom: 1; +} +.form.login .fieldset.login > .legend + br:before, +.form.login .fieldset.login > .legend + br:after { + content: ""; + display: table; +} +.form.login .fieldset.login > .legend + br:after { + clear: both; +} +.form.login .fieldset.login > .field { + *zoom: 1; +} +.form.login .fieldset.login > .field:before, +.form.login .fieldset.login > .field:after { + content: ""; + display: table; +} +.form.login .fieldset.login > .field:after { + clear: both; +} +.form.login .fieldset.login > .field > .control, +.form.login .fieldset.login > .field > .label { + margin: 0; + float: left; + width: 40%; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.form.login .fieldset.login > .field > .control { + width: 60%; +} +.form.login .fieldset.login > .field.no-label .control { + margin-left: 40%; +} +.form.login .fieldset.login .field { + margin: 0 0 10px; +} +.form.login .fieldset.login .field:last-child { + margin-bottom: 0; +} +.form.login .fieldset.login .field .nested { + padding: 0 0 0; +} +.form.login .fieldset.login .field .nested .field { + margin: 5px 0; +} +.form.login .fieldset.login .field .label { + padding-top: 7px; + padding-right: 10px; + text-align: right; +} +.action.reload { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; + position: absolute; + background: #fff; + padding: 2px; +} +.action.reload span { + width: 22px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + color: #da370a; + text-shadow: 0px 1px rgba(0, 0, 0, 0.4); +} +.action.reload span:after { + font-family: "icons"; + font-size: 22px; + line-height: 22px; + height: 22px; + margin: 0; + overflow: hidden; + content: "\e00a"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.action.reload span:active { + outline: 0; +} +.action.reload span:after { + text-indent: 0; + display: block; + margin: 0; +} +/* + Registration +-------------------------------------- */ +.form.send.friend .fieldset, +.form.address.edit .fieldset, +.form.edit.account .fieldset, +.form.search.advanced .fieldset, +.form.orders.search .fieldset, +.form.contact .fieldset, +.form.password.forget .fieldset, +.form.create.account .fieldset, +.form.wishlist.share .fieldset, +.form.password.reset .fieldset, +.form.paypal.review .fieldset { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: 30px 10px 30px 30px; + padding: 0; + letter-spacing: -0.31em; + word-spacing: -0.43em; + width: 690px; + background: #f8f8f8; + padding: 30px 10px 30px 30px; + border: 0; + margin: 0 0 40px; + position: relative; + z-index: 1; +} +.form.send.friend .fieldset .field, +.form.address.edit .fieldset .field, +.form.edit.account .fieldset .field, +.form.search.advanced .fieldset .field, +.form.orders.search .fieldset .field, +.form.contact .fieldset .field, +.form.password.forget .fieldset .field, +.form.create.account .fieldset .field, +.form.wishlist.share .fieldset .field, +.form.password.reset .fieldset .field, +.form.paypal.review .fieldset .field { + display: inline-block; + padding-right: 20px; + vertical-align: top; + width: 50%; +} +.form.send.friend .fieldset .nested .field, +.form.address.edit .fieldset .nested .field, +.form.edit.account .fieldset .nested .field, +.form.search.advanced .fieldset .nested .field, +.form.orders.search .fieldset .nested .field, +.form.contact .fieldset .nested .field, +.form.password.forget .fieldset .nested .field, +.form.create.account .fieldset .nested .field, +.form.wishlist.share .fieldset .nested .field, +.form.password.reset .fieldset .nested .field, +.form.paypal.review .fieldset .nested .field { + width: 100%; +} +.form.send.friend .fieldset .actions, +.form.address.edit .fieldset .actions, +.form.edit.account .fieldset .actions, +.form.search.advanced .fieldset .actions, +.form.orders.search .fieldset .actions, +.form.contact .fieldset .actions, +.form.password.forget .fieldset .actions, +.form.create.account .fieldset .actions, +.form.wishlist.share .fieldset .actions, +.form.password.reset .fieldset .actions, +.form.paypal.review .fieldset .actions { + margin-right: 30px; +} +.form.send.friend .fieldset > *, +.form.address.edit .fieldset > *, +.form.edit.account .fieldset > *, +.form.search.advanced .fieldset > *, +.form.orders.search .fieldset > *, +.form.contact .fieldset > *, +.form.password.forget .fieldset > *, +.form.create.account .fieldset > *, +.form.wishlist.share .fieldset > *, +.form.password.reset .fieldset > *, +.form.paypal.review .fieldset > * { + letter-spacing: normal; + word-spacing: normal; +} +.form.send.friend .fieldset > .legend, +.form.address.edit .fieldset > .legend, +.form.edit.account .fieldset > .legend, +.form.search.advanced .fieldset > .legend, +.form.orders.search .fieldset > .legend, +.form.contact .fieldset > .legend, +.form.password.forget .fieldset > .legend, +.form.create.account .fieldset > .legend, +.form.wishlist.share .fieldset > .legend, +.form.password.reset .fieldset > .legend, +.form.paypal.review .fieldset > .legend { + float: left; + font: 400 20px/1.2 "sourcesanspro"; + margin: -30px 30px 50px -30px; + width: 100%; +} +.form.send.friend .fieldset > .legend + br, +.form.address.edit .fieldset > .legend + br, +.form.edit.account .fieldset > .legend + br, +.form.search.advanced .fieldset > .legend + br, +.form.orders.search .fieldset > .legend + br, +.form.contact .fieldset > .legend + br, +.form.password.forget .fieldset > .legend + br, +.form.create.account .fieldset > .legend + br, +.form.wishlist.share .fieldset > .legend + br, +.form.password.reset .fieldset > .legend + br, +.form.paypal.review .fieldset > .legend + br { + display: block; + *zoom: 1; +} +.form.send.friend .fieldset > .legend + br:before, +.form.address.edit .fieldset > .legend + br:before, +.form.edit.account .fieldset > .legend + br:before, +.form.search.advanced .fieldset > .legend + br:before, +.form.orders.search .fieldset > .legend + br:before, +.form.contact .fieldset > .legend + br:before, +.form.password.forget .fieldset > .legend + br:before, +.form.create.account .fieldset > .legend + br:before, +.form.wishlist.share .fieldset > .legend + br:before, +.form.password.reset .fieldset > .legend + br:before, +.form.paypal.review .fieldset > .legend + br:before, +.form.send.friend .fieldset > .legend + br:after, +.form.address.edit .fieldset > .legend + br:after, +.form.edit.account .fieldset > .legend + br:after, +.form.search.advanced .fieldset > .legend + br:after, +.form.orders.search .fieldset > .legend + br:after, +.form.contact .fieldset > .legend + br:after, +.form.password.forget .fieldset > .legend + br:after, +.form.create.account .fieldset > .legend + br:after, +.form.wishlist.share .fieldset > .legend + br:after, +.form.password.reset .fieldset > .legend + br:after, +.form.paypal.review .fieldset > .legend + br:after { + content: ""; + display: table; +} +.form.send.friend .fieldset > .legend + br:after, +.form.address.edit .fieldset > .legend + br:after, +.form.edit.account .fieldset > .legend + br:after, +.form.search.advanced .fieldset > .legend + br:after, +.form.orders.search .fieldset > .legend + br:after, +.form.contact .fieldset > .legend + br:after, +.form.password.forget .fieldset > .legend + br:after, +.form.create.account .fieldset > .legend + br:after, +.form.wishlist.share .fieldset > .legend + br:after, +.form.password.reset .fieldset > .legend + br:after, +.form.paypal.review .fieldset > .legend + br:after { + clear: both; +} +.form.send.friend .fieldset .legend, +.form.address.edit .fieldset .legend, +.form.edit.account .fieldset .legend, +.form.search.advanced .fieldset .legend, +.form.orders.search .fieldset .legend, +.form.contact .fieldset .legend, +.form.password.forget .fieldset .legend, +.form.create.account .fieldset .legend, +.form.wishlist.share .fieldset .legend, +.form.password.reset .fieldset .legend, +.form.paypal.review .fieldset .legend { + float: left; + line-height: 1.2; + font-size: 20px; + font-weight: 400; + padding-bottom: 20px; + width: 100%; + padding: 0 40px 20px 0; + background: #fff; + margin: -30px -10px 30px -30px; +} +.form.send.friend .fieldset .legend + br, +.form.address.edit .fieldset .legend + br, +.form.edit.account .fieldset .legend + br, +.form.search.advanced .fieldset .legend + br, +.form.orders.search .fieldset .legend + br, +.form.contact .fieldset .legend + br, +.form.password.forget .fieldset .legend + br, +.form.create.account .fieldset .legend + br, +.form.wishlist.share .fieldset .legend + br, +.form.password.reset .fieldset .legend + br, +.form.paypal.review .fieldset .legend + br { + display: block; + clear: both; +} +.form.send.friend .fieldset > .field, +.form.address.edit .fieldset > .field, +.form.edit.account .fieldset > .field, +.form.search.advanced .fieldset > .field, +.form.orders.search .fieldset > .field, +.form.contact .fieldset > .field, +.form.password.forget .fieldset > .field, +.form.create.account .fieldset > .field, +.form.wishlist.share .fieldset > .field, +.form.password.reset .fieldset > .field, +.form.paypal.review .fieldset > .field { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: 0 0 20px; + margin: 0 0 10px; + margin-bottom: 20px; +} +.form.send.friend .fieldset > .field > .label, +.form.address.edit .fieldset > .field > .label, +.form.edit.account .fieldset > .field > .label, +.form.search.advanced .fieldset > .field > .label, +.form.orders.search .fieldset > .field > .label, +.form.contact .fieldset > .field > .label, +.form.password.forget .fieldset > .field > .label, +.form.create.account .fieldset > .field > .label, +.form.wishlist.share .fieldset > .field > .label, +.form.password.reset .fieldset > .field > .label, +.form.paypal.review .fieldset > .field > .label { + display: block; + padding-bottom: 5px; +} +.form.send.friend .fieldset > .field .nested .field, +.form.address.edit .fieldset > .field .nested .field, +.form.edit.account .fieldset > .field .nested .field, +.form.search.advanced .fieldset > .field .nested .field, +.form.orders.search .fieldset > .field .nested .field, +.form.contact .fieldset > .field .nested .field, +.form.password.forget .fieldset > .field .nested .field, +.form.create.account .fieldset > .field .nested .field, +.form.wishlist.share .fieldset > .field .nested .field, +.form.password.reset .fieldset > .field .nested .field, +.form.paypal.review .fieldset > .field .nested .field { + margin: 5px 0; +} +.form.send.friend .fieldset > .field.choice > .control, +.form.address.edit .fieldset > .field.choice > .control, +.form.edit.account .fieldset > .field.choice > .control, +.form.search.advanced .fieldset > .field.choice > .control, +.form.orders.search .fieldset > .field.choice > .control, +.form.contact .fieldset > .field.choice > .control, +.form.password.forget .fieldset > .field.choice > .control, +.form.create.account .fieldset > .field.choice > .control, +.form.wishlist.share .fieldset > .field.choice > .control, +.form.password.reset .fieldset > .field.choice > .control, +.form.paypal.review .fieldset > .field.choice > .control { + width: auto; +} +.form.send.friend .fieldset > .field.choice > .label, +.form.address.edit .fieldset > .field.choice > .label, +.form.edit.account .fieldset > .field.choice > .label, +.form.search.advanced .fieldset > .field.choice > .label, +.form.orders.search .fieldset > .field.choice > .label, +.form.contact .fieldset > .field.choice > .label, +.form.password.forget .fieldset > .field.choice > .label, +.form.create.account .fieldset > .field.choice > .label, +.form.wishlist.share .fieldset > .field.choice > .label, +.form.password.reset .fieldset > .field.choice > .label, +.form.paypal.review .fieldset > .field.choice > .label { + display: inline; +} +.form.send.friend .fieldset > .field.choice > input, +.form.address.edit .fieldset > .field.choice > input, +.form.edit.account .fieldset > .field.choice > input, +.form.search.advanced .fieldset > .field.choice > input, +.form.orders.search .fieldset > .field.choice > input, +.form.contact .fieldset > .field.choice > input, +.form.password.forget .fieldset > .field.choice > input, +.form.create.account .fieldset > .field.choice > input, +.form.wishlist.share .fieldset > .field.choice > input, +.form.password.reset .fieldset > .field.choice > input, +.form.paypal.review .fieldset > .field.choice > input { + vertical-align: top; + margin-top: 2px; + margin-right: 5px; +} +.form.send.friend .fieldset > .field.required > .label > span:first-child:after, +.form.address.edit .fieldset > .field.required > .label > span:first-child:after, +.form.edit.account .fieldset > .field.required > .label > span:first-child:after, +.form.search.advanced .fieldset > .field.required > .label > span:first-child:after, +.form.orders.search .fieldset > .field.required > .label > span:first-child:after, +.form.contact .fieldset > .field.required > .label > span:first-child:after, +.form.password.forget .fieldset > .field.required > .label > span:first-child:after, +.form.create.account .fieldset > .field.required > .label > span:first-child:after, +.form.wishlist.share .fieldset > .field.required > .label > span:first-child:after, +.form.password.reset .fieldset > .field.required > .label > span:first-child:after, +.form.paypal.review .fieldset > .field.required > .label > span:first-child:after { + content: '*'; + color: #da370a; +} +.form.send.friend .fieldset > .field .addon, +.form.address.edit .fieldset > .field .addon, +.form.edit.account .fieldset > .field .addon, +.form.search.advanced .fieldset > .field .addon, +.form.orders.search .fieldset > .field .addon, +.form.contact .fieldset > .field .addon, +.form.password.forget .fieldset > .field .addon, +.form.create.account .fieldset > .field .addon, +.form.wishlist.share .fieldset > .field .addon, +.form.password.reset .fieldset > .field .addon, +.form.paypal.review .fieldset > .field .addon { + display: table; + padding: 0; + width: 100%; +} +.form.send.friend .fieldset > .field .addon textarea, +.form.address.edit .fieldset > .field .addon textarea, +.form.edit.account .fieldset > .field .addon textarea, +.form.search.advanced .fieldset > .field .addon textarea, +.form.orders.search .fieldset > .field .addon textarea, +.form.contact .fieldset > .field .addon textarea, +.form.password.forget .fieldset > .field .addon textarea, +.form.create.account .fieldset > .field .addon textarea, +.form.wishlist.share .fieldset > .field .addon textarea, +.form.password.reset .fieldset > .field .addon textarea, +.form.paypal.review .fieldset > .field .addon textarea, +.form.send.friend .fieldset > .field .addon select, +.form.address.edit .fieldset > .field .addon select, +.form.edit.account .fieldset > .field .addon select, +.form.search.advanced .fieldset > .field .addon select, +.form.orders.search .fieldset > .field .addon select, +.form.contact .fieldset > .field .addon select, +.form.password.forget .fieldset > .field .addon select, +.form.create.account .fieldset > .field .addon select, +.form.wishlist.share .fieldset > .field .addon select, +.form.password.reset .fieldset > .field .addon select, +.form.paypal.review .fieldset > .field .addon select, +.form.send.friend .fieldset > .field .addon input, +.form.address.edit .fieldset > .field .addon input, +.form.edit.account .fieldset > .field .addon input, +.form.search.advanced .fieldset > .field .addon input, +.form.orders.search .fieldset > .field .addon input, +.form.contact .fieldset > .field .addon input, +.form.password.forget .fieldset > .field .addon input, +.form.create.account .fieldset > .field .addon input, +.form.wishlist.share .fieldset > .field .addon input, +.form.password.reset .fieldset > .field .addon input, +.form.paypal.review .fieldset > .field .addon input { + box-shadow: none; + display: table-cell; + margin: 0; + width: 100%; +} +.form.send.friend .fieldset > .field .addon .addbefore, +.form.address.edit .fieldset > .field .addon .addbefore, +.form.edit.account .fieldset > .field .addon .addbefore, +.form.search.advanced .fieldset > .field .addon .addbefore, +.form.orders.search .fieldset > .field .addon .addbefore, +.form.contact .fieldset > .field .addon .addbefore, +.form.password.forget .fieldset > .field .addon .addbefore, +.form.create.account .fieldset > .field .addon .addbefore, +.form.wishlist.share .fieldset > .field .addon .addbefore, +.form.password.reset .fieldset > .field .addon .addbefore, +.form.paypal.review .fieldset > .field .addon .addbefore, +.form.send.friend .fieldset > .field .addon .addafter, +.form.address.edit .fieldset > .field .addon .addafter, +.form.edit.account .fieldset > .field .addon .addafter, +.form.search.advanced .fieldset > .field .addon .addafter, +.form.orders.search .fieldset > .field .addon .addafter, +.form.contact .fieldset > .field .addon .addafter, +.form.password.forget .fieldset > .field .addon .addafter, +.form.create.account .fieldset > .field .addon .addafter, +.form.wishlist.share .fieldset > .field .addon .addafter, +.form.password.reset .fieldset > .field .addon .addafter, +.form.paypal.review .fieldset > .field .addon .addafter { + height: 0; + white-space: nowrap; + display: inline-block; + display: table-cell; + vertical-align: middle; + width: 1px; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #ffffff; + border: 1px solid #c2c2c2; + border-radius: 3px; + font: 400 14px "sourcesanspro"; + /* Prevent background color leak outs */ + + background-clip: padding-box; + outline: none; + height: 32px; + line-height: 1; + padding: 0 10px; +} +.form.send.friend .fieldset > .field .addon .addbefore:focus, +.form.address.edit .fieldset > .field .addon .addbefore:focus, +.form.edit.account .fieldset > .field .addon .addbefore:focus, +.form.search.advanced .fieldset > .field .addon .addbefore:focus, +.form.orders.search .fieldset > .field .addon .addbefore:focus, +.form.contact .fieldset > .field .addon .addbefore:focus, +.form.password.forget .fieldset > .field .addon .addbefore:focus, +.form.create.account .fieldset > .field .addon .addbefore:focus, +.form.wishlist.share .fieldset > .field .addon .addbefore:focus, +.form.password.reset .fieldset > .field .addon .addbefore:focus, +.form.paypal.review .fieldset > .field .addon .addbefore:focus, +.form.send.friend .fieldset > .field .addon .addafter:focus, +.form.address.edit .fieldset > .field .addon .addafter:focus, +.form.edit.account .fieldset > .field .addon .addafter:focus, +.form.search.advanced .fieldset > .field .addon .addafter:focus, +.form.orders.search .fieldset > .field .addon .addafter:focus, +.form.contact .fieldset > .field .addon .addafter:focus, +.form.password.forget .fieldset > .field .addon .addafter:focus, +.form.create.account .fieldset > .field .addon .addafter:focus, +.form.wishlist.share .fieldset > .field .addon .addafter:focus, +.form.password.reset .fieldset > .field .addon .addafter:focus, +.form.paypal.review .fieldset > .field .addon .addafter:focus { + border-color: #999999; +} +.control .form.send.friend .fieldset > .field .addon .addbefore, +.control .form.address.edit .fieldset > .field .addon .addbefore, +.control .form.edit.account .fieldset > .field .addon .addbefore, +.control .form.search.advanced .fieldset > .field .addon .addbefore, +.control .form.orders.search .fieldset > .field .addon .addbefore, +.control .form.contact .fieldset > .field .addon .addbefore, +.control .form.password.forget .fieldset > .field .addon .addbefore, +.control .form.create.account .fieldset > .field .addon .addbefore, +.control .form.wishlist.share .fieldset > .field .addon .addbefore, +.control .form.password.reset .fieldset > .field .addon .addbefore, +.control .form.paypal.review .fieldset > .field .addon .addbefore, +.control .form.send.friend .fieldset > .field .addon .addafter, +.control .form.address.edit .fieldset > .field .addon .addafter, +.control .form.edit.account .fieldset > .field .addon .addafter, +.control .form.search.advanced .fieldset > .field .addon .addafter, +.control .form.orders.search .fieldset > .field .addon .addafter, +.control .form.contact .fieldset > .field .addon .addafter, +.control .form.password.forget .fieldset > .field .addon .addafter, +.control .form.create.account .fieldset > .field .addon .addafter, +.control .form.wishlist.share .fieldset > .field .addon .addafter, +.control .form.password.reset .fieldset > .field .addon .addafter, +.control .form.paypal.review .fieldset > .field .addon .addafter { + width: 100%; +} +.form.send.friend .fieldset > .field .addon .addbefore:disabled, +.form.address.edit .fieldset > .field .addon .addbefore:disabled, +.form.edit.account .fieldset > .field .addon .addbefore:disabled, +.form.search.advanced .fieldset > .field .addon .addbefore:disabled, +.form.orders.search .fieldset > .field .addon .addbefore:disabled, +.form.contact .fieldset > .field .addon .addbefore:disabled, +.form.password.forget .fieldset > .field .addon .addbefore:disabled, +.form.create.account .fieldset > .field .addon .addbefore:disabled, +.form.wishlist.share .fieldset > .field .addon .addbefore:disabled, +.form.password.reset .fieldset > .field .addon .addbefore:disabled, +.form.paypal.review .fieldset > .field .addon .addbefore:disabled, +.form.send.friend .fieldset > .field .addon .addafter:disabled, +.form.address.edit .fieldset > .field .addon .addafter:disabled, +.form.edit.account .fieldset > .field .addon .addafter:disabled, +.form.search.advanced .fieldset > .field .addon .addafter:disabled, +.form.orders.search .fieldset > .field .addon .addafter:disabled, +.form.contact .fieldset > .field .addon .addafter:disabled, +.form.password.forget .fieldset > .field .addon .addafter:disabled, +.form.create.account .fieldset > .field .addon .addafter:disabled, +.form.wishlist.share .fieldset > .field .addon .addafter:disabled, +.form.password.reset .fieldset > .field .addon .addafter:disabled, +.form.paypal.review .fieldset > .field .addon .addafter:disabled { + opacity: 0.5; +} +.form.send.friend .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.address.edit .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.edit.account .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.search.advanced .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.orders.search .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.contact .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.password.forget .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.create.account .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.wishlist.share .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.password.reset .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.paypal.review .fieldset > .field .addon .addbefore::-webkit-input-placeholder, +.form.send.friend .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.address.edit .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.edit.account .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.search.advanced .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.orders.search .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.contact .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.password.forget .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.create.account .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.wishlist.share .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.password.reset .fieldset > .field .addon .addafter::-webkit-input-placeholder, +.form.paypal.review .fieldset > .field .addon .addafter::-webkit-input-placeholder { + line-height: 1.333; +} +.form.send.friend .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.address.edit .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.edit.account .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.search.advanced .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.orders.search .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.contact .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.password.forget .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.create.account .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.wishlist.share .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.password.reset .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.paypal.review .fieldset > .field .addon .addbefore:-ms-input-placeholder, +.form.send.friend .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.address.edit .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.edit.account .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.search.advanced .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.orders.search .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.contact .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.password.forget .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.create.account .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.wishlist.share .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.password.reset .fieldset > .field .addon .addafter:-ms-input-placeholder, +.form.paypal.review .fieldset > .field .addon .addafter:-ms-input-placeholder { + line-height: 1.333; +} +.eq-ie8 .form.send.friend .fieldset > .field .addon .addbefore, +.eq-ie8 .form.address.edit .fieldset > .field .addon .addbefore, +.eq-ie8 .form.edit.account .fieldset > .field .addon .addbefore, +.eq-ie8 .form.search.advanced .fieldset > .field .addon .addbefore, +.eq-ie8 .form.orders.search .fieldset > .field .addon .addbefore, +.eq-ie8 .form.contact .fieldset > .field .addon .addbefore, +.eq-ie8 .form.password.forget .fieldset > .field .addon .addbefore, +.eq-ie8 .form.create.account .fieldset > .field .addon .addbefore, +.eq-ie8 .form.wishlist.share .fieldset > .field .addon .addbefore, +.eq-ie8 .form.password.reset .fieldset > .field .addon .addbefore, +.eq-ie8 .form.paypal.review .fieldset > .field .addon .addbefore, +.eq-ie8 .form.send.friend .fieldset > .field .addon .addafter, +.eq-ie8 .form.address.edit .fieldset > .field .addon .addafter, +.eq-ie8 .form.edit.account .fieldset > .field .addon .addafter, +.eq-ie8 .form.search.advanced .fieldset > .field .addon .addafter, +.eq-ie8 .form.orders.search .fieldset > .field .addon .addafter, +.eq-ie8 .form.contact .fieldset > .field .addon .addafter, +.eq-ie8 .form.password.forget .fieldset > .field .addon .addafter, +.eq-ie8 .form.create.account .fieldset > .field .addon .addafter, +.eq-ie8 .form.wishlist.share .fieldset > .field .addon .addafter, +.eq-ie8 .form.password.reset .fieldset > .field .addon .addafter, +.eq-ie8 .form.paypal.review .fieldset > .field .addon .addafter { + padding-top: 8px; +} +.form.send.friend .fieldset > .field .note, +.form.address.edit .fieldset > .field .note, +.form.edit.account .fieldset > .field .note, +.form.search.advanced .fieldset > .field .note, +.form.orders.search .fieldset > .field .note, +.form.contact .fieldset > .field .note, +.form.password.forget .fieldset > .field .note, +.form.create.account .fieldset > .field .note, +.form.wishlist.share .fieldset > .field .note, +.form.password.reset .fieldset > .field .note, +.form.paypal.review .fieldset > .field .note { + font-size: 12px; + margin-top: 3px; + padding-left: 15px; +} +.form.send.friend .fieldset > .field .note:before, +.form.address.edit .fieldset > .field .note:before, +.form.edit.account .fieldset > .field .note:before, +.form.search.advanced .fieldset > .field .note:before, +.form.orders.search .fieldset > .field .note:before, +.form.contact .fieldset > .field .note:before, +.form.password.forget .fieldset > .field .note:before, +.form.create.account .fieldset > .field .note:before, +.form.wishlist.share .fieldset > .field .note:before, +.form.password.reset .fieldset > .field .note:before, +.form.paypal.review .fieldset > .field .note:before { + border-bottom: 5px solid #675f55; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + content: ''; + display: inline-block; + font-size: 0; + line-height: 0; + margin: 4px 0 0 -14px; + position: absolute; + vertical-align: top; + width: 0; +} +.form.send.friend .fieldset > .field:last-child, +.form.address.edit .fieldset > .field:last-child, +.form.edit.account .fieldset > .field:last-child, +.form.search.advanced .fieldset > .field:last-child, +.form.orders.search .fieldset > .field:last-child, +.form.contact .fieldset > .field:last-child, +.form.password.forget .fieldset > .field:last-child, +.form.create.account .fieldset > .field:last-child, +.form.wishlist.share .fieldset > .field:last-child, +.form.password.reset .fieldset > .field:last-child, +.form.paypal.review .fieldset > .field:last-child { + margin-bottom: 0; +} +.form.send.friend .fieldset > .field .nested, +.form.address.edit .fieldset > .field .nested, +.form.edit.account .fieldset > .field .nested, +.form.search.advanced .fieldset > .field .nested, +.form.orders.search .fieldset > .field .nested, +.form.contact .fieldset > .field .nested, +.form.password.forget .fieldset > .field .nested, +.form.create.account .fieldset > .field .nested, +.form.wishlist.share .fieldset > .field .nested, +.form.password.reset .fieldset > .field .nested, +.form.paypal.review .fieldset > .field .nested { + padding: 0 0 0; +} +.form.send.friend .fieldset > .field .nested .field, +.form.address.edit .fieldset > .field .nested .field, +.form.edit.account .fieldset > .field .nested .field, +.form.search.advanced .fieldset > .field .nested .field, +.form.orders.search .fieldset > .field .nested .field, +.form.contact .fieldset > .field .nested .field, +.form.password.forget .fieldset > .field .nested .field, +.form.create.account .fieldset > .field .nested .field, +.form.wishlist.share .fieldset > .field .nested .field, +.form.password.reset .fieldset > .field .nested .field, +.form.paypal.review .fieldset > .field .nested .field { + margin: 5px 0; +} +.form.send.friend .fieldset > .field > .label, +.form.address.edit .fieldset > .field > .label, +.form.edit.account .fieldset > .field > .label, +.form.search.advanced .fieldset > .field > .label, +.form.orders.search .fieldset > .field > .label, +.form.contact .fieldset > .field > .label, +.form.password.forget .fieldset > .field > .label, +.form.create.account .fieldset > .field > .label, +.form.wishlist.share .fieldset > .field > .label, +.form.password.reset .fieldset > .field > .label, +.form.paypal.review .fieldset > .field > .label { + display: block; + padding: 0 0 5px; +} +.form.send.friend .fieldset > .field.note, +.form.address.edit .fieldset > .field.note, +.form.edit.account .fieldset > .field.note, +.form.search.advanced .fieldset > .field.note, +.form.orders.search .fieldset > .field.note, +.form.contact .fieldset > .field.note, +.form.password.forget .fieldset > .field.note, +.form.create.account .fieldset > .field.note, +.form.wishlist.share .fieldset > .field.note, +.form.password.reset .fieldset > .field.note, +.form.paypal.review .fieldset > .field.note, +.form.send.friend .fieldset .field.street, +.form.address.edit .fieldset .field.street, +.form.edit.account .fieldset .field.street, +.form.search.advanced .fieldset .field.street, +.form.orders.search .fieldset .field.street, +.form.contact .fieldset .field.street, +.form.password.forget .fieldset .field.street, +.form.create.account .fieldset .field.street, +.form.wishlist.share .fieldset .field.street, +.form.password.reset .fieldset .field.street, +.form.paypal.review .fieldset .field.street, +.form.send.friend .fieldset .field.choice.newsletter, +.form.address.edit .fieldset .field.choice.newsletter, +.form.edit.account .fieldset .field.choice.newsletter, +.form.search.advanced .fieldset .field.choice.newsletter, +.form.orders.search .fieldset .field.choice.newsletter, +.form.contact .fieldset .field.choice.newsletter, +.form.password.forget .fieldset .field.choice.newsletter, +.form.create.account .fieldset .field.choice.newsletter, +.form.wishlist.share .fieldset .field.choice.newsletter, +.form.password.reset .fieldset .field.choice.newsletter, +.form.paypal.review .fieldset .field.choice.newsletter { + width: 100%; +} +.form.send.friend .fieldset .field.fullname, +.form.address.edit .fieldset .field.fullname, +.form.edit.account .fieldset .field.fullname, +.form.search.advanced .fieldset .field.fullname, +.form.orders.search .fieldset .field.fullname, +.form.contact .fieldset .field.fullname, +.form.password.forget .fieldset .field.fullname, +.form.create.account .fieldset .field.fullname, +.form.wishlist.share .fieldset .field.fullname, +.form.password.reset .fieldset .field.fullname, +.form.paypal.review .fieldset .field.fullname { + width: 100%; +} +.form.send.friend .fieldset .field.fullname .fields.group-5 .field, +.form.address.edit .fieldset .field.fullname .fields.group-5 .field, +.form.edit.account .fieldset .field.fullname .fields.group-5 .field, +.form.search.advanced .fieldset .field.fullname .fields.group-5 .field, +.form.orders.search .fieldset .field.fullname .fields.group-5 .field, +.form.contact .fieldset .field.fullname .fields.group-5 .field, +.form.password.forget .fieldset .field.fullname .fields.group-5 .field, +.form.create.account .fieldset .field.fullname .fields.group-5 .field, +.form.wishlist.share .fieldset .field.fullname .fields.group-5 .field, +.form.password.reset .fieldset .field.fullname .fields.group-5 .field, +.form.paypal.review .fieldset .field.fullname .fields.group-5 .field { + width: 20%; +} +.form.send.friend .fieldset .field.dob .fields.group .field, +.form.address.edit .fieldset .field.dob .fields.group .field, +.form.edit.account .fieldset .field.dob .fields.group .field, +.form.search.advanced .fieldset .field.dob .fields.group .field, +.form.orders.search .fieldset .field.dob .fields.group .field, +.form.contact .fieldset .field.dob .fields.group .field, +.form.password.forget .fieldset .field.dob .fields.group .field, +.form.create.account .fieldset .field.dob .fields.group .field, +.form.wishlist.share .fieldset .field.dob .fields.group .field, +.form.password.reset .fieldset .field.dob .fields.group .field, +.form.paypal.review .fieldset .field.dob .fields.group .field { + width: 33%; + position: relative; + z-index: 1; +} +.form.send.friend .fieldset .field.dob .fields.group .field .label, +.form.address.edit .fieldset .field.dob .fields.group .field .label, +.form.edit.account .fieldset .field.dob .fields.group .field .label, +.form.search.advanced .fieldset .field.dob .fields.group .field .label, +.form.orders.search .fieldset .field.dob .fields.group .field .label, +.form.contact .fieldset .field.dob .fields.group .field .label, +.form.password.forget .fieldset .field.dob .fields.group .field .label, +.form.create.account .fieldset .field.dob .fields.group .field .label, +.form.wishlist.share .fieldset .field.dob .fields.group .field .label, +.form.password.reset .fieldset .field.dob .fields.group .field .label, +.form.paypal.review .fieldset .field.dob .fields.group .field .label { + position: absolute; + bottom: 0; + font-size: 12px; + line-height: 16px; +} +.form.send.friend .fieldset .field.dob .fields.group .field input, +.form.address.edit .fieldset .field.dob .fields.group .field input, +.form.edit.account .fieldset .field.dob .fields.group .field input, +.form.search.advanced .fieldset .field.dob .fields.group .field input, +.form.orders.search .fieldset .field.dob .fields.group .field input, +.form.contact .fieldset .field.dob .fields.group .field input, +.form.password.forget .fieldset .field.dob .fields.group .field input, +.form.create.account .fieldset .field.dob .fields.group .field input, +.form.wishlist.share .fieldset .field.dob .fields.group .field input, +.form.password.reset .fieldset .field.dob .fields.group .field input, +.form.paypal.review .fieldset .field.dob .fields.group .field input { + margin-bottom: 16px; +} +.form.send.friend .actions, +.form.address.edit .actions, +.form.edit.account .actions, +.form.search.advanced .actions, +.form.orders.search .actions, +.form.contact .actions, +.form.password.forget .actions, +.form.create.account .actions, +.form.wishlist.share .actions, +.form.password.reset .actions, +.form.paypal.review .actions { + *zoom: 1; + width: 690px; +} +.form.send.friend .actions:before, +.form.address.edit .actions:before, +.form.edit.account .actions:before, +.form.search.advanced .actions:before, +.form.orders.search .actions:before, +.form.contact .actions:before, +.form.password.forget .actions:before, +.form.create.account .actions:before, +.form.wishlist.share .actions:before, +.form.password.reset .actions:before, +.form.paypal.review .actions:before, +.form.send.friend .actions:after, +.form.address.edit .actions:after, +.form.edit.account .actions:after, +.form.search.advanced .actions:after, +.form.orders.search .actions:after, +.form.contact .actions:after, +.form.password.forget .actions:after, +.form.create.account .actions:after, +.form.wishlist.share .actions:after, +.form.password.reset .actions:after, +.form.paypal.review .actions:after { + content: ""; + display: table; +} +.form.send.friend .actions:after, +.form.address.edit .actions:after, +.form.edit.account .actions:after, +.form.search.advanced .actions:after, +.form.orders.search .actions:after, +.form.contact .actions:after, +.form.password.forget .actions:after, +.form.create.account .actions:after, +.form.wishlist.share .actions:after, +.form.password.reset .actions:after, +.form.paypal.review .actions:after { + clear: both; +} +.form.send.friend .actions .primary, +.form.address.edit .actions .primary, +.form.edit.account .actions .primary, +.form.search.advanced .actions .primary, +.form.orders.search .actions .primary, +.form.contact .actions .primary, +.form.password.forget .actions .primary, +.form.create.account .actions .primary, +.form.wishlist.share .actions .primary, +.form.password.reset .actions .primary, +.form.paypal.review .actions .primary { + float: right; +} +.form.send.friend .actions .secondary, +.form.address.edit .actions .secondary, +.form.edit.account .actions .secondary, +.form.search.advanced .actions .secondary, +.form.orders.search .actions .secondary, +.form.contact .actions .secondary, +.form.password.forget .actions .secondary, +.form.create.account .actions .secondary, +.form.wishlist.share .actions .secondary, +.form.password.reset .actions .secondary, +.form.paypal.review .actions .secondary { + float: left; +} +.form.send.friend .fieldset.create.account:after, +.form.address.edit .fieldset.create.account:after, +.form.edit.account .fieldset.create.account:after, +.form.search.advanced .fieldset.create.account:after, +.form.orders.search .fieldset.create.account:after, +.form.contact .fieldset.create.account:after, +.form.password.forget .fieldset.create.account:after, +.form.create.account .fieldset.create.account:after, +.form.wishlist.share .fieldset.create.account:after, +.form.password.reset .fieldset.create.account:after, +.form.paypal.review .fieldset.create.account:after { + content: attr(data-hasrequired); + display: block; + position: absolute; + top: 100%; + left: 0; + padding: 10px 0 0; + letter-spacing: normal; + word-spacing: normal; + color: #da370a; +} +.form.send.friend .fieldset.recipients .fields { + *zoom: 1; + margin-bottom: 30px; + position: relative; + z-index: 1; +} +.form.send.friend .fieldset.recipients .fields:before, +.form.send.friend .fieldset.recipients .fields:after { + content: ""; + display: table; +} +.form.send.friend .fieldset.recipients .fields:after { + clear: both; +} +.form.send.friend .fieldset.recipients .fields .field { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + width: 50%; + padding-right: 20px; + float: left; +} +.form.send.friend .fieldset.recipients .fields .action.delete { + position: absolute; + right: 0; + top: 50%; +} +.form.send.friend .actions > .primary { + float: right; + text-align: right; +} +.form.send.friend .actions > .primary .action.submit { + float: right; + margin-left: 10px; +} +.form.send.friend .actions > .primary .limit { + margin: 0; + display: inline-block; +} +.form.address.edit .field.company, +.form.edit.account .field.password.current, +.form.edit.account .field.choice { + margin-right: 30%; +} +.form.address.edit .field.note.default, +.form.address.edit .field.choice.set, +.form.wishlist.share .field.emails, +.form.wishlist.share .field.text, +.form.wishlist.share .field.choice { + width: 100%; +} +.form.search.advanced, +.form.orders.search, +.form.contact { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + background: #f8f8f8; + padding: 40px; +} +.form.search.advanced .fieldset, +.form.orders.search .fieldset, +.form.contact .fieldset { + width: auto; + background: none; + margin-bottom: 0; +} +.form.search.advanced .fieldset .legend, +.form.orders.search .fieldset .legend, +.form.contact .fieldset .legend { + background: none; +} +.form.search.advanced .actions, +.form.orders.search .actions, +.form.contact .actions { + width: auto; + padding-right: 30px; + text-align: right; +} +.form.search.advanced .fields.range .field:first-child .control, +.form.orders.search .fields.range .field:first-child .control, +.form.contact .fields.range .field:first-child .control { + padding-right: 30px; + position: relative; +} +.form.search.advanced .fields.range .field:first-child .control:after, +.form.orders.search .fields.range .field:first-child .control:after, +.form.contact .fields.range .field:first-child .control:after { + content: '\2014'; + display: inline-block; + margin-right: 0; + position: absolute; + right: 6px; + top: 5px; + text-align: center; + width: 25px; +} +.form.contact .fieldset .field { + float: left; + width: 40%; + margin-right: 60%; +} +.form.contact .fieldset .field.comment { + width: 55%; + margin-left: -55%; + margin-right: 0; + float: none; +} +.form.contact .fieldset .field.comment textarea { + min-height: 13.2em; +} +/* + Review paypal express checkout order +-------------------------------------- */ +.paypal.review.view .paypal.subtitle.caption { + margin-bottom: 25px; +} +.paypal.review.view .paypal.subtitle.caption .action { + margin-left: 10px; +} +.paypal.review.view .paypal.subtitle.caption strong { + font-size: 20px; + font-weight: 200; + line-height: 1.2; +} +.paypal.review.view .form.paypal.review .fieldset { + width: 100%; +} +.paypal.review.view .form.paypal.review .fieldset.shipping.address { + float: right; + width: 49%; +} +.paypal.review.view .form.paypal.review .fieldset.billing.address { + float: left; + width: 49%; +} +.paypal.review.view .form.paypal.review .fieldset.shipping.method { + clear: both; +} +.paypal.review.view .form.paypal.review .fieldset .nested { + margin-top: 10px; +} +.paypal.review.view .actions { + margin-top: 35px; +} +.paypal.review.view .actions .action.update { + margin-left: 10px; +} +.paypal.review.view .data.table.paypal.review.items { + width: 100%; +} +.paypal.review.view .data.table.paypal.review.items td, +.paypal.review.view .data.table.paypal.review.items th { + padding: 10px 20px; + text-align: left; +} +.paypal.review.view .data.table.paypal.review.items td.col.total, +.paypal.review.view .data.table.paypal.review.items th.col.total { + text-align: right; +} +.paypal.review.view .data.table.paypal.review.items th { + font-size: 16px; + font-weight: 400; +} +.paypal.review.view .data.table.paypal.review.items tbody tr:nth-child(odd) td { + background: #f8f8f8; +} +.paypal.review.view .data.table.paypal.review.items tfoot tr:first-child td { + border-top: 3px solid #e5e5e5; + padding-top: 15px; +} +/* + MISC +-------------------------------------- */ +.action.back span:before { + content: '\00AB\00A0'; +} +/* + Magento_Customer + Account +-------------------------------------- */ +.col2-left-layout.account .column.main { + float: left; + width: 75%; + margin-right: 0%; +} +.col2-left-layout.account .column.left { + float: left; + width: 25%; + margin-right: 0%; +} +.block.account.nav .title { + font-size: 18px; +} +.block.account.nav .item { + margin-bottom: 10px; +} +.block.account.nav .item.current { + color: #da370a; +} +.block.account.nav .item strong { + font-weight: 400; +} +.my-account .pager .amount, +.my-account .pager .limiter { + display: inline-block; +} +.my-account .form .fieldset > .legend { + margin: 0 0 30px; +} +.my-account > .actions, +.my-account .form > .actions, +.my-account .block > .actions { + *zoom: 1; + margin: 30px 0 0; +} +.my-account > .actions:before, +.my-account .form > .actions:before, +.my-account .block > .actions:before, +.my-account > .actions:after, +.my-account .form > .actions:after, +.my-account .block > .actions:after { + content: ""; + display: table; +} +.my-account > .actions:after, +.my-account .form > .actions:after, +.my-account .block > .actions:after { + clear: both; +} +.my-account > .actions > .primary, +.my-account .form > .actions > .primary, +.my-account .block > .actions > .primary { + float: right; +} +.my-account > .actions > .secondary, +.my-account .form > .actions > .secondary, +.my-account .block > .actions > .secondary { + float: left; +} +.my-account .data.table { + width: 100%; +} +.my-account .data.table td, +.my-account .data.table th { + padding: 10px 20px; + text-align: left; +} +.my-account .data.table td.col.actions, +.my-account .data.table th.col.actions { + white-space: nowrap; +} +.my-account .data.table td.col.actions .action:last-child, +.my-account .data.table th.col.actions .action:last-child { + margin-left: 20px; +} +.my-account .data.table td em, +.my-account .data.table th em { + font-style: normal; +} +.my-account .data.table th { + font-size: 16px; + font-weight: 400; +} +.my-account .data.table tr:nth-child(odd) td { + background: #f8f8f8; +} +.block.dashboard .title .action, +.block.dashboard .subtitle .action { + font-weight: 400; + font-size: 14px; + margin-left: 20px; + text-decoration: underline; + display: inline-block; + text-transform: lowercase; +} +.block.dashboard .title .action:first-letter, +.block.dashboard .subtitle .action:first-letter { + text-transform: uppercase; +} +.block.dashboard .box { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + float: left; + width: 50%; + line-height: 1.666; +} +.block.dashboard .box address { + font-style: normal; +} +.block.dashboard .content { + *zoom: 1; +} +.block.dashboard .content:before, +.block.dashboard .content:after { + content: ""; + display: table; +} +.block.dashboard .content:after { + clear: both; +} +.block.dashboard:not(.welcome):not(.orders) .content { + background: #f8f8f8; + padding: 30px; +} +.block.dashboard:not(.welcome):not(.orders) .subtitle { + font-size: 18px; + font-weight: 200; + display: block; + margin-bottom: 20px; +} +.data.table.orders td.col.total, +.data.table.orders th.col.total { + text-align: right; +} +/* + Address book +-------------------------------------- */ +.block.addresses:not(.dashboard) { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + float: left; +} +.block.addresses:not(.dashboard) .title .action, +.block.addresses:not(.dashboard) .subtitle .action { + font-weight: 400; + font-size: 14px; + margin-left: 20px; + text-decoration: underline; + display: inline-block; + text-transform: lowercase; +} +.block.addresses:not(.dashboard) .title .action:first-letter, +.block.addresses:not(.dashboard) .subtitle .action:first-letter { + text-transform: uppercase; +} +.block.addresses:not(.dashboard) .content { + background: #f8f8f8; + padding: 30px; +} +.block.addresses:not(.dashboard) .subtitle { + font-size: 18px; + font-weight: 200; + display: block; + margin-bottom: 20px; +} +.block.addresses:not(.dashboard) .box:first-child { + margin-bottom: 30px; +} +.block.addresses:not(.dashboard) address { + line-height: 1.666; + font-style: normal; +} +.block.addresses:not(.dashboard).default { + float: left; + width: 60%; +} +.block.addresses:not(.dashboard).list { + float: right; + width: 35%; +} +.block.addresses:not(.dashboard).list .item { + margin-bottom: 30px; +} +.block.addresses:not(.dashboard).list .item.actions { + margin-top: 15px; +} +.block.addresses:not(.dashboard).list .action { + margin-right: 10px; +} +.customer-address-index .column.main .actions { + clear: left; +} +/* + My Account -> My Product Reviews +-------------------------------------- */ +.data.table.reviews .product.name { + margin: 0; +} +/* + My Account -> My Wishlist +-------------------------------------- */ +.data.table.wishlist { + margin-bottom: 15px; +} +.data.table.wishlist thead th { + padding-top: 0; + padding-bottom: 10px; + text-align: left; + font-weight: 400; + font-size: 16px; +} +.data.table.wishlist td, +.data.table.wishlist th { + padding: 16px 10px 10px; + vertical-align: top; +} +.data.table.wishlist td:first-child, +.data.table.wishlist th:first-child { + padding-left: 20px; +} +.data.table.wishlist td:last-child, +.data.table.wishlist th:last-child { + padding-right: 20px; +} +.data.table.wishlist tbody tr:nth-child(even) { + background: #f8f8f8; +} +.data.table.wishlist textarea { + width: 100%; +} +.data.table.wishlist .box.tocart .qty { + width: 50px; +} +.data.table.wishlist + .actions .primary { + margin-bottom: 15px; +} +.data.table.wishlist + .actions .primary .action.share, +.data.table.wishlist + .actions .primary .action.update { + padding: 5px 11px; +} +.data.table.wishlist + .actions .primary .action.update { + margin-left: 5px; +} +.data.table.wishlist .col.photo { + width: 100px; +} +.data.table.wishlist .col.actions { + width: 200px; +} +.data.table.wishlist .item-options { + background: rgba(0, 0, 0, 0.8); + color: #ffffff; + display: none; + position: absolute; + border-radius: 5px; + padding: 10px; + right: 100%; + top: 50%; + margin-top: -20px; + margin-right: 15px; + max-width: 200px; + min-width: 100px; +} +.data.table.wishlist .item-options > p { + margin-top: 0; +} +.data.table.wishlist .item-options dl { + margin: 0; +} +.data.table.wishlist .item-options dl dt { + display: inline; + float: left; + clear: left; + font-weight: 600; +} +.data.table.wishlist .item-options dl dt:after { + content: ':'; + margin-right: 5px; +} +.data.table.wishlist .item-options dl dd { + margin: 0; +} +.data.table.wishlist .truncated .truncated_full_value { + position: relative; +} +.data.table.wishlist .truncated .truncated_full_value.show:before { + content: ''; + border-left: 10px solid rgba(0, 0, 0, 0.8); + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + height: 0; + width: 0; + overflow: hidden; + display: block; + position: absolute; + top: 3px; + margin-top: 0; + left: -15px; + z-index: 2; +} +.data.table.wishlist .truncated .truncated_full_value.show .item-options { + display: block; +} +.data.table.wishlist .truncated .details { + font-size: 12px; + border-bottom: 1px dotted #332e29; + cursor: help; +} +/* + Page -> Advanced Search +-------------------------------------- */ +.form.search.advanced .range.price.fields.group .field { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + float: left; + width: 50%; + margin-right: 0%; + padding-right: 0; +} +.form.search.advanced .range.price.fields.group .field:first-child input { + width: 96%; +} +.form.search.advanced .range.dates.fields.group .field { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + float: left; + width: 50%; + margin-right: 0%; + padding-right: 0; +} +.form.search.advanced .range.dates.fields.group .field .control { + padding-right: 20px; +} +.form.search.advanced .range.dates.fields.group .field:first-child .control { + padding-right: 50px; +} +.form.search.advanced .range.dates.fields.group .field:first-child .control .ui-datepicker-trigger { + right: 32px; +} +.form.search.advanced .group.price .addon .addafter { + color: #675f55; + border: none; + background: none; +} +/* + Popular Search Terms +-------------------------------------- */ +.search.terms { + padding: 0; + margin: 0; + list-style-type: none; + list-style-image: none; +} +.search.terms .item { + display: inline-block; + margin-right: 3px; +} +/* + My Account -> My orders +-------------------------------------- */ +.order.details { + *zoom: 1; +} +.order.details:before, +.order.details:after { + content: ""; + display: table; +} +.order.details:after { + clear: both; +} +.order.details .status { + margin: 0 0 .5em; + line-height: 1.2; + font-weight: 400; + font-size: 30px; + float: left; +} +.order.details .subtitle.caption strong, +.order.details .title strong { + line-height: 1.2; + font-weight: 200; + font-size: 20px; +} +.order.details .subtitle.caption .action, +.order.details .title .action { + margin-left: 10px; +} +.order.details .subtitle.caption { + margin-bottom: 45px; +} +.order.details .order.toolbar { + clear: none; + float: right; +} +.order.details .order.toolbar .action { + margin-left: 10px; +} +.order.details .block.order { + float: left; + width: 48%; + padding-right: 2%; +} +.order.details .block.order.billing.address { + clear: left; +} +.order.details .block.order .content { + background: #f8f8f8; + padding: 30px; +} +.order.details .order.info { + clear: both; +} +.order.details .order.info > dt { + line-height: 1.2; + font-weight: 200; + font-size: 20px; +} +.order.details .order.info > dd { + margin: 10px 0 0 0; + background: #f8f8f8; + padding: 30px; +} +.order.details .order.info > dd .items { + *zoom: 1; +} +.order.details .order.info > dd .items:before, +.order.details .order.info > dd .items:after { + content: ""; + display: table; +} +.order.details .order.info > dd .items:after { + clear: both; +} +.order.details .order.info > dd .items .item { + float: left; + margin-right: 15px; +} +.order.details .additional.details { + margin-bottom: 45px; +} +.order.details .additional.details .order.comments { + background: #f8f8f8; + padding: 30px; +} +.order.details .additional.details .subtitle.caption { + font-size: 20px; + font-weight: 200; + line-height: 1.2; + margin-bottom: 15px; +} +.order.details .additional.details.gift .gift.message { + background: #f8f8f8; + padding: 30px; +} +.order.details .additional.details.gift .gift.message dt { + margin: 0; +} +.order.details .additional.details.gift .gift.message dd { + margin: 0 0 0 40px; +} +.order.details.items .order.toolbar { + margin: 5px 0 0 0; +} +.order.details.items .order.title { + margin-bottom: 10px; +} +.order.details.items h3.product-name { + margin: 0; +} +.order.details.items .action.show { + text-decoration: none; +} +.order.details.items .action.show:after { + font-family: "icons"; + font-size: 12px; + line-height: 12px; + height: 12px; + margin: 0; + overflow: hidden; + content: "\e029"; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; +} +.order.details.items .action.show.expanded:after { + content: "\e02c"; +} +.shipping-tracking-popup .action.close { + text-indent: 0; +} +.shipping-tracking-popup .action.close span { + width: auto; + text-indent: 0; +} +.shipping-tracking-popup .action.close span:after { + content: ""; + display: none; +} +.data.table.order { + margin-bottom: 45px; + width: 100%; +} +.data.table.order thead th { + padding: 0 10px; +} +.data.table.order thead tr:last-child th { + padding-bottom: 10px; +} +.data.table.order td.col.qty { + width: 90px; + text-align: left; +} +.data.table.order td.col.price, +.data.table.order td.col.subtotal { + text-align: left; +} +.data.table.order td { + padding: 16px 10px 10px; + vertical-align: top; +} +.data.table.order td h4 { + margin: 0; +} +.data.table.order td:first-child, +.data.table.order th:first-child { + padding-left: 20px; +} +.data.table.order td:last-child, +.data.table.order th:last-child { + padding-right: 20px; +} +.data.table.order tbody:nth-child(even) tr { + background: #f8f8f8; +} +.data.table.order th { + text-align: left; + font-weight: 400; + font-size: 14px; + vertical-align: top; +} +.data.table.order tr:first-child th { + font-weight: 400; + font-size: 16px; +} +.data.table.order .item-options { + margin: 5px 0; +} +.data.table.order .item-options dt { + font-weight: 400; + display: inline; + margin-right: 10px; + float: left; + clear: left; +} +.data.table.order .item-options dt:after { + content: ': '; +} +.data.table.order .item-options dd { + font-weight: 200; + margin: 0 0 5px 10px; + padding: 0; +} +.data.table.order tfoot tr:first-child td { + border-top: 3px solid #e5e5e5; + padding-top: 15px; +} +.data.table.order.tracking th, +.data.table.order.tracking td { + padding: 0; +} +.data.table.order.tracking .label { + width: 40%; +} +/* + My Account -> Billing agreements +-------------------------------------- */ +.billing.agreements .data.table { + margin-bottom: 40px; +} +.billing.agreements .form.new.agreement .field { + display: inline-block; + padding-right: 20px; + vertical-align: top; + width: 30%; +} +.billing.agreements .form.new.agreement .nested .field { + width: 100%; +} +.billing.agreements .form.new.agreement .actions { + margin-right: 30px; +} +.billing.agreements .form.new.agreement .fieldset { + margin: 0; +} +.billing.agreements .form.new.agreement .fieldset > .legend { + margin: 0 0 20px; +} +.billing.agreements .form.new.agreement .action.create { + padding-top: 7px; + padding-bottom: 6px; +} +/* + Overlay popup +-------------------------------------- */ +.window.overlay { + background: rgba(0, 0, 0, 0.5); + display: none; + min-height: 100%; + position: absolute; + top: 0; + left: 0; + width: 100%; + z-index: 990; +} +.window.overlay.active { + display: block; +} +.popup { + background: #ffffff; + left: 50%; + top: 40%; + position: absolute; + margin: -85px 0 0 -250px; + width: 500px; + z-index: 1000; + position: fixed; + display: none; +} +.popup.active { + display: block; +} +.popup .close span { + width: 16px; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; +} +.popup .close span:active { + outline: 0; +} +.popup .close span:after { + text-indent: 0; + display: block; + margin: 0; +} +.popup .title { + font-size: 18px; + margin: 0 0 30px; +} diff --git a/app/design/frontend/magento_plushe/fonts/.htaccess b/app/design/frontend/magento_plushe/fonts/.htaccess new file mode 100644 index 0000000000000..d7ef2e0846f35 --- /dev/null +++ b/app/design/frontend/magento_plushe/fonts/.htaccess @@ -0,0 +1,13 @@ +# deny *everything* + + Order Allow,Deny + Deny from all + + +# but now allow just *certain* necessary files: + + Order Allow,Deny + Allow from all + + +IndexIgnore */* \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/fonts/icons/icons.dev.svg b/app/design/frontend/magento_plushe/fonts/icons/icons.dev.svg new file mode 100644 index 0000000000000..661704d2967fd --- /dev/null +++ b/app/design/frontend/magento_plushe/fonts/icons/icons.dev.svg @@ -0,0 +1,99 @@ + + + + +This is a custom SVG font generated by IcoMoon. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/fonts/icons/icons.eot b/app/design/frontend/magento_plushe/fonts/icons/icons.eot new file mode 100644 index 0000000000000..b84de058ea763 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/icons/icons.eot differ diff --git a/app/design/frontend/magento_plushe/fonts/icons/icons.svg b/app/design/frontend/magento_plushe/fonts/icons/icons.svg new file mode 100644 index 0000000000000..560b55877c2c6 --- /dev/null +++ b/app/design/frontend/magento_plushe/fonts/icons/icons.svg @@ -0,0 +1,99 @@ + + + + +This is a custom SVG font generated by IcoMoon. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/fonts/icons/icons.ttf b/app/design/frontend/magento_plushe/fonts/icons/icons.ttf new file mode 100644 index 0000000000000..04a1a990a5d25 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/icons/icons.ttf differ diff --git a/app/design/frontend/magento_plushe/fonts/icons/icons.woff b/app/design/frontend/magento_plushe/fonts/icons/icons.woff new file mode 100644 index 0000000000000..02d652643c348 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/icons/icons.woff differ diff --git a/app/design/frontend/magento_plushe/fonts/marvel/OFL.txt b/app/design/frontend/magento_plushe/fonts/marvel/OFL.txt new file mode 100644 index 0000000000000..077aee25e6b01 --- /dev/null +++ b/app/design/frontend/magento_plushe/fonts/marvel/OFL.txt @@ -0,0 +1,93 @@ +Copyright (c) 2011, Carolina Trebol , +with Reserved Font Name "Marvel". +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.eot b/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.eot new file mode 100644 index 0000000000000..59d0da2feff21 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.eot differ diff --git a/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.svg b/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.svg new file mode 100644 index 0000000000000..864d374918c1a --- /dev/null +++ b/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.svg @@ -0,0 +1,213 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.ttf b/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.ttf new file mode 100644 index 0000000000000..d5a74aa443599 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.ttf differ diff --git a/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.woff b/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.woff new file mode 100644 index 0000000000000..ed785d30386af Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/marvel/marvel-400-normal-webfont.woff differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.eot b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.eot new file mode 100644 index 0000000000000..e22984c807424 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.eot differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.svg b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.svg new file mode 100644 index 0000000000000..6cdfecda0803d --- /dev/null +++ b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.svg @@ -0,0 +1,245 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.ttf b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.ttf new file mode 100644 index 0000000000000..b081effa23ca1 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.ttf differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.woff b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.woff new file mode 100644 index 0000000000000..0cc7b8d7815bb Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-200-normal-webfont.woff differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.eot b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.eot new file mode 100644 index 0000000000000..3490416ce5062 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.eot differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.svg b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.svg new file mode 100644 index 0000000000000..83388d83b58f5 --- /dev/null +++ b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.svg @@ -0,0 +1,245 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.ttf b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.ttf new file mode 100644 index 0000000000000..fe5d758dce70b Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.ttf differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.woff b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.woff new file mode 100644 index 0000000000000..9799be38b24ef Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-400-normal-webfont.woff differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.eot b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.eot new file mode 100644 index 0000000000000..1f11e3af0d468 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.eot differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.svg b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.svg new file mode 100644 index 0000000000000..ca699f72cc446 --- /dev/null +++ b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.svg @@ -0,0 +1,245 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.ttf b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.ttf new file mode 100644 index 0000000000000..680103c671287 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.ttf differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.woff b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.woff new file mode 100644 index 0000000000000..56e335d010688 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-600-normal-webfont.woff differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.eot b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.eot new file mode 100644 index 0000000000000..d0743324939c1 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.eot differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.svg b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.svg new file mode 100644 index 0000000000000..fcd05c3683a41 --- /dev/null +++ b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.svg @@ -0,0 +1,245 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.ttf b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.ttf new file mode 100644 index 0000000000000..bf5f60a6654b6 Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.ttf differ diff --git a/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.woff b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.woff new file mode 100644 index 0000000000000..42ca5dc005aab Binary files /dev/null and b/app/design/frontend/magento_plushe/fonts/sourcesanspro/sourcesanspro-700-normal-webfont.woff differ diff --git a/app/design/frontend/magento_plushe/images/banner1.jpg b/app/design/frontend/magento_plushe/images/banner1.jpg new file mode 100644 index 0000000000000..5f91054dab522 Binary files /dev/null and b/app/design/frontend/magento_plushe/images/banner1.jpg differ diff --git a/app/design/frontend/magento_plushe/images/banner2.jpg b/app/design/frontend/magento_plushe/images/banner2.jpg new file mode 100644 index 0000000000000..6d00c1a05d5b0 Binary files /dev/null and b/app/design/frontend/magento_plushe/images/banner2.jpg differ diff --git a/app/design/frontend/magento_plushe/images/banner3.jpg b/app/design/frontend/magento_plushe/images/banner3.jpg new file mode 100644 index 0000000000000..fff706df31cc4 Binary files /dev/null and b/app/design/frontend/magento_plushe/images/banner3.jpg differ diff --git a/app/design/frontend/magento_plushe/images/banner4.jpg b/app/design/frontend/magento_plushe/images/banner4.jpg new file mode 100644 index 0000000000000..efc84cbe21a2e Binary files /dev/null and b/app/design/frontend/magento_plushe/images/banner4.jpg differ diff --git a/app/design/frontend/magento_plushe/images/blog_bg.png b/app/design/frontend/magento_plushe/images/blog_bg.png new file mode 100644 index 0000000000000..f20b394d5a218 Binary files /dev/null and b/app/design/frontend/magento_plushe/images/blog_bg.png differ diff --git a/app/design/frontend/magento_plushe/images/header-bg.jpg b/app/design/frontend/magento_plushe/images/header-bg.jpg new file mode 100644 index 0000000000000..994156d1a36a2 Binary files /dev/null and b/app/design/frontend/magento_plushe/images/header-bg.jpg differ diff --git a/app/design/frontend/magento_plushe/images/info_photo.jpg b/app/design/frontend/magento_plushe/images/info_photo.jpg new file mode 100644 index 0000000000000..dc150e4367e78 Binary files /dev/null and b/app/design/frontend/magento_plushe/images/info_photo.jpg differ diff --git a/app/design/frontend/magento_plushe/images/loader.gif b/app/design/frontend/magento_plushe/images/loader.gif new file mode 100644 index 0000000000000..53b5ac653eb1e Binary files /dev/null and b/app/design/frontend/magento_plushe/images/loader.gif differ diff --git a/app/design/frontend/magento_plushe/images/logo.gif b/app/design/frontend/magento_plushe/images/logo.gif new file mode 100644 index 0000000000000..7f1dc1ad3c939 Binary files /dev/null and b/app/design/frontend/magento_plushe/images/logo.gif differ diff --git a/app/design/frontend/magento_plushe/images/logo_notext.gif b/app/design/frontend/magento_plushe/images/logo_notext.gif new file mode 100644 index 0000000000000..133a77524368f Binary files /dev/null and b/app/design/frontend/magento_plushe/images/logo_notext.gif differ diff --git a/app/design/frontend/magento_plushe/images/main_image1.jpg b/app/design/frontend/magento_plushe/images/main_image1.jpg new file mode 100644 index 0000000000000..728174638d031 Binary files /dev/null and b/app/design/frontend/magento_plushe/images/main_image1.jpg differ diff --git a/app/design/frontend/magento_plushe/images/social-links.png b/app/design/frontend/magento_plushe/images/social-links.png new file mode 100644 index 0000000000000..66eb6c9083e3b Binary files /dev/null and b/app/design/frontend/magento_plushe/images/social-links.png differ diff --git a/app/design/frontend/magento_plushe/images/texture.png b/app/design/frontend/magento_plushe/images/texture.png new file mode 100644 index 0000000000000..2b5301b01cd63 Binary files /dev/null and b/app/design/frontend/magento_plushe/images/texture.png differ diff --git a/app/design/frontend/magento_plushe/js/extra-options.js b/app/design/frontend/magento_plushe/js/extra-options.js new file mode 100644 index 0000000000000..b7256ba4fef8e --- /dev/null +++ b/app/design/frontend/magento_plushe/js/extra-options.js @@ -0,0 +1,59 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category gift options + * @package mage + * @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) + */ +/*jshint jquery:true*/ +(function($) { + "use strict"; + $.widget('mage.extraOptions', { + options: { + events: 'billingSave shippingSave', + additionalContainer: '#onepage-checkout-shipping-method-additional-load' + }, + + /** + * Set up event handler for requesting any additional extra options from the backend. + * @private + */ + _create: function() { + this.element.on(this.options.events, $.proxy(this._addExtraOptions, this)); + }, + + /** + * Fetch the extra options using an Ajax call. Extra options include Gift Receipt and + * Printed Card. + * @private + */ + _addExtraOptions: function() { + $.ajax({ + url: this.options.additionalUrl, + context: this, + type: 'post', + async: false, + success: function(response) { + $(this.options.additionalContainer).html(response).trigger('contentUpdated'); + } + }); + } + }); +})(jQuery); diff --git a/app/design/frontend/magento_plushe/js/head.js b/app/design/frontend/magento_plushe/js/head.js new file mode 100644 index 0000000000000..ba5d3d10a6d36 --- /dev/null +++ b/app/design/frontend/magento_plushe/js/head.js @@ -0,0 +1,356 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @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) + */ + +(function (a, w) { + function f(a) { + p[p.length] = a + } + + function m(a) { + q.className = q.className.replace(RegExp("\\b" + a + "\\b"), "") + } + + function k(a, d) { + for (var b = 0, c = a.length; b < c; b++)d.call(a, a[b], b) + } + + function s() { + q.className = q.className.replace(/ (w-|eq-|gt-|gte-|lt-|lte-|portrait|no-portrait|landscape|no-landscape)\d+/g, ""); + var b = a.innerWidth || q.clientWidth, d = a.outerWidth || a.screen.width; + h.screen.innerWidth = b; + h.screen.outerWidth = d; + f("w-" + b); + k(c.screens, function (a) { + b > a ? (c.screensCss.gt && f("gt-" + a), c.screensCss.gte && f("gte-" + + a)) : b < a ? (c.screensCss.lt && f("lt-" + a), c.screensCss.lte && f("lte-" + a)) : b === a && (c.screensCss.lte && f("lte-" + a), c.screensCss.eq && f("e-q" + a), c.screensCss.gte && f("gte-" + a)) + }); + var d = a.innerHeight || q.clientHeight, g = a.outerHeight || a.screen.height; + h.screen.innerHeight = d; + h.screen.outerHeight = g; + h.feature("portrait", d > b); + h.feature("landscape", d < b) + } + + function r() { + a.clearTimeout(u); + u = a.setTimeout(s, 100) + } + + var n = a.document, g = a.navigator, t = a.location, q = n.documentElement, p = [], c = {screens:[240, 320, 480, 640, 768, 800, 1024, 1280, + 1440, 1680, 1920], screensCss:{gt:!0, gte:!1, lt:!0, lte:!1, eq:!1}, browsers:[ + {ie:{min:6, max:10}} + ], browserCss:{gt:!0, gte:!1, lt:!0, lte:!1, eq:!0}, section:"-section", page:"-page", head:"head"}; + if (a.head_conf)for (var b in a.head_conf)a.head_conf[b] !== w && (c[b] = a.head_conf[b]); + var h = a[c.head] = function () { + h.ready.apply(null, arguments) + }; + h.feature = function (a, b, c) { + if (!a)return q.className += " " + p.join(" "), p = [], h; + "[object Function]" === Object.prototype.toString.call(b) && (b = b.call()); + f((b ? "" : "no-") + a); + h[a] = !!b; + c || (m("no-" + + a), m(a), h.feature()); + return h + }; + h.feature("js", !0); + b = g.userAgent.toLowerCase(); + g = /mobile|midp/.test(b); + h.feature("mobile", g, !0); + h.feature("desktop", !g, !0); + b = /(chrome|firefox)[ \/]([\w.]+)/.exec(b) || /(iphone|ipad|ipod)(?:.*version)?[ \/]([\w.]+)/.exec(b) || /(android)(?:.*version)?[ \/]([\w.]+)/.exec(b) || /(webkit|opera)(?:.*version)?[ \/]([\w.]+)/.exec(b) || /(msie) ([\w.]+)/.exec(b) || []; + g = b[1]; + b = parseFloat(b[2]); + switch (g) { + case "msie": + g = "ie"; + b = n.documentMode || b; + break; + case "firefox": + g = "ff"; + break; + case "ipod": + case "ipad": + case "iphone": + g = + "ios"; + break; + case "webkit": + g = "safari" + } + h.browser = {name:g, version:b}; + h.browser[g] = !0; + for (var v = 0, x = c.browsers.length; v < x; v++)for (var i in c.browsers[v])if (g === i) { + f(i); + for (var A = c.browsers[v][i].max, l = c.browsers[v][i].min; l <= A; l++)b > l ? (c.browserCss.gt && f("gt-" + i + l), c.browserCss.gte && f("gte-" + i + l)) : b < l ? (c.browserCss.lt && f("lt-" + i + l), c.browserCss.lte && f("lte-" + i + l)) : b === l && (c.browserCss.lte && f("lte-" + i + l), c.browserCss.eq && f("eq-" + i + l), c.browserCss.gte && f("gte-" + i + l)) + } else f("no-" + i); + "ie" === g && 9 > b && k("abbr article aside audio canvas details figcaption figure footer header hgroup mark meter nav output progress section summary time video".split(" "), + function (a) { + n.createElement(a) + }); + k(t.pathname.split("/"), function (a, b) { + if (2 < this.length && this[b + 1] !== w)b && f(this.slice(1, b + 1).join("-").toLowerCase() + c.section); else { + var g = a || "index", h = g.indexOf("."); + 0 < h && (g = g.substring(0, h)); + q.id = g.toLowerCase() + c.page; + b || f("root" + c.section) + } + }); + h.screen = {height:a.screen.height, width:a.screen.width}; + s(); + var u = 0; + a.addEventListener ? a.addEventListener("resize", r, !1) : a.attachEvent("onresize", r) +})(window); +(function (a, w) { + function f(a) { + var f = a.charAt(0).toUpperCase() + a.substr(1), a = (a + " " + r.join(f + " ") + f).split(" "), c; + a:{ + for (c in a)if (k[a[c]] !== w) { + c = !0; + break a + } + c = !1 + } + return!!c + } + + var m = a.document.createElement("i"), k = m.style, s = " -o- -moz- -ms- -webkit- -khtml- ".split(" "), r = ["Webkit", "Moz", "O", "ms", "Khtml"], n = a[a.head_conf && a.head_conf.head || "head"], g = {gradient:function () { + k.cssText = ("background-image:" + s.join("gradient(linear,left top,right bottom,from(#9f9),to(#fff));background-image:") + s.join("linear-gradient(left top,#eee,#fff);background-image:")).slice(0, + -17); + return!!k.backgroundImage + }, rgba:function () { + k.cssText = "background-color:rgba(0,0,0,0.5)"; + return!!k.backgroundColor + }, opacity:function () { + return"" === m.style.opacity + }, textshadow:function () { + return"" === k.textShadow + }, multiplebgs:function () { + k.cssText = "background:url(//:),url(//:),red url(//:)"; + return/(url\s*\(.*?){3}/.test(k.background) + }, boxshadow:function () { + return f("boxShadow") + }, borderimage:function () { + return f("borderImage") + }, borderradius:function () { + return f("borderRadius") + }, cssreflections:function () { + return f("boxReflect") + }, + csstransforms:function () { + return f("transform") + }, csstransitions:function () { + return f("transition") + }, touch:function () { + return"ontouchstart"in a + }, retina:function () { + return 1 < a.devicePixelRatio + }, fontface:function () { + var a = n.browser.version; + switch (n.browser.name) { + case "ie": + return 9 <= a; + case "chrome": + return 13 <= a; + case "ff": + return 6 <= a; + case "ios": + return 5 <= a; + case "android": + return!1; + case "webkit": + return 5.1 <= a; + case "opera": + return 10 <= a; + default: + return!1 + } + }}, t; + for (t in g)g[t] && n.feature(t, g[t].call(), !0); + n.feature() +})(window); +(function (a, w) { + function f() { + } + + function m(j, a) { + if (j) { + "object" === typeof j && (j = [].slice.call(j)); + for (var b = 0, c = j.length; b < c; b++)a.call(j, j[b], b) + } + } + + function k(a, b) { + var e = Object.prototype.toString.call(b).slice(8, -1); + return b !== w && null !== b && e === a + } + + function s(a) { + return k("Function", a) + } + + function r(a) { + a = a || f; + a._done || (a(), a._done = 1) + } + + function n(a) { + var b = {}; + if ("object" === typeof a)for (var e in a)a[e] && (b = {name:e, url:a[e]}); else b = a.split("/"), b = b[b.length - 1], e = b.indexOf("?"), b = {name:-1 !== e ? b.substring(0, e) : b, url:a}; + return(a = i[b.name]) && a.url === b.url ? a : i[b.name] = b + } + + function g(a) { + var a = a || i, b; + for (b in a)if (a.hasOwnProperty(b) && a[b].state !== y)return!1; + return!0 + } + + function t(a, b) { + b = b || f; + a.state === y ? b() : a.state === D ? d.ready(a.name, b) : a.state === C ? a.onpreload.push(function () { + t(a, b) + }) : (a.state = D, q(a, function () { + a.state = y; + b(); + m(x[a.name], function (a) { + r(a) + }); + u && g() && m(x.ALL, function (a) { + r(a) + }) + })) + } + + function q(j, c) { + var c = c || f, e; + /\.css[^\.]*$/.test(j.url) ? (e = b.createElement("link"), e.type = "text/" + (j.type || "css"), e.rel = "stylesheet", + e.href = j.url) : (e = b.createElement("script"), e.type = "text/" + (j.type || "javascript"), e.src = j.url); + e.onload = e.onreadystatechange = function (j) { + j = j || a.event; + if ("load" === j.type || /loaded|complete/.test(e.readyState) && (!b.documentMode || 9 > b.documentMode))e.onload = e.onreadystatechange = e.onerror = null, c() + }; + e.onerror = function () { + e.onload = e.onreadystatechange = e.onerror = null; + c() + }; + e.async = !1; + e.defer = !1; + var d = b.head || b.getElementsByTagName("head")[0]; + d.insertBefore(e, d.lastChild) + } + + function p() { + b.body ? u || (u = !0, m(h, function (a) { + r(a) + })) : + (a.clearTimeout(d.readyTimeout), d.readyTimeout = a.setTimeout(p, 50)) + } + + function c() { + b.addEventListener ? (b.removeEventListener("DOMContentLoaded", c, !1), p()) : "complete" === b.readyState && (b.detachEvent("onreadystatechange", c), p()) + } + + var b = a.document, h = [], v = [], x = {}, i = {}, A = "async"in b.createElement("script") || "MozAppearance"in b.documentElement.style || a.opera, l, u, B = a.head_conf && a.head_conf.head || "head", d = a[B] = a[B] || function () { + d.ready.apply(null, arguments) + }, C = 1, D = 3, y = 4; + d.load = A ? function () { + var a = arguments, b = a[a.length - + 1], e = {}; + s(b) || (b = null); + m(a, function (c, d) { + c !== b && (c = n(c), e[c.name] = c, t(c, b && d === a.length - 2 ? function () { + g(e) && r(b) + } : null)) + }); + return d + } : function () { + var a = arguments, b = [].slice.call(a, 1), c = b[0]; + if (!l)return v.push(function () { + d.load.apply(null, a) + }), d; + c ? (m(b, function (a) { + if (!s(a)) { + var b = n(a); + b.state === w && (b.state = C, b.onpreload = [], q({url:b.url, type:"cache"}, function () { + b.state = 2; + m(b.onpreload, function (a) { + a.call() + }) + })) + } + }), t(n(a[0]), s(c) ? c : function () { + d.load.apply(null, b) + })) : t(n(a[0])); + return d + }; + d.js = d.load; + d.test = + function (a, b, c, g) { + a = "object" === typeof a ? a : {test:a, success:b ? k("Array", b) ? b : [b] : !1, failure:c ? k("Array", c) ? c : [c] : !1, callback:g || f}; + (b = !!a.test) && a.success ? (a.success.push(a.callback), d.load.apply(null, a.success)) : !b && a.failure ? (a.failure.push(a.callback), d.load.apply(null, a.failure)) : g(); + return d + }; + d.ready = function (a, c) { + if (a === b)return u ? r(c) : h.push(c), d; + s(a) && (c = a, a = "ALL"); + if ("string" !== typeof a || !s(c))return d; + var e = i[a]; + if (e && e.state === y || "ALL" === a && g() && u)return r(c), d; + (e = x[a]) ? e.push(c) : x[a] = [c]; + return d + }; + d.ready(b, function () { + g() && m(x.ALL, function (a) { + r(a) + }); + d.feature && d.feature("domloaded", !0) + }); + if ("complete" === b.readyState)p(); else if (b.addEventListener)b.addEventListener("DOMContentLoaded", c, !1), a.addEventListener("load", p, !1); else { + b.attachEvent("onreadystatechange", c); + a.attachEvent("onload", p); + var z = !1; + try { + z = null == a.frameElement && b.documentElement + } catch (F) { + } + z && z.doScroll && function E() { + if (!u) { + try { + z.doScroll("left") + } catch (b) { + a.clearTimeout(d.readyTimeout); + d.readyTimeout = a.setTimeout(E, 50); + return + } + p() + } + }() + } + setTimeout(function () { + l = !0; + m(v, function (a) { + a() + }) + }, 300) +})(window); diff --git a/app/design/frontend/magento_plushe/js/jquery.dropdowns.js b/app/design/frontend/magento_plushe/js/jquery.dropdowns.js new file mode 100644 index 0000000000000..836843ec0b705 --- /dev/null +++ b/app/design/frontend/magento_plushe/js/jquery.dropdowns.js @@ -0,0 +1,108 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @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) + */ +;(function($, document) { + 'use strict'; + + $.fn.dropdown = function(options) { + var defaults = { + parent: null, + autoclose: true, + btnArrow: '.arrow', + menu: '[data-target="dropdown"]', + activeClass: 'active' + }; + + var options = $.extend(defaults, options); + var actionElem = $(this), + self = this; + + this.openDropdown = function(elem) { + elem + .addClass(options.activeClass) + .parent() + .addClass(options.activeClass); + + $(options.btnArrow, elem).text('▲'); + }; + + this.closeDropdown = function(elem) { + elem + .removeClass(options.activeClass) + .parent() + .removeClass(options.activeClass); + + $(options.btnArrow, elem).text('▼'); + }; + + /* Reset all dropdowns */ + this.reset = function(params) { + var params = params || {}, + dropdowns = params.elems || actionElem; + + dropdowns.each(function(index, elem) { + self.closeDropdown($(elem)); + }); + }; + + /* document Event bindings */ + if(options.autoclose === true) { + $(document).on('click.hideDropdown', this.reset); + $(document).on('keyup.hideDropdown', function(e) { + var ESC_CODE = '27'; + + if (e.keyCode == ESC_CODE) { + self.reset(); + } + }); + }; + + if (options.events) { + $.each(options.events, function(index, event) { + $(document).on(event.name, event.selector, event.action); + }); + } + + return this.each(function() { + var elem = $(this), + parent = $(options.parent) || elem.parent(), + menu = $(options.menu, parent) || $('.dropdown-menu', parent); + + elem.on('click.toggleDropdown', function() { + if(options.autoclose === true) { + self.reset({elems: actionElem.not(elem)}); + }; + self[elem.hasClass('active') ? 'closeDropdown' : 'openDropdown'](elem); + + return false; + }); + + menu.on('click.preventMenuClosing', function(e) { + e.stopPropagation(); + }); + }); + }; + + $(document).ready(function() { + $('[data-toggle="dropdown"]').dropdown(); + }); +})(window.jQuery, document); \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/js/matchMedia.js b/app/design/frontend/magento_plushe/js/matchMedia.js new file mode 100644 index 0000000000000..68ee4e2b813df --- /dev/null +++ b/app/design/frontend/magento_plushe/js/matchMedia.js @@ -0,0 +1,162 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @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) + */ +/*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas. Dual MIT/BSD license */ + +window.matchMedia = window.matchMedia || (function( doc, undefined ) { + + "use strict"; + + var bool, + docElem = doc.documentElement, + refNode = docElem.firstElementChild || docElem.firstChild, + // fakeBody required for + fakeBody = doc.createElement( "body" ), + div = doc.createElement( "div" ); + + div.id = "mq-test-1"; + div.style.cssText = "position:absolute;top:-100em"; + fakeBody.style.background = "none"; + fakeBody.appendChild(div); + + return function(q){ + + div.innerHTML = "­"; + + docElem.insertBefore( fakeBody, refNode ); + bool = div.offsetWidth === 42; + docElem.removeChild( fakeBody ); + + return { + matches: bool, + media: q + }; + + }; + +}( document )); + +/*! matchMedia() polyfill addListener/removeListener extension. Author & copyright (c) 2012: Scott Jehl. Dual MIT/BSD license */ +(function(){ + // monkeypatch unsupported addListener/removeListener with polling + if( !window.matchMedia( "" ).addListener ){ + var oldMM = window.matchMedia; + + window.matchMedia = function( q ){ + var ret = oldMM( q ), + listeners = [], + last = false, + timer, + check = function(){ + var list = oldMM( q ), + unmatchToMatch = list.matches && !last, + matchToUnmatch = !list.matches && last; + + //fire callbacks only if transitioning to or from matched state + if( unmatchToMatch || matchToUnmatch ){ + for( var i =0, il = listeners.length; i< il; i++ ){ + listeners[ i ].call( ret, list ); + } + } + last = list.matches; + }; + + ret.addListener = function( cb ){ + listeners.push( cb ); + if( !timer ){ + timer = setInterval( check, 1000 ); + } + }; + + ret.removeListener = function( cb ){ + for( var i =0, il = listeners.length; i< il; i++ ){ + if( listeners[ i ] === cb ){ + listeners.splice( i, 1 ); + } + } + if( !listeners.length && timer ){ + clearInterval( timer ); + } + }; + + return ret; + }; + } +}()); + +var mediaCheck = function( options ) { + var mq, + matchMedia = (window.matchMedia !== undefined & window.matchMedia('').addListener !== undefined); + + mqChange = function( mq, options ) { + if ( mq.matches ) { + if ( typeof options.entry === "function" ) { + options.entry(); + } + } else if ( typeof options.exit === "function" ) { + options.exit(); + } + }; + + if ( matchMedia ) { + // Has matchMedia support + createListener = function() { + + mq = window.matchMedia( options.media ); + mq.addListener( function() { + mqChange( mq, options ); + }); + mqChange( mq, options ); + }; + createListener(); + + } else { + // capture the current pageWidth + var pageWidth = window.outerWidth; + + // No matchMedia support + var mmListener = function() { + var parts = options.media.match( /\((.*)-.*:\s*(.*)\)/ ), + constraint = parts[ 1 ], + value = parseInt( parts[ 2 ], 10 ), + fakeMatchMedia = {}; + + // scope this to width changes to prevent small-screen scrolling (browser chrome off-screen) + // from triggering a change + if (pageWidth != window.outerWidth) { + fakeMatchMedia.matches = constraint === "max" && value > window.outerWidth || + constraint === "min" && value < window.outerWidth; + mqChange( fakeMatchMedia, options ); + + // reset pageWidth + pageWidth = window.outerWidth; + } + }; + + if (window.addEventListener) { + window.addEventListener("resize", mmListener); + } else if (window.attachEvent) { + window.attachEvent("resize", mmListener); + } + mmListener(); + } +}; diff --git a/app/design/frontend/magento_plushe/js/navigation-menu.js b/app/design/frontend/magento_plushe/js/navigation-menu.js new file mode 100644 index 0000000000000..a91566ec9ce03 --- /dev/null +++ b/app/design/frontend/magento_plushe/js/navigation-menu.js @@ -0,0 +1,459 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @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) + */ +/*jshint jquery:true*/ + +(function($) { + 'use strict'; + + $.widget('mage.navigationMenu', { + options: { + itemsContainer: '> ul', + topLevel: 'li.level0', + topLevelSubmenu: '> .submenu', + topLevelHoverClass: 'hover', + expandedTopLevel: '.more', + hoverInTimeout: 300, + hoverOutTimeout: 2000, + submenuAnimationSpeed: 200, + collapsable: true, + collapsableDropdownTemplate: + '' + }, + + _create: function() { + this.itemsContainer = $(this.options.itemsContainer, this.element); + this.topLevel = $(this.options.topLevel, this.element); + this.topLevelSubmenu = $(this.options.topLevelSubmenu, this.topLevel); + + this._bind(); + }, + + _init: function() { + if (this.options.collapsable) { + setTimeout($.proxy(function() { + this._checkToCollapseOrExpand(); + }, this), 100); + } + }, + + _bind: function() { + this._on({ + 'mouseenter > ul > li.level0': function(e) { + if (!this.entered) { // fix IE bug with 'mouseenter' event + this.timeoutId && clearTimeout(this.timeoutId); + this.timeoutId = setTimeout($.proxy(function() { + this._openSubmenu(e); + }, this), this.options.hoverInTimeout); + this.entered = true; + } + }, + 'mouseleave > ul > li.level0': function(e) { + this.entered = null; + + this.timeoutId && clearTimeout(this.timeoutId); + this.timeoutId = setTimeout($.proxy(function() { + this._closeSubmenu(e.currentTarget); + }, this), this.options.hoverOutTimeout); + }, + 'click': function(e) { + e.stopPropagation(); + } + }); + + $(document) + .on('click.hideMenu', $.proxy(function(e) { + var isOpened = this.topLevel.filter(function() { + return $(this).data('opened'); + }); + + if (isOpened) { + this._closeSubmenu(null, false); + } + }, this)); + + $(window) + .on('resize', $.proxy(function() { + this.timeoutOnResize && clearTimeout(this.timeoutOnResize); + this.timeoutOnResize = setTimeout($.proxy(function() { + if (this.options.collapsable) { + if ($(this.options.expandedTopLevel, this.element).length) { + this._expandMenu(); + } + this._checkToCollapseOrExpand(); + } + }, this), 300); + }, this)); + }, + + _openSubmenu: function(e) { + var menuItem = e.currentTarget; + + if (!$(menuItem).data('opened')) { + this._closeSubmenu(menuItem, true, true); + + $(this.options.topLevelSubmenu, menuItem) + .slideDown(this.options.submenuAnimationSpeed, $.proxy(function() { + $(menuItem).addClass(this.options.topLevelHoverClass); + $(menuItem).data('opened', true); + }, this)); + } else if ($(e.target).closest(this.options.topLevel)) { + $(e.target) + .addClass(this.options.topLevelHoverClass) + .siblings(this.options.topLevel) + .removeClass(this.options.topLevelHoverClass); + } + }, + + _closeSubmenu: function(menuItem, excludeCurrent, fast) { + var topLevel = $(this.options.topLevel, this.element), + activeSubmenu = $(this.options.topLevelSubmenu, menuItem || null); + + $(this.options.topLevelSubmenu, topLevel) + .filter(function() { + return excludeCurrent ? $(this).not(activeSubmenu) : true; + }) + .slideUp(fast ? 0 : this.options.submenuAnimationSpeed); + + topLevel + .removeClass(this.options.topLevelHoverClass) + .data('opened', false); + }, + + _checkToCollapseOrExpand: function() { + var navWidth = this.itemsContainer.width(), + totalWidth = 0, + startCollapseIndex = 0; + + $.each($(this.options.topLevel, this.element), function(index, item) { + totalWidth = totalWidth + $(item).outerWidth(true); + + if (totalWidth > navWidth && !startCollapseIndex) { + startCollapseIndex = index - 2; + } + }); + + this[startCollapseIndex ? '_collapseMenu' : '_expandMenu'](startCollapseIndex); + }, + + _collapseMenu: function(startCollapseIndex) { + this.elemsToCollapse = this.topLevel.filter(function(index) { + return index > startCollapseIndex; + }); + this.elemsToCollapseClone = $('
    ').append(this.elemsToCollapse.clone()).html(); + + this.collapsableDropdown = $(this.options.collapsableDropdownTemplate).tmpl({elems: this.elemsToCollapseClone}); + + this.itemsContainer + .append(this.collapsableDropdown); + + this.elemsToCollapse.detach(); + }, + + _expandMenu: function() { + if ($.browser.version != 8.0) { + this.elemsToCollapse && this.elemsToCollapse.appendTo(this.itemsContainer); + this.collapsableDropdown && this.collapsableDropdown.remove(); + } else { + setTimeout($.proxy(function() { + var moreWrapper = $('.more', this.element); + + if (moreWrapper.length > 1) { + moreWrapper.eq(moreWrapper.length - 1).remove(); + } + }, this), 1); + } + }, + + _destroy: function() { + this._expandMenu(); + } + }); + + /* + * Provides "Continium" effect for submenu + * */ + $.widget('mage.navigationMenu', $.mage.navigationMenu, { + options: { + parentLevel: '> ul > li.level0', + submenuAnimationSpeed: 150, + submenuContiniumEffect: false + }, + + _init: function() { + this._super(); + this._applySubmenuStyles(); + }, + + _applySubmenuStyles: function() { + $(this.options.topLevelSubmenu, $(this.options.topLevel, this.element)) + .removeAttr('style'); + + $(this.options.topLevelSubmenu, $(this.options.parentLevel, this.element)) + .css({ + display: 'block', + height: 0, + overflow: 'hidden' + }); + }, + + _openSubmenu: function(e) { + var menuItem = e.currentTarget, + submenu = $(this.options.topLevelSubmenu, menuItem), + openedItems = $(this.options.topLevel, this.element).filter(function() { + return $(this).data('opened'); + }); + + if (submenu.length) { + this.heightToAnimate = $(this.options.itemsContainer, submenu).outerHeight(true); + + if (openedItems.length) { + this._closeSubmenu(menuItem, true, this.heightToAnimate, $.proxy(function() { + submenu.css({ + height: 'auto' + }); + $(menuItem) + .addClass(this.options.topLevelHoverClass); + }, this), e); + } else { + submenu.animate({ + height: this.heightToAnimate + }, this.options.submenuAnimationSpeed, $.proxy(function() { + $(menuItem) + .addClass(this.options.topLevelHoverClass); + }, this)); + } + $(menuItem) + .data('opened', true); + } else { + this._closeSubmenu(menuItem); + } + }, + + _closeSubmenu: function(menuItem, excludeCurrent, heightToAnimate, callback, e) { + var topLevel = $(this.options.topLevel, this.itemsContainer), + expandedTopLevel = e && $(e.target).closest(this.options.expandedTopLevel); + + if (!excludeCurrent) { + $(this.options.topLevelSubmenu, $(this.options.parentLevel, this.element)) + .animate({ + height: 0 + }); + + topLevel + .data('opened', false) + .removeClass(this.options.topLevelHoverClass); + } else { + var prevOpenedItem = topLevel.filter(function() { + return $(this).data('opened'); + }), + prevOpenedSubmenu = $(this.options.topLevelSubmenu, prevOpenedItem); + + prevOpenedSubmenu.animate({ + height: heightToAnimate + }, this.options.submenuAnimationSpeed, 'linear', function() { + $(this).css({ + height: 0 + }); + callback && callback(); + }); + + prevOpenedItem + .data('opened', false) + .removeClass(this.options.topLevelHoverClass); + } + }, + + _collapseMenu: function() { + this._superApply(arguments); + this._applySubmenuStyles(); + } + }); + + // Responsive menu + $.widget('mage.navigationMenu', $.mage.navigationMenu, { + options: { + responsive: false, + origNavPlaceholder: '.header', + mainContainer: 'body', + pageWrapper: '.page.wrapper', + openedMenuClass: 'opened', + toggleActionPlaceholder: '.block.search', + itemWithSubmenu: 'li.parent', + titleWithSubmenu: 'li.parent > a', + submenu: 'li.parent > .submenu', + toggleActionTemplate: + '', + submenuActionsTemplate: + '' + }, + + _init: function() { + this._super(); + + this.mainContainer = $(this.options.mainContainer); + this.pageWrapper = $(this.options.pageWrapper); + this.toggleAction = $(this.options.toggleActionTemplate).tmpl({}); + + if (this.options.responsive) { + mediaCheck({ + media: '(max-width: 640px)', + entry: $.proxy(function() { + this._toggleMobileMode(); + }, this), + exit: $.proxy(function() { + this._toggleDesktopMode(); + }, this) + }); + } + }, + + _bind: function() { + this._super(); + this._bindDocumentEvents(); + }, + + _bindDocumentEvents: function() { + if (!this.eventsBound) { + $(document) + .on('click.toggleMenu', '.action.toggle.nav', $.proxy(function(e) { + if ($(this.element).data('opened')) { + this._hideMenu(); + } else { + this._showMenu(); + } + e.stopPropagation(); + }, this)) + .on('click.hideMenu', this.options.pageWrapper, $.proxy(function() { + if ($(this.element).data('opened')) { + this._hideMenu(); + } + }, this)) + .on('click.showSubmenu', this.options.titleWithSubmenu, $.proxy(function(e) { + this._showSubmenu(e); + + e.preventDefault(); + }, this)) + .on('click.hideSubmenu', '.action.back', $.proxy(function(e) { + this._hideSubmenu(e); + }, this)); + + this.eventsBound = true; + } + }, + + _showMenu: function() { + $(this.element).data('opened', true); + this.mainContainer.addClass(this.options.openedMenuClass); + }, + + _hideMenu: function() { + $(this.element).data('opened', false); + this.mainContainer.removeClass(this.options.openedMenuClass); + }, + + _showSubmenu: function(e) { + var submenu = $(e.currentTarget).siblings('.submenu'); + + submenu + .addClass('opened') + .closest('.navigation > ul') + .css({ + height: submenu.outerHeight(true) + }); + }, + + _hideSubmenu: function(e) { + var submenuSelector = '.submenu', + submenu = $(e.currentTarget).closest(submenuSelector); + + submenu.removeClass('opened'); + + if (!$('.submenu.opened').length) { + submenu + .closest('.navigation > ul') + .removeAttr('style'); + } + }, + + _renderSubmenuActions: function() { + $.each($(this.options.itemWithSubmenu), $.proxy(function(index, item) { + var actions = $(this.options.submenuActionsTemplate).tmpl({ + category: $('> a > span', item).text(), + categoryURL: $('> a', item).attr('href') + }), + submenu = $('> .submenu', item), + items = $('> ul', submenu); + + items.prepend(actions); + + submenu + .css({ + height: $(window).outerHeight(true) - 1 + }); + }, this)); + }, + + _toggleMobileMode: function() { + this._expandMenu(); + + $(this.options.topLevelSubmenu, $(this.options.topLevel, this.element)) + .removeAttr('style'); + + this.toggleAction.insertBefore(this.options.toggleActionPlaceholder); + this.mobileNav = $(this.element).detach().clone(); + this.mainContainer.prepend(this.mobileNav); + + this._renderSubmenuActions(); + this._bindDocumentEvents(); + }, + + _toggleDesktopMode: function() { + this.mobileNav && this.mobileNav.remove(); + this.toggleAction.detach(); + $(this.element).insertAfter(this.options.origNavPlaceholder); + + $(document) + .off('click.toggleMenu', '.action.toggle.nav') + .off('click.hideMenu', this.options.pageWrapper) + .off('click.showSubmenu', this.options.titleWithSubmenu) + .off('click.hideSubmenu', '.action.back'); + + this.eventsBound = false; + } + }); +})(window.jQuery); \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/js/selectivizr.js b/app/design/frontend/magento_plushe/js/selectivizr.js new file mode 100644 index 0000000000000..bd96e782eaaea --- /dev/null +++ b/app/design/frontend/magento_plushe/js/selectivizr.js @@ -0,0 +1,567 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @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) + */ +/* +selectivizr v1.0.2 - (c) Keith Clark, freely distributable under the terms +of the MIT license. + +selectivizr.com +*/ +/* + +Notes about this source +----------------------- + + * The #DEBUG_START and #DEBUG_END comments are used to mark blocks of code + that will be removed prior to building a final release version (using a + pre-compression script) + + +References: +----------- + + * CSS Syntax : http://www.w3.org/TR/2003/WD-css3-syntax-20030813/#style + * Selectors : http://www.w3.org/TR/css3-selectors/#selectors + * IE Compatability : http://msdn.microsoft.com/en-us/library/cc351024(VS.85).aspx + * W3C Selector Tests : http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/ + +*/ + +(function(win) { + + // If browser isn't IE, then stop execution! This handles the script + // being loaded by non IE browsers because the developer didn't use + // conditional comments. + if (/*@cc_on!@*/true) return; + + // =========================== Init Objects ============================ + + var doc = document; + var root = doc.documentElement; + var xhr = getXHRObject(); + var ieVersion = /MSIE (\d+)/.exec(navigator.userAgent)[1]; + + // If were not in standards mode, IE is too old / new or we can't create + // an XMLHttpRequest object then we should get out now. + if (doc.compatMode != 'CSS1Compat' || ieVersion<6 || ieVersion>8 || !xhr) { + return; + } + + + // ========================= Common Objects ============================ + + // Compatiable selector engines in order of CSS3 support. Note: '*' is + // a placholder for the object key name. (basically, crude compression) + var selectorEngines = { + "NW" : "*.Dom.select", + "MooTools" : "$$", + "DOMAssistant" : "*.$", + "Prototype" : "$$", + "YAHOO" : "*.util.Selector.query", + "Sizzle" : "*", + "jQuery" : "*", + "dojo" : "*.query" + }; + + var selectorMethod; + var enabledWatchers = []; // array of :enabled/:disabled elements to poll + var ie6PatchID = 0; // used to solve ie6's multiple class bug + var patchIE6MultipleClasses = true; // if true adds class bloat to ie6 + var namespace = "slvzr"; + + // Stylesheet parsing regexp's + var RE_COMMENT = /(\/\*[^*]*\*+([^\/][^*]*\*+)*\/)\s*/g; + var RE_IMPORT = /@import\s*(?:(?:(?:url\(\s*(['"]?)(.*)\1)\s*\))|(?:(['"])(.*)\3))[^;]*;/g; + var RE_ASSET_URL = /\burl\(\s*(["']?)(?!data:)([^"')]+)\1\s*\)/g; + var RE_PSEUDO_STRUCTURAL = /^:(empty|(first|last|only|nth(-last)?)-(child|of-type))$/; + var RE_PSEUDO_ELEMENTS = /:(:first-(?:line|letter))/g; + var RE_SELECTOR_GROUP = /(^|})\s*([^\{]*?[\[:][^{]+)/g; + var RE_SELECTOR_PARSE = /([ +~>])|(:[a-z-]+(?:\(.*?\)+)?)|(\[.*?\])/g; + var RE_LIBRARY_INCOMPATIBLE_PSEUDOS = /(:not\()?:(enabled|disabled|focus|checked|target|active|visited|first-line|first-letter)\)?/g; + var RE_PATCH_CLASS_NAME_REPLACE = /[^\w-]/g; + + // HTML UI element regexp's + var RE_INPUT_ELEMENTS = /^(INPUT|SELECT|TEXTAREA|BUTTON)$/; + var RE_INPUT_CHECKABLE_TYPES = /^(checkbox|radio)$/; + + // Broken attribute selector implementations (IE7/8 native [^=""], [$=""] and [*=""]) + var BROKEN_ATTR_IMPLEMENTATIONS = ieVersion>6 ? /[\$\^*]=(['"])\1/ : null; + + // Whitespace normalization regexp's + var RE_TIDY_TRAILING_WHITESPACE = /([(\[+~])\s+/g; + var RE_TIDY_LEADING_WHITESPACE = /\s+([)\]+~])/g; + var RE_TIDY_CONSECUTIVE_WHITESPACE = /\s+/g; + var RE_TIDY_TRIM_WHITESPACE = /^\s*((?:[\S\s]*\S)?)\s*$/; + + // String constants + var EMPTY_STRING = ""; + var SPACE_STRING = " "; + var PLACEHOLDER_STRING = "$1"; + + // =========================== Patching ================================ + + // --[ patchStyleSheet() ]---------------------------------------------- + // Scans the passed cssText for selectors that require emulation and + // creates one or more patches for each matched selector. + function patchStyleSheet( cssText ) { + return cssText.replace(RE_PSEUDO_ELEMENTS, PLACEHOLDER_STRING). + replace(RE_SELECTOR_GROUP, function(m, prefix, selectorText) { + var selectorGroups = selectorText.split(","); + for (var c = 0, cs = selectorGroups.length; c < cs; c++) { + var selector = normalizeSelectorWhitespace(selectorGroups[c]) + SPACE_STRING; + var patches = []; + selectorGroups[c] = selector.replace(RE_SELECTOR_PARSE, + function(match, combinator, pseudo, attribute, index) { + if (combinator) { + if (patches.length>0) { + applyPatches( selector.substring(0, index), patches ); + patches = []; + } + return combinator; + } + else { + var patch = (pseudo) ? patchPseudoClass( pseudo ) : patchAttribute( attribute ); + if (patch) { + patches.push(patch); + return "." + patch.className; + } + return match; + } + } + ); + } + return prefix + selectorGroups.join(","); + }); + }; + + // --[ patchAttribute() ]----------------------------------------------- + // returns a patch for an attribute selector. + function patchAttribute( attr ) { + return (!BROKEN_ATTR_IMPLEMENTATIONS || BROKEN_ATTR_IMPLEMENTATIONS.test(attr)) ? + { className: createClassName(attr), applyClass: true } : null; + }; + + // --[ patchPseudoClass() ]--------------------------------------------- + // returns a patch for a pseudo-class + function patchPseudoClass( pseudo ) { + + var applyClass = true; + var className = createClassName(pseudo.slice(1)); + var isNegated = pseudo.substring(0, 5) == ":not("; + var activateEventName; + var deactivateEventName; + + // if negated, remove :not() + if (isNegated) { + pseudo = pseudo.slice(5, -1); + } + + // bracket contents are irrelevant - remove them + var bracketIndex = pseudo.indexOf("(") + if (bracketIndex > -1) { + pseudo = pseudo.substring(0, bracketIndex); + } + + // check we're still dealing with a pseudo-class + if (pseudo.charAt(0) == ":") { + switch (pseudo.slice(1)) { + + case "root": + applyClass = function(e) { + return isNegated ? e != root : e == root; + } + break; + + case "target": + // :target is only supported in IE8 + if (ieVersion == 8) { + applyClass = function(e) { + var handler = function() { + var hash = location.hash; + var hashID = hash.slice(1); + return isNegated ? (hash == EMPTY_STRING || e.id != hashID) : (hash != EMPTY_STRING && e.id == hashID); + }; + addEvent( win, "hashchange", function() { + toggleElementClass(e, className, handler()); + }) + return handler(); + } + break; + } + return false; + + case "checked": + applyClass = function(e) { + if (RE_INPUT_CHECKABLE_TYPES.test(e.type)) { + addEvent( e, "propertychange", function() { + if (event.propertyName == "checked") { + toggleElementClass( e, className, e.checked !== isNegated ); + } + }) + } + return e.checked !== isNegated; + } + break; + + case "disabled": + isNegated = !isNegated; + + case "enabled": + applyClass = function(e) { + if (RE_INPUT_ELEMENTS.test(e.tagName)) { + addEvent( e, "propertychange", function() { + if (event.propertyName == "$disabled") { + toggleElementClass( e, className, e.$disabled === isNegated ); + } + }); + enabledWatchers.push(e); + e.$disabled = e.disabled; + return e.disabled === isNegated; + } + return pseudo == ":enabled" ? isNegated : !isNegated; + } + break; + + case "focus": + activateEventName = "focus"; + deactivateEventName = "blur"; + + // everything else + default: + // If we don't support this pseudo-class don't create + // a patch for it + if (!RE_PSEUDO_STRUCTURAL.test(pseudo)) { + return false; + } + break; + } + } + return { className: className, applyClass: applyClass }; + }; + + // --[ applyPatches() ]------------------------------------------------- + // uses the passed selector text to find DOM nodes and patch them + function applyPatches(selectorText, patches) { + var elms; + + // Although some selector libraries can find :checked :enabled etc. + // we need to find all elements that could have that state because + // it can be changed by the user. + var domSelectorText = selectorText.replace(RE_LIBRARY_INCOMPATIBLE_PSEUDOS, EMPTY_STRING); + + // If the dom selector equates to an empty string or ends with + // whitespace then we need to append a universal selector (*) to it. + if (domSelectorText == EMPTY_STRING || domSelectorText.charAt(domSelectorText.length - 1) == SPACE_STRING) { + domSelectorText += "*"; + } + + // Ensure we catch errors from the selector library + try { + elms = selectorMethod( domSelectorText ); + } catch (ex) { + // #DEBUG_START + log( "Selector '" + selectorText + "' threw exception '" + ex + "'" ); + // #DEBUG_END + } + + + if (elms) { + for (var d = 0, dl = elms.length; d < dl; d++) { + var elm = elms[d]; + var cssClasses = elm.className; + for (var f = 0, fl = patches.length; f < fl; f++) { + var patch = patches[f]; + + if (!hasPatch(elm, patch)) { + if (patch.applyClass && (patch.applyClass === true || patch.applyClass(elm) === true)) { + cssClasses = toggleClass(cssClasses, patch.className, true ); + } + } + } + elm.className = cssClasses; + } + } + }; + + // --[ hasPatch() ]----------------------------------------------------- + // checks for the exsistence of a patch on an element + function hasPatch( elm, patch ) { + return new RegExp("(^|\\s)" + patch.className + "(\\s|$)").test(elm.className); + }; + + + // =========================== Utility ================================= + + function createClassName( className ) { + return namespace + "-" + ((ieVersion == 6 && patchIE6MultipleClasses) ? + ie6PatchID++ + : + className.replace(RE_PATCH_CLASS_NAME_REPLACE, function(a) { return a.charCodeAt(0) })); + }; + + // --[ log() ]---------------------------------------------------------- + // #DEBUG_START + function log( message ) { + if (win.console) { + win.console.log(message); + } + }; + // #DEBUG_END + + // --[ trim() ]--------------------------------------------------------- + // removes leading, trailing whitespace from a string + function trim( text ) { + return text.replace(RE_TIDY_TRIM_WHITESPACE, PLACEHOLDER_STRING); + }; + + // --[ normalizeWhitespace() ]------------------------------------------ + // removes leading, trailing and consecutive whitespace from a string + function normalizeWhitespace( text ) { + return trim(text).replace(RE_TIDY_CONSECUTIVE_WHITESPACE, SPACE_STRING); + }; + + // --[ normalizeSelectorWhitespace() ]---------------------------------- + // tidies whitespace around selector brackets and combinators + function normalizeSelectorWhitespace( selectorText ) { + return normalizeWhitespace(selectorText. + replace(RE_TIDY_TRAILING_WHITESPACE, PLACEHOLDER_STRING). + replace(RE_TIDY_LEADING_WHITESPACE, PLACEHOLDER_STRING) + ); + }; + + // --[ toggleElementClass() ]------------------------------------------- + // toggles a single className on an element + function toggleElementClass( elm, className, on ) { + var oldClassName = elm.className; + var newClassName = toggleClass(oldClassName, className, on); + if (newClassName != oldClassName) { + elm.className = newClassName; + elm.parentNode.className += EMPTY_STRING; + } + }; + + // --[ toggleClass() ]-------------------------------------------------- + // adds / removes a className from a string of classNames. Used to + // manage multiple class changes without forcing a DOM redraw + function toggleClass( classList, className, on ) { + var re = RegExp("(^|\\s)" + className + "(\\s|$)"); + var classExists = re.test(classList); + if (on) { + return classExists ? classList : classList + SPACE_STRING + className; + } else { + return classExists ? trim(classList.replace(re, PLACEHOLDER_STRING)) : classList; + } + }; + + // --[ addEvent() ]----------------------------------------------------- + function addEvent(elm, eventName, eventHandler) { + elm.attachEvent("on" + eventName, eventHandler); + }; + + // --[ getXHRObject() ]------------------------------------------------- + function getXHRObject() + { + if (win.XMLHttpRequest) { + return new XMLHttpRequest; + } + try { + return new ActiveXObject('Microsoft.XMLHTTP'); + } catch(e) { + return null; + } + }; + + // --[ loadStyleSheet() ]----------------------------------------------- + function loadStyleSheet( url ) { + xhr.open("GET", url, false); + xhr.send(); + return (xhr.status==200) ? xhr.responseText : EMPTY_STRING; + }; + + // --[ resolveUrl() ]--------------------------------------------------- + // Converts a URL fragment to a fully qualified URL using the specified + // context URL. Returns null if same-origin policy is broken + function resolveUrl( url, contextUrl ) { + + function getProtocolAndHost( url ) { + return url.substring(0, url.indexOf("/", 8)); + }; + + // absolute path + if (/^https?:\/\//i.test(url)) { + return getProtocolAndHost(contextUrl) == getProtocolAndHost(url) ? url : null; + } + + // root-relative path + if (url.charAt(0)=="/") { + return getProtocolAndHost(contextUrl) + url; + } + + // relative path + var contextUrlPath = contextUrl.split(/[?#]/)[0]; // ignore query string in the contextUrl + if (url.charAt(0) != "?" && contextUrlPath.charAt(contextUrlPath.length - 1) != "/") { + contextUrlPath = contextUrlPath.substring(0, contextUrlPath.lastIndexOf("/") + 1); + } + + return contextUrlPath + url; + }; + + // --[ parseStyleSheet() ]---------------------------------------------- + // Downloads the stylesheet specified by the URL, removes it's comments + // and recursivly replaces @import rules with their contents, ultimately + // returning the full cssText. + function parseStyleSheet( url ) { + if (url) { + return loadStyleSheet(url).replace(RE_COMMENT, EMPTY_STRING). + replace(RE_IMPORT, function( match, quoteChar, importUrl, quoteChar2, importUrl2 ) { + return parseStyleSheet(resolveUrl(importUrl || importUrl2, url)); + }). + replace(RE_ASSET_URL, function( match, quoteChar, assetUrl ) { + quoteChar = quoteChar || EMPTY_STRING; + return " url(" + quoteChar + resolveUrl(assetUrl, url) + quoteChar + ") "; + }); + } + return EMPTY_STRING; + }; + + // --[ init() ]--------------------------------------------------------- + function init() { + // honour the tag + var url, stylesheet; + var baseTags = doc.getElementsByTagName("BASE"); + var baseUrl = (baseTags.length > 0) ? baseTags[0].href : doc.location.href; + + /* Note: This code prevents IE from freezing / crashing when using + @font-face .eot files but it modifies the tag and could + trigger the IE stylesheet limit. It will also cause FOUC issues. + If you choose to use it, make sure you comment out the for loop + directly below this comment. + + var head = doc.getElementsByTagName("head")[0]; + for (var c=doc.styleSheets.length-1; c>=0; c--) { + stylesheet = doc.styleSheets[c] + head.appendChild(doc.createElement("style")) + var patchedStylesheet = doc.styleSheets[doc.styleSheets.length-1]; + + if (stylesheet.href != EMPTY_STRING) { + url = resolveUrl(stylesheet.href, baseUrl) + if (url) { + patchedStylesheet.cssText = patchStyleSheet( parseStyleSheet( url ) ) + stylesheet.disabled = true + setTimeout( function () { + stylesheet.owningElement.parentNode.removeChild(stylesheet.owningElement) + }) + } + } + } + */ + + for (var c = 0; c < doc.styleSheets.length; c++) { + stylesheet = doc.styleSheets[c] + if (stylesheet.href != EMPTY_STRING) { + url = resolveUrl(stylesheet.href, baseUrl); + if (url) { + stylesheet.cssText = patchStyleSheet( parseStyleSheet( url ) ); + } + } + } + + // :enabled & :disabled polling script (since we can't hook + // onpropertychange event when an element is disabled) + if (enabledWatchers.length > 0) { + setInterval( function() { + for (var c = 0, cl = enabledWatchers.length; c < cl; c++) { + var e = enabledWatchers[c]; + if (e.disabled !== e.$disabled) { + if (e.disabled) { + e.disabled = false; + e.$disabled = true; + e.disabled = true; + } + else { + e.$disabled = e.disabled; + } + } + } + },250) + } + }; + + // Bind selectivizr to the ContentLoaded event. + ContentLoaded(win, function() { + // Determine the "best fit" selector engine + for (var engine in selectorEngines) { + var members, member, context = win; + if (win[engine]) { + members = selectorEngines[engine].replace("*", engine).split("."); + while ((member = members.shift()) && (context = context[member])) {} + if (typeof context == "function") { + selectorMethod = context; + init(); + return; + } + } + } + }); + + + /*! + * ContentLoaded.js by Diego Perini, modified for IE<9 only (to save space) + * + * Author: Diego Perini (diego.perini at gmail.com) + * Summary: cross-browser wrapper for DOMContentLoaded + * Updated: 20101020 + * License: MIT + * Version: 1.2 + * + * URL: + * http://javascript.nwbox.com/ContentLoaded/ + * http://javascript.nwbox.com/ContentLoaded/MIT-LICENSE + * + */ + + // @w window reference + // @f function reference + function ContentLoaded(win, fn) { + + var done = false, top = true, + init = function(e) { + if (e.type == "readystatechange" && doc.readyState != "complete") return; + (e.type == "load" ? win : doc).detachEvent("on" + e.type, init, false); + if (!done && (done = true)) fn.call(win, e.type || e); + }, + poll = function() { + try { root.doScroll("left"); } catch(e) { setTimeout(poll, 50); return; } + init('poll'); + }; + + if (doc.readyState == "complete") fn.call(win, EMPTY_STRING); + else { + if (doc.createEventObject && root.doScroll) { + try { top = !win.frameElement; } catch(e) { } + if (top) poll(); + } + addEvent(doc,"readystatechange", init); + addEvent(win,"load", init); + } + }; +})(this); \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/js/sticky.js b/app/design/frontend/magento_plushe/js/sticky.js new file mode 100644 index 0000000000000..df725faedaa8f --- /dev/null +++ b/app/design/frontend/magento_plushe/js/sticky.js @@ -0,0 +1,61 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category EE + * @package EE_refrence + * @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) + */ +/*jshint browser:true jquery:true*/ +(function($, window) { + $.widget('mage.sticky', { + options: { + container: '' + }, + + /** + * Bind handlers to scroll event + * @private + */ + _create: function() { + $(window).on('scroll', $.proxy(this._setTop, this)); + }, + + /** + * float Block on windowScroll + * @private + */ + _setTop: function() { + if ((this.element).is(':visible')) { + var startOffset = this.element.parent().offset().top + parseInt(this.element.css("margin-top")), + currentOffset = $(document).scrollTop(), + parentHeight = $(this.options.container).height() - parseInt(this.element.css("margin-top")), + discrepancyOffset = currentOffset - startOffset; + + if (discrepancyOffset >= 0) { + if (discrepancyOffset + this.element.innerHeight() < parentHeight) { + this.element.css('top', discrepancyOffset); + } + } else { + this.element.css('top', 0); + } + } + } + }); +})(jQuery, window); \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/js/tabs.js b/app/design/frontend/magento_plushe/js/tabs.js new file mode 100644 index 0000000000000..4ada49ab09659 --- /dev/null +++ b/app/design/frontend/magento_plushe/js/tabs.js @@ -0,0 +1,169 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @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) + */ +; +(function($) { + 'use strict'; + + $.fn.terms = function(args){ + + // default + var defaults = { + start:0, + wrapper:'', + showAnchor:'', + effects:'slide' + }; + + var options = $.extend(defaults, args); + + this.each(function() { + var obj = $(this), + wrapper = (options.wrapper !== '') ? '> ' + options.wrapper : '', + switches = $(wrapper + '> [data-section="title"] > [data-toggle="switch"]',obj), + terms = $(wrapper + '> [data-section="content"]',obj), + t = switches.length, + marginTop = $(switches[0]).closest('[data-section="title"]').css('position') == 'absolute' ? 0 : null, + title, + current, + + init = function() { + if (t > 0) { + if($(switches[0]).closest('[data-section="title"]').css('display')=='table-cell') { + obj.addClass('adjusted'); + var linksList; + if (obj[0].tagName=='DL') { + linksList = jQuery('
    '); + } else { + linksList = jQuery('
    '); + } + linksList.addClass('sections-nav'); + obj.prepend(linksList); + + for (var i=0; i < t; i++) { + title = $(switches[i]).html(); + var classes = $(switches[i]).closest('[data-section="title"]').attr('class'); + var dataSection = $(switches[i]).closest('[data-section="title"]').attr('data-section'); + var itemHref = $(switches[i]).attr('href'); + var itemClass = $(switches[i]).attr('class'); + $(switches[i]).parent('[data-section="title"]').hide(); + switches[i] = jQuery('',{ + href: itemHref, + 'class' : itemClass, + html: title + }).appendTo(linksList); + $(switches[i]).wrap(''); + } + } + $(switches).each(function(ind,el){ + $(el).click(function(event){ + event.preventDefault(); + showItem(ind); + }); + if (marginTop !== null) { + $(el).closest('[data-section="title"]').css({'top' : marginTop + 'px'}); + marginTop = marginTop + $(el).closest('[data-section="title"]').outerHeight(true); + obj.css({'min-height' : marginTop + 'px' }); + } + }); + + var fromUrl = false; + if (window.location.hash.length > 0) { + $(terms).each(function(ind,el) { + if ( '#info-'+$(el).attr('id') == window.location.hash) { + showItem(ind); + $('html, body').animate({ + scrollTop: $(switches[ind]).offset().top + }, 700); + fromUrl = true; + } + }); + } + if (fromUrl === false) { + if ( options.start % 1 === 0 ) { + current = options.start + 1; + showItem(options.start); + } else { + $(terms).each(function(ind,el) { + if ( $(el).attr('id') == options.start) { + current = ind + 1; + showItem(ind); + $('html, body').animate({ + scrollTop: $(switches[ind]).offset().top + }, 700); + } + }); + } + } + } + }, + + + showItem = function(item) { + if (item != current && !$(switches[item]).closest('[data-section="title"]').hasClass('disabled') ) { + $(switches).closest('[data-section="title"]').removeClass('active'); + if (options.wrapper !== '') { + $(switches).parent().parent().removeClass('active'); + } + $(terms).removeClass('active'); + $(switches[item]).closest('[data-section="title"]').addClass('active'); + if (options.wrapper !== '') { + $(switches[current]).parent().parent().addClass('active'); + } + $(terms[item]).addClass('active'); + + /*if ($(terms[item]).attr('id')) { + scr = document.body.scrollTop; + window.location.hash='#tab-' + $(terms[item]).attr('id'); + document.body.scrollTop = scr; + }*/ + current = item; + } else if ( + // Check if this is accordion width as criteria for now + (obj.attr('data-sections') == 'accordion' + || $(switches[item]).closest('[data-section="title"]').css('width') == obj.css('width') + ) + && item == current && !$(switches[item]).closest('[data-section="title"]').hasClass('disabled') + ) { + $(switches).closest('[data-section="title"]').removeClass('active'); + if (options.wrapper !== '') { + $(switches).parent().parent().removeClass('active'); + } + $(terms).removeClass('active'); + current = -1; + } + }, + + applyEffect = function(item, effect) { + }; + + init(); + }); + }; + $(document).ready(function() { + $('[data-sections]').terms(); + }); + +})(window.jQuery); + + + diff --git a/app/design/frontend/magento_plushe/js/theme.js b/app/design/frontend/magento_plushe/js/theme.js new file mode 100644 index 0000000000000..d4a340719e91a --- /dev/null +++ b/app/design/frontend/magento_plushe/js/theme.js @@ -0,0 +1,115 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @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) + */ + +; +(function($) { + 'use strict'; + + function listScroll() { + var list = $('[data-action="scroll"]').addClass('carousel'); + var listInner = $('> .minilist.items', list); + var items = $('.item', list); + var itemWidth = $(items[0]).outerWidth(); + var perpage = Math.floor(list.outerWidth()/itemWidth); + var pages = Math.floor(items.length/perpage); + var page=0; + for (var i=0 ; i < perpage; i++) { + $(items[i + page*perpage]).addClass('shown'); + }; + for (var i=perpage; i < items.length; i++) { + $(items[i + page*perpage]).addClass('hidden'); + }; + if ( itemWidth*items.length > list.outerWidth() ) { + var next = $(''); + var previous = $('').attr('disabled', 'disabled'); + list.append(previous); + list.append(next); + listInner.wrap('
    '); + $('.items-wrapper').css('width', itemWidth*perpage); + next.on('click.itemsScroll', function() { + list.addClass('animation'); + items.removeClass('shown'); + items.removeClass('hidden'); + listInner.animate({ + left: '-=' + itemWidth*perpage, + }, 400, 'easeInOutCubic', function() { + // Animation complete. + page = page + 1; + for (var i=0 ; i < perpage; i++) { + $(items[i + page*perpage]).addClass('shown'); + }; + for (var i=perpage; i < items.length; i++) { + $(items[i + page*perpage]).addClass('hidden'); + }; + console.log(i); + previous.removeAttr('disabled'); + if (page == pages) { + next.attr('disabled', 'disabled'); + } + list.removeClass('animation'); + }); + }); + previous.on('click.itemsScroll', function() { + list.addClass('animation'); + items.removeClass('shown'); + items.removeClass('hidden'); + listInner.animate({ + left: '+=' + itemWidth*perpage, + }, 400, 'easeInOutCubic', function() { + // Animation complete. + page = page - 1; + for (var i=0 ; i < perpage; i++) { + $(items[i + page*perpage]).addClass('shown'); + }; + for (var i=perpage; i < items.length; i++) { + $(items[i + page*perpage]).addClass('hidden'); + }; + next.removeAttr('disabled'); + if (page == 0) { + previous.attr('disabled', 'disabled'); + } + list.removeClass('animation'); + }); + }); + + } + } + + $(document).ready(function() { + listScroll(); + + if ($('body').hasClass('checkout-cart-index')) { + $('.cart.summary > .block > .title').dropdown({autoclose:false, menu:'.title + .content'}); + if ($('#co-shipping-method-form .fieldset.rates').length > 0 && $('#co-shipping-method-form .fieldset.rates :checked').length === 0 ) { + $('.block.shipping > .title').addClass('active'); + $('.block.shipping').addClass('active'); + } + } + + $('[role="navigation"]').navigationMenu({ + responsive: true, + submenuContiniumEffect: true + }); + }); + +})(window.jQuery); \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/less/clearless/all.less b/app/design/frontend/magento_plushe/less/clearless/all.less new file mode 100644 index 0000000000000..c39ad99d5e633 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/clearless/all.less @@ -0,0 +1,36 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ +// ============================================== +// Handily import all ClearLess mixins +// ============================================== + +@import "settings"; +@import "typography"; +@import "resets"; +@import "helpers"; +@import "sprites"; +@import "icons"; +@import "arrows"; +@import "grids"; \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/less/clearless/arrows.less b/app/design/frontend/magento_plushe/less/clearless/arrows.less new file mode 100644 index 0000000000000..32f074ecc8b65 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/clearless/arrows.less @@ -0,0 +1,172 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ +.arrow(@pos, @size, @bg-color) { + width: 0; + height: 0; + border: @size solid transparent; + ._abbor_el( @pos, @bg-color ); +} + +.arrowbox(@pos, @size, @bg-color, @offset:50%) { + + @after-margin: @size * -1px; + + position: relative; + background: @bg-color; + + &:after, + &:before { + ._abpos(@pos); + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; + pointer-events: none; + } + + &:after { + border-color: transparent; + ._abbor_el(@pos, @bg-color); + border-width: @size; + ._abpos_el(@pos, @size, @offset); + ._abmar_el(@pos, @after-margin); + } + +} + +.arrowbox(@pos, @size, @bg-color, @border-width, @border-color, @offset:50%) { + + @before-margin: (@size + round(@border-width * 1.41421356)) * -1px; + + .arrowbox(@pos, @size, @bg-color, @offset); + + border: @border-width solid @border-color; + + &:before { + border-color: transparent; + ._abbor_el(@pos, @border-color); + border-width: @before-margin * -1; + ._abpos_el(@pos, @size, @offset); + ._abmar_el(@pos, @before-margin); + } + +} + +._abpos( @pos ) when ( @pos = left ) { + right: 100%; +} + +._abpos( @pos ) when ( @pos = right ) { + left: 100%; +} + +._abpos( @pos ) when ( @pos = up ) { + bottom: 100%; +} + +._abpos( @pos ) when ( @pos = down ) { + top: 100%; +} + +._abpos_el( @pos, @size, @offset ) when ( @offset = 0 ) and ( @pos = left ) { + top: @size; +} + +._abpos_el( @pos, @size, @offset ) when ( @offset = 0 ) and ( @pos = right ) { + top: @size; +} + +._abpos_el( @pos, @size, @offset ) when ( @offset = 0 ) and ( @pos = up ) { + left: @size; +} + +._abpos_el( @pos, @size, @offset ) when ( @offset = 0 ) and ( @pos = down ) { + left: @size; +} + +._abpos_el( @pos, @size, @offset ) when not ( @offset = 0 ) and not ( ispixel(@offset) ) and ( @pos = left ) { + top: @offset; +} + +._abpos_el( @pos, @size, @offset ) when not ( @offset = 0 ) and not ( ispixel(@offset) ) and ( @pos = right ) { + top: @offset; +} + +._abpos_el( @pos, @size, @offset ) when not ( @offset = 0 ) and not ( ispixel(@offset) ) and ( @pos = up ) { + left: @offset; +} + +._abpos_el( @pos, @size, @offset ) when not ( @offset = 0 ) and not ( ispixel(@offset) ) and ( @pos = down ) { + left: @offset; +} + +._abpos_el( @pos, @size, @offset ) when not ( @offset = 0 ) and ( ispixel(@offset) ) and ( @pos = left ) { + top: @offset + @size; +} + +._abpos_el( @pos, @size, @offset ) when not ( @offset = 0 ) and ( ispixel(@offset) ) and ( @pos = right ) { + top: @offset + @size; +} + +._abpos_el( @pos, @size, @offset ) when not ( @offset = 0 ) and ( ispixel(@offset) ) and ( @pos = up ) { + left: @offset + @size; +} + +._abpos_el( @pos, @size, @offset ) when not ( @offset = 0 ) and ( ispixel(@offset) ) and ( @pos = down ) { + left: @offset + @size; +} + +._abbor_el( @pos, @color ) when ( @pos = left ) { + border-right-color: @color; +} + +._abbor_el( @pos, @color ) when ( @pos = right ) { + border-left-color: @color; +} + +._abbor_el( @pos, @color ) when ( @pos = up ) { + border-bottom-color: @color; +} + +._abbor_el( @pos, @color ) when ( @pos = down ) { + border-top-color: @color; +} + +._abmar_el( @pos, @margin ) when ( @pos = left ) { + margin-top: @margin; +} + +._abmar_el( @pos, @margin ) when ( @pos = right ) { + margin-top: @margin; +} + +._abmar_el( @pos, @margin ) when ( @pos = up ) { + margin-left: @margin; +} + +._abmar_el( @pos, @margin ) when ( @pos = down ) { + margin-left: @margin; +} diff --git a/app/design/frontend/magento_plushe/less/clearless/grids.less b/app/design/frontend/magento_plushe/less/clearless/grids.less new file mode 100644 index 0000000000000..33fd73b9befba --- /dev/null +++ b/app/design/frontend/magento_plushe/less/clearless/grids.less @@ -0,0 +1,186 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ +// ============================================== +// Grid mixins +// ============================================== + +// You shouldn't need to touch this! Internal use only. +@column-width: 1; +@total-columns: 1; +@gutter-width: 1; +@grid-width: (@column-width*@total-columns) + (@gutter-width*(@total-columns - 1)); + +.column-wrapper() { + width: 100%; +} + +.inline-column-wrapper() when not (@using-ieclasses) { + letter-spacing: -0.31em; + *letter-spacing: normal; + word-spacing: -0.43em; +} + +.inline-column-wrapper() when (@using-ieclasses) { + letter-spacing: -0.31em; + word-spacing: -0.43em; + .ie7 & { + letter-spacing: normal; + } +} + +.column() { + float: left; + .column-gutter(); +} + +.column( @span ) when (@span = false) { + float: left; +} + +.column( @span, @total-columns:@total-columns, @end-column:false ) when (isnumber(@span)) and (isnumber(@total-columns)) and not (isnumber(@end-column)) { + @showgutter: false; + .column(@showgutter); + .span( @span, @total-columns ); +} + +.column( @span, @total-columns:@total-columns, @end-column:false ) when (isnumber(@span)) and (isnumber(@total-columns)) and (@end-column = true) { + @showgutter: false; + .column(@showgutter); + .span( @span, @total-columns ); + .end-column(); +} + +.column( @span, @end-column ) when (isnumber(@span)) and not (isnumber(@end-column)) { + @showgutter: false; + .column(@showgutter); + .span( @span ); +} + +.column( @span, @end-column ) when (isnumber(@span)) and ( @end-column = true ) { + @showgutter: false; + .column(@showgutter); + .span( @span ); + .end-column(); +} + +.inline-column() { + .inline-block(); + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; + .column-gutter(); +} + +.inline-column( @span ) when (@span = false) { + .inline-block(); + vertical-align: top; + letter-spacing: normal; + word-spacing: normal; +} + +.inline-column( @span, @total-columns:@total-columns, @end-column:false ) when (isnumber(@span)) and (isnumber(@total-columns)) { + @showgutter: false; + .inline-column(@showgutter); + .span( @span, @total-columns ); +} + +.inline-column( @span, @total-columns:@total-columns, @end-column:false ) when (isnumber(@span)) and (@end-column = true) { + @showgutter: false; + .inline-column(@showgutter); + .span( @span, @total-columns ); + .inline-end-column(); +} + +.inline-column( @span, @end-column ) when not (isnumber(@end-column)) { + @showgutter: false; + .inline-column(@showgutter); + .span( @span ); +} + +.inline-column( @span, @end-column ) when (@end-column = true) { + @showgutter: false; + .inline-column(@showgutter); + .span( @span ); + .inline-end-column(); +} + +.end-column() { + margin-right: 0; + float: right; +} + +.inline-end-column() { + margin-right: 0; +} + +.span( @span ) { + .column-width(@span, @total-columns); +} + +.span( @span, @total-columns ) when (isnumber(@total-columns)) { + .column-width(@span, @total-columns); + .column-gutter(@total-columns); +} + +.pre-pad( @span, @total-columns:@total-columns ) { + @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)) / @grid-width); + padding-left: @calc-column-width; +} + +.post-pad( @span, @total-columns:@total-columns ) { + @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)) / @grid-width); + padding-right: @calc-column-width; +} + +.pre-push( @span, @total-columns:@total-columns ) { + @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)) / @grid-width); + margin-left: @calc-column-width; +} + +.post-push( @span, @total-columns:@total-columns ) { + @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)+@gutter-width) / @grid-width); + margin-right: @calc-column-width; +} + +.post-push-end( @span, @total-columns:@total-columns ) { + @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)) / @grid-width); + margin-right: @calc-column-width; +} + +.column-width(@span, @total-columns:@total-columns) { + @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)-@gutter-width) / @grid-width); + width: @calc-column-width; +} + +.column-gutter(@total-columns:@total-columns, @end-column:false) when (@end-column) { + margin-right: 0; +} + +.column-gutter(@total-columns:@total-columns, @end-column:false) when not (@end-column) { + @calc-gutter-width: 100%*(@gutter-width/@grid-width); + margin-right: @calc-gutter-width; +} + + diff --git a/app/design/frontend/magento_plushe/less/clearless/helpers.less b/app/design/frontend/magento_plushe/less/clearless/helpers.less new file mode 100644 index 0000000000000..87bc3a2affdf4 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/clearless/helpers.less @@ -0,0 +1,248 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ +// ============================================== +// Misc helpers and shortcuts +// ============================================== + +// Shortcuts -------------------------------- + +.border-radius(@radius:5px) { + -webkit-border-radius: @arguments; + -moz-border-radius: @arguments; + border-radius: @arguments; +} + +.box-sizing(@type: border-box) { + -moz-box-sizing: @type; + -webkit-box-sizing: @type; + -ms-box-sizing: @type; + box-sizing: @type; +} + +.box-shadow(@shadow: 1px 1px 2px rgba(0,0,0,0.25)) { + -webkit-box-shadow: @shadow; + -moz-box-shadow: @shadow; + box-shadow: @shadow; +} + +.filter(@filter: grayscale(100%)) { + -webkit-filter: @filter; + -moz-filter: @filter; + -ms-filter: @filter; + -o-filter: @filter; + filter: @filter; +} + +.transition(@transition) { + -webkit-transition: @transition; + -moz-transition: @transition; + transition: @transition; +} + +.rotate(@rotation) { + -webkit-transform: rotate(@rotation); + -moz-transform: rotate(@rotation); + -o-transform: rotate(@rotation); + transform: rotate(@rotation); +} + +.placeholder(@color: #DDD) { + :-moz-placeholder { + color: @color; + } + ::-webkit-input-placeholder { + color: @color; + } +} + +#gradient { + .horizontal (@start-color, @end-color) when not (@disable-filters) { + background-color: @end-color; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, right top, from(@start-color), to(@end-color)); /* Konqueror */ + background-image: -moz-linear-gradient(left, @start-color, @end-color); /* FF 3.6+ */ + background-image: -ms-linear-gradient(left, @start-color, @end-color); /* IE10 */ + background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, @start-color), color-stop(100%, @end-color)); /* Safari 4+, Chrome 2+ */ + background-image: -webkit-linear-gradient(left, @start-color, @end-color); /* Safari 5.1+, Chrome 10+ */ + background-image: -o-linear-gradient(left, @start-color, @end-color); /* Opera 11.10 */ + background-image: -ms-linear-gradient(left, @start-color 0%, @end-color 100%); /* IE10+ */ + background-image: linear-gradient(left, @start-color, @end-color); /* the standard */ + filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@start-color,@end-color)); /* IE6 & IE7 */ + -ms-filter: %("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@start-color,@end-color); /* IE8+ */ + } + .horizontal (@start-color, @end-color) when (@disable-filters) { + background-color: @end-color; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, right top, from(@start-color), to(@end-color)); /* Konqueror */ + background-image: -moz-linear-gradient(left, @start-color, @end-color); /* FF 3.6+ */ + background-image: -ms-linear-gradient(left, @start-color, @end-color); /* IE10 */ + background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, @start-color), color-stop(100%, @end-color)); /* Safari 4+, Chrome 2+ */ + background-image: -webkit-linear-gradient(left, @start-color, @end-color); /* Safari 5.1+, Chrome 10+ */ + background-image: -o-linear-gradient(left, @start-color, @end-color); /* Opera 11.10 */ + background-image: -ms-linear-gradient(left, @start-color 0%, @end-color 100%); /* IE10+ */ + background-image: linear-gradient(left, @start-color, @end-color); /* the standard */ + } + .vertical (@start-color, @end-color) when (@disable-filters) { + background-color: @end-color; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(@start-color), to(@end-color)); /* Konqueror */ + background-image: -moz-linear-gradient(@start-color, @end-color); /* FF 3.6+ */ + background-image: -ms-linear-gradient(@start-color, @end-color); /* IE10 */ + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @start-color), color-stop(100%, @end-color)); /* Safari 4+, Chrome 2+ */ + background-image: -webkit-linear-gradient(@start-color, @end-color); /* Safari 5.1+, Chrome 10+ */ + background-image: -o-linear-gradient(@start-color, @end-color); /* Opera 11.10 */ + background-image: -ms-linear-gradient(top, @start-color 0%, @end-color 100%); /* IE10+ */ + background-image: linear-gradient(@start-color, @end-color); /* the standard */ + } + .vertical (@start-color, @end-color) when not (@disable-filters) { + background-color: @end-color; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(@start-color), to(@end-color)); /* Konqueror */ + background-image: -moz-linear-gradient(@start-color, @end-color); /* FF 3.6+ */ + background-image: -ms-linear-gradient(@start-color, @end-color); /* IE10 */ + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @start-color), color-stop(100%, @end-color)); /* Safari 4+, Chrome 2+ */ + background-image: -webkit-linear-gradient(@start-color, @end-color); /* Safari 5.1+, Chrome 10+ */ + background-image: -o-linear-gradient(@start-color, @end-color); /* Opera 11.10 */ + background-image: -ms-linear-gradient(top, @start-color 0%, @end-color 100%); /* IE10+ */ + background-image: linear-gradient(@start-color, @end-color); /* the standard */ + filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@start-color,@end-color)); /* IE6 & IE7 */ + -ms-filter: %("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@start-color,@end-color); /* IE8+ */ + } +} + +// Helpers -------------------------------- + +.clearfix() when not (@using-ieclasses) { + &:before, + &:after { + content: ""; + display: table; + } + &:after { + clear: both; + } + *zoom: 1; +} + +.clearfix() when (@using-ieclasses) { + &:before, + &:after { + content: ""; + display: table; + } + &:after { + clear: both; + } + .ie6 &, .ie7 & { + zoom: 1; + } +} + +.inline-block() when (@using-ieclasses) { + display: inline-block; + .ie7 & { + display: inline; + zoom: 1; + } +} + +.inline-block() when not (@using-ieclasses) { + display: inline-block; + *display: inline; + *zoom: 1; +} + +.ir() { + border: 0; + font: 0/0 a; + text-shadow: none; + color: transparent; + background-color: transparent; +} + +.hidden() { + display: none !important; + visibility: hidden; +} + +.visually-hidden() { + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; + &.focusable:active, + &.focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; + } +} + +.size(@thesize) { + width: @thesize; + height: @thesize; +} + +.size(@width, @height) { + width: @width; + height: @height; +} + +// System -------------------------------- + +.nudge-l( @pos ) when ( @pos = 0 ) { +} + +.nudge-l( @pos ) when not ( @pos = 0 ) { + left: @pos; +} + +.nudge-r( @pos ) when ( @pos = 0 ) { +} + +.nudge-r( @pos ) when not ( @pos = 0 ) { + right: @pos; +} + +.nudge-t( @pos ) when ( @pos = 0 ) { +} + +.nudge-t( @pos ) when not ( @pos = 0 ) { + top: @pos; +} + +.nudge-b( @pos ) when ( @pos = 0 ) { +} + +.nudge-b( @pos ) when not ( @pos = 0 ) { + bottom: @pos; +} diff --git a/app/design/frontend/magento_plushe/less/clearless/icons.less b/app/design/frontend/magento_plushe/less/clearless/icons.less new file mode 100644 index 0000000000000..e8385fb4e2cb0 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/clearless/icons.less @@ -0,0 +1,327 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ +// ============================================== +// Generated content icon helpers +// ---------------------------------------------- +// These can only be used on block or inline-block elements. +// ============================================== + +// Non-sprited icons -------------------------------- + +.prepend-icon( @icon-image, @width, @height, @nudge-left:0, @nudge-top:0, @pad:10px ) when (@using-modernizr) { + .generatedcontent & { + position: relative; + padding-left: @width + @pad; + } + .generatedcontent &:before { + ._generated-icon( @width, @height, @icon-image ); + top: @nudge-top; + left: @nudge-left; + } +} + +.prepend-icon( @icon-image, @width, @height, @nudge-left:0, @nudge-top:0, @pad:10px ) when not (@using-modernizr) { + position: relative; + padding-left: @width + @pad; + &:before { + ._generated-icon( @width, @height, @icon-image ); + top: @nudge-top; + left: @nudge-left; + } +} + +.append-icon( @icon-image, @width, @height, @nudge-right:0, @nudge-top:0, @pad:10px ) when (@using-modernizr) { + .generatedcontent & { + position: relative; + padding-right: @width + @pad; + } + .generatedcontent &:after { + ._generated-icon( @width, @height, @icon-image ); + top: @nudge-top; + right: @nudge-right; + } +} + +.append-icon( @icon-image, @width, @height, @nudge-right:0, @nudge-top:0, @pad:10px ) when not (@using-modernizr) { + position: relative; + padding-right: @width + @pad; + .generatedcontent &:after { + ._generated-icon( @width, @height, @icon-image ); + top: @nudge-top; + right: @nudge-right; + } +} + +// Sprited icons -------------------------------- + +.prepend-sprite-icon(@x, @y, @width, @height, @nudge-left:0, @nudge-top:0, @pad:10px, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) when (@using-modernizr) { + .generatedcontent & { + position: relative; + padding-left: @width + @pad; + } + .generatedcontent &:before { + ._generated-sprite-icon( @x, @y, @width, @height, @sprite-image, @sprite-grid ); + top: @nudge-top; + left: @nudge-left; + } +} + +.prepend-sprite-icon(@x, @y, @width, @height, @nudge-left:0, @nudge-top:0, @pad:10px, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) when not (@using-modernizr) { + position: relative; + padding-left: @width + @pad; + &:before { + ._generated-sprite-icon( @x, @y, @width, @height, @sprite-image, @sprite-grid ); + top: @nudge-top; + left: @nudge-left; + } +} + +.append-sprite-icon(@x, @y, @width, @height, @nudge-right:0, @nudge-top:0, @pad:10px, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) when (@using-modernizr) { + .generatedcontent & { + padding-right: @width + @pad; + position: relative; + } + .generatedcontent &:after { + ._generated-sprite-icon( @x, @y, @width, @height, @sprite-image, @sprite-grid ); + top: @nudge-top; + right: @nudge-right; + } +} + +.append-sprite-icon(@x, @y, @width, @height, @nudge-right:0, @nudge-top:0, @pad:10px, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) when not (@using-modernizr) { + position: relative; + padding-right: @width + @pad; + &:after { + ._generated-sprite-icon( @x, @y, @width, @height, @sprite-image, @sprite-grid ); + top: @nudge-top; + right: @nudge-right; + } +} + +.prepend-sprite-icon-pos(@x, @y, @nudge-left:0, @nudge-top:0, @sprite-grid:@sprite-grid) when (@using-modernizr) { + .generatedcontent &:before { + .sprite-pos(@x, @y, @sprite-grid); + .nudge-l(@nudge-left); + .nudge-t(@nudge-top); + } +} + +.prepend-sprite-icon-pos(@x, @y, @nudge-left:0, @nudge-top:0, @sprite-grid:@sprite-grid) when not (@using-modernizr) { + &:before { + .sprite-pos(@x, @y, @sprite-grid); + .nudge-l(@nudge-left); + .nudge-t(@nudge-top); + } +} + +.append-sprite-icon-pos(@x, @y, @nudge-right:0, @nudge-top:0, @sprite-grid:@sprite-grid) when (@using-modernizr) { + .generatedcontent &:after { + .sprite-pos(@x, @y, @sprite-grid); + .nudge-r(@nudge-right); + .nudge-t(@nudge-top); + } +} + +.append-sprite-icon-pos(@x, @y, @nudge-right:0, @nudge-top:0, @sprite-grid:@sprite-grid) when not (@using-modernizr) { + &:after { + .sprite-pos(@x, @y, @sprite-grid); + .nudge-r(@nudge-right); + .nudge-t(@nudge-top); + } +} + +// ---- Partials ----------------------- + +.prepend-icon-setup(@width:0, @height:0, @nudge-left:0, @nudge-top:0, @pad:10px) when (@using-modernizr) { + .generatedcontent & { + position: relative; + ._pad-left(@width, @pad); + } + .generatedcontent &:before { + position: absolute; + display: block; + content: ' '; + top: 0; + left: 0; + ._size(@width, @height); + } +} + +.prepend-icon-setup(@width:0, @height:0, @nudge-left:0, @nudge-top:0, @pad:10px) when not (@using-modernizr) { + position: relative; + ._pad-left(@width, @pad); + &:before { + position: absolute; + display: block; + content: ' '; + top: 0; + left: 0; + ._size(@width, @height); + } +} + +.append-icon-setup(@width:0, @height:0, @nudge-left:0, @nudge-top:0, @pad:10px) when (@using-modernizr) { + .generatedcontent & { + position: relative; + ._pad-right(@width, @pad); + } + .generatedcontent &:after { + position: absolute; + display: block; + content: ' '; + top: 0; + right: 0; + ._size(@width, @height); + } +} + +.append-icon-setup(@width:0, @height:0, @nudge-left:0, @nudge-top:0, @pad:10px) when not (@using-modernizr) { + position: relative; + ._pad-right(@width, @pad); + &:after { + position: absolute; + display: block; + content: ' '; + top: 0; + right: 0; + ._size(@width, @height); + } +} + +.prepend-icon-image(@icon-image, @width:0, @height:0, @nudge-left:0, @nudge-top:0, @pad:10px) when (@using-modernizr) { + ._gc-pad-left(@width, @pad); + .generatedcontent &:before { + background: url(@icon-image) no-repeat 0 0; + ._size(@width, @height); + .nudge-l(@nudge-left); + .nudge-t(@nudge-top); + } +} + +.prepend-icon-image(@icon-image, @width:0, @height:0, @nudge-left:0, @nudge-top:0, @pad:10px) when not (@using-modernizr) { + ._pad-left(@width, @pad); + &:before { + background: url(@icon-image) no-repeat 0 0; + ._size(@width, @height); + .nudge-l(@nudge-left); + .nudge-t(@nudge-top); + } +} + +.append-icon-image(@icon-image, @width:0, @height:0, @nudge-right:0, @nudge-top:0, @pad:10px) when (@using-modernizr) { + ._gc-pad-right(@width, @pad); + .generatedcontent &:after { + background: url(@icon-image) no-repeat 0 0; + ._size(@width, @height); + .nudge-r(@nudge-right); + .nudge-t(@nudge-top); + } +} + +.append-icon-image(@icon-image, @width:0, @height:0, @nudge-right:0, @nudge-top:0, @pad:10px) when not (@using-modernizr) { + ._pad-right(@width, @pad); + &:after { + background: url(@icon-image) no-repeat 0 0; + ._size(@width, @height); + .nudge-r(@nudge-right); + .nudge-t(@nudge-top); + } +} + +// ---- internal use mixins ----------------------- + +._generated-icon(@width, @height, @icon-image) { + position: absolute; + display: block; + content: ' '; + background: url(@icon-image) no-repeat 0 0; + .size(@width, @height); +} + +._generated-sprite-icon(@x, @y, @width, @height, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) { + position: absolute; + display: block; + content: ' '; + .sprite-sized(@x, @y, @width, @height, @sprite-image, @sprite-grid); +} + +._pad-left(@width, @pad) when (@width = 0) { +} + +._pad-left(@width, @pad) when not (@width = 0) { + padding-left: @width + @pad; +} + +._pad-right(@width, @pad) when (@width = 0) { +} + +._pad-right(@width, @pad) when not (@width = 0) { + padding-right: @width + @pad; +} + +._gc-pad-left(@width, @pad) when (@width = 0) { +} + +._gc-pad-right(@width, @pad) when (@width = 0) { +} + +._gc-pad-left(@width, @pad) when not (@width = 0) and (@using-modernizr) { + .generatedcontent & { + ._pad-left(@width, @pad); + } +} + +._gc-pad-left(@width, @pad) when not (@width = 0) and not (@using-modernizr) { + ._pad-left(@width, @pad); +} + +._gc-pad-right(@width, @pad) when not (@width = 0) { + .generatedcontent & { + ._pad-right(@width, @pad); + } +} + +._gc-pad-right(@width, @pad) when not (@width = 0) and not (@using-modernizr) { + ._pad-right(@width, @pad); +} + +._size(@width, @height) when (@width = 0) and (@height = 0) { +} + +._size(@width, @height) when (@width = 0) and not (@height = 0) { + height: @height; +} + +._size(@width, @height) when not (@width = 0) and (@height = 0) { + width: @width; +} + +._size(@width, @height) when not (@width = 0) and not (@height = 0) { + width: @width; + height: @height; +} + + + diff --git a/app/design/frontend/magento_plushe/less/clearless/resets.less b/app/design/frontend/magento_plushe/less/clearless/resets.less new file mode 100644 index 0000000000000..d2eb436ac3ded --- /dev/null +++ b/app/design/frontend/magento_plushe/less/clearless/resets.less @@ -0,0 +1,307 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ +.normalize() { + + /* normalize.css 2012-03-11T12:53 UTC - http://github.com/necolas/normalize.css */ + + article, + aside, + details, + figcaption, + figure, + footer, + header, + hgroup, + nav, + section, + summary { + display: block; + } + audio, + canvas, + video { + display: inline-block; + *display: inline; + *zoom: 1; + } + audio:not([controls]) { + display: none; + height: 0; + } + [hidden] { + display: none; + } + html { + font-size: 100%; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; + } + html, + button, + input, + select, + textarea { + font-family: sans-serif; + } + body { + margin: 0; + } + a:focus { + outline: thin dotted; + } + a:hover, + a:active { + outline: 0; + } + h1 { + font-size: 2em; + margin: 0.67em 0; + } + h2 { + font-size: 1.5em; + margin: 0.83em 0; + } + h3 { + font-size: 1.17em; + margin: 1em 0; + } + h4 { + font-size: 1em; + margin: 1.33em 0; + } + h5 { + font-size: 0.83em; + margin: 1.67em 0; + } + h6 { + font-size: 0.75em; + margin: 2.33em 0; + } + abbr[title] { + border-bottom: 1px dotted; + } + b, + strong { + font-weight: bold; + } + blockquote { + margin: 1em 40px; + } + dfn { + font-style: italic; + } + mark { + background: #ff0; + color: #000; + } + p, + pre { + margin: 1em 0; + } + pre, + code, + kbd, + samp { + font-family: monospace, serif; + _font-family: 'courier new', monospace; + font-size: 1em; + } + pre { + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; + } + q { + quotes: none; + } + q:before, + q:after { + content: ''; + content: none; + } + small { + font-size: 75%; + } + sub, + sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; + } + sup { + top: -0.5em; + } + sub { + bottom: -0.25em; + } + dl, + menu, + ol, + ul { + margin: 1em 0; + } + dd { + margin: 0 0 0 40px; + } + menu, + ol, + ul { + padding: 0 0 0 40px; + } + nav ul, + nav ol { + list-style: none; + list-style-image: none; + } + img { + border: 0; + -ms-interpolation-mode: bicubic; + } + svg:not(:root) { + overflow: hidden; + } + figure { + margin: 0; + } + form { + margin: 0; + } + fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; + } + legend { + border: 0; + padding: 0; + white-space: normal; + *margin-left: -7px; + } + button, + input, + select, + textarea { + font-size: 100%; + margin: 0; + vertical-align: baseline; + *vertical-align: middle; + } + button, + input { + line-height: normal; + } + button, + input[type="button"], + input[type="reset"], + input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; + *overflow: visible; + } + button[disabled], + input[disabled] { + cursor: default; + } + input[type="checkbox"], + input[type="radio"] { + box-sizing: border-box; + padding: 0; + *height: 13px; + *width: 13px; + } + input[type="search"] { + -webkit-appearance: textfield; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; + } + input[type="search"]::-webkit-search-decoration, + input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; + } + button::-moz-focus-inner, + input::-moz-focus-inner { + border: 0; + padding: 0; + } + textarea { + overflow: auto; + vertical-align: top; + } + table { + border-collapse: collapse; + border-spacing: 0; + } +} + +.reset() { + + /* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 */ + + html, body, div, span, applet, object, iframe, + h1, h2, h3, h4, h5, h6, p, blockquote, pre, + a, abbr, acronym, address, big, cite, code, + del, dfn, em, img, ins, kbd, q, s, samp, + small, strike, strong, sub, sup, tt, var, + b, u, i, center, + dl, dt, dd, ol, ul, li, + fieldset, form, label, legend, + table, caption, tbody, tfoot, thead, tr, th, td, + article, aside, canvas, details, embed, + figure, figcaption, footer, header, hgroup, + menu, nav, output, ruby, section, summary, + time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; + } + article, aside, details, figcaption, figure, + footer, header, hgroup, menu, nav, section { + display: block; + } + body { + line-height: 1; + } + ol, ul { + list-style: none; + } + blockquote, q { + quotes: none; + } + blockquote:before, blockquote:after, + q:before, q:after { + content: ''; + content: none; + } + table { + border-collapse: collapse; + border-spacing: 0; + } + +} \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/less/clearless/settings.less b/app/design/frontend/magento_plushe/less/clearless/settings.less new file mode 100644 index 0000000000000..5be0f95544f4b --- /dev/null +++ b/app/design/frontend/magento_plushe/less/clearless/settings.less @@ -0,0 +1,50 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ +// ============================================== +// ClearLess default settings +// ---------------------------------------------- +// Override on a per-project basis as required. +// ============================================== + +// General -------------------------------- + +@using-ieclasses: true; // whether or not the markup has html5-boilerplate style IE classes in it or not +@using-modernizr: false; // whether or not modernizer feature-detection classes are being used +@disable-filters: true; // whether or not to disable MS-specific 'filter' properties (can make IE slow!) + +// Typography -------------------------------- + +@base-font-size: 16; // base pixel font size. Used as a default for px -> (r)em conversions + +// Sprites -------------------------------- + +@sprite-image: '/example.png'; +@sprite-grid: 50px; + +// Grid -------------------------------- + +@total-columns: 12; +@column-width: 60px; +@gutter-width: 20px; diff --git a/app/design/frontend/magento_plushe/less/clearless/sprites.less b/app/design/frontend/magento_plushe/less/clearless/sprites.less new file mode 100644 index 0000000000000..d797e9e063dad --- /dev/null +++ b/app/design/frontend/magento_plushe/less/clearless/sprites.less @@ -0,0 +1,75 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ +// ============================================== +// Sprite helpers +// ============================================== + +.sprite(@x, @y, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) { + .sprite-image(@sprite-image); + .sprite-pos(@x, @y, @sprite-grid); +} + +.sprite-sized(@x, @y, @size, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) when not (isnumber(@sprite-image)) { + .sprite(@x, @y, @sprite-image, @sprite-grid); + .size(@size); +} + +.sprite-sized(@x, @y, @width, @height, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) when (isnumber(@height)) { + .sprite(@x, @y, @sprite-image, @sprite-grid); + .size(@width,@height); +} + +.sprite-ir(@x, @y, @size, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) when not (isnumber(@sprite-image)) { + .ir(); + .sprite(@x, @y, @sprite-image, @sprite-grid); + .size(@size); +} + +.sprite-ir(@x, @y, @width, @height, @sprite-image:@sprite-image, @sprite-grid:@sprite-grid) when (isnumber(@height)) { + .ir(); + .sprite(@x, @y, @sprite-image, @sprite-grid); + .size(@width,@height); +} + +.sprite-image(@sprite-image:@sprite-image) { + background-image: url(@sprite-image); + background-repeat: no-repeat; +} + +.sprite-pos(@x, @y, @sprite-grid:@sprite-grid) { + background-position: -(@x*@sprite-grid*1px) -(@y*@sprite-grid*1px); +} + +.sprite-pos-sized(@x, @y, @size, @sprite-grid:@sprite-grid) when not (isnumber(@sprite-image)) { + .sprite-pos(@x, @y, @sprite-grid); + .size(@size); +} + +.sprite-pos-sized(@x, @y, @width, @height, @sprite-grid:@sprite-grid) when (isnumber(@height)) { + .sprite-pos(@x, @y, @sprite-grid); + .size(@width,@height); +} + + diff --git a/app/design/frontend/magento_plushe/less/clearless/typography.less b/app/design/frontend/magento_plushe/less/clearless/typography.less new file mode 100644 index 0000000000000..4476de5db90ca --- /dev/null +++ b/app/design/frontend/magento_plushe/less/clearless/typography.less @@ -0,0 +1,66 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ +// ============================================== +// Typography related mixins +// ============================================== + +.font-size-rems(@px-size) { + @rem-size: @px-size / @base-font-size; + font-size: ~"@{px-size}px"; + font-size: ~"@{rem-size}rem"; +} + +.font-size-ems(@target-px-size, @context-px-size:@base-font-size) { + font-size: (@target-px-size / @context-px-size) * 1em; +} + +.font-face( @family-name, @font-path, @font-weight:normal, @font-style:normal, @include-svg:false ) when not (@include-svg) { + @font-face { + font-family: @family-name; + src: url('@{font-path}.eot'); + src: url('@{font-path}.eot?#iefix') format('embedded-opentype'), url('@{font-path}.woff') format('woff'), url('@{font-path}.ttf') format('truetype'); + font-weight: @font-weight; + font-style: @font-style; + } +} + +.font-face( @family-name, @font-path, @font-weight:normal, @font-style:normal, @include-svg:false ) when (@include-svg) { + @font-face { + font-family: @family-name; + src: url('@{font-path}.eot'); + src: url('@{font-path}.eot?#iefix') format('embedded-opentype'), url('@{font-path}.woff') format('woff'), url('@{font-path}.ttf') format('truetype'), url('@{font-path}.svg#@{family-name}') format('svg'); + font-weight: @font-weight; + font-style: @font-style; + } +} + +.wrap-words() { + -ms-word-break: break-all; + word-break: break-all; + word-break: break-word; + -webkit-hyphens: auto; + -moz-hyphens: auto; + hyphens: auto; +} \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/less/lib/buttons.less b/app/design/frontend/magento_plushe/less/lib/buttons.less new file mode 100644 index 0000000000000..0a89351dd3e43 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/lib/buttons.less @@ -0,0 +1,136 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +// # Primary buttons +// +// Buttons that performs primary action ([read design and usability article](http://linktousabilityarticle.com/)) +// +// ```html +//

    Some text here

    +// +// +// +// ``` +// + +.action.myPrimary { + &:extend(.primary.action all); +} + +.primary.action { + &:extend(.button.action all); + background-color: @primaryActionBg; + color: @primaryActionColor; + &:focus, + &:active, + &:hover { + background-color: @primaryActionBgH; + } +} + +// # Secondary buttons +// +// Buttons that performs secondary action ([read design and usability article](http://linktousabilityarticle.com/)) +// +// ```html +// +// +// +// ``` +// + +.action.mySecondary { + &:extend(.secondary.action all); +} + +.secondary.action { + &:extend(.button.action all); + background-color: @secondaryActionBg; + color: @secondaryActionColor; + &:focus, + &:active, + &:hover { + background-color: @secondaryActionBgH; + } +} + +// # Buttons displayed as links +// Buttons that are displayed as links +// +// ```html +// +// +// +// ``` +// + +.action.myLink { + &:extend(.button.link all); +} + +.button.link { + background: none; + border: 0; + display: inline; + color: @link; + margin: 0; + padding: 0; + text-decoration: underline; + &:focus, + &:active, + &:hover { + color: @linkHover; + text-decoration: none; + } +} + +// # Initial styling for button + +.button.action { + border: none; + border-radius: 0; + font: @actionFont; + text-transform: uppercase; + margin: 0; + padding: 9px 11px 9px; + box-shadow: none; + text-shadow: none; + outline: none; + text-decoration: none; +} + +// Buttons Initial Variables + +//@primaryActionBg:; +//@primaryActionBgH:; +//@primaryActionColor:; +//@secondaryActionBg:; +//@secondaryActionBgH:; +//@secondaryActionColor:; +//@actionFont:; + +.action + .action { + margin-left: 5px; +} diff --git a/app/design/frontend/magento_plushe/less/lib/forms.less b/app/design/frontend/magento_plushe/less/lib/forms.less new file mode 100644 index 0000000000000..e31ebb390cc62 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/lib/forms.less @@ -0,0 +1,919 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +// #Forms mixins +// +// Mixins for all form elements + +.controlStyling() { + .box-sizing(); + background: @fieldBg; + border: 1px solid @primary3; + border-radius: 3px; + font: @baseFontWeight @baseFontSize @baseFont; + /* Prevent background color leak outs */ + background-clip: padding-box; + outline: none; + &:focus { + border-color: @primary4; + } + .control & { + width: 100%; + } + &:disabled { + opacity: 0.5; + } +} + +.inputText() { + .controlStyling(); + height: 32px; + line-height: 1; + padding: 0 10px; + &::-webkit-input-placeholder { + line-height: 1.333; + } + &:-ms-input-placeholder { + line-height: 1.333; + } + .eq-ie8 & { + padding-top: 8px; + } +} + +.formFieldset() { + border: 0; + margin: 30px 10px 30px 30px; + padding: 0; + letter-spacing: -0.31em; + word-spacing: -0.43em; + > * { + letter-spacing: normal; + word-spacing: normal; + } + > .legend { + float: left; + font: @baseFontWeight @legendFontSize/1.2 @baseFont; + margin: -30px 30px 50px -30px; + width: 100%; + & + br { + display: block; + .clearfix(); + } + } +} + +.formField() { + .box-sizing(); + margin: 0 0 20px; + > .label { + display: block; + padding-bottom: 5px; + } + .nested .field { + margin: 5px 0; + } + &.choice { + > .control { + width: auto; + } + > .label { + display: inline; + } + > input { + vertical-align: top; + margin-top: 2px; + margin-right: 5px; + } + } + &.required > .label > span:first-child:after { + content: '*'; + color: @requiredField; + } + .addon { + display: table; + padding: 0; + width: 100%; + textarea, + select, + input { + box-shadow: none; + display: table-cell; + margin: 0; + width: 100%; + } + .addbefore, + .addafter { + height: 0; + white-space: nowrap; + display: inline-block; + display: table-cell; + vertical-align: middle; + width: 1px; + .inputText(); + } + } + .note { + font-size: @baseFontSizeMiddle; + margin-top: 3px; + padding-left: 15px; + &:before { + border-bottom: 5px solid @baseColor; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + content: ''; + display: inline-block; + font-size: 0; + line-height: 0; + margin: 4px 0 0 -14px; + position: absolute; + vertical-align: top; + width: 0; + } + } +} + +.formCols(@fieldWidth : 50%) { + .field { + display: inline-block; + padding-right: 20px; + vertical-align: top; + width: @fieldWidth; + } + .nested .field { + width: 100%; + } + .actions { + margin-right: 30px; + } +} + +.hasRequired { + &:after { + content: attr(data-hasrequired); + display: block; + font-size: @baseFontSize; + margin: 10px 0 0; + color: @requiredField; + letter-spacing: normal; + word-spacing: normal; + } +} + +.load.indicator { + display: inline-block; + margin: 20px auto; + padding: 8px; + vertical-align: middle; + span { + display: block; + line-height: 16px; + &:before { + content: ''; + margin-right: 5px; + display: inline-block; + width: 16px; + height: 16px; + background: url("@{baseDir}/images/loader.gif") no-repeat 0 0; + background-color: @secondary1; + vertical-align: top; + } + } +} + +// #Forms +// +// ```html +//
    +//
    +// Legend +//
    +//
    +// +//
    +// +//
    +//
    +// +// +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +// +// +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +// +//
    +// +//
    +// +//
    This is a note to a text field
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +//
    +// +// +//
    +//
    +//
    +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +// +//
    +// +//
    +// +// +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +// +// +//
    +// +// Loading indicator... +// +//
    +// ``` +// + +.form { + .actions { + margin-right: 10px; + text-align: right; + } +} + +.fieldset { + .formFieldset(); + > .field { + .formField(); + } + .fields.range { + .field { + display: inline-block; + letter-spacing: normal; + margin: 0; + vertical-align: top; + word-spacing: normal; + &:first-child { + .control { + .box-sizing(); + padding-right: 30px; + &:after { + content: '\2014'; + display: inline-block; + margin-right: -30px; + text-align: center; + width: 29px; + } + } + input { + width: 98%; + } + } + } + } + .fields.dates { + .field { + display: inline-block; + letter-spacing: normal; + margin: 0 25px 0 0; + padding: 0 34px 0 0; + position: relative; + vertical-align: top; + &:first-child { + margin: 0 30px 0 0; + .control { + .box-sizing(); + &:after { + content: '\2014'; + display: inline-block; + position: absolute; + right: -39px; + top: 7px; + width: 29px; + } + } + } + .ui-datepicker-trigger { + text-decoration: none; + position: absolute; + right: 0; + top: 9px; + &:extend(.button.link all); + } + } + } +} + +input[type="text"], +input[type="search"], +input[type="tel"], +input[type="url"], +input[type="email"], +input[type="datetime"], +input[type="password"] { + .inputText(); +} + +input[type="submit"], +input[type="button"] { + &:extend(.primary.action all); +} + +input[type="reset"] { + &:extend(.secondary.action all); +} + +select { + .controlStyling(); + padding: 5px 10px 4px; + &.multiselect { + height: auto; + } +} + +textarea { + .controlStyling(); + height: auto; + line-height: 1.2; + min-height: 4.8em; + padding: 10px; + resize: vertical; +} + +// #Form validation +// Required field marked with '*' symbol +// +// Validation passed hilighting +// +// Validation error hilight and validation error message +// +// '* Required fields' text +// +// ```html +//
    +//
    +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    This is a required field.
    +//
    +//
    +//
    +//
    +// ``` +// + +.fieldset { + // Validation passed + textarea.valid, + select.valid, + input[type="text"].valid, + input[type="search"].valid, + input[type="tel"].valid, + input[type="url"].valid, + input[type="email"].valid, + input[type="datetime"].valid, + input[type="password"].valid { + border-color: @validHilight !important; + } + // Validation error + textarea.mage-error, + select.mage-error, + input[type="text"].mage-error, + input[type="search"].mage-error, + input[type="tel"].mage-error, + input[type="url"].mage-error, + input[type="email"].mage-error, + input[type="datetime"].mage-error, + input[type="password"].mage-error { + border-color: @nonValidHilight !important; + } + div.mage-error[generated] { + color: @nonValidHilight !important; + font-size: @baseFontSizeMiddle; + padding-top: 4px; + } +} + +.form.validation { + .fieldset { + margin: 20px 0; + } + &:extend(.hasRequired all); +} + +// #Form fields arranged to columns +// +// ```html +//
    +//
    +// Some Settings +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +// +//
    +// +//
    +// +//
    Please enter your message here
    +//
    +//
    +// +//
    +// +//
    +// +//
    +//
    +//
    +//
    +// +//
    +//
    +// ``` +// + +.form.settings { + .formCols(); + .action.submit { + &:extend(.primary.action all); + } +} + +// #Datepicker custom styles +@datepickerArrows : @secondary1; +@datepickerArrowsHover : darken(@datepickerArrows, 10%); +@datepickerTextColor : #000; +@datepickerBg : #efefef; +@datepickerBorder : #fff; +@datepickerShadow : rgba(0, 0, 0, 0.35); +@datepickerCalendarBg : #fff; +@datepickerCalendarBorder : #cfcfcf; +@datepickerCalendarHover : #f9eae7; +@datepickerCalendarToday : #f3d7d2; +@datepickerCalendarActive : lighten(@secondary1, 20%); +@datepickerDisabledBg : #f9f9f9; +@datepickerDisable : #959595; + +.ui-datepicker { + background: @datepickerBg; + border: 4px solid @datepickerBorder; + box-shadow: 5px 5px 10px 0 @datepickerShadow; + .box-sizing(); + display: none; + padding: 15px; + width: auto; + z-index: 999999 !important; + .ui-datepicker-header { + position: relative; + padding: .2em 0; + } + .ui-datepicker-prev, + .ui-datepicker-next { + position: absolute; + top: 2px; + width: 1.8em; + height: 1.8em; + cursor: pointer; + span { + border: solid; + display: block; + font-size: 0; + margin-top: -5px; + position: absolute; + left: 50%; + top: 50%; + width: 0; + height: 0; + } + } + .ui-datepicker-prev { + left: 2px; + span { + margin-left: -8px; + border-width: 5px 8px 5px 0; + border-color: transparent @datepickerArrows transparent transparent; + } + &.ui-datepicker-prev-hover span { + border-color: transparent @datepickerArrowsHover transparent transparent; + } + } + .ui-datepicker-next { + right: 2px; + span { + margin-left: 0; + border-width: 5px 0 5px 8px; + border-color: transparent transparent transparent @datepickerArrows; + } + &.ui-datepicker-next-hover span { + border-color: transparent transparent transparent @datepickerArrowsHover; + } + } + .ui-datepicker-title { + margin: 0 2.3em; + line-height: 1.8em; + text-align: center; + select { + margin: 1px 0; + padding: 0; + } + .ui-datepicker-month, + .ui-datepicker-year { + width: 47%; + } + .ui-datepicker-month { + margin-right: 6%; + } + .ui-datepicker-month-year { + width: 100%; + } + } + table { + width: 100%; + font-size: @baseFontSizeMiddle; + } + th { + font-size: @baseFontSizeMiddle; + } + td { + padding: 0; + } + td span, + td a { + color: @datepickerTextColor; + display: block; + line-height: 14px; + padding: 4px; + text-align: right; + text-decoration: none; + } + .ui-datepicker-buttonpane { + overflow: hidden; + padding-top: 10px; + button { + float: right; + &.ui-datepicker-current { + float: left; + } + } + } + .ui-datepicker-calendar { + background: @datepickerCalendarBg; + border: 1px solid @datepickerCalendarBorder; + th { + background: @datepickerBg; + border: 1px solid @datepickerCalendarBorder; + padding: 4px; + text-transform: uppercase; + } + td { + border: 1px solid @datepickerCalendarBorder; + } + td a { + padding: 4px; + display: block; + } + td .ui-state-hover:hover { + background: @datepickerCalendarHover; + } + .ui-datepicker-week-col { + text-align: center; + border: 1px solid @datepickerCalendarBorder; + } + .ui-datepicker-today { + background: @datepickerCalendarToday; + } + .ui-state-active { + background: @datepickerCalendarActive; + } + .ui-state-disabled { + background: @datepickerDisabledBg; + span { + color: @datepickerDisable; + } + } + } +} + +.ui-datepicker-rtl { + direction: rtl; + .ui-datepicker-prev { + right: 2px; + left: auto; + &:hover { + right: 1px; + left: auto; + } + } + .ui-datepicker-next { + left: 2px; + right: auto; + &:hover { + left: 1px; + right: auto; + } + } + .ui-datepicker-buttonpane { + clear: right; + button { + float: left; + &.ui-datepicker-current { + float: right; + } + } + } + .ui-datepicker-group { + float: right; + } + .ui-datepicker-group-last .ui-datepicker-header { + border-right-width: 0; + border-left-width: 1px; + } + .ui-datepicker-group-middle .ui-datepicker-header { + border-right-width: 0; + border-left-width: 1px; + } +} + +.ui-timepicker-div { + padding: 10px 0 5px 0; + .ui-widget-header { + margin-bottom: 8px; + } + dl { + text-align: left; + dt { + height: 25px; + margin-bottom: -22px; + } + dd { + margin: 0 10px 10px 65px; + } + .ui_tpicker_time_label { + margin-bottom: -25px; + } + } + td { + font-size: 90%; + } +} + +.ui-tpicker-grid-label { + background: none; + border: none; + margin: 0; + padding: 0; +} + +.ui-slider { + position: relative; + text-align: left; + .ui-slider-handle { + position: absolute; + z-index: 2; + cursor: default; + } +} + +.ui-slider-horizontal { + border-radius: 10px; + border: none; + background: @datepickerBg; + height: 10px; + .ui-slider-handle { + margin-left: -5px; + height: 10px; + width: 10px; + border-radius: 10px; + background: @datepickerArrows; + display: block; + position: absolute; + } +} \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/less/lib/grids.less b/app/design/frontend/magento_plushe/less/lib/grids.less new file mode 100644 index 0000000000000..1af1730f683e6 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/lib/grids.less @@ -0,0 +1,384 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +// # 1. Grid using floated columns +// Full documentation about grid usage: https://github.com/clearleft/clearless#grids +// +// # 1.1 One column +// +// ```html +//
    +//
    column
    +//
    +// ``` +// + +.clearlessgrid1 { + .column-wrapper(); + > .grid-1 { + .column(); + .span(12); + .end-column(); + } +} + +// # 1.2 One main column and one right sidebar +// +// ```html +//
    +//
    column
    +// +//
    +// ``` +// + +.clearlessgrid2 { + .column-wrapper(); + .main { + .column(); + .span(9); + } + .sidebar { + .column(); + .span(3); + .end-column(); + } +} + +// # 1.3 One main column and one left sidebar +// +// ```html +//
    +// +//
    column
    +//
    +// ``` +// + +.clearlessgrid3 { + .column-wrapper(); + .main { + .column(); + .span(9); + .end-column(); + } + .sidebar { + .column(); + .span(3); + } +} + +// # 1.4 One main column and two sidebars +// +// ```html +//
    +//
    column
    +//
    column
    +//
    column
    +//
    +// ``` +// + +.clearlessgrid4 { + .column-wrapper(); + .main { + .column(); + .span(6); + } + .sidebar1, + .sidebar2 { + .column(); + .span(3); + } + .sidebar2 { + .end-column(); + } +} + +// # 1.5 Four columns +// +// ```html +//
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    +// ``` +// + +.clearlessgrid5 { + .column-wrapper(); + > .grid-1 { + .column(); + .span(3); + &:last-child { + .end-column(); + } + } +} + +// # 1.6 Six columns +// +// ```html +//
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    +// ``` +// + +.clearlessgrid6 { + .column-wrapper(); + > .grid-1 { + .column(); + .span(2); + &:last-child { + .end-column(); + } + } +} + +// # 1.7 Twelve columns +// +// ```html +//
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    +// ``` +// + +.clearlessgrid12 { + .column-wrapper(); + > .grid-1 { + .column(); + .span(1); + &:last-child { + .end-column(); + } + } +} + +// # 2. Grid columns using display: inline-block +// +// # 2.1 One column +// +// ```html +//
    +//
    column
    +//
    +// ``` +// + +.inlinegrid1 { + .inline-column-wrapper(); + > .grid-1 { + .inline-column(); + .span(12); + .inline-end-column(); + } +} + +// # 2.2 One main column and two right sidebar +// +// ```html +//
    +//
    column
    +// +//
    +// ``` +// + +.inlinegrid2 { + .inline-column-wrapper(); + .main { + .inline-column(); + .span(9); + } + .sidebar { + .inline-column(); + .span(3); + .inline-end-column(); + } +} + +// # 2.3 One main column and one left sidebar +// +// ```html +//
    +// +//
    column
    +//
    +// ``` +// + +.inlinegrid3 { + .inline-column-wrapper(); + .main { + .inline-column(); + .span(9); + .inline-end-column(); + } + .sidebar { + .inline-column(); + .span(3); + } +} + +// # 2.4 One main column and two sidebars +// +// ```html +//
    +//
    column
    +//
    column
    +//
    column
    +//
    +// ``` +// + +.inlinegrid4 { + .inline-column-wrapper(); + .main { + .inline-column(); + .span(6); + } + .sidebar1, + .sidebar2 { + .inline-column(); + .span(3); + } + .sidebar2 { + .inline-end-column(); + } +} + +// # 2.5 Four columns +// +// ```html +//
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    +// ``` +// + +.inlinegrid5 { + .inline-column-wrapper(); + > .grid-1 { + .inline-column(); + .span(3); + &:last-child { + .inline-end-column(); + } + } +} + +// # 2.6 Six columns +// +// ```html +//
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    +// ``` +// + +.inlinegrid6 { + .inline-column-wrapper(); + > .grid-1 { + .inline-column(); + .span(2); + &:last-child { + .inline-end-column(); + } + } +} + +// # 2.7 Twelve columns +// +// ```html +//
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    column
    +//
    +// ``` +// + +.inlinegrid12 { + .inline-column-wrapper(); + > .grid-1 { + .inline-column(); + .span(1); + &:last-child { + .inline-end-column(); + } + } +} + +// #Common settings + +@total-columns: 12; +@column-width: 60px; +@gutter-width: 20px; + +.gridwrapper > div, +.inlinegridwrapper > div { + background: #e5e5e5; + border: 1px solid #999; + padding: 5px 0; + text-align: center; + .box-sizing(); +} diff --git a/app/design/frontend/magento_plushe/less/lib/icons.less b/app/design/frontend/magento_plushe/less/lib/icons.less new file mode 100644 index 0000000000000..6fde98162105c --- /dev/null +++ b/app/design/frontend/magento_plushe/less/lib/icons.less @@ -0,0 +1,205 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +// # Icons +// ``` +// @icon-pencil +// @icon-menu +// @icon-location +// @icon-info +// @icon-flag +// @icon-expand +// @icon-exclamation +// @icon-dropdown +// @icon-collapse +// @icon-close-thick +// @icon-checkmark +// @icon-cart +// @icon-arrow-up-thin +// @icon-arrow-right-thin +// @icon-arrow-left-thin +// @icon-arrow-down-thin +// @icon-arrow-up-thick +// @icon-arrow-right-thick +// @icon-arrow-left-thick +// @icon-arrow-down-thick +// @icon-wishlist +// @icon-comment +// @icon-comment-reflected +// @icon-list +// @icon-grid +// @icon-close-thin +// @icon-trash +// @icon-envelope +// @icon-magnifying-glass +// @icon-arrow-right-filled +// @icon-arrow-bottom-filled +// @icon-arrow-left-filled +// @icon-arrow-up-filled +// @icon-star +// @icon-calendar +// ``` + +@icon-pencil: "\e006"; +@icon-menu: "\e007"; +@icon-location: "\e008"; +@icon-info: "\e00a"; +@icon-flag: "\e00c"; +@icon-expand: "\e00d"; +@icon-exclamation: "\e00e"; +@icon-dropdown: "\e010"; +@icon-collapse: "\e011"; +@icon-close-thick: "\e012"; +@icon-checkmark: "\e013"; +@icon-cart: "\e014"; +@icon-arrow-up-thin: "\e015"; +@icon-arrow-right-thin: "\e016"; +@icon-arrow-left-thin: "\e017"; +@icon-arrow-down-thin: "\e018"; +@icon-arrow-up-thick: "\e019"; +@icon-arrow-right-thick: "\e01a"; +@icon-arrow-left-thick: "\e01b"; +@icon-arrow-down-thick: "\e01c"; +@icon-wishlist: "\e01d"; +@icon-comment: "\e01e"; +@icon-comment-reflected: "\e01f"; +@icon-list: "\e002"; +@icon-grid: "\e003"; +@icon-close-thin: "\e004"; +@icon-trash: "\e000"; +@icon-envelope: "\e001"; +@icon-magnifying-glass: "\e005"; +@icon-arrow-right-filled: "\e02b"; +@icon-arrow-bottom-filled: "\e02c"; +@icon-arrow-left-filled: "\e02a"; +@icon-arrow-up-filled: "\e029"; +@icon-star: "\e009"; +@icon-calendar: "\e00b"; + +.example.icon { + display: inline-block; + margin: 0 0 16px; + width: 20%; + text-align: center; + .iconBefore("", 32px, 0 0 10px 0, 'icons'); + &:before { + content: attr(data-icon); + display: block; + } + &:hover { + color: @secondary2; + } +} + +// #iconBefore +//Add an icon *before* the specified element +// +//**.iconBefore(["content"], [height], [margin], ["font"]);** +// ``` +//
    My Cart +// ``` +.action.showcart1 { + .iconBefore(@icon-cart, 16px, 0 5px 0 0, "icons"); +} + +// #iconAfter +//Add an icon *after* the specified element +// +//**.iconAfter(["content"], [height], [margin], ["font"]);** +// ``` +// My Cart +// ``` +.action.showcart2 { + .iconAfter(@icon-cart, 16px, 0 0 0 10px, "icons"); +} + +// #iconHideText +//Hide the text to the specified element (not hide the icon) +// +//**.iconHideText([limitWidth]);** +// ``` +// My Cart +// ``` +.action.showcart3 { + .iconAfter(@icon-cart, 16px, 10px,"icons"); + .iconHideText(16px); +} + +//#Using mixin: +.iconBefore(@content: '', @size: 16px, @margin: 0 , @font: 'icons') { + &:before { + font-family: "@{font}"; + font-size: @size; + line-height: @size; + height: @size; + margin: @margin; + overflow: hidden; + content: @content; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; + } +} + +.iconAfter(@content: '', @size: 16px, @margin: 0 , @font: 'icons') { + &:after { + font-family: "@{font}"; + font-size: @size; + line-height: @size; + height: @size; + margin: @margin; + overflow: hidden; + content: @content; + font-style: normal; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + display: inline-block; + vertical-align: middle; + text-align: center; + } +} + +.iconHideText(@limitWidth: 16px) { + width: @limitWidth; + display: block; + line-height: 0; + white-space: nowrap; + vertical-align: middle; + text-align: center; + text-indent: -999em; + &:active { + outline: 0; + } + &:after { + text-indent: 0; + display: block; + margin: 0; + } +} diff --git a/app/design/frontend/magento_plushe/less/lib/messages.less b/app/design/frontend/magento_plushe/less/lib/messages.less new file mode 100644 index 0000000000000..b48940c5dc93e --- /dev/null +++ b/app/design/frontend/magento_plushe/less/lib/messages.less @@ -0,0 +1,214 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +// #Messages - base styles + +ul.messages { + .resetList(); +} + +.message.base { + display: block; + .clearfix(); + padding: 13px 60px 12px 20px; + margin: 3px 0 3px; + border-radius: 3px; + position: relative; + line-height: 16px; + z-index: 1; + &:before { + content: ''; + position: absolute; + width: 31px; + text-align: center; + right: 0; + top: 0; + height: 100%; + display: block; + padding: 0; + border-radius: 3px; + z-index: 1; + } + > *:first-child:before { + content: ''; + .arrow(left, 5px, @messageNoticeIconBg); + position: absolute; + overflow: hidden; + top: 50%; + margin-top: -3px; + right: 31px; + z-index: 2; + } + > *:first-child:after { + font-family: "icons"; + color: @messageIconColor; + font-size: 20px; + line-height: 20px; + position: absolute; + top: 50%; + right: 0; + margin-top: -10px; + width: 31px; + text-align: center; + display: block; + z-index: 3; + } + ul { + .resetList(); + } + li { + margin-top: 5px; + + &:first-child { + margin-top: 0; + } + } +} + +// # Error messages +// +// ```html +//
      +//
    • +//
        +//
      • Oh snap! Change a few things up and try submitting again.
      • +//
      +//
    • +//
    +// ``` +// + +.message.error { + &:extend(.message.base all); + background: @messageErrorBg; + color: @messageErrorColor; + &:before { + background: @messageErrorIconBg; + } + > *:first-child:before { + border-right-color: @messageErrorIconBg; + } + > *:first-child:after { + content: @icon-exclamation; + } +} + +.error-msg { + &:extend(.message.error all); +} + +// # Success messages +// +// ```html +//
      +//
    • +//
        +//
      • Well done! You successfully read this important alert message.
      • +//
      +//
    • +//
    +// ``` +// + +.message.success { + &:extend(.message.base all); + background: @messageSuccessBg; + color: @messageSuccessColor; + &:before { + background: @messageSuccessIconBg; + } + > *:first-child:before { + border-right-color: @messageSuccessIconBg; + } + > *:first-child:after { + content: @icon-checkmark; + } +} + +.success-msg { + &:extend(.message.success all); +} + +// # Notice messages +// +// ```html +//
      +//
    • +//
        +//
      • Heads up! This alert needs your attention, but it's not super important.
      • +//
      +//
    • +//
    +// ``` +// + +.message.notice { + &:extend(.message.base all); + background: @messageNoticeBg; + color: @messageNoticeColor; + &:before { + background: @messageNoticeIconBg; + } + > *:first-child:before { + border-right-color: @messageNoticeIconBg; + } + > *:first-child:after { + content: @icon-info; + } +} + +.notice-msg, +.note-msg { + &:extend(.message.notice all); +} + +// # Customized info message +// +// ```html +//
    +//

    Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.

    +//
    +// ``` +// + +.message.info { + &:extend(.message.base all); + background: @messageNoticeBg; + color: @messageNoticeColor; + border: 1px solid darken(@messageNoticeBg, 10%); + .box-sizing(); + &:before { + background: @messageNoticeIconBg; + top: -2px; + height: auto; + bottom: -2px; + } + > *:first-child:before { + border-right-color: @messageNoticeIconBg; + } + > *:first-child:after { + content: @icon-info; + } +} \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/less/lib/navigation.less b/app/design/frontend/magento_plushe/less/lib/navigation.less new file mode 100644 index 0000000000000..5c1f1cbf41e93 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/lib/navigation.less @@ -0,0 +1,658 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +// # Navigation +// +// +// ```html +//
    +// +// ``` +// + +@subNavHeight: auto; +@subNavPadding: 45px; + +@navBg : @headerBg; +@navBgImage : @headerBgImage; + +.navigation { + background-color: @navBg; + background-image: @navBgImage; + background-repeat: repeat; + background-position: 0 0; + border-top: 1px solid; + .borderColorI(@navBg); + position: relative; + z-index: 2; + .clearfix(); + + > ul > .level-top { + display: inline-block; + line-height: 1.2; + vertical-align: top; + padding-right: 40px; + + &:last-child { + padding-right: 0; + } + + &.active { + > a:after { + opacity: 1; + border-bottom-color: @primary7; + } + } + + &.hover { + > a:after { + border-bottom-color: @primary1; + } + > .submenu { + border-bottom: 1px solid @primary3; + } + } + + &.hover, + &:hover { + > .submenu { + z-index: 2; + } + &:hover > a span, + &.parent.hover > a span, + &.parent > a span { + color: @primary6; + } + &:hover > a:after, + &.hover > a:after, + &.parent > a:after { + opacity: 1; + } + } + + &.more { + &:after { + cursor: pointer; + content: "\e010"; + font-family: "icons"; + font-size: 16px; + display: inline-block; + padding: .6em .7em 1em; + margin-top: 0.4em; + border-radius: 4px 4px 0 0; + position: relative; + z-index: 1; + } + + &.hover:after { + background: @primary1; + } + + li.level-top { + width: 200px; + margin: 0 0 0 -10px !important; + padding: 7px 10px 7px 30px; + > a { + font-size: 16px; + } + &.hover, + &:hover { + background: @primary1; + > a span { + color: @primary6; + } + &.parent { + .iconBefore(@content: @icon-arrow-right-thick, @margin: 0 8px 0 0, @font: "icons"); + &:before { + float: right; + color: @secondary1; + } + } + .submenu { + display: block !important; + } + } + > a span { + color: @primary5; + } + .submenu { + display: none; + } + > .submenu { + position: absolute; + right: 0; + padding: 0; + left: 0; + top: 0; + margin-left: 230px; + min-height: 100%; + background: @primary1; + .box-sizing(); + .box-shadow(0 10px 8px rgba(0,0,0,0.3)); + .no-boxshadow & { + border: 2px solid @primary3; + border-width: 0 2px 2px; + } + > ul { + background: @primary1; + position: relative; + z-index: 1; + padding: 10px; + } + } + } + > .submenu { + background: none; + border-width: 0; + > ul { + position: relative; + } + } + } + + > a { + position: relative; + display: inline-block; + vertical-align: top; + padding: 1em 0; + font-size: 16px; + text-align: center; + color: @primary5; + &:after { + opacity: 0; + content: ''; + overflow: hidden; + display: block; + position: absolute; + bottom: 0; + left: 50%; + zoom: 1; + z-index: 2; + color: @primary6; + .arrow(top, 10px, @primary1); + } + > span { + color: @primary5; + } + &:active span, + &:focus span { + color: @primary6; + } + &:active:after, + &:focus:after { + opacity: 1; + } + } + + > .submenu { + display: none; + position: absolute; + left: 0; + top: 100%; + background: @primary1; + width: 100%; + z-index: 1; + > ul { + height: @subNavHeight; + padding-top: @subNavPadding; + padding-bottom: @subNavPadding; + li.column { + .box-sizing( border-box ); + width: 25%; + display: inline-block; + padding-right: 30px; + vertical-align: top; + } + .level1 > a { + text-transform: uppercase; + } + .parent ul { + padding-left: 10px; + } + li { + margin: 8px 0; + &:fist-child { + margin-top: 0; + } + } + } + } + } +} + +@media only screen and (max-width: 640px) { + html { + height: 100%; + min-width: 0; + overflow: hidden; + } + + body { + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + position: relative; + height: 100%; + width: 100%; + overflow: hidden; + &.opened { + .navigation { + left: 0; + } + .page.wrapper { + margin-right: -86%; + cursor: pointer; + } + } + } + + .page.wrapper { + position: relative; + width: 100%; + float: right; + margin: 0; + .transition(margin .3s ease-out 0); + } + + .navigationLink() { + & > a { + display: block; + padding: 10px 20px; + text-transform: none; + font-size: 20px; + font-weight: 600; + border-bottom: 1px solid @primary2; + color: @primary6; + text-align: left; + &:hover, + &:visited { + color: @primary6; + } + &:active { + background: #dbdcd7; + } + &:after { + border: 0; + } + } + } + + .navigationSubmenu() { + position: absolute; + display: block; + left: 100%; + top: 0; + width: 100%; + overflow-x: hidden; + background: @primary7; + .transition(left .3s ease-out 0); + &.opened { + left: 0; + z-index: 3; + } + > ul { + padding-top: 0; + padding-bottom: 0; + li { + margin: 0; + .navigationLink(); + } + li.column { + width: 100%; + display: block; + padding-right: 0; + } + .parent ul { + padding-left: 0; + } + } + } + + .navigation { + display: block; + position: absolute; + width: 86%; + left: -86%; + height: 100%; + background: @primary7; + overflow-x: hidden; + border-right: #b6b8af 1px solid; + .box-sizing(); + .transition(left .3s ease-out 0); + ul { + margin: 0; + padding: 0; + li.hidden { + display: none; + } + } + & > ul { + .transition(left .3s linear 0); + position: relative; + overflow: hidden; + > .level-top { + display: block; + padding: 0; + background: @primary7; + .navigationLink(); + &.parent { + &:after { + display: none; + } + > a { + position: relative; + .iconAfter(@content: @icon-arrow-right-thick, @size: 18px, @font: 'icons'); + text-transform: none !important; + &:after { + position: absolute; + width: 18px; + top: 12px; + right: 17px; + left: auto; + opacity: 1; + z-index: auto; + } + } + > .submenu { + .navigationSubmenu(); + } + } + + } + } + .action.back { + a { + background: @primary6; + position: relative; + color: @primary7 !important; + border-bottom-color: transparent; + cursor: pointer; + .iconBefore(@content: @icon-arrow-left-thick, @size: 18px, @font: 'icons'); + &:hover, + &:active, + &:visited { + color: @primary7 !important; + background: @primary6 !important; + } + &:before { + position: absolute; + top: 12px; + left: 3px; + } + span:before { + content: ""; + } + } + } + .parent { + &:after { + display: none; + } + > a { + position: relative; + .iconAfter(@content: @icon-arrow-right-thick, @size: 18px, @font: 'icons'); + &:after { + position: absolute; + width: 18px; + top: 16px; + right: 17px; + left: auto; + opacity: 1; + z-index: auto; + } + } + .submenu { + .navigationSubmenu(); + } + } + } + + .action.toggle.nav { + display: block; + margin-top: 19px; + position: absolute; + top: 0; + left: 20px; + font-size: 0; + .iconAfter(@content: @icon-menu, @size: 32px, @font: 'icons'); + .iconHideText(32px); + cursor: pointer; + &:before { + position: absolute; + width: 100%; + height: 100%; + left: -100%; + top: -20px; + padding: 20px 0; + content: ""; + } + .active-nav &:before { + position: fixed; + padding: 0; + left: 86%; + right: 0; + top: 0; + bottom: 0; + } + } + + .header { + padding: 0; + position: relative; + margin-bottom: 35px; + } +} diff --git a/app/design/frontend/magento_plushe/less/lib/sections.less b/app/design/frontend/magento_plushe/less/lib/sections.less new file mode 100644 index 0000000000000..600060c246594 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/lib/sections.less @@ -0,0 +1,203 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +.data-tabs() { + .clearfix(); + position: relative; + z-index: 1; + > .item.title { + float: left; + > .switch { + display: block; + position: relative; + top: 1px; + z-index: 2; + } + } + > .item.content { + width: 100%; + float: right; + margin-left: -100%; + display: none; + .box-sizing(); + &.active { + display: block; + } + } + + .tabs > .term-content.active { + border: 1px solid #BFBFBF; + color: hsl(0, 0%, 50%); + display: block; + } +} + +.data-tabs-styling() { + > .item.title { + margin-right: 1px; + min-height: 35px; + > .switch { + font-size: 14px; + line-height: 1; + font-weight: 600; + text-decoration: none; + padding: 11px 11px 8px; + border: 2px solid #e5e5e5; + background: rgba(0, 0, 0, 0.03); + border-bottom: none; + text-transform: uppercase; + border-radius: 4px 4px 0 0; + } + &:not(.disabled) > .switch:active, + &:not(.disabled) > .switch:focus, + &:not(.disabled) > .switch:hover, + &.active > .switch { + background: #fff; + border-width: 3px; + padding: 10px 10px 8px; + outline: none; + } + &.active > .switch { + padding: 10px 20px 11px !important; + } + } + > .item.content { + .clearfix; + margin-top: 36px; + padding: 20px; + &:before { + content: ''; + border-top: 3px solid #e5e5e5; + width: 100%; + display: block; + position: absolute; + left: 0; + .box-sizing(); + margin: -20px 0 20px; + } + } +} + +.data-accordion() { + > .item.title { + .box-sizing(); + width: 100%; + > .item.switch { + display: block; + } + } + > .item.content { + .clearfix(); + .box-sizing(); + display: none; + &.active { + display: block; + } + } +} + +.data-accordion-styling() { + margin: 0; + padding: 0; + > .item.title { + margin: 3px 0 0; + > .switch { + display: block; + font-size: 14px; + line-height: 1; + font-weight: 600; + text-decoration: none; + padding: 11px; + border: 2px solid #e5e5e5; + background: #f8f8f8; + text-transform: uppercase; + border-radius: 4px; + } + &:not(.disabled) > .switch:active, + &:not(.disabled) > .switch:focus, + &:not(.disabled) > .switch:hover, + &.active > .switch { + background: #fff; + border-width: 3px; + padding: 10px; + outline: none; + } + &.active > .switch { + border-radius: 4px 4px 0 0; + } + } + > .item.content { + margin: 0; + padding: 20px; + background: #fff; + } +} + +// # Sections +// +// ```html +//
    +//
    +// Details +//
    +//
    +//

    Fit to be tied. Get the perfect level of lift in our Tie-front Tankini. Featuring removable padding and cup-specific sizes for support and shaping. From our Forever Sexy Swim collection of push-up tops and bottoms in sun-loving colors and prints.

    +//

    - Removable push-up padding
    - Lined hidden underwire cups
    - Front tie
    - Adjustable straps can be worn classic or cross-back
    - Available in two lengths: 17 3/4" and 18 3/4"
    - Imported Italian nylon/Lycra® spandex

    +//
    +// +//
    +// Tags +//
    +//
    +//

    A playful little push-up. Bring the lightweight lift and custom comfort of the Fabulous by Victoria’s Secret bra to the beach. This triangle top is finished with pretty ruching and a sweet center bow. From our fun, flirty Beach Sexy Swim Collection.

    +//

    - Ruched cups with center bow
    - Push-up padding for extreme lift
    - Underwire
    - Ties at neck; looped back tie for adjustability and extra support
    - Imported nylon/spandex

    +//
    +// +//
    +// Reviews +//
    +//
    +//

    Relaxed elegance. The flowy fit of this halter tankini makes beach style a breeze. The built in bra top provides just the right amount of support. Look slimmer in seconds® in this figure-loving top designed exclusively for Victoria’s Secret.

    +//

    - Built-in bra with molded foam padding
    - Halter straps tie at neck
    - Imported nylon/spandex

    +//
    +//
    +// ``` +// + +@media only screen +and (max-width : 99999px) { + .product.data { + .data-tabs(); + .data-tabs-styling(); + } +} + +@media only screen +and (max-width : 768px) { + .product.data { + .data-accordion(); + .data-accordion-styling(); + } +} \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/less/lib/snippets.less b/app/design/frontend/magento_plushe/less/lib/snippets.less new file mode 100644 index 0000000000000..65ff1c139ac78 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/lib/snippets.less @@ -0,0 +1,142 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +.resetList(@margin: 0, @padding: 0) { + padding: @padding; + margin: @margin; + list-style-type: none; + list-style-image: none; +} + +.borderColor (@color) when (lightness(@color) > 50%) { + border-color: darken(@color, 13%); +} + +.borderColor (@color) when (lightness(@color) =< 50%) { + border-color: lighten(@color, 13%); +} + +.borderColorI (@color) when (lightness(@color) > 50%) { + border-color: lighten(@color, 13%); +} + +.borderColorI (@color) when (lightness(@color) =< 50%) { + border-color: darken(@color, 13%); +} + +.pageWidth(@maxWidth: @LayoutMaxWidth, @minWidth: @LayoutMinWidth, @padding: 10px) { + padding-left: @padding; + padding-right: @padding; + margin: 0 auto; + min-width: (@minWidth - (2 * @padding)); + max-width: (@maxWidth - (2 * @padding)); +} + +.transitionDelay(@delay) { + -webkit-transition-delay: @delay; + -moz-transition-delay: @delay; + -ms-transition-delay: @delay; + -o-transition-delay: @delay; + transition-delay: @delay; +} + +.resetAction() { + border: none; + border-radius: 0; + background: none; + margin: 0; + padding: 0; + box-shadow: none; + text-shadow: none; + outline: none; +} + +.actionLink() { + display: inline; + color: @link; + text-decoration: none; + &:focus, + &:active, + &:hover { + color: @linkHover; + } +} + +.colorA(@c1, @c2) { + color: @c1; + > span { + color: @c1; + } + &:hover, + &:hover > span { + color: @c2; + } +} + +.fieldStyle() { + margin: 0 0 10px; + &:last-child { + margin-bottom: 0; + } + .nested { + .field { + margin: 5px 0; + } + padding: 0 0 0; + } +} + +.labelStyle() { + text-transform: uppercase; + font-weight: 600; + padding: 0 0 5px; +} + +.formInline(@labelWidth: 50%) { + > .field { + .clearfix(); + } + > .field > .control, + > .field > .label { + margin: 0; + float: left; + width: @labelWidth; + .box-sizing(); + } + > .field > .control { + width: 100% - @labelWidth; + } + > .field.no-label { + .control { + margin-left: @labelWidth; + } + } +} + +.profileBlockWithBg { + .box-sizing(); + background: @primary1; + padding: 30px; +} \ No newline at end of file diff --git a/app/design/frontend/magento_plushe/less/styles.less b/app/design/frontend/magento_plushe/less/styles.less new file mode 100644 index 0000000000000..e9cdfbb7f61e4 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/styles.less @@ -0,0 +1,5180 @@ +/** + * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. + * + * @category design + * @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) + */ + +.normalize(); + +@import "clearless/all"; // import ClearLess +@import "styles/base"; +@import "lib/snippets"; +@import "lib/buttons"; +@import "lib/forms"; +@import "lib/grids"; +@import "lib/icons"; +@import "lib/messages"; +@import "lib/navigation"; +@import "lib/sections"; +@import "vars"; +@import "styles/magento"; + +strong { + font-weight: 700; +} + +.items { + .resetList(); +} + +/* + Forms +-------------------------------------- */ +.field.required > .label > span:first-child:after { + content: ' *'; + color: @requiredField; +} + +/* + Magento_Page +-------------------------------------- */ +html, body, button, input, select, textarea { + color: @textColor; + font: 400 14px/1.33 "sourcesanspro"; +} + +html { + background: @footerBg; +} + +body { + position: relative; +} + +.page.wrapper { + background: @pageMainBg; +} + +/* + Page Layout +-------------------------------------- */ +.columns { + .pageWidth(); +} + +.page.main { + .clearfix(); + clear: both; + padding: 30px 0; +} + +.page.title { + .clearfix(); + margin-bottom: 30px; + .title { + display: inline; + margin: 0; + line-height: 1.2; + font-weight: @baseFontWeightLighter; + font-size: 30px; + color: @primary5; + } + .action { + float: right; + &:extend(.primary.action all); + } +} + +.page.main > .page.title { + .pageWidth(); + margin-bottom: 30px; +} + +.column.main { + min-height: 500px; +} + +.column.left, +.column.right { + .box-sizing(); + min-height: 1px; +} + +.col1-layout { + .column.main { + .column(12); + } +} + +.col2-left-layout { + .column.main { + float: right !important; + .column(10); + } + .column.left { + .column(2); + padding-right: 12px; + } +} + +.col2-right-layout { + .column.main { + .column(10); + } + .column.right { + .column(2); + padding-left: 12px; + } +} + +.col3-layout { + .column.main { + .clearfix(); + .column(8); + float: none !important; + display: inline-block !important; + vertical-align: top; + } + .column.left { + .column(2); + float: left; + padding-right: 12px; + } + .column.right { + .column(2); + float: none !important; + display: inline-block !important; + padding-left: 12px; + } +} + +/* + Header +-------------------------------------- */ +.header { + background-color: @headerBg; + background-image: @headerBgImage; + background-repeat: repeat; + background-position: 0; + border-bottom: 1px solid; + .borderColor(@headerBg); + padding: 15px 0; + > .content { + .pageWidth(); + .clearfix(); + .links { + .resetList(); + margin-bottom: 5px; + li { + margin-left: 20px; + display: inline; + text-transform: capitalize; + } + a { + .colorA(@primary5, @secondary1); + } + } + text-align: right; + } + + .panel { + .pageWidth(); + .clearfix(); + margin-bottom: 15px; + text-align: right; + } +} + +.logo { + font-family: "marvel"; + font-style: normal; + font-weight: @baseFontWeight; + font-size: 55px; + display: block; + float: left; + line-height: 1; + text-align: center; + img { + display: inline-block; + vertical-align: middle; + margin: 0 auto; + } + span { + display: inline-block; + vertical-align: middle; + margin-left: 15px; + color: @primary5; + margin-top: -8px; + } + &:active { + outline: 0; + } +} + +/* + Header Banner +-------------------------------------- */ +.header .panel .widget { + display: inline-block; + text-align: left; +} + +.banner-header:visited, +.banner-header:hover, +.banner-header { + font-size: @baseFontSizeBigger; + text-transform: uppercase; + color: @secondary1; +} + +/* + Search +-------------------------------------- */ +.block.search { + float: right; + > .content { + white-space: nowrap; + } + .field, + .actions, + .field .control { + float: left; + } + .actions { + margin-right: 0; + } + .search.autocomplete { + background: @primary7; + border: 1px solid @primary3; + border-width: 0 1px 1px; + border-radius: 0 0 5px 5px; + z-index: 5; + ul { + .resetList(); + li { + border-top: 1px solid @primary2; + cursor: pointer; + padding: 5px 40px 5px 10px; + position: relative; + text-align: left; + white-space: normal; + &:first-child { + border-top: none; + } + &:hover { + background: @primary1; + } + .amount { + color: @primary4; + font-weight: 600; + position: absolute; + right: 7px; + top: 6px; + } + } + } + } +} + +/* + Navigation +-------------------------------------- */ +.navigation { + z-index: 4; + > ul > .level-top { + &.hover, + &:hover { + > .submenu { + z-index: 3; + } + } + &.more { + > .submenu { + background: @primary1; + > ul { + .pageWidth(); + position: relative; + } + } + &.hover { + > .submenu { + border-bottom: 1px solid @primary3; + overflow: visible !important; + } + } + } + } +} + +.navigation > ul, +.navigation > ul > .level0 > .submenu > ul.level0 { + .pageWidth(); + padding-left: 0; + padding-right: 0; +} + +@media only screen and (max-width: 640px) { + .navigation > ul { + min-width: 100%; + max-width: 100%; + } + .action.toggle.nav { + top: 100%; + } +} + +/* + General block +-------------------------------------- */ +.column.main .block, +.sidebar .block { + margin-bottom: 45px; + > .title { + margin-bottom: 15px; + strong { + line-height: 1.2; + font-weight: @baseFontWeightLighter; + font-size: 20px; + } + } + &.filter { + .item { + margin-bottom: 10px; + } + } +} + +.sidebar .block > .title strong { + font-size: 18px; +} + +/* + Breadcrumbs +-------------------------------------- */ +.breadcrumbs { + .pageWidth(); + margin-top: 30px; +} + +/* + Footer +-------------------------------------- */ +.footer { + background: @footerBg; + border-top: 1px solid; + .borderColor(@footerBg); + padding: 30px 0 80px; + > .content { + .pageWidth(); + text-align: left; + } + .links { + ul { + .resetList(); + } + display: inline-block; + padding: 0; + margin: 1px 3px 19px 0; + li { + list-style: none; + list-style-image: none; + margin: 0; + padding: 0; + display: inline; + &:after { + content: ' | '; + } + &:last-child:after { + content: ''; + } + } + + .links li:first-child:before { + content: ' | '; + } + a { + .colorA(@primary5, @secondary1); + } + } + .copyright { + font-size: @base-font-size; + display: block; + padding-top: 10px; + } + .bugs { + margin-top: 25px; + font-size: 11px; + a { + font-weight: bold; + &:before { + content: ' - '; + display: inline-block; + } + + } + } +} + +/* + Switchers +-------------------------------------- */ +.switcher { + display: inline-block; + text-align: left; + .header .panel & { + margin-right: 25px; + &:last-child { + margin-right: 0; + } + } + font-size: 11px; + vertical-align: middle; + .label { + display: none; + } + strong { + color: @primary5; + font-weight: 600; + } + .options { + display: inline-block; + position: relative; + z-index: 1; + > ul { + .resetList(); + margin: 0; + padding: 5px 10px; + position: absolute; + top: 100%; + right: 0; + margin-left: -11px; + min-width: 100%; + float: left; + background: @primary1; + border: 1px solid darken(@headerBg, 5%); + visibility: hidden; + opacity: 0; + .transition(visibility 0s linear 2s); + li { + margin: 5px 0; + white-space: nowrap; + } + } + &.active { + z-index: 999; + > ul { + visibility: visible; + opacity: 1; + .transitionDelay(0s); + } + } + &.active strong, + &:hover strong { + color: @primary6; + } + } +} + +.action.switch { + .resetAction(); + vertical-align: top; + color: @primary5; + span { + .iconAfter(@content: '\e02c', @font: "icons"); + .iconHideText(); + &:after { + line-height: 12px; + } + } + &:focus, + &:hover, + &.active { + color: @primary6; + } + &.active span:after { + content: "\e029"; + } + .no-js &:focus + ul { + visibility: visible; + opacity: 1; + .transitionDelay(0s); + } +} + +/* + Global Notices +-------------------------------------- */ +.notice.global.site { + .box-sizing(); + position: absolute; + width: 100%; + padding: 8px; + background: #4d5d64; + color: #fff; + top: 0; + left: 0; + text-align: center; + p { + margin: 0; + } +} + +/* + Reviews +-------------------------------------- */ +@starSize : 16px; +.reviews.summary { + line-height: @starSize; + .action { + font-size: @baseFontSizeMiddle; + } + .reviews.actions { + font-size: @baseFontSizeMiddle; + display: inline; + } + .action.view { + span:before { + content: ' '; + } + } + .action.view + .action.add { + &:before { + content: '\00A0|\00A0\00A0'; + display: inline-block; + color: @link; + } + } + &.short:not(.no-rating) { + .action.view { + span { + display: none; + } + &:before { + content: '('; + display: inline-block; + } + &:after { + content: ')'; + display: inline-block; + } + } + } +} + +.block.reviews.dashboard .rating, +.reviews.summary .rating { + width: 5 * @starSize; + margin-right: 3px; + line-height: 1; + color: fade(@secondary1, 30%); + display: inline-block; + vertical-align: top; + margin-top: -1px; + > span { + display: block; + overflow: hidden; + color: @secondary1; + height: 0; + padding-top: @starSize; + line-height: 1; + margin-top: -@starSize; + &:before { + margin-top: -@starSize; + } + } + &:before, + > span:before { + display: block; + top: 0; + left: 0; + width: 100%; + font-family: "icons"; + content: @icon-star@icon-star@icon-star@icon-star@icon-star; + font-style: normal; + font-size: @starSize; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + } +} + +/* + Customer Reviews +-------------------------------------- */ +.block.reviews.list { + margin: 0 0 30px -20px; + padding: 0; + > .title { + display: none; + } + .item.review { + padding: 15px; + .review.title { + font-weight: 600; + display: block; + margin: 15px 0; + } + &:nth-child(odd) { + background: @primary1; + } + } + .review.details { + .author { + strong { + text-transform: uppercase; + font-weight: 600; + } + } + .review.date { + font-size: 12px; + } + p { + margin: 5px 0; + span { + display: none; + } + } + } +} + +.block.add.review { + margin: 0 0 30px -20px; + padding: 20px; + background: @primary1; + .title { + display: none; + } + .fieldset { + .formFieldset(); + border: 0; + padding: 0; + margin: 0; + > .legend { + .box-sizing(); + float: left; + width: 100%; + margin: 0 0 20px; + padding: 10px 0 30px; + border-bottom: 1px solid; + .borderColor(@primary1); + & + br { + clear: both; + display: block !important; + } + span { + line-height: 1.2; + font-weight: @baseFontWeightLighter; + font-size: 20px; + } + strong { + margin-left: 20px; + font-size: @baseFontSize; + font-weight: 600; + } + } + > .field:not(.ratings) { + .formField(); + .fieldStyle(); + > .label { + padding: 0 0 5px; + } + } + } + .action.submit { + &:extend(.primary.action all); + } + .action.cancel { + .resetAction(); + .actionLink(); + position: absolute; + left: 100%; + text-decoration: underline; + text-transform: uppercase; + margin-left: 20px; + margin-top: 10px; + } + .actions, + .field:not(.ratings) { + width: 60%; + } + .actions { + padding-top: 20px; + text-align: right; + position: relative; + z-index: 1; + } +} + +/* + Review details +-------------------------------------- */ +.review.view { + .product.name { + display: inline-block; + margin: 0; + } + .product.details { + float: left; + margin-right: 30px; + } + .product.photo { + display: block; + margin-bottom: 30px; + } + .review.details { + margin: 30px 0; + display: table; + + .ratings.summary { + margin-bottom: 30px; + strong { + font-weight: 600; + display: block; + margin: 0 0 15px; + } + .item { + display: table-row; + } + .label { + padding: 0 0 10px; + padding-right: 10px; + display: table-cell; + &:after { + content: ': '; + } + } + } + .review.date { + font-size: @baseFontSizeMiddle; + } + .review.title { + font-weight: 600; + font-size: @baseFontSizeBigger; + margin: 0 0 15px; + } + } +} + +.customer.review.view + .actions { + clear: both; +} + +/* + Messages +-------------------------------------- */ +.page.messages { + .pageWidth(); + margin: 15px auto; +} + +/* + Magento_Checkout + One page +-------------------------------------- */ +.block.progress.onepage { + float: left; + width: 200px; + dt { + font-size: @baseFontSizeBigger; + font-weight: @baseFontWeight; + margin: 0 0 10px 0; + a { + font-size: @baseFontSize; + } + } + dd.complete { + padding: 0; + margin: 0 0 30px; + } + address { + font-style: normal; + } +} + +.opc.wrapper { + float: right; + width: 725px; + > .opc { + .resetList(); + .section { + margin-bottom: 4px; + > .step-title { + padding: 15px 20px; + line-height: 1; + background: @secondary1; + font-size: 22px; + h2 { + font-weight: @baseFontWeight; + font-size: 18px; + margin: 0; + padding: 0; + color: #fff; + } + .number { + display: none; + } + } + &.active { + > .step-title { + background: @primary1; + margin-bottom: 0; + h2 { + color: @primary6; + } + } + } + &.allow > .step-title { + cursor: pointer; + h2:after { + display: block; + } + } + > .step { + padding: 0 20px 20px; + background: @primary1; + &:before { + content: ''; + border-top: 3px solid @primary2; + display: block; + margin-bottom: 20px; + } + } + } + } + .form:not(.login) { + .fieldset { + .formCols(); + padding: 0; + margin: 20px 0; + border: 0; + } + .field { + .fieldStyle(); + &:not(.choice) { + .label { + display: block; + padding-bottom: 5px; + } + } + } + .actions { + .clearfix(); + text-align: right; + button.action { + float: right; + &:extend(.primary.action all); + } + .secondary { + padding-top: 10px; + clear: right; + float: right; + } + } + .field.fullname + .field.company, + .field.name-lastname + .field.company, + .field.country, + .field.taxvat { + margin: 0 40% 30px 0; + } + .field.confirm, + .field.password { + margin-top: 20px; + margin-bottom: 20px; + } + .field.choice { + width: 100%; + display: block; + } + .field.persistent, + .field.save { + margin: 20px 0 0; + } + .field.addresses { + margin-bottom: 20px; + } + &:after { + content: attr(data-hasrequired); + display: block; + letter-spacing: normal; + word-spacing: normal; + color: @secondary1; + } + } +} + +.opc.loading .active { + position: relative; + z-index: 1; + &:before { + content: ''; + display: block; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(255, 255, 255, 0.1); + } + .actions .action { + visibility: hidden; + width: 1px; + overflow: hidden; + } +} + +/* + Load Indicator +-------------------------------------- */ +.load.indicator { + display: inline-block; + padding: 8px; + vertical-align: middle; + span { + display: block; + line-height: 16px; + &:before { + content: ''; + margin-right: 5px; + display: inline-block; + width: 16px; + height: 16px; + background: url(../images/loader.gif) no-repeat 0 0; + background-color: @secondary1; + vertical-align: top; + } + } +} + +/* + Step Login +-------------------------------------- */ +.step.login.wrapper { + .clearfix(); + position: relative; + z-index: 1; + padding-bottom: 70px; + .block { + .column(6); + .box-sizing(); + .fieldset { + border: 0; + margin: 0; + padding: 0; + .field { + width: 100%; + } + } + &.guest { + padding-left: 50px; + &:before { + content: ''; + border-left: 1px solid @primary2; + position: absolute; + top: 0; + margin-left: -25px; + bottom: 20px; + } + } + } + button.action:not(.reload) { + &:extend(.primary.action all); + } + .actions { + position: absolute; + bottom: 0; + padding: 20px 0; + text-align: right; + margin: 0; + width: 50%; + .secondary { + font-size: @baseFontSizeMiddle; + margin-top: .5em; + line-height: 1.4em; + margin-bottom: -1.9em; + } + } + .guest .actions { + margin-left: -50px; + } +} + +.fieldset.guest { + > .field { + .fieldStyle(); + } +} + +/* + Step Review +-------------------------------------- */ +.checkout.submit.order { + .actions { + margin-top: 15px; + .clearfix(); + .primary { + float: right; + } + .secondary { + float: left; + line-height: 32px; + } + } +} + +.order.data.items { + tfoot tr:first-child td { + border-top: 3px solid @primary2; + padding-top: 15px; + } + tr.total td { + padding-top: 5px; + padding-bottom: 5px; + text-align: right; + } + tr.total:last-child td { + padding-bottom: 20px; + } + tr.grand.total td { + vertical-align: middle; + } + tr.grand.total .amount { + font-size: 24px; + color: @secondary1; + } +} + +.order.review.data { + th.col.price, + th.col.subtotal { + text-align: right; + padding-right: 10px; + } + th.col.item { + text-align: left; + padding-left: 20px; + } +} + +/* + Magento_Checkout + Multishipping +-------------------------------------- */ +.multicheckout { + &.progress { + .resetList(); + float: left; + width: 200px; + li { + font-size: 16px; + font-weight: 400; + margin: 0 0 10px 0; + &.active { + font-weight: bold; + } + } + + .form.address.edit { + float: right; + width: 725px; + } + } + &.form.address, + &.form.billing, + &.form.shipping, + &.form.overview, + &.success, + &.change.billing { + float: right; + width: 725px; + } + .title { + .clearfix(); + margin: 0 0 30px; + > strong { + font-size: 20px; + font-weight: 400; + margin: 4px 0 0; + } + } + .subtitle { + display: block; + .clearfix(); + margin: 0 0 20px; + > span { + font-size: 18px; + font-weight: normal; + margin: 4px 0 0; + } + } + .title, + .subtitle { + .action { + font-weight: 400; + font-size: 14px; + margin-left: 20px; + text-decoration: underline; + display: inline-block; + text-transform: lowercase; + &:hover { + text-decoration: none; + } + } + } + .content { + .clearfix(); + > .block { + margin-bottom: 20px; + &:last-child { + margin-bottom: 0; + } + } + } + address { + font-style: normal; + } +// Shipping metods + > .block.shipping .box, + > .block.billing .box { + &:extend(.profileBlockWithBg all); + margin-bottom: 20px; + &:last-child { + margin-bottom: 0; + } + } + > .block.shipping, + &.overview > .block.billing { + .box { + &.address { + float: left; + width: 49%; + } + &.method { + float: right; + width: 49%; + } + &.items { + clear: both; + } + } + } +// Overview + &.overview { + > .block.billing { + .clearfix(); + .box.method { + p { + margin: 0 0 10px; + } + th, + td { + font-size: 14px; + padding: 0; + } + } + } + > .block.shipping { + .content { + margin-bottom: 20px; + &:last-child { + margin-bottom: 0; + } + } + } + .checkout.agreements { + .resetList(); + margin: 10px 0; + .item { + margin: 0 0 10px; + &:last-child { + margin: 0; + } + } + .agreement { + background-color: @primary1; + border: 1px solid @primary2; + font-size: 11px; + overflow: auto; + margin: 0 0 10px; + padding: 15px; + } + } + > .checkout.review { + .grand.total { + margin: 15px 0; + text-align: right; + .label { + font-size: 18px; + font-weight: 400; + } + .price { + color: @secondary1; + font-size: 24px; + font-weight: 700; + } + } + } + } + +// Oher goods (can't be shipped: virtual, downloadable) + .block.other .content { + &:extend(.profileBlockWithBg all); + } + +// Change billing + &.change.billing { + .box { + .box-sizing(); + background: @primary1; + float: left; + margin-bottom: 20px; + margin-left: 2%; + padding: 30px; + width: 49%; + &.odd { + clear: left; + margin-left: 0; + } + .actions { + margin: 15px 0 0; + } + } + .actions { + clear: left; + } + } + +// Actions + .actions { + .clearfix(); + margin: 20px 0; + } + &.change.billing .actions { + margin-top: 0; + } + .action { + &.update { + &:extend(.secondary.action all); + } + &.back { + float: left; + margin: 9px 0 0; + span:before { + content: "\00AB\00A0"; + } + } + &.continue, + &.submit { + &:extend(.primary.action all); + &.disabled { + opacity: 0.3; + &:hover { + background: @primaryActionBg; + } + } + } + &.add { + &:extend(.primary.action all); + float: right; + text-decoration: none; + text-transform: uppercase; + } + } + &.success .action.continue { + &:extend(.button.link all); + text-decoration: none; + text-transform: none; + } + +// Tables + .product.name { + margin-bottom: 0; + } + .items.data { + td.col.address { + padding-top: 10px; + } + td.col.delete, + td.col.product { + padding-top: 18px; + } + .col { + &.item { + padding-left: 0; + text-align: left; + } + } + th.col { + &.item, + &.qty { + padding-bottom: 5px; + } + } + .mark, + .amount { + text-align: right; + } + tfoot tr { + &.total { + &:first-child td { + border-top: 3px solid #e5e5e5; + padding-top: 15px; + } + &:last-child td { + border-bottom: 0; + } + td { + padding-top: 5px; + padding-bottom: 5px; + text-align: right; + + } + &.grand { + td { + vertical-align: middle; + } + .amount { + color: @secondary1; + font-size: 24px; + } + } + } + } + .applicable { + padding-top: 7px; + } + } + .block .items.data { + tr td { + &:first-child { + padding-left: 0; + } + &:last-child { + padding-right: 0; + } + } + } + .shipping .items.data tr:last-child td { + border-bottom: 1px solid @primary2; + } + .sp-methods, + .items.methods { + margin: 0; + dt { + margin: 0; + } + dd { + margin: 0; + padding: 0; + ul { + margin: 0 0 15px; + padding: 10px; + } + } + } + &.form.address { + .col.address select { + max-width: 450px; + } + } +} + +.checkout-multishipping-address-newshipping, +.checkout-multishipping-address-editshipping { + .form.address.edit { + float: right; + width: 725px; + } +} + +.block.gift.message { + margin: 30px 0 0; + .title { + font-size: 16px; + font-weight: 400; + margin-bottom: 15px; + } +} + +/* + Magento_Checkout + Gift Message +-------------------------------------- */ +.gift.message { + > .legend { + font-size: 16px; + margin: 0 0 20px; + } + .block.items { + .box-sizing(); + border: 1px solid @primary2; + height: 310px; + overflow: auto; + padding: 20px; + + } + dt { + margin: 30px 0 0; + &:first-child { + margin: 0; + } + .title { + font-size: 16px; + margin: 0 0 15px; + } + > .price { + margin: 0 0 10px; + } + } + dd { + margin: 20px 0 0 20px; + } + .field.choice input { + margin-right: 5px; + margin-top: 2px; + vertical-align: top; + } + .design { + .clearfix(); + margin: 10px 0 0; + img { + height: 75px; + width: 75px; + float: left; + margin-right: 15px; + } + > .price { + float: left; + } + } + .field.gift.wrapping { + .label { + display: block; + padding-bottom: 5px; + } + .control { + select { + width: 100%; + } + } + } + .activate.message { + display: inline-block; + margin: 10px 0 0; + + div { + .fieldset { + margin-top: 0; + } + } + } + .field.gift.wrapping .design > .price, + dt > .price { + > .price { + display: block; + > span { + display: inline-block; + } + } + } + .no-display { + display: none; + } + .options.order { + .field.gift.wrapping, + .field.text { + width: 100%; + } + } + .options.individual { + ol { + .resetList(); + } + li { + .clearfix(); + border-bottom: 1px solid @primary2; + margin: 0 0 15px; + padding: 0 0 15px; + overflow: hidden; + } + .number { + border-bottom: 1px solid @primary2; + color: @primary4; + margin: 0 0 15px; + padding: 0 0 5px; + } + .product { + float: left; + margin-right: 20px; + text-align: center; + > .product { + float: none; + margin: 0; + } + .img { + margin-bottom: 5px; + } + } + .options-items-container { + width: 100%; + .field { + .box-sizing(); + width: 100%; + } + } + .field.text { + width: 100%; + } + .item.options { + overflow: hidden; + } + } + .extra-options-container { + margin: 10px 0 0; + .field.choice { + margin: 0 0 10px; + } + } + .multicheckout & { + margin: 20px 0; + .fieldset { + margin: 20px 0; + } + .block.message { + margin: 0; + .fieldset { + margin: 0; + } + } + .field { + display: inline-block; + padding-right: 20px; + vertical-align: top; + width: 50%; + } + } +} +.data.table .gift.wrapping { + font-size: 13px; + margin: 0; + dt { + font-weight: 600; + margin: 5px 0 0; + } + dd { + margin: 0 0 5px; + } +} + +/* + Magento_Checkout + Shopping Cart +-------------------------------------- */ +.cart.container { + .clearfix(); + position: relative; + z-index: 1; +} + +.cart.main.actions { + padding: 20px 0; + .action.continue { + position: absolute; + text-decoration: underline; + right: 0; + top: 3px; + } + .action.update, + .action.clear { + &:extend(.secondary.action all); + } +} + +.items.data { + width: 100%; + thead tr:last-child th { + padding-bottom: 10px; + } + th.col.item > span { + display: none; + } + td.col.qty { + width: 40px; + padding-top: 20px; + text-align: center; + .review & { + padding-top: @baseFontSizeBigger; + } + } + th.col.qty { + text-transform: uppercase; + } + input.qty { + width: 50px; + text-align: center + } + td.col.price, + td.col.subtotal { + text-align: right; + } + .product.photo { + padding-right: 20px; + display: table-cell; + width: 1%; + vertical-align: top; + } + .product.details { + display: table-cell; + width: 99%; + vertical-align: top; + } + .item.actions { + text-align: right; + div.actions { + padding-bottom: 30px; + } + } + td { + border-left:0; + border-right:0; + padding: 26px 10px 10px; + vertical-align: top; + background: transparent; + } + td:first-child { + padding-left: 20px; + } + td:last-child { + padding-right: 20px; + } + tbody:nth-child(even) tr { + background: @primary1; + } + th { + border-left:0; + border-right:0; + text-align: center; + font-weight: @baseFontWeight; + font-size: @baseFontSize; + vertical-align: top; + } + tr:first-child th { + font-weight: @baseFontWeight; + font-size: @baseFontSizeBigger; + } + .item.actions td { + padding: 0 20px 10px; + line-height: 16px; + .action { + margin-left: 20px; + } + .action.towishlist { + font-size: @baseFontSize; + } + .action.delete { + vertical-align: top; + margin-top: 0; + } + &:before { + content: ''; + border-top: 1px solid @primary2; + display: block; + height: 0; + overflow: hidden; + margin: 0 0 10px; + } + } + .item.options { + dt { + font-weight: @baseFontWeight; + display: inline; + margin-right: 10px; + float: left; + clear: left; + &:after { + content: ': '; + } + } + dd { + font-weight: @baseFontWeightLighter; + margin: 0 0 10px 10px; + padding: 0; + } + + } +} + +.cart.table.wrapper { + float: left; + width: 665px; +} + +.cart.summary { + position: relative; + z-index: 1; + margin-top: 33px; + background: @primary1; + display: inline-block; + width: 290px; + padding: 20px; + margin-left: 10px; + .summary.title { + font-size: 20px; + font-weight: 200; + display: block; + border-bottom: 3px solid @primary2; + padding-bottom: 15px; + } + .block { + margin-bottom: 0; + border-bottom: 1px solid @primary2; + > .title { + cursor: pointer; + padding: 10px 5px; + margin: 0; + line-height: 16px; + strong { + font-size: @baseFontSizeMiddle; + font-weight: 600; + &:after { + content: @icon-expand; + font-family: "icons"; + float: right; + font-weight: @baseFontWeight; + font-size: @baseFontSizeBigger; + line-height: 16px; + } + } + &.active strong:after { + content: @icon-collapse; + } + + } + > .content { + display: none; + padding: 15px 15px 20px; + } + &.active { + > .content { + display: block; + } + } + .fieldset { + padding: 0; + margin: 0; + border: 0; + .field { + margin: 0 0 10px; + } + } + font-size: @baseFontSizeMiddle; + input[type="text"] { + padding: 0 5px; + font-size: @baseFontSizeMiddle; + height: 30px; + } + .field:not(.choice) { + .label { + padding: 0 0 5px; + display: block; + } + } + select { + padding: 5px 5px 4px; + font-size: @baseFontSizeMiddle; + } + .action { + &:extend(.primary.action all) + ; + padding: 6px 11px 5px; + span { + font-size: @baseFontSizeMiddle; + line-height: 12px; + } + &.check span { + .actionLink(); + } + } + } +} + +.cart.container { + & > .summary.sticky { + position: fixed; + display: inline-block !important; + } + & > .summary.bottom { + position: absolute; + vertical-align: bottom; + bottom: 0; + } +} + +.cart &>.summary.fixed, +.cart.container &>.summary &>.container.fixed { + position: fixed; + top: 0; +} + +.cart.table.wrapper.detailed + .cart.summary { + margin-top: 54px; +} + +.block.shipping { + .content { + .clearfix(); + } + .fieldset.estimate { + .actions { + display: table-cell; + width: 1%; + white-space: nowrap; + vertical-align: bottom; + } + } + .fieldset.rates { + padding-top: 20px; + .actions { + text-align: right; + } + } + .field.postcode { + display: table-cell; + width: 99%; + vertical-align: bottom; + div.mage-error { + position: absolute; + } + padding-right: 10px; + } +} + +.block.discount { + .content { + .clearfix(); + } + .fieldset.coupon { + position: relative; + &.applied { + padding-bottom: 20px; + } + .field { + display: table-cell; + width: 99%; + vertical-align: bottom; + .label { + float: left; + margin-right: -100px; + } + input { + clear: left; + } + padding-right: 10px; + div.mage-error { + position: absolute; + } + } + .actions { + vertical-align: bottom; + display: table-cell; + width: 1%; + white-space: nowrap; + } + .action.cancel { + .resetAction(); + .actionLink(); + position: absolute; + left: 0; + bottom: 0; + margin-bottom: -15px; + span { + text-transform: none; + } + } + } +} + +.sp-methods, +.items.methods { + dt, + .item.title { + font-weight: bold; + } + dd, + .item.options { + margin: 0 0 15px; + padding: 10px; + } +} +.field.choice.payment { + > .label { + font-weight: bold; + } +} + +.data-table { + width: 100%; + border: 0; + td { + border-right: 1px solid @primary2; + padding: 5px; + vertical-align: top; + } + td:last-child { + border: 0; + } +} + +.cart.totals { + .table.totals { + width: 100%; + } + padding: 20px 0; + td, + th { + text-align: right; + padding: 4px 0 4px 5px; + } + td:not(:first-child) { + strong { + font-size: 24px; + color: @secondary1; + } + } + td:first-child { + text-align: left; + padding-left: 0; + strong { + font-size: @baseFontSize; + } + } +} + +.checkout.methods.items { + background: #fff; + padding: 20px; + .item { + margin: 15px auto; + text-align: center; + } + .action.multicheckout { + text-decoration: underline; + } +} + +/* + Magento_Checkout + Mini cart +-------------------------------------- */ +.minicart.wrapper { + float: right; + margin-right: 40px; + z-index: 11; + .block.minicart { + .clearfix(); + left: -100%; + margin-top: 15px; + position: absolute; + z-index: 2; + background: @primary1; + border: 2px solid darken(@primary1, 13%); + border-radius: 3px; + text-align: center; + padding: 58px 345px 25px 15px; + &:before { + content: ''; + border-left: 10px solid transparent; + border-right: 10px solid transparent; + border-bottom: 10px solid @primary1; + height: 0; + width: 0; + overflow: hidden; + display: block; + position: absolute; + top: 0; + margin-top: -10px; + margin-right: 25px; + right: 0; + zoom: 1; + z-index: 2; + } + > .content { + margin-top: -33px; + .subtotal { + .clearfix(); + .mark { + display: inline-block; + font-weight: 600; + font-size: 18px; + float: left; + line-height: 24px; + } + > .amount { + text-align: right; + float: right; + display: inline-block; + font-weight: @baseFontWeightBolder; + font-size: 24px; + line-height: 24px; + color: @secondary1; + } + .amount.incl.tax { + display: block; + font-size: @baseFontSize; + &:after { + content: ')'; + } + .price:after { + content: ' ('; + } + } + } + .disclaimer { + font-size: @baseFontSizeMiddle; + } + .actions { + .secondary { + margin-top: 15px; + margin-bottom: -15px; + text-align: right; + a { + color: @secondary1; + } + } + } + .subtitle { + display: block; + text-align: left; + padding: 0 50px; + margin: 0 0 15px 0; + font-weight: @baseFontWeight; + &.empty { + margin: 10px -320px 0 0; + padding: 0; + float: right; + width: 310px; + clear: right; + } + } + } + .minicart.empty.text, + > .title, + > .content .subtotal, + > .content .disclaimer, + > .content > .actions { + margin: 0 -330px 15px 0; + text-align: left; + float: right; + width: 310px; + clear: right; + } + > .title { + .text { + display: none; + } + .qty:before { + content: attr(title) ": "; + } + } + .minicart.empty.text { + margin-top: 15px; + } + > .title strong { + font-weight: 400; + } + } + &.active { + &:before { + content: ''; + position: fixed; + z-index: 1; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: #000; + opacity: 0.01; + } + position: relative; + z-index: 11; + .block.minicart { + left: auto; + right: -20px; + } + } + .action.previous, + .action.next { + .resetAction(); + width: 25px; + overflow: hidden; + span { + .iconAfter(@content: @icon-arrow-right-thick, @size: 42px, @font: "icons"); + .iconHideText(42px); + color: @primary3; + margin-left: -10px; + overflow: hidden; + } + &[disabled] { + opacity: 0.3; + } + position: absolute; + right: 10px; + top: 50%; + margin-top: -22px; + } + .action.previous { + right: auto; + left: 0; + span:after { + content: @icon-arrow-left-thick; + } + } + .action.close { + position: absolute; + top: 10px; + right: 15px; + } + p { + clear: both; + } +} + +.block.minicart.empty > .title, +.eq-ie8 .minicart.wrapper.active:before { + display: none; +} + +/* + Product options +-------------------------------------- */ +.minicart { + @textColor: @primary6; + @optionsBg: rgba(0, 0, 0, .8); + @optionsColor: #fff; + .product.options.wrapper { + position: relative; + display: inline; + z-index: 1; + margin: 7px 0; + .more { + color: @textColor; + font-size: @baseFontSizeMiddle; + line-height: 1; + padding: 0; + border-bottom: 1px dotted @textColor; + cursor: help; + } + &:hover { + z-index: 99; + .product.options.details { + display: block; + } + &:before { + content: ''; + border-left: 10px solid @optionsBg; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + height: 0; + width: 0; + overflow: hidden; + display: block; + position: absolute; + top: 0; + margin-top: 0; + left: -10px; + zoom: 1; + z-index: 2; + } + } + + } + .product.options.details { + display: none; + position: absolute; + background: @optionsBg; + border-radius: 6px; + padding: 10px; + right: 100%; + top: 50%; + margin-top: -20px; + margin-right: 10px; + float: left; + max-width: 200px; + min-width: 100px; + .title { + font-weight: 600; + } + color: @optionsColor; + } + .product.options.list { + padding-left: 10px; + dt { + font-size: @baseFontSizeMiddle; + display: inline; + margin: 0; + padding: 0; + font-weight: 600; + &:after { + content: ': '; + } + &:before { + content: ''; + display: block; + } + } + dd { + font-size: @baseFontSizeMiddle; + display: inline-block; + padding: 0; + margin: 0; + } + } + .item:not(.shown) + .shown, + :first-child { + .product.options.details { + right: auto; + left: 100%; + margin-left: 10px; + } + .product.options.wrapper:before { + border-right: 10px solid @optionsBg; + border-left: 0; + left: auto; + right: -10px; + } + } +} + +.minicart.wrapper .block.minicart > .content > .actions .primary { + .clearfix(); + text-align: center; + .checkout.paypal { + display: inline; + input[type="image"] { + margin-top: 5px; + float: left; + } + &:after { + float: none; + } + } + .checkout.paypal + .action.checkout { + float: right; + } +} + +.block.minicart { + .products.minilist { + @itemWidth : 187px; + float: left; + padding: 0; + border-right: 1px solid darken(@primary1, 13%); + max-width: @itemWidth*3; + padding: 0 30px; + position: relative; + z-index: 1; + .minilist.items { + position: relative; + white-space: nowrap; + } + &.animation { + .items-wrapper { + overflow: hidden; + } + position: relative; + .item { + visibility: visible; + } + } + .item { + padding: 0 20px; + .box-sizing(); + vertical-align: top; + text-align: left; + &:before { + content: ''; + width: 0; + display: block; + border-left: 1px solid darken(@primary1, 13%); + height: 100%; + margin-left: -20px; + position: absolute; + } + &.item:not(.shown) + .shown:before, + &:first-child:before { + display: none; + } + white-space: normal; + display: none; + display: inline-block; + width: @itemWidth; + visibility: hidden; + .box-sizing(); + margin-left: 0; + + .wrapper.active &.shown { + visibility: visible; + } + &.hidden { + margin-left: -@itemWidth !important; + } + + .product.photo { + display: block; + margin-bottom: 10px; + .photo.container { + overflow: visible !important; + margin: 0 auto; + } + .photo.image { + border: 1px solid darken(@primary1, 11%); + display: block; + margin: 0 auto; + } + } + .pricing { + margin-top: 10px; + &:not(.complex) { + .label.display { + display: none; + } + } + .label:after { + content: ': '; + } + } + .actions { + float: right; + } + .action.edit { + font-size: @baseFontSizeMiddle; + } + .product.options.wrapper + .action.edit { + margin-right:8px; + &:before { + content: '|'; + display: inline-block; + text-decoration: none; + padding: 0 8px; + margin-right:-16px; + } + &:hover:before { + color: @primary6; + } + } + .action.delete { + position: absolute; + margin-left: -5px; + margin-top: -1.35em; + bottom: 0; + } + } + } +} + +.eq-ie8 .block.minicart { + .products.minilist { + .action.delete, + .action.edit { + visibility: hidden; + } + .shown { + .action.delete, + .action.edit { + visibility: visible; + } + } + .item { + &:before { + border-left: 0; + } + } + } +} + +.action.delete { + display: inline-block; + span { + color: @primary3; + .iconAfter(@content: @icon-trash, @font: 'icons'); + .iconHideText(); + } + &:focus, + &:active, + &:hover { + outline: none; + span { + color: @primary4; + } + } +} + +.action.checkout { + &:extend(.primary.action all); +} + +.action.checkout.shadow { + span { + text-shadow: 0px 1px 2px #000; + } +} + +.action.close { + .resetAction; + span { + .iconAfter(@content: @icon-close-thick, @size: 11px, @font: 'icons'); + .iconHideText(11px); + } +} + +.action.showcart { + .iconAfter(@content: @icon-cart, @size: 32px, @font: 'icons'); + .iconHideText(32px); + margin-top: 20px; + margin-left: 20px; + color: @primary5; + position: relative; + &:hover, + &:active, + &:focus, + &.active { + color: @primary4; + outline: none; + } + + .qty { + position: absolute; + left: 70%; + top: 0; + margin-top: -30%; + text-indent: 0; + background: @secondary1; + display: inline-block; + border: 1px solid @secondary1; + border-radius: 50px; + font-size: @baseFontSize; + font-weight: 600; + color: #fff; + @height: 1.7em; + line-height: @height; + vertical-align: middle; + .box-sizing(); + min-width: 1.1 * @height; + min-height: @height; + text-align: center; + padding: 0 4px; + } + .qty.empty { + display: none; + } +} + +/* + Paypal button +-------------------------------------- */ +.checkout.paypal { + display: none; + input[type="image"] { + display: inline-block; + vertical-align: top; + } + display: inline-block; + vertical-align: top; + &.before:before { + content: "- " attr(data-label) " -"; + text-transform: uppercase; + display: inline-block; + line-height: 32px; + font-size: @baseFontSize; + vertical-align: middle; + margin: 0 5px; + } + &.after:after { + content: "- " attr(data-label) " -"; + text-transform: uppercase; + display: inline-block; + line-height: 32px; + font-size: 14px; + vertical-align: middle; + margin: 0 5px; + } +} + +.box.tocart .checkout.paypal { + &.after:after { + display: none; + } + &.after:before { + content: "- " attr(data-label) " -"; + text-transform: uppercase; + display: inline-block; + line-height: 32px; + font-size: @baseFontSize; + vertical-align: middle; + margin: 0 5px; + } +} + +.checkout.methods .checkout.paypal { + &.after:after { + display: block; + text-align: center; + } +} + +/* + Magento_Sales +-------------------------------------- */ +.block.reorder { + padding-right: 30px; + .item { + padding-left: 20px; + input { + float: left; + margin-top: 2px; + margin-left: -20px; + } + } + .subtitle { + display: block; + margin: 0 0 15px; + font-weight: 600; + } + .actions { + margin: 15px 0 0; + .primary, + .secondary { + margin-right: 5px; + display: inline-block; + vertical-align: middle; + } + } +} + +/* + Magento_Newsletter +-------------------------------------- */ +.block.newsletter { + @fit: 45px; + text-align: left; + .title { + display: none; + } + .field { + .clearfix(); + } + .label { + display: block; + font-size: 16px; + margin-bottom: 10px; + line-height: 1.2; + } + .control { + float: left; + width: 100%; + .box-sizing(); + padding-right: @fit; + } + .actions { + padding-left: 10px; + float: right; + margin-left: -@fit; + } + input[type="text"] { + width: 100%; + } + .footer & { + width: 310px; + float: right; + } +} + +.action.subscribe { + .resetAction(); + background: @secondary1; + border-radius: 3px; + padding: 7px; + border: 1px solid @secondary1; + vertical-align: top; + span { + .iconAfter(@content: @icon-envelope, @font: 'icons'); + .iconHideText(); + color: #fff; + } +} + +.form.newsletter.manage { + .fieldset { + margin: 0 0 20px; + padding: 0; + border: 0; + .legend { + float: left; + margin: 0 0 20px; + font-weight: 600; + } + .legend + br { + display: block; + clear: both; + } + } + .action.save { + &:extend(.primary.action all); + } + .actions .primary { + margin-bottom: 15px; + } +} + +/* + Widgets +-------------------------------------- */ +.widget ul { + .resetList(); +} + +/* + Magento_Catalog + Compare +-------------------------------------- */ +.block.compare { + > .title .qty { + font-size: 16px; + margin-right: -5px; + &:before { + content: '('; + } + &:after { + content: ')'; + } + } + .item { + padding-right: 20px; + overflow: hidden; + } + .product.name { + float: left; + } + .action.delete { + margin-right: -20px; + float: right; + } + .action.compare { + &:extend(.secondary.action all); + float: right; + } + .action.clear { + float: left; + margin-top: 10px; + } + .actions { + .clearfix(); + margin-top: 15px; + } +} + +.catalog-product-compare-index { + .action.print { + float: right; + margin-top: -50px; + } +} + +.comparison.wrapper { + clear: both; + position: relative; + z-index: 1; + &:after { + content: ''; + position: absolute; + z-index: 2; + right: 0; + top: 0; + height: 100%; + width: 15px; + } + margin-bottom: 50px; +} + +.comparison.container { + overflow-y: hidden; + overflow-x: auto; +} + +.data.comparison { + table-layout: fixed; + + .cell.label { + width: 130px; + padding-left: 10px; + font-weight: 600; + text-align: left; + border-right: 1px solid @primary2; + .attribute.label { + display: block; + width: 100%; + word-break: break-all; + } + &.product { + border-bottom: 1px solid @primary2; + } + } + .cell { + padding: 15px; + vertical-align: top; + p:first-child { + margin-top: 0; + } + .attibute.value { + width: 100%; + overflow: hidden; + } + } + .cell.product { + width: 140px; + &.info { + border-bottom: 1px solid @primary2; + } + } + .cell.attribute { + font-size: @baseFontSizeMiddle; + } + td:last-child { + border-right: 1px solid @primary2; + } + tr:nth-child(odd) .cell.attribute { + background-color: @primary1; + } + .product.photo { + .img.photo.container { + display: inline-block !important; + } + text-align: center; + display: block; + margin: 0 auto 15px; + } + .actions, + .price-box, + .product.rating, + .product.name { + margin: 15px 0; + } + .addto.links { + margin-top: 15px; + padding-top: 15px; + border-top: 1px solid @primary2; + font-size: @baseFontSizeMiddle; + } + .cell.remove { + padding-top: 0; + padding-bottom: 0; + text-align: right; + .action.delete { + &:extend(.secondary.action all); + float: right; + padding: 4px; + span { + overflow: hidden; + line-height: 0; + &:after { + content: @icon-close-thick; + font-size: @baseFontSizeMiddle; + color: #fff; + } + } + margin-right: -15px; + } + } +} + +.comparison.headings { + position: absolute; + z-index: 2; + top: 0; + left: 0; + width: auto; + background-color: @pageMainBg; + th { + background-color: @pageMainBg; + } +} + +/* + Magento_Catalog + Compare +-------------------------------------- */ +.item.link.compare { + .qty { + &:before { + content: '('; + } + &:after { + content: ')'; + } + } +} + +/* + Magento_Catalog + Product lists +-------------------------------------- */ +.productItems() { + @spacing: 0 0 10px; + .item.product { + .column(4); + .box-sizing(); + .col3-layout & { + width: 50%; + } + display: inline-block; + vertical-align: top; + margin: 0; + padding: 20px; + float: none; + .product.photo { + float: left; + margin-right: 20px; + } + .product.details { + overflow: hidden; + } + .product.name, + .price-box { + margin: @spacing; + } + .addto.links { + .action:after { + content: ''; + display: block; + } + } + .actions { + visibility: hidden; + .primary { + margin: 0 0 10px; + } + } + &:hover { + .actions { + visibility: visible; + } + } + } +} + +.blocklist() { + clear: both; + margin: 30px 0; + padding-top: 25px; + border-top: 1px solid @primary2; + .products.list { + clear: both; + margin: 0 -20px; + .productItems(); + } +} + +.block.related { + .action.select { + .resetAction(); + .actionLink(); + } + .field.choice.related { + margin: 0 0 10px; + } +} + +.block.widget.viewed, +.block.crosssell, +.block.upsell, +.block.related, +.block.widget.new, +.block.widget.compared { + .blocklist(); +} + +.block.crosssell { + .products.list.items.crosssell { + margin: 0 -13px; + .item.product { + .column(2); + padding: 13px; + .product.photo { + float: none; + display: block; + margin: 0 0 10px; + } + margin-bottom: 90px; + .actions { + position: absolute; + } + } + } +} + +.block.widget.viewed { + .products.list.items.widget-viewed-grid { + .item.product { + .column(2); + float: none; + display: inline-block; + .col2-left-layout &, + .col2-right-layout & { + width: 19.99%; + } + .col3-layout & { + width: 25%; + } + .product.photo { + float: none; + display: block; + margin: 0 0 10px; + } + } + } + .products.list.items.widget-viewed-list { + .item.product { + .column(12); + float: none; + display: inline-block; + } + } +} + +.block.widget.compared { + .products.list.items.widget-compared-grid { + .item.product { + .column(2); + float: none; + display: inline-block; + .col2-left-layout &, + .col2-right-layout & { + width: 19.99%; + } + .col3-layout & { + width: 25%; + } + .product.photo { + float: none; + display: block; + margin: 0 0 10px; + } + } + } + .products.list.items.widget-compared-list { + .item.product { + .column(12); + float: none; + display: inline-block; + } + } +} + +.block.widget.new { + .products.list.items.widget-new-grid { + .item.product { + width: 20%; + float: none; + display: inline-block; + .col2-left-layout &, + .col2-right-layout & { + .column(3); + float: none; + display: inline-block; + } + .col3-layout & { + .column(4); + float: none; + display: inline-block; + } + .product.photo { + float: none; + display: block; + margin: 0 0 10px; + } + } + } + .products.list.items.widget-new-list { + .item.product { + .column(12); + float: none; + display: inline-block; + } + } +} + +.product.info.detailed + .block.upsell, +.product.info.detailed + .block.related { + margin-top: 70px; + clear: none; + float: right; + width: 140px; + border-top: 0; + padding-top: 0; + padding-left: 25px; + border-left: 1px solid @primary2; + .products.list { + margin: 0; + .item.product { + display: block; + width: auto; + padding: 13px 0; + .product.photo { + float: none; + display: block; + margin: 0 0 10px; + } + } + } +} + +.block.widget { + @optionsHeigth: 23px; + .pager { + float: right; + .amount { + float: left; + line-height: @optionsHeigth + 2px; + margin: 2px 15px 0 0; + display: none; + } + .text { + display: none; + } + } + .pages { + margin-left: 15px; + float: left; + .label { + line-height: @optionsHeigth + 2px; + display: inline-block; + } + strong.label { + font-weight: 400; + float: left; + line-height: @optionsHeigth + 2px; + margin-top: 2px; + margin-right: 5px; + display: none; + } + input { + width: 30px; + margin: 0 5px; + text-align: center; + padding: 0 5px; + height: @optionsHeigth + 2px; + line-height: @optionsHeigth + 2px; + } + > ol { + .resetList; + display: inline-block; + vertical-align: top; + margin-top: 2px; + line-height: @optionsHeigth + 2px; + vertical-align: middle; + li { + display: inline; + } + strong, + a { + padding: 0 3px; + } + strong { + font-weight: 400; + color: @secondary1; + } + } + } + .action.next, + .action.previous { + overflow: hidden; + display: inline-block; + vertical-align: middle; + span { + color: @primary3; + .iconAfter(@content: '', @font: "icons"); + .iconHideText(); + } + } + .action.next span:after { + content: @icon-arrow-right-thin; + } + .action.previous span:after { + content: @icon-arrow-left-thin; + } +} + +/* + Magento_Catalog + Layered Navigation +-------------------------------------- */ +.block.filter { + .subtitle { + display: none; + } + > .content { + padding: 0; + } + .filtered { + .item { + border-top: 1px solid @primary3; + padding: 2px 0 5px; + margin: 0 0 5px; + position: relative; + z-index: 1; + } + .label { + font-weight: 600; + text-transform: uppercase; + display: block; + } + } + .action.remove { + overflow: hidden; + display: inline-block; + padding: 4px; + position: absolute; + top: -1px; + right: 0; + background: @primary3; + span { + color: #fff; + .iconAfter(@content: @icon-close-thick, @size: 13px, @font: "icons"); + .iconHideText(13px); + } + } + .actions { + margin-bottom: 30px; + } + .action.reset { + font-size: 12px; + text-transform: lowercase; + text-decoration: underline; + } + dt { + text-transform: uppercase; + } + dd { + margin: 0; + padding: 15px 0 25px; + } + .count { + font-size: 12px; + &:before { + content: ' ('; + } + &:after { + content: ')'; + } + } +} + +/* + Magento_Catalog + Product Listing +-------------------------------------- */ +.toolbar { + @optionsHeigth: 23px; + clear: both; + margin: 17px 0; + &:first-child { + margin-top: 0; + } + &.alternative { + direction: rtl; + .pager { + direction: ltr; + } + .settings { + display: inline; + direction: ltr; + } + .pages, + .amount, + .limiter { + border-left: 1px solid @primary2; + padding: 2px 0 2px 15px; + } + } + .amount { + display: none; + } + .clearfix(); + .settings { + display: inline; + } + .modes { + margin-left: 30px; + display: inline-block; + margin-top: 3px; + margin-right: 14px; + vertical-align: top; + .label { + display: none; + } + } + .limiter, + .sorter { + .clearfix(); + padding: 2px 0; + float: left; + display: inline-block; + select { + margin-top: 1px; + margin-right: 5px; + } + } + .options { + float: left; + border: 1px solid @primary2; + white-space: nowrap; + height: @optionsHeigth; + line-height: @optionsHeigth; + overflow: visible; + display: block; + padding: 0 7px; + .current { + font-weight: 400; + float: left; + padding-right: 7px; + } + ul { + .resetList(); + height: 0; + overflow: hidden; + clear: both; + padding: 0 30px 0 7px; + margin: 0 -8px; + border: 1px solid @primary3; + visibility: hidden; + top: -(@optionsHeigth + 1px); + background: #fff; + position: relative; + z-index: 2; + } + .action.switch { + float: right; + margin-top: 4px; + } + .selected { + color: @secondary1; + } + &.active { + ul { + height: auto; + visibility: visible; + } + } + } + .pager { + float: right; + .amount { + float: left; + line-height: @optionsHeigth + 2px; + margin: 2px 15px 0 0; + } + .text { + display: none; + } + } + .pages { + margin-left: 15px; + float: left; + .label { + line-height: @optionsHeigth + 2px; + display: inline-block; + } + strong.label { + font-weight: 400; + float: left; + line-height: @optionsHeigth + 2px; + margin-top: 2px; + margin-right: 5px; + display: none; + } + input { + width: 30px; + margin: 0 5px; + text-align: center; + padding: 0 5px; + height: @optionsHeigth + 2px; + line-height: @optionsHeigth + 2px; + } + > ol { + .resetList(); + display: inline-block; + vertical-align: top; + margin-top: 2px; + line-height: @optionsHeigth + 2px; + vertical-align: middle; + li { + display: inline; + } + strong, + a { + padding: 0 3px; + } + strong { + font-weight: 400; + color: @secondary1; + } + } + } +} + +/* + Magento_Catalog + Product List +-------------------------------------- */ +@imageHeight: 180px; +@imageWidth: 180px; + +.products.wrapper .products.list { + .item { + .product.photo { + display: block; + margin-bottom: 10px; + text-align: center; + > .photo { + display: block; + margin: 0 auto; + } + } + z-index: 1; + position: relative; + border: 1px solid transparent; + background: transparent; + &:hover { + border: 1px solid @primary3; + background: @primary1; + .product.actions { + opacity: 1; + visibility: hidden; + .action.tocart, + .secondary { + visibility: visible; + } + } + z-index: 99; + } + .product.actions { + opacity: 0.8; + visibility: hidden; + .action.tocart, + .secondary { + visibility: hidden; + } + } + .price-box, + .product.reviews { + display: block; + margin-bottom: 7px; + } + .secondary { + border: solid @primary3; + .box-sizing(); + white-space: nowrap; + position: absolute; + .action { + padding: 10px; + white-space: normal; + vertical-align: top; + display: inline-block; + line-height: 1; + } + } + } +} + +.products.wrapper.grid { + margin-bottom: 20px; +} + +.products.wrapper.grid .products.list { + .item.product { + @total-columns: 10; + .column(2); + display: inline-block; + float: none; + .col2-left-layout &, + .col2-right-layout & { + @total-columns: 12; + .column(3); + display: inline-block; + float: none; + margin-bottom: 30px; + } + .col3-layout & { + @total-columns: 12; + .column(4); + display: inline-block; + float: none; + margin-bottom: 30px; + } + padding: 9px 9px 9px; + vertical-align: top; + } + .secondary { + border-width: 1px; + background: @primary1; + top: 100%; + .box-sizing(); + left: -1px; + right: -1px; + .action { + padding: 10px 0; + text-align: center; + width: 49%; + } + } +} + +.products.wrapper.list .products.list { + margin-bottom: 20px; + .item.product { + .clearfix(); + display: block; + border-bottom: 1px solid @primary3; + padding: 9px 9px 9px 9px; + .product.details { + padding-bottom: 40px; + } + margin-bottom: -1px; + } + .product.details { + display: table; + } + .product.photo { + float: left; + margin-right: 9px; + margin-bottom: 0; + } + .secondary { + bottom: 0; + top: auto !important; + margin-left: 18px; + border-width: 1px 0 0; + right: 20px; + } + .product.description { + margin: 9px 0; + } +} + +/* + General product item styling +-------------------------------------- */ +.product.name { + color: @primary6; + font-weight: 600; + line-height: 1.2; + display: block; + margin-bottom: 10px; +} + +.price-box p, +.pricing p { + margin: 5px 0; + &:first-child { + margin-top: 0; + } + &:last-child { + margin-bottom: 0; + } +} + +.stock[title] { + line-height: 16px; + span:before { + content: ''; + line-height: 16px; + background: #42b649; + display: inline-block; + border-radius: 5px; + width: 10px; + height: 10px; + margin-right: 5px; + vertical-align: middle; + } + &.unavailable { + color: @primary3; + span:before { + background: @primary3; + } + } +} + +.product.item .product.description { + font-size: @baseFontSizeMiddle; +} + +.action.tocart { + &:extend(.primary.action all); + padding: 5px 11px; + + .block .product.actions & { + display: inline-block; + margin: 10px 0; + } +} + +.action.tocompare, +.action.towishlist { + font-size: 12px; + span:before { + content: "\002B\00A0"; + } + .item.product & { + margin-left: 0; + } +} + +/* + Magento_Catalog + Product View +-------------------------------------- */ +.fieldset { + .formFieldset(); + > .field { + .formField(); + } +} + +.product.info.main { + float: right; + width: 430px; + padding-bottom: 30px; + + .col2-left-layout &, + .col2-right-layout & { + width: 370px; + } + .col3-layout & { + float: none; + width: 100%; + } +} + +.product.info.main { + .price-box { + font-size: 20px; + padding-bottom: 10px; + margin: 15px 0; + line-height: 1.2; + font-weight: @baseFontWeightLighter; + } + .page.title.product + .price-box { + border-bottom: 1px solid @primary2; + } + p { + margin: 5px 0; + } + .old-price { + font-size: @baseFontSizeBigger; + .price-label { + //display: none; + } + .price { + text-decoration: line-through; + } + } + .special-price { + color: @secondary1; + } + .stock { + margin: 15px 0; + } + .product.options.bottom { + .price-box { + display: none; + } + } + .product.addto.links { + margin: 15px 0 0; + padding-top: 10px; + border-top: 1px solid @primary2; + .action { + float: left; + margin-right: 15px; + } + } +} + +.product.main.info { + .product.options.wrapper { + .field { + .fieldStyle(); + .formField(); + &:not(.choice) > .label { + .labelStyle(); + } + } + .type-configurable & { + select { + min-width: 40%; + width: auto; + padding: 2px; + } + } + } + .product.options.wrapper .fieldset { + margin: 0; + .field.required .control .field.choice .label span:after { + content: ""; + } + .field.date { + input[type="text"] { + width: auto; + } + } + .datetime-picker + .ui-datepicker-trigger { + margin: 0 15px 0 7px; + } + } +} + +.action.primary.customize, +.action.primary.tocart { + &:extend(.primary.action all); + line-height: 16px; + padding: 9px 15px; + span { + font-weight: 400; + font-size: @baseFontSizeBigger; + } +} + +.product.media { + float: left; + width: 540px; + padding-bottom: 30px; + + .col2-left-layout &, + .col2-right-layout & { + width: 400px; + } + .col3-layout & { + float: none; + width: 100%; + } +} + +.box.tocart { + .clearfix(); + margin: 15px 0; + .field { + float: left; + padding-right: 10px; + } + .label { + display: block; + text-align: left; + font-weight: 600; + text-transform: uppercase; + line-height: 25px; + } + .control { + width: 60px; + text-align: center; + } + .actions { + float: left; + padding-top: 24px; + } + .qty { + text-align: center; + } +} + +.prices.tier { + padding: 20px; + margin: 15px 0; + background: @primary1; + strong { + font-weight: @baseFontWeight; + } +} + +.product.social.links { + float: right; + text-align: right; +} + +.action.mailto { + span { + .iconAfter(@content: @icon-envelope, @font: "icons"); + .iconHideText(); + color: @primary3; + } +} + +.product.photo.thumbs { + float: left; + padding-left: 15px; + .title { + display: none; + } + .item.thumb { + margin-bottom: 8px; + img { + border: 1px solid transparent; + } + .active img { + border: 1px solid @primary5; + } + } +} + +.product.photo.main { + float: left; + text-align: center; + .notice { + font-size: 11px; + } +} + +.product.attibute.sku { + font-size: @baseFontSizeMiddle; + .value { + display: inline + } + .type:after { + content: '#'; + } +} + +@media only screen +and (max-width : 99999px) { + .product.data { + .column(10); + .data-tabs(); + .data-tabs-styling(); + } + + .temp-upsell-placeholder { + .column(2); + background: red; + height: 200px; + margin-top: 50px; + } +} + +@media only screen +and (max-width : 768px) { + .product.data { + .column(12); + .data-accordion(); + .data-accordion-styling(); + } + + .temp-upsell-placeholder { + .column(12); + background: red; + height: 200px; + margin-top: 20px; + } +} + +/* + Magento_Bundle + Product View +-------------------------------------- */ +body.type-bundle { + overflow-x: hidden; +} + +@media only screen +and (max-width : 768px) { + body.type-bundle { + overflow: auto; + .customize { + &:before { + left: -10px; + right: -10px; + + } + } + } +} + +.product.info.main { + .action.primary.customize { + margin: 40px 0; + } +} + +.bundle.options.container { + margin: 45px 0; + clear: both; + position: relative; + z-index: 1; + &:before { + position: relative; + z-index: 1; + content: ''; + display: block; + position: absolute; + left: -999em; + right: -999em; + z-index: -1; + background: @primary1; + top: 0; + bottom: 0; + } + + .product.add.form { + .clearfix(); + position: relative; + z-index: 1; + display: none; + padding: 45px 0; + } + .product.options.wrapper { + float: left; + width: 500px; + + .col2-left-layout &, + .col2-right-layout & { + width: 450px; + } + .col3-layout & { + width: 360px; + } + } + .product.options.bottom { + float: left; + width: 500px; + clear: left; + } +} + +.fieldset.bundle.options { + border: 0; + padding: 0; + margin: 0; + .legend { + font-size: 26px; + font-weight: 200; + float: left; + margin-bottom: 20px; + } + .legend + br { + display: block; + clear: both; + } + .bundle-slide-back { + float: right; + } + > .field { + > .label { + font-size: 20px; + font-weight: 200; + display: block; + margin-bottom: 20px; + } + margin: 0 0 50px; + padding: 20px; + background: @primary7; + &:last-child { + margin-bottom: 0; + } + } + .nested { + .field { + margin: 10px 0; + } + .field.qty { + margin-top: 20px; + .label { + display: inline-block; + vertical-align: middle; + span:after { + content: ':'; + } + } + .control { + width: 60px; + display: inline-block; + vertical-align: middle; + } + input { + text-align: center; + } + } + } +} + +.product.options.wrapper { + .nested.mage-error-group { + position: relative; + z-index: 1; + .field { + z-index: 2; + position: relative; + } + &:before { + z-index: 1; + border:1px solid @nonValidHilight !important; + background: fadeout(@nonValidHilight,96%); + content: ''; + left:-8px; + right:-8px; + top:-5px; + bottom:-5px; + display: block; + position: absolute; + } + } +} + +.block.bundle.summary { + background: @primary7; + margin-top: 54px; + float: right; + position: relative; + width: 380px; + + .col2-left-layout &, + .col2-right-layout & { + width: 320px; + } + .col3-layout & { + width: 230px; + } + > .title { + font-weight: 400; + border-bottom: 3px solid @primary2; + line-height: 1; + padding: 20px 20px 10px; + margin-bottom: 0; + } + .photo { + float: left; + border: 1px solid @primary2; + margin-right: 20px; + .photo { + float: none; + border: none; + margin-right: 0; + } + } + > .content { + padding: 20px; + } + .price-box { + .clearfix(); + padding: 20px 0 0; + clear: both; + line-height: 24px; + .price-label { + float: left; + font-size: 18px; + font-weight: 600; + } + .full-product-price { + float: right; + .price { + color: @secondary1; + font-weight: 700; + font-size: 24px; + } + } + } + .box.tocart { + padding: 10px 0 20px; + border-top: 1px solid @primary2; + border-bottom: 1px solid @primary2; + } + .addto.links { + .action { + font-size: 14px; + margin-right: 20px; + &:last-child { + margin-right: 0; + } + } + } + .subtitle { + display: block; + margin: 20px -20px 0; + font-weight: @baseFontWeightLighter; + font-size: 20px; + border-bottom: 3px solid @primary2; + line-height: 1; + padding: 20px 20px 10px; + margin-bottom: 0; + } + .bundle.summary { + div > ul { + list-style: none; + margin: 10px 0 0; + padding: 0; + > li { + margin: 0 0 10px; + > div > div { + margin: 0 0 5px; + } + } + } + } +} + +.action.back.customization { + .resetAction(); + .actionLink(); + position: absolute; + top: 57px; + right: 0; +} + +/* + CMS +-------------------------------------- */ +img[align="left"] { + margin: 0 22px 22px 0; +} + +img[align="right"] { + margin: 0 0 22px 22px; +} + +.home.main.slider { + img { + width: 100%; + display: block; + } +} + +/* + Magento_Customer +-------------------------------------- */ +.customer.welcome { + display: inline-block !important; + position: relative; + z-index: 1; + cursor: pointer; + .menu > ul { + font-weight: 600; + font-size: @baseFontSizeMiddle; + margin: 0; + position: absolute; + top: 100%; + margin-left: -11px; + float: left; + right: 0; + text-align: left; + background: @primary1; + border: 1px solid darken(@headerBg, 5%); + visibility: hidden; + opacity: 0; + .transition(visibility 0s linear .2s); + li { + margin: 15px; + display: block; + white-space: nowrap; + } + } + &.active { + z-index: 9999; + .menu > ul { + visibility: visible; + opacity: 1; + .transitionDelay(0s); + } + } + .header .content & .customer.name { + font-weight: 400; + span { + color: @primary5; + .iconAfter(@content: @icon-arrow-bottom-filled, @font: "icons"); + &:after { + line-height: @base-font-size; + } + } + &:focus span, + &:hover span, + &.active span { + color: @primary6; + outline: 0; + } + &.active span:after { + content: @icon-arrow-up-filled; + } + } + & + li { + display: none; + } +} + +.customer.welcome + li { + display: none !important; +} + +.login.container { + .clearfix(); + background: @primary1; + padding: 40px; + position: relative; + z-index: 1; + padding-bottom: 150px; + .block { + .box-sizing(); + float: left; + width: 50%; + > .title { + margin-bottom: 25px; + } + .actions { + .box-sizing(); + text-align: right; + position: absolute; + bottom: 140px; + width: 50%; + padding: 0 40px; + .secondary { + margin-bottom: -2em; + margin-top: 0.8em; + line-height: 1.2em; + float: right; + } + } + &.login { + padding-right: 90px; + .actions { + margin-left: -90px; + } + } + &.new { + padding-left: 40px; + .actions { + margin-left: -40px; + } + &:before { + content: ''; + border-left: 1px solid; + .borderColor(@primary1); + position: absolute; + top: 40px; + margin-left: -40px; + bottom: 60px; + } + } + } + .action.login, + .action.create { + &:extend(.primary.action all); + } +} + +.form.login { + .fieldset.login { + .formFieldset(); + .formInline(40%); + margin: 0; + padding: 0; + border: 0; + .field { + .fieldStyle(); + .label { + padding-top: 7px; + padding-right: 10px; + text-align: right; + } + } + } +} + +.action.reload { + .resetAction(); + position: absolute; + background: #fff; + padding: 2px; + span { + // TODO: add 'reload' icon to mui + .iconAfter(@content: @icon-info, @size: 22px, @font: "icons"); + .iconHideText(22px); + color: @secondary1; + text-shadow: 0px 1px rgba(0, 0, 0, 0.4); + } +} + +/* + Registration +-------------------------------------- */ +.form.send.friend, +.form.address.edit, +.form.edit.account, +.form.search.advanced, +.form.orders.search, +.form.contact, +.form.password.forget, +.form.create.account, +.form.wishlist.share, +.form.password.reset, +.form.paypal.review { + .fieldset { + .box-sizing(); + .formCols(); + .formFieldset(); + width: 690px; + background: @primary1; + padding: 30px 10px 30px 30px; + border: 0; + margin: 0 0 40px; + position: relative; + z-index: 1; + .legend { + float: left; + line-height: 1.2; + font-size: 20px; + font-weight: @baseFontWeight; + padding-bottom: 20px; + width: 100%; + padding: 0 40px 20px 0; + background: #fff; + margin: -30px -10px 30px -30px; + & + br { + display: block; + clear: both; + } + } + > .field { + .formField(); + .fieldStyle(); + > .label { + display: block; + padding: 0 0 5px; + } + margin-bottom: 20px; + } + > .field.note, + .field.street, + .field.choice.newsletter { + width: 100%; + } + .field.fullname { + width: 100%; + .fields.group-5 .field { + width: 20%; + } + } + .field.dob { + .fields.group .field { + width: 33%; + position: relative; + z-index: 1; + .label { + position: absolute; + bottom: 0; + font-size: @baseFontSizeMiddle; + line-height: 16px; + } + input { + margin-bottom: 16px; + } + } + } + } + .action.save, + .action.submit, + .action.add { + &:extend(.primary.action all); + } + .actions { + .clearfix(); + .primary { + float: right; + } + .secondary { + float: left; + } + width: 690px; + } + .fieldset.create.account { + &:after { + content: attr(data-hasrequired); + display: block; + position: absolute; + top: 100%; + left: 0; + padding: 10px 0 0; + letter-spacing: normal; + word-spacing: normal; + color: @secondary1; + } + } +} + +.form.send.friend { + .fieldset.recipients { + .fields { + .clearfix(); + margin-bottom: 30px; + position: relative; + z-index: 1; + .field { + .box-sizing(); + width: 50%; + padding-right: 20px; + float: left; + } + .action.delete { + position: absolute; + right: 0; + top: 50%; + } + } + } + .actions > .primary { + .action.submit { + float: right; + margin-left: 10px; + } + float: right; + text-align: right; + .action.add { + &:extend(.secondary.action all) + ; + } + .limit { + margin: 0; + display: inline-block; + } + } +} + +.form.address.edit .field.company, +.form.edit.account .field.password.current, +.form.edit.account .field.choice { + margin-right: 30%; +} + +.form.address.edit .field.note.default, +.form.address.edit .field.choice.set, +.form.wishlist.share .field.emails, +.form.wishlist.share .field.text, +.form.wishlist.share .field.choice { + width: 100%; +} + +// Move to other place +.form.search.advanced, +.form.orders.search, +.form.contact { + .box-sizing(); + background: @primary1; + padding: 40px; + .fieldset { + width: auto; + background: none; + margin-bottom: 0; + .legend { + background: none; + } + } + .actions { + width: auto; + padding-right: 30px; + text-align: right; + } + .action { + &:extend(.primary.action all); + } + .fields.range { + .field:first-child { + .control { + padding-right: 30px; + position: relative; + &:after { + content: '\2014'; + display: inline-block; + margin-right: 0; + position: absolute; + right: 6px; + top: 5px; + text-align: center; + width: 25px; + } + } + } + } +} + +.form.contact { + .fieldset { + .field { + float: left; + width: 40%; + margin-right: 60%; + &.comment { + width: 55%; + margin-left: -55%; + margin-right: 0; + float: none; + textarea { + min-height: 13.2em; + } + } + } + } +} + +/* + Review paypal express checkout order +-------------------------------------- */ +.paypal.review.view { + .paypal.subtitle.caption { + margin-bottom: 25px; + .action { + margin-left: 10px; + } + strong { + font-size: 20px; + font-weight: 200; + line-height: 1.2; + } + } + .form.paypal.review { + .fieldset { + width: 100%; + &.shipping.address { + float: right; + width: 49%; + } + &.billing.address { + float: left; + width: 49%; + } + &.shipping.method { + clear: both; + } + .nested { + margin-top: 10px; + } + } + } + .actions { + margin-top: 35px; + .action.update { + &:extend(.secondary.action all) + ; + margin-left: 10px; + } + } + .data.table.paypal.review.items { + width: 100%; + td, + th { + padding: 10px 20px; + text-align: left; + &.col.total { + text-align: right; + } + } + th { + font-size: 16px; + font-weight: 400; + } + tbody tr:nth-child(odd) td { + background: @primary1; + } + tfoot tr:first-child td { + border-top: 3px solid @primary2; + padding-top: 15px; + } + } +} + +/* + MISC +-------------------------------------- */ +.action.back { + span:before { + content: '\00AB\00A0'; + } +} + +/* + Magento_Customer + Account +-------------------------------------- */ +.col2-left-layout.account { + .column.main { + .column(9); + } + .column.left { + .column(3); + } +} + +.block.account.nav { + .title { + font-size: 18px; + } + .item { + margin-bottom: 10px; + &.current { + color: @secondary1; + } + } + .item strong { + font-weight: 400; + } +} + +.my-account { + .pager { + .amount, + .limiter { + display: inline-block; + } + } + .form { + .fieldset > .legend { + margin: 0 0 30px; + } + } + > .actions, + .form > .actions, + .block > .actions { + .clearfix(); + margin: 30px 0 0; + > .primary { + float: right; + } + > .secondary { + float: left; + } + } + + .data.table { + width: 100%; + td, + th { + padding: 10px 20px; + text-align: left; + &.col.actions { + white-space: nowrap; + .action:last-child { + margin-left: 20px; + } + } + em { + font-style: normal; + } + } + th { + font-size: 16px; + font-weight: @baseFontWeight; + } + tr:nth-child(odd) td { + background: @primary1; + } + } +} + +.block.dashboard { + .title .action, + .subtitle .action { + font-weight: @baseFontWeight; + font-size: @baseFontSize; + margin-left: 20px; + text-decoration: underline; + display: inline-block; + text-transform: lowercase; + span { + } + &:first-letter { + text-transform: uppercase; + } + } + .box { + .box-sizing(); + float: left; + width: 50%; + line-height: 1.666; + address { + font-style: normal; + } + } + .content { + .clearfix(); + } +} + +.block.dashboard:not(.welcome):not(.orders) { + .content { + background: @primary1; + padding: 30px; + } + .subtitle { + font-size: 18px; + font-weight: @baseFontWeightLighter; + display: block; + margin-bottom: 20px; + } +} + +.data.table.orders { + td, + th { + &.col.total { + text-align: right; + } + } +} + +/* + Address book +-------------------------------------- */ +.block.addresses:not(.dashboard) { + .box-sizing(); + float: left; + .title .action, + .subtitle .action { + font-weight: @baseFontWeight; + font-size: @baseFontSize; + margin-left: 20px; + text-decoration: underline; + display: inline-block; + text-transform: lowercase; + &:first-letter { + text-transform: uppercase; + } + } + .content { + background: @primary1; + padding: 30px; + } + .subtitle { + font-size: 18px; + font-weight: @baseFontWeightLighter; + display: block; + margin-bottom: 20px; + } + .box { + &:first-child { + margin-bottom: 30px; + } + } + address { + line-height: 1.666; + font-style: normal; + } + &.default { + float: left; + width: 60%; + } + &.list { + float: right; + width: 35%; + .item { + margin-bottom: 30px; + } + .item.actions { + margin-top: 15px; + } + .action { + margin-right: 10px; + } + } +} + +.customer-address-index .column.main .actions { + clear: left; +} + +/* + My Account -> My Product Reviews +-------------------------------------- */ +.data.table.reviews { + .product.name { + margin: 0; + } +} + +/* + My Account -> My Wishlist +-------------------------------------- */ +.data.table.wishlist { + @optionsBg: rgba(0, 0, 0, .8); + @optionsColor: #fff; + + margin-bottom: 15px; + + thead th { + padding-top: 0; + padding-bottom: 10px; + text-align: left; + font-weight: @baseFontWeight; + font-size: @baseFontSizeBigger; + } + + td, + th { + padding: 16px 10px 10px; + vertical-align: top; + } + + td:first-child, + th:first-child { + padding-left: 20px; + } + + td:last-child, + th:last-child { + padding-right: 20px; + } + + tbody tr:nth-child(even) { + background: @primary1; + } + + textarea { + width: 100%; + } + + .box.tocart .qty { + width: 50px; + } + + & + .actions { + .primary { + margin-bottom: 15px; + .action.share, + .action.update { + &:extend(.primary.action all); + padding: 5px 11px; + } + .action.update { + margin-left: 5px; + } + } + } + + .col.photo { + width: 100px; + } + .col.actions { + width: 200px; + } + + .item-options { + background: @optionsBg; + color: @optionsColor; + display: none; + position: absolute; + border-radius: 5px; + padding: 10px; + right: 100%; + top: 50%; + margin-top: -20px; + margin-right: 15px; + max-width: 200px; + min-width: 100px; + > p { + margin-top: 0; + } + dl { + margin: 0; + dt { + display: inline; + float: left; + clear: left; + font-weight: 600; + &:after { + content: ':'; + margin-right: 5px; + } + } + dd { + margin: 0; + } + } + } + + .truncated { + .truncated_full_value { + position: relative; + &.show { + &:before { + content: ''; + border-left: 10px solid @optionsBg; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + height: 0; + width: 0; + overflow: hidden; + display: block; + position: absolute; + top: 3px; + margin-top: 0; + left: -15px; + z-index: 2; + } + .item-options { + display: block; + } + } + } + .details { + font-size: @baseFontSizeMiddle; + border-bottom: 1px dotted @link; + cursor: help; + } + } +} + +/* + Page -> Advanced Search +-------------------------------------- */ +.form.search.advanced { + .range.price.fields.group { + .field { + .box-sizing(); + .column(6); + padding-right: 0; + } + .field:first-child input { + width: 96%; + } + } + .range.dates.fields.group { + .field { + .box-sizing(); + .column(6); + padding-right: 0; + .control { + padding-right: 20px; + } + } + .field:first-child .control { + padding-right: 50px; + .ui-datepicker-trigger { + right: 32px; + } + } + } + .group.price { + .addon { + .addafter { + color: @textColor; + border: none; + background: none; + } + } + } +} + +/* + Popular Search Terms +-------------------------------------- */ +.search.terms { + .resetList(); + .item { + display: inline-block; + margin-right: 3px; + } +} + +/* + My Account -> My orders +-------------------------------------- */ +.order.details { + .clearfix(); + + .status { + margin: 0 0 .5em; + line-height: 1.2; + font-weight: 400; + font-size: 30px; + float: left; + } + + .subtitle.caption, + .title { + strong { + line-height: 1.2; + font-weight: 200; + font-size: 20px; + } + .action { + margin-left: 10px; + } + } + + .subtitle.caption { + margin-bottom: 45px; + } + + .order.toolbar { + clear: none; + float: right; + + .action { + margin-left: 10px; + } + } + + .block.order { + float: left; + width: 48%; + padding-right: 2%; + + &.billing.address { + clear: left; + } + .content { + background: @primary1; + padding: 30px; + } + } + + .order.info { + clear: both; + + > dt { + line-height: 1.2; + font-weight: 200; + font-size: 20px; + } + + > dd { + margin: 10px 0 0 0; + background: @primary1; + padding: 30px; + + .items { + .clearfix(); + .item { + float: left; + margin-right: 15px; + } + } + } + } + + .additional.details { + margin-bottom: 45px; + .order.comments { + background: @primary1; + padding: 30px; + } + .subtitle.caption { + font-size: 20px; + font-weight: 200; + line-height: 1.2; + margin-bottom: 15px; + } + &.gift { + .gift.message { + background: @primary1; + padding: 30px; + dt { + margin: 0; + } + dd { + margin: 0 0 0 40px; + } + } + } + } +} + +.order.details.items { + .order.toolbar { + margin: 5px 0 0 0; + } + .order.title { + margin-bottom: 10px; + } + h3.product-name { + margin: 0; + } + .action.show { + text-decoration: none; + .iconAfter(@content: @icon-arrow-up-filled, @size: 12px, @font: "icons"); + &.expanded:after { + content: @icon-arrow-bottom-filled; + } + } +} + +.shipping-tracking-popup { + .action.close { + &:extend(.secondary.action all); + text-indent: 0; + + span { + width: auto; + text-indent: 0; + &:after { + content: ""; + display: none; + } + } + } +} + +.data.table.order { + margin-bottom: 45px; + width: 100%; + + thead th { + padding: 0 10px; + } + + thead tr:last-child th { + padding-bottom: 10px; + } + + td.col.qty { + width: 90px; + text-align: left; + } + + td.col.price, + td.col.subtotal { + text-align: left; + } + td { + padding: 16px 10px 10px; + vertical-align: top; + + h4 { + margin: 0; + } + } + td:first-child, + th:first-child { + padding-left: 20px; + } + td:last-child, + th:last-child { + padding-right: 20px; + } + tbody:nth-child(even) tr { + background: @primary1; + } + th { + text-align: left; + font-weight: 400; + font-size: 14px; + vertical-align: top; + } + tr:first-child th { + font-weight: 400; + font-size: 16px; + } + .item-options { + margin: 5px 0; + + dt { + font-weight: 400; + display: inline; + margin-right: 10px; + float: left; + clear: left; + + &:after { + content: ': '; + } + } + dd { + font-weight: 200; + margin: 0 0 5px 10px; + padding: 0; + } + } + + tfoot tr:first-child td { + border-top: 3px solid @primary2; + padding-top: 15px; + } + + &.tracking { + th, td { + padding: 0; + } + .label { + width: 40%; + } + } +} + +/* + My Account -> Billing agreements +-------------------------------------- */ +.billing.agreements { + .data.table { + margin-bottom: 40px; + } + .form.new.agreement { + .formCols(30%); + + .fieldset { + margin: 0; + > .legend { + margin: 0 0 20px; + } + } + + .action.create { + padding-top: 7px; + padding-bottom: 6px; + } + } +} + +/* + Overlay popup +-------------------------------------- */ +.window.overlay { + background: @primeBlackOpacity; + display: none; + min-height: 100%; + position: absolute; + top: 0; + left: 0; + width: 100%; + z-index: 990; + &.active { + display: block; + } +} + +.popup { + background: @primary7; + left: 50%; + top: 40%; + position: absolute; + margin: -85px 0 0 -250px; + width: 500px; + z-index: 1000; + position: fixed; + display: none; + &.active { + display: block; + } + .close span { + .iconHideText(); + } + .title { + font-size: 18px; + margin: 0 0 30px; + } +} diff --git a/app/design/frontend/magento_plushe/less/styles/base.less b/app/design/frontend/magento_plushe/less/styles/base.less new file mode 100644 index 0000000000000..eeff2fad496e1 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/styles/base.less @@ -0,0 +1,429 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +// #General reset +// For resetting default browser styles of standard html elements ClearLess library provides normalize or reset solution. Here we use **normalize**. It sets default parameters to certain values. +// +// **If the property of an element is not set directly in this document, it is inherited from normalize** (http://github.com/necolas/normalize.css) +// +// #General settings +// +// Applying custom font +// +// Setting font for html, body, button, input, select, textarea +// +// Reseting elements styles: nav ul, nav ol +// + +.font-face( "sourcesanspro", "@{baseDir}/fonts/sourcesanspro/sourcesanspro-200-normal-webfont", 200, normal, true ); +.font-face( "sourcesanspro", "@{baseDir}/fonts/sourcesanspro/sourcesanspro-200-normal-webfont", 200, normal, true ); +.font-face( "sourcesanspro", "@{baseDir}/fonts/sourcesanspro/sourcesanspro-400-normal-webfont", 400, normal, true ); +.font-face( "sourcesanspro", "@{baseDir}/fonts/sourcesanspro/sourcesanspro-600-normal-webfont", 600, normal, true ); +.font-face( "sourcesanspro", "@{baseDir}/fonts/sourcesanspro/sourcesanspro-700-normal-webfont", 700, normal, true ); +.font-face( "marvel", "@{baseDir}/fonts/marvel/marvel-400-normal-webfont", 400, normal, true ); + +.font-face( "icons", "@{baseDir}/fonts/icons/icons", 400, normal, true ); + +@baseDir: ~".."; //default + +html, body, button, input, select, textarea { + font: @baseFontWeight @baseFontSize/@baseLineHeight @baseFont; + color: @baseColor; +} + +nav ul, nav ol { + .resetList(); +} + +// # Headings +// +// ```html +//

    Heading 1

    +// +//

    Heading 2

    +// +//

    Heading 3

    +// +//

    Heading 4

    +// +//
    Heading 5
    +// +//
    Heading 6
    +// ``` +// + +h1 { + color: @h1color; + font: @h1font; +} + +h2 { + color: @h2color; + font: @h2font; +} + +h3 { + color: @h3color; + font: @h3font; +} + +h4 { + color: @h4color; + font: @h4font; +} + +h5 { + color: @h5color; + font: @h5font; +} + +h6 { + color: @h6color; + font: @h6font; +} + +// #Links +// +// ```html +// Link +// Visited link +// Hovered link +// Active link +// ``` +// + +a { + color: @link; + text-decoration: none; + &:visited { + color: @link; + } + &:hover, + &:active { + color: @linkHover; + } +} + +// #Inline markup +// +// #abbr +// +// ```html +// The abbr element and abbr element with title examples +// ``` + + +// #b +// +// ```html +// The b element example +// ``` + +// #strong +// +// ```html +// The strong element example +// ``` + +// #em +// +// ```html +// The em element example +// ``` +// + +// #i +// +// ```html +// The i element example +// ``` +// + +// #cite +// +// ```html +// The cite element example +// ``` +// + +// #code +// +// ```html +// The code element example +// ``` +// + +// #del +// +// ```html +// The del element example +// ``` +// + +// #s +// +// ```html +// The s element example +// ``` +// + +// #img +// +// ```html +// The img element example example +// ``` +// + +// #mark +// +// ```html +// The mark element example +// ``` +// + +// #q +// +// ```html +// The q element inside a q element example +// ``` +// + +q { + &:before { + content: "\201c"; + } + &:after { + content: "\201d"; + } + q { + &:before { + content: "\2018"; + } + &:after { + content: "\2019"; + } + } +} + +// #small +// +// ```html +// The small element example +// ``` +// + +// #sub +// +// ```html +// The subscript element example +// ``` +// + +// #sup +// +// ```html +// The superscript element example +// ``` +// + +// #u +// +// ```html +// The u element example +// ``` +// + +// #Paragraph +// +// ```html +//

    Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi luctus. Duis lobortis. Nulla nec velit. Mauris pulvinar erat non massa. Suspendisse tortor turpis, porta nec, tempus vitae, iaculis semper, pede.

    +//

    Cras vel libero id lectus rhoncus porta. Suspendisse convallis felis ac enim. Vivamus tortor nisl, lobortis in, faucibus et, tempus at, dui.

    +// ``` +// + +// #Ordered list +// +// ```html +//
      +//
    1. Item 1
    2. +//
    3. Item 2
    4. +//
    5. Item 3 +//
        +//
      1. Item 1
      2. +//
      3. Item 2
      4. +//
      5. Item 3
      6. +//
      +//
    6. +//
    7. Item 4
    8. +//
    +// ``` +// + +// #Unordered list +// +// ```html +//
      +//
    • Item 1
    • +//
    • Item 2
    • +//
    • Item 3 +//
        +//
      1. Item 1
      2. +//
      3. Item 2
      4. +//
      5. Item 3
      6. +//
      +//
    • +//
    • Item 4
    • +//
    +// ``` +// + +// #Descriptions +// +// ```html +//
    +//
    Title 1
    +//
    Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi luctus. Duis lobortis. Nulla nec velit. Mauris pulvinar erat non massa. Suspendisse tortor turpis, porta nec, tempus vitae, iaculis semper, pede. Cras vel libero id lectus rhoncus porta. Suspendisse convallis felis ac enim. Vivamus tortor nisl, lobortis in, faucibus et, tempus at, dui. Nunc risus. Proin scelerisque augue. Nam ullamcorper. Phasellus id massa. Pellentesque nisl. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nunc augue. Aenean sed justo non leo vehicula laoreet. Praesent ipsum libero, auctor ac, tempus nec, tempor nec, justo.
    +//
    Title 2
    +//
    Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi luctus. Duis lobortis. Nulla nec velit. Mauris pulvinar erat non massa. Suspendisse tortor turpis, porta nec, tempus vitae, iaculis semper, pede. Cras vel libero id lectus rhoncus porta. Suspendisse convallis felis ac enim. Vivamus tortor nisl, lobortis in, faucibus et, tempus at, dui. Nunc risus. Proin scelerisque augue. Nam ullamcorper. Phasellus id massa. Pellentesque nisl. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nunc augue. Aenean sed justo non leo vehicula laoreet. Praesent ipsum libero, auctor ac, tempus nec, tempor nec, justo.
    +//
    +// ``` +// + +// #Table +// +// ```html +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +//
    #Column 1Column 2Column 3
    1Cell 4Cell 5Cell 6
    2Cell 7Cell 8Cell 9
    3Cell 10Cell 11Cell 12
    4Cell 13Cell 14Cell 15
    5Cell 16Cell 17Cell 18
    +// ``` +// + +table { + th { + border-right: 1px solid @primary2; + font-size: @baseFontSizeBigger; + padding: 7px 10px; + &:last-child { + border-right: 0; + } + } + td { + border-right: 1px solid @primary2; + padding: 7px 10px; + vertical-align: top; + &:last-child { + border-right: 0; + } + } + tbody tr:nth-child(odd) td { + background: @primary1; + } +} + +// #Blockquote +// +// ```html +//
    +//

    The cite element represents the title of a work (e.g. a book, a paper, an essay, a poem, a score, a song, a script, a film, a TV show, a game, a sculpture, a painting, a theatre production, a play, an opera, a musical, an exhibition, a legal case report, etc). This can be a work that is being quoted or referenced in detail (i.e. a citation), or it can just be a work that is mentioned in passing.

    +//

    A person's name is not the title of a work — even if people call that person a piece of work — and the element must therefore not be used to mark up people's names. (In some cases, the b element might be appropriate for names; e.g. in a gossip article where the names of famous people are keywords rendered with a different style to draw attention to them. In other cases, if an element is really needed, the span element can be used.)

    +// http://www.w3.org/html/wg/drafts/html/master/text-level-semantics.html +//
    +// ``` +// + +blockquote { + margin: 10px 20px 10px 40px; + &:before { + color: @primary4; + content: "\201C"; + display: block; + font-family: Georgia, serif; + font-size: 60px; + font-style: italic; + position: absolute; + left: 15px; + top: 10px; + } + cite { + color: @primary4; + font-style: italic; + font-size: @baseFontSizeMiddle; + margin: 1em 0; + } +} + +// #HR +// +// ```html +//
    +// ``` +// + +hr { + background: @primary3; + border: 0; + color: @primary3; + height: 1px; + margin: 1em 0; +} diff --git a/app/design/frontend/magento_plushe/less/styles/magento.less b/app/design/frontend/magento_plushe/less/styles/magento.less new file mode 100644 index 0000000000000..79fd72340b53c --- /dev/null +++ b/app/design/frontend/magento_plushe/less/styles/magento.less @@ -0,0 +1,1549 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +// #Mixins +// +// Common mixins used for styling magento elements +// + +.pagerLabel() { + font-weight: @baseFontWeight; + line-height: 25px; + margin-right: 5px; +} + +// #Search form +// +// ```html +// +// ``` +// + +.block.search { + input { + border-radius: 3px 0 0 3px; + border-right: 0; + float: left; + width: 100%; + &:focus + { + border-color: @primary3; + } + } + .field .control { + width: 260px; + } + .label, + > .title, + .action.advanced { + display: none; + } + .action.search { + background: @primary7; + border: 1px solid @primary3; + border-radius: 0 3px 3px 0; + color: @primary3; + float: left; + padding: 7px; + &:hover { + color: @primary6; + } + span { + .iconAfter(@icon-magnifying-glass, 16px, 0, 'icons'); + .iconHideText(16px); + } + .search.autocomplete { + display: none !important; + } + } + ::-webkit-input-placeholder { + color: @primary4; + } + :-moz-placeholder { + color: @primary4; + } + ::-moz-placeholder { + color: @primary4; + } + :-ms-input-placeholder { + color: @primary4; + } +} + +// #Newsletter sign up form +// +// ```html +// +// ``` +// + +.block.newsletter { + > .title { + display: none; + } + .label { + display: block; + font-size: @baseFontSizeBigger; + line-height: 1.2; + margin-bottom: 10px; + } + .control { + .box-sizing(); + float: left; + padding-right: 45px; + width: 100%; + } + input[type="text"] { + width: 100%; + } + .actions { + float: right; + margin-left: -45px; + padding-left: 10px; + } + .action.subscribe { + .box-sizing(); + background: @primaryActionBg; + border-radius: 3px; + border: 1px solid @primaryActionBg; + padding: 7px; + vertical-align: top; + &:hover { + background: @primaryActionBgH; + } + span { + .iconAfter(@icon-envelope, 16px, 0, "icons"); + .iconHideText(16px); + color: @primary7; + } + } +} + +// #Mage Catalog +// +// #Breadcrumbs +// +// ```html +// +// ``` +// + +.breadcrumbs { + font-size: @baseFontSizeMiddle; + .items { + margin: 0; + padding: 0; + } + .item { + display: inline; + font-weight: @baseFontWeightLighter; + &:before { + content: " / "; + } + &:first-child:before { + content: ""; + } + } + strong { + font-weight: @baseFontWeight; + } +} + +// #Pager +// +// ```html +//
    +// Page +//
      +//
    1. +//
    2. 1
    3. +//
    4. 2
    5. +//
    6. 3
    7. +//
    8. +//
    +//
    +// ``` +// + +.pages { + ol { + .resetList(); + } + .item { + display: inline-block; + } + a { + padding: 0 3px; + } + strong { + color: @secondary1; + font-weight: normal; + padding: 0 3px; + } + > .label { + display: none; + } + .action { + &.previous { + .iconAfter(@icon-arrow-left-thick, 16px, 0, "icons"); + .iconHideText(16px); + display: inline-block; + } + &.next { + .iconAfter(@icon-arrow-right-thick, 16px, 0, "icons"); + .iconHideText(16px); + display: inline-block; + } + color: @primary3; + &:hover { + color: darken(@primary3, 20%); + } + } +} + +// #View switcher +// +// ```html +//
    +// View as +// +// Grid +// +// +// List +// +// View as +// +// Grid +// +// +// List +// +//
    +// ``` +// + +.modes { + .label { + display: none; + } + .mode { + border: 1px solid @primary3; + color: @primary3; + display: inline-block; + margin: 0 3px; + overflow: hidden; + padding: 4px; + &.active { + background: @primary3; + border-color: @primary3; + cursor: default; + color: @primary7; + span { + color: @primary7; + } + &:hover { + background: @primary3; + border-color: @primary3; + color: @primary7; + span { + color: @primary7; + } + } + } + &:hover { + background: @primary4; + border-color: @primary4; + color: @primary7; + span { + color: @primary7; + } + } + &.grid { + .iconAfter(@icon-grid, 13px, 0, "icons"); + .iconHideText(13px); + display: inline-block; + } + &.list { + .iconAfter(@icon-list, 13px, 0, "icons"); + .iconHideText(13px); + display: inline-block; + } + } +} + +// #"Sort by" switcher +// +// ```html +//
    +// +// +// +// Set Ascending Direction +// +// +// Set Descending Direction +// +//
    +// ``` +// + +.sorter { + .label { + .pagerLabel(); + } + select { + padding: 0; + } + .action.sort { + &.desc { + .iconAfter(@icon-arrow-down-thick, 13px, 0, "icons"); + .iconHideText(13px); + display: inline-block; + } + &.asc { + .iconAfter(@icon-arrow-up-thick, 13px, 0, "icons"); + .iconHideText(13px); + display: inline-block; + } + } +} + +// #Pager limiter +// +// ```html +//
    +// Show +// +// per page +//
    +// ``` +// + +.limiter { + .label { + .pagerLabel(); + } + select { + padding: 0; + } + .text { + display: none; + } +} + +// #Tags +// +// ```html +// +// ``` +// + +.tags.items.cloud { + .resetList(); + margin: 0 0 20px; + .item { + .resetList(); + display: inline-block; + margin: 0 0 5px 5px; + &:first-child { + margin-left: 0; + } + } + .amount { + margin-left: 3px; + &:before { + content: '('; + } + &:after { + content: ')'; + } + } +} + +// #Ratings +// +// ```html +//
    +// +//
    +//
    +//
    +// +//
    +// +// +// +// +// +// +// +// +// +// +//
    +//
    +//
    +// +//
    +// +// +// +// +// +// +// +// +// +// +//
    +//
    +//
    +// +//
    +// +// +// +// +// +// +// +// +// +// +//
    +//
    +//
    +//
    +//
    +// ``` +// + +.field.ratings { + @starSize: 16px; + border-bottom: 1px solid; + .borderColor(@primary1); + padding-bottom: 15px; + margin-bottom: 30px; + overflow: hidden; + position: relative; + z-index: 1; + .nested { + display: table; + } + .field.rating { + display: table-row; + > .label { + display: table-cell; + vertical-align: top; + padding: 6px 0; + } + .control { + padding: 5px 10px; + display: table-cell; + z-index: 1; + &:before { + letter-spacing: 0.2em; + position: absolute; + z-index: 1; + display: block; + float: left; + font-family: "icons"; + content: "\e009\e009\e009\e009\e009"; + font-style: normal; + font-size: @starSize; + color: fade(@secondary1, 30%); + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + } + input:focus + label:before, + input:checked + label:before { + color: @secondary1; + opacity: 1; + } + input[type="radio"] { + position: absolute; + margin-left: -999em; + } + label { + position: absolute; + display: block; + span { + display: none; + } + &:before { + letter-spacing: 0.2em; + font-family: "icons"; + font-style: normal; + font-size: @starSize; + speak: none; + font-weight: normal; + -webkit-font-smoothing: antialiased; + opacity: 0; + } + &:hover { + &:before { + color: @secondary1; + opacity: 1; + } + & ~ label:before { + opacity: 0 !important; + } + } + cursor: pointer; + } + .rating-1 { + z-index: 6; + &:before { + content: "\e009"; + } + } + .rating-2 { + z-index: 5; + &:before { + content: "\e009\e009"; + } + } + .rating-3 { + z-index: 4; + &:before { + content: "\e009\e009\e009"; + } + } + .rating-4 { + z-index: 3; + &:before { + content: "\e009\e009\e009\e009"; + } + } + .rating-5 { + z-index: 2; + &:before { + content: "\e009\e009\e009\e009\e009"; + } + } + } + } +} + +// #Login form +// The login form's design differs from default form layout: labels are in the same line as inputs (in default form layout labels and corresponding inputs are in different lines) The code is the same, it differs only with styles. +// +// ```html +// +// ``` +// + +.fieldset { + &.login { + margin: 0; + padding: 0; + > .field { + .clearfix(); + > .label { + .box-sizing(); + float: left; + margin: 0; + padding-right: 10px; + padding-top: 7px; + text-align: right; + width: 40%; + } + > .control { + float: left; + margin: 0; + width: 60%; + } + } + .actions { + text-align: right; + .action.login { + &:extend(.primary.action all); + } + .secondary { + margin-top: 0.8em; + } + } + } +} + +// #Loader +// +// ```html +//
    +// ``` +// + +.loader { + background: url("@{baseDir}/images/loader.gif") no-repeat 50% 50%; + .size(20px); +} + +// #Button with loader +// +// ```html +// +// ``` +// + +.action.mySecondaryButton { + &:extend(.secondary.action all); + &.loading { + padding-right: 30px; + position: relative; + &:after { + background: url("@{baseDir}/images/loader.gif") no-repeat 50% 50%; + .size(16px); + content: ""; + margin: -8px 0 0; + position: absolute; + right: 7px; + top: 50%; + } + } +} + +// #Text block under loader +// +// ```html +//
    +//

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris sed lobortis magna, quis tincidunt elit. Donec molestie scelerisque ligula, ut eleifend nisl laoreet nec. Vivamus dapibus urna id risus porttitor cursus.

    +//

    Etiam lorem leo, accumsan quis est sit amet, tempus pellentesque ante. Donec rutrum convallis lacus, ac iaculis nulla scelerisque a. Pellentesque malesuada, mi eu condimentum volutpat, mi turpis congue sapien, et ornare nunc nunc vitae nibh. Duis scelerisque purus a sapien ultrices tempor. Sed nec blandit mauris, vel volutpat dolor.

    +//

    Vestibulum viverra tempus mi a accumsan. Nunc congue quis leo sed scelerisque. Fusce scelerisque magna nulla, sed malesuada nunc congue vel. Donec placerat malesuada bibendum. Nam bibendum nunc at neque consequat placerat. Aenean eu rutrum sapien. Vivamus vel mi urna. Suspendisse sit amet elit nunc.

    +//
    +// ``` +// + +.textUnderLoader { + background: @primary1; + border: 1px solid @primary3; + padding: 10px 20px; + &.loading { + position: relative; + &:before { + background: @primary7; + opacity: 0.7; + content: ""; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + } + &:after { + background: url("@{baseDir}/images/loader.gif") no-repeat 50% 50%; + .size(16px); + content: ""; + margin: -8px 0 0 -8px; + position: absolute; + left: 50%; + top: 50%; + } + } +} + +// #Mage Checkout +// +// #Checkout address form +// The checkout address form has specific logical fields grouping. Here styles are provided to separate the logical groups. The code is the same, it differs only with styles. +// +// ```html +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +// +//
    +//
    +//
    +// +// +//
    +//
    +// +// +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +// ``` +// + +.opc { + .fieldset { + margin: 20px 0; + .formCols(); + } + .field { + margin-bottom: 10px; + } + .field.fullname + .field.company, + .field.name-lastname + .field.company, + .field.country, + .field.taxvat { + margin: 0 40% 30px 0; + } + .actions .primary .action { + &:extend(.primary.action all); + } + .form { + &:extend(.hasRequired all); + } +} + +// #Payment method credit card form +// This form differs from the standard layout by its code and by design. Here labels are in the same line as inputs. It is necessary to replace the code by the new one. +// +// ```html +//
      +//
    • +// +//
      +// +//
      +//
    • +//
    • +// +//
      +// +//
      +//
    • +//
    • +// +//
      +//
      +// +//
      +//
      +// +//
      +//
      +//
    • +//
    +// ``` +// + +.form-list { + .resetList(); + .required { + em { + display: none; + } + &:first-child:after { + color: @requiredField; + content: '*'; + } + } + > li { + .clearfix(); + margin: 0 0 10px; + .field { + .clearfix(); + margin: 10px 0 0; + &:first-child { + margin: 0; + } + } + > label, + .field > label { + .box-sizing(); + clear: left; + float: left; + padding: 7px 10px 0 0; + text-align: right; + width: 30%; + } + .input-box { + float: left; + width: 70%; + > input, + > select, + > textarea { + width: 100%; + } + > .v-fix { + float: left; + margin: 0 10px 0 0; + } + } + } +} + +// #Shopping Cart +// #Shopping cart estimation settings +// The shopping card estimation settings design differs from standard form layout by the code and by the design. Here the code and the styles are provided. +// +// ```html +//
    +// +//
    +//
    Estimate Shipping and Tax
    +//
    +//
    +//
    +//

    Enter your destination to get a shipping estimate.

    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +// +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +//
    +//
    +//
    Flat Rate
    +//
    +//
    +// +// +//
    +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +// +//
    +//
    Discount Codes
    +//
    +//
    +//
    +//
    +// +// +//
    +// +//
    +//
    +//
    +//
    +// +//
    +//
    +//
    +//
    +//
    +//
    +//
    +// +// +//
    +// ``` +// + +.cart.summary { + .fieldset { + border: 0; + font-size: @baseFontSizeMiddle; + padding: 0; + margin: 0; + .field { + margin: 0 0 10px; + &:not(.choice) { + .label { + padding: 0 0 5px; + display: block; + } + } + } + .action:not(.check) { + &:extend(.primary.action all); + padding: 6px 11px 5px; + span { + font-size: @baseFontSizeMiddle; + line-height: @baseFontSizeMiddle; + } + } + &.coupon, + &.estimate { + .actions { + display: table-cell; + width: 1%; + white-space: nowrap; + vertical-align: bottom; + } + } + &.coupon .field, + .field.postcode { + display: table-cell; + padding-right: 10px; + vertical-align: bottom; + width: 99%; + div.mage-error { + position: absolute; + } + } + &.rates { + padding-top: 25px; + .actions { + text-align: right; + } + } + } + .title { + cursor: pointer; + line-height: @baseFontSizeBigger; + margin: 0; + padding: 10px 5px; + } + .content { + padding: 15px 15px 20px; + } + input[type="text"] { + padding: 0 5px; + font-size: 12px; + height: 30px; + } + select { + padding: 5px 5px 4px; + font-size: 12px; + } + .items.methods { + dt { + font-weight: @baseFontWeightBolder; + } + dd { + margin: 10px 10px 25px; + } + } +} + +// #Popup +// ```html +// +//
    +//
    +// +//
    +// +//
    +//
    +// +//
    +//
    +// ``` +// + +.popup { + background: @primary2; + border: 1px solid @primary3; + display: inline-block; + padding: 20px; + position: relative; + .close { + color: @primary4; + cursor: pointer; + position: absolute; + right: 5px; + top: 3px; + .iconBefore(@icon-close-thick, 12px, 0, "icons"); + &:hover { + color: @primary6; + } + } + .fade & { + background: @pageMainBg; + box-shadow: 0 0 10px 0 @primary4; + } + > .header, + > .content { + margin: 0 0 5px; + } + > .header { + font-size: @baseFontSizeBigger; + font-weight: @baseFontWeightBolder; + } + .actions { + margin: 15px 0 0; + .action.submit { + &:extend(.primary.action all); + margin-right: 10px; + } + .action.cancel { + &:extend(.secondary.action all); + } + } + &.system { + background: @pageMainBg; + padding: 0; + > .header { + background: @primary2; + border-bottom: 1px solid @primary3; + border-radius: 5px 5px 0 0; + cursor: move; + padding: 10px 20px; + } + > .content { + padding: 20px; + } + > .footer { + border-top: 1px solid @primary3; + padding: 10px 20px; + } + .actions { + margin: 0; + } + .close { + right: 8px; + top: 8px; + } + } +} + +.fade { + background-color: @primeBlackOpacity; + position: relative; + left: 0; + top: 0; + right: 0; + bottom: 0; + padding: 10%; +} + + +// #CSS tooltip +// +// ####Accepted parameters +// **.tooltipSimple(*[background]*, *[color]*, *[fontSize]*, *[margin]*, *[padding]*, *[maxWidth]*, *[cursor]*);** +// +// Tooltip can be added to any element +// ```html +// Projects in Sublime Text capture the full contents of the workspace, +// +// Your content +//
    Tooltip content
    +//
    +// including modified and unsaved files. +// You can switch between projects in a manner similar to Goto Anything, +// and the switch is instant, with no save prompts - all your modifications will be restored next time the project is opened. +// ``` +// + +// #Radiobutton tooltip +// +// ```html +//
    +// +// +//
    Tooltip content
    +//
    +// ``` + +.tooltip { + .tooltipCSS(rgba(0,0,0,.5), #fff, 16px, 10px 0 0, 8px, 500px, help); +} + +// #JS tooltip: +// +// ####Accepted parameters +// **.tooltipJS(*[background]*, *[color]*, *[fontSize]*, *[padding]*, *[maxWidth]*);** +// +// ####Add attributes to the tag: +// +// **tooltip**="text tooltip" +// +// **tooltip-position**="n, nw, ne, w, e, s, sw, se" +// +// ```html +//
    +// +// +// +//
    +// +// +// +//
    +// +// +// +//
    +// ``` + +.tipsy { + .tooltipJS(rgba(0,0,0,.9), #fff); +} + +// #Tooltip mixins: +.tooltipCSS(@background: @primeBlackOpacity, @color: @primary7, @fontSize: 16px, @margin: 10px 0 0, @padding: 4px 8px, @maxWidth: 200px, @cursor: help) { + display: inline-block; + vertical-align: middle; + line-height: 1.1; + cursor: @cursor; + .tooltip-content { + display: none; + position: absolute; + max-width: @maxWidth; + margin: @margin; + padding: @padding; + background: @background; + color: @color; + border-radius: 3px; + z-index: 20; + &:before { + content: ''; + position: absolute; + width: 0; + height: 0; + top: -5px; + left: 20px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid @background; + } + } + &:hover > .tooltip-content { + display: block; + } +} + +.tooltipJS(@background: @primeBlackOpacity, @color: @primary7, @fontSize: 16px, @padding: 5px, @maxWidth: 200px) { + position: absolute; + left: 0; + top: 0; + display: none; + padding: @padding; + font-size: @fontSize; + z-index: 9999; + .tipsy-inner { + padding: 5px 8px 4px; + background-color: @background; + color: @color; + max-width: @maxWidth; + border-radius: 3px; + } + .tipsy-arrow { + position: absolute; + width: 0; + height: 0; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid @background; + } + &.tipsy-s .tipsy-arrow { + top: 0; + left: 50%; + margin-left: -4px; + } + &.tipsy-se .tipsy-arrow { + top: 0; + left: 10px; + } + &.tipsy-sw .tipsy-arrow { + top: 0; + right: 10px; + } + &.tipsy-n .tipsy-arrow, + &.tipsy-ne .tipsy-arrow, + &.tipsy-nw .tipsy-arrow { + bottom: 0; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-top: 5px solid @background; + border-bottom: none; + } + &.tipsy-n .tipsy-arrow { + left: 50%; + margin-left: -4px; + } + &.tipsy-ne .tipsy-arrow { + left: 10px; + } + &.tipsy-nw .tipsy-arrow { + right: 10px; + } + &.tipsy-w .tipsy-arrow, + &.tipsy-e .tipsy-arrow { + top: 50%; + margin-top: -4px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + } + &.tipsy-w .tipsy-arrow { + right: 0; + border-right: none; + border-left: 5px solid @background; + } + &.tipsy-e .tipsy-arrow { + left: 0; + border-right: 5px solid @background; + border-left: none; + } +} + + +.example-tooltips {/*presentation styles*/ + padding: 70px; + text-align: center; +} + +.example-tooltips button {/*presentation styles*/ + width: 70px; + height: 70px; + font-size: 18px; + margin: 10px 5px; +} diff --git a/app/design/frontend/magento_plushe/less/vars.less b/app/design/frontend/magento_plushe/less/vars.less new file mode 100644 index 0000000000000..6d3b1a2552201 --- /dev/null +++ b/app/design/frontend/magento_plushe/less/vars.less @@ -0,0 +1,131 @@ +// /** +// * Magento + * + * NOTICE OF LICENSE + * + * This source file is subject to the Academic Free License (AFL 3.0) + * that is bundled with this package in the file LICENSE_AFL.txt. + * It is also available through the world-wide-web at this URL: + * http://opensource.org/licenses/afl-3.0.php + * If you did not receive a copy of the license and are unable to + * obtain it through the world-wide-web, please send an email + * to license@magentocommerce.com so we can send you a copy immediately. + * + * DISCLAIMER + * + * Do not edit or add to this file if you wish to upgrade Magento to newer + * versions in the future. If you wish to customize Magento for your + * needs please refer to http://www.magentocommerce.com for more information. +// * +// * @category design +// * @package magento2_reference +// * @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) +// */ + +// Primary colors +@primary1: #f8f8f8; +@primary2: #e5e5e5; +@primary3: #c2c2c2; +@primary4: #999; +@primary5: #837d75; +@primary6: #675f55; +@primary7: #fff; +@primeBlack: #7f7f7f; +@primeBlackOpacity: rgba(0, 0, 0, 0.5); +@commonBg: #fff; + +// Secondary colors +@secondary1: #da370a; +@secondary2: #55c2e6; + +// Buttons +@primaryActionBg: @secondary1; +@primaryActionBgH: darken(@secondary1, 10%); +@primaryActionColor: #fff; + +@secondaryActionBg: @primary3; +@secondaryActionBgH: darken(@primary3, 10%); +@secondaryActionColor: #fff; + +@actionFont: 600 14px/16px; + +// Layout +@LayoutMaxWidth: 1025px; +@LayoutMinWidth: 1025px; + +// Links +@link: #332e29; +@linkHover: @secondary1; + +// Base font +@baseFont: "sourcesanspro"; +@baseFontSizeBigger: 16px; +@base-font-size: 14px; // re-declarate base font size for clearLess +@baseFontSize: 14px; +@baseFontSizeMiddle: 12px; +@baseFontSizeSmall: 10px; +@baseFontWeight: 400; +@baseFontWeightLighter: 200; +@baseFontWeightBolder: 700; +@baseLineHeight: 1.33; +@baseColor: @primary6; + +@pageMainBg: #fff; +@headerBg: #d6d7d2; +@headerBgImage: url("@{baseDir}/images/header-bg.jpg"); +@pageBottomBg: @pageMainBg; +@footerBg: @pageMainBg; +@textColor: @primary6; +@linksColor: @primary6; +@gutter-width: 0; +@using-ieclasses: false; + +// Headings: +// H1 +@h1font: 200 30px/1.2 @baseFont; +@h1color: @primary6; + +// H2 +@h2font: 400 20px/1.2 @baseFont; +@h2color: @primary6; + +// H3 +@h3font: 600 18px/1.2 @baseFont; +@h3color: @primary6; + +// H4 +@h4font: 600 16px/1.2 @baseFont; +@h4color: @primary6; + +// H5 +@h5font: 600 14px/1.2 @baseFont; +@h5color: @primary6; + +// H6 +@h6font: 600 12px/1.2 @baseFont; +@h6color: @primary6; + +// Forms +@legendFontSize: 20px; +@fieldBg: #fff; + +// Required fields and validation +@requiredField: #da370a; +@nonValidHilight: #da370a; +@validHilight: #42b649; + +// Messages colors +@messageIconColor: #fff; +// Success message +@messageSuccessColor: #1b6720; +@messageSuccessBg: #d3edd5; +@messageSuccessIconBg: #42b649; +// Error message +@messageErrorColor: #911c00; +@messageErrorBg: #ffd9d0; +@messageErrorIconBg: #ff3200; +// Notice message, Info message +@messageNoticeColor: #926e00; +@messageNoticeBg: #ffedb8; +@messageNoticeIconBg: #ffc000; diff --git a/app/design/frontend/magento_plushe/media/preview.jpg b/app/design/frontend/magento_plushe/media/preview.jpg new file mode 100644 index 0000000000000..c15840788eda9 Binary files /dev/null and b/app/design/frontend/magento_plushe/media/preview.jpg differ diff --git a/app/design/frontend/magento_plushe/theme.xml b/app/design/frontend/magento_plushe/theme.xml new file mode 100644 index 0000000000000..a1b34af9cc9f4 --- /dev/null +++ b/app/design/frontend/magento_plushe/theme.xml @@ -0,0 +1,33 @@ + + + Magento Plushe + 1.0.0.0 + + media/preview.jpg + + diff --git a/app/design/frontend/magento_plushe/view.xml b/app/design/frontend/magento_plushe/view.xml new file mode 100644 index 0000000000000..bdad3bdb43e12 --- /dev/null +++ b/app/design/frontend/magento_plushe/view.xml @@ -0,0 +1,298 @@ + + + + + 100 + 275 + 48 + + 166 + 370 + + 0 + + small_image + 285 + 1 + 285 + + image + 285 + 1 + 285 + + small_image + 180 + 1 + 230 + + small_image + 180 + 1 + 230 + + small_image + 140 + 1 + 140 + + small_image + 140 + 1 + 140 + + small_image + 140 + 1 + 140 + + image + 400 + 1 + 495 + + image + 400 + 1 + 495 + + thumbnail + 90 + 1 + 90 + + thumbnail + 50 + 1 + 50 + + small_image + 166 + 1 + 166 + + small_image + 166 + 1 + 166 + + thumbnail + 50 + 1 + 50 + + small_image + 50 + 1 + 50 + + thumbnail + 76 + 1 + 76 + + small_image + 76 + 1 + 76 + + thumbnail + 140 + 1 + 140 + + small_image + 135 + 1 + 135 + + small_image + 166 + 1 + 166 + + small_image + 135 + 1 + 135 + + small_image + 166 + 1 + 166 + + small_image + 113 + 1 + 113 + + small_image + 113 + 1 + 113 + + thumbnail + 50 + 1 + 50 + + small_image + 135 + 1 + 135 + + small_image + 100 + 1 + 100 + + thumbnail + 140 + 1 + 140 + + thumbnail + 75 + 1 + 75 + + small_image + 75 + 1 + 75 + + thumbnail + 78 + 1 + 78 + + small_image + 78 + 1 + 78 + + thumbnail + 80 + 1 + 80 + + small_image + 76 + 1 + 76 + + + 58 + + + "marvel" + #837d75 + + #d6d7d2 + header-bg.jpg + repeat + + #f8f8f8 + #c2c2c2 + #675f55 + #f47a1f + + #837d75 + #675f55 + #ffffff + #e5e5e5 + #ffffff + #675f55 + #c2c2c2 + + #ffffff + + no-repeat + + #f8f8f8 + #c2c2c2 + #e5e5e5 + #c2c2c2 + + #c2c2c2 + #999999 + #e5e5e5 + #f8f8f8 + #c2c2c2 + + #675f55 + #e5e5e5 + #999999 + + #f47a1f + #ffffff + #ff953b + #c2c2c2 + #999999 + #837d75 + + #55c2e6 + #f8f8f8 + #e5e5e5 + #675f55 + + #675f55 + #ffffff + #c2c2c2 + #ffffff + #000000 + #c2c2c2 + + #ff3200 + #ffffff + #d3edd5 + #ffffff + #ffedb8 + #ffffff + + "marvel", Arial, sans-serif + #675f55 + "sourcesanspro", Arial, sans-serif + #675f55 + "sourcesanspro", Arial, sans-serif + #675f55 + + "sourcesanspro", Arial, sans-serif + #675f55 + + "sourcesanspro", Arial, sans-serif + #ffffff + + #675f55 + #f47a1f + #f47a1f + #675f55 + #675f55 + #c2c2c2 + + diff --git a/app/etc/di.xml b/app/etc/di.xml index 1546dee34ea65..3d1c255a2489b 100644 --- a/app/etc/di.xml +++ b/app/etc/di.xml @@ -24,33 +24,48 @@ */ --> - + + + + + + - + + + - - + - + - - + + + - + + + + - Magento\Core\Model\App\State::PARAM_INSTALL_DATE + Magento\App\State::PARAM_INSTALL_DATE Magento\Core\Model\App::PARAM_MODE + + + + + Magento\Core\Model\App::PARAM_MODE @@ -64,7 +79,7 @@ Magento\Core\Model\App::PARAM_CUSTOM_LOCAL_CONFIG - + Magento\Core\Model\App::PARAM_ALLOWED_MODULES @@ -87,14 +102,6 @@ Magento\Core\Model\App::PARAM_RUN_TYPE - - - - - - - - @@ -105,11 +112,6 @@ - - - - - @@ -131,16 +133,6 @@ - - - - - 50 - Magento\Core\Model\App\Handler - - - - @@ -149,42 +141,16 @@ - - - - - - - - - - - - - - - - - - - - - - - - - Magento\Core\Model\App::PARAM_MODE - @@ -211,11 +177,6 @@ interception - - - global - - @@ -241,6 +202,14 @@ Magento\Core\Model\Resource::PARAM_TABLE_PREFIX + + + global + + + + + diff --git a/dev/tests/integration/framework/Magento/TestFramework/Application.php b/dev/tests/integration/framework/Magento/TestFramework/Application.php index f32d62776836f..27a5696660f6a 100644 --- a/dev/tests/integration/framework/Magento/TestFramework/Application.php +++ b/dev/tests/integration/framework/Magento/TestFramework/Application.php @@ -135,12 +135,12 @@ public function __construct( $generationDir = "$installDir/generation"; $this->_initParams = array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::CONFIG => $this->_installEtcDir, - \Magento\Core\Model\Dir::VAR_DIR => $installDir, - \Magento\Core\Model\Dir::MEDIA => "$installDir/media", - \Magento\Core\Model\Dir::STATIC_VIEW => "$installDir/pub_static", - \Magento\Core\Model\Dir::PUB_VIEW_CACHE => "$installDir/pub_cache", - \Magento\Core\Model\Dir::GENERATION => $generationDir, + \Magento\App\Dir::CONFIG => $this->_installEtcDir, + \Magento\App\Dir::VAR_DIR => $installDir, + \Magento\App\Dir::MEDIA => "$installDir/media", + \Magento\App\Dir::STATIC_VIEW => "$installDir/pub_static", + \Magento\App\Dir::PUB_VIEW_CACHE => "$installDir/pub_cache", + \Magento\App\Dir::GENERATION => $generationDir, ), \Magento\Core\Model\App::PARAM_MODE => $appMode ); @@ -212,14 +212,14 @@ public function initialize($overriddenParams = array()) )); $objectManager->addSharedInstance($config, 'Magento\Core\Model\Config\Primary'); - $objectManager->addSharedInstance($config->getDirectories(), 'Magento\Core\Model\Dir'); + $objectManager->addSharedInstance($config->getDirectories(), 'Magento\App\Dir'); $objectManager->configure(array( 'preferences' => array( 'Magento\Core\Model\Cookie' => 'Magento\TestFramework\Cookie' ) )); $objectManager->loadPrimaryConfig($this->_primaryConfig); - $verification = $objectManager->get('Magento\Core\Model\Dir\Verification'); + $verification = $objectManager->get('Magento\App\Dir\Verification'); $verification->createAndVerifyDirectories(); $objectManager->configure( $objectManager->get('Magento\Core\Model\ObjectManager\ConfigLoader')->load('global') @@ -232,7 +232,9 @@ public function initialize($overriddenParams = array()) 'type' => 'Magento\TestFramework\Db\ConnectionAdapter' ), 'preferences' => array( - 'Magento\Core\Model\Cookie' => 'Magento\TestFramework\Cookie' + 'Magento\Core\Model\Cookie' => 'Magento\TestFramework\Cookie', + 'Magento\App\RequestInterface' => 'Magento\TestFramework\Request', + 'Magento\App\ResponseInterface' => 'Magento\TestFramework\Response', ), )); } @@ -241,8 +243,8 @@ public function initialize($overriddenParams = array()) ->setCache($objectManager->get('Magento\Core\Model\CacheInterface')); /** Register event observer of Integration Framework */ - /** @var \Magento\Core\Model\Event\Config\Data $eventConfigData */ - $eventConfigData = $objectManager->get('Magento\Core\Model\Event\Config\Data'); + /** @var \Magento\Event\Config\Data $eventConfigData */ + $eventConfigData = $objectManager->get('Magento\Event\Config\Data'); $eventConfigData->merge( array('core_app_init_current_store_after' => array('integration_tests' => @@ -254,8 +256,8 @@ public function initialize($overriddenParams = array()) ) ) ); - /** @var \Magento\Core\Model\Dir\Verification $verification */ - $verification = $objectManager->get('Magento\Core\Model\Dir\Verification'); + /** @var \Magento\App\Dir\Verification $verification */ + $verification = $objectManager->get('Magento\App\Dir\Verification'); $verification->createAndVerifyDirectories(); $this->loadArea(\Magento\TestFramework\Application::DEFAULT_APP_AREA); @@ -276,15 +278,13 @@ public function reinitialize(array $overriddenParams = array()) /** * Run application normally, but with encapsulated initialization options - * - * @param \Magento\TestFramework\Request $request - * @param \Magento\TestFramework\Response $response */ - public function run(\Magento\TestFramework\Request $request, \Magento\TestFramework\Response $response) + public function run() { - $composer = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $handler = $composer->get('Magento\HTTP\Handler\Composite'); - $handler->handle($request, $response); + $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); + $config = new \Magento\Core\Model\Config\Primary(BP, array()); + $entryPoint = new \Magento\Core\Model\EntryPoint\Http($config, $objectManager); + $entryPoint->processRequest(); } /** @@ -341,8 +341,8 @@ public function install($adminUserName, $adminPassword, $adminRoleName) $this->initialize(); /* Run all install and data-install scripts */ - /** @var $updater \Magento\Core\Model\Db\Updater */ - $updater = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Db\Updater'); + /** @var $updater \Magento\App\Updater */ + $updater = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Updater'); $updater->updateScheme(); $updater->updateData(); @@ -370,8 +370,8 @@ public function install($adminUserName, $adminPassword, $adminRoleName) /* Switch an application to installed mode */ $this->initialize(); //hot fix for \Magento\Catalog\Model\Product\Attribute\Backend\SkuTest::testGenerateUniqueLongSku - /** @var $appState \Magento\Core\Model\App\State */ - $appState = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App\State'); + /** @var $appState \Magento\App\State */ + $appState = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\State'); $appState->setInstallDate(date('r', strtotime('now'))); } diff --git a/dev/tests/integration/framework/Magento/TestFramework/Cookie.php b/dev/tests/integration/framework/Magento/TestFramework/Cookie.php index 3fce9302cd282..e475842f533c4 100644 --- a/dev/tests/integration/framework/Magento/TestFramework/Cookie.php +++ b/dev/tests/integration/framework/Magento/TestFramework/Cookie.php @@ -35,19 +35,19 @@ class Cookie extends \Magento\Core\Model\Cookie /** * @param \Magento\Core\Model\Store\Config $coreStoreConfig * @param \Magento\Core\Model\StoreManager $storeManager - * @param \Magento\Core\Controller\Request\Http $request - * @param \Magento\Core\Controller\Response\Http $response + * @param \Magento\App\RequestInterface $request + * @param \Magento\App\ResponseInterface $response */ public function __construct( \Magento\Core\Model\Store\Config $coreStoreConfig, \Magento\Core\Model\StoreManager $storeManager, - \Magento\Core\Controller\Request\Http $request = null, - \Magento\Core\Controller\Response\Http $response = null + \Magento\App\RequestInterface $request = null, + \Magento\App\ResponseInterface $response = null ) { $this->_storeManager = $storeManager; $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $request = $request ?: $objectManager->get('Magento\Core\Controller\Request\Http'); - $response = $response ?: $objectManager->get('Magento\Core\Controller\Response\Http'); + $request = $request ?: $objectManager->get('Magento\App\RequestInterface'); + $response = $response ?: $objectManager->get('Magento\App\ResponseInterface'); parent::__construct($request, $response, $coreStoreConfig, $storeManager); } diff --git a/dev/tests/integration/framework/Magento/TestFramework/Helper/Bootstrap.php b/dev/tests/integration/framework/Magento/TestFramework/Helper/Bootstrap.php index e8a3e3992a0c7..b0ed7bbadae4a 100644 --- a/dev/tests/integration/framework/Magento/TestFramework/Helper/Bootstrap.php +++ b/dev/tests/integration/framework/Magento/TestFramework/Helper/Bootstrap.php @@ -140,15 +140,12 @@ public function reinitialize(array $overriddenParams = array()) } /** - * Perform the full request processing by the application instance optionally passing parameters to be overridden. + * Perform the full request processing by the application instance. * Intended to be used by the controller tests. - * - * @param \Magento\TestFramework\Request $request - * @param \Magento\TestFramework\Response $response */ - public function runApp(\Magento\TestFramework\Request $request, \Magento\TestFramework\Response $response) + public function runApp() { - $this->_bootstrap->getApplication()->run($request, $response); + $this->_bootstrap->getApplication()->run(); } /** diff --git a/dev/tests/integration/framework/Magento/TestFramework/Helper/Config.php b/dev/tests/integration/framework/Magento/TestFramework/Helper/Config.php index cbc499e291b6e..d52283543d9f7 100644 --- a/dev/tests/integration/framework/Magento/TestFramework/Helper/Config.php +++ b/dev/tests/integration/framework/Magento/TestFramework/Helper/Config.php @@ -41,7 +41,7 @@ public function getEnabledModules() { $result = array(); $moduleList = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\ModuleListInterface'); + ->get('Magento\App\ModuleListInterface'); foreach ($moduleList->getModules() as $module) { $result[] = $module['name']; } diff --git a/dev/tests/integration/framework/Magento/TestFramework/Request.php b/dev/tests/integration/framework/Magento/TestFramework/Request.php index 7928395d335af..bb91af0d3261a 100644 --- a/dev/tests/integration/framework/Magento/TestFramework/Request.php +++ b/dev/tests/integration/framework/Magento/TestFramework/Request.php @@ -30,7 +30,7 @@ */ namespace Magento\TestFramework; -class Request extends \Magento\Core\Controller\Request\Http +class Request extends \Magento\App\Request\Http { /** * Server super-global mock diff --git a/dev/tests/integration/framework/Magento/TestFramework/Response.php b/dev/tests/integration/framework/Magento/TestFramework/Response.php index e5f6dfed77b86..2ac3e623fcc10 100644 --- a/dev/tests/integration/framework/Magento/TestFramework/Response.php +++ b/dev/tests/integration/framework/Magento/TestFramework/Response.php @@ -34,7 +34,7 @@ * @package Magento\TestFramework * @SuppressWarnings(PHPMD.LongVariable) */ -class Response extends \Magento\Core\Controller\Response\Http +class Response extends \Magento\App\Response\Http { /** * @inherit @@ -58,6 +58,5 @@ public function canSendHeaders($throw = false) public function sendResponse() { - $this->_eventManager->dispatch('http_response_send_before', array('response'=>$this)); } } diff --git a/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractConfigFiles.php b/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractConfigFiles.php index bcfb08792682f..d914765ffb2e0 100644 --- a/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractConfigFiles.php +++ b/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractConfigFiles.php @@ -72,8 +72,8 @@ public function setUp() ) ); - $dirs = $this->_objectManager->get('Magento\Core\Model\Dir'); - $modulesDir = $dirs->getDir(\Magento\Core\Model\Dir::MODULES); + $dirs = $this->_objectManager->get('Magento\App\Dir'); + $modulesDir = $dirs->getDir(\Magento\App\Dir::MODULES); $this->_schemaFile = $modulesDir . $this->_getXsdPath(); } } @@ -148,7 +148,7 @@ public function xmlConfigFileProvider() public function getXmlConfigFiles() { return glob( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('app') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('app') . $this->_getConfigFilePathGlob() ); } diff --git a/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractController.php b/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractController.php index 76f0fd72b9a73..b7fce6df7765f 100644 --- a/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractController.php +++ b/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractController.php @@ -77,13 +77,10 @@ protected function _getBootstrap() protected function setUp() { $this->_assertSessionErrors = false; - $this->_objectManager = \Magento\TestFramework\ObjectManager::getInstance(); - $this->_objectManager->configure(array( - 'preferences' => array( - 'Magento\Core\Controller\Request\Http' => 'Magento\TestFramework\Request', - 'Magento\Core\Controller\Response\Http' => 'Magento\TestFramework\Response' - ) - )); + $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();; + $this->_objectManager->removeSharedInstance('Magento\App\ResponseInterface'); + $this->_objectManager->removeSharedInstance('Magento\App\RequestInterface'); + } protected function tearDown() @@ -112,18 +109,18 @@ protected function assertPostConditions() public function dispatch($uri) { $this->getRequest()->setRequestUri($uri); - $this->_getBootstrap()->runApp($this->getRequest(), $this->getResponse()); + $this->_getBootstrap()->runApp(); } /** * Request getter * - * @return \Magento\TestFramework\Request + * @return \Magento\App\RequestInterface */ public function getRequest() { if (!$this->_request) { - $this->_request = $this->_objectManager->get('Magento\TestFramework\Request'); + $this->_request = $this->_objectManager->get('Magento\App\RequestInterface'); } return $this->_request; } @@ -131,12 +128,12 @@ public function getRequest() /** * Response getter * - * @return \Magento\TestFramework\Response + * @return \Magento\App\ResponseInterface */ public function getResponse() { if (!$this->_response) { - $this->_response = $this->_objectManager->get('Magento\TestFramework\Response'); + $this->_response = $this->_objectManager->get('Magento\App\ResponseInterface'); } return $this->_response; } diff --git a/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractIntegrity.php b/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractIntegrity.php index 9eff02d9c7b2d..028635761a196 100644 --- a/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractIntegrity.php +++ b/dev/tests/integration/framework/Magento/TestFramework/TestCase/AbstractIntegrity.php @@ -84,7 +84,7 @@ protected function _getDesignThemes() /** @var $themeCollection \Magento\Core\Model\Theme\Collection */ $themeCollection = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\Resource\Theme\Collection'); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($themeCollection as $theme) { $themeItems[$theme->getId()] = $theme; } diff --git a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ApplicationTest.php b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ApplicationTest.php index b254dde834d32..4aa324bc2397b 100644 --- a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ApplicationTest.php +++ b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ApplicationTest.php @@ -38,7 +38,7 @@ public function testConstructor() { $dbInstance = $this->getMockForAbstractClass('Magento\TestFramework\Db\AbstractDb', array(), '', false); $installDir = '/install/dir'; - $appMode = \Magento\Core\Model\App\State::MODE_DEVELOPER; + $appMode = \Magento\App\State::MODE_DEVELOPER; $object = new \Magento\TestFramework\Application( $dbInstance, @@ -59,7 +59,7 @@ public function testConstructor() $this->assertArrayHasKey(\Magento\Core\Model\App::PARAM_MODE, $initParams, 'Application mode is not configured'); $this->assertEquals( - \Magento\Core\Model\App\State::MODE_DEVELOPER, + \Magento\App\State::MODE_DEVELOPER, $initParams[\Magento\Core\Model\App::PARAM_MODE], 'Wrong application mode configured' ); diff --git a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/CookieTest.php b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/CookieTest.php index 79949584d619b..f8308c9e807e4 100644 --- a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/CookieTest.php +++ b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/CookieTest.php @@ -48,11 +48,12 @@ protected function setUp() $coreStoreConfig, $this->getMock('Magento\Core\Model\StoreManager', array(), array(), '', false), new \Magento\TestFramework\Request( - $this->getMock('Magento\Core\Model\StoreManager', [], [], '', false), - $this->getMock('Magento\Backend\Helper\Data', [], [], '', false) + $this->getMock('Magento\App\RouterListInterface'), + 'http://example.com', + $this->getMock('Magento\App\Request\PathInfoProcessorInterface') ), new \Magento\TestFramework\Response( - $this->getMock('Magento\Core\Model\Event\Manager', array(), array(), '', false) + $this->getMock('Magento\Event\ManagerInterface', array(), array(), '', false) ) ); } diff --git a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/Helper/BootstrapTest.php b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/Helper/BootstrapTest.php index 2e6d4d0ce60fe..8ea05427755e4 100644 --- a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/Helper/BootstrapTest.php +++ b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/Helper/BootstrapTest.php @@ -54,8 +54,8 @@ class BootstrapTest extends \PHPUnit_Framework_TestCase */ protected $_fixtureInitParams = array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::CONFIG => __DIR__, - \Magento\Core\Model\Dir::VAR_DIR => __DIR__, + \Magento\App\Dir::CONFIG => __DIR__, + \Magento\App\Dir::VAR_DIR => __DIR__, ), ); @@ -191,14 +191,7 @@ public function testReinitialize() public function testRunApp() { - $requestMock = $this->getMock('Magento\TestFramework\Request', array(), array(), '', false); - $responseMock = $this->getMock('Magento\TestFramework\Response', array(), array(), '', false); - - $this->_application - ->expects($this->once()) - ->method('run') - ->with($requestMock, $responseMock) - ; - $this->_object->runApp($requestMock, $responseMock); + $this->_application->expects($this->once())->method('run'); + $this->_object->runApp(); } } diff --git a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ObjectManagerTest.php b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ObjectManagerTest.php index b7394864f6644..788dc2750560d 100644 --- a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ObjectManagerTest.php +++ b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ObjectManagerTest.php @@ -48,8 +48,8 @@ public function testClearCache() $instanceConfig = new \Magento\TestFramework\ObjectManager\Config(); $primaryConfig = $this->getMock('Magento\Core\Model\Config\Primary', array(), array(), '', false); $primaryConfig->expects($this->any())->method('getParams')->will($this->returnValue(array())); - $dirs = $this->getMock('Magento\Core\Model\Dir', array(), array(), '', false); - $verification = $this->getMock('Magento\Core\Model\Dir\Verification', array(), array(), '', false); + $dirs = $this->getMock('Magento\App\Dir', array(), array(), '', false); + $verification = $this->getMock('Magento\App\Dir\Verification', array(), array(), '', false); $cache = $this->getMock('Magento\Core\Model\CacheInterface'); $configLoader = $this->getMock('Magento\Core\Model\ObjectManager\ConfigLoader', array(), array(), '', false); $configLoader->expects($this->once())->method('load')->will($this->returnValue(array())); @@ -62,7 +62,7 @@ public function testClearCache() $model = new \Magento\TestFramework\ObjectManager( $primaryConfig, $instanceConfig, array( - 'Magento\Core\Model\Dir\Verification' => $verification, + 'Magento\App\Dir\Verification' => $verification, 'Magento\Core\Model\Cache\Type\Config' => $cache, 'Magento\Core\Model\ObjectManager\ConfigLoader' => $configLoader, 'Magento\Core\Model\ObjectManager\ConfigCache' => $configCache, diff --git a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/RequestTest.php b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/RequestTest.php index 7f79f37301b75..6a81be56265f8 100644 --- a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/RequestTest.php +++ b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/RequestTest.php @@ -37,8 +37,7 @@ class RequestTest extends \PHPUnit_Framework_TestCase protected function setUp() { $this->_model = new \Magento\TestFramework\Request( - $this->getMock('Magento\Core\Model\StoreManager', ['__wakeup'], [], '', false), - $this->getMock('Magento\Backend\Helper\Data', [], [], '', false) + $this->getMock('Magento\App\RouterListInterface', array(), array(), '', false) ); } diff --git a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ResponseTest.php b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ResponseTest.php index 41473ce22d4d1..09214ed54783a 100644 --- a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ResponseTest.php +++ b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/ResponseTest.php @@ -32,7 +32,7 @@ class ResponseTest extends \PHPUnit_Framework_TestCase public function testCanSendHeaders() { $response = new \Magento\TestFramework\Response( - $this->getMock('Magento\Core\Model\Event\Manager', array(), array(), '', false) + $this->getMock('Magento\Event\ManagerInterface', array(), array(), '', false) ); $this->assertTrue($response->canSendHeaders()); $this->assertTrue($response->canSendHeaders(false)); diff --git a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/TestCase/ControllerAbstractTest.php b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/TestCase/ControllerAbstractTest.php index 9d196ca7e20a0..0ac47a15e2e06 100644 --- a/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/TestCase/ControllerAbstractTest.php +++ b/dev/tests/integration/framework/tests/unit/testsuite/Magento/Test/TestCase/ControllerAbstractTest.php @@ -46,12 +46,9 @@ protected function setUp() ; $session = new \Magento\Object(array('messages' => $messagesCollection)); $request = new \Magento\TestFramework\Request( - $this->getMock('Magento\Core\Model\StoreManager', [], [], '', false), - $this->getMock('Magento\Backend\Helper\Data', [], [], '', false) - ); - $response = new \Magento\TestFramework\Response( - $this->getMock('Magento\Core\Model\Event\Manager', array(), array(), '', false) + $this->getMock('Magento\App\RouterListInterface', array(), array(), '', false) ); + $response = new \Magento\TestFramework\Response(); $this->_objectManager = $this->getMock( 'Magento\TestFramework\ObjectManager', array('get', 'create'), array(), '', false @@ -59,8 +56,8 @@ protected function setUp() $this->_objectManager->expects($this->any()) ->method('get') ->will($this->returnValueMap(array( - array('Magento\TestFramework\Request', $request), - array('Magento\TestFramework\Response', $response), + array('Magento\App\RequestInterface', $request), + array('Magento\App\ResponseInterface', $response), array('Magento\Core\Model\Session', $session), ))); } @@ -126,7 +123,7 @@ public function testAssertRedirectFailure() public function testAssertRedirect() { /* - * Prevent calling \Magento\Core\Controller\Response\Http::setRedirect() because it dispatches event, + * Prevent calling \Magento\App\Response\Http::setRedirect() because it dispatches event, * which requires fully initialized application environment intentionally not available * for unit tests */ diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/AddTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/AddTest.php index 8249d297d2cb7..dd6c8726f3fac 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/AddTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Attribute/Set/Toolbar/AddTest.php @@ -35,7 +35,7 @@ class AddTest extends \PHPUnit_Framework_TestCase public function testToHtmlFormId() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $block = $layout->addBlock('Magento\Adminhtml\Block\Catalog\Product\Attribute\Set\Toolbar\Add', 'block'); $block->setArea('adminhtml')->unsetChild('setForm'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/OptionTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/OptionTest.php index 0963b50f4c7b1..81e11184211b7 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/OptionTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/OptionTest.php @@ -34,7 +34,7 @@ class OptionTest extends \PHPUnit_Framework_TestCase { public function testGetOptionValuesCaching() { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Options\Option'); /** @var $productWithOptions \Magento\Catalog\Model\Product */ $productWithOptions = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Type/SelectTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Type/SelectTest.php index 504cfe9ea384b..b5a1ad6dc4cb3 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Type/SelectTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Type/SelectTest.php @@ -35,7 +35,7 @@ class SelectTest extends \PHPUnit_Framework_TestCase public function testToHtmlFormId() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Options\Type_Select */ $block = $layout->createBlock('Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Options\Type\Select', 'select'); $html = $block->getPriceTypeSelectHtml(); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config/MatrixTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config/MatrixTest.php index 11164d17846bd..baf77d4275d08 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config/MatrixTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config/MatrixTest.php @@ -43,7 +43,7 @@ public function testGetVariations() $objectManager->get('Magento\Core\Model\Registry') ->register('current_product', \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Catalog\Model\Product')->load(1)); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text', 'head'); /** @var $usedAttribute \Magento\Catalog\Model\Entity\Attribute */ $usedAttribute = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() @@ -54,7 +54,7 @@ public function testGetVariations() ); $attributeOptions = $usedAttribute->getSource()->getAllOptions(false); /** @var $block \Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Super\Config_Matrix */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock(preg_replace('/Test$/', '', __CLASS__)); $variations = $block->getVariations(); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/ConfigTest.php index e85fef2daa50e..82f474152bd36 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/ConfigTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/ConfigTest.php @@ -42,7 +42,7 @@ public function testGetSelectedAttributesForSimpleProductType() $objectManager->get('Magento\Core\Model\Registry') ->register('current_product', $objectManager->create('Magento\Catalog\Model\Product')); /** @var $block \Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Super\Config */ - $block = $objectManager->get('Magento\Core\Model\Layout') + $block = $objectManager->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Super\Config'); $this->assertEquals(array(), $block->getSelectedAttributes()); } @@ -57,14 +57,14 @@ public function testGetSelectedAttributesForConfigurableProductType() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry') ->register('current_product', $objectManager->create('Magento\Catalog\Model\Product')->load(1)); - $objectManager->get('Magento\Core\Model\Layout')->createBlock('Magento\Core\Block\Text', 'head'); + $objectManager->get('Magento\View\LayoutInterface')->createBlock('Magento\Core\Block\Text', 'head'); $usedAttribute = $objectManager->get('Magento\Catalog\Model\Entity\Attribute')->loadByCode( \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Eav\Model\Config') ->getEntityType('catalog_product')->getId(), 'test_configurable' ); /** @var $block \Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Super\Config */ - $block = $objectManager->get('Magento\Core\Model\Layout') + $block = $objectManager->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Super\Config'); $selectedAttributes = $block->getSelectedAttributes(); $this->assertEquals(array($usedAttribute->getId()), array_keys($selectedAttributes)); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/SettingsTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/SettingsTest.php index ffaef757f401e..b1f4ba55737e4 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/SettingsTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/SettingsTest.php @@ -57,7 +57,7 @@ public function testGetContinueUrl($productId, $expectedUrl) $context = $objectManager->create('Magento\Backend\Block\Template\Context', array('urlBuilder' => $urlModel)); /** @var $layout \Magento\Core\Model\Layout */ - $layout = $objectManager->get('Magento\Core\Model\Layout'); + $layout = $objectManager->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Super\Settings */ $block = $layout->createBlock( 'Magento\Adminhtml\Block\Catalog\Product\Edit\Tab\Super\Settings', diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/TabsTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/TabsTest.php index f16b59b3e5384..4424a309dd82b 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/TabsTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Edit/TabsTest.php @@ -39,10 +39,10 @@ class TabsTest extends \PHPUnit_Framework_TestCase public function testPrepareLayout() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $objectManager->get('Magento\Core\Model\View\DesignInterface') + $objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); - $objectManager->get('Magento\Core\Model\Config\Scope') + $objectManager->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); /** @var $product \Magento\Catalog\Model\Product */ $product = $objectManager->create('Magento\Catalog\Model\Product'); @@ -50,7 +50,7 @@ public function testPrepareLayout() $objectManager->get('Magento\Core\Model\Registry')->register('product', $product); /** @var $layout \Magento\Core\Model\Layout */ - $layout = $objectManager->get('Magento\Core\Model\Layout'); + $layout = $objectManager->get('Magento\View\LayoutInterface'); $layout->addBlock('Magento\Core\Block\Text', 'head'); $layout->setArea('nonexisting'); // prevent block templates rendering /** @var $block \Magento\Adminhtml\Block\Catalog\Product\Edit\Tabs */ diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/EditTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/EditTest.php index 0a5a2aaaf15b2..55139cb21f458 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/EditTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/EditTest.php @@ -50,7 +50,7 @@ protected function setUp() /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry')->register('current_product', $product); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Catalog\Product\Edit'); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery/ContentTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery/ContentTest.php index 6ebb974071022..2579bf435a840 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery/ContentTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Helper/Form/Gallery/ContentTest.php @@ -35,7 +35,7 @@ class ContentTest extends \PHPUnit_Framework_TestCase public function testGetUploader() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Catalog\Product\Helper\Form\Gallery\Content */ $block = $layout->createBlock('Magento\Adminhtml\Block\Catalog\Product\Helper\Form\Gallery\Content', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Options/AjaxTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Options/AjaxTest.php index 707219bc93590..41c13382db528 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Options/AjaxTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Catalog/Product/Options/AjaxTest.php @@ -40,7 +40,7 @@ class AjaxTest extends \PHPUnit_Framework_TestCase protected function setUp() { parent::setUp(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Catalog\Product\Options\Ajax'); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Cms/Page/Edit/Tab/DesignTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Cms/Page/Edit/Tab/DesignTest.php index 98286908cd63e..f065f2a10bc08 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Cms/Page/Edit/Tab/DesignTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Cms/Page/Edit/Tab/DesignTest.php @@ -40,10 +40,10 @@ public function testPrepareForm() { /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $objectManager->get('Magento\Core\Model\View\DesignInterface') + $objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); - $objectManager->get('Magento\Core\Model\Config\Scope') + $objectManager->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $objectManager->get('Magento\Core\Model\Registry') ->register('cms_page', $objectManager->create('Magento\Cms\Model\Page')); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Dashboard/GraphTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Dashboard/GraphTest.php index 3f3197c633cd6..8fd9077f8cac8 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Dashboard/GraphTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Dashboard/GraphTest.php @@ -40,7 +40,7 @@ class GraphTest extends \PHPUnit_Framework_TestCase protected function setUp() { parent::setUp(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Dashboard\Graph'); $this->_block->setDataHelperName('Magento\Adminhtml\Helper\Dashboard\Order'); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Newsletter/Queue/Edit/FormTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Newsletter/Queue/Edit/FormTest.php index 5f1197eee2444..73936e9674d5e 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Newsletter/Queue/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Newsletter/Queue/Edit/FormTest.php @@ -38,11 +38,11 @@ class FormTest extends \PHPUnit_Framework_TestCase */ public function testPrepareForm() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Config\Scope') + ->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Adminhtml\Block\Newsletter\Queue\Edit\Form'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Newsletter/SubscriberTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Newsletter/SubscriberTest.php index 114f115561553..85bdb121a2f45 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Newsletter/SubscriberTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Newsletter/SubscriberTest.php @@ -35,7 +35,7 @@ class SubscriberTest extends \PHPUnit_Framework_TestCase public function testGetShowQueueAdd() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Newsletter\Subscriber */ $block = $layout->createBlock('Magento\Adminhtml\Block\Newsletter\Subscriber', 'block'); /** @var $childBlock \Magento\Core\Block\Template */ diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Page/HeadTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Page/HeadTest.php index 38275e4199751..4dbab16ae6799 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Page/HeadTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Page/HeadTest.php @@ -33,7 +33,7 @@ public function testConstruct() { $this->assertInstanceOf( 'Magento\Adminhtml\Block\Page\Head', - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Page\Head') ); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Page/HeaderTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Page/HeaderTest.php index 801ddd8cc0f5d..5100a6c818dce 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Page/HeaderTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Page/HeaderTest.php @@ -41,7 +41,7 @@ class HeaderTest extends \PHPUnit_Framework_TestCase protected function setUp() { parent::setUp(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Page\Header'); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Catalog/Edit/Tab/MainTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Catalog/Edit/Tab/MainTest.php index 12823bacd0ad7..68eead7ccb7ef 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Catalog/Edit/Tab/MainTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Catalog/Edit/Tab/MainTest.php @@ -41,7 +41,7 @@ public function testPrepareForm() { /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $objectManager->get('Magento\Core\Model\View\DesignInterface') + $objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); $rule = $objectManager->create('Magento\CatalogRule\Model\Rule'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Quote/Edit/Tab/LabelsTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Quote/Edit/Tab/LabelsTest.php index 2b5542a0b2983..5486fb59eed37 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Quote/Edit/Tab/LabelsTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Quote/Edit/Tab/LabelsTest.php @@ -33,7 +33,7 @@ public function testConstruct() { $this->assertInstanceOf( 'Magento\Adminhtml\Block\Promo\Quote\Edit\Tab\Labels', - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Promo\Quote\Edit\Tab\Labels') ); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Quote/Edit/Tab/MainTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Quote/Edit/Tab/MainTest.php index 74780a9d14b9a..c68ca6b29a4f6 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Quote/Edit/Tab/MainTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Promo/Quote/Edit/Tab/MainTest.php @@ -40,7 +40,7 @@ class MainTest extends \PHPUnit_Framework_TestCase public function testPrepareForm() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $objectManager->get('Magento\Core\Model\View\DesignInterface') + $objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); $objectManager->get('Magento\Core\Model\Registry') diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Rating/Edit/Tab/FormTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Rating/Edit/Tab/FormTest.php index 6b5b7bf2fcf5b..bddd226d6fe67 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Rating/Edit/Tab/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Rating/Edit/Tab/FormTest.php @@ -33,7 +33,7 @@ public function testConstruct() { $this->assertInstanceOf( 'Magento\Adminhtml\Block\Rating\Edit\Tab\Form', - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Rating\Edit\Tab\Form') ); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Filter/FormTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Filter/FormTest.php index 0b63e845f1603..6315c59eb7629 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Filter/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Filter/FormTest.php @@ -38,7 +38,7 @@ class FormTest extends \PHPUnit_Framework_TestCase */ public function testPrepareForm() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Core\Model\Layout'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Bestsellers/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Bestsellers/GridTest.php index ff62debbb48ca..4472f31e9d696 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Bestsellers/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Bestsellers/GridTest.php @@ -40,7 +40,7 @@ class GridTest extends \PHPUnit_Framework_TestCase protected function setUp() { parent::setUp(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Report\Sales\Bestsellers\Grid'); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Coupons/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Coupons/GridTest.php index 12426583a96dd..f7befb8871bad 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Coupons/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Coupons/GridTest.php @@ -40,7 +40,7 @@ class GridTest extends \PHPUnit_Framework_TestCase */ protected function _createBlock($reportType = null) { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Report\Sales\Coupons\Grid'); $filterData = new \Magento\Object(); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Invoiced/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Invoiced/GridTest.php index 5c07b54d889d3..5e39ca592de8c 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Invoiced/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Invoiced/GridTest.php @@ -40,7 +40,7 @@ class GridTest extends \PHPUnit_Framework_TestCase */ protected function _createBlock($reportType = null) { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Report\Sales\Invoiced\Grid'); $filterData = new \Magento\Object(); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Refunded/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Refunded/GridTest.php index 5a6e7a8595998..ad6d42391ae41 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Refunded/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Refunded/GridTest.php @@ -40,7 +40,7 @@ class GridTest extends \PHPUnit_Framework_TestCase */ protected function _createBlock($reportType = null) { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Report\Sales\Refunded\Grid'); $filterData = new \Magento\Object(); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Sales/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Sales/GridTest.php index 4d2c521fe099f..e6d091edb27ee 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Sales/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Sales/GridTest.php @@ -40,7 +40,7 @@ class GridTest extends \PHPUnit_Framework_TestCase */ protected function _createBlock($reportType = null) { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Report\Sales\Sales\Grid'); $filterData = new \Magento\Object(); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Shipping/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Shipping/GridTest.php index c35c0a142e1b2..7f1de78a63a5c 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Shipping/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Shipping/GridTest.php @@ -40,7 +40,7 @@ class GridTest extends \PHPUnit_Framework_TestCase */ protected function _createBlock($reportType = null) { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Report\Sales\Shipping\Grid'); $filterData = new \Magento\Object(); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Tax/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Tax/GridTest.php index ef54d95c59cef..db75c6a06353e 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Tax/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Report/Sales/Tax/GridTest.php @@ -40,7 +40,7 @@ class GridTest extends \PHPUnit_Framework_TestCase */ protected function _createBlock($reportType = null) { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Report\Sales\Tax\Grid'); $filterData = new \Magento\Object(); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Sales/Items/AbstractTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Sales/Items/AbstractTest.php index f0274d482d0fd..09f4998df14a8 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Sales/Items/AbstractTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Sales/Items/AbstractTest.php @@ -35,7 +35,7 @@ class AbstractTest extends \PHPUnit_Framework_TestCase public function testGetItemExtraInfoHtml() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Sales\Items\AbstractItems */ $block = $layout->createBlock('Magento\Adminhtml\Block\Sales\Items\AbstractItems', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Sales/Order/Create/Form/AbstractTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Sales/Order/Create/Form/AbstractTest.php index 63051266b44ea..c78a884086434 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Sales/Order/Create/Form/AbstractTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Sales/Order/Create/Form/AbstractTest.php @@ -39,7 +39,7 @@ class AbstractTest public function testAddAttributesToForm() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $objectManager->get('Magento\Core\Model\View\DesignInterface') + $objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); $arguments = array( diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Account/Edit/FormTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Account/Edit/FormTest.php index 1dcbe0fe83268..5a3db2399e6f7 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Account/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Account/Edit/FormTest.php @@ -43,7 +43,7 @@ public function testPrepareForm() $session->setUser($user); /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var \Magento\Adminhtml\Block\System\Account\Edit\Form */ $block = $layout->createBlock('Magento\Adminhtml\Block\System\Account\Edit\Form'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Design/Edit/Tab/GeneralTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Design/Edit/Tab/GeneralTest.php index 21e74ed8313c4..be96f0e31b8aa 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Design/Edit/Tab/GeneralTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Design/Edit/Tab/GeneralTest.php @@ -39,7 +39,7 @@ class GeneralTest extends \PHPUnit_Framework_TestCase public function testPrepareForm() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $objectManager->get('Magento\Core\Model\View\DesignInterface') + $objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); $objectManager->get('Magento\Core\Model\Registry') diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/DeleteTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/DeleteTest.php index 30d0004cec9ec..0fe5ae4b2260d 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/DeleteTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/DeleteTest.php @@ -35,7 +35,7 @@ class DeleteTest extends \PHPUnit_Framework_TestCase public function testGetHeaderText() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\System\Store\Delete */ $block = $layout->createBlock('Magento\Adminhtml\Block\System\Store\Delete', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/GroupTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/GroupTest.php index 3e1b1807e5202..341cfae72b6e7 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/GroupTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/GroupTest.php @@ -55,7 +55,7 @@ protected function setUp() } /** @var $layout \Magento\Core\Model\Layout */ - $layout = $objectManager->get('Magento\Core\Model\Layout'); + $layout = $objectManager->get('Magento\View\LayoutInterface'); $this->_block = $layout->createBlock('Magento\Adminhtml\Block\System\Store\Edit\Form\Group'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/StoreTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/StoreTest.php index b34e609ab9c30..017c46e267e8f 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/StoreTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/StoreTest.php @@ -55,7 +55,7 @@ protected function setUp() } /** @var $layout \Magento\Core\Model\Layout */ - $layout = $objectManager->get('Magento\Core\Model\Layout'); + $layout = $objectManager->get('Magento\View\LayoutInterface'); $this->_block = $layout->createBlock('Magento\Adminhtml\Block\System\Store\Edit\Form\Store'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/WebsiteTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/WebsiteTest.php index 1c3276be4daeb..3a61acaa2633e 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/WebsiteTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/Edit/Form/WebsiteTest.php @@ -54,7 +54,7 @@ protected function setUp() } /** @var $layout \Magento\Core\Model\Layout */ - $layout = $objectManager->get('Magento\Core\Model\Layout'); + $layout = $objectManager->get('Magento\View\LayoutInterface'); $this->_block = $layout->createBlock('Magento\Adminhtml\Block\System\Store\Edit\Form\Website'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/EditTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/EditTest.php index 5a13b1182679d..7a6422efe7970 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/EditTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Store/EditTest.php @@ -64,7 +64,7 @@ public function testStoreTypeFormCreated($registryData, $expected) $this->_initStoreTypesInRegistry($registryData); /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\System\Store\Edit */ $block = $layout->createBlock('Magento\Adminhtml\Block\System\Store\Edit', 'block'); $block->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML); @@ -115,7 +115,7 @@ public function testGetHeaderText($registryData, $expected) $this->_initStoreTypesInRegistry($registryData); /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\System\Store\Edit */ $block = $layout->createBlock('Magento\Adminhtml\Block\System\Store\Edit', 'block'); $block->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Variable/EditTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Variable/EditTest.php index 44f7b7d0046cc..08e8402de4eda 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Variable/EditTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/System/Variable/EditTest.php @@ -51,9 +51,9 @@ public function testConstruct() ->save(); $objectManager->get('Magento\Core\Model\Registry')->register('current_variable', $variable); - $objectManager->get('Magento\Core\Controller\Request\Http') + $objectManager->get('Magento\App\RequestInterface') ->setParam('variable_id', $variable->getId()); - $block = $objectManager->get('Magento\Core\Model\Layout') + $block = $objectManager->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\System\Variable\Edit', 'variable'); $this->assertArrayHasKey('variable-delete_button', $block->getLayout()->getAllBlocks()); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Tax/Rate/ImportExportTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Tax/Rate/ImportExportTest.php index beb463d3e0ace..3b3dd3f055947 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Tax/Rate/ImportExportTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Tax/Rate/ImportExportTest.php @@ -35,7 +35,7 @@ class ImportExportTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Tax\Rate\ImportExport') ->setArea('adminhtml'); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/TemplateTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/TemplateTest.php index 2cc243834d67d..b651f0e7a48a0 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/TemplateTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/TemplateTest.php @@ -36,7 +36,7 @@ public function testConstructor() { $this->assertInstanceOf( 'Magento\Backend\Block\Template', - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Template') ); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/TreeTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/TreeTest.php index 67e80147f5bc3..72da190437840 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/TreeTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Category/TreeTest.php @@ -47,7 +47,7 @@ protected function setUp() parent::setUp(); $this->_treeBlock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout') + ->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Urlrewrite\Catalog\Category\Tree'); } diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Edit/FormTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Edit/FormTest.php index e656c33e42fe2..40bba41da657e 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Edit/FormTest.php @@ -42,7 +42,7 @@ class FormTest extends \PHPUnit_Framework_TestCase protected function _getFormInstance($args = array()) { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit\Form */ $block = $layout->createBlock( 'Magento\Adminhtml\Block\Urlrewrite\Catalog\Edit\Form', 'block', array('data' => $args) diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/GridTest.php index b8d2907de72ee..da55945ba153d 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Catalog/Product/GridTest.php @@ -39,7 +39,7 @@ class GridTest extends \PHPUnit_Framework_TestCase public function testPrepareGrid() { /** @var $gridBlock \Magento\Adminhtml\Block\Urlrewrite\Catalog\Product\Grid */ - $gridBlock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $gridBlock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Urlrewrite\Catalog\Product\Grid'); $gridBlock->toHtml(); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/FormTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/FormTest.php index 68756908fe874..80862a4f2d3b1 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/Edit/FormTest.php @@ -42,7 +42,7 @@ class FormTest extends \PHPUnit_Framework_TestCase protected function _getFormInstance($args = array()) { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Edit\Form */ $block = $layout->createBlock( 'Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Edit\Form', 'block', array('data' => $args) diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/GridTest.php index 3af726ce3f0d4..2968ce70603ee 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Cms/Page/GridTest.php @@ -39,7 +39,7 @@ class GridTest extends \PHPUnit_Framework_TestCase public function testPrepareGrid() { /** @var \Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Grid $gridBlock */ - $gridBlock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $gridBlock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Grid'); $gridBlock->toHtml(); @@ -67,7 +67,7 @@ public function testPrepareGrid() public function testPrepareGridForMultipleStores() { /** @var \Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Grid $gridBlock */ - $gridBlock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $gridBlock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Adminhtml\Block\Urlrewrite\Cms\Page\Grid'); $gridBlock->toHtml(); $this->assertInstanceOf('Magento\Backend\Block\Widget\Grid\Column', $gridBlock->getColumn('store_id'), diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Edit/FormTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Edit/FormTest.php index 415425e699700..ba2e5bd5e82a0 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Urlrewrite/Edit/FormTest.php @@ -42,7 +42,7 @@ class FormTest extends \PHPUnit_Framework_TestCase protected function _getFormInstance($args = array()) { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Urlrewrite\Edit\Form */ $block = $layout->createBlock('Magento\Adminhtml\Block\Urlrewrite\Edit\Form', 'block', array('data' => $args)); $block->setTemplate(null); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/Form/ContainerTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/Form/ContainerTest.php index 66c464e8f8348..b6fb60bcc8b40 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/Form/ContainerTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/Form/ContainerTest.php @@ -36,7 +36,7 @@ public function testGetFormHtml() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); // Create block with blocking _prepateLayout(), which is used by block to instantly add 'form' child /** @var $block \Magento\Adminhtml\Block\Widget\Form\Container */ $block = $this->getMock('Magento\Adminhtml\Block\Widget\Form\Container', array('_prepareLayout'), diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/Grid/Massaction/ItemTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/Grid/Massaction/ItemTest.php index e18846ef8ac62..2bed5b208055e 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/Grid/Massaction/ItemTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/Grid/Massaction/ItemTest.php @@ -35,7 +35,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase public function testGetAdditionalActionBlock() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Widget\Grid\Massaction\Item */ $block = $layout->createBlock('Magento\Adminhtml\Block\Widget\Grid\Massaction\Item', 'block'); $expected = $layout->addBlock('Magento\Core\Block\Template', 'additional_action', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/GridTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/GridTest.php index 0d349f0c3876b..40e2e428d4bcf 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/GridTest.php @@ -35,7 +35,7 @@ class GridTest extends \PHPUnit_Framework_TestCase public function testGetMassactionBlock() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Widget\Grid */ $block = $layout->createBlock('Magento\Adminhtml\Block\Widget\Grid', 'block'); $child = $layout->addBlock('Magento\Core\Block\Template', 'massaction', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/TabsTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/TabsTest.php index c30972a7b41c6..a5b23e43de32f 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/TabsTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Block/Widget/TabsTest.php @@ -45,7 +45,7 @@ public function testAddTab() $objectManager->get('Magento\Core\Model\Registry')->register('current_widget_instance', $widgetInstance); /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Adminhtml\Block\Widget\Tabs */ $block = $layout->createBlock('Magento\Adminhtml\Block\Widget\Tabs', 'block'); $layout->addBlock('Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Tab\Main', 'child_tab', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Adminhtml/Controller/Catalog/Product/AttributeTest.php b/dev/tests/integration/testsuite/Magento/Adminhtml/Controller/Catalog/Product/AttributeTest.php index 246dda8df4b5a..6d3869318f696 100644 --- a/dev/tests/integration/testsuite/Magento/Adminhtml/Controller/Catalog/Product/AttributeTest.php +++ b/dev/tests/integration/testsuite/Magento/Adminhtml/Controller/Catalog/Product/AttributeTest.php @@ -113,7 +113,7 @@ protected function _translate($string) // emulate admin store and design \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\StoreManagerInterface') ->setCurrentStore(\Magento\Core\Model\AppInterface::ADMIN_STORE_ID); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDesignTheme(1); /** @var \Magento\Core\Model\Translate $translate */ $translate = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/App/FrontControllerTest.php b/dev/tests/integration/testsuite/Magento/App/FrontControllerTest.php new file mode 100644 index 0000000000000..b707dcb22139b --- /dev/null +++ b/dev/tests/integration/testsuite/Magento/App/FrontControllerTest.php @@ -0,0 +1,91 @@ +_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); + $this->_model = $this->_objectManager->create('Magento\App\FrontController'); + } + + public function testSetGetDefault() + { + $this->_model->setDefault('test', 'value'); + $this->assertEquals('value', $this->_model->getDefault('test')); + + $default = array('some_key' => 'some_value'); + $this->_model->setDefault($default); + $this->assertEquals($default, $this->_model->getDefault()); + } + + public function testGetRequest() + { + $this->assertNull($this->_model->getRequest()); + } + + public function testGetResponse() + { + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App')->setResponse( + \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->get('Magento\App\ResponseInterface') + ); + if (!\Magento\TestFramework\Helper\Bootstrap::canTestHeaders()) { + $this->markTestSkipped('Can\'t test get response without sending headers'); + } + $this->assertInstanceOf('Magento\App\ResponseInterface', $this->_model->getResponse()); + } + + public function testDispatch() + { + if (!\Magento\TestFramework\Helper\Bootstrap::canTestHeaders()) { + $this->markTestSkipped('Cant\'t test dispatch process without sending headers'); + } + $_SERVER['HTTP_HOST'] = 'localhost'; + $this->_objectManager->get('Magento\Config\Scope')->setCurrentScope('frontend'); + $request = $this->_objectManager->create('Magento\App\Request\Http'); + /* empty action */ + $request->setRequestUri('core/index/index'); + $this->_model->dispatch($request); + $this->assertEmpty($this->_model->getResponse()->getBody()); + $this->assertEquals($request, $this->_model->getRequest()); + } +} diff --git a/dev/tests/integration/testsuite/Magento/Authorizenet/Block/Directpost/IframeTest.php b/dev/tests/integration/testsuite/Magento/Authorizenet/Block/Directpost/IframeTest.php index d190cb2499159..aaea940c9ba86 100644 --- a/dev/tests/integration/testsuite/Magento/Authorizenet/Block/Directpost/IframeTest.php +++ b/dev/tests/integration/testsuite/Magento/Authorizenet/Block/Directpost/IframeTest.php @@ -36,7 +36,7 @@ public function testToHtml() { $xssString = ''; /** @var $block \Magento\Authorizenet\Block\Directpost\Iframe */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Authorizenet\Block\Directpost\Iframe'); $block->setTemplate('directpost/iframe.phtml'); $block->setParams(array( diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormStub.php b/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormStub.php index eceee165e99d2..46eed65f44e02 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormStub.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormStub.php @@ -76,7 +76,7 @@ protected function _initObjects() $this->_configRoot = $this->_configRootStub; } $this->_fieldRenderer = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout')->createBlock( + ->get('Magento\View\LayoutInterface')->createBlock( 'Magento\Backend\Block\System\Config\Form\Field' ); } diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormTest.php index 04867722be32d..82de257d0f257 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormTest.php @@ -53,7 +53,7 @@ public function testDependenceHtml() /** @var $layout \Magento\Core\Model\Layout */ $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\Layout', array('area' => 'adminhtml')); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); /** @var $block \Magento\Backend\Block\System\Config\Form */ $block = $layout->createBlock('Magento\Backend\Block\System\Config\Form', 'block'); @@ -80,14 +80,14 @@ public function testDependenceHtml() public function testInitFieldsUseDefaultCheckbox($section, $group, $field, array $configData, $expectedUseDefault) { $this->markTestIncomplete('MAGETWO-9058'); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $form = $this->_formFactory->create(); $fieldset = $form->addFieldset($section->getId() . '_' . $group->getId(), array()); /* @TODO Eliminate stub by proper mock / config fixture usage */ /** @var $block \Magento\Backend\Block\System\Config\FormStub */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Backend\Block\System\Config\FormStub'); $block->setScope(\Magento\Backend\Block\System\Config\Form::SCOPE_WEBSITES); $block->setStubConfigData($configData); @@ -134,14 +134,14 @@ public function testInitFieldsUseDefaultCheckbox($section, $group, $field, array public function testInitFieldsUseConfigPath($section, $group, $field, array $configData, $expectedUseDefault) { $this->markTestIncomplete('MAGETWO-9058'); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $form = $this->_formFactory->create(); $fieldset = $form->addFieldset($section->getId() . '_' . $group->getId(), array()); /* @TODO Eliminate stub by proper mock / config fixture usage */ /** @var $block \Magento\Backend\Block\System\Config\FormStub */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Backend\Block\System\Config\FormStub'); $block->setScope(\Magento\Backend\Block\System\Config\Form::SCOPE_DEFAULT); $block->setStubConfigData($configData); @@ -165,7 +165,7 @@ public function initFieldsInheritCheckboxDataProvider() \Magento\Core\Model\App::PARAM_BAN_CACHE => true, )); \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Config\Scope') + ->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App') ->loadAreaPart(\Magento\Core\Model\App\Area::AREA_ADMINHTML, \Magento\Core\Model\App\Area::PART_CONFIG); @@ -212,20 +212,20 @@ public function initFieldsInheritCheckboxDataProvider() public function testInitFormAddsFieldsets() { \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Controller\Response\Http')->headersSentThrowsException = false; + ->get('Magento\App\ResponseInterface')->headersSentThrowsException = false; \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( 'Magento\Core\Controller\Front\Action', array( 'request' => \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Controller\Request\Http'), + ->get('Magento\App\Request\Http'), 'response' => \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->get('Magento\Core\Model\App')->getResponse() ) ); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Controller\Request\Http') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\RequestInterface') ->setParam('section', 'general'); /** @var $block \Magento\Backend\Block\System\Config\Form */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Backend\Block\System\Config\Form'); $block->initForm(); $expectedIds = array( diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/TemplateTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/TemplateTest.php index 912a04fc95974..93c9370ae859d 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/TemplateTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/TemplateTest.php @@ -42,7 +42,7 @@ class TemplateTest extends \PHPUnit_Framework_TestCase protected function setUp() { parent::setUp(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Backend\Block\Template'); } diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/ContainerTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/ContainerTest.php index 202b452937419..bd8413c402cca 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/ContainerTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/ContainerTest.php @@ -32,7 +32,7 @@ class ContainerTest extends \PHPUnit_Framework_TestCase public function testPseudoConstruct() { /** @var $block \Magento\Backend\Block\Widget\Container */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Backend\Block\Widget\Container', '', array('data' => array( \Magento\Backend\Block\Widget\Container::PARAM_CONTROLLER => 'one', diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/FormTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/FormTest.php index 3b1df3ce6b61d..29982f371d0a7 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/FormTest.php @@ -40,7 +40,7 @@ class FormTest extends \PHPUnit_Framework_TestCase public function testSetFieldset() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $objectManager->get('Magento\Core\Model\View\DesignInterface') + $objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); $layout = $objectManager->create('Magento\Core\Model\Layout'); diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ColumnSetTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ColumnSetTest.php index dc1df20dd0c38..e8df531d5dae1 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ColumnSetTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ColumnSetTest.php @@ -63,7 +63,7 @@ protected function setUp() $context = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Block\Template\Context', array('layout' => $this->_layoutMock)); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock( 'Magento\Backend\Block\Widget\Grid\ColumnSet', '', array('context' => $context) ); diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ContainerTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ContainerTest.php index 8573fe0904416..35a5034c9a6c8 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ContainerTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ContainerTest.php @@ -32,7 +32,7 @@ class ContainerTest extends \PHPUnit_Framework_TestCase public function testPseudoConstruct() { /** @var $block \Magento\Backend\Block\Widget\Grid\Container */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Backend\Block\Widget\Grid\Container', '', array( 'data' => array( \Magento\Backend\Block\Widget\Container::PARAM_CONTROLLER => 'widget', diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ExtendedTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ExtendedTest.php index ba4e31255c437..ae399d8487186 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ExtendedTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/ExtendedTest.php @@ -38,7 +38,7 @@ class ExtendedTest extends \PHPUnit_Framework_TestCase protected $_block; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layoutMock; @@ -47,7 +47,7 @@ protected function setUp() parent::setUp(); $this->_layoutMock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout'); + ->get('Magento\View\LayoutInterface'); $context = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Backend\Block\Template\Context', array('layout' => $this->_layoutMock)); $this->_block = $this->_layoutMock->createBlock( diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/MassactionTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/MassactionTest.php index ad090e4f0e9bc..f014623bc3d33 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/MassactionTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/MassactionTest.php @@ -40,7 +40,7 @@ class MassactionTest extends \PHPUnit_Framework_TestCase protected $_block; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -53,7 +53,7 @@ protected function setUp() $this->_setFixtureTheme(); $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Layout', array('area' => 'adminhtml')); + ->create('Magento\View\LayoutInterface', array('area' => 'adminhtml')); $this->_layout->getUpdate()->load('layout_test_grid_handle'); $this->_layout->generateXml(); $this->_layout->generateElements(); @@ -70,7 +70,7 @@ protected function _setFixtureTheme() \Magento\Core\Model\App::PARAM_RUN_CODE => 'admin', \Magento\Core\Model\App::PARAM_RUN_TYPE => 'store', \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => __DIR__ . '/../../_files/design' + \Magento\App\Dir::THEMES => __DIR__ . '/../../_files/design' ), )); } @@ -84,7 +84,7 @@ protected function _setFixtureTheme() public function testMassactionDefaultValues() { /** @var $blockEmpty \Magento\Backend\Block\Widget\Grid\Massaction */ - $blockEmpty = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $blockEmpty = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Backend\Block\Widget\Grid\Massaction'); $this->assertEmpty($blockEmpty->getItems()); $this->assertEquals(0, $blockEmpty->getCount()); diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/GridTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/GridTest.php index 159697c4e1a59..2ad1ec80e84be 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/GridTest.php @@ -38,7 +38,7 @@ class GridTest extends \PHPUnit_Framework_TestCase protected $_block; /** - * @var \Magento\Core\Model\Layout|\PHPUnit_Framework_MockObject_MockObject + * @var \Magento\View\LayoutInterface|\PHPUnit_Framework_MockObject_MockObject */ protected $_layoutMock; @@ -65,7 +65,7 @@ protected function setUp() $this->_layoutMock->expects($this->any())->method('createBlock') ->with('Magento\Backend\Block\Widget\Button') ->will($this->returnValue(\Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout')->createBlock('Magento\Backend\Block\Widget\Button'))); + ->get('Magento\View\LayoutInterface')->createBlock('Magento\Backend\Block\Widget\Button'))); $this->_layoutMock->expects($this->any())->method('helper') ->with('Magento\Core\Helper\Data') ->will($this->returnValue( @@ -73,7 +73,7 @@ protected function setUp() )); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Backend\Block\Widget\Grid'); $this->_block->setLayout($this->_layoutMock); $this->_block->setNameInLayout('grid'); @@ -90,7 +90,7 @@ protected function _getColumnSetMock() $this->getMock('Magento\Core\Helper\Data', array(), array(), '', false), \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Block\Template\Context', array( - 'dirs' => new \Magento\Core\Model\Dir(__DIR__), + 'dirs' => new \Magento\App\Dir(__DIR__), 'filesystem' => new \Magento\Filesystem(new \Magento\Filesystem\Adapter\Local), )), \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Backend/Controller/AbstractActionTest.php b/dev/tests/integration/testsuite/Magento/Backend/Controller/AbstractActionTest.php index bd332d920d4d1..3e4f523657156 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Controller/AbstractActionTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Controller/AbstractActionTest.php @@ -40,7 +40,7 @@ class AbstractActionTest extends \Magento\Backend\Utility\Controller */ public function testPreDispatchWithEmptyUrlRedirectsToStartupPage() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $this->dispatch('backend'); /** @var $backendUrlModel \Magento\Backend\Model\Url */ @@ -104,7 +104,7 @@ public function testAclInNodes($blockName, $resource, $isLimitedAccess) $this->dispatch('backend/admin/dashboard'); - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $actualBlocks = $layout->getAllBlocks(); $this->assertNotEmpty($actualBlocks); diff --git a/dev/tests/integration/testsuite/Magento/Backend/Controller/Router/DefaultRouterTest.php b/dev/tests/integration/testsuite/Magento/Backend/Controller/Router/DefaultRouterTest.php index 857fbb02080ed..255820105e67f 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Controller/Router/DefaultRouterTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Controller/Router/DefaultRouterTest.php @@ -57,7 +57,7 @@ protected function setUp() 'baseController' => 'Magento\Backend\Controller\AbstractAction', 'routeConfig' => $this->_routeConfigMock ); - $this->_frontMock = $this->getMock('Magento\Core\Controller\Varien\Front', array(), array(), '', false); + $this->_frontMock = $this->getMock('Magento\App\FrontController', array(), array(), '', false); $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Backend\Controller\Router\DefaultRouter', $options); $this->_model->setFront($this->_frontMock); @@ -65,7 +65,7 @@ protected function setUp() public function testRouterCannotProcessRequestsWithWrongFrontName() { - $request = $this->getMock('Magento\Core\Controller\Request\Http', array(), array(), '', false); + $request = $this->getMock('Magento\App\Request\Http', array(), array(), '', false); $request->expects($this->once()) ->method('getPathInfo') ->will($this->returnValue('frontend/admin/dashboard')); @@ -76,7 +76,7 @@ public function testRouterCannotProcessRequestsWithWrongFrontName() public function testRouterCanProcessRequestsWithProperFrontName() { - $request = $this->getMock('Magento\Core\Controller\Request\Http', array(), array(), '', false); + $request = $this->getMock('Magento\App\Request\Http', array(), array(), '', false); $request->expects($this->once()) ->method('getPathInfo') ->will($this->returnValue('backend/admin/dashboard')); diff --git a/dev/tests/integration/testsuite/Magento/Backend/Controller/Router/Validator/DefaultTest.php b/dev/tests/integration/testsuite/Magento/Backend/Controller/Router/Validator/DefaultTest.php index 3f67a027ca559..2c9cb197168fc 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Controller/Router/Validator/DefaultTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Controller/Router/Validator/DefaultTest.php @@ -32,25 +32,6 @@ */ class DefaultTest extends \PHPUnit_Framework_TestCase { - /** - * @magentoConfigFixture global/areas/adminhtml/frontName 0 - * @expectedException \InvalidArgumentException - * @magentoAppIsolation enabled - */ - public function testConstructWithEmptyAreaFrontName() - { - $dataHelperMock = $this->getMock('Magento\Backend\Helper\Data', array(), array(), '', false); - $dataHelperMock->expects($this->once())->method('getAreaFrontName')->will($this->returnValue(null)); - - $options = array( - 'areaCode' => \Magento\Core\Model\App\Area::AREA_ADMINHTML, - 'baseController' => 'Magento\Backend\Controller\AbstractAction', - 'backendData' => $dataHelperMock, - ); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Backend\Controller\Router\DefaultRouter', $options); - } - /** * @magentoConfigFixture global/areas/adminhtml/frontName backend * @magentoAppIsolation enabled diff --git a/dev/tests/integration/testsuite/Magento/Backend/Helper/DataTest.php b/dev/tests/integration/testsuite/Magento/Backend/Helper/DataTest.php index 333ef2fbb421f..2e3ec9dc9a708 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Helper/DataTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Helper/DataTest.php @@ -44,7 +44,7 @@ class DataTest extends \PHPUnit_Framework_TestCase protected function setUp() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $this->_helper = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->get('Magento\Backend\Helper\Data'); @@ -55,7 +55,7 @@ protected function tearDown() $this->_helper = null; $this->_auth = null; \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Config\Scope') + ->get('Magento\Config\ScopeInterface') ->setCurrentScope(null); } @@ -88,7 +88,7 @@ protected function _logout() */ public function testPageHelpUrl() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Controller\Request\Http') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\RequestInterface') ->setControllerModule('dummy') ->setControllerName('index') ->setActionName('test'); diff --git a/dev/tests/integration/testsuite/Magento/Backend/Model/Auth/SessionTest.php b/dev/tests/integration/testsuite/Magento/Backend/Model/Auth/SessionTest.php index c761fca0dbc41..8faa5176f4e47 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Model/Auth/SessionTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Model/Auth/SessionTest.php @@ -45,7 +45,7 @@ class SessionTest extends \PHPUnit_Framework_TestCase protected function setUp() { parent::setUp(); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $this->_auth = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Backend\Model\Auth'); @@ -57,7 +57,7 @@ protected function setUp() protected function tearDown() { $this->_model = null; - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(null); } diff --git a/dev/tests/integration/testsuite/Magento/Backend/Model/Config/Backend/Admin/RobotsTest.php b/dev/tests/integration/testsuite/Magento/Backend/Model/Config/Backend/Admin/RobotsTest.php index 400cadf351471..a58f09ec7651a 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Model/Config/Backend/Admin/RobotsTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Model/Config/Backend/Admin/RobotsTest.php @@ -78,7 +78,7 @@ public function testAfterLoadRobotsTxtExists() public function testAfterSaveFileNotExists() { $robotsTxtPath = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Dir')->getDir() . DS . 'robots.txt'; + ->get('Magento\App\Dir')->getDir() . DS . 'robots.txt'; $this->assertFileNotExists($robotsTxtPath, 'robots.txt exists'); $this->_modifyConfig(); @@ -92,7 +92,7 @@ public function testAfterSaveFileNotExists() */ public function testAfterSaveFileExists() { - $robotsTxtPath = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') + $robotsTxtPath = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') ->getDir() . DS . 'robots.txt'; $this->assertFileExists($robotsTxtPath, 'robots.txt exists'); @@ -108,7 +108,7 @@ protected function _modifyConfig() $this->_model->setValue($robotsTxt)->save(); $this->assertStringEqualsFile( \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Dir')->getDir() . DS . 'robots.txt', + ->get('Magento\App\Dir')->getDir() . DS . 'robots.txt', $robotsTxt ); } diff --git a/dev/tests/integration/testsuite/Magento/Backend/Model/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Backend/Model/ConfigTest.php index d48cfc8257977..858d7cc4f602f 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Model/ConfigTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Model/ConfigTest.php @@ -41,7 +41,7 @@ class ConfigTest extends \PHPUnit_Framework_TestCase */ public function testSaveWithSingleStoreModeEnabled($groups) { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); /** @var $_configDataObject \Magento\Backend\Model\Config */ $_configDataObject = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Backend/Model/LocaleTest.php b/dev/tests/integration/testsuite/Magento/Backend/Model/LocaleTest.php index 328ee192ae44b..f466d4f6da703 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Model/LocaleTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Model/LocaleTest.php @@ -82,7 +82,7 @@ public function testSetLocaleWithSessionLocale() public function testSetLocaleWithRequestLocale() { $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Controller\Request\Http'); + ->get('Magento\App\RequestInterface'); $request->setPost(array('locale' => 'de_DE')); $this->_checkSetLocale('de_DE'); } diff --git a/dev/tests/integration/testsuite/Magento/Backend/Model/MenuTest.php b/dev/tests/integration/testsuite/Magento/Backend/Model/MenuTest.php index b7d430bd04d17..23a16e9b6afc1 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Model/MenuTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Model/MenuTest.php @@ -46,7 +46,7 @@ protected function setUp() ->loadArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Backend\Model\Auth'); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); } diff --git a/dev/tests/integration/testsuite/Magento/Backend/Model/ObserverTest.php b/dev/tests/integration/testsuite/Magento/Backend/Model/ObserverTest.php index ded07bb568bd8..68e1a8fbaa740 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Model/ObserverTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Model/ObserverTest.php @@ -50,7 +50,7 @@ public function testActionPreDispatchAdminNotLogged() $this->markTestSkipped('Skipped because of authentication process moved into base controller.'); $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Controller\Request\Http'); + ->get('Magento\App\RequestInterface'); $this->assertEmpty($request->getRouteName()); $this->assertEmpty($request->getControllerName()); $this->assertEmpty($request->getActionName()); @@ -112,7 +112,7 @@ public function testActionPreDispatchAdminLoggedNoRedirect() protected function _buildObserver() { $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Controller\Request\Http'); + ->get('Magento\App\RequestInterface'); $request->setPost( 'login', array( diff --git a/dev/tests/integration/testsuite/Magento/Backend/Model/UrlTest.php b/dev/tests/integration/testsuite/Magento/Backend/Model/UrlTest.php index 3cdb3b54959b1..285642045082c 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Model/UrlTest.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Model/UrlTest.php @@ -101,9 +101,9 @@ public function testGetUrl() */ public function testGetSecretKey($routeName, $controller, $action, $expectedHash) { - /** @var $request \Magento\Core\Controller\Request\Http */ + /** @var $request \Magento\App\RequestInterface */ $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Controller\Request\Http'); + ->create('Magento\App\RequestInterface'); $request->setControllerName('default_controller') ->setActionName('default_action') ->setRouteName('default_router'); @@ -148,9 +148,9 @@ public function testGetSecretKeyForwarded() { /** @var $helper \Magento\Core\Helper\Data */ $helper = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Helper\Data'); - /** @var $request \Magento\Core\Controller\Request\Http */ + /** @var $request \Magento\App\RequestInterface */ $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Controller\Request\Http'); + ->create('Magento\App\RequestInterface'); $request->setControllerName('controller')->setActionName('action'); $request->initForward()->setControllerName(uniqid())->setActionName(uniqid()); $this->_model->setRequest($request); diff --git a/dev/tests/integration/testsuite/Magento/Backend/Model/_files/no_robots_txt.php b/dev/tests/integration/testsuite/Magento/Backend/Model/_files/no_robots_txt.php index d54286ffb47bb..96046322741c6 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Model/_files/no_robots_txt.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Model/_files/no_robots_txt.php @@ -25,7 +25,7 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -$robotsTxtPath = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir() +$robotsTxtPath = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir() . DS . 'robots.txt'; if (is_file($robotsTxtPath)) { @unlink($robotsTxtPath); diff --git a/dev/tests/integration/testsuite/Magento/Backend/Model/_files/robots_txt.php b/dev/tests/integration/testsuite/Magento/Backend/Model/_files/robots_txt.php index 9cbecd0600a29..04f3cf95c55d3 100644 --- a/dev/tests/integration/testsuite/Magento/Backend/Model/_files/robots_txt.php +++ b/dev/tests/integration/testsuite/Magento/Backend/Model/_files/robots_txt.php @@ -27,6 +27,6 @@ copy( __DIR__ . DS . 'robots.txt', - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir() + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir() . DS . 'robots.txt' ); diff --git a/dev/tests/integration/testsuite/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/GridTest.php b/dev/tests/integration/testsuite/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/GridTest.php index 8a044210d95cb..847738ec1212c 100644 --- a/dev/tests/integration/testsuite/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/GridTest.php +++ b/dev/tests/integration/testsuite/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Search/GridTest.php @@ -35,7 +35,7 @@ class GridTest */ public function testToHtmlHasOnClick() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML); /** @var $layout \Magento\Core\Model\Layout */ $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( diff --git a/dev/tests/integration/testsuite/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/SearchTest.php b/dev/tests/integration/testsuite/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/SearchTest.php index f94192bb7b0e7..8988537a81521 100644 --- a/dev/tests/integration/testsuite/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/SearchTest.php +++ b/dev/tests/integration/testsuite/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/SearchTest.php @@ -35,7 +35,7 @@ class SearchTest */ public function testToHtmlHasIndex() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML); /** @var $layout \Magento\Core\Model\Layout */ diff --git a/dev/tests/integration/testsuite/Magento/Bundle/Controller/ProductTest.php b/dev/tests/integration/testsuite/Magento/Bundle/Controller/ProductTest.php index 4fdceec5ab31c..d697c1dceee9b 100644 --- a/dev/tests/integration/testsuite/Magento/Bundle/Controller/ProductTest.php +++ b/dev/tests/integration/testsuite/Magento/Bundle/Controller/ProductTest.php @@ -40,7 +40,8 @@ public function testViewAction() $this->dispatch('catalog/product/view/id/3'); $this->assertContains( 'catalog_product_view_type_bundle', - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout')->getUpdate() + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') + ->getUpdate() ->getHandles() ); $responseBody = $this->getResponse()->getBody(); diff --git a/dev/tests/integration/testsuite/Magento/Captcha/Block/Captcha/DefaultTest.php b/dev/tests/integration/testsuite/Magento/Captcha/Block/Captcha/DefaultTest.php index 5b9d918ad341d..992efc5a94205 100644 --- a/dev/tests/integration/testsuite/Magento/Captcha/Block/Captcha/DefaultTest.php +++ b/dev/tests/integration/testsuite/Magento/Captcha/Block/Captcha/DefaultTest.php @@ -35,8 +35,9 @@ class DefaultTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') - ->createBlock('Magento\Captcha\Block\Captcha\DefaultCaptcha'); + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->get('Magento\View\LayoutInterface') + ->createBlock('Magento\Captcha\Block\Captcha\DefaultCaptcha'); } /** diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Layer/ViewTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Layer/ViewTest.php index 20f6e99d9ee0a..0b5e81cae623f 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Layer/ViewTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Layer/ViewTest.php @@ -45,7 +45,7 @@ public function testGetFilters() $layer->setCurrentCategory($currentCategory); /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Catalog\Block\Layer\View */ $block = $layout->createBlock('Magento\Catalog\Block\Layer\View', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/AbstractTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/AbstractTest.php index 08551fc4c9740..a516c1ad474e5 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/AbstractTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/AbstractTest.php @@ -65,9 +65,9 @@ protected function setUp() self::$_isStubClass = true; } - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDefaultDesignTheme(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock(self::STUB_CLASS); $this->_product = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Catalog\Model\Product'); @@ -120,7 +120,7 @@ public function testGetPriceHtml() { $this->_block->setLayout( \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout') + ->get('Magento\View\LayoutInterface') ); $this->assertContains('10', $this->_block->getPriceHtml($this->_product)); } @@ -129,7 +129,7 @@ public function testGetReviewsSummaryHtml() { $this->_block->setLayout( \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout') + ->get('Magento\View\LayoutInterface') ); $html = $this->_block->getReviewsSummaryHtml($this->_product, false, true); $this->assertNotEmpty($html); @@ -151,7 +151,7 @@ public function testGetTierPriceTemplate() public function testGetTierPriceHtml() { $this->_block->setLayout(\Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout')); + ->get('Magento\View\LayoutInterface')); $html = $this->_block->getTierPriceHtml(); $this->assertNotEmpty($html); $this->assertContains('2', $html); /* Buy 2 */ @@ -193,7 +193,7 @@ public function testHasProductUrl() public function testLayoutDependColumnCount() { $this->_block->setLayout(\Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout')); + ->get('Magento\View\LayoutInterface')); $this->assertEquals(3, $this->_block->getColumnCount()); /* default column count */ $this->_block->addColumnCountLayoutDepend('test', 10); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/Configurable/AssociatedSelector/Backend/Grid/ColumnSetTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/Configurable/AssociatedSelector/Backend/Grid/ColumnSetTest.php index d40c30485adce..f94f82e2b4fe3 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/Configurable/AssociatedSelector/Backend/Grid/ColumnSetTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/Configurable/AssociatedSelector/Backend/Grid/ColumnSetTest.php @@ -47,7 +47,7 @@ public function testPrepareSelect() $objectManager->get('Magento\Core\Model\Registry')->register('current_product', $product); /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Catalog\Block\Product\Configurable\AssociatedSelector\Backend\Grid\ColumnSet */ $block = $layout->createBlock( 'Magento\Catalog\Block\Product\Configurable\AssociatedSelector\Backend\Grid\ColumnSet', diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ListTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ListTest.php index bec3c3dc429d1..31f73cb1a5da8 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ListTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ListTest.php @@ -41,7 +41,7 @@ class ListTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Catalog\Block\Product\ListProduct'); } @@ -126,6 +126,6 @@ public function testPrepareSortableFieldsByCategory() protected function _getLayout() { - return \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + return \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); } } diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/NewTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/NewTest.php index ed644683b50eb..cdf29e5a04e0e 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/NewTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/NewTest.php @@ -41,7 +41,7 @@ class NewTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Catalog\Block\Product\NewProduct'); \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App') ->getArea(\Magento\Core\Model\App\Area::AREA_FRONTEND)->load(); @@ -67,7 +67,7 @@ public function testGetCacheKeyInfo() $this->assertSame(2, array_shift($keys)); $themeModel = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->getDesignTheme(); $this->assertEquals($themeModel->getId() ?: null, $info[2]); @@ -101,7 +101,7 @@ public function testToHtml() $this->_block->setProductsCount(5); $this->_block->setTemplate('product/widget/new/content/new_list.phtml'); $this->_block->setLayout(\Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout')); + ->get('Magento\View\LayoutInterface')); $html = $this->_block->toHtml(); $this->assertNotEmpty($html); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/CrosssellTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/CrosssellTest.php index 2b297b6e2d338..5e867a346db53 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/CrosssellTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/CrosssellTest.php @@ -45,10 +45,10 @@ public function testAll() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry')->register('product', $product); /** @var $block \Magento\Catalog\Block\Product\ProductList\Crosssell */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Catalog\Block\Product\ProductList\Crosssell'); $block->setLayout(\Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout')); + ->get('Magento\View\LayoutInterface')); $block->setTemplate('Magento_Checkout::cart/crosssell.phtml'); $block->setItemCount(1); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/RelatedTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/RelatedTest.php index 36216ad54584f..58fe415949b25 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/RelatedTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/RelatedTest.php @@ -45,10 +45,10 @@ public function testAll() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry')->register('product', $product); /** @var $block \Magento\Catalog\Block\Product\ProductList\Related */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Catalog\Block\Product\ProductList\Related'); $block->setLayout(\Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout')); + ->get('Magento\View\LayoutInterface')); $block->setTemplate('product/list/related.phtml'); $html = $block->toHtml(); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/ToolbarTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/ToolbarTest.php index 0ee5fa2950cef..be90d2fdb80c3 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/ToolbarTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ProductList/ToolbarTest.php @@ -32,7 +32,7 @@ class ToolbarTest extends \PHPUnit_Framework_TestCase public function testGetPagerHtml() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Catalog\Block\Product\ProductList\Toolbar */ $block = $layout->createBlock('Magento\Catalog\Block\Product\ProductList\Toolbar', 'block'); /** @var $childBlock \Magento\Core\Block\Text */ diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/AdditionalTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/AdditionalTest.php index 4d29789357d27..1658e0dd36c1f 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/AdditionalTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/AdditionalTest.php @@ -32,7 +32,7 @@ class AdditionalTest extends \PHPUnit_Framework_TestCase public function testGetChildHtmlList() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Catalog\Block\Product\View\Additional */ $block = $layout->createBlock('Magento\Catalog\Block\Product\View\Additional', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/OptionsTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/OptionsTest.php index 12bd789b501c1..1323843a4f316 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/OptionsTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/OptionsTest.php @@ -53,7 +53,7 @@ protected function setUp() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry')->unregister('current_product'); $objectManager->get('Magento\Core\Model\Registry')->register('current_product', $this->_product); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Catalog\Block\Product\View\Options'); } diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/Type/ConfigurableTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/Type/ConfigurableTest.php index ae9df449453f5..303c724184cc3 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/Type/ConfigurableTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/View/Type/ConfigurableTest.php @@ -49,7 +49,7 @@ protected function setUp() $this->_product = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Catalog\Model\Product'); $this->_product->load(1); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Catalog\Block\Product\View\Type\Configurable'); $this->_block->setProduct($this->_product); } diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ViewTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ViewTest.php index 1a53453ae7f9f..79845640ec6cb 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ViewTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Block/Product/ViewTest.php @@ -57,7 +57,7 @@ protected function setUp() public function testSetLayout() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $headBlock = $layout->createBlock('Magento\Core\Block\Template', 'head'); $layout->addBlock($this->_block); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Controller/CategoryTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Controller/CategoryTest.php index 4df022a809cb2..1f464b8d45e49 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Controller/CategoryTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Controller/CategoryTest.php @@ -99,7 +99,7 @@ public function testViewAction($categoryId, array $expectedHandles, array $expec $this->assertEquals($categoryId, $lastCategoryId, 'Last visited category.'); /* Layout updates */ - $handles = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $handles = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->getUpdate()->getHandles(); foreach ($expectedHandles as $expectedHandleName) { $this->assertContains($expectedHandleName, $handles); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Controller/ProductTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Controller/ProductTest.php index 3fd18e6a81e92..741e40a58b12e 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Controller/ProductTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Controller/ProductTest.php @@ -70,7 +70,7 @@ public function testViewAction() $this->assertEquals(1, $lastViewedProductId); /* Layout updates */ - $handles = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $handles = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->getUpdate()->getHandles(); $this->assertContains('catalog_product_view_type_simple', $handles); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Helper/Product/ViewTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Helper/Product/ViewTest.php index 4f85cf09e6548..4d17a88e15e83 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Helper/Product/ViewTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Helper/Product/ViewTest.php @@ -26,7 +26,7 @@ */ namespace Magento\Catalog\Helper\Product; -require \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir() +require \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir() . '/app/code/Magento/Catalog/Controller/Product.php'; class ViewTest extends \PHPUnit_Framework_TestCase @@ -44,7 +44,7 @@ class ViewTest extends \PHPUnit_Framework_TestCase protected function setUp() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $objectManager->get('Magento\Core\Model\View\DesignInterface') + $objectManager->get('Magento\View\DesignInterface') ->setDefaultDesignTheme(); $this->_helper = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->get('Magento\Catalog\Helper\Product\View'); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/DesignTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/DesignTest.php index da8f661947394..f54c916a991bc 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Model/DesignTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/DesignTest.php @@ -50,7 +50,7 @@ public function testApplyCustomDesign($theme) { $this->_model->applyCustomDesign($theme); $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); $this->assertEquals('package', $design->getDesignTheme()->getPackageCode()); $this->assertEquals('theme', $design->getDesignTheme()->getThemeCode()); } @@ -61,7 +61,7 @@ public function testApplyCustomDesign($theme) public function getThemeModel() { $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'); + ->create('Magento\View\Design\ThemeInterface'); $theme->setData($this->_getThemeData()); return array(array($theme)); } diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/AttributeTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/AttributeTest.php index fbd104e8d776a..b1c61b27dc377 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/AttributeTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/AttributeTest.php @@ -79,7 +79,7 @@ public function testApplyInvalid() $request->setParam('attribute', array()); $this->_model->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text')) ; @@ -95,7 +95,7 @@ public function testApply() $request->setParam('attribute', $this->_attributeOptionId); $this->_model->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/CategoryTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/CategoryTest.php index 8a4995d4a05ed..ab426da3e1490 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/CategoryTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/CategoryTest.php @@ -69,7 +69,7 @@ public function testApplyNothing() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $this->_model->apply( $objectManager->get('Magento\TestFramework\Request'), - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); /** @var $objectManager \Magento\TestFramework\ObjectManager */ @@ -84,7 +84,7 @@ public function testApply() $request->setParam('cat', 3); $this->_model->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/DecimalTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/DecimalTest.php index 144b18177aa99..d55907e94ff18 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/DecimalTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/DecimalTest.php @@ -71,7 +71,7 @@ public function testApplyNothing() $request = $objectManager->get('Magento\TestFramework\Request'); $this->_model->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); @@ -88,7 +88,7 @@ public function testApplyInvalid() $request->setParam('decimal', 'non-decimal'); $this->_model->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); @@ -104,7 +104,7 @@ public function testApply() $request->setParam('decimal', '1,100'); $this->_model->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/ItemTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/ItemTest.php index 16cfeaa037084..95e7c7668f592 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/ItemTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/ItemTest.php @@ -94,9 +94,9 @@ public function testGetRemoveUrl() /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); /** @var $request \Magento\TestFramework\Request */ - $request = $objectManager->get('Magento\TestFramework\Request'); + $request = $objectManager->create('Magento\App\RequestInterface'); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Controller\Request\Http') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\RequestInterface') ->setRoutingInfo(array( 'requested_route' => 'x', 'requested_controller' => 'y', @@ -106,7 +106,7 @@ public function testGetRemoveUrl() $request->setParam('cat', 4); $this->_model->getFilter()->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/Price/AlgorithmAdvancedTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/Price/AlgorithmAdvancedTest.php index 64872e34b4bd0..188807407e7df 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/Price/AlgorithmAdvancedTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/Price/AlgorithmAdvancedTest.php @@ -67,7 +67,7 @@ protected function _prepareFilter($request = null) if (!is_null($request)) { $filter->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); $interval = $filter->getInterval(); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/PriceTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/PriceTest.php index 4d4485022e703..2d8dd7464e52f 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/PriceTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/Layer/Filter/PriceTest.php @@ -104,7 +104,7 @@ public function testApplyNothing() $request = $objectManager->get('Magento\TestFramework\Request'); $this->_model->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); @@ -121,7 +121,7 @@ public function testApplyInvalid() $request->setParam('price', 'non-numeric'); $this->_model->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); @@ -140,7 +140,7 @@ public function testApplyManual() $request->setParam('price', '10-20'); $this->_model->apply( $request, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text') ); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/Product/Type/AbstractTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/Product/Type/AbstractTest.php index c95eb571f7bcb..6a41d51983d3a 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/Model/Product/Type/AbstractTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/Product/Type/AbstractTest.php @@ -41,7 +41,7 @@ protected function setUp() ->get('Magento\Catalog\Model\Product\Option'); $eavConfig = $this->getMock('Magento\Eav\Model\Config', array(), array(), '', false); $catalogProductType = $this->getMock('Magento\Catalog\Model\Product\Type', array(), array(), '', false); - $eventManager = $this->getMock('Magento\Core\Model\Event\Manager', array('dispatch'), array(), '', false); + $eventManager = $this->getMock('Magento\Event\ManagerInterface', array('dispatch'), array(), '', false); $coreData = $this->getMock('Magento\Core\Helper\Data', array(), array(), '', false); $fileStorageDb = $this->getMock('Magento\Core\Helper\File\Storage\Database', array(), array(), '', false); $filesystem = $this->getMock('Magento\Filesystem', array(), array(), '', false); diff --git a/dev/tests/integration/testsuite/Magento/Catalog/WidgetTest.php b/dev/tests/integration/testsuite/Magento/Catalog/WidgetTest.php index 75b5e59e08622..7ba5a669c1046 100644 --- a/dev/tests/integration/testsuite/Magento/Catalog/WidgetTest.php +++ b/dev/tests/integration/testsuite/Magento/Catalog/WidgetTest.php @@ -31,10 +31,12 @@ class WidgetTest extends \PHPUnit_Framework_TestCase { public function testNewProductsWidget() { + $type = 'Magento\Catalog\Block\Product\Widget\NewWidget'; + /** @var $model \Magento\Widget\Model\Widget\Instance */ $model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Widget\Model\Widget\Instance'); - $config = $model->setType('Magento\Catalog\Block\Product\Widget\NewWidget')->getWidgetConfigAsArray(); + $config = $model->setType($type)->getWidgetConfigAsArray(); $templates = $config['parameters']['template']['values']; $this->assertArrayHasKey('default', $templates); $this->assertArrayHasKey('list', $templates); @@ -52,5 +54,9 @@ public function testNewProductsWidget() $this->assertContains('left', $containers); $this->assertContains('content', $containers); $this->assertContains('right', $containers); + + // Verify that the correct id (code) is found for this widget instance type. + $code = $model->setType($type)->getWidgetReference('type', $type, 'code'); + $this->assertEquals('new_products', $code); } } diff --git a/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/Advanced/ResultTest.php b/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/Advanced/ResultTest.php index e5621728b7e42..8ece02d37628f 100644 --- a/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/Advanced/ResultTest.php +++ b/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/Advanced/ResultTest.php @@ -30,7 +30,7 @@ class ResultTest extends \PHPUnit_Framework_TestCase { /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -41,7 +41,8 @@ class ResultTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->get('Magento\View\LayoutInterface'); $this->_block = $this->_layout->createBlock('Magento\CatalogSearch\Block\Advanced\Result', 'block'); } diff --git a/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/ResultTest.php b/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/ResultTest.php index 9136a403d20d4..5ced3929b363a 100644 --- a/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/ResultTest.php +++ b/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/ResultTest.php @@ -32,7 +32,7 @@ class ResultTest extends \PHPUnit_Framework_TestCase public function testSetListOrders() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $layout->addBlock('Magento\Core\Block\Text', 'head'); // The tested block is using head block /** @var $block \Magento\CatalogSearch\Block\Result */ $block = $layout->addBlock('Magento\CatalogSearch\Block\Result', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/TermTest.php b/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/TermTest.php index 585b299aece24..c826fde614a4d 100644 --- a/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/TermTest.php +++ b/dev/tests/integration/testsuite/Magento/CatalogSearch/Block/TermTest.php @@ -36,7 +36,7 @@ class TermTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\CatalogSearch\Block\Term'); } diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php index d700b88c63bc8..051a43102612e 100644 --- a/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php +++ b/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php @@ -41,7 +41,7 @@ protected function setUp() { \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App') ->getArea(\Magento\Core\Model\App\Area::AREA_FRONTEND)->load(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Checkout\Block\Cart\Item\Renderer'); /** @var $item \Magento\Sales\Model\Quote\Item */ $item = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/SidebarTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/SidebarTest.php index 058c0efe91897..83c2fc2d0f5d5 100644 --- a/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/SidebarTest.php +++ b/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/SidebarTest.php @@ -32,7 +32,7 @@ class SidebarTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Checkout\Block\Cart\Sidebar'); } diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Block/CartTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Block/CartTest.php index 0d79ccb370f2d..cb457468f0ceb 100644 --- a/dev/tests/integration/testsuite/Magento/Checkout/Block/CartTest.php +++ b/dev/tests/integration/testsuite/Magento/Checkout/Block/CartTest.php @@ -35,7 +35,7 @@ class CartTest extends \PHPUnit_Framework_TestCase public function testGetMethods() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $child = $layout->createBlock('Magento\Core\Block\Text') ->setChild('child1', $layout->createBlock('Magento\Core\Block\Text', 'method1')) ->setChild('child2', $layout->createBlock('Magento\Core\Block\Text', 'method2')); @@ -49,7 +49,7 @@ public function testGetMethods() public function testGetMethodsEmptyChild() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $childEmpty = $layout->createBlock('Magento\Core\Block\Text'); /** @var $block \Magento\Checkout\Block\Cart */ $block = $layout->createBlock('Magento\Checkout\Block\Cart') @@ -61,7 +61,7 @@ public function testGetMethodsEmptyChild() public function testGetMethodsNoChild() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Checkout\Block\Cart */ $block = $layout->createBlock('Magento\Checkout\Block\Cart'); $methods = $block->getMethods('child'); diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Block/Multishipping/OverviewTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Block/Multishipping/OverviewTest.php index ba36ce3bd3f03..2c4e961180f29 100644 --- a/dev/tests/integration/testsuite/Magento/Checkout/Block/Multishipping/OverviewTest.php +++ b/dev/tests/integration/testsuite/Magento/Checkout/Block/Multishipping/OverviewTest.php @@ -38,7 +38,7 @@ protected function setUp() { \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App') ->getArea(\Magento\Core\Model\App\Area::AREA_FRONTEND)->load(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Checkout\Block\Multishipping\Overview'); } @@ -57,6 +57,6 @@ public function testGetRowItemHtml() ->create('Magento\Sales\Model\Quote'); $item->setQuote($quote); // assure that default renderer was obtained - $this->assertSelectCount('h2.product-name a', 1, $this->_block->getRowItemHtml($item)); + $this->assertSelectCount('strong.product.name a', 1, $this->_block->getRowItemHtml($item)); } } diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Block/Onepage/Payment/MethodsTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Block/Onepage/Payment/MethodsTest.php index d3e7e7415f42a..de0357afe6356 100644 --- a/dev/tests/integration/testsuite/Magento/Checkout/Block/Onepage/Payment/MethodsTest.php +++ b/dev/tests/integration/testsuite/Magento/Checkout/Block/Onepage/Payment/MethodsTest.php @@ -40,7 +40,7 @@ class MethodsTest extends \PHPUnit_Framework_TestCase protected function setUp() { parent::setUp(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Checkout\Block\Onepage\Payment\Methods'); } diff --git a/dev/tests/integration/testsuite/Magento/Cms/Block/BlockTest.php b/dev/tests/integration/testsuite/Magento/Cms/Block/BlockTest.php index bc4aa2d3d1218..efa4555a565db 100644 --- a/dev/tests/integration/testsuite/Magento/Cms/Block/BlockTest.php +++ b/dev/tests/integration/testsuite/Magento/Cms/Block/BlockTest.php @@ -41,7 +41,7 @@ public function testToHtml() ->create('Magento\Cms\Model\Block'); $cmsBlock->load('fixture_block', 'identifier'); /** @var $block \Magento\Cms\Block\Block */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Cms\Block\Block'); $block->setBlockId($cmsBlock->getId()); $result = $block->toHtml(); diff --git a/dev/tests/integration/testsuite/Magento/Cms/Block/Widget/BlockTest.php b/dev/tests/integration/testsuite/Magento/Cms/Block/Widget/BlockTest.php index a50322fd28c68..213126d951e11 100644 --- a/dev/tests/integration/testsuite/Magento/Cms/Block/Widget/BlockTest.php +++ b/dev/tests/integration/testsuite/Magento/Cms/Block/Widget/BlockTest.php @@ -41,7 +41,7 @@ public function testToHtml() ->create('Magento\Cms\Model\Block'); $cmsBlock->load('fixture_block', 'identifier'); /** @var $block \Magento\Cms\Block\Widget\Block */ - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Cms\Block\Widget\Block'); $block->setBlockId($cmsBlock->getId()); $block->toHtml(); diff --git a/dev/tests/integration/testsuite/Magento/Cms/Controller/RouterTest.php b/dev/tests/integration/testsuite/Magento/Cms/Controller/RouterTest.php index 222073b0cc6ab..b756d44aefce7 100644 --- a/dev/tests/integration/testsuite/Magento/Cms/Controller/RouterTest.php +++ b/dev/tests/integration/testsuite/Magento/Cms/Controller/RouterTest.php @@ -40,14 +40,14 @@ protected function setUp() $this->_model = new \Magento\Cms\Controller\Router( \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->get('Magento\Core\Controller\Varien\Action\Factory'), - new \Magento\Core\Model\Event\ManagerStub( - $this->getMockForAbstractClass('Magento\Core\Model\Event\InvokerInterface', array(), '', false), - $this->getMock('Magento\Core\Model\Event\Config', array(), array(), '', false), + new \Magento\Event\ManagerInterfaceStub( + $this->getMockForAbstractClass('Magento\Event\InvokerInterface'), + $this->getMock('Magento\Event\Config', array(), array(), '', false), $this->getMock('Magento\EventFactory', array(), array(), '', false), $this->getMock('Magento\Event\ObserverFactory', array(), array(), '', false) ), \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\UrlInterface'), + ->get('Magento\UrlInterface'), \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->get('Magento\Core\Model\Config\Primary'), \Magento\TestFramework\Helper\Bootstrap::getObjectManager() @@ -66,7 +66,7 @@ public function testMatch() { $this->markTestIncomplete('MAGETWO-3393'); $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Controller\Request\Http'); + ->create('Magento\App\RequestInterface'); //Open Node $request->setPathInfo('parent_node'); $controller = $this->_model->match($request); @@ -77,9 +77,9 @@ public function testMatch() /** * Event manager stub */ -namespace Magento\Core\Model\Event; +namespace Magento\Event; -class ManagerStub extends \Magento\Core\Model\Event\Manager +class ManagerStub extends Manager { /** * Stub dispatch event diff --git a/dev/tests/integration/testsuite/Magento/Cms/Helper/PageTest.php b/dev/tests/integration/testsuite/Magento/Cms/Helper/PageTest.php index 5d93c6c7e8f97..f22ea85345363 100644 --- a/dev/tests/integration/testsuite/Magento/Cms/Helper/PageTest.php +++ b/dev/tests/integration/testsuite/Magento/Cms/Helper/PageTest.php @@ -53,7 +53,7 @@ public function testRenderPage() $page->getId() ); $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); $this->assertEquals('magento_blank', $design->getDesignTheme()->getThemePath()); $this->assertTrue($result); } diff --git a/dev/tests/integration/testsuite/Magento/Cms/Helper/Wysiwyg/ImagesTest.php b/dev/tests/integration/testsuite/Magento/Cms/Helper/Wysiwyg/ImagesTest.php index 62ad74bc76b72..163485cdafcd0 100644 --- a/dev/tests/integration/testsuite/Magento/Cms/Helper/Wysiwyg/ImagesTest.php +++ b/dev/tests/integration/testsuite/Magento/Cms/Helper/Wysiwyg/ImagesTest.php @@ -27,11 +27,11 @@ class ImagesTest extends \PHPUnit_Framework_TestCase { public function testGetStorageRoot() { - /** @var $dir \Magento\Core\Model\Dir */ - $dir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir'); + /** @var $dir \Magento\App\Dir */ + $dir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir'); $helper = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Cms\Helper\Wysiwyg\Images'); - $this->assertStringStartsWith($dir->getDir(\Magento\Core\Model\Dir::MEDIA), $helper->getStorageRoot()); + $this->assertStringStartsWith($dir->getDir(\Magento\App\Dir::MEDIA), $helper->getStorageRoot()); } public function testGetCurrentUrl() diff --git a/dev/tests/integration/testsuite/Magento/Cms/Model/Wysiwyg/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Cms/Model/Wysiwyg/ConfigTest.php index ea8309b98df3d..5a630002cccc9 100644 --- a/dev/tests/integration/testsuite/Magento/Cms/Model/Wysiwyg/ConfigTest.php +++ b/dev/tests/integration/testsuite/Magento/Cms/Model/Wysiwyg/ConfigTest.php @@ -39,7 +39,7 @@ class ConfigTest extends \PHPUnit_Framework_TestCase protected function setUp() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Cms\Model\Wysiwyg\Config'); diff --git a/dev/tests/integration/testsuite/Magento/Cms/Model/Wysiwyg/Images/StorageTest.php b/dev/tests/integration/testsuite/Magento/Cms/Model/Wysiwyg/Images/StorageTest.php index fb1fb8e3c1587..2f4ed6d7b13c2 100644 --- a/dev/tests/integration/testsuite/Magento/Cms/Model/Wysiwyg/Images/StorageTest.php +++ b/dev/tests/integration/testsuite/Magento/Cms/Model/Wysiwyg/Images/StorageTest.php @@ -54,7 +54,7 @@ public static function tearDownAfterClass() */ public function testGetFilesCollection() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDesignTheme('magento_basic', 'adminhtml'); /** @var $model \Magento\Cms\Model\Wysiwyg\Images\Storage */ $model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() @@ -82,7 +82,7 @@ public function testGetThumbsPath() $viewUrl = $objectManager->get('Magento\Core\Model\View\Url'); $imageHelper = $objectManager->get('Magento\Cms\Helper\Wysiwyg\Images'); $coreFileStorageDb = $objectManager->get('Magento\Core\Helper\File\Storage\Database'); - $dir = $objectManager->get('Magento\Core\Model\Dir'); + $dir = $objectManager->get('Magento\App\Dir'); $storageCollectionFactory = $objectManager->get('Magento\Cms\Model\Wysiwyg\Images\Storage\CollectionFactory'); $storageFileFactory = $objectManager->get('Magento\Core\Model\File\Storage\FileFactory'); $storageDatabaseFactory = $objectManager->get('Magento\Core\Model\File\Storage\DatabaseFactory'); diff --git a/dev/tests/integration/testsuite/Magento/Code/GeneratorTest.php b/dev/tests/integration/testsuite/Magento/Code/GeneratorTest.php index 206c1f154fabc..5b082726fdeea 100644 --- a/dev/tests/integration/testsuite/Magento/Code/GeneratorTest.php +++ b/dev/tests/integration/testsuite/Magento/Code/GeneratorTest.php @@ -58,9 +58,9 @@ protected function setUp() { $this->_includePath = get_include_path(); - /** @var $dirs \Magento\Core\Model\Dir */ - $dirs = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir'); - $generationDirectory = $dirs->getDir(\Magento\Core\Model\Dir::VAR_DIR) . '/generation'; + /** @var $dirs \Magento\App\Dir */ + $dirs = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir'); + $generationDirectory = $dirs->getDir(\Magento\App\Dir::VAR_DIR) . '/generation'; \Magento\Autoload\IncludePath::addIncludePath($generationDirectory); @@ -77,9 +77,9 @@ protected function setUp() protected function tearDown() { - /** @var $dirs \Magento\Core\Model\Dir */ - $dirs = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir'); - $generationDirectory = $dirs->getDir(\Magento\Core\Model\Dir::VAR_DIR) . '/generation'; + /** @var $dirs \Magento\App\Dir */ + $dirs = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir'); + $generationDirectory = $dirs->getDir(\Magento\App\Dir::VAR_DIR) . '/generation'; \Magento\Io\File::rmdirRecursive($generationDirectory); set_include_path($this->_includePath); diff --git a/dev/tests/integration/testsuite/Magento/Core/Block/AbstractBlockTest.php b/dev/tests/integration/testsuite/Magento/Core/Block/AbstractBlockTest.php index e4e561b026f76..d7b67ca72cbbd 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Block/AbstractBlockTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Block/AbstractBlockTest.php @@ -38,7 +38,7 @@ class AbstractBlockTest extends \PHPUnit_Framework_TestCase protected $_block; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout = null; @@ -46,7 +46,7 @@ class AbstractBlockTest extends \PHPUnit_Framework_TestCase protected function setUp() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDefaultDesignTheme(); $this->_block = $this->getMockForAbstractClass('Magento\Core\Block\AbstractBlock', array( \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Block\Context'), @@ -62,12 +62,12 @@ protected function setUp() public function testCssWithWrongImage() { $dirPath = __DIR__ . DIRECTORY_SEPARATOR . '_files'; - /** @var $dirs \Magento\Core\Model\Dir */ - $dirs = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir'); + /** @var $dirs \Magento\App\Dir */ + $dirs = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir'); $prepareFileName = new \ReflectionMethod($dirs, '_setDir'); $prepareFileName->setAccessible(true); - $prepareFileName->invoke($dirs, \Magento\Core\Model\Dir::THEMES, $dirPath); + $prepareFileName->invoke($dirs, \Magento\App\Dir::THEMES, $dirPath); $cssUrl = $this->_block->getViewFileUrl('css/wrong.css', array( 'area' => 'frontend', @@ -79,7 +79,7 @@ public function testCssWithWrongImage() public function testGetRequest() { - $this->assertInstanceOf('Magento\Core\Controller\Request\Http', $this->_block->getRequest()); + $this->assertInstanceOf('Magento\App\RequestInterface', $this->_block->getRequest()); } /** @@ -121,7 +121,7 @@ public function testSetGetNameInLayout() $this->assertEquals($name, $this->_block->getNameInLayout()); // Setting second time, along with the layout - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $layout->createBlock('Magento\Core\Block\Template', $name); $block = $layout->getBlock($name); $this->assertInstanceOf('Magento\Core\Block\AbstractBlock', $block); @@ -250,7 +250,7 @@ public function testGetChildBlock() // With layout /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $child = $layout->createBlock('Magento\Core\Block\Text', $childName); $layout->addBlock($this->_block, $parentName); @@ -475,7 +475,7 @@ public function testGetChildData() public function testSetFrameTags() { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text'); $block->setText('text'); @@ -542,12 +542,12 @@ public function testGetSetMessagesBlock() { // Get one from layout $this->_block->setLayout( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ); $this->assertInstanceOf('Magento\Core\Block\Messages', $this->_block->getMessagesBlock()); // Set explicitly - $messages = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $messages = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Messages'); $this->_block->setMessagesBlock($messages); $this->assertSame($messages, $this->_block->getMessagesBlock()); @@ -637,7 +637,7 @@ public function testJsQuoteEscape() public function testGetCacheKeyInfo() { $name = uniqid('block.'); - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text'); $block->setNameInLayout($name); $this->assertEquals(array($name), $block->getCacheKeyInfo()); @@ -646,7 +646,7 @@ public function testGetCacheKeyInfo() public function testGetCacheKey() { $name = uniqid('block.'); - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text'); $block->setNameInLayout($name); $key = $block->getCacheKey(); @@ -690,7 +690,7 @@ protected function _createSampleBlocks($qty, $withLayout = true, $className = 'M $layout = false; if ($withLayout) { $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout'); + ->get('Magento\View\LayoutInterface'); } for ($i = 0; $i < $qty; $i++) { $name = uniqid('block.'); @@ -729,7 +729,7 @@ protected function _createBlockWithLayout($name = 'block', $alias = null, } if (is_null($this->_layout)) { $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Layout'); + ->get('Magento\View\LayoutInterface'); } $block = $this->_layout->addBlock($mockClass, $name, '', $alias); return $block; diff --git a/dev/tests/integration/testsuite/Magento/Core/Block/TemplateTest.php b/dev/tests/integration/testsuite/Magento/Core/Block/TemplateTest.php index 13288a6703dd4..22246796fc221 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Block/TemplateTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Block/TemplateTest.php @@ -39,13 +39,13 @@ protected function setUp() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $params = array('layout' => $objectManager->create('Magento\Core\Model\Layout', array())); $context = $objectManager->create('Magento\Core\Block\Template\Context', $params); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Template', '', array('context' => $context)); } public function testConstruct() { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Template', '', array('data' => array('template' => 'value'))); $this->assertEquals('value', $block->getTemplate()); } @@ -67,21 +67,6 @@ public function testGetArea() $this->assertEquals('another_area', $this->_block->getArea()); } - public function testGetDirectOutput() - { - $this->assertFalse($this->_block->getDirectOutput()); - - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); - $layout->setDirectOutput(true); - $this->_block->setLayout($layout); - $this->assertTrue($this->_block->getDirectOutput()); - } - - public function testGetShowTemplateHints() - { - $this->assertFalse($this->_block->getShowTemplateHints()); - } - /** * @covers \Magento\Core\Block\Template::_toHtml * @covers \Magento\Core\Block\AbstractBlock::toHtml diff --git a/dev/tests/integration/testsuite/Magento/Core/Block/Text/ListTest.php b/dev/tests/integration/testsuite/Magento/Core/Block/Text/ListTest.php index c2ad311e7e78d..31f29ae29801e 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Block/Text/ListTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Block/Text/ListTest.php @@ -30,7 +30,7 @@ class ListTest extends \PHPUnit_Framework_TestCase { /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -41,7 +41,8 @@ class ListTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->get('Magento\View\LayoutInterface'); $this->_block = $this->_layout->createBlock('Magento\Core\Block\Text\ListText'); } diff --git a/dev/tests/integration/testsuite/Magento/Core/Block/TextTest.php b/dev/tests/integration/testsuite/Magento/Core/Block/TextTest.php index c5743b9313d80..c427fd8346f76 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Block/TextTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Block/TextTest.php @@ -36,7 +36,7 @@ class TextTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text'); } diff --git a/dev/tests/integration/testsuite/Magento/Core/Controller/Request/HttpTest.php b/dev/tests/integration/testsuite/Magento/Core/Controller/Request/HttpTest.php deleted file mode 100644 index 697e57c764623..0000000000000 --- a/dev/tests/integration/testsuite/Magento/Core/Controller/Request/HttpTest.php +++ /dev/null @@ -1,193 +0,0 @@ -_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Controller\Request\Http'); - } - - public function testGetOriginalPathInfo() - { - $this->assertEmpty($this->_model->getOriginalPathInfo()); - } - - /** - * @magentoConfigFixture current_store web/url/use_store 1 - * @dataProvider setGetPathInfoDataProvider - * @magentoDbIsolation enabled - * @magentoAppIsolation enabled - */ - public function testSetPathWithStoreCode($requestUri, $expectedResult) - { - $this->_model->setRequestUri($requestUri); - $this->_model->setPathInfo(); - $this->assertEquals($expectedResult, $this->_model->getPathInfo()); - } - - /** - * @dataProvider setGetPathInfoDataProvider - */ - public function testSetPathWithOut($requestUri) - { - $this->_model->setRequestUri($requestUri); - $this->_model->setPathInfo(); - $this->assertEquals($requestUri, $this->_model->getPathInfo()); - } - - public function testSetGetPathInfo() - { - $this->_model->setPathInfo(); - $this->assertEmpty($this->_model->getPathInfo()); - - $this->_model->setRequestUri('test'); - $this->_model->setPathInfo(); - $this->assertEquals('test', $this->_model->getPathInfo()); - - - $this->_model->setPathInfo('new_test'); - $this->assertEquals('new_test', $this->_model->getPathInfo()); - - } - - /** - * @see self::testSetPathWithStoreCode() - * @return array - */ - public function setGetPathInfoDataProvider() - { - return array( - array(null, null), - array('default', '/'), - array('default/new', '/new'), - array('admin/new', 'admin/new'), - ); - } - - /** - * @covers \Magento\Core\Controller\Request\Http::rewritePathInfo - * @covers \Magento\Core\Controller\Request\Http::getOriginalPathInfo - * @magentoConfigFixture current_store web/url/use_store 1 - */ - public function testRewritePathInfoStoreCodeInUrl() - { - $pathInfo = $this->_model->getPathInfo(); - $this->_model->rewritePathInfo('test/path'); - $this->assertNotEquals($pathInfo, $this->_model->getPathInfo()); - $this->assertEquals('test/path', $this->_model->getPathInfo()); - $this->assertEquals($pathInfo, $this->_model->getOriginalPathInfo()); - } - - public function testGetDirectFrontNames() - { - $this->assertEmpty( - $this->_model->getDirectFrontNames(), - "After API module removal there should not be areas with direct front name." - ); - } - - public function testGetRequestString() - { - $this->assertEmpty($this->_model->getRequestString()); - $this->_model->setRequestUri('test'); - $this->_model->setPathInfo(); - $this->assertEquals('test', $this->_model->getRequestString()); - } - - public function testGetBasePath() - { - $this->assertEquals('/', $this->_model->getBasePath()); - } - - public function testGetBaseUrl() - { - $this->assertEmpty($this->_model->getBaseUrl()); - } - - public function testSetGetRouteName() - { - $this->assertEmpty($this->_model->getRouteName()); - $this->_model->setRouteName('test'); - $this->assertEquals('test', $this->_model->getRouteName()); - } - - public function testGetHttpHost() - { - $this->assertEquals('localhost', $this->_model->getHttpHost()); - $_SERVER['HTTP_HOST'] = 'example.com:80'; - $this->assertEquals($_SERVER['HTTP_HOST'], $this->_model->getHttpHost(false)); - $this->assertEquals('example.com', $this->_model->getHttpHost()); - } - - public function testSetPost() - { - $post = $_POST; - $this->_model->setPost(array('test' => 'test')); - $post['test'] = 'test'; - $this->assertEquals($post, $this->_model->getPost()); - - $this->_model->setPost('key', 'value'); - $post['key'] = 'value'; - $this->assertEquals($post, $this->_model->getPost()); - } - - public function testInitForward() - { - $this->_model->setParam('test', 'test'); - $this->_model->initForward(); - $this->assertEquals(array('test' => 'test'), $this->_model->getBeforeForwardInfo('params')); - - $this->_model->setParam('test', 'test1'); - /* the call shouldn't override existing info*/ - $this->_model->initForward(); - $this->assertEquals(array('test' => 'test'), $this->_model->getBeforeForwardInfo('params')); - } - - public function testIsStraight() - { - $this->assertFalse($this->_model->isStraight()); - $this->assertTrue($this->_model->isStraight(true)); - $this->assertTrue($this->_model->isStraight()); - } - - public function testIsAjax() - { - $this->assertFalse($this->_model->isAjax()); - $this->_model->setParam('isAjax', 1); - $this->assertTrue($this->_model->isAjax()); - } - -} diff --git a/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/ActionTest.php b/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/ActionTest.php index 778053f181275..d3dae252969a2 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/ActionTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/ActionTest.php @@ -42,18 +42,18 @@ class ActionTest extends \PHPUnit_Framework_TestCase protected function setUp() { $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_objectManager->get('Magento\Core\Model\View\DesignInterface') + $this->_objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_FRONTEND) ->setDefaultDesignTheme(); /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); /** @var $request \Magento\TestFramework\Request */ - $request = $objectManager->get('Magento\TestFramework\Request'); + $request = $objectManager->get('Magento\App\RequestInterface'); $arguments = array( 'request' => $request, 'response' => $this->_objectManager->get('Magento\TestFramework\Response'), ); - $this->_objectManager->get('Magento\Core\Model\View\DesignInterface') + $this->_objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_FRONTEND) ->setDefaultDesignTheme(); $context = $this->_objectManager->create('Magento\Core\Controller\Varien\Action\Context', $arguments); @@ -114,7 +114,7 @@ public function testGetLayout($controllerClass, $expectedArea) \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App') ->loadArea($expectedArea); - $this->_objectManager->get('Magento\Core\Model\Config\Scope')->setCurrentScope($expectedArea); + $this->_objectManager->get('Magento\Config\ScopeInterface')->setCurrentScope($expectedArea); /** @var $controller \Magento\Core\Controller\Varien\Action */ $controller = $this->_objectManager->create($controllerClass); $this->assertInstanceOf('Magento\Core\Model\Layout', $controller->getLayout()); @@ -290,7 +290,7 @@ public function testDispatch() 'Magento\Core\Controller\Front\Action', array('context' => $context) ); - $this->_objectManager->get('Magento\Core\Model\Config\Scope')->setCurrentScope('frontend'); + $this->_objectManager->get('Magento\Config\ScopeInterface')->setCurrentScope('frontend'); $this->_object->dispatch('not_exists'); $this->assertFalse($request->isDispatched()); @@ -345,7 +345,7 @@ public function testPreDispatch($controllerClass, $expectedArea, $expectedStore, $controller = $this->_objectManager->create($controllerClass, array('context' => $context)); $controller->preDispatch(); - $design = $this->_objectManager->get('Magento\Core\Model\View\DesignInterface'); + $design = $this->_objectManager->get('Magento\View\DesignInterface'); $this->assertEquals($expectedArea, $design->getArea()); $this->assertEquals($expectedStore, \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/FrontTest.php b/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/FrontTest.php deleted file mode 100644 index 8c9384f779bf8..0000000000000 --- a/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/FrontTest.php +++ /dev/null @@ -1,141 +0,0 @@ -_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_model = $this->_objectManager->create('Magento\Core\Controller\Varien\Front'); - } - - public function testSetGetDefault() - { - $this->_model->setDefault('test', 'value'); - $this->assertEquals('value', $this->_model->getDefault('test')); - - $default = array('some_key' => 'some_value'); - $this->_model->setDefault($default); - $this->assertEquals($default, $this->_model->getDefault()); - } - - public function testGetRequest() - { - $this->assertInstanceOf('Magento\Core\Controller\Request\Http', $this->_model->getRequest()); - } - - public function testGetResponse() - { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App')->setResponse( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Controller\Response\Http') - ); - if (!\Magento\TestFramework\Helper\Bootstrap::canTestHeaders()) { - $this->markTestSkipped('Can\'t test get response without sending headers'); - } - $this->assertInstanceOf('Magento\Core\Controller\Response\Http', $this->_model->getResponse()); - } - - public function testGetRouter() - { - $this->assertInstanceOf('Magento\Core\Controller\Varien\Router\DefaultRouter', - $this->_model->getRouter('default')); - } - - public function testGetRouters() - { - $routers = $this->_model->getRouters(); - $routerIds = array_keys($routers); - foreach (array('admin', 'standard', 'default', 'cms', 'vde') as $routerId) { - $this->assertContains($routerId, $routerIds); - $this->assertInstanceOf('Magento\Core\Controller\Varien\Router\AbstractRouter', $routers[$routerId]); - } - } - - public function testDispatch() - { - if (!\Magento\TestFramework\Helper\Bootstrap::canTestHeaders()) { - $this->markTestSkipped('Cant\'t test dispatch process without sending headers'); - } - $_SERVER['HTTP_HOST'] = 'localhost'; - /* empty action */ - $this->_model->getRequest()->setRequestUri('core/index/index'); - $this->_model->dispatch(); - $this->assertEmpty($this->_model->getResponse()->getBody()); - } - - /** - * @param string $sourcePath - * @param string $resultPath - * - * @dataProvider applyRewritesDataProvider - * @magentoConfigFixture global/rewrite/test_url/from /test\/(\w*)/ - * @magentoConfigFixture global/rewrite/test_url/to new_test/$1/subdirectory - * @magentoDataFixture Magento/Core/_files/url_rewrite.php - * @magentoDbIsolation enabled - */ - public function testApplyRewrites($sourcePath, $resultPath) - { - /** @var $request \Magento\Core\Controller\Request\Http */ - $request = $this->_objectManager->create('Magento\Core\Controller\Request\Http'); - $request->setPathInfo($sourcePath); - - $this->_model->applyRewrites($request); - $this->assertEquals($resultPath, $request->getPathInfo()); - } - - /** - * Data provider for testApplyRewrites - * - * @return array - */ - public function applyRewritesDataProvider() - { - return array( - 'url rewrite' => array( - '$sourcePath' => '/test_rewrite_path', // data from fixture - '$resultPath' => 'cms/page/view/page_id/1', // data from fixture - ), - 'configuration rewrite' => array( - '$sourcePath' => '/test/url/', - '$resultPath' => '/new_test/url/subdirectory/', - ), - ); - } -} diff --git a/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/Router/BaseTest.php b/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/Router/BaseTest.php index 16398a7666a6c..88abd65823443 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/Router/BaseTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Controller/Varien/Router/BaseTest.php @@ -44,7 +44,7 @@ protected function setUp() $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Controller\Varien\Router\Base', $options); $this->_model->setFront(\Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Controller\Varien\Front')); + ->create('Magento\App\FrontController')); } public function testFetchDefault() diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/App/AreaTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/App/AreaTest.php index f0779f4b61e17..83b11e7143202 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/App/AreaTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/App/AreaTest.php @@ -53,10 +53,10 @@ protected function setUp() public function testInitDesign() { $defaultTheme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface')->setDefaultDesignTheme()->getDesignTheme(); + ->get('Magento\View\DesignInterface')->setDefaultDesignTheme()->getDesignTheme(); $this->_model->load(\Magento\Core\Model\App\Area::PART_DESIGN); $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->setDefaultDesignTheme(); $this->assertEquals($defaultTheme->getThemePath(), $design->getDesignTheme()->getThemePath()); @@ -65,10 +65,10 @@ public function testInitDesign() // try second time and make sure it won't load second time $this->_model->load(\Magento\Core\Model\App\Area::PART_DESIGN); $designArea = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->getArea(); $sameDesign = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->setArea($designArea); $this->assertSame($design, $sameDesign); } @@ -81,10 +81,13 @@ public function testInitDesign() // @codingStandardsIgnoreEnd public function testDetectDesignUserAgent() { - $_SERVER['HTTP_USER_AGENT'] = 'Mozilla Firefox'; - $this->_model->detectDesign(new \Zend_Controller_Request_Http); + $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); + /** @var $request \Magento\TestFramework\Request */ + $request = $objectManager->create('Magento\TestFramework\Request'); + $request->setServer(array('HTTP_USER_AGENT' => 'Mozilla Firefox')); + $this->_model->detectDesign($request); $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); $this->assertEquals('magento_blank', $design->getDesignTheme()->getThemePath()); } @@ -96,7 +99,7 @@ public function testDetectDesignDesignChange() { $this->_model->detectDesign(); $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); $this->assertEquals('magento_blank', $design->getDesignTheme()->getThemePath()); } @@ -111,12 +114,13 @@ public function testDetectDesignDesignChange() // @codingStandardsIgnoreEnd public function testDetectDesignNonFrontend() { - $_SERVER['HTTP_USER_AGENT'] = 'Mozilla Firefox'; - $model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\App\Area', array('areaCode' => 'install')); - $model->detectDesign(new \Zend_Controller_Request_Http); - $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); + $model = $objectManager->create('Magento\Core\Model\App\Area', array('areaCode' => 'install')); + /** @var $request \Magento\TestFramework\Request */ + $request = $objectManager->create('Magento\TestFramework\Request'); + $request->setServer(array('HTTP_USER_AGENT' => 'Mozilla Firefox')); + $model->detectDesign($request); + $design = $objectManager->get('Magento\View\DesignInterface'); $this->assertNotEquals('magento_blank', $design->getDesignTheme()->getThemePath()); } } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/App/EmulationTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/App/EmulationTest.php index f09b465e588f9..b2058b098ced1 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/App/EmulationTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/App/EmulationTest.php @@ -43,7 +43,7 @@ public function testEnvironmentEmulation() $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\App\Emulation'); $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $initialEnvInfo = $this->_model->startEnvironmentEmulation(1); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/AppTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/AppTest.php index 8b9bc4b96d5b2..79a25264228d9 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/AppTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/AppTest.php @@ -133,7 +133,8 @@ public function testGetNotExistingStore() public function testGetSafeNotExistingStore() { $this->_mageModel->getSafeStore(100); - $this->assertEquals('noRoute', $this->_mageModel->getRequest()->getActionName()); + $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Request\Http'); + $this->assertEquals('noRoute', $request->getActionName()); } public function testGetStores() @@ -194,7 +195,7 @@ public function testGetBaseCurrencyCode() public function testGetFrontController() { $front = $this->_mageModel->getFrontController(); - $this->assertInstanceOf('Magento\Core\Controller\Varien\Front', $front); + $this->assertInstanceOf('Magento\App\FrontController', $front); $this->assertSame($front, $this->_mageModel->getFrontController()); } @@ -230,7 +231,7 @@ public function testCleanCache() public function testSetGetRequest() { - $this->assertInstanceOf('Magento\Core\Controller\Request\Http', $this->_model->getRequest()); + $this->assertInstanceOf('Magento\App\RequestInterface', $this->_model->getRequest()); /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); /** @var $request \Magento\TestFramework\Request */ @@ -242,8 +243,8 @@ public function testSetGetRequest() public function testSetGetResponse() { \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Controller\Response\Http')->headersSentThrowsException = false; - $this->assertInstanceOf('Magento\Core\Controller\Response\Http', $this->_model->getResponse()); + ->get('Magento\App\ResponseInterface')->headersSentThrowsException = false; + $this->assertInstanceOf('Magento\App\ResponseInterface', $this->_model->getResponse()); $expectedHeader = array( 'name' => 'Content-Type', 'value' => 'text/html; charset=UTF-8', @@ -251,7 +252,7 @@ public function testSetGetResponse() ); $this->assertContains($expectedHeader, $this->_model->getResponse()->getHeaders()); $response = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\TestFramework\Response'); + ->create('Magento\App\ResponseInterface'); $this->_model->setResponse($response); $this->assertSame($response, $this->_model->getResponse()); $this->assertEmpty($this->_model->getResponse()->getHeaders()); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/ConfigTest.php index 6929f53db974f..9ebd892ee59a2 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/ConfigTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/ConfigTest.php @@ -109,38 +109,4 @@ protected function _createModel(array $arguments = array()) ->create('Magento\Core\Model\Config', $arguments); return $model; } - - /** - * @magentoAppIsolation enabled - * @expectedException \InvalidArgumentException - */ - public function testGetAreaConfigThrowsExceptionIfNonexistentAreaIsRequested() - { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App')->getConfig() - ->getAreaConfig('non_existent_area_code'); - } - - /** - * Check if areas loaded correctly from configuration - */ - public function testGetAreas() - { - $this->markTestIncomplete('MAGETWO-6406'); - $model = $this->_createModel(array('sourceData' => __DIR__ . '/../_files/etc/config.xml')); - - $allowedAreas = $model->getAreas(); - $this->assertNotEmpty($allowedAreas, 'Areas are not initialized'); - - $this->assertArrayHasKey('test_area1', $allowedAreas, 'Test area #1 is not loaded'); - - $testAreaExpected = array( - 'areaNode' => 'value', - ); - $this->assertEquals($testAreaExpected, $allowedAreas['test_area1'], 'Test area is not loaded correctly'); - - $this->assertArrayNotHasKey('test_area2', $allowedAreas, 'Test area #2 is loaded by mistake'); - $this->assertArrayNotHasKey('test_area3', $allowedAreas, 'Test area #3 is loaded by mistake'); - $this->assertArrayNotHasKey('test_area4', $allowedAreas, 'Test area #4 is loaded by mistake'); - $this->assertArrayNotHasKey('test_area5', $allowedAreas, 'Test area #5 is loaded by mistake'); - } } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/DataService/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/DataService/ConfigTest.php index 15b8dc845b3b1..b263985bdf9dc 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/DataService/ConfigTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/DataService/ConfigTest.php @@ -35,26 +35,26 @@ class ConfigTest extends \PHPUnit_Framework_TestCase protected function setUp() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - /** @var \Magento\Core\Model\Dir $dirs */ + /** @var \Magento\App\Dir $dirs */ $dirs = $objectManager->create( - 'Magento\Core\Model\Dir', + 'Magento\App\Dir', array( 'baseDir' => BP, 'dirs' => array( - \Magento\Core\Model\Dir::MODULES => __DIR__ . '/LayoutTest', - \Magento\Core\Model\Dir::CONFIG => __DIR__ . '/LayoutTest', + \Magento\App\Dir::MODULES => __DIR__ . '/LayoutTest', + \Magento\App\Dir::CONFIG => __DIR__ . '/LayoutTest', ) ) ); $moduleList = $objectManager->create( - 'Magento\Core\Model\ModuleList', + 'Magento\App\ModuleList', array( 'reader' => $objectManager->create( - 'Magento\Core\Model\Module\Declaration\Reader\Filesystem', + 'Magento\App\Module\Declaration\Reader\Filesystem', array( 'fileResolver' => $objectManager->create( - 'Magento\Core\Model\Module\Declaration\FileResolver', + 'Magento\App\Module\Declaration\FileResolver', array( 'applicationDirs' => $dirs ) diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/DataService/LayoutTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/DataService/LayoutTest.php index 3498e4f850104..0fa7ef0c086e4 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/DataService/LayoutTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/DataService/LayoutTest.php @@ -72,7 +72,7 @@ protected function _loadServiceCallsConfig() */ public function testServiceCalls() { - /** @var \Magento\Core\Model\Layout $layout */ + /** @var \Magento\View\LayoutInterface $layout */ $layout = $this->_getLayoutModel('layout_update.xml'); $serviceCalls = $layout->getServiceCalls(); $expectedServiceCalls = array( @@ -99,16 +99,16 @@ public function testServiceCalls() * * @param string $fixtureFile * - * @return \Magento\Core\Model\Layout + * @return \Magento\View\LayoutInterface */ protected function _getLayoutModel($fixtureFile) { /** @var $layout \Magento\Core\Model\Layout */ $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( - 'Magento\Core\Model\Layout', + 'Magento\View\LayoutInterface', array('dataServiceGraph' => $this->_dataServiceGraph) ); - $xml = simplexml_load_file(__DIR__ . "/LayoutTest/{$fixtureFile}", 'Magento\Core\Model\Layout\Element'); + $xml = simplexml_load_file(__DIR__ . "/LayoutTest/{$fixtureFile}", 'Magento\View\Layout\Element'); $layout->setXml($xml); $layout->generateElements(); return $layout; diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Design/FileResolution/Strategy/FallbackTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Design/FileResolution/Strategy/FallbackTest.php index 0ddfa1568eb8d..f54b9c6658f40 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Design/FileResolution/Strategy/FallbackTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Design/FileResolution/Strategy/FallbackTest.php @@ -53,10 +53,10 @@ protected function setUp() protected function _buildModel() { // Prepare config with directories - $dirs = new \Magento\Core\Model\Dir( + $dirs = new \Magento\App\Dir( $this->_baseDir, array(), - array(\Magento\Core\Model\Dir::THEMES => $this->_viewDir) + array(\Magento\App\Dir::THEMES => $this->_viewDir) ); return \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/DesignTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/DesignTest.php index f38f76f92f587..36ca0d661f28f 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/DesignTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/DesignTest.php @@ -52,7 +52,7 @@ public function testLoadChange() public function testChangeDesign() { $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\View\DesignInterface'); + ->create('Magento\View\DesignInterface'); $storeId = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->get('Magento\Core\Model\StoreManagerInterface')->getAnyStoreView()->getId(); // fixture design_change $designChange = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Email/Template/FilterTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Email/Template/FilterTest.php index a0c45563feb93..764228b32bf58 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Email/Template/FilterTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Email/Template/FilterTest.php @@ -110,7 +110,7 @@ public function testLayoutDirective($area, $directiveParams, $expectedOutput) { \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => dirname(__DIR__) . '/_files/design' + \Magento\App\Dir::THEMES => dirname(__DIR__) . '/_files/design' ) )); @@ -132,9 +132,9 @@ public function testLayoutDirective($area, $directiveParams, $expectedOutput) $this->assertEquals($area, $layout->getArea()); $this->assertEquals( $area, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout')->getArea() + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface')->getArea() ); - $objectManager->get('Magento\Core\Model\View\DesignInterface')->setDesignTheme('test_default'); + $objectManager->get('Magento\View\DesignInterface')->setDesignTheme('test_default'); $actualOutput = $this->_model->layoutDirective(array( '{{layout ' . $directiveParams . '}}', diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Email/TemplateTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Email/TemplateTest.php index 47c3d2ab4e479..2acf244ac5760 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Email/TemplateTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Email/TemplateTest.php @@ -54,12 +54,12 @@ protected function setUp() $objectManager->create('Magento\Filesystem'), $objectManager->create('Magento\Core\Model\View\Url'), $objectManager->create('Magento\Core\Model\View\FileSystem'), - $objectManager->get('Magento\Core\Model\View\DesignInterface'), + $objectManager->get('Magento\View\DesignInterface'), $objectManager->create('Magento\Core\Model\Store\Config'), $objectManager->create('Magento\Core\Model\Config'), $objectManager->get('Magento\Core\Model\Email\Template\FilterFactory'), $objectManager->get('Magento\Core\Model\StoreManager'), - $objectManager->get('Magento\Core\Model\Dir'), + $objectManager->get('Magento\App\Dir'), $objectManager->get('Magento\Core\Model\Email\Template\Config'), )) ->getMock(); @@ -130,7 +130,7 @@ public function testGetProcessedTemplate() protected function _setBlankThemeForFixtureStore() { $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'); + ->create('Magento\View\Design\ThemeInterface'); $theme->load('magento_blank', 'theme_path'); \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\StoreManagerInterface') ->getStore('fixturestore')->setConfig(\Magento\Core\Model\View\Design::XML_PATH_THEME_ID, $theme->getId()); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Fieldset/Config/ReaderTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Fieldset/Config/ReaderTest.php index 97ab144100753..d5fb8fa0347d9 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Fieldset/Config/ReaderTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Fieldset/Config/ReaderTest.php @@ -38,35 +38,35 @@ class ReaderTest extends \PHPUnit_Framework_TestCase public function setUp() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - /** @var \Magento\Core\Model\Dir $dirs */ + /** @var \Magento\App\Dir $dirs */ $dirs = $objectManager->create( - 'Magento\Core\Model\Dir', array( + 'Magento\App\Dir', array( 'baseDir' => BP, 'dirs' => array( - \Magento\Core\Model\Dir::MODULES => __DIR__ . '/_files', - \Magento\Core\Model\Dir::CONFIG => __DIR__ . '/_files' + \Magento\App\Dir::MODULES => __DIR__ . '/_files', + \Magento\App\Dir::CONFIG => __DIR__ . '/_files' ) ) ); - /** @var \Magento\Core\Model\Module\Declaration\FileResolver $modulesDeclarations */ + /** @var \Magento\App\Module\Declaration\FileResolver $modulesDeclarations */ $modulesDeclarations = $objectManager->create( - 'Magento\Core\Model\Module\Declaration\FileResolver', array( + 'Magento\App\Module\Declaration\FileResolver', array( 'applicationDirs' => $dirs, ) ); - /** @var \Magento\Core\Model\Module\Declaration\Reader\Filesystem $filesystemReader */ + /** @var \Magento\App\Module\Declaration\Reader\Filesystem $filesystemReader */ $filesystemReader = $objectManager->create( - 'Magento\Core\Model\Module\Declaration\Reader\Filesystem', array( + 'Magento\App\Module\Declaration\Reader\Filesystem', array( 'fileResolver' => $modulesDeclarations, ) ); - /** @var \Magento\Core\Model\ModuleList $modulesList */ + /** @var \Magento\App\ModuleList $modulesList */ $modulesList = $objectManager->create( - 'Magento\Core\Model\ModuleList', array( + 'Magento\App\ModuleList', array( 'reader' => $filesystemReader, ) ); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/File/StorageTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/File/StorageTest.php index 6dbb64fd282d7..1983ea3d31496 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/File/StorageTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/File/StorageTest.php @@ -43,7 +43,7 @@ public function testGetScriptConfig() $this->assertArrayHasKey('allowed_resources', $config); $this->assertArrayHasKey('update_time', $config); $this->assertEquals( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('media'), + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('media'), $config['media_directory'] ); $this->assertInternalType('array', $config['allowed_resources']); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/LayoutDirectivesTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/LayoutDirectivesTest.php index bd69daa7bd02b..28fd7f0383c52 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/LayoutDirectivesTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/LayoutDirectivesTest.php @@ -241,16 +241,16 @@ public function sortSpecialCasesDataProvider() * Prepare a layout model with pre-loaded fixture of an update XML * * @param string $fixtureFile - * @return \Magento\Core\Model\Layout + * @return \Magento\View\LayoutInterface */ protected function _getLayoutModel($fixtureFile) { - /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); - /** @var $xml \Magento\Core\Model\Layout\Element */ + /** @var $layout \Magento\View\LayoutInterface */ + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); + /** @var $xml \Magento\View\Layout\Element */ $xml = simplexml_load_file( __DIR__ . "/_files/layout_directives_test/{$fixtureFile}", - 'Magento\Core\Model\Layout\Element' + 'Magento\View\Layout\Element' ); $layout->loadString($xml->asXml()); $layout->generateElements(); @@ -264,8 +264,8 @@ public function testIfConfigForBlock() { $layout = $this->_getLayoutModel('ifconfig.xml'); $this->assertFalse($layout->getBlock('block1')); - $this->assertInstanceOf('Magento\Core\Block', $layout->getBlock('block2')); - $this->assertInstanceOf('Magento\Core\Block', $layout->getBlock('block3')); + $this->assertInstanceOf('Magento\View\Element\BlockInterface', $layout->getBlock('block2')); + $this->assertInstanceOf('Magento\View\Element\BlockInterface', $layout->getBlock('block3')); $this->assertFalse($layout->getBlock('block4')); } } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/LayoutTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/LayoutTest.php index cca25c92aee51..3b12498494f95 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/LayoutTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/LayoutTest.php @@ -61,7 +61,7 @@ public function testConstructor(array $inputArguments, $expectedArea) public function constructorDataProvider() { return array( - 'default area' => array(array(), \Magento\Core\Model\View\DesignInterface::DEFAULT_AREA), + 'default area' => array(array(), \Magento\View\DesignInterface::DEFAULT_AREA), 'frontend area' => array(array('area' => 'frontend'), 'frontend'), 'backend area' => array(array('area' => 'adminhtml'), 'adminhtml'), ); @@ -90,14 +90,7 @@ public function testDestructor() public function testGetUpdate() { - $this->assertInstanceOf('Magento\Core\Model\Layout\Merge', $this->_layout->getUpdate()); - } - - public function testGetSetDirectOutput() - { - $this->assertFalse($this->_layout->isDirectOutput()); - $this->_layout->setDirectOutput(true); - $this->assertTrue($this->_layout->isDirectOutput()); + $this->assertInstanceOf('Magento\View\Layout\ProcessorInterface', $this->_layout->getUpdate()); } public function testGenerateXml() @@ -109,7 +102,7 @@ public function testGenerateXml() $merge = $this->getMock('StdClass', array('asSimplexml')); $merge->expects($this->once())->method('asSimplexml')->will($this->returnValue(simplexml_load_string( '', - 'Magento\Core\Model\Layout\Element' + 'Magento\View\Layout\Element' ))); $layout->expects($this->once())->method('getUpdate')->will($this->returnValue($merge)); $this->assertEmpty($layout->getXpath('/layout/container[@name="container1"]')); @@ -134,7 +127,7 @@ public function testGenerateGetAllBlocks() ', - 'Magento\Core\Model\Layout\Element' + 'Magento\View\Layout\Element' )); $this->assertEquals(array(), $this->_layout->getAllBlocks()); $this->_layout->generateElements(); @@ -492,7 +485,7 @@ public function testGetBlockSingleton() public function testUpdateContainerAttributes() { $this->_layout->setXml(simplexml_load_file(__DIR__ . '/_files/layout/container_attributes.xml', - 'Magento\Core\Model\Layout\Element')); + 'Magento\View\Layout\Element')); $this->_layout->generateElements(); $result = $this->_layout->renderElement('container1', false); $this->assertEquals('
    Test11Test12
    ', $result); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Page/Asset/MergedTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Page/Asset/MergedTest.php index ac3e6a38ed524..ac5cb3c194493 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Page/Asset/MergedTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Page/Asset/MergedTest.php @@ -50,9 +50,9 @@ public static function setUpBeforeClass() $service = $objectManager->get('Magento\Core\Model\View\Service'); self::$_themePublicDir = $service->getPublicDir(); - /** @var \Magento\Core\Model\Dir $dirs */ - $dirs = $objectManager->get('Magento\Core\Model\Dir'); - self::$_viewPublicMergedDir = $dirs->getDir(\Magento\Core\Model\Dir::PUB_VIEW_CACHE) + /** @var \Magento\App\Dir $dirs */ + $dirs = $objectManager->get('Magento\App\Dir'); + self::$_viewPublicMergedDir = $dirs->getDir(\Magento\App\Dir::PUB_VIEW_CACHE) . DIRECTORY_SEPARATOR . \Magento\Core\Model\Page\Asset\Merged::PUBLIC_MERGE_DIR; } @@ -60,10 +60,10 @@ protected function setUp() { \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => realpath(__DIR__ . '/../../_files/design') + \Magento\App\Dir::THEMES => realpath(__DIR__ . '/../../_files/design') ) )); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDesignTheme('vendor_default'); } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Db/Collection/AbstractTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Db/Collection/AbstractTest.php index 1512b8c39830a..45bf587ab517b 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Db/Collection/AbstractTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Db/Collection/AbstractTest.php @@ -49,7 +49,7 @@ protected function setUp() $fetchStrategy = $this->getMockForAbstractClass('Magento\Data\Collection\Db\FetchStrategyInterface'); $eventManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Event\Manager'); + ->get('Magento\Event\ManagerInterface'); $entityFactory = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->get('Magento\Core\Model\EntityFactory'); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Layout/UpdateTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Layout/UpdateTest.php index 953257a412ab6..b162843675203 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Layout/UpdateTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Layout/UpdateTest.php @@ -45,9 +45,9 @@ protected function setUp() */ public function testFetchUpdatesByHandle() { - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'); + ->create('Magento\View\Design\ThemeInterface'); $theme->load('Test Theme', 'theme_title'); $result = $this->_resourceModel->fetchUpdatesByHandle( 'test_handle', diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/SetupTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/SetupTest.php index ba1e57e878ecd..212d4cfcba02d 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/SetupTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/SetupTest.php @@ -58,8 +58,8 @@ public function testApplyAllDataUpdates() $this->_model->deleteTableRow('core_resource', 'code', 'adminnotification_setup'); $this->_model->getConnection()->dropTable($this->_model->getTable('adminnotification_inbox')); $this->_model->getConnection()->dropTable($this->_model->getTable('admin_system_messages')); - /** @var $updater \Magento\Core\Model\Db\Updater */ - $updater = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Db\Updater'); + /** @var $updater \Magento\App\Updater */ + $updater = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Updater'); try { $updater->updateScheme(); $updater->updateData(); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Theme/CollectionTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Theme/CollectionTest.php index df3e218aa5046..7fe2d3e9a3c75 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Theme/CollectionTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Theme/CollectionTest.php @@ -66,7 +66,7 @@ public function testGetThemeByFullPath($fullPath, $shouldExist) { $themeCollection = self::_getThemesCollection(); $hasFound = false; - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($themeCollection as $theme) { if ($theme->getFullPath() == $fullPath) { $hasFound = true; @@ -164,7 +164,7 @@ public function testFilterVisibleThemes() ->create('Magento\Core\Model\Resource\Theme\Collection'); $themeCollection->addAreaFilter('test_area3')->filterVisibleThemes(); $this->assertCount(2, $themeCollection); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($themeCollection as $theme) { $this->assertTrue(in_array( $theme->getType(), @@ -211,9 +211,9 @@ public static function setThemeFixture() $themeCollection = self::_getThemesCollection(); $themeCollection->load(); foreach (self::getThemeList() as $themeData) { - /** @var $themeModel \Magento\Core\Model\Theme */ + /** @var $themeModel \Magento\View\Design\ThemeInterface */ $themeModel = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'); + ->create('Magento\View\Design\ThemeInterface'); $themeModel->setData($themeData); $themeCollection->addItem($themeModel); } @@ -228,9 +228,9 @@ public static function setInheritedThemeFixture() $fixture = self::getInheritedThemeList(); $idByPath = array(); foreach ($fixture as $themeData) { - /** @var $themeModel \Magento\Core\Model\Theme */ + /** @var $themeModel \Magento\View\Design\ThemeInterface */ $themeModel = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'); + ->create('Magento\View\Design\ThemeInterface'); $themeModel->setData($themeData); if ($themeData['parent_id'] && isset($idByPath[$themeData['parent_id']])) { @@ -373,7 +373,7 @@ public function testFilterPhysicalThemesPerPage() \Magento\Core\Model\Resource\Theme\Collection::DEFAULT_PAGE_SIZE, $collection->count() ); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($collection as $theme) { $this->assertEquals(\Magento\Core\Model\App\Area::AREA_FRONTEND, $theme->getArea()); $this->assertEquals(\Magento\Core\Model\Theme::TYPE_PHYSICAL, $theme->getType()); @@ -389,7 +389,7 @@ public function testFilterPhysicalThemes() $this->assertGreaterThan(0, $collection->count()); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($collection as $theme) { $this->assertEquals(\Magento\Core\Model\App\Area::AREA_FRONTEND, $theme->getArea()); $this->assertEquals(\Magento\Core\Model\Theme::TYPE_PHYSICAL, $theme->getType()); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/RouterListTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/RouterListTest.php index 96792dccdeaf2..9ec1794ff60ec 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/RouterListTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/RouterListTest.php @@ -32,14 +32,14 @@ class RouterListTest extends \PHPUnit_Framework_TestCase protected $_objectManager; /** - * @var \Magento\Core\Model\RouterList + * @var \Magento\App\RouterList */ protected $_model; protected function setUp() { $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_model = $this->_objectManager->create('Magento\Core\Model\RouterList'); + $this->_model = $this->_objectManager->create('Magento\App\RouterList'); } public function testGetRouterByRoute() @@ -53,7 +53,7 @@ public function testGetRouterByRoute() $this->_model->getRouterByRoute('checkout') ); $this->assertInstanceOf( - 'Magento\Core\Controller\Varien\Router\DefaultRouter', + 'Magento\App\Router\DefaultRouter', $this->_model->getRouterByRoute('test') ); } @@ -69,7 +69,7 @@ public function testGetRouterByFrontName() $this->_model->getRouterByFrontName('checkout') ); $this->assertInstanceOf( - 'Magento\Core\Controller\Varien\Router\DefaultRouter', + 'Magento\App\Router\DefaultRouter', $this->_model->getRouterByFrontName('test') ); } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Session/AbstractTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Session/AbstractTest.php index 587727bbdc110..8ece7e703e98b 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Session/AbstractTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Session/AbstractTest.php @@ -168,7 +168,7 @@ public function testGetSessionSaveMethod() public function testGetSessionSavePath() { $this->assertEquals( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') ->getDir('session'), $this->_model->getSessionSavePath() ); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/StoreTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/StoreTest.php index 9bfe852111882..67a77b2f975f8 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/StoreTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/StoreTest.php @@ -56,10 +56,10 @@ protected function _getStoreModel() 'registry' => $objectManager->get('Magento\Core\Model\Registry'), 'configCacheType' => $objectManager->get('Magento\Core\Model\Cache\Type\Config'), 'url' => $objectManager->get('Magento\Core\Model\Url'), - 'appState' => $objectManager->get('Magento\Core\Model\App\State'), - 'request' => $objectManager->get('Magento\Core\Controller\Request\Http'), + 'appState' => $objectManager->get('Magento\App\State'), + 'request' => $objectManager->get('Magento\App\RequestInterface'), 'configDataResource' => $objectManager->get('Magento\Core\Model\Resource\Config\Data'), - 'dir' => $objectManager->get('Magento\Core\Model\Dir'), + 'dir' => $objectManager->get('Magento\App\Dir'), 'coreStoreConfig' => $objectManager->get('Magento\Core\Model\Store\Config'), 'coreConfig' => $objectManager->get('Magento\Core\Model\Config'), 'resource' => $objectManager->get('Magento\Core\Model\Resource\Store'), @@ -198,7 +198,7 @@ public function getBaseUrlDataProvider() public function testGetBaseUrlInPub() { \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( - \Magento\Core\Model\App::PARAM_APP_URIS => array(\Magento\Core\Model\Dir::PUB => '') + \Magento\Core\Model\App::PARAM_APP_URIS => array(\Magento\App\Dir::PUB => '') )); $this->_model = $this->_getStoreModel(); $this->_model->load('default'); @@ -371,7 +371,7 @@ public static function saveValidationDataProvider() */ public function testIsUseStoreInUrl($isInstalled, $storeInUrl, $storeId, $expectedResult) { - $appStateMock = $this->getMock('Magento\Core\Model\App\State', array(), array(), '', false, false); + $appStateMock = $this->getMock('Magento\App\State', array(), array(), '', false, false); $appStateMock->expects($this->any()) ->method('isInstalled') ->will($this->returnValue($isInstalled)); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/TemplateEngine/TwigTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/TemplateEngine/TwigTest.php deleted file mode 100644 index 042889e605306..0000000000000 --- a/dev/tests/integration/testsuite/Magento/Core/Model/TemplateEngine/TwigTest.php +++ /dev/null @@ -1,88 +0,0 @@ -_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App')->loadAreaPart( - \Magento\Core\Model\App\Area::AREA_GLOBAL, - \Magento\Core\Model\App\Area::PART_CONFIG - ); - $this->_twigEngine = $this->_objectManager->create('Magento\Core\Model\TemplateEngine\Twig'); - } - - /** - * Render a twig file using the Magento Twig Template Engine. - * - * @param \Magento\Core\Block\Template $block - * @param $fileName - * @param array $dictionary - * @return string - */ - public function render(\Magento\Core\Block\Template $block, $fileName, array $dictionary = array()) - { - return $this->_twigEngine->render($block, $fileName, $dictionary); - } - - /** - * Test the render() function with a very simple .twig file. - * - * Template will include a title taken from the dictionary passed in. - */ - public function testSimpleRender() - { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App') - ->loadAreaPart(\Magento\Core\Model\App\Area::AREA_FRONTEND, \Magento\Core\Model\App\Area::PART_DESIGN); - $simpleTitle = 'This is the Title'; - $renderedOutput = '' . $simpleTitle . ''; - $path = __DIR__ . '/_files'; - $blockMock = $this->getMockBuilder('Magento\Core\Block\Template') - ->disableOriginalConstructor()->getMock(); - - $dictionary = array( - 'simple' => array( - 'title' => $simpleTitle - ) - ); - - $actualOutput = $this->render($blockMock, $path . '/simple.twig', $dictionary); - $this->assertSame($renderedOutput, $actualOutput, 'Twig file did not render properly'); - } -} diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/CollectionTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/CollectionTest.php index 2697208aa04e6..1ce3c36f9d430 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/CollectionTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/CollectionTest.php @@ -100,8 +100,9 @@ public function expectedThemeDataFromConfiguration() */ public function testHasThemeInCollection() { - /** @var $themeModel \Magento\Core\Model\Theme */ - $themeModel = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Core\Model\Theme'); + /** @var $themeModel \Magento\View\Design\ThemeInterface */ + $themeModel = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->create('Magento\View\Design\ThemeInterface'); $themeModel->setData(array( 'area' => 'space_area', 'theme_title' => 'Space theme', diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php index 0df5b7283c324..033c0269fd6f2 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php @@ -76,22 +76,22 @@ public function testGetPhysicalTheme() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); //1. set up fixture - /** @var $physicalTheme \Magento\Core\Model\Theme */ - $physicalTheme = $objectManager->create('Magento\Core\Model\Theme'); + /** @var $physicalTheme \Magento\View\Design\ThemeInterface */ + $physicalTheme = $objectManager->create('Magento\View\Design\ThemeInterface'); $physicalTheme->setData($this->_themes['physical']); $physicalTheme->save(); $this->_themes['virtual']['parent_id'] = $physicalTheme->getId(); - /** @var $virtualTheme \Magento\Core\Model\Theme */ - $virtualTheme = $objectManager->create('Magento\Core\Model\Theme'); + /** @var $virtualTheme \Magento\View\Design\ThemeInterface */ + $virtualTheme = $objectManager->create('Magento\View\Design\ThemeInterface'); $virtualTheme->setData($this->_themes['virtual']); $virtualTheme->save(); $this->_themes['staging']['parent_id'] = $virtualTheme->getId(); - /** @var $stagingTheme \Magento\Core\Model\Theme */ - $stagingTheme = $objectManager->create('Magento\Core\Model\Theme'); + /** @var $stagingTheme \Magento\View\Design\ThemeInterface */ + $stagingTheme = $objectManager->create('Magento\View\Design\ThemeInterface'); $stagingTheme->setData($this->_themes['staging']); $stagingTheme->save(); @@ -99,8 +99,8 @@ public function testGetPhysicalTheme() $this->_virtualThemeId = $virtualTheme->getId(); //2. run test - /** @var $virtualTheme \Magento\Core\Model\Theme */ - $virtualTheme = $objectManager->create('Magento\Core\Model\Theme'); + /** @var $virtualTheme \Magento\View\Design\ThemeInterface */ + $virtualTheme = $objectManager->create('Magento\View\Design\ThemeInterface'); $virtualTheme->load($this->_virtualThemeId); $this->assertEquals( diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/FileTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/FileTest.php index 5e7ba08f5bc66..e1b29abae7e02 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/FileTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/FileTest.php @@ -48,8 +48,8 @@ protected function setUp() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $this->_model = $objectManager->create('Magento\Core\Model\Theme\File'); - /** @var $themeModel \Magento\Core\Model\Theme */ - $themeModel = $objectManager->create('Magento\Core\Model\Theme'); + /** @var $themeModel \Magento\View\Design\ThemeInterface */ + $themeModel = $objectManager->create('Magento\View\Design\ThemeInterface'); $this->_theme = $themeModel->getCollection()->getFirstItem(); $this->_data = array( 'file_path' => 'main.css', diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/RegistrationTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/RegistrationTest.php index 5337d11c2cbf3..2219338ebdf32 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/RegistrationTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/RegistrationTest.php @@ -45,7 +45,7 @@ class RegistrationTest extends \PHPUnit_Framework_TestCase protected function setUp() { $this->_theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'); + ->create('Magento\View\Design\ThemeInterface'); $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\Theme\Registration', array('theme' => $this->_theme)); } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/ValidatorTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/ValidatorTest.php index f50968d1164bc..87590dab8c6ac 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/ValidatorTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/ValidatorTest.php @@ -70,7 +70,7 @@ public function testValidateWithInvalidData() protected function _getThemeModel() { return \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'); + ->create('Magento\View\Design\ThemeInterface'); } /** diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/ThemeTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/ThemeTest.php index fa312250df041..731b0bde9f449 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/ThemeTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/ThemeTest.php @@ -36,8 +36,9 @@ class ThemeTest extends \PHPUnit_Framework_TestCase */ public function testCrud() { - /** @var $themeModel \Magento\Core\Model\Theme */ - $themeModel = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Core\Model\Theme'); + /** @var $themeModel \Magento\View\Design\ThemeInterface */ + $themeModel = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->create('Magento\View\Design\ThemeInterface'); $themeModel->setData($this->_getThemeValidData()); $crud = new \Magento\TestFramework\Entity($themeModel, array('theme_version' => '2.0.0.1')); @@ -68,9 +69,9 @@ protected function _getThemeValidData() */ public function testChildRelation() { - /** @var $theme \Magento\Core\Model\Theme */ - /** @var $currentTheme \Magento\Core\Model\Theme */ - $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Theme'); + /** @var $theme \Magento\View\Design\ThemeInterface */ + /** @var $currentTheme \Magento\View\Design\ThemeInterface */ + $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\Design\ThemeInterface'); $collection = $theme->getCollection()->addTypeFilter(\Magento\Core\Model\Theme::TYPE_VIRTUAL); foreach ($collection as $currentTheme) { $parentTheme = $currentTheme->getParentTheme(); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Translate/InlineParserTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Translate/InlineParserTest.php index 09f3efb7328d0..6b08c71c25187 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Translate/InlineParserTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Translate/InlineParserTest.php @@ -39,7 +39,7 @@ class InlineParserTest extends \PHPUnit_Framework_TestCase public static function setUpBeforeClass() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDesignTheme('magento_demo'); } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Translate/InlineTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Translate/InlineTest.php index 6af8d576b9181..b75084f8017ef 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Translate/InlineTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Translate/InlineTest.php @@ -41,7 +41,7 @@ class InlineTest extends \PHPUnit_Framework_TestCase public static function setUpBeforeClass() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDesignTheme('magento_demo'); } @@ -99,7 +99,7 @@ public function processResponseBodyDataProvider() $expectedText = file_get_contents(__DIR__ . '/_files/_inline_page_expected.html'); $package = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->getDesignTheme() ->getPackageCode(); $expectedText = str_replace( diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/TranslateTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/TranslateTest.php index 3251c2986c39e..ef3713a3ed361 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/TranslateTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/TranslateTest.php @@ -38,7 +38,7 @@ class TranslateTest extends \PHPUnit_Framework_TestCase protected $_model; /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_designModel; @@ -79,10 +79,10 @@ protected function setUp() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->addSharedInstance($this->_viewFileSystem, 'Magento\Core\Model\View\FileSystem'); - /** @var $configModel \Magento\Core\Model\Config */ - $configModel = $objectManager->get('Magento\Core\Model\Config'); - $configModel->setModuleDir('Magento_Core', 'i18n', __DIR__ . '/_files/Magento/Core/i18n'); - $configModel->setModuleDir('Magento_Catalog', 'i18n', + /** @var $moduleReader \Magento\Core\Model\Config\Modules\Reader */ + $moduleReader = $objectManager->get('Magento\Core\Model\Config\Modules\Reader'); + $moduleReader->setModuleDir('Magento_Core', 'i18n', __DIR__ . '/_files/Magento/Core/i18n'); + $moduleReader->setModuleDir('Magento_Catalog', 'i18n', __DIR__ . '/_files/Magento/Catalog/i18n'); /** @var \Magento\Core\Model\View\Design _designModel */ @@ -143,7 +143,7 @@ public function testGetConfig() $this->assertEquals('en_US', $this->_model->getConfig(\Magento\Core\Model\Translate::CONFIG_KEY_LOCALE)); $this->assertEquals(1, $this->_model->getConfig(\Magento\Core\Model\Translate::CONFIG_KEY_STORE)); $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); $this->assertEquals($design->getDesignTheme()->getId(), $this->_model->getConfig(\Magento\Core\Model\Translate::CONFIG_KEY_DESIGN_THEME)); $this->assertNull($this->_model->getConfig('non_existing_key')); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Url/RewriteTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Url/RewriteTest.php index 3776dd0183201..4673ef16edbf9 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Url/RewriteTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/Url/RewriteTest.php @@ -116,9 +116,7 @@ public function testHasOption() public function testRewrite() { $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Controller\Request\Http')->setPathInfo('fancy/url.html'); - $response = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\TestFramework\Response'); + ->create('Magento\App\RequestInterface')->setPathInfo('fancy/url.html'); $_SERVER['QUERY_STRING'] = 'foo=bar&___fooo=bar'; $this->_model->setRequestPath('fancy/url.html') @@ -127,7 +125,7 @@ public function testRewrite() ->save(); try { - $this->assertTrue($this->_model->rewrite(null, $response)); + $this->assertTrue($this->_model->rewrite($request)); $this->assertEquals('/another/fancy/url.html?foo=bar', $request->getRequestUri()); $this->assertEquals('another/fancy/url.html', $request->getPathInfo()); $this->_model->delete(); @@ -139,26 +137,26 @@ public function testRewrite() public function testRewriteNonExistingRecord() { - $response = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\TestFramework\Response'); - $this->assertFalse($this->_model->rewrite(null, $response)); + $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->create('Magento\App\RequestInterface'); + $this->assertFalse($this->_model->rewrite($request)); } public function testRewriteWrongStore() { - $response = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\TestFramework\Response'); + $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->create('Magento\App\RequestInterface'); $_GET['___from_store'] = uniqid('store'); - $this->assertFalse($this->_model->rewrite(null, $response)); + $this->assertFalse($this->_model->rewrite($request)); } public function testRewriteNonExistingRecordCorrectStore() { - $response = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\TestFramework\Response'); + $request = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->create('Magento\App\RequestInterface'); $_GET['___from_store'] = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->get('Magento\Core\Model\StoreManagerInterface')->getDefaultStoreView()->getCode(); - $this->assertFalse($this->_model->rewrite(null, $response)); + $this->assertFalse($this->_model->rewrite($request)); } public function testGetStoreId() diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/UrlTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/UrlTest.php index b11f7767bb52b..800f96742a4d8 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/UrlTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/UrlTest.php @@ -92,7 +92,7 @@ public function testGetConfigData() public function testSetGetRequest() { - $this->assertInstanceOf('Zend_Controller_Request_Http', $this->_model->getRequest()); + $this->assertInstanceOf('\Magento\App\RequestInterface', $this->_model->getRequest()); /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); /** @var $request \Magento\TestFramework\Request */ @@ -643,10 +643,13 @@ public function testSessionVarCallback() */ public function testIsOwnOriginUrl() { - $_SERVER['HTTP_REFERER'] = 'http://localhost/'; + $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); + /** @var $request \Magento\TestFramework\Request */ + $request = $objectManager->get('Magento\App\RequestInterface'); + $request->setServer(array('HTTP_REFERER' => 'http://localhost/')); $this->assertTrue($this->_model->isOwnOriginUrl()); - $_SERVER['HTTP_REFERER'] = 'http://example.com/'; + $request->setServer(array('HTTP_REFERER' => 'http://example.com/')); $this->assertFalse($this->_model->isOwnOriginUrl()); } } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/View/DesignTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/View/DesignTest.php index cf7d32d17b8e2..0c5c7bd0608e2 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/View/DesignTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/View/DesignTest.php @@ -33,7 +33,7 @@ class DesignTest extends \PHPUnit_Framework_TestCase { /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_model; @@ -43,7 +43,7 @@ class DesignTest extends \PHPUnit_Framework_TestCase protected $_viewFileSystem; /** - * @var \Magento\Core\Model\View\Config + * @var \Magento\View\ConfigInterface */ protected $_viewConfig; @@ -54,18 +54,18 @@ class DesignTest extends \PHPUnit_Framework_TestCase public static function setUpBeforeClass() { - $themeDir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::MEDIA) . 'theme'; + $themeDir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::MEDIA) . 'theme'; $filesystem = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Filesystem'); $filesystem->delete($themeDir . '/frontend'); $filesystem->delete($themeDir . '/_merged'); $ioAdapter = new \Magento\Io\File(); $ioAdapter->cp( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::PUB_LIB) . '/prototype/prototype.js', - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::PUB_LIB) . '/prototype/prototype.min.js' + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::PUB_LIB) . '/prototype/prototype.js', + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::PUB_LIB) . '/prototype/prototype.min.js' ); } @@ -73,19 +73,19 @@ public static function tearDownAfterClass() { $ioAdapter = new \Magento\Io\File(); $ioAdapter->rm( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::PUB_LIB) . '/prototype/prototype.min.js' + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::PUB_LIB) . '/prototype/prototype.min.js' ); } protected function setUp() { $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\View\DesignInterface'); + ->create('Magento\View\DesignInterface'); $this->_viewFileSystem = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\View\FileSystem'); $this->_viewConfig = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\View\Config'); + ->create('Magento\View\ConfigInterface'); $this->_viewUrl = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\View\Url'); } @@ -99,24 +99,24 @@ protected function _emulateFixtureTheme($themePath = 'test_default') { \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => realpath(__DIR__ . '/../_files/design'), + \Magento\App\Dir::THEMES => realpath(__DIR__ . '/../_files/design'), ), )); \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->setDesignTheme($themePath); $this->_viewFileSystem = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\View\FileSystem'); $this->_viewConfig = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\View\Config'); + ->create('Magento\View\ConfigInterface'); $this->_viewUrl = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\View\Url'); } public function testSetGetArea() { - $this->assertEquals(\Magento\Core\Model\View\DesignInterface::DEFAULT_AREA, $this->_model->getArea()); + $this->assertEquals(\Magento\View\DesignInterface::DEFAULT_AREA, $this->_model->getArea()); $this->_model->setArea('test'); $this->assertEquals('test', $this->_model->getArea()); } @@ -130,7 +130,7 @@ public function testSetDesignTheme() public function testGetDesignTheme() { - $this->assertInstanceOf('Magento\Core\Model\Theme', $this->_model->getDesignTheme()); + $this->assertInstanceOf('Magento\View\Design\ThemeInterface', $this->_model->getDesignTheme()); } /** @@ -235,9 +235,9 @@ public function testGetViewConfig() public function testGetConfigCustomized() { $this->_emulateFixtureTheme(); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->getDesignTheme(); $customConfigFile = $theme->getCustomization()->getCustomViewConfigPath(); /** @var $filesystem \Magento\Filesystem */ @@ -270,7 +270,7 @@ public function testGetConfigCustomized() public function testGetViewUrl($appMode, $file, $result) { $currentAppMode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\App\State')->getMode(); + ->get('Magento\App\State')->getMode(); if ($currentAppMode != $appMode) { $this->markTestSkipped("Implemented to be run in {$appMode} mode"); } @@ -291,7 +291,7 @@ public function testGetViewUrl($appMode, $file, $result) public function testGetViewUrlSigned($appMode, $file, $result) { $currentAppMode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\App\State')->getMode(); + ->get('Magento\App\State')->getMode(); if ($currentAppMode != $appMode) { $this->markTestSkipped("Implemented to be run in {$appMode} mode"); } @@ -312,32 +312,32 @@ public function getViewUrlDataProvider() { return array( array( - \Magento\Core\Model\App\State::MODE_DEFAULT, + \Magento\App\State::MODE_DEFAULT, 'Magento_Page::favicon.ico', 'http://localhost/pub/static/frontend/test_default/en_US/Magento_Page/favicon.ico', ), array( - \Magento\Core\Model\App\State::MODE_DEFAULT, + \Magento\App\State::MODE_DEFAULT, 'prototype/prototype.js', 'http://localhost/pub/lib/prototype/prototype.js' ), array( - \Magento\Core\Model\App\State::MODE_DEVELOPER, + \Magento\App\State::MODE_DEVELOPER, 'Magento_Page::menu.js', 'http://localhost/pub/static/frontend/test_default/en_US/Magento_Page/menu.js' ), array( - \Magento\Core\Model\App\State::MODE_DEFAULT, + \Magento\App\State::MODE_DEFAULT, 'Magento_Page::menu.js', 'http://localhost/pub/static/frontend/test_default/en_US/Magento_Page/menu.js' ), array( - \Magento\Core\Model\App\State::MODE_DEFAULT, + \Magento\App\State::MODE_DEFAULT, 'Magento_Catalog::widgets.css', 'http://localhost/pub/static/frontend/test_default/en_US/Magento_Catalog/widgets.css' ), array( - \Magento\Core\Model\App\State::MODE_DEVELOPER, + \Magento\App\State::MODE_DEVELOPER, 'Magento_Catalog::widgets.css', 'http://localhost/pub/static/frontend/test_default/en_US/Magento_Catalog/widgets.css' ), @@ -346,8 +346,8 @@ public function getViewUrlDataProvider() public function testGetPublicFileUrl() { - $pubLibFile = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::PUB_LIB) . '/jquery/jquery.js'; + $pubLibFile = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::PUB_LIB) . '/jquery/jquery.js'; $actualResult = $this->_viewUrl->getPublicFileUrl($pubLibFile); $this->assertStringEndsWith('/jquery/jquery.js', $actualResult); } @@ -357,8 +357,8 @@ public function testGetPublicFileUrl() */ public function testGetPublicFileUrlSigned() { - $pubLibFile = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::PUB_LIB) . '/jquery/jquery.js'; + $pubLibFile = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::PUB_LIB) . '/jquery/jquery.js'; $actualResult = $this->_viewUrl->getPublicFileUrl($pubLibFile); $this->assertStringMatchesFormat('%a/jquery/jquery.js?%d', $actualResult); } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/View/FileSystemTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/View/FileSystemTest.php index e638069b42c42..4c13b98f80d8a 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/View/FileSystemTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/View/FileSystemTest.php @@ -42,13 +42,13 @@ protected function setUp() { \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => dirname(__DIR__) . '/_files/design' + \Magento\App\Dir::THEMES => dirname(__DIR__) . '/_files/design' ) )); $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\View\FileSystem'); \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->setDesignTheme('test_default'); } diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/View/PublicationTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/View/PublicationTest.php index 3aa084cf677bc..bc58ac9245e14 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/View/PublicationTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Model/View/PublicationTest.php @@ -30,7 +30,7 @@ class PublicationTest extends \PHPUnit_Framework_TestCase { /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_model; @@ -58,7 +58,7 @@ protected function setUp() $this->_viewUrl = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\View\Url'); $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); } protected function tearDown() @@ -75,9 +75,9 @@ protected function tearDown() */ public function testGetPublicDir() { - /** @var $dirs \Magento\Core\Model\Dir */ - $dirs = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir'); - $expectedPublicDir = $dirs->getDir(\Magento\Core\Model\Dir::STATIC_VIEW); + /** @var $dirs \Magento\App\Dir */ + $dirs = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir'); + $expectedPublicDir = $dirs->getDir(\Magento\App\Dir::STATIC_VIEW); $this->assertEquals($expectedPublicDir, $this->_viewService->getPublicDir()); } @@ -406,9 +406,9 @@ public function publishCssFileFromModuleDataProvider() */ public function testPublishResourcesAndCssWhenChangedCssDevMode() { - $mode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App\State') + $mode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\State') ->getMode(); - if ($mode != \Magento\Core\Model\App\State::MODE_DEVELOPER) { + if ($mode != \Magento\App\State::MODE_DEVELOPER) { $this->markTestSkipped('Valid in developer mode only'); } $this->_testPublishResourcesAndCssWhenChangedCss(true); @@ -422,9 +422,9 @@ public function testPublishResourcesAndCssWhenChangedCssDevMode() */ public function testNotPublishResourcesAndCssWhenChangedCssUsualMode() { - $mode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App\State') + $mode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\State') ->getMode(); - if ($mode == \Magento\Core\Model\App\State::MODE_DEVELOPER) { + if ($mode == \Magento\App\State::MODE_DEVELOPER) { $this->markTestSkipped('Valid in non-developer mode only'); } $this->_testPublishResourcesAndCssWhenChangedCss(false); @@ -440,12 +440,12 @@ protected function _testPublishResourcesAndCssWhenChangedCss($expectedPublished) $appInstallDir = \Magento\TestFramework\Helper\Bootstrap::getInstance()->getAppInstallDir(); \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => "$appInstallDir/media_for_change", + \Magento\App\Dir::THEMES => "$appInstallDir/media_for_change", ) )); $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); $this->_model->setDesignTheme('test_default'); $this->_viewService = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() @@ -494,9 +494,9 @@ protected function _testPublishResourcesAndCssWhenChangedCss($expectedPublished) */ public function testPublishChangedResourcesWhenUnchangedCssDevMode() { - $mode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App\State') + $mode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\State') ->getMode(); - if ($mode != \Magento\Core\Model\App\State::MODE_DEVELOPER) { + if ($mode != \Magento\App\State::MODE_DEVELOPER) { $this->markTestSkipped('Valid in developer mode only'); } @@ -511,9 +511,9 @@ public function testPublishChangedResourcesWhenUnchangedCssDevMode() */ public function testNotPublishChangedResourcesWhenUnchangedCssUsualMode() { - $mode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App\State') + $mode = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\State') ->getMode(); - if ($mode == \Magento\Core\Model\App\State::MODE_DEVELOPER) { + if ($mode == \Magento\App\State::MODE_DEVELOPER) { $this->markTestSkipped('Valid in non-developer mode only'); } @@ -530,12 +530,12 @@ protected function _testPublishChangedResourcesWhenUnchangedCss($expectedPublish $appInstallDir = \Magento\TestFramework\Helper\Bootstrap::getInstance()->getAppInstallDir(); \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => "$appInstallDir/media_for_change", + \Magento\App\Dir::THEMES => "$appInstallDir/media_for_change", ) )); $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); $this->_model->setDesignTheme('test_default'); $this->_viewService = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() @@ -577,7 +577,7 @@ protected function _initTestTheme($allowDuplication = null) { \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => dirname(__DIR__) . '/_files/design/' + \Magento\App\Dir::THEMES => dirname(__DIR__) . '/_files/design/' ) )); @@ -592,7 +592,7 @@ protected function _initTestTheme($allowDuplication = null) // Reinit model with new directories $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); $this->_model->setDesignTheme('test_default'); $this->_viewService = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() @@ -613,7 +613,7 @@ public function testCssWithBase64Data() { \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => dirname(__DIR__) . '/_files/design/' + \Magento\App\Dir::THEMES => dirname(__DIR__) . '/_files/design/' ) )); \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App')->loadAreaPart( @@ -643,7 +643,7 @@ public function testCssWithBase64Data() $this->assertFileEquals($filePath, str_replace('/', DIRECTORY_SEPARATOR, "{$publishedPath}/css/base64.css")); $this->_model->setDesignTheme(\Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme')); + ->create('Magento\View\Design\ThemeInterface')); } /** @@ -670,8 +670,8 @@ public function testGetViewFilePublicPath($file, $designParams, $expectedFile) public function testGetViewFilePublicPathExistingFile() { $filePath = 'mage/mage.js'; - $expectedFile = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::PUB_LIB) . '/' . $filePath; + $expectedFile = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::PUB_LIB) . '/' . $filePath; $this->assertFileExists($expectedFile, 'Please verify existence of public library file'); $actualFile = $this->_viewUrl->getViewFilePublicPath($filePath); diff --git a/dev/tests/integration/testsuite/Magento/Core/Utility/Layout.php b/dev/tests/integration/testsuite/Magento/Core/Utility/Layout.php index 35ae9f3b06b61..03471c7042783 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Utility/Layout.php +++ b/dev/tests/integration/testsuite/Magento/Core/Utility/Layout.php @@ -63,7 +63,7 @@ public function getLayoutUpdateFromFixture($layoutUpdatesFile) ->will(\PHPUnit_Framework_TestCase::returnValue($files)); $cache = $this->_testCase->getMockForAbstractClass('Magento\Cache\FrontendInterface'); return $objectManager->create( - 'Magento\Core\Model\Layout\Merge', array('fileSource' => $fileSource, 'cache' => $cache) + 'Magento\View\Layout\ProcessorInterface', array('fileSource' => $fileSource, 'cache' => $cache) ); } @@ -94,13 +94,13 @@ public function getLayoutDependencies() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); return array( - 'mergeFactory' => $objectManager->get('Magento\Core\Model\Layout\MergeFactory'), + 'processorFactory' => $objectManager->get('Magento\View\Layout\ProcessorFactory'), 'themeFactory' => $objectManager->get('Magento\Core\Model\Resource\Theme\CollectionFactory'), 'logger' => $objectManager->get('Magento\Core\Model\Logger'), - 'eventManager' => $objectManager->get('Magento\Core\Model\Event\Manager'), + 'eventManager' => $objectManager->get('Magento\Event\ManagerInterface'), 'factoryHelper' => $objectManager->get('Magento\Core\Model\Factory\Helper'), 'coreData' => $objectManager->get('Magento\Core\Helper\Data'), - 'design' => $objectManager->get('Magento\Core\Model\View\DesignInterface'), + 'design' => $objectManager->get('Magento\View\DesignInterface'), 'blockFactory' => $objectManager->create('Magento\Core\Model\BlockFactory', array()), 'structure' => $objectManager->create('Magento\Data\Structure', array()), 'argumentProcessor' => $objectManager->create('Magento\Core\Model\Layout\Argument\Processor', array()), diff --git a/dev/tests/integration/testsuite/Magento/Core/Utility/LayoutTest.php b/dev/tests/integration/testsuite/Magento/Core/Utility/LayoutTest.php index 0bc7a210b93d1..dd3a7f1a6cf77 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Utility/LayoutTest.php +++ b/dev/tests/integration/testsuite/Magento/Core/Utility/LayoutTest.php @@ -45,10 +45,10 @@ protected function setUp() */ protected function _assertLayoutUpdate($expectedUpdateFile, $actualUpdate) { - $this->assertInstanceOf('Magento\Core\Model\Layout\Merge', $actualUpdate); + $this->assertInstanceOf('Magento\View\Layout\ProcessorInterface', $actualUpdate); $layoutUpdateXml = $actualUpdate->getFileLayoutUpdatesXml(); - $this->assertInstanceOf('Magento\Core\Model\Layout\Element', $layoutUpdateXml); + $this->assertInstanceOf('Magento\View\Layout\Element', $layoutUpdateXml); $this->assertXmlStringEqualsXmlFile($expectedUpdateFile, $layoutUpdateXml->asNiceXml()); } @@ -71,7 +71,7 @@ public function testGetLayoutUpdateFromFixture($inputFiles, $expectedFile) public function testGetLayoutFromFixture($inputFiles, $expectedFile) { $layout = $this->_utility->getLayoutFromFixture($inputFiles, $this->_utility->getLayoutDependencies()); - $this->assertInstanceOf('Magento\Core\Model\Layout', $layout); + $this->assertInstanceOf('Magento\View\LayoutInterface', $layout); $this->_assertLayoutUpdate($expectedFile, $layout->getUpdate()); } diff --git a/dev/tests/integration/testsuite/Magento/Core/_files/layout_update.php b/dev/tests/integration/testsuite/Magento/Core/_files/layout_update.php index 6103e98b9d83d..51391e9e34779 100644 --- a/dev/tests/integration/testsuite/Magento/Core/_files/layout_update.php +++ b/dev/tests/integration/testsuite/Magento/Core/_files/layout_update.php @@ -29,8 +29,8 @@ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\App') ->loadAreaPart(\Magento\Core\Model\App\Area::AREA_ADMINHTML, \Magento\Core\Model\App\Area::PART_CONFIG); -/** @var $theme \Magento\Core\Model\Theme */ -$theme = $objectManager->create('Magento\Core\Model\Theme'); +/** @var $theme \Magento\View\Design\ThemeInterface */ +$theme = $objectManager->create('Magento\View\Design\ThemeInterface'); $theme->setThemePath('test/test') ->setThemeVersion('2.0.0.0') ->setArea('frontend') diff --git a/dev/tests/integration/testsuite/Magento/Customer/Block/Account/Dashboard/InfoTest.php b/dev/tests/integration/testsuite/Magento/Customer/Block/Account/Dashboard/InfoTest.php index b031a7e592909..684bef2b9bd94 100644 --- a/dev/tests/integration/testsuite/Magento/Customer/Block/Account/Dashboard/InfoTest.php +++ b/dev/tests/integration/testsuite/Magento/Customer/Block/Account/Dashboard/InfoTest.php @@ -36,7 +36,7 @@ class InfoTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Customer\Block\Account\Dashboard\Info'); } diff --git a/dev/tests/integration/testsuite/Magento/Customer/Block/Widget/GenderTest.php b/dev/tests/integration/testsuite/Magento/Customer/Block/Widget/GenderTest.php index 6f7536efe6ebc..4603d0acc5c1a 100644 --- a/dev/tests/integration/testsuite/Magento/Customer/Block/Widget/GenderTest.php +++ b/dev/tests/integration/testsuite/Magento/Customer/Block/Widget/GenderTest.php @@ -36,7 +36,7 @@ class GenderTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Customer\Block\Widget\Gender'); } diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Config/QuickStylesTest.php b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Config/QuickStylesTest.php index 340e8e39e8178..1bf4d156f9b0a 100644 --- a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Config/QuickStylesTest.php +++ b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Config/QuickStylesTest.php @@ -35,7 +35,7 @@ class QuickStylesTest extends \PHPUnit_Framework_TestCase protected $_model; /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_design; @@ -50,8 +50,8 @@ class QuickStylesTest extends \PHPUnit_Framework_TestCase protected function setUp() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_design = $objectManager->get('Magento\Core\Model\View\DesignInterface'); - $this->_design->setDesignTheme('vendor_test', \Magento\Core\Model\View\DesignInterface::DEFAULT_AREA); + $this->_design = $objectManager->get('Magento\View\DesignInterface'); + $this->_design->setDesignTheme('vendor_test', \Magento\View\DesignInterface::DEFAULT_AREA); $this->_viewFileSystem = $objectManager->get('Magento\Core\Model\View\FileSystem'); $quickStylesPath = $this->_viewFileSystem->getFilename('Magento_DesignEditor::controls/quick_styles.xml'); $this->assertFileExists($quickStylesPath); diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Editor/Tools/Controls/ConfigurationTest.php b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Editor/Tools/Controls/ConfigurationTest.php index eebd82205d589..2a4ed51970fe5 100644 --- a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Editor/Tools/Controls/ConfigurationTest.php +++ b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Editor/Tools/Controls/ConfigurationTest.php @@ -35,7 +35,7 @@ class ConfigurationTest extends \PHPUnit_Framework_TestCase protected $_configFactory; /** - * @var \Magento\Core\Model\View\DesignInterface + * @var \Magento\View\DesignInterface */ protected $_design; @@ -45,9 +45,9 @@ class ConfigurationTest extends \PHPUnit_Framework_TestCase protected function setUp() { $this->_design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( - 'Magento\Core\Model\View\DesignInterface' + 'Magento\View\DesignInterface' ); - $this->_design->setDesignTheme('vendor_test_child', \Magento\Core\Model\View\DesignInterface::DEFAULT_AREA); + $this->_design->setDesignTheme('vendor_test_child', \Magento\View\DesignInterface::DEFAULT_AREA); $this->_configFactory = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( 'Magento\DesignEditor\Model\Editor\Tools\Controls\Factory' ); @@ -63,7 +63,7 @@ protected function setUp() public function testLoadConfigurations($type, $controlName, $controlData) { $designTheme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->getDesignTheme(); $configuration = $this->_configFactory->create($type, $designTheme); $this->assertEquals($controlData, $configuration->getControlData($controlName)); @@ -136,7 +136,7 @@ public function testSaveConfiguration($saveData, $xpathData) { $type = \Magento\DesignEditor\Model\Editor\Tools\Controls\Factory::TYPE_QUICK_STYLES; $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->getDesignTheme(); $configuration = $this->_configFactory->create($type, $theme); $configuration->saveData($saveData); diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/ObserverTest.php b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/ObserverTest.php index d4fb05fe3b940..9702190a028da 100644 --- a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/ObserverTest.php +++ b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/ObserverTest.php @@ -39,7 +39,7 @@ class ObserverTest extends \PHPUnit_Framework_TestCase */ public function testCleanJs($area, $designMode, $expectedAssets) { - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $headBlock \Magento\Page\Block\Html\Head */ $headBlock = $layout->createBlock('Magento\Page\Block\Html\Head', 'head'); $headBlock->setData('vde_design_mode', $designMode); @@ -75,12 +75,12 @@ public function testCleanJs($area, $designMode, $expectedAssets) } - /** @var \Magento\Core\Model\Config\Scope $configScope */ - $configScope = $objectManager->get('Magento\Core\Model\Config\Scope'); + /** @var \Magento\Config\Scope $configScope */ + $configScope = $objectManager->get('Magento\Config\ScopeInterface'); $configScope->setCurrentScope($area); - /** @var $eventManager \Magento\Core\Model\Event\Manager */ - $eventManager = $objectManager->get('Magento\Core\Model\Event\Manager'); + /** @var $eventManager \Magento\Event\ManagerInterface */ + $eventManager = $objectManager->get('Magento\Event\ManagerInterface'); $eventManager->dispatch('controller_action_layout_generate_blocks_after', array('layout' => $layout)); $actualAssets = array_keys($pageAssets->getAll()); diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Theme/ChangeTest.php b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Theme/ChangeTest.php index 34d886161930d..34390230f579f 100644 --- a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Theme/ChangeTest.php +++ b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Theme/ChangeTest.php @@ -52,9 +52,10 @@ public function testCrud() */ protected function _getChangeValidData() { - /** @var $theme \Magento\Core\Model\Theme */ - /** @var $themeModel \Magento\Core\Model\Theme */ - $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Core\Model\Theme'); + /** @var $theme \Magento\View\Design\ThemeInterface */ + /** @var $themeModel \Magento\View\Design\ThemeInterface */ + $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->create('Magento\View\Design\ThemeInterface'); $themeModel = $theme->getCollection()->getFirstItem(); return array( diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Translate/InlineVdeTest.php b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Translate/InlineVdeTest.php index 3267cb2506f48..87132cac92034 100644 --- a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Translate/InlineVdeTest.php +++ b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/Translate/InlineVdeTest.php @@ -35,7 +35,7 @@ class InlineVdeTest extends \PHPUnit_Framework_TestCase protected $_model; /** - * @var \Magento\Core\Controller\Request\Http + * @var \Magento\App\RequestInterface */ protected $_request; @@ -46,7 +46,7 @@ class InlineVdeTest extends \PHPUnit_Framework_TestCase public static function setUpBeforeClass() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDesignTheme('magento_demo'); } @@ -55,7 +55,7 @@ protected function setUp() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $this->_model = $objectManager->get('Magento\DesignEditor\Model\Translate\InlineVde'); - $this->_request = $objectManager->get('Magento\Core\Controller\Request\Http'); + $this->_request = $objectManager->get('Magento\App\RequestInterface'); $this->_request->setParam('translation_mode', 'text'); $this->_helperData = $objectManager->get('Magento\DesignEditor\Helper\Data'); @@ -65,7 +65,7 @@ protected function setUp() public function testObjectCreation() { $this->assertInstanceOf('Magento\DesignEditor\Model\Translate\InlineVde', $this->_model); - $this->assertInstanceOf('Magento\Core\Controller\Request\Http', $this->_request); + $this->assertInstanceOf('Magento\App\RequestInterface', $this->_request); $this->assertInstanceOf('Magento\DesignEditor\Helper\Data', $this->_helperData); } diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/themes.php b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/themes.php index 669599b5e5adb..0a0686507960c 100644 --- a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/themes.php +++ b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/themes.php @@ -27,7 +27,7 @@ \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize(array( \Magento\Core\Model\App::PARAM_APP_DIRS => array( - \Magento\Core\Model\Dir::THEMES => dirname(__DIR__) . '/design' + \Magento\App\Dir::THEMES => dirname(__DIR__) . '/design' ) )); diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/_files/design_editor_active.php b/dev/tests/integration/testsuite/Magento/DesignEditor/_files/design_editor_active.php index bdc8bdc46bb95..714aa8d020a16 100644 --- a/dev/tests/integration/testsuite/Magento/DesignEditor/_files/design_editor_active.php +++ b/dev/tests/integration/testsuite/Magento/DesignEditor/_files/design_editor_active.php @@ -24,7 +24,7 @@ * @copyright Copyright (c) 2013 X.commerce, Inc. (http://www.magentocommerce.com) * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Config\Scope') +\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Config\ScopeInterface') ->setCurrentScope(\Magento\Core\Model\App\Area::AREA_ADMINHTML); $session = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\DesignEditor\Model\Session'); @@ -35,9 +35,9 @@ $auth->login(\Magento\TestFramework\Bootstrap::ADMIN_NAME, \Magento\TestFramework\Bootstrap::ADMIN_PASSWORD); $session->activateDesignEditor(); -/** @var $theme \Magento\Core\Model\Theme */ +/** @var $theme \Magento\View\Design\ThemeInterface */ $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'); + ->create('Magento\View\Design\ThemeInterface'); $theme->setData(array( 'theme_code' => 'blank', 'area' => 'frontend', diff --git a/dev/tests/integration/testsuite/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/LinksTest.php b/dev/tests/integration/testsuite/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/LinksTest.php index 148d95e80f4c2..a6c95a813c41f 100644 --- a/dev/tests/integration/testsuite/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/LinksTest.php +++ b/dev/tests/integration/testsuite/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/LinksTest.php @@ -32,7 +32,7 @@ class LinksTest { public function testGetUploadButtonsHtml() { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Downloadable\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable\Links'); self::performUploadButtonTest($block); } @@ -49,7 +49,7 @@ public static function performUploadButtonTest(\Magento\Core\Block\AbstractBlock ->create('Magento\Core\Model\Layout'); $layout->addBlock($block, 'links'); $expected = uniqid(); - $text = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $text = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text', '', array('data' => array('text' => $expected))); $block->unsetChild('upload_button'); $layout->addBlock($text, 'upload_button', 'links'); @@ -65,7 +65,7 @@ public function testGetLinkData() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry') ->register('product', new \Magento\Object(array('type_id' => 'simple'))); - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Downloadable\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable\Links'); $this->assertEmpty($block->getLinkData()); } @@ -90,7 +90,7 @@ public function testGetLinksTitle($productType, $linksTitle, $expectedResult) 'id' => '1', 'links_title' => $linksTitle ))); - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Downloadable\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable\Links'); $this->assertEquals($expectedResult, $block->getLinksTitle()); } diff --git a/dev/tests/integration/testsuite/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/SamplesTest.php b/dev/tests/integration/testsuite/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/SamplesTest.php index 707f51b27c09d..d89c344509c23 100644 --- a/dev/tests/integration/testsuite/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/SamplesTest.php +++ b/dev/tests/integration/testsuite/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/SamplesTest.php @@ -32,7 +32,7 @@ class SamplesTest { public function testGetUploadButtonsHtml() { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Downloadable\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable\Samples'); \Magento\Downloadable\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable\LinksTest ::performUploadButtonTest($block); @@ -47,7 +47,7 @@ public function testGetSampleData() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry') ->register('current_product', new \Magento\Object(array('type_id' => 'simple'))); - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Downloadable\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable\Samples'); $this->assertEmpty($block->getSampleData()); } @@ -72,7 +72,7 @@ public function testGetSamplesTitle($productType, $samplesTitle, $expectedResult 'id' => '1', 'samples_title' => $samplesTitle ))); - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Downloadable\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable\Samples'); $this->assertEquals($expectedResult, $block->getSamplesTitle()); } diff --git a/dev/tests/integration/testsuite/Magento/Downloadable/Controller/ProductTest.php b/dev/tests/integration/testsuite/Magento/Downloadable/Controller/ProductTest.php index d5262e0ea98b5..5df8495492ebc 100644 --- a/dev/tests/integration/testsuite/Magento/Downloadable/Controller/ProductTest.php +++ b/dev/tests/integration/testsuite/Magento/Downloadable/Controller/ProductTest.php @@ -40,7 +40,7 @@ public function testViewAction() $this->dispatch('catalog/product/view/id/1'); $this->assertContains( 'catalog_product_view_type_downloadable', - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->getUpdate()->getHandles() ); $responseBody = $this->getResponse()->getBody(); diff --git a/dev/tests/integration/testsuite/Magento/Eav/Block/Adminhtml/Attribute/Edit/Main/AbstractTest.php b/dev/tests/integration/testsuite/Magento/Eav/Block/Adminhtml/Attribute/Edit/Main/AbstractTest.php index 9889f3e50fbe5..f119bfe1110e8 100644 --- a/dev/tests/integration/testsuite/Magento/Eav/Block/Adminhtml/Attribute/Edit/Main/AbstractTest.php +++ b/dev/tests/integration/testsuite/Magento/Eav/Block/Adminhtml/Attribute/Edit/Main/AbstractTest.php @@ -41,7 +41,7 @@ public function testPrepareForm() /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $objectManager->get('Magento\Core\Model\View\DesignInterface') + $objectManager->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); $entityType = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Eav\Model\Config') diff --git a/dev/tests/integration/testsuite/Magento/Filesystem/Adapter/LocalTest.php b/dev/tests/integration/testsuite/Magento/Filesystem/Adapter/LocalTest.php index 53639d4d62b85..3b164197e4245 100644 --- a/dev/tests/integration/testsuite/Magento/Filesystem/Adapter/LocalTest.php +++ b/dev/tests/integration/testsuite/Magento/Filesystem/Adapter/LocalTest.php @@ -47,8 +47,8 @@ protected function tearDown() protected static function _getTmpDir() { - return \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DIRECTORY_SEPARATOR . 'Magento\Filesystem\Adapter\LocalTest'; + return \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::VAR_DIR) . DIRECTORY_SEPARATOR . 'Magento\Filesystem\Adapter\LocalTest'; } /** diff --git a/dev/tests/integration/testsuite/Magento/GiftMessage/Block/Message/InlineTest.php b/dev/tests/integration/testsuite/Magento/GiftMessage/Block/Message/InlineTest.php index cfed9e44ac808..1d6530c3fc8f2 100644 --- a/dev/tests/integration/testsuite/Magento/GiftMessage/Block/Message/InlineTest.php +++ b/dev/tests/integration/testsuite/Magento/GiftMessage/Block/Message/InlineTest.php @@ -36,7 +36,7 @@ class InlineTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\GiftMessage\Block\Message\Inline'); } diff --git a/dev/tests/integration/testsuite/Magento/GoogleShopping/Block/Adminhtml/Items/ProductTest.php b/dev/tests/integration/testsuite/Magento/GoogleShopping/Block/Adminhtml/Items/ProductTest.php index a8ed213ed6cb4..241a77401f6ba 100644 --- a/dev/tests/integration/testsuite/Magento/GoogleShopping/Block/Adminhtml/Items/ProductTest.php +++ b/dev/tests/integration/testsuite/Magento/GoogleShopping/Block/Adminhtml/Items/ProductTest.php @@ -36,14 +36,14 @@ public function testBeforeToHtml() { $this->markTestIncomplete('Magento_GoogleShopping is not implemented yet'); - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\GoogleShopping\Block\Adminhtml\Items\Product'); - $filter = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $filter = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text'); - $search = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $search = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Core\Block\Text'); - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $layout->addBlock($block, 'product'); $layout->addBlock($filter, 'reset_filter_button', 'product'); $layout->addBlock($search, 'search_button', 'product'); diff --git a/dev/tests/integration/testsuite/Magento/Image/Adapter/InterfaceTest.php b/dev/tests/integration/testsuite/Magento/Image/Adapter/InterfaceTest.php index e4673bedb9406..aab82d30da2a1 100644 --- a/dev/tests/integration/testsuite/Magento/Image/Adapter/InterfaceTest.php +++ b/dev/tests/integration/testsuite/Magento/Image/Adapter/InterfaceTest.php @@ -597,7 +597,7 @@ public function testCreatePngFromString($pixel1, $expectedColor1, $pixel2, $expe $adapter = $this->_getAdapter($adapterType); $adapter->createPngFromString( 'T', - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir() + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir() . '/lib/LinLibertineFont/LinLibertine_Re-4.4.1.ttf' ); $adapter->refreshImageDimensions(); diff --git a/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Export/Edit/FormTest.php b/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Export/Edit/FormTest.php index c631ffc58def0..24a25cea3a1d0 100644 --- a/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Export/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Export/Edit/FormTest.php @@ -62,7 +62,7 @@ class FormTest extends \PHPUnit_Framework_TestCase protected function setUp() { parent::setUp(); - $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\ImportExport\Block\Adminhtml\Export\Edit\Form'); } diff --git a/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Export/FilterTest.php b/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Export/FilterTest.php index ce0a46563fa68..7cfd5bf603a86 100644 --- a/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Export/FilterTest.php +++ b/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Export/FilterTest.php @@ -38,7 +38,7 @@ class FilterTest */ public function testGetDateFromToHtmlWithValue() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_ADMINHTML) ->setDefaultDesignTheme(); $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Import/Edit/FormTest.php b/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Import/Edit/FormTest.php index b00b3e46e687d..1acc3780ecdd2 100644 --- a/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Import/Edit/FormTest.php +++ b/dev/tests/integration/testsuite/Magento/ImportExport/Block/Adminhtml/Import/Edit/FormTest.php @@ -63,7 +63,7 @@ protected function setUp() */ public function testPrepareForm() { - $formBlock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $formBlock = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\ImportExport\Block\Adminhtml\Import\Edit\Form'); $prepareForm = new \ReflectionMethod( 'Magento\ImportExport\Block\Adminhtml\Import\Edit\Form', diff --git a/dev/tests/integration/testsuite/Magento/ImportExport/Model/Import/Entity/ProductTest.php b/dev/tests/integration/testsuite/Magento/ImportExport/Model/Import/Entity/ProductTest.php index 66ebe2cb13c72..6dab6350f52ef 100644 --- a/dev/tests/integration/testsuite/Magento/ImportExport/Model/Import/Entity/ProductTest.php +++ b/dev/tests/integration/testsuite/Magento/ImportExport/Model/Import/Entity/ProductTest.php @@ -500,7 +500,7 @@ public function testSaveMediaImage() */ public static function mediaImportImageFixture() { - $dir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') + $dir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') ->getDir('media') . '/import'; mkdir($dir); copy(__DIR__ . '/../../../../../Magento/Catalog/_files/magento_image.jpg', "{$dir}/magento_image.jpg"); @@ -511,7 +511,7 @@ public static function mediaImportImageFixture() */ public static function mediaImportImageFixtureRollback() { - $media = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') + $media = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') ->getDir('media'); \Magento\Io\File::rmdirRecursive("{$media}/import"); \Magento\Io\File::rmdirRecursive("{$media}/catalog"); diff --git a/dev/tests/integration/testsuite/Magento/Index/Model/Process/FileTest.php b/dev/tests/integration/testsuite/Magento/Index/Model/Process/FileTest.php index 29285323abb1a..9b6000059c4e0 100644 --- a/dev/tests/integration/testsuite/Magento/Index/Model/Process/FileTest.php +++ b/dev/tests/integration/testsuite/Magento/Index/Model/Process/FileTest.php @@ -61,9 +61,9 @@ protected function setUp() { $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $this->_model = $this->_objectManager->create('Magento\Index\Model\Process\File'); - /** @var $dir \Magento\Core\Model\Dir */ - $dir = $this->_objectManager->get('Magento\Core\Model\Dir'); - $this->_fileDirectory = $dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DIRECTORY_SEPARATOR . 'locks'; + /** @var $dir \Magento\App\Dir */ + $dir = $this->_objectManager->get('Magento\App\Dir'); + $this->_fileDirectory = $dir->getDir(\Magento\App\Dir::VAR_DIR) . DIRECTORY_SEPARATOR . 'locks'; $fullFileName = $this->_fileDirectory . DIRECTORY_SEPARATOR . self::FILE_NAME; $this->_testFileHandler = fopen($fullFileName, 'w'); } diff --git a/dev/tests/integration/testsuite/Magento/Install/Controller/WizardTest.php b/dev/tests/integration/testsuite/Magento/Install/Controller/WizardTest.php index 362072157978a..b700881041b72 100644 --- a/dev/tests/integration/testsuite/Magento/Install/Controller/WizardTest.php +++ b/dev/tests/integration/testsuite/Magento/Install/Controller/WizardTest.php @@ -58,12 +58,12 @@ public function testPreDispatch() { \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->configure(array( 'preferences' => array( - 'Magento\Core\Controller\Request\Http' => 'Magento\TestFramework\Request', - 'Magento\Core\Controller\Response\Http' => 'Magento\TestFramework\Response' + 'Magento\App\RequestInterface' => 'Magento\TestFramework\Request', + 'Magento\App\Response\Http' => 'Magento\TestFramework\Response' ) )); - /** @var $appState \Magento\Core\Model\App\State */ - $appState = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\App\State'); + /** @var $appState \Magento\App\State */ + $appState = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\State'); $appState->setInstallDate(false); $this->dispatch('install/wizard'); $this->assertEquals(200, $this->getResponse()->getHttpResponseCode()); @@ -78,12 +78,12 @@ public function testPreDispatch() public function testPreDispatchImpossibleToRenderPage($action) { $params = self::$_params; - $params[\Magento\Core\Model\App::PARAM_APP_DIRS][\Magento\Core\Model\Dir::STATIC_VIEW] = self::$_tmpDir; + $params[\Magento\Core\Model\App::PARAM_APP_DIRS][\Magento\App\Dir::STATIC_VIEW] = self::$_tmpDir; \Magento\TestFramework\Helper\Bootstrap::getInstance()->reinitialize($params); \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->configure(array( 'preferences' => array( - 'Magento\Core\Controller\Request\Http' => 'Magento\TestFramework\Request', - 'Magento\Core\Controller\Response\Http' => 'Magento\TestFramework\Response' + 'Magento\App\RequestInterface' => 'Magento\TestFramework\Request', + 'Magento\App\Response\Http' => 'Magento\TestFramework\Response' ) )); $this->dispatch("install/wizard/{$action}"); diff --git a/dev/tests/integration/testsuite/Magento/Install/IndexTest.php b/dev/tests/integration/testsuite/Magento/Install/IndexTest.php index e85945a81fe32..f5f3eb492c7ec 100644 --- a/dev/tests/integration/testsuite/Magento/Install/IndexTest.php +++ b/dev/tests/integration/testsuite/Magento/Install/IndexTest.php @@ -37,8 +37,8 @@ public function testIndexAction() * because in integration testing environment the application is considered "installed" */ $this->assertFileExists( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::TMP) + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::TMP) ); } } diff --git a/dev/tests/integration/testsuite/Magento/Install/Model/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Install/Model/ConfigTest.php index ba5c041a5b892..c39ea4fc6e473 100644 --- a/dev/tests/integration/testsuite/Magento/Install/Model/ConfigTest.php +++ b/dev/tests/integration/testsuite/Magento/Install/Model/ConfigTest.php @@ -53,35 +53,35 @@ public function setUp() } $cacheState->persist(); - /** @var \Magento\Core\Model\Dir $dirs */ + /** @var \Magento\App\Dir $dirs */ $dirs = $this->_objectManager->create( - 'Magento\Core\Model\Dir', array( + 'Magento\App\Dir', array( 'baseDir' => BP, 'dirs' => array( - \Magento\Core\Model\Dir::MODULES => __DIR__ . '/_files', - \Magento\Core\Model\Dir::CONFIG => __DIR__ . '/_files' + \Magento\App\Dir::MODULES => __DIR__ . '/_files', + \Magento\App\Dir::CONFIG => __DIR__ . '/_files' ) ) ); - /** @var \Magento\Core\Model\Module\Declaration\FileResolver $modulesDeclarations */ + /** @var \Magento\App\Module\Declaration\FileResolver $modulesDeclarations */ $modulesDeclarations = $this->_objectManager->create( - 'Magento\Core\Model\Module\Declaration\FileResolver', array( + 'Magento\App\Module\Declaration\FileResolver', array( 'applicationDirs' => $dirs, ) ); - /** @var \Magento\Core\Model\Module\Declaration\Reader\Filesystem $filesystemReader */ + /** @var \Magento\App\Module\Declaration\Reader\Filesystem $filesystemReader */ $filesystemReader = $this->_objectManager->create( - 'Magento\Core\Model\Module\Declaration\Reader\Filesystem', array( + 'Magento\App\Module\Declaration\Reader\Filesystem', array( 'fileResolver' => $modulesDeclarations, ) ); - /** @var \Magento\Core\Model\ModuleList $modulesList */ + /** @var \Magento\App\ModuleList $modulesList */ $modulesList = $this->_objectManager->create( - 'Magento\Core\Model\ModuleList', array( + 'Magento\App\ModuleList', array( 'reader' => $filesystemReader, ) ); diff --git a/dev/tests/integration/testsuite/Magento/Install/Model/Installer/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Install/Model/Installer/ConfigTest.php index 49541ba9d73e9..be36313695878 100644 --- a/dev/tests/integration/testsuite/Magento/Install/Model/Installer/ConfigTest.php +++ b/dev/tests/integration/testsuite/Magento/Install/Model/Installer/ConfigTest.php @@ -32,8 +32,8 @@ class ConfigTest extends \PHPUnit_Framework_TestCase public static function setUpBeforeClass() { - self::$_tmpDir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DIRECTORY_SEPARATOR . "ConfigTest"; + self::$_tmpDir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::VAR_DIR) . DIRECTORY_SEPARATOR . "ConfigTest"; mkdir(self::$_tmpDir); } @@ -48,7 +48,7 @@ public function testInstall() $expectedFile = self::$_tmpDir . '/local.xml'; $request = $this->getMock( - 'Magento\Core\Controller\Request\Http', + 'Magento\App\Request\Http', array('getDistroBaseUrl'), array(), '', @@ -57,10 +57,10 @@ public function testInstall() $request->expects($this->once())->method('getDistroBaseUrl')->will($this->returnValue('http://example.com/')); $expectedContents = "test; ; ; {{unknown}}"; - $dirs = new \Magento\Core\Model\Dir( + $dirs = new \Magento\App\Dir( self::$_tmpDir, array(), - array(\Magento\Core\Model\Dir::CONFIG => self::$_tmpDir) + array(\Magento\App\Dir::CONFIG => self::$_tmpDir) ); $this->assertFileNotExists($expectedFile); diff --git a/dev/tests/integration/testsuite/Magento/Install/Model/InstallerTest.php b/dev/tests/integration/testsuite/Magento/Install/Model/InstallerTest.php index 5eaa00a677e05..74fabf9d1186a 100644 --- a/dev/tests/integration/testsuite/Magento/Install/Model/InstallerTest.php +++ b/dev/tests/integration/testsuite/Magento/Install/Model/InstallerTest.php @@ -41,8 +41,8 @@ class InstallerTest extends \PHPUnit_Framework_TestCase public static function setUpBeforeClass() { - self::$_tmpDir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') - ->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DIRECTORY_SEPARATOR . 'InstallerTest'; + self::$_tmpDir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') + ->getDir(\Magento\App\Dir::VAR_DIR) . DIRECTORY_SEPARATOR . 'InstallerTest'; self::$_tmpConfigFile = self::$_tmpDir . DIRECTORY_SEPARATOR . 'local.xml'; mkdir(self::$_tmpDir); } @@ -64,9 +64,9 @@ protected function _getModel($emulateConfig = false) $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); if ($emulateConfig) { $installerConfig = new \Magento\Install\Model\Installer\Config( - $objectManager->get('Magento\Install\Model\InstallerProxy'), - $objectManager->get('Magento\Core\Controller\Request\Http'), - new \Magento\Core\Model\Dir(__DIR__, array(), array(\Magento\Core\Model\Dir::CONFIG => self::$_tmpDir)), + $objectManager->get('Magento\Install\Model\Installer'), + $objectManager->get('Magento\App\RequestInterface'), + new \Magento\App\Dir(__DIR__, array(), array(\Magento\App\Dir::CONFIG => self::$_tmpDir)), new \Magento\Filesystem(new \Magento\Filesystem\Adapter\Local()), $objectManager->get('Magento\Core\Model\StoreManager') ); diff --git a/dev/tests/integration/testsuite/Magento/Newsletter/Model/QueueTest.php b/dev/tests/integration/testsuite/Magento/Newsletter/Model/QueueTest.php index c0b48bc27e584..6ad448fdd328b 100644 --- a/dev/tests/integration/testsuite/Magento/Newsletter/Model/QueueTest.php +++ b/dev/tests/integration/testsuite/Magento/Newsletter/Model/QueueTest.php @@ -41,7 +41,7 @@ public function testSendPerSubscriber() $themes = array('frontend' => 'magento_blank'); /** @var $design \Magento\Core\Model\View\Design */ - $design = $objectManager->create('Magento\Core\Model\View\DesignInterface', array('themes' => $themes)); + $design = $objectManager->create('Magento\View\DesignInterface', array('themes' => $themes)); $objectManager->addSharedInstance($design, 'Magento\Core\Model\View\Design'); /** @var $appEmulation \Magento\Core\Model\App\Emulation */ $appEmulation = $objectManager->create('Magento\Core\Model\App\Emulation', array('viewDesign' => $design)); @@ -83,7 +83,7 @@ public function testSendPerSubscriber() $objectManager->get('Magento\Core\Model\ConfigInterface'), $objectManager->get('Magento\Core\Model\Email\Template\FilterFactory'), $objectManager->get('Magento\Core\Model\StoreManagerInterface'), - $objectManager->get('Magento\Core\Model\Dir'), + $objectManager->get('Magento\App\Dir'), $objectManager->get('Magento\Core\Model\Email\Template\Config'), ) ); @@ -130,7 +130,7 @@ public function testSendPerSubscriberProblem() $objectManager->get('Magento\Core\Model\ConfigInterface'), $objectManager->get('Magento\Core\Model\Email\Template\FilterFactory'), $objectManager->get('Magento\Core\Model\StoreManagerInterface'), - $objectManager->get('Magento\Core\Model\Dir'), + $objectManager->get('Magento\App\Dir'), $objectManager->get('Magento\Core\Model\Email\Template\Config'), ) ); diff --git a/dev/tests/integration/testsuite/Magento/ObjectManager/Config/Reader/DomTest.php b/dev/tests/integration/testsuite/Magento/ObjectManager/Config/Reader/DomTest.php index add2a16ffd844..ee3ff8a2bee7a 100644 --- a/dev/tests/integration/testsuite/Magento/ObjectManager/Config/Reader/DomTest.php +++ b/dev/tests/integration/testsuite/Magento/ObjectManager/Config/Reader/DomTest.php @@ -74,7 +74,7 @@ protected function setUp() $this->_fileResolverMock->expects($this->once())->method('get')->will($this->returnValue($this->_fileList)); $this->_mapper = new \Magento\ObjectManager\Config\Mapper\Dom(); $this->_validationState = - new \Magento\Core\Model\Config\ValidationState(\Magento\Core\Model\App\State::MODE_DEFAULT); + new \Magento\Core\Model\Config\ValidationState(\Magento\App\State::MODE_DEFAULT); $this->_schemaLocator = new \Magento\ObjectManager\Config\SchemaLocator(); $this->_mergedConfig = new \DOMDocument(); diff --git a/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_merged.xml b/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_merged.xml index f7262d041b9b6..0377b42448120 100644 --- a/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_merged.xml +++ b/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_merged.xml @@ -24,8 +24,8 @@ */ --> - - + + Magento\Core\Model\App::PARAM_CUSTOM_LOCAL_CONFIG diff --git a/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_one.xml b/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_one.xml index 399ba92553e37..708a9c97c82dd 100644 --- a/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_one.xml +++ b/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_one.xml @@ -24,7 +24,7 @@ */ --> - + Magento\Core\Model\App::PARAM_CUSTOM_LOCAL_FILE diff --git a/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_two.xml b/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_two.xml index 593b9ab4c5064..8e794956d1c2d 100644 --- a/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_two.xml +++ b/dev/tests/integration/testsuite/Magento/ObjectManager/_files/config_two.xml @@ -24,8 +24,8 @@ */ --> - - + + Magento\Core\Model\App::PARAM_CUSTOM_LOCAL_CONFIG diff --git a/dev/tests/integration/testsuite/Magento/Page/Block/Html/BreadcrumbsTest.php b/dev/tests/integration/testsuite/Magento/Page/Block/Html/BreadcrumbsTest.php index 87ba9fc87cd27..d23b113579746 100644 --- a/dev/tests/integration/testsuite/Magento/Page/Block/Html/BreadcrumbsTest.php +++ b/dev/tests/integration/testsuite/Magento/Page/Block/Html/BreadcrumbsTest.php @@ -36,7 +36,7 @@ class BreadcrumbsTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Page\Block\Html\Breadcrumbs'); } diff --git a/dev/tests/integration/testsuite/Magento/Page/Block/Html/FooterTest.php b/dev/tests/integration/testsuite/Magento/Page/Block/Html/FooterTest.php index 254d5eaa83306..d382f849c85cb 100644 --- a/dev/tests/integration/testsuite/Magento/Page/Block/Html/FooterTest.php +++ b/dev/tests/integration/testsuite/Magento/Page/Block/Html/FooterTest.php @@ -37,13 +37,13 @@ class FooterTest extends \PHPUnit_Framework_TestCase protected function setUp() { $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface'); + ->get('Magento\View\DesignInterface'); $this->_theme = $design->setDefaultDesignTheme()->getDesignTheme(); } public function testGetCacheKeyInfo() { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Page\Block\Html\Footer'); $storeId = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->get('Magento\Core\Model\StoreManagerInterface')->getStore()->getId(); diff --git a/dev/tests/integration/testsuite/Magento/Page/Block/Html/HeadTest.php b/dev/tests/integration/testsuite/Magento/Page/Block/Html/HeadTest.php index 3dfc61df393a9..18f69ad3c0bd6 100644 --- a/dev/tests/integration/testsuite/Magento/Page/Block/Html/HeadTest.php +++ b/dev/tests/integration/testsuite/Magento/Page/Block/Html/HeadTest.php @@ -36,9 +36,9 @@ class HeadTest extends \PHPUnit_Framework_TestCase protected function setUp() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDesignTheme('magento_demo', 'frontend'); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Page\Block\Html\Head'); } diff --git a/dev/tests/integration/testsuite/Magento/Payment/Block/InfoTest.php b/dev/tests/integration/testsuite/Magento/Payment/Block/InfoTest.php index 2b2c08d259204..8a12488037ba6 100644 --- a/dev/tests/integration/testsuite/Magento/Payment/Block/InfoTest.php +++ b/dev/tests/integration/testsuite/Magento/Payment/Block/InfoTest.php @@ -36,7 +36,7 @@ class InfoTest extends \PHPUnit_Framework_TestCase public function testGetChildPdfAsArray() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $block = $layout->createBlock('Magento\Payment\Block\Info', 'block'); /** @var $paymentInfoBank \Magento\Payment\Model\Info */ diff --git a/dev/tests/integration/testsuite/Magento/Paypal/Block/Express/ReviewTest.php b/dev/tests/integration/testsuite/Magento/Paypal/Block/Express/ReviewTest.php index 6f7ea766bf2df..581b23766fc11 100644 --- a/dev/tests/integration/testsuite/Magento/Paypal/Block/Express/ReviewTest.php +++ b/dev/tests/integration/testsuite/Magento/Paypal/Block/Express/ReviewTest.php @@ -34,7 +34,7 @@ class ReviewTest extends \PHPUnit_Framework_TestCase { public function testRenderAddress() { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Paypal\Block\Express\Review'); $addressData = include(__DIR__ . '/../../../Sales/_files/address_data.php'); $address = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Paypal/Model/VoidTest.php b/dev/tests/integration/testsuite/Magento/Paypal/Model/VoidTest.php index ffa05306b0ae1..bea4f722f1650 100644 --- a/dev/tests/integration/testsuite/Magento/Paypal/Model/VoidTest.php +++ b/dev/tests/integration/testsuite/Magento/Paypal/Model/VoidTest.php @@ -36,8 +36,8 @@ class VoidTest extends \PHPUnit_Framework_TestCase public function testPayflowProVoid() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $eventManager = $objectManager->get('Magento\Core\Model\Event\Manager'); - $moduleList = $objectManager->get('Magento\Core\Model\ModuleListInterface'); + $eventManager = $objectManager->get('Magento\Event\ManagerInterface'); + $moduleList = $objectManager->get('Magento\App\ModuleListInterface'); $paymentData = $objectManager->get('Magento\Payment\Helper\Data'); $coreStoreConfig = $objectManager->get('Magento\Core\Model\Store\Config'); $logger = $objectManager->get('Magento\Core\Model\Logger'); diff --git a/dev/tests/integration/testsuite/Magento/ProductAlert/Block/Email/StockTest.php b/dev/tests/integration/testsuite/Magento/ProductAlert/Block/Email/StockTest.php index 9f390473d3500..c437f98bb761e 100644 --- a/dev/tests/integration/testsuite/Magento/ProductAlert/Block/Email/StockTest.php +++ b/dev/tests/integration/testsuite/Magento/ProductAlert/Block/Email/StockTest.php @@ -36,7 +36,7 @@ class StockTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\ProductAlert\Block\Email\Stock'); } diff --git a/dev/tests/integration/testsuite/Magento/Profiler/Driver/Standard/Output/FirebugTest.php b/dev/tests/integration/testsuite/Magento/Profiler/Driver/Standard/Output/FirebugTest.php index d02ddfa225bfe..e010066c97897 100644 --- a/dev/tests/integration/testsuite/Magento/Profiler/Driver/Standard/Output/FirebugTest.php +++ b/dev/tests/integration/testsuite/Magento/Profiler/Driver/Standard/Output/FirebugTest.php @@ -38,19 +38,19 @@ class FirebugTest extends \PHPUnit_Framework_TestCase protected $_response; /** - * @var \Zend_Controller_Request_Http|PHPUnit_Framework_MockObject_MockObject + * @var \Magento\App\RequestInterface|PHPUnit_Framework_MockObject_MockObject */ protected $_request; protected function setUp() { - $this->_response = $this->getMock('Zend_Controller_Response_Http', array('canSendHeaders', 'sendHeaders')); + $this->_response = $this->getMock('\Magento\App\Response\Http', array('canSendHeaders', 'sendHeaders')); $this->_response ->expects($this->any()) ->method('canSendHeaders') ->will($this->returnValue(true)); - $this->_request = $this->getMock('Zend_Controller_Request_Http', array('getHeader')); + $this->_request = $this->getMock('\Magento\App\Request\Http', array('getHeader')); $this->_request ->expects($this->any()) ->method('getHeader') diff --git a/dev/tests/integration/testsuite/Magento/Rss/Block/Order/StatusTest.php b/dev/tests/integration/testsuite/Magento/Rss/Block/Order/StatusTest.php index c30615624c0dc..944dbb6057c70 100644 --- a/dev/tests/integration/testsuite/Magento/Rss/Block/Order/StatusTest.php +++ b/dev/tests/integration/testsuite/Magento/Rss/Block/Order/StatusTest.php @@ -31,7 +31,7 @@ class StatusTest extends \PHPUnit_Framework_TestCase { public function testToHtml() { - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Rss\Block\Order\Status'); $this->assertEmpty($block->toHtml()); diff --git a/dev/tests/integration/testsuite/Magento/Rss/Controller/CatalogTest.php b/dev/tests/integration/testsuite/Magento/Rss/Controller/CatalogTest.php index 15613b949254b..4440c58d107b1 100644 --- a/dev/tests/integration/testsuite/Magento/Rss/Controller/CatalogTest.php +++ b/dev/tests/integration/testsuite/Magento/Rss/Controller/CatalogTest.php @@ -160,7 +160,7 @@ public function testCategoryAction() */ protected function _loginAdmin() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setArea('adminhtml') ->setDefaultDesignTheme(); $this->getRequest()->setServer(array( diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/CommentsTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/CommentsTest.php index b2d999b55da75..0f3d33bffcbd7 100644 --- a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/CommentsTest.php +++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/CommentsTest.php @@ -36,7 +36,7 @@ class CommentsTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Sales\Block\Order\Comments'); } diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Creditmemo/ItemsTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Creditmemo/ItemsTest.php index 9c0fc30b06a90..dd082c4b87e5c 100644 --- a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Creditmemo/ItemsTest.php +++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Creditmemo/ItemsTest.php @@ -30,7 +30,7 @@ class ItemsTest extends \PHPUnit_Framework_TestCase { /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -46,7 +46,8 @@ class ItemsTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->get('Magento\View\LayoutInterface'); $this->_block = $this->_layout->createBlock('Magento\Sales\Block\Order\Creditmemo\Items', 'block'); $this->_creditmemo = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Sales\Model\Order\Creditmemo'); diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Invoice/ItemsTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Invoice/ItemsTest.php index a83a705bc4e9c..54ddf9ea9c546 100644 --- a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Invoice/ItemsTest.php +++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Invoice/ItemsTest.php @@ -30,7 +30,7 @@ class ItemsTest extends \PHPUnit_Framework_TestCase { /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -46,7 +46,8 @@ class ItemsTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->get('Magento\View\LayoutInterface'); $this->_block = $this->_layout->createBlock('Magento\Sales\Block\Order\Invoice\Items', 'block'); $this->_invoice = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Sales\Model\Order\Invoice'); diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/PrintOrder/CreditmemoTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/PrintOrder/CreditmemoTest.php index 72538a5ee2d67..4111f8ba407df 100644 --- a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/PrintOrder/CreditmemoTest.php +++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/PrintOrder/CreditmemoTest.php @@ -44,7 +44,7 @@ public function testGetTotalsHtml() $payment->setMethod('checkmo'); $order->setPayment($payment); - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $block = $layout->createBlock('Magento\Sales\Block\Order\PrintOrder\Creditmemo', 'block'); $childBlock = $layout->addBlock('Magento\Core\Block\Text', 'creditmemo_totals', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/PrintOrder/InvoiceTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/PrintOrder/InvoiceTest.php index e5d0909364f93..1f437b4029f19 100644 --- a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/PrintOrder/InvoiceTest.php +++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/PrintOrder/InvoiceTest.php @@ -44,7 +44,7 @@ public function testGetInvoiceTotalsHtml() $payment->setMethod('checkmo'); $order->setPayment($payment); - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $block = $layout->createBlock('Magento\Sales\Block\Order\PrintOrder\Invoice', 'block'); $childBlock = $layout->addBlock('Magento\Core\Block\Text', 'invoice_totals', 'block'); diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Shipment/ItemsTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Shipment/ItemsTest.php index c46c13199dbbe..7bc682f4bee49 100644 --- a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Shipment/ItemsTest.php +++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/Shipment/ItemsTest.php @@ -31,7 +31,7 @@ class ItemsTest extends \PHPUnit_Framework_TestCase { public function testGetCommentsHtml() { - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $block = $layout->createBlock('Magento\Sales\Block\Order\Shipment\Items', 'block'); $childBlock = $layout->addBlock('Magento\Core\Block\Text', 'shipment_comments', 'block'); $shipment = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/TotalsTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/TotalsTest.php index 06a785ed454bd..ccce946491ad7 100644 --- a/dev/tests/integration/testsuite/Magento/Sales/Block/Order/TotalsTest.php +++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Order/TotalsTest.php @@ -32,7 +32,7 @@ class TotalsTest extends \PHPUnit_Framework_TestCase public function testToHtmlChildrenInitialized() { /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $block = $layout->createBlock('Magento\Sales\Block\Order\Totals', 'block'); $block->setOrder(\Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Sales\Model\Order')) diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Recurring/Profile/ViewTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Recurring/Profile/ViewTest.php index 23ba0ead0faad..332b7a3f68b6f 100644 --- a/dev/tests/integration/testsuite/Magento/Sales/Block/Recurring/Profile/ViewTest.php +++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Recurring/Profile/ViewTest.php @@ -35,7 +35,7 @@ class ViewTest extends \PHPUnit_Framework_TestCase protected $_block; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -52,7 +52,8 @@ protected function setUp() $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry')->register('current_recurring_profile', $this->_profile); - $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->get('Magento\View\LayoutInterface'); $this->_block = $this->_layout->createBlock('Magento\Sales\Block\Recurring\Profile\View', 'block'); } diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/LayoutTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/LayoutTest.php index 63f77a3b37824..665e29622fdf2 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/LayoutTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/LayoutTest.php @@ -48,9 +48,9 @@ public function testHandlesHierarchy() $invoker = new \Magento\TestFramework\Utility\AggregateInvoker($this); $invoker( /** - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme */ - function (\Magento\Core\Model\Theme $theme) { + function (\Magento\View\Design\ThemeInterface $theme) { $xml = $this->_composeXml($theme); /** @@ -67,7 +67,7 @@ function (\Magento\Core\Model\Theme $theme) { } } - /** @var \Magento\Core\Model\Layout\Element $node */ + /** @var \Magento\View\Layout\Element $node */ $errors = array(); foreach ($handles as $node) { $this->_collectHierarchyErrors($node, $xml, $errors); @@ -86,14 +86,14 @@ function (\Magento\Core\Model\Theme $theme) { /** * Composes full layout xml for designated parameters * - * @param \Magento\Core\Model\Theme $theme - * @return \Magento\Core\Model\Layout\Element + * @param \Magento\View\Design\ThemeInterface $theme + * @return \Magento\View\Layout\Element */ - protected function _composeXml(\Magento\Core\Model\Theme $theme) + protected function _composeXml(\Magento\View\Design\ThemeInterface $theme) { - /** @var \Magento\Core\Model\Layout\Merge $layoutUpdate */ + /** @var \Magento\View\Layout\ProcessorInterface $layoutUpdate */ $layoutUpdate = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Layout\Merge', array('theme' => $theme)); + ->create('Magento\View\Layout\ProcessorInterface', array('theme' => $theme)); return $layoutUpdate->getFileLayoutUpdatesXml(); } @@ -101,7 +101,7 @@ protected function _composeXml(\Magento\Core\Model\Theme $theme) * Validate node's declared position in hierarchy and add errors to the specified array if found * * @param \SimpleXMLElement $node - * @param \Magento\Core\Model\Layout\Element $xml + * @param \Magento\View\Layout\Element $xml * @param array &$errors */ protected function _collectHierarchyErrors($node, $xml, &$errors) @@ -141,8 +141,8 @@ public function areasAndThemesDataProvider() { $result = array(); $themeCollection = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme')->getCollection(); - /** @var $theme \Magento\Core\Model\Theme */ + ->create('Magento\View\Design\ThemeInterface')->getCollection(); + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($themeCollection as $theme) { $result[] = array($theme); } @@ -154,9 +154,9 @@ public function testHandleLabels() $invoker = new \Magento\TestFramework\Utility\AggregateInvoker($this); $invoker( /** - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme */ - function (\Magento\Core\Model\Theme $theme) { + function (\Magento\View\Design\ThemeInterface $theme) { $xml = $this->_composeXml($theme); $xpath = '/layouts/*[' @@ -164,7 +164,7 @@ function (\Magento\Core\Model\Theme $theme) { . ' or @type="' . \Magento\Core\Model\Layout\Merge::TYPE_FRAGMENT . '"]'; $handles = $xml->xpath($xpath) ?: array(); - /** @var \Magento\Core\Model\Layout\Element $node */ + /** @var \Magento\View\Layout\Element $node */ $errors = array(); foreach ($handles as $node) { if (!$node->xpath('@label')) { @@ -220,7 +220,7 @@ public function pageTypesDeclarationDataProvider() $themeCollection->addDefaultPattern('*'); /** @var $themeLayouts \Magento\Core\Model\Layout\File[] */ $themeLayouts = array(); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($themeCollection as $theme) { $themeLayouts = array_merge($themeLayouts, $themeUpdates->getFiles($theme)); $themeLayouts = array_merge($themeLayouts, $themeUpdatesOverride->getFiles($theme)); @@ -240,7 +240,7 @@ public function testOverrideBaseFiles() * Check, that for an overriding file ($themeFile) in a theme ($theme), there is a corresponding base file * * @param \Magento\Core\Model\Layout\File $themeFile - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme */ function ($themeFile, $theme) { $baseFiles = self::_getCachedFiles( @@ -266,7 +266,7 @@ public function testOverrideThemeFiles() * there is a corresponding file in that ancestor theme * * @param \Magento\Core\Model\Layout\File $themeFile - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme */ function ($themeFile, $theme) { // Find an ancestor theme, where a file is to be overridden @@ -304,10 +304,10 @@ function ($themeFile, $theme) { * * @param string $cacheKey * @param string $sourceClass - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return \Magento\Core\Model\Layout\File[] */ - protected static function _getCachedFiles($cacheKey, $sourceClass, \Magento\Core\Model\Theme $theme) + protected static function _getCachedFiles($cacheKey, $sourceClass, \Magento\View\Design\ThemeInterface $theme) { if (!isset(self::$_cachedFiles[$cacheKey])) { /* @var $fileList \Magento\Core\Model\Layout\File[] */ @@ -358,7 +358,7 @@ protected function _retrieveFilesForEveryTheme(\Magento\Core\Model\Layout\File\S $themeCollection = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\Core\Model\Theme\Collection'); $themeCollection->addDefaultPattern('*'); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($themeCollection as $theme) { foreach ($filesRetriever->getFiles($theme) as $file) { $result[] = array($file, $theme); diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/AclConfigFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/AclConfigFilesTest.php index b768e71a317bc..704f30c67313a 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/AclConfigFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/AclConfigFilesTest.php @@ -45,7 +45,7 @@ class AclConfigFilesTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $this->_schemeFile = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') + $this->_schemeFile = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') ->getDir('lib') . str_replace('/', DIRECTORY_SEPARATOR, '/Magento/Acl/etc/acl.xsd'); } @@ -71,7 +71,7 @@ public function testAclConfigFile($file) public function aclConfigFileDataProvider() { $fileList = glob( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir') ->getDir('app') . '/*/*/*/etc/adminhtml/acl.xml' ); $dataProviderResult = array(); diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/BlockInstantiationTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/BlockInstantiationTest.php index 97b53df03c8da..475422704112c 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/BlockInstantiationTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/BlockInstantiationTest.php @@ -48,7 +48,7 @@ function ($module, $class, $area) { $this->assertNotEmpty($module); $this->assertTrue(class_exists($class), "Block class: {$class}"); \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Config\Scope') + ->get('Magento\Config\ScopeInterface') ->setCurrentScope($area); /** @var \Magento\Core\Model\App $app */ diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/DiConfigFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/DiConfigFilesTest.php index 567c87d2f3397..93120b72be979 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/DiConfigFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/DiConfigFilesTest.php @@ -46,12 +46,12 @@ class DiConfigFilesTest extends \PHPUnit_Framework_TestCase protected function _prepareFiles() { //init primary configs - /** @var $dir \Magento\Core\Model\Dir */ - $dir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir'); + /** @var $dir \Magento\App\Dir */ + $dir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir'); - $configPath = $dir->getDir(\Magento\Core\Model\Dir::APP) . DS . 'etc' . DS . '*' . DS; + $configPath = $dir->getDir(\Magento\App\Dir::APP) . DS . 'etc' . DS . '*' . DS; self::$_primaryFiles = glob($configPath . DS. 'di.xml'); - array_unshift(self::$_primaryFiles, $dir->getDir(\Magento\Core\Model\Dir::APP) . DS . 'etc' . DS . 'di.xml'); + array_unshift(self::$_primaryFiles, $dir->getDir(\Magento\App\Dir::APP) . DS . 'etc' . DS . 'di.xml'); //init module global configs /** @var $modulesReader \Magento\Core\Model\Config\Modules\Reader */ diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/EventConfigFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/EventConfigFilesTest.php index 9c228af2c76a4..59ae279702d97 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/EventConfigFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/EventConfigFilesTest.php @@ -33,7 +33,7 @@ class EventConfigFilesTest extends \PHPUnit_Framework_TestCase protected function setUp() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_schemaFile = $objectManager->get('Magento\Core\Model\Event\Config\SchemaLocator')->getSchema(); + $this->_schemaFile = $objectManager->get('Magento\Event\Config\SchemaLocator')->getSchema(); } /** diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/LayoutFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/LayoutFilesTest.php index 1e717a3b18f9b..42cd9dcbfb818 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/LayoutFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/LayoutFilesTest.php @@ -53,7 +53,7 @@ public function testLayoutTypes($layout) { $layout = simplexml_load_file( $layout, - 'Magento\Core\Model\Layout\Element' + 'Magento\View\Layout\Element' ); foreach ($layout->xpath('//*[@xsi:type]') as $argument) { $type = (string)$argument->attributes('xsi', true)->type; diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ServiceCallsConfigFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ServiceCallsConfigFilesTest.php index 1731130687ea2..d15a5ea8e6fc6 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ServiceCallsConfigFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ServiceCallsConfigFilesTest.php @@ -62,7 +62,7 @@ protected function tearDown() public function getServiceCallsConfigFiles() { return glob( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('app') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('app') . '/*/*/*/etc/service_calls.xml' ); } diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/SystemConfigFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/SystemConfigFilesTest.php index 43c204bc45028..9b357baf9ccd8 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/SystemConfigFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/SystemConfigFilesTest.php @@ -38,9 +38,9 @@ public function testConfiguration() $cacheState = $objectManager->get('Magento\Core\Model\Cache\StateInterface'); $cacheState->setEnabled(\Magento\Core\Model\Cache\Type\Config::TYPE_IDENTIFIER, false); - /** @var $dirs \Magento\Core\Model\Dir */ - $dirs = $objectManager->get('Magento\Core\Model\Dir'); - $modulesDir = $dirs->getDir(\Magento\Core\Model\Dir::MODULES); + /** @var $dirs \Magento\App\Dir */ + $dirs = $objectManager->get('Magento\App\Dir'); + $modulesDir = $dirs->getDir(\Magento\App\Dir::MODULES); $fileList = glob($modulesDir . '/*/*/etc/adminhtml/system.xml'); diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/TemplateFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/TemplateFilesTest.php index deee3cbb341cc..dbdd2f44aa592 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/TemplateFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/TemplateFilesTest.php @@ -43,13 +43,13 @@ public function testAllTemplates() * @param string $area */ function ($module, $template, $class, $area) { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setDefaultDesignTheme(); // intentionally to make sure the module files will be requested $params = array( 'area' => $area, 'themeModel' => \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'), + ->create('Magento\View\Design\ThemeInterface'), 'module' => $module ); $file = \Magento\TestFramework\Helper\Bootstrap::getObjectmanager() @@ -98,7 +98,7 @@ public function allTemplatesDataProvider() \Magento\Core\Model\App\Area::PART_CONFIG ); \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\Config\Scope') + ->get('Magento\Config\ScopeInterface') ->setCurrentScope($area); $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create($blockClass); diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ViewConfigFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ViewConfigFilesTest.php index 8a903d8b66173..845e1bc274cf0 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ViewConfigFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ViewConfigFilesTest.php @@ -37,7 +37,7 @@ public function testViewConfigFile($file) { $domConfig = new \Magento\Config\Dom(file_get_contents($file)); $result = $domConfig->validate( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('lib') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('lib') . '/Magento/Config/etc/view.xsd', $errors ); diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ViewFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ViewFilesTest.php index 12bcd790fb827..fed053e38e431 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ViewFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/ViewFilesTest.php @@ -39,7 +39,7 @@ public function testViewFilesFromModulesView() */ function ($application, $file) { \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->setArea($application) ->setDefaultDesignTheme(); $result = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() @@ -142,7 +142,7 @@ public function testViewFilesFromModulesCode() */ function ($application, $file) { \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->setArea($application) ->setDefaultDesignTheme(); $filesystem = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/TemplateFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/TemplateFilesTest.php index 828c5a99fc6f6..52ea7983a681b 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/TemplateFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/TemplateFilesTest.php @@ -72,9 +72,9 @@ public function templatesDataProvider() $themes = $this->_getDesignThemes(); foreach ($themes as $theme) { - /** @var \Magento\Core\Model\Layout\Merge $layoutUpdate */ + /** @var \Magento\View\Layout\ProcessorInterface $layoutUpdate */ $layoutUpdate = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Layout\Merge', array('theme' => $theme)); + ->create('Magento\View\Layout\ProcessorInterface', array('theme' => $theme)); $layoutTemplates = $this->_getLayoutTemplates($layoutUpdate->getFileLayoutUpdatesXml()); foreach ($layoutTemplates as $templateData) { $templates[] = array_merge(array($theme->getArea(), $theme->getId()), $templateData); diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/ViewFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/ViewFilesTest.php index 34bc16aa894ec..c5557a9e85984 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/ViewFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/ViewFilesTest.php @@ -134,14 +134,14 @@ public function viewFilesFromThemesDataProvider() // Find files, declared in views $files = array(); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($themes as $theme) { $this->_collectGetViewUrlInvokes($theme, $files); } // Populate data provider in correspondence of themes to view files $result = array(); - /** @var $theme \Magento\Core\Model\Theme */ + /** @var $theme \Magento\View\Design\ThemeInterface */ foreach ($themes as $theme) { if (!isset($files[$theme->getId()])) { continue; @@ -156,7 +156,7 @@ public function viewFilesFromThemesDataProvider() /** * Collect getViewUrl() from theme templates * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @param array &$files */ protected function _collectGetViewUrlInvokes($theme, &$files) @@ -177,9 +177,9 @@ protected function _collectGetViewUrlInvokes($theme, &$files) } // Collect "addCss" and "addJs" from theme layout - /** @var \Magento\Core\Model\Layout\Merge $layoutUpdate */ + /** @var \Magento\View\Layout\ProcessorInterface $layoutUpdate */ $layoutUpdate = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Layout\Merge', array('theme' => $theme)); + ->create('Magento\View\Layout\ProcessorInterface', array('theme' => $theme)); $fileLayoutUpdates = $layoutUpdate->getFileLayoutUpdatesXml(); $elements = $fileLayoutUpdates->xpath( '//block[@class="Magento\Page\Block\Html\Head\Css" or @class="Magento\Page\Block\Html\Head\Script"]' @@ -251,7 +251,7 @@ public function testStaticLibs($file) { $this->markTestIncomplete('Should be fixed when static when we have static folder jslib implemented'); $this->assertFileExists( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('jslib') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('jslib') . DIRECTORY_SEPARATOR . $file ); } diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/XmlFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/XmlFilesTest.php index a589589b41873..9b0a355b60d35 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/XmlFilesTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/XmlFilesTest.php @@ -42,7 +42,7 @@ public function testViewConfigFile($file) } $this->_validateConfigFile( $file, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('lib') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('lib') . '/Magento/Config/etc/view.xsd' ); } @@ -54,7 +54,7 @@ public function viewConfigFileDataProvider() { $result = array(); $files = glob( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('design') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('design') . '/*/*/view.xml' ); foreach ($files as $file) { @@ -79,7 +79,7 @@ public function themeConfigFileExistsDataProvider() { $result = array(); $files = glob( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('design') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('design') . '/*/*', GLOB_ONLYDIR ); foreach ($files as $themeDir) { @@ -96,7 +96,7 @@ public function testThemeConfigFileSchema($file) { $this->_validateConfigFile( $file, - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('lib') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('lib') . '/Magento/Config/etc/theme.xsd' ); } @@ -122,7 +122,7 @@ public function themeConfigFileDataProvider() { $result = array(); $files = glob( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir')->getDir('design') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir')->getDir('design') . '/*/*/theme.xml' ); foreach ($files as $file) { diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/ViewFileReferenceTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/ViewFileReferenceTest.php index f5acb3093e9f9..3a9fbc811f958 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Integrity/ViewFileReferenceTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/ViewFileReferenceTest.php @@ -86,10 +86,10 @@ public static function setUpBeforeClass() /** * Return array of locales, supported by the theme * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return array */ - static protected function _getThemeLocales(\Magento\Core\Model\Theme $theme) + static protected function _getThemeLocales(\Magento\View\Design\ThemeInterface $theme) { $result = array(); $patternDir = self::_getLocalePatternDir($theme); @@ -106,11 +106,11 @@ static protected function _getThemeLocales(\Magento\Core\Model\Theme $theme) /** * Return pattern for theme locale directories, where is placed to mark a locale's location. * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @return string * @throws \Exception */ - static protected function _getLocalePatternDir(\Magento\Core\Model\Theme $theme) + static protected function _getLocalePatternDir(\Magento\View\Design\ThemeInterface $theme) { $localePlaceholder = ''; $params = array( @@ -166,11 +166,11 @@ public function testModularFallback($modularCall, array $usages, $area) /** * Resolves file to find its fallback'ed paths * - * @param \Magento\Core\Model\Theme $theme + * @param \Magento\View\Design\ThemeInterface $theme * @param string $file * @return array */ - protected function _getFileResolutions(\Magento\Core\Model\Theme $theme, $file) + protected function _getFileResolutions(\Magento\View\Design\ThemeInterface $theme, $file) { $found = array(); $fileResolved = self::$_fallback->getFile($theme->getArea(), $theme, $file); diff --git a/dev/tests/integration/testsuite/Magento/Test/Tools/Layout/Reference/ProcessorTest.php b/dev/tests/integration/testsuite/Magento/Test/Tools/Layout/Reference/ProcessorTest.php index 2c67134522535..09d54a26f53d8 100644 --- a/dev/tests/integration/testsuite/Magento/Test/Tools/Layout/Reference/ProcessorTest.php +++ b/dev/tests/integration/testsuite/Magento/Test/Tools/Layout/Reference/ProcessorTest.php @@ -61,8 +61,8 @@ protected function setUp() } $this->_testDir = realpath(__DIR__ . DS . '_files') . DS; - $dir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Dir'); - $this->_varDir = $dir->getDir(\Magento\Core\Model\Dir::VAR_DIR) . DS . 'references' . DS; + $dir = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\Dir'); + $this->_varDir = $dir->getDir(\Magento\App\Dir::VAR_DIR) . DS . 'references' . DS; mkdir($this->_varDir, 0777, true); $this->_formatter = new Formatter(); diff --git a/dev/tests/integration/testsuite/Magento/Theme/Block/Adminhtml/System/Design/Theme/Edit/Tab/GeneralTest.php b/dev/tests/integration/testsuite/Magento/Theme/Block/Adminhtml/System/Design/Theme/Edit/Tab/GeneralTest.php index aff0f0b98e470..f399290a70776 100644 --- a/dev/tests/integration/testsuite/Magento/Theme/Block/Adminhtml/System/Design/Theme/Edit/Tab/GeneralTest.php +++ b/dev/tests/integration/testsuite/Magento/Theme/Block/Adminhtml/System/Design/Theme/Edit/Tab/GeneralTest.php @@ -32,10 +32,10 @@ */ class GeneralTest extends \PHPUnit_Framework_TestCase { - /** @var \Magento\Core\Model\Layout */ + /** @var \Magento\View\LayoutInterface */ protected $_layout; - /** @var \Magento\Core\Model\Theme */ + /** @var \Magento\View\Design\ThemeInterface */ protected $_theme; /** @var \Magento\Theme\Block\Adminhtml\System\Design\Theme\Edit\Tab_General */ @@ -44,9 +44,10 @@ class GeneralTest extends \PHPUnit_Framework_TestCase protected function setUp() { parent::setUp(); - $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->get('Magento\View\LayoutInterface'); $this->_theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->create('Magento\Core\Model\Theme'); + ->create('Magento\View\Design\ThemeInterface'); $this->_theme->setType(\Magento\Core\Model\Theme::TYPE_VIRTUAL); $this->_block = $this->_layout ->createBlock('Magento\Theme\Block\Adminhtml\System\Design\Theme\Edit\Tab\General'); diff --git a/dev/tests/integration/testsuite/Magento/Theme/Controller/Adminhtml/System/Design/ThemeControllerTest.php b/dev/tests/integration/testsuite/Magento/Theme/Controller/Adminhtml/System/Design/ThemeControllerTest.php index aadda3aa66983..222f85a44b342 100644 --- a/dev/tests/integration/testsuite/Magento/Theme/Controller/Adminhtml/System/Design/ThemeControllerTest.php +++ b/dev/tests/integration/testsuite/Magento/Theme/Controller/Adminhtml/System/Design/ThemeControllerTest.php @@ -35,7 +35,7 @@ class ThemeControllerTest extends \Magento\Backend\Utility\Controller /** @var \Magento\Filesystem */ protected $_filesystem; - /** @var \Magento\Core\Model\Dir */ + /** @var \Magento\App\Dir */ protected $_dirs; protected function setUp() @@ -43,7 +43,7 @@ protected function setUp() parent::setUp(); $this->_filesystem = $this->_objectManager->get('Magento\Filesystem'); - $this->_dirs = $this->_objectManager->get('Magento\Core\Model\Dir'); + $this->_dirs = $this->_objectManager->get('Magento\App\Dir'); } /** @@ -61,7 +61,7 @@ public function testUploadJsAction() ) ); - $theme = $this->_objectManager->create('Magento\Core\Model\Theme')->getCollection()->getFirstItem(); + $theme = $this->_objectManager->create('Magento\View\Design\ThemeInterface')->getCollection()->getFirstItem(); $this->getRequest()->setPost('id', $theme->getId()); $this->dispatch('backend/admin/system_design_theme/uploadjs'); @@ -82,7 +82,7 @@ protected function _prepareFileForUploading() * Uploader can copy(upload) and then remove this temporary file. */ $fileName = implode(DIRECTORY_SEPARATOR, array(__DIR__, '_files', 'simple-js-file.js')); - $varDir = $this->_dirs->getDir(\Magento\Core\Model\Dir::VAR_DIR); + $varDir = $this->_dirs->getDir(\Magento\App\Dir::VAR_DIR); $destinationFilePath = $varDir . DIRECTORY_SEPARATOR . 'simple-js-file.js'; $this->_filesystem->copy($fileName, $destinationFilePath); diff --git a/dev/tests/integration/testsuite/Magento/Theme/Model/Wysiwyg/StorageTest.php b/dev/tests/integration/testsuite/Magento/Theme/Model/Wysiwyg/StorageTest.php index c39c05a91d445..bf50a24d53d97 100644 --- a/dev/tests/integration/testsuite/Magento/Theme/Model/Wysiwyg/StorageTest.php +++ b/dev/tests/integration/testsuite/Magento/Theme/Model/Wysiwyg/StorageTest.php @@ -32,7 +32,7 @@ class StorageTest extends \PHPUnit_Framework_TestCase { /** - * @var \Magento\Core\Controller\Request\Http|PHPUnit_Framework_MockObject_MockObject + * @var \Magento\App\RequestInterface|PHPUnit_Framework_MockObject_MockObject */ protected $_request; @@ -62,11 +62,11 @@ protected function setUp() $this->_filesystem = $this->_objectManager->get('Magento\Filesystem'); $this->_filesystem->setIsAllowCreateDirectories(true); - /** @var $theme \Magento\Core\Model\Theme */ - $theme = $this->_objectManager->create('Magento\Core\Model\Theme')->getCollection()->getFirstItem(); + /** @var $theme \Magento\View\Design\ThemeInterface */ + $theme = $this->_objectManager->create('Magento\View\Design\ThemeInterface')->getCollection()->getFirstItem(); - /** @var $request \Magento\Core\Controller\Request\Http */ - $request = $this->_objectManager->get('Magento\Core\Controller\Request\Http'); + /** @var $request \Magento\App\Request\Http */ + $request = $this->_objectManager->get('Magento\App\Request\Http'); $request->setParam(\Magento\Theme\Helper\Storage::PARAM_THEME_ID, $theme->getId()); $request->setParam(\Magento\Theme\Helper\Storage::PARAM_CONTENT_TYPE, \Magento\Theme\Model\Wysiwyg\Storage::TYPE_IMAGE); diff --git a/dev/tests/integration/testsuite/Magento/Usa/Block/Adminhtml/Dhl/UnitofmeasureTest.php b/dev/tests/integration/testsuite/Magento/Usa/Block/Adminhtml/Dhl/UnitofmeasureTest.php index 6f2cc96fd2595..7e478a7a50948 100644 --- a/dev/tests/integration/testsuite/Magento/Usa/Block/Adminhtml/Dhl/UnitofmeasureTest.php +++ b/dev/tests/integration/testsuite/Magento/Usa/Block/Adminhtml/Dhl/UnitofmeasureTest.php @@ -40,7 +40,7 @@ public function testToHtml() ) )); /** @var $layout \Magento\Core\Model\Layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); /** @var $block \Magento\Usa\Block\Adminhtml\Dhl\Unitofmeasure */ $block = $layout->createBlock('Magento\Usa\Block\Adminhtml\Dhl\Unitofmeasure'); $this->assertNotEmpty($block->toHtml()); diff --git a/dev/tests/integration/testsuite/Magento/User/Block/Role/Grid/UserTest.php b/dev/tests/integration/testsuite/Magento/User/Block/Role/Grid/UserTest.php index e8a6d488f6248..f314e26b055ad 100644 --- a/dev/tests/integration/testsuite/Magento/User/Block/Role/Grid/UserTest.php +++ b/dev/tests/integration/testsuite/Magento/User/Block/Role/Grid/UserTest.php @@ -39,7 +39,7 @@ class UserTest extends \PHPUnit_Framework_TestCase protected function setUp() { - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface'); $this->_block = $layout->createBlock('Magento\User\Block\Role\Grid\User'); } diff --git a/dev/tests/integration/testsuite/Magento/User/Block/Role/Tab/EditTest.php b/dev/tests/integration/testsuite/Magento/User/Block/Role/Tab/EditTest.php index 1af52bf849770..c543fd97a30d3 100644 --- a/dev/tests/integration/testsuite/Magento/User/Block/Role/Tab/EditTest.php +++ b/dev/tests/integration/testsuite/Magento/User/Block/Role/Tab/EditTest.php @@ -42,7 +42,7 @@ protected function setUp() $roleAdmin = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() ->create('Magento\User\Model\Role'); $roleAdmin->load(\Magento\TestFramework\Bootstrap::ADMIN_ROLE_NAME, 'role_name'); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Controller\Request\Http') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\RequestInterface') ->setParam('rid', $roleAdmin->getId()); $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Layout/ElementTest.php b/dev/tests/integration/testsuite/Magento/View/Layout/ElementTest.php similarity index 88% rename from dev/tests/integration/testsuite/Magento/Core/Model/Layout/ElementTest.php rename to dev/tests/integration/testsuite/Magento/View/Layout/ElementTest.php index a2cac9c1288b8..8f2561f7af56e 100644 --- a/dev/tests/integration/testsuite/Magento/Core/Model/Layout/ElementTest.php +++ b/dev/tests/integration/testsuite/Magento/View/Layout/ElementTest.php @@ -25,12 +25,12 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ -namespace Magento\Core\Model\Layout; +namespace Magento\View\Layout; class ElementTest extends \PHPUnit_Framework_TestCase { /** - * @var \Magento\Core\Model\Layout\Element + * @var \Magento\View\Layout\Element */ protected $_model; @@ -40,7 +40,7 @@ public function testPrepare() * @TODO: Need to use ObjectManager instead 'new'. * On this moment we have next bug MAGETWO-4274 which blocker for this key. */ - $this->_model = new \Magento\Core\Model\Layout\Element(__DIR__ . '/../_files/_layout_update.xml', 0, true); + $this->_model = new \Magento\View\Layout\Element(__DIR__ . '/_files/_layout_update.xml', 0, true); list($blockNode) = $this->_model->xpath('//block[@name="head"]'); list($actionNode) = $this->_model->xpath('//action[@method="setTitle"]'); @@ -48,7 +48,7 @@ public function testPrepare() $this->assertEmpty($blockNode->attributes()->parent); $this->assertEmpty($actionNode->attributes()->block); - $this->_model->prepare(array()); + $this->_model->prepare(); $this->assertEquals('root', (string)$blockNode->attributes()->parent); $this->assertEquals('Magento\Adminhtml\Block\Page\Head', (string)$blockNode->attributes()->class); diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/_layout_update.xml b/dev/tests/integration/testsuite/Magento/View/Layout/_files/_layout_update.xml similarity index 100% rename from dev/tests/integration/testsuite/Magento/Core/Model/_files/_layout_update.xml rename to dev/tests/integration/testsuite/Magento/View/Layout/_files/_layout_update.xml diff --git a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/AbstractFormTest.php b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/AbstractFormTest.php index 79f103458b489..1c22013f27bdc 100644 --- a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/AbstractFormTest.php +++ b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/AbstractFormTest.php @@ -54,7 +54,7 @@ abstract class AbstractFormTest extends \PHPUnit_Framework_TestCase protected $_urlBuilder; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -70,7 +70,7 @@ protected function setUp() $this->_urlBuilder = $this->getMockBuilder('Magento\Backend\Model\Url') ->disableOriginalConstructor() ->getMock(); - $this->_layout = $this->_objectManager->get('Magento\Core\Model\Layout'); + $this->_layout = $this->_objectManager->get('Magento\View\LayoutInterface'); $this->_blockFactory = $this->_objectManager->get('Magento\Core\Model\BlockFactory'); $this->_block = $this->_blockFactory->createBlock($this->_formClass, array( 'context' => \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( diff --git a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/Role/Edit/Tab/MainTest.php b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/Role/Edit/Tab/MainTest.php index 38aa37f4705a1..c92ff00f884c7 100644 --- a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/Role/Edit/Tab/MainTest.php +++ b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/Role/Edit/Tab/MainTest.php @@ -37,7 +37,7 @@ class MainTest extends \PHPUnit_Framework_TestCase protected $_objectManager; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -56,7 +56,7 @@ protected function setUp() parent::setUp(); $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_layout = $this->_objectManager->get('Magento\Core\Model\Layout'); + $this->_layout = $this->_objectManager->get('Magento\View\LayoutInterface'); $this->_blockFactory = $this->_objectManager->get('Magento\Core\Model\BlockFactory'); $this->_block = $this->_blockFactory->createBlock('Magento\Webapi\Block\Adminhtml\Role\Edit\Tab\Main'); $this->_layout->addBlock($this->_block); @@ -64,7 +64,7 @@ protected function setUp() protected function tearDown() { - $this->_objectManager->removeSharedInstance('Magento\Core\Model\Layout'); + $this->_objectManager->removeSharedInstance('Magento\View\LayoutInterface'); $this->_objectManager->removeSharedInstance('Magento\Core\Model\BlockFactory'); unset($this->_objectManager, $this->_layout, $this->_blockFactory, $this->_block); } diff --git a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/Role/Edit/Tab/ResourceTest.php b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/Role/Edit/Tab/ResourceTest.php index 31abd02b34fd5..99a304659b24c 100644 --- a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/Role/Edit/Tab/ResourceTest.php +++ b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/Role/Edit/Tab/ResourceTest.php @@ -37,7 +37,7 @@ class ResourceTest extends \PHPUnit_Framework_TestCase protected $_objectManager; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -73,7 +73,7 @@ protected function setUp() ->getMock(); $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_layout = $this->_objectManager->get('Magento\Core\Model\Layout'); + $this->_layout = $this->_objectManager->get('Magento\View\LayoutInterface'); $this->_blockFactory = $this->_objectManager->get('Magento\Core\Model\BlockFactory'); $this->_block = $this->_blockFactory->createBlock('Magento\Webapi\Block\Adminhtml\Role\Edit\Tab\Resource', array( @@ -86,7 +86,7 @@ protected function setUp() protected function tearDown() { - $this->_objectManager->removeSharedInstance('Magento\Core\Model\Layout'); + $this->_objectManager->removeSharedInstance('Magento\View\LayoutInterface'); unset($this->_objectManager, $this->_layout, $this->_resourceProvider, $this->_blockFactory, $this->_block); } diff --git a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/Edit/Tab/MainTest.php b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/Edit/Tab/MainTest.php index 1290368e4bc5b..a3d0dc610687f 100644 --- a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/Edit/Tab/MainTest.php +++ b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/Edit/Tab/MainTest.php @@ -37,7 +37,7 @@ class MainTest extends \PHPUnit_Framework_TestCase protected $_objectManager; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -56,7 +56,7 @@ protected function setUp() parent::setUp(); $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_layout = $this->_objectManager->get('Magento\Core\Model\Layout'); + $this->_layout = $this->_objectManager->get('Magento\View\LayoutInterface'); $this->_blockFactory = $this->_objectManager->get('Magento\Core\Model\BlockFactory'); $this->_block = $this->_blockFactory->createBlock('Magento\Webapi\Block\Adminhtml\User\Edit\Tab\Main'); $this->_layout->addBlock($this->_block); @@ -64,7 +64,7 @@ protected function setUp() protected function tearDown() { - $this->_objectManager->removeSharedInstance('Magento\Core\Model\Layout'); + $this->_objectManager->removeSharedInstance('Magento\View\LayoutInterface'); unset($this->_objectManager, $this->_urlBuilder, $this->_layout, $this->_blockFactory, $this->_block); } diff --git a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/Edit/TabsTest.php b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/Edit/TabsTest.php index f3c6df136eec7..e88f01267e491 100644 --- a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/Edit/TabsTest.php +++ b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/Edit/TabsTest.php @@ -37,7 +37,7 @@ class TabsTest extends \PHPUnit_Framework_TestCase protected $_objectManager; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -51,14 +51,14 @@ protected function setUp() parent::setUp(); $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_layout = $this->_objectManager->get('Magento\Core\Model\Layout'); + $this->_layout = $this->_objectManager->get('Magento\View\LayoutInterface'); $this->_block = $this->_layout->createBlock('Magento\Webapi\Block\Adminhtml\User\Edit\Tabs', 'webapi.user.edit.tabs'); } protected function tearDown() { - $this->_objectManager->removeSharedInstance('Magento\Core\Model\Layout'); + $this->_objectManager->removeSharedInstance('Magento\View\LayoutInterface'); unset($this->_objectManager, $this->_layout, $this->_block); } diff --git a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/EditTest.php b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/EditTest.php index 72cbd40d36849..277e1383fe270 100644 --- a/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/EditTest.php +++ b/dev/tests/integration/testsuite/Magento/Webapi/Block/Adminhtml/User/EditTest.php @@ -37,7 +37,7 @@ class EditTest extends \PHPUnit_Framework_TestCase protected $_objectManager; /** - * @var \Magento\Core\Model\Layout + * @var \Magento\View\LayoutInterface */ protected $_layout; @@ -54,7 +54,8 @@ protected function setUp() parent::setUp(); $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); - $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout'); + $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->get('Magento\View\LayoutInterface'); $this->_block = $this->_layout->createBlock('Magento\Webapi\Block\Adminhtml\User\Edit'); } diff --git a/dev/tests/integration/testsuite/Magento/Webapi/Model/Soap/ServerTest.php b/dev/tests/integration/testsuite/Magento/Webapi/Model/Soap/ServerTest.php index 698b73f6ee38a..b143cab5e97d8 100644 --- a/dev/tests/integration/testsuite/Magento/Webapi/Model/Soap/ServerTest.php +++ b/dev/tests/integration/testsuite/Magento/Webapi/Model/Soap/ServerTest.php @@ -27,8 +27,15 @@ class ServerTest extends \PHPUnit_Framework_TestCase { - /** @var \Magento\Core\Model\Config */ - protected $_configMock; + /** + * @var \PHPUnit_Framework_MockObject_MockObject + */ + protected $_configScopeMock; + + /** + * @var \PHPUnit_Framework_MockObject_MockObject + */ + protected $_areaListMock; /** @var \Magento\Webapi\Controller\Soap\Request */ protected $_requestMock; @@ -51,8 +58,9 @@ protected function setUp() ->disableOriginalConstructor()->getMock(); $this->_storeMock = $this->getMockBuilder('Magento\Core\Model\Store') ->disableOriginalConstructor()->getMock(); - $this->_configMock = $this->getMockBuilder('Magento\Core\Model\Config') - ->disableOriginalConstructor()->getMock(); + + $this->_areaListMock = $this->getMock('Magento\App\AreaList', array(), array(), '', false); + $this->_configScopeMock = $this->getMock('Magento\Config\ScopeInterface'); $this->_storeManagerMock->expects($this->any()) ->method('getStore')->will($this->returnValue($this->_storeMock)); $this->_requestMock = $this->getMockBuilder('Magento\Webapi\Controller\Soap\Request') @@ -75,7 +83,8 @@ public function testConstructEnableWsdlCache() $this->_storeMock->expects($this->once())->method('getConfig')->will($this->returnValue(true)); /** Create SOAP server object. */ $server = new \Magento\Webapi\Model\Soap\Server( - $this->_configMock, + $this->_areaListMock, + $this->_configScopeMock, $this->_requestMock, $this->_domDocumentFactory, $this->_storeManagerMock, @@ -95,7 +104,8 @@ public function testConstructDisableWsdlCache() $this->_storeMock->expects($this->once())->method('getConfig')->will($this->returnValue(false)); /** Create SOAP server object. */ $server = new \Magento\Webapi\Model\Soap\Server( - $this->_configMock, + $this->_areaListMock, + $this->_configScopeMock, $this->_requestMock, $this->_domDocumentFactory, $this->_storeManagerMock, diff --git a/dev/tests/integration/testsuite/Magento/Webhook/Block/Adminhtml/Subscription/EditTest.php b/dev/tests/integration/testsuite/Magento/Webhook/Block/Adminhtml/Subscription/EditTest.php index 9ad59a44bff3f..048abee3d30bb 100644 --- a/dev/tests/integration/testsuite/Magento/Webhook/Block/Adminhtml/Subscription/EditTest.php +++ b/dev/tests/integration/testsuite/Magento/Webhook/Block/Adminhtml/Subscription/EditTest.php @@ -49,8 +49,8 @@ protected function tearDown() public function testAddSubscriptionTitle() { - /** @var \Magento\Core\Model\Layout $layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Core\Model\Layout'); + /** @var \Magento\View\LayoutInterface $layout */ + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\View\LayoutInterface'); $subscription = array( 'subscription_id' => null, @@ -68,8 +68,8 @@ public function testAddSubscriptionTitle() public function testEditSubscriptionTitle() { - /** @var \Magento\Core\Model\Layout $layout */ - $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Core\Model\Layout'); + /** @var \Magento\View\LayoutInterface $layout */ + $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\View\LayoutInterface'); $subscription = array( 'subscription_id' => 1, diff --git a/dev/tests/integration/testsuite/Magento/Webhook/Model/Resource/Subscription/Grid/CollectionTest.php b/dev/tests/integration/testsuite/Magento/Webhook/Model/Resource/Subscription/Grid/CollectionTest.php index d22f5ee9a494b..6fc8337ff13a4 100644 --- a/dev/tests/integration/testsuite/Magento/Webhook/Model/Resource/Subscription/Grid/CollectionTest.php +++ b/dev/tests/integration/testsuite/Magento/Webhook/Model/Resource/Subscription/Grid/CollectionTest.php @@ -109,21 +109,21 @@ protected function _createSubscriptionConfig() { $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $dirs = $objectManager->create( - 'Magento\Core\Model\Dir', + 'Magento\App\Dir', array( 'baseDir' => BP, 'dirs' => array( - \Magento\Core\Model\Dir::MODULES => __DIR__ . '/_files', - \Magento\Core\Model\Dir::CONFIG => __DIR__ . '/_files', + \Magento\App\Dir::MODULES => __DIR__ . '/_files', + \Magento\App\Dir::CONFIG => __DIR__ . '/_files', ), ) ); - $moduleList = $objectManager->create('Magento\Core\Model\ModuleList', array( - 'reader' => $objectManager->create('Magento\Core\Model\Module\Declaration\Reader\Filesystem', + $moduleList = $objectManager->create('Magento\App\ModuleList', array( + 'reader' => $objectManager->create('Magento\App\Module\Declaration\Reader\Filesystem', array( 'fileResolver' => $objectManager->create( - 'Magento\Core\Model\Module\Declaration\FileResolver', + 'Magento\App\Module\Declaration\FileResolver', array( 'applicationDirs' => $dirs ) diff --git a/dev/tests/integration/testsuite/Magento/Webhook/Model/Subscription/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Webhook/Model/Subscription/ConfigTest.php index d6f17fc0410c1..efc370ce964c0 100644 --- a/dev/tests/integration/testsuite/Magento/Webhook/Model/Subscription/ConfigTest.php +++ b/dev/tests/integration/testsuite/Magento/Webhook/Model/Subscription/ConfigTest.php @@ -57,25 +57,25 @@ protected function setUp() { $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $dirs = $this->_objectManager->create( - 'Magento\Core\Model\Dir', + 'Magento\App\Dir', array( 'baseDir' => BP, 'dirs' => array( - \Magento\Core\Model\Dir::MODULES => __DIR__ . '/_files', - \Magento\Core\Model\Dir::CONFIG => __DIR__ . '/_files' + \Magento\App\Dir::MODULES => __DIR__ . '/_files', + \Magento\App\Dir::CONFIG => __DIR__ . '/_files' ), ) ); $fileResolver = $this->_objectManager->create( - 'Magento\Core\Model\Module\Declaration\FileResolver', array('applicationDirs' => $dirs) + 'Magento\App\Module\Declaration\FileResolver', array('applicationDirs' => $dirs) ); - $filesystemReader = $this->_objectManager->create('Magento\Core\Model\Module\Declaration\Reader\Filesystem', + $filesystemReader = $this->_objectManager->create('Magento\App\Module\Declaration\Reader\Filesystem', array('fileResolver' => $fileResolver) ); $moduleList = $this->_objectManager->create( - 'Magento\Core\Model\ModuleList', - array('reader' => $filesystemReader, 'cache' => $this->getMock("Magento\Config\CacheInterface")) + 'Magento\App\ModuleList', + array('reader' => $filesystemReader, 'cache' => $this->getMock('Magento\Config\CacheInterface')) ); /** diff --git a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/ContainerTest.php b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/ContainerTest.php index c31123d0f63c1..efb2ed5c9291b 100644 --- a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/ContainerTest.php +++ b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/ContainerTest.php @@ -41,7 +41,7 @@ protected function setUp() { parent::setUp(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Chooser\Container'); } diff --git a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/LayoutTest.php b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/LayoutTest.php index 745608a4ae7e8..c697145cb2e65 100644 --- a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/LayoutTest.php +++ b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Chooser/LayoutTest.php @@ -46,7 +46,7 @@ protected function setUp() $layoutUtility = new \Magento\Core\Utility\Layout($this); $args = array( 'context' => $objectManager->get('Magento\Core\Block\Template\Context'), - 'layoutMergeFactory' => $this->getMock('Magento\Core\Model\Layout\MergeFactory', + 'layoutProcessorFactory' => $this->getMock('Magento\View\Layout\ProcessorFactory', array(), array(), '', false), 'themesFactory' => $objectManager->get('Magento\Core\Model\Resource\Theme\CollectionFactory'), 'data' => array( @@ -58,11 +58,11 @@ protected function setUp() ); $this->_block = $this->getMock( 'Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Chooser\Layout', - array('_getLayoutMerge'), $args + array('_getLayoutProcessor'), $args ); $this->_block ->expects($this->any()) - ->method('_getLayoutMerge') + ->method('_getLayoutProcessor') ->will($this->returnCallback( function () use ($layoutUtility) { return $layoutUtility->getLayoutUpdateFromFixture(glob(__DIR__ . '/_files/layout/*.xml')); diff --git a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main/LayoutTest.php b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main/LayoutTest.php index 265659c108241..44f9d4479f5fe 100644 --- a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main/LayoutTest.php +++ b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main/LayoutTest.php @@ -34,7 +34,7 @@ class LayoutTest extends \PHPUnit_Framework_TestCase { /** - * @var \Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Tab\Main_Layout + * @var \Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Tab\Main\Layout */ protected $_block; @@ -42,7 +42,7 @@ protected function setUp() { parent::setUp(); - $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $this->_block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock( 'Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Tab\Main\Layout', '', @@ -52,7 +52,7 @@ protected function setUp() )) ); $this->_block->setLayout( - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ); } @@ -61,7 +61,7 @@ protected function setUp() */ public function testGetLayoutsChooser() { - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\View\DesignInterface') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\DesignInterface') ->setArea(\Magento\Core\Model\App\Area::AREA_FRONTEND) ->setDefaultDesignTheme(); diff --git a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/MainTest.php b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/MainTest.php index 3acefdd9b0753..7508d4464fe2f 100644 --- a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/MainTest.php +++ b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/MainTest.php @@ -37,7 +37,7 @@ public function testPackageThemeElement() /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry')->register('current_widget_instance', new \Magento\Object()); - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Tab\Main'); $block->setTemplate(null); $block->toHtml(); @@ -45,4 +45,15 @@ public function testPackageThemeElement() $this->assertInstanceOf('Magento\Data\Form\Element\Select', $element); $this->assertTrue($element->getDisabled()); } + + public function testTypeElement() + { + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + ->createBlock('Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Tab\Main'); + $block->setTemplate(null); + $block->toHtml(); + $element = $block->getForm()->getElement('instance_code'); + $this->assertInstanceOf('Magento\Data\Form\Element\Select', $element); + $this->assertTrue($element->getDisabled()); + } } diff --git a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/EditTest.php b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/EditTest.php index d97e9070b7796..76dbb591780d7 100644 --- a/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/EditTest.php +++ b/dev/tests/integration/testsuite/Magento/Widget/Block/Adminhtml/Widget/Instance/EditTest.php @@ -39,8 +39,9 @@ class EditTest extends \PHPUnit_Framework_TestCase public function testConstruct() { $type = 'Magento\Catalog\Block\Product\Widget\NewWidget'; + $code = 'catalog_product_newwidget'; $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->setDefaultDesignTheme() ->getDesignTheme(); @@ -49,15 +50,16 @@ public function testConstruct() ->create('Magento\Widget\Model\Widget\Instance'); $widgetInstance ->setType($type) + ->setCode($code) ->setThemeId($theme->getId()) ->save(); /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get('Magento\Core\Model\Registry')->register('current_widget_instance', $widgetInstance); - \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Controller\Request\Http') + \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\App\RequestInterface') ->setParam('instance_id', $widgetInstance->getId()); - $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Core\Model\Layout') + $block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\View\LayoutInterface') ->createBlock('Magento\Widget\Block\Adminhtml\Widget\Instance\Edit', 'widget'); $this->assertArrayHasKey('widget-delete_button', $block->getLayout()->getAllBlocks()); } diff --git a/dev/tests/integration/testsuite/Magento/Widget/Controller/Adminhtml/Widget/InstanceTest.php b/dev/tests/integration/testsuite/Magento/Widget/Controller/Adminhtml/Widget/InstanceTest.php index b5dc02ee864bb..b0d76255a9533 100644 --- a/dev/tests/integration/testsuite/Magento/Widget/Controller/Adminhtml/Widget/InstanceTest.php +++ b/dev/tests/integration/testsuite/Magento/Widget/Controller/Adminhtml/Widget/InstanceTest.php @@ -37,17 +37,22 @@ protected function setUp() parent::setUp(); $theme = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() - ->get('Magento\Core\Model\View\DesignInterface') + ->get('Magento\View\DesignInterface') ->setDefaultDesignTheme() ->getDesignTheme(); - $this->getRequest()->setParam('type', 'Magento\Cms\Block\Widget\Page\Link'); + $type = 'Magento\Cms\Block\Widget\Page\Link'; + /** @var $model \Magento\Widget\Model\Widget\Instance */ + $model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager() + ->create('Magento\Widget\Model\Widget\Instance'); + $code = $model->setType($type)->getWidgetReference('type', $type, 'code'); + $this->getRequest()->setParam('code', $code); $this->getRequest()->setParam('theme_id', $theme->getId()); } public function testEditAction() { $this->dispatch('backend/admin/widget_instance/edit'); - $this->assertContains('
    - * - * @author Fabien Potencier - */ -class Twig_Node_Expression_Filter_Default extends Twig_Node_Expression_Filter -{ - public function __construct(Twig_NodeInterface $node, Twig_Node_Expression_Constant $filterName, Twig_NodeInterface $arguments, $lineno, $tag = null) - { - $default = new Twig_Node_Expression_Filter($node, new Twig_Node_Expression_Constant('default', $node->getLine()), $arguments, $node->getLine()); - - if ('default' === $filterName->getAttribute('value') && ($node instanceof Twig_Node_Expression_Name || $node instanceof Twig_Node_Expression_GetAttr)) { - $test = new Twig_Node_Expression_Test_Defined(clone $node, 'defined', new Twig_Node(), $node->getLine()); - $false = count($arguments) ? $arguments->getNode(0) : new Twig_Node_Expression_Constant('', $node->getLine()); - - $node = new Twig_Node_Expression_Conditional($test, $default, $false, $node->getLine()); - } else { - $node = $default; - } - - parent::__construct($node, $filterName, $arguments, $lineno, $tag); - } - - public function compile(Twig_Compiler $compiler) - { - $compiler->subcompile($this->getNode('node')); - } -} diff --git a/lib/Twig/Node/Expression/Function.php b/lib/Twig/Node/Expression/Function.php deleted file mode 100644 index 3e1f6b559099c..0000000000000 --- a/lib/Twig/Node/Expression/Function.php +++ /dev/null @@ -1,35 +0,0 @@ - $arguments), array('name' => $name), $lineno); - } - - public function compile(Twig_Compiler $compiler) - { - $name = $this->getAttribute('name'); - $function = $compiler->getEnvironment()->getFunction($name); - - $this->setAttribute('name', $name); - $this->setAttribute('type', 'function'); - $this->setAttribute('thing', $function); - $this->setAttribute('needs_environment', $function->needsEnvironment()); - $this->setAttribute('needs_context', $function->needsContext()); - $this->setAttribute('arguments', $function->getArguments()); - if ($function instanceof Twig_FunctionCallableInterface || $function instanceof Twig_SimpleFunction) { - $this->setAttribute('callable', $function->getCallable()); - } - - $this->compileCallable($compiler); - } -} diff --git a/lib/Twig/Node/Expression/GetAttr.php b/lib/Twig/Node/Expression/GetAttr.php deleted file mode 100644 index 81a9b137abd14..0000000000000 --- a/lib/Twig/Node/Expression/GetAttr.php +++ /dev/null @@ -1,53 +0,0 @@ - $node, 'attribute' => $attribute, 'arguments' => $arguments), array('type' => $type, 'is_defined_test' => false, 'ignore_strict_check' => false, 'disable_c_ext' => false), $lineno); - } - - public function compile(Twig_Compiler $compiler) - { - if (function_exists('twig_template_get_attributes') && !$this->getAttribute('disable_c_ext')) { - $compiler->raw('twig_template_get_attributes($this, '); - } else { - $compiler->raw('$this->getAttribute('); - } - - if ($this->getAttribute('ignore_strict_check')) { - $this->getNode('node')->setAttribute('ignore_strict_check', true); - } - - $compiler->subcompile($this->getNode('node')); - - $compiler->raw(', ')->subcompile($this->getNode('attribute')); - - if (count($this->getNode('arguments')) || Twig_TemplateInterface::ANY_CALL !== $this->getAttribute('type') || $this->getAttribute('is_defined_test') || $this->getAttribute('ignore_strict_check')) { - $compiler->raw(', ')->subcompile($this->getNode('arguments')); - - if (Twig_TemplateInterface::ANY_CALL !== $this->getAttribute('type') || $this->getAttribute('is_defined_test') || $this->getAttribute('ignore_strict_check')) { - $compiler->raw(', ')->repr($this->getAttribute('type')); - } - - if ($this->getAttribute('is_defined_test') || $this->getAttribute('ignore_strict_check')) { - $compiler->raw(', '.($this->getAttribute('is_defined_test') ? 'true' : 'false')); - } - - if ($this->getAttribute('ignore_strict_check')) { - $compiler->raw(', '.($this->getAttribute('ignore_strict_check') ? 'true' : 'false')); - } - } - - $compiler->raw(')'); - } -} diff --git a/lib/Twig/Node/Expression/MethodCall.php b/lib/Twig/Node/Expression/MethodCall.php deleted file mode 100644 index 620b02bf471ea..0000000000000 --- a/lib/Twig/Node/Expression/MethodCall.php +++ /dev/null @@ -1,41 +0,0 @@ - $node, 'arguments' => $arguments), array('method' => $method, 'safe' => false), $lineno); - - if ($node instanceof Twig_Node_Expression_Name) { - $node->setAttribute('always_defined', true); - } - } - - public function compile(Twig_Compiler $compiler) - { - $compiler - ->subcompile($this->getNode('node')) - ->raw('->') - ->raw($this->getAttribute('method')) - ->raw('(') - ; - $first = true; - foreach ($this->getNode('arguments')->getKeyValuePairs() as $pair) { - if (!$first) { - $compiler->raw(', '); - } - $first = false; - - $compiler->subcompile($pair['value']); - } - $compiler->raw(')'); - } -} diff --git a/lib/Twig/Node/Expression/Name.php b/lib/Twig/Node/Expression/Name.php deleted file mode 100644 index 3b8fae01dc6fd..0000000000000 --- a/lib/Twig/Node/Expression/Name.php +++ /dev/null @@ -1,88 +0,0 @@ - '$this', - '_context' => '$context', - '_charset' => '$this->env->getCharset()', - ); - - public function __construct($name, $lineno) - { - parent::__construct(array(), array('name' => $name, 'is_defined_test' => false, 'ignore_strict_check' => false, 'always_defined' => false), $lineno); - } - - public function compile(Twig_Compiler $compiler) - { - $name = $this->getAttribute('name'); - - if ($this->getAttribute('is_defined_test')) { - if ($this->isSpecial()) { - $compiler->repr(true); - } else { - $compiler->raw('array_key_exists(')->repr($name)->raw(', $context)'); - } - } elseif ($this->isSpecial()) { - $compiler->raw($this->specialVars[$name]); - } elseif ($this->getAttribute('always_defined')) { - $compiler - ->raw('$context[') - ->string($name) - ->raw(']') - ; - } else { - // remove the non-PHP 5.4 version when PHP 5.3 support is dropped - // as the non-optimized version is just a workaround for slow ternary operator - // when the context has a lot of variables - if (version_compare(phpversion(), '5.4.0RC1', '>=')) { - // PHP 5.4 ternary operator performance was optimized - $compiler - ->raw('(isset($context[') - ->string($name) - ->raw(']) ? $context[') - ->string($name) - ->raw('] : ') - ; - - if ($this->getAttribute('ignore_strict_check') || !$compiler->getEnvironment()->isStrictVariables()) { - $compiler->raw('null)'); - } else { - $compiler->raw('$this->getContext($context, ')->string($name)->raw('))'); - } - } else { - $compiler - ->raw('$this->getContext($context, ') - ->string($name) - ; - - if ($this->getAttribute('ignore_strict_check')) { - $compiler->raw(', true'); - } - - $compiler - ->raw(')') - ; - } - } - } - - public function isSpecial() - { - return isset($this->specialVars[$this->getAttribute('name')]); - } - - public function isSimple() - { - return !$this->isSpecial() && !$this->getAttribute('is_defined_test'); - } -} diff --git a/lib/Twig/Node/Expression/Parent.php b/lib/Twig/Node/Expression/Parent.php deleted file mode 100644 index dcf618c04a669..0000000000000 --- a/lib/Twig/Node/Expression/Parent.php +++ /dev/null @@ -1,47 +0,0 @@ - - */ -class Twig_Node_Expression_Parent extends Twig_Node_Expression -{ - public function __construct($name, $lineno, $tag = null) - { - parent::__construct(array(), array('output' => false, 'name' => $name), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - if ($this->getAttribute('output')) { - $compiler - ->addDebugInfo($this) - ->write("\$this->displayParentBlock(") - ->string($this->getAttribute('name')) - ->raw(", \$context, \$blocks);\n") - ; - } else { - $compiler - ->raw("\$this->renderParentBlock(") - ->string($this->getAttribute('name')) - ->raw(", \$context, \$blocks)") - ; - } - } -} diff --git a/lib/Twig/Node/Expression/TempName.php b/lib/Twig/Node/Expression/TempName.php deleted file mode 100644 index e6b058e85ce87..0000000000000 --- a/lib/Twig/Node/Expression/TempName.php +++ /dev/null @@ -1,26 +0,0 @@ - $name), $lineno); - } - - public function compile(Twig_Compiler $compiler) - { - $compiler - ->raw('$_') - ->raw($this->getAttribute('name')) - ->raw('_') - ; - } -} diff --git a/lib/Twig/Node/Expression/Test.php b/lib/Twig/Node/Expression/Test.php deleted file mode 100644 index 639f501a18699..0000000000000 --- a/lib/Twig/Node/Expression/Test.php +++ /dev/null @@ -1,32 +0,0 @@ - $node, 'arguments' => $arguments), array('name' => $name), $lineno); - } - - public function compile(Twig_Compiler $compiler) - { - $name = $this->getAttribute('name'); - $test = $compiler->getEnvironment()->getTest($name); - - $this->setAttribute('name', $name); - $this->setAttribute('type', 'test'); - $this->setAttribute('thing', $test); - if ($test instanceof Twig_TestCallableInterface || $test instanceof Twig_SimpleTest) { - $this->setAttribute('callable', $test->getCallable()); - } - - $this->compileCallable($compiler); - } -} diff --git a/lib/Twig/Node/Expression/Test/Constant.php b/lib/Twig/Node/Expression/Test/Constant.php deleted file mode 100644 index 45b1e5da5aaa8..0000000000000 --- a/lib/Twig/Node/Expression/Test/Constant.php +++ /dev/null @@ -1,35 +0,0 @@ - - * {% if post.status is constant('Post::PUBLISHED') %} - * the status attribute is exactly the same as Post::PUBLISHED - * {% endif %} - * - * - * @author Fabien Potencier - */ -class Twig_Node_Expression_Test_Constant extends Twig_Node_Expression_Test -{ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->raw('(') - ->subcompile($this->getNode('node')) - ->raw(' === constant(') - ->subcompile($this->getNode('arguments')->getNode(0)) - ->raw('))') - ; - } -} diff --git a/lib/Twig/Node/Expression/Test/Defined.php b/lib/Twig/Node/Expression/Test/Defined.php deleted file mode 100644 index 247b2e23a5392..0000000000000 --- a/lib/Twig/Node/Expression/Test/Defined.php +++ /dev/null @@ -1,54 +0,0 @@ - - * {# defined works with variable names and variable attributes #} - * {% if foo is defined %} - * {# ... #} - * {% endif %} - * - * - * @author Fabien Potencier - */ -class Twig_Node_Expression_Test_Defined extends Twig_Node_Expression_Test -{ - public function __construct(Twig_NodeInterface $node, $name, Twig_NodeInterface $arguments = null, $lineno) - { - parent::__construct($node, $name, $arguments, $lineno); - - if ($node instanceof Twig_Node_Expression_Name) { - $node->setAttribute('is_defined_test', true); - } elseif ($node instanceof Twig_Node_Expression_GetAttr) { - $node->setAttribute('is_defined_test', true); - - $this->changeIgnoreStrictCheck($node); - } else { - throw new Twig_Error_Syntax('The "defined" test only works with simple variables', $this->getLine()); - } - } - - protected function changeIgnoreStrictCheck(Twig_Node_Expression_GetAttr $node) - { - $node->setAttribute('ignore_strict_check', true); - - if ($node->getNode('node') instanceof Twig_Node_Expression_GetAttr) { - $this->changeIgnoreStrictCheck($node->getNode('node')); - } - } - - public function compile(Twig_Compiler $compiler) - { - $compiler->subcompile($this->getNode('node')); - } -} diff --git a/lib/Twig/Node/Expression/Test/Divisibleby.php b/lib/Twig/Node/Expression/Test/Divisibleby.php deleted file mode 100644 index 0aceb5302cb45..0000000000000 --- a/lib/Twig/Node/Expression/Test/Divisibleby.php +++ /dev/null @@ -1,33 +0,0 @@ - - * {% if loop.index is divisibleby(3) %} - * - * - * @author Fabien Potencier - */ -class Twig_Node_Expression_Test_Divisibleby extends Twig_Node_Expression_Test -{ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->raw('(0 == ') - ->subcompile($this->getNode('node')) - ->raw(' % ') - ->subcompile($this->getNode('arguments')->getNode(0)) - ->raw(')') - ; - } -} diff --git a/lib/Twig/Node/Expression/Test/Even.php b/lib/Twig/Node/Expression/Test/Even.php deleted file mode 100644 index d7853e89c6842..0000000000000 --- a/lib/Twig/Node/Expression/Test/Even.php +++ /dev/null @@ -1,32 +0,0 @@ - - * {{ var is even }} - * - * - * @author Fabien Potencier - */ -class Twig_Node_Expression_Test_Even extends Twig_Node_Expression_Test -{ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->raw('(') - ->subcompile($this->getNode('node')) - ->raw(' % 2 == 0') - ->raw(')') - ; - } -} diff --git a/lib/Twig/Node/Expression/Test/Null.php b/lib/Twig/Node/Expression/Test/Null.php deleted file mode 100644 index 1c83825a005cb..0000000000000 --- a/lib/Twig/Node/Expression/Test/Null.php +++ /dev/null @@ -1,31 +0,0 @@ - - * {{ var is none }} - * - * - * @author Fabien Potencier - */ -class Twig_Node_Expression_Test_Null extends Twig_Node_Expression_Test -{ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->raw('(null === ') - ->subcompile($this->getNode('node')) - ->raw(')') - ; - } -} diff --git a/lib/Twig/Node/Expression/Test/Odd.php b/lib/Twig/Node/Expression/Test/Odd.php deleted file mode 100644 index 421c19e841e77..0000000000000 --- a/lib/Twig/Node/Expression/Test/Odd.php +++ /dev/null @@ -1,32 +0,0 @@ - - * {{ var is odd }} - * - * - * @author Fabien Potencier - */ -class Twig_Node_Expression_Test_Odd extends Twig_Node_Expression_Test -{ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->raw('(') - ->subcompile($this->getNode('node')) - ->raw(' % 2 == 1') - ->raw(')') - ; - } -} diff --git a/lib/Twig/Node/Expression/Test/Sameas.php b/lib/Twig/Node/Expression/Test/Sameas.php deleted file mode 100644 index b48905ee417ad..0000000000000 --- a/lib/Twig/Node/Expression/Test/Sameas.php +++ /dev/null @@ -1,29 +0,0 @@ - - */ -class Twig_Node_Expression_Test_Sameas extends Twig_Node_Expression_Test -{ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->raw('(') - ->subcompile($this->getNode('node')) - ->raw(' === ') - ->subcompile($this->getNode('arguments')->getNode(0)) - ->raw(')') - ; - } -} diff --git a/lib/Twig/Node/Expression/Unary.php b/lib/Twig/Node/Expression/Unary.php deleted file mode 100644 index c514388eb6c9c..0000000000000 --- a/lib/Twig/Node/Expression/Unary.php +++ /dev/null @@ -1,30 +0,0 @@ - $node), array(), $lineno); - } - - public function compile(Twig_Compiler $compiler) - { - $compiler->raw('('); - $this->operator($compiler); - $compiler - ->subcompile($this->getNode('node')) - ->raw(')') - ; - } - - abstract public function operator(Twig_Compiler $compiler); -} diff --git a/lib/Twig/Node/Expression/Unary/Neg.php b/lib/Twig/Node/Expression/Unary/Neg.php deleted file mode 100644 index 2a3937ec3fb63..0000000000000 --- a/lib/Twig/Node/Expression/Unary/Neg.php +++ /dev/null @@ -1,18 +0,0 @@ -raw('-'); - } -} diff --git a/lib/Twig/Node/Expression/Unary/Not.php b/lib/Twig/Node/Expression/Unary/Not.php deleted file mode 100644 index f94073cfaa260..0000000000000 --- a/lib/Twig/Node/Expression/Unary/Not.php +++ /dev/null @@ -1,18 +0,0 @@ -raw('!'); - } -} diff --git a/lib/Twig/Node/Expression/Unary/Pos.php b/lib/Twig/Node/Expression/Unary/Pos.php deleted file mode 100644 index 04edb52a6bcfb..0000000000000 --- a/lib/Twig/Node/Expression/Unary/Pos.php +++ /dev/null @@ -1,18 +0,0 @@ -raw('+'); - } -} diff --git a/lib/Twig/Node/Flush.php b/lib/Twig/Node/Flush.php deleted file mode 100644 index 0467ddcefc538..0000000000000 --- a/lib/Twig/Node/Flush.php +++ /dev/null @@ -1,36 +0,0 @@ - - */ -class Twig_Node_Flush extends Twig_Node -{ - public function __construct($lineno, $tag) - { - parent::__construct(array(), array(), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->addDebugInfo($this) - ->write("flush();\n") - ; - } -} diff --git a/lib/Twig/Node/For.php b/lib/Twig/Node/For.php deleted file mode 100644 index d1ff371da1bd7..0000000000000 --- a/lib/Twig/Node/For.php +++ /dev/null @@ -1,112 +0,0 @@ - - */ -class Twig_Node_For extends Twig_Node -{ - protected $loop; - - public function __construct(Twig_Node_Expression_AssignName $keyTarget, Twig_Node_Expression_AssignName $valueTarget, Twig_Node_Expression $seq, Twig_Node_Expression $ifexpr = null, Twig_NodeInterface $body, Twig_NodeInterface $else = null, $lineno, $tag = null) - { - $body = new Twig_Node(array($body, $this->loop = new Twig_Node_ForLoop($lineno, $tag))); - - if (null !== $ifexpr) { - $body = new Twig_Node_If(new Twig_Node(array($ifexpr, $body)), null, $lineno, $tag); - } - - parent::__construct(array('key_target' => $keyTarget, 'value_target' => $valueTarget, 'seq' => $seq, 'body' => $body, 'else' => $else), array('with_loop' => true, 'ifexpr' => null !== $ifexpr), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->addDebugInfo($this) - // the (array) cast bypasses a PHP 5.2.6 bug - ->write("\$context['_parent'] = (array) \$context;\n") - ->write("\$context['_seq'] = twig_ensure_traversable(") - ->subcompile($this->getNode('seq')) - ->raw(");\n") - ; - - if (null !== $this->getNode('else')) { - $compiler->write("\$context['_iterated'] = false;\n"); - } - - if ($this->getAttribute('with_loop')) { - $compiler - ->write("\$context['loop'] = array(\n") - ->write(" 'parent' => \$context['_parent'],\n") - ->write(" 'index0' => 0,\n") - ->write(" 'index' => 1,\n") - ->write(" 'first' => true,\n") - ->write(");\n") - ; - - if (!$this->getAttribute('ifexpr')) { - $compiler - ->write("if (is_array(\$context['_seq']) || (is_object(\$context['_seq']) && \$context['_seq'] instanceof Countable)) {\n") - ->indent() - ->write("\$length = count(\$context['_seq']);\n") - ->write("\$context['loop']['revindex0'] = \$length - 1;\n") - ->write("\$context['loop']['revindex'] = \$length;\n") - ->write("\$context['loop']['length'] = \$length;\n") - ->write("\$context['loop']['last'] = 1 === \$length;\n") - ->outdent() - ->write("}\n") - ; - } - } - - $this->loop->setAttribute('else', null !== $this->getNode('else')); - $this->loop->setAttribute('with_loop', $this->getAttribute('with_loop')); - $this->loop->setAttribute('ifexpr', $this->getAttribute('ifexpr')); - - $compiler - ->write("foreach (\$context['_seq'] as ") - ->subcompile($this->getNode('key_target')) - ->raw(" => ") - ->subcompile($this->getNode('value_target')) - ->raw(") {\n") - ->indent() - ->subcompile($this->getNode('body')) - ->outdent() - ->write("}\n") - ; - - if (null !== $this->getNode('else')) { - $compiler - ->write("if (!\$context['_iterated']) {\n") - ->indent() - ->subcompile($this->getNode('else')) - ->outdent() - ->write("}\n") - ; - } - - $compiler->write("\$_parent = \$context['_parent'];\n"); - - // remove some "private" loop variables (needed for nested loops) - $compiler->write('unset($context[\'_seq\'], $context[\'_iterated\'], $context[\''.$this->getNode('key_target')->getAttribute('name').'\'], $context[\''.$this->getNode('value_target')->getAttribute('name').'\'], $context[\'_parent\'], $context[\'loop\']);'."\n"); - - // keep the values set in the inner context for variables defined in the outer context - $compiler->write("\$context = array_intersect_key(\$context, \$_parent) + \$_parent;\n"); - } -} diff --git a/lib/Twig/Node/ForLoop.php b/lib/Twig/Node/ForLoop.php deleted file mode 100644 index b8841583d9704..0000000000000 --- a/lib/Twig/Node/ForLoop.php +++ /dev/null @@ -1,55 +0,0 @@ - - */ -class Twig_Node_ForLoop extends Twig_Node -{ - public function __construct($lineno, $tag = null) - { - parent::__construct(array(), array('with_loop' => false, 'ifexpr' => false, 'else' => false), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - if ($this->getAttribute('else')) { - $compiler->write("\$context['_iterated'] = true;\n"); - } - - if ($this->getAttribute('with_loop')) { - $compiler - ->write("++\$context['loop']['index0'];\n") - ->write("++\$context['loop']['index'];\n") - ->write("\$context['loop']['first'] = false;\n") - ; - - if (!$this->getAttribute('ifexpr')) { - $compiler - ->write("if (isset(\$context['loop']['length'])) {\n") - ->indent() - ->write("--\$context['loop']['revindex0'];\n") - ->write("--\$context['loop']['revindex'];\n") - ->write("\$context['loop']['last'] = 0 === \$context['loop']['revindex0'];\n") - ->outdent() - ->write("}\n") - ; - } - } - } -} diff --git a/lib/Twig/Node/If.php b/lib/Twig/Node/If.php deleted file mode 100644 index 4296a8d678fb7..0000000000000 --- a/lib/Twig/Node/If.php +++ /dev/null @@ -1,66 +0,0 @@ - - */ -class Twig_Node_If extends Twig_Node -{ - public function __construct(Twig_NodeInterface $tests, Twig_NodeInterface $else = null, $lineno, $tag = null) - { - parent::__construct(array('tests' => $tests, 'else' => $else), array(), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler->addDebugInfo($this); - for ($i = 0; $i < count($this->getNode('tests')); $i += 2) { - if ($i > 0) { - $compiler - ->outdent() - ->write("} elseif (") - ; - } else { - $compiler - ->write('if (') - ; - } - - $compiler - ->subcompile($this->getNode('tests')->getNode($i)) - ->raw(") {\n") - ->indent() - ->subcompile($this->getNode('tests')->getNode($i + 1)) - ; - } - - if ($this->hasNode('else') && null !== $this->getNode('else')) { - $compiler - ->outdent() - ->write("} else {\n") - ->indent() - ->subcompile($this->getNode('else')) - ; - } - - $compiler - ->outdent() - ->write("}\n"); - } -} diff --git a/lib/Twig/Node/Import.php b/lib/Twig/Node/Import.php deleted file mode 100644 index 99efc0911c33a..0000000000000 --- a/lib/Twig/Node/Import.php +++ /dev/null @@ -1,50 +0,0 @@ - - */ -class Twig_Node_Import extends Twig_Node -{ - public function __construct(Twig_Node_Expression $expr, Twig_Node_Expression $var, $lineno, $tag = null) - { - parent::__construct(array('expr' => $expr, 'var' => $var), array(), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->addDebugInfo($this) - ->write('') - ->subcompile($this->getNode('var')) - ->raw(' = ') - ; - - if ($this->getNode('expr') instanceof Twig_Node_Expression_Name && '_self' === $this->getNode('expr')->getAttribute('name')) { - $compiler->raw("\$this"); - } else { - $compiler - ->raw('$this->env->loadTemplate(') - ->subcompile($this->getNode('expr')) - ->raw(")") - ; - } - - $compiler->raw(";\n"); - } -} diff --git a/lib/Twig/Node/Include.php b/lib/Twig/Node/Include.php deleted file mode 100644 index ed4a3751250f0..0000000000000 --- a/lib/Twig/Node/Include.php +++ /dev/null @@ -1,99 +0,0 @@ - - */ -class Twig_Node_Include extends Twig_Node implements Twig_NodeOutputInterface -{ - public function __construct(Twig_Node_Expression $expr, Twig_Node_Expression $variables = null, $only = false, $ignoreMissing = false, $lineno, $tag = null) - { - parent::__construct(array('expr' => $expr, 'variables' => $variables), array('only' => (Boolean) $only, 'ignore_missing' => (Boolean) $ignoreMissing), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler->addDebugInfo($this); - - if ($this->getAttribute('ignore_missing')) { - $compiler - ->write("try {\n") - ->indent() - ; - } - - $this->addGetTemplate($compiler); - - $compiler->raw('->display('); - - $this->addTemplateArguments($compiler); - - $compiler->raw(");\n"); - - if ($this->getAttribute('ignore_missing')) { - $compiler - ->outdent() - ->write("} catch (Twig_Error_Loader \$e) {\n") - ->indent() - ->write("// ignore missing template\n") - ->outdent() - ->write("}\n\n") - ; - } - } - - protected function addGetTemplate(Twig_Compiler $compiler) - { - if ($this->getNode('expr') instanceof Twig_Node_Expression_Constant) { - $compiler - ->write("\$this->env->loadTemplate(") - ->subcompile($this->getNode('expr')) - ->raw(")") - ; - } else { - $compiler - ->write("\$template = \$this->env->resolveTemplate(") - ->subcompile($this->getNode('expr')) - ->raw(");\n") - ->write('$template') - ; - } - } - - protected function addTemplateArguments(Twig_Compiler $compiler) - { - if (false === $this->getAttribute('only')) { - if (null === $this->getNode('variables')) { - $compiler->raw('$context'); - } else { - $compiler - ->raw('array_merge($context, ') - ->subcompile($this->getNode('variables')) - ->raw(')') - ; - } - } else { - if (null === $this->getNode('variables')) { - $compiler->raw('array()'); - } else { - $compiler->subcompile($this->getNode('variables')); - } - } - } -} diff --git a/lib/Twig/Node/Macro.php b/lib/Twig/Node/Macro.php deleted file mode 100644 index 89910618b8729..0000000000000 --- a/lib/Twig/Node/Macro.php +++ /dev/null @@ -1,96 +0,0 @@ - - */ -class Twig_Node_Macro extends Twig_Node -{ - public function __construct($name, Twig_NodeInterface $body, Twig_NodeInterface $arguments, $lineno, $tag = null) - { - parent::__construct(array('body' => $body, 'arguments' => $arguments), array('name' => $name), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->addDebugInfo($this) - ->write(sprintf("public function get%s(", $this->getAttribute('name'))) - ; - - $count = count($this->getNode('arguments')); - $pos = 0; - foreach ($this->getNode('arguments') as $name => $default) { - $compiler - ->raw('$_'.$name.' = ') - ->subcompile($default) - ; - - if (++$pos < $count) { - $compiler->raw(', '); - } - } - - $compiler - ->raw(")\n") - ->write("{\n") - ->indent() - ; - - if (!count($this->getNode('arguments'))) { - $compiler->write("\$context = \$this->env->getGlobals();\n\n"); - } else { - $compiler - ->write("\$context = \$this->env->mergeGlobals(array(\n") - ->indent() - ; - - foreach ($this->getNode('arguments') as $name => $default) { - $compiler - ->write('') - ->string($name) - ->raw(' => $_'.$name) - ->raw(",\n") - ; - } - - $compiler - ->outdent() - ->write("));\n\n") - ; - } - - $compiler - ->write("\$blocks = array();\n\n") - ->write("ob_start();\n") - ->write("try {\n") - ->indent() - ->subcompile($this->getNode('body')) - ->outdent() - ->write("} catch (Exception \$e) {\n") - ->indent() - ->write("ob_end_clean();\n\n") - ->write("throw \$e;\n") - ->outdent() - ->write("}\n\n") - ->write("return ('' === \$tmp = ob_get_clean()) ? '' : new Twig_Markup(\$tmp, \$this->env->getCharset());\n") - ->outdent() - ->write("}\n\n") - ; - } -} diff --git a/lib/Twig/Node/Module.php b/lib/Twig/Node/Module.php deleted file mode 100644 index 585048b8a6fc7..0000000000000 --- a/lib/Twig/Node/Module.php +++ /dev/null @@ -1,371 +0,0 @@ - - */ -class Twig_Node_Module extends Twig_Node -{ - public function __construct(Twig_NodeInterface $body, Twig_Node_Expression $parent = null, Twig_NodeInterface $blocks, Twig_NodeInterface $macros, Twig_NodeInterface $traits, $embeddedTemplates, $filename) - { - // embedded templates are set as attributes so that they are only visited once by the visitors - parent::__construct(array('parent' => $parent, 'body' => $body, 'blocks' => $blocks, 'macros' => $macros, 'traits' => $traits), array('filename' => $filename, 'index' => null, 'embedded_templates' => $embeddedTemplates), 1); - } - - public function setIndex($index) - { - $this->setAttribute('index', $index); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $this->compileTemplate($compiler); - - foreach ($this->getAttribute('embedded_templates') as $template) { - $compiler->subcompile($template); - } - } - - protected function compileTemplate(Twig_Compiler $compiler) - { - if (!$this->getAttribute('index')) { - $compiler->write('compileClassHeader($compiler); - - if (count($this->getNode('blocks')) || count($this->getNode('traits')) || null === $this->getNode('parent') || $this->getNode('parent') instanceof Twig_Node_Expression_Constant) { - $this->compileConstructor($compiler); - } - - $this->compileGetParent($compiler); - - $this->compileDisplayHeader($compiler); - - $this->compileDisplayBody($compiler); - - $this->compileDisplayFooter($compiler); - - $compiler->subcompile($this->getNode('blocks')); - - $this->compileMacros($compiler); - - $this->compileGetTemplateName($compiler); - - $this->compileIsTraitable($compiler); - - $this->compileDebugInfo($compiler); - - $this->compileClassFooter($compiler); - } - - protected function compileGetParent(Twig_Compiler $compiler) - { - if (null === $this->getNode('parent')) { - return; - } - - $compiler - ->write("protected function doGetParent(array \$context)\n", "{\n") - ->indent() - ->write("return ") - ; - - if ($this->getNode('parent') instanceof Twig_Node_Expression_Constant) { - $compiler->subcompile($this->getNode('parent')); - } else { - $compiler - ->raw("\$this->env->resolveTemplate(") - ->subcompile($this->getNode('parent')) - ->raw(")") - ; - } - - $compiler - ->raw(";\n") - ->outdent() - ->write("}\n\n") - ; - } - - protected function compileDisplayBody(Twig_Compiler $compiler) - { - $compiler->subcompile($this->getNode('body')); - - if (null !== $this->getNode('parent')) { - if ($this->getNode('parent') instanceof Twig_Node_Expression_Constant) { - $compiler->write("\$this->parent"); - } else { - $compiler->write("\$this->getParent(\$context)"); - } - $compiler->raw("->display(\$context, array_merge(\$this->blocks, \$blocks));\n"); - } - } - - protected function compileClassHeader(Twig_Compiler $compiler) - { - $compiler - ->write("\n\n") - // if the filename contains */, add a blank to avoid a PHP parse error - ->write("/* ".str_replace('*/', '* /', $this->getAttribute('filename'))." */\n") - ->write('class '.$compiler->getEnvironment()->getTemplateClass($this->getAttribute('filename'), $this->getAttribute('index'))) - ->raw(sprintf(" extends %s\n", $compiler->getEnvironment()->getBaseTemplateClass())) - ->write("{\n") - ->indent() - ; - } - - protected function compileConstructor(Twig_Compiler $compiler) - { - $compiler - ->write("public function __construct(Twig_Environment \$env)\n", "{\n") - ->indent() - ->write("parent::__construct(\$env);\n\n") - ; - - // parent - if (null === $this->getNode('parent')) { - $compiler->write("\$this->parent = false;\n\n"); - } elseif ($this->getNode('parent') instanceof Twig_Node_Expression_Constant) { - $compiler - ->write("\$this->parent = \$this->env->loadTemplate(") - ->subcompile($this->getNode('parent')) - ->raw(");\n\n") - ; - } - - $countTraits = count($this->getNode('traits')); - if ($countTraits) { - // traits - foreach ($this->getNode('traits') as $i => $trait) { - $this->compileLoadTemplate($compiler, $trait->getNode('template'), sprintf('$_trait_%s', $i)); - - $compiler - ->addDebugInfo($trait->getNode('template')) - ->write(sprintf("if (!\$_trait_%s->isTraitable()) {\n", $i)) - ->indent() - ->write("throw new Twig_Error_Runtime('Template \"'.") - ->subcompile($trait->getNode('template')) - ->raw(".'\" cannot be used as a trait.');\n") - ->outdent() - ->write("}\n") - ->write(sprintf("\$_trait_%s_blocks = \$_trait_%s->getBlocks();\n\n", $i, $i)) - ; - - foreach ($trait->getNode('targets') as $key => $value) { - $compiler - ->write(sprintf("\$_trait_%s_blocks[", $i)) - ->subcompile($value) - ->raw(sprintf("] = \$_trait_%s_blocks[", $i)) - ->string($key) - ->raw(sprintf("]; unset(\$_trait_%s_blocks[", $i)) - ->string($key) - ->raw("]);\n\n") - ; - } - } - - if ($countTraits > 1) { - $compiler - ->write("\$this->traits = array_merge(\n") - ->indent() - ; - - for ($i = 0; $i < $countTraits; $i++) { - $compiler - ->write(sprintf("\$_trait_%s_blocks".($i == $countTraits - 1 ? '' : ',')."\n", $i)) - ; - } - - $compiler - ->outdent() - ->write(");\n\n") - ; - } else { - $compiler - ->write("\$this->traits = \$_trait_0_blocks;\n\n") - ; - } - - $compiler - ->write("\$this->blocks = array_merge(\n") - ->indent() - ->write("\$this->traits,\n") - ->write("array(\n") - ; - } else { - $compiler - ->write("\$this->blocks = array(\n") - ; - } - - // blocks - $compiler - ->indent() - ; - - foreach ($this->getNode('blocks') as $name => $node) { - $compiler - ->write(sprintf("'%s' => array(\$this, 'block_%s'),\n", $name, $name)) - ; - } - - if ($countTraits) { - $compiler - ->outdent() - ->write(")\n") - ; - } - - $compiler - ->outdent() - ->write(");\n") - ->outdent() - ->write("}\n\n"); - ; - } - - protected function compileDisplayHeader(Twig_Compiler $compiler) - { - $compiler - ->write("protected function doDisplay(array \$context, array \$blocks = array())\n", "{\n") - ->indent() - ; - } - - protected function compileDisplayFooter(Twig_Compiler $compiler) - { - $compiler - ->outdent() - ->write("}\n\n") - ; - } - - protected function compileClassFooter(Twig_Compiler $compiler) - { - $compiler - ->outdent() - ->write("}\n") - ; - } - - protected function compileMacros(Twig_Compiler $compiler) - { - $compiler->subcompile($this->getNode('macros')); - } - - protected function compileGetTemplateName(Twig_Compiler $compiler) - { - $compiler - ->write("public function getTemplateName()\n", "{\n") - ->indent() - ->write('return ') - ->repr($this->getAttribute('filename')) - ->raw(";\n") - ->outdent() - ->write("}\n\n") - ; - } - - protected function compileIsTraitable(Twig_Compiler $compiler) - { - // A template can be used as a trait if: - // * it has no parent - // * it has no macros - // * it has no body - // - // Put another way, a template can be used as a trait if it - // only contains blocks and use statements. - $traitable = null === $this->getNode('parent') && 0 === count($this->getNode('macros')); - if ($traitable) { - if ($this->getNode('body') instanceof Twig_Node_Body) { - $nodes = $this->getNode('body')->getNode(0); - } else { - $nodes = $this->getNode('body'); - } - - if (!count($nodes)) { - $nodes = new Twig_Node(array($nodes)); - } - - foreach ($nodes as $node) { - if (!count($node)) { - continue; - } - - if ($node instanceof Twig_Node_Text && ctype_space($node->getAttribute('data'))) { - continue; - } - - if ($node instanceof Twig_Node_BlockReference) { - continue; - } - - $traitable = false; - break; - } - } - - if ($traitable) { - return; - } - - $compiler - ->write("public function isTraitable()\n", "{\n") - ->indent() - ->write(sprintf("return %s;\n", $traitable ? 'true' : 'false')) - ->outdent() - ->write("}\n\n") - ; - } - - protected function compileDebugInfo(Twig_Compiler $compiler) - { - $compiler - ->write("public function getDebugInfo()\n", "{\n") - ->indent() - ->write(sprintf("return %s;\n", str_replace("\n", '', var_export(array_reverse($compiler->getDebugInfo(), true), true)))) - ->outdent() - ->write("}\n") - ; - } - - protected function compileLoadTemplate(Twig_Compiler $compiler, $node, $var) - { - if ($node instanceof Twig_Node_Expression_Constant) { - $compiler - ->write(sprintf("%s = \$this->env->loadTemplate(", $var)) - ->subcompile($node) - ->raw(");\n") - ; - } else { - $compiler - ->write(sprintf("%s = ", $var)) - ->subcompile($node) - ->raw(";\n") - ->write(sprintf("if (!%s", $var)) - ->raw(" instanceof Twig_Template) {\n") - ->indent() - ->write(sprintf("%s = \$this->env->loadTemplate(%s);\n", $var, $var)) - ->outdent() - ->write("}\n") - ; - } - } -} diff --git a/lib/Twig/Node/Print.php b/lib/Twig/Node/Print.php deleted file mode 100644 index b0c41d1d92113..0000000000000 --- a/lib/Twig/Node/Print.php +++ /dev/null @@ -1,39 +0,0 @@ - - */ -class Twig_Node_Print extends Twig_Node implements Twig_NodeOutputInterface -{ - public function __construct(Twig_Node_Expression $expr, $lineno, $tag = null) - { - parent::__construct(array('expr' => $expr), array(), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->addDebugInfo($this) - ->write('echo ') - ->subcompile($this->getNode('expr')) - ->raw(";\n") - ; - } -} diff --git a/lib/Twig/Node/Sandbox.php b/lib/Twig/Node/Sandbox.php deleted file mode 100644 index 8cf3ed44f7601..0000000000000 --- a/lib/Twig/Node/Sandbox.php +++ /dev/null @@ -1,47 +0,0 @@ - - */ -class Twig_Node_Sandbox extends Twig_Node -{ - public function __construct(Twig_NodeInterface $body, $lineno, $tag = null) - { - parent::__construct(array('body' => $body), array(), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->addDebugInfo($this) - ->write("\$sandbox = \$this->env->getExtension('sandbox');\n") - ->write("if (!\$alreadySandboxed = \$sandbox->isSandboxed()) {\n") - ->indent() - ->write("\$sandbox->enableSandbox();\n") - ->outdent() - ->write("}\n") - ->subcompile($this->getNode('body')) - ->write("if (!\$alreadySandboxed) {\n") - ->indent() - ->write("\$sandbox->disableSandbox();\n") - ->outdent() - ->write("}\n") - ; - } -} diff --git a/lib/Twig/Node/SandboxedModule.php b/lib/Twig/Node/SandboxedModule.php deleted file mode 100644 index be1f5daa73290..0000000000000 --- a/lib/Twig/Node/SandboxedModule.php +++ /dev/null @@ -1,60 +0,0 @@ - - */ -class Twig_Node_SandboxedModule extends Twig_Node_Module -{ - protected $usedFilters; - protected $usedTags; - protected $usedFunctions; - - public function __construct(Twig_Node_Module $node, array $usedFilters, array $usedTags, array $usedFunctions) - { - parent::__construct($node->getNode('body'), $node->getNode('parent'), $node->getNode('blocks'), $node->getNode('macros'), $node->getNode('traits'), $node->getAttribute('embedded_templates'), $node->getAttribute('filename'), $node->getLine(), $node->getNodeTag()); - - $this->setAttribute('index', $node->getAttribute('index')); - - $this->usedFilters = $usedFilters; - $this->usedTags = $usedTags; - $this->usedFunctions = $usedFunctions; - } - - protected function compileDisplayBody(Twig_Compiler $compiler) - { - $compiler->write("\$this->checkSecurity();\n"); - - parent::compileDisplayBody($compiler); - } - - protected function compileDisplayFooter(Twig_Compiler $compiler) - { - parent::compileDisplayFooter($compiler); - - $compiler - ->write("protected function checkSecurity()\n", "{\n") - ->indent() - ->write("\$this->env->getExtension('sandbox')->checkSecurity(\n") - ->indent() - ->write(!$this->usedTags ? "array(),\n" : "array('".implode('\', \'', $this->usedTags)."'),\n") - ->write(!$this->usedFilters ? "array(),\n" : "array('".implode('\', \'', $this->usedFilters)."'),\n") - ->write(!$this->usedFunctions ? "array()\n" : "array('".implode('\', \'', $this->usedFunctions)."')\n") - ->outdent() - ->write(");\n") - ->outdent() - ->write("}\n\n") - ; - } -} diff --git a/lib/Twig/Node/SandboxedPrint.php b/lib/Twig/Node/SandboxedPrint.php deleted file mode 100644 index 73dfaa9639a50..0000000000000 --- a/lib/Twig/Node/SandboxedPrint.php +++ /dev/null @@ -1,59 +0,0 @@ - - */ -class Twig_Node_SandboxedPrint extends Twig_Node_Print -{ - public function __construct(Twig_Node_Expression $expr, $lineno, $tag = null) - { - parent::__construct($expr, $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->addDebugInfo($this) - ->write('echo $this->env->getExtension(\'sandbox\')->ensureToStringAllowed(') - ->subcompile($this->getNode('expr')) - ->raw(");\n") - ; - } - - /** - * Removes node filters. - * - * This is mostly needed when another visitor adds filters (like the escaper one). - * - * @param Twig_Node $node A Node - */ - protected function removeNodeFilter($node) - { - if ($node instanceof Twig_Node_Expression_Filter) { - return $this->removeNodeFilter($node->getNode('node')); - } - - return $node; - } -} diff --git a/lib/Twig/Node/Set.php b/lib/Twig/Node/Set.php deleted file mode 100644 index 4c9c16ce2fb7a..0000000000000 --- a/lib/Twig/Node/Set.php +++ /dev/null @@ -1,101 +0,0 @@ - - */ -class Twig_Node_Set extends Twig_Node -{ - public function __construct($capture, Twig_NodeInterface $names, Twig_NodeInterface $values, $lineno, $tag = null) - { - parent::__construct(array('names' => $names, 'values' => $values), array('capture' => $capture, 'safe' => false), $lineno, $tag); - - /* - * Optimizes the node when capture is used for a large block of text. - * - * {% set foo %}foo{% endset %} is compiled to $context['foo'] = new Twig_Markup("foo"); - */ - if ($this->getAttribute('capture')) { - $this->setAttribute('safe', true); - - $values = $this->getNode('values'); - if ($values instanceof Twig_Node_Text) { - $this->setNode('values', new Twig_Node_Expression_Constant($values->getAttribute('data'), $values->getLine())); - $this->setAttribute('capture', false); - } - } - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler->addDebugInfo($this); - - if (count($this->getNode('names')) > 1) { - $compiler->write('list('); - foreach ($this->getNode('names') as $idx => $node) { - if ($idx) { - $compiler->raw(', '); - } - - $compiler->subcompile($node); - } - $compiler->raw(')'); - } else { - if ($this->getAttribute('capture')) { - $compiler - ->write("ob_start();\n") - ->subcompile($this->getNode('values')) - ; - } - - $compiler->subcompile($this->getNode('names'), false); - - if ($this->getAttribute('capture')) { - $compiler->raw(" = ('' === \$tmp = ob_get_clean()) ? '' : new Twig_Markup(\$tmp, \$this->env->getCharset())"); - } - } - - if (!$this->getAttribute('capture')) { - $compiler->raw(' = '); - - if (count($this->getNode('names')) > 1) { - $compiler->write('array('); - foreach ($this->getNode('values') as $idx => $value) { - if ($idx) { - $compiler->raw(', '); - } - - $compiler->subcompile($value); - } - $compiler->raw(')'); - } else { - if ($this->getAttribute('safe')) { - $compiler - ->raw("('' === \$tmp = ") - ->subcompile($this->getNode('values')) - ->raw(") ? '' : new Twig_Markup(\$tmp, \$this->env->getCharset())") - ; - } else { - $compiler->subcompile($this->getNode('values')); - } - } - } - - $compiler->raw(";\n"); - } -} diff --git a/lib/Twig/Node/SetTemp.php b/lib/Twig/Node/SetTemp.php deleted file mode 100644 index 3bdd1cb74e781..0000000000000 --- a/lib/Twig/Node/SetTemp.php +++ /dev/null @@ -1,35 +0,0 @@ - $name), $lineno); - } - - public function compile(Twig_Compiler $compiler) - { - $name = $this->getAttribute('name'); - $compiler - ->addDebugInfo($this) - ->write('if (isset($context[') - ->string($name) - ->raw('])) { $_') - ->raw($name) - ->raw('_ = $context[') - ->repr($name) - ->raw(']; } else { $_') - ->raw($name) - ->raw("_ = null; }\n") - ; - } -} diff --git a/lib/Twig/Node/Spaceless.php b/lib/Twig/Node/Spaceless.php deleted file mode 100644 index 7555fa0f18271..0000000000000 --- a/lib/Twig/Node/Spaceless.php +++ /dev/null @@ -1,40 +0,0 @@ - - */ -class Twig_Node_Spaceless extends Twig_Node -{ - public function __construct(Twig_NodeInterface $body, $lineno, $tag = 'spaceless') - { - parent::__construct(array('body' => $body), array(), $lineno, $tag); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->addDebugInfo($this) - ->write("ob_start();\n") - ->subcompile($this->getNode('body')) - ->write("echo trim(preg_replace('/>\s+<', ob_get_clean()));\n") - ; - } -} diff --git a/lib/Twig/Node/Text.php b/lib/Twig/Node/Text.php deleted file mode 100644 index 21bdcea1485ec..0000000000000 --- a/lib/Twig/Node/Text.php +++ /dev/null @@ -1,39 +0,0 @@ - - */ -class Twig_Node_Text extends Twig_Node implements Twig_NodeOutputInterface -{ - public function __construct($data, $lineno) - { - parent::__construct(array(), array('data' => $data), $lineno); - } - - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler) - { - $compiler - ->addDebugInfo($this) - ->write('echo ') - ->string($this->getAttribute('data')) - ->raw(";\n") - ; - } -} diff --git a/lib/Twig/NodeInterface.php b/lib/Twig/NodeInterface.php deleted file mode 100644 index f0ef725825ce2..0000000000000 --- a/lib/Twig/NodeInterface.php +++ /dev/null @@ -1,30 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -interface Twig_NodeInterface extends Countable, IteratorAggregate -{ - /** - * Compiles the node to PHP. - * - * @param Twig_Compiler A Twig_Compiler instance - */ - public function compile(Twig_Compiler $compiler); - - public function getLine(); - - public function getNodeTag(); -} diff --git a/lib/Twig/NodeOutputInterface.php b/lib/Twig/NodeOutputInterface.php deleted file mode 100644 index 22172c09db180..0000000000000 --- a/lib/Twig/NodeOutputInterface.php +++ /dev/null @@ -1,19 +0,0 @@ - - */ -interface Twig_NodeOutputInterface -{ -} diff --git a/lib/Twig/NodeTraverser.php b/lib/Twig/NodeTraverser.php deleted file mode 100644 index 28cba1ad57beb..0000000000000 --- a/lib/Twig/NodeTraverser.php +++ /dev/null @@ -1,88 +0,0 @@ - - */ -class Twig_NodeTraverser -{ - protected $env; - protected $visitors; - - /** - * Constructor. - * - * @param Twig_Environment $env A Twig_Environment instance - * @param array $visitors An array of Twig_NodeVisitorInterface instances - */ - public function __construct(Twig_Environment $env, array $visitors = array()) - { - $this->env = $env; - $this->visitors = array(); - foreach ($visitors as $visitor) { - $this->addVisitor($visitor); - } - } - - /** - * Adds a visitor. - * - * @param Twig_NodeVisitorInterface $visitor A Twig_NodeVisitorInterface instance - */ - public function addVisitor(Twig_NodeVisitorInterface $visitor) - { - if (!isset($this->visitors[$visitor->getPriority()])) { - $this->visitors[$visitor->getPriority()] = array(); - } - - $this->visitors[$visitor->getPriority()][] = $visitor; - } - - /** - * Traverses a node and calls the registered visitors. - * - * @param Twig_NodeInterface $node A Twig_NodeInterface instance - */ - public function traverse(Twig_NodeInterface $node) - { - ksort($this->visitors); - foreach ($this->visitors as $visitors) { - foreach ($visitors as $visitor) { - $node = $this->traverseForVisitor($visitor, $node); - } - } - - return $node; - } - - protected function traverseForVisitor(Twig_NodeVisitorInterface $visitor, Twig_NodeInterface $node = null) - { - if (null === $node) { - return null; - } - - $node = $visitor->enterNode($node, $this->env); - - foreach ($node as $k => $n) { - if (false !== $n = $this->traverseForVisitor($visitor, $n)) { - $node->setNode($k, $n); - } else { - $node->removeNode($k); - } - } - - return $visitor->leaveNode($node, $this->env); - } -} diff --git a/lib/Twig/NodeVisitor/Escaper.php b/lib/Twig/NodeVisitor/Escaper.php deleted file mode 100644 index cc4b3d717ad79..0000000000000 --- a/lib/Twig/NodeVisitor/Escaper.php +++ /dev/null @@ -1,167 +0,0 @@ - - */ -class Twig_NodeVisitor_Escaper implements Twig_NodeVisitorInterface -{ - protected $statusStack = array(); - protected $blocks = array(); - protected $safeAnalysis; - protected $traverser; - protected $defaultStrategy = false; - protected $safeVars = array(); - - public function __construct() - { - $this->safeAnalysis = new Twig_NodeVisitor_SafeAnalysis(); - } - - /** - * Called before child nodes are visited. - * - * @param Twig_NodeInterface $node The node to visit - * @param Twig_Environment $env The Twig environment instance - * - * @return Twig_NodeInterface The modified node - */ - public function enterNode(Twig_NodeInterface $node, Twig_Environment $env) - { - if ($node instanceof Twig_Node_Module) { - if ($env->hasExtension('escaper') && $defaultStrategy = $env->getExtension('escaper')->getDefaultStrategy($node->getAttribute('filename'))) { - $this->defaultStrategy = $defaultStrategy; - } - $this->safeVars = array(); - } elseif ($node instanceof Twig_Node_AutoEscape) { - $this->statusStack[] = $node->getAttribute('value'); - } elseif ($node instanceof Twig_Node_Block) { - $this->statusStack[] = isset($this->blocks[$node->getAttribute('name')]) ? $this->blocks[$node->getAttribute('name')] : $this->needEscaping($env); - } elseif ($node instanceof Twig_Node_Import) { - $this->safeVars[] = $node->getNode('var')->getAttribute('name'); - } - - return $node; - } - - /** - * Called after child nodes are visited. - * - * @param Twig_NodeInterface $node The node to visit - * @param Twig_Environment $env The Twig environment instance - * - * @return Twig_NodeInterface The modified node - */ - public function leaveNode(Twig_NodeInterface $node, Twig_Environment $env) - { - if ($node instanceof Twig_Node_Module) { - $this->defaultStrategy = false; - $this->safeVars = array(); - } elseif ($node instanceof Twig_Node_Expression_Filter) { - return $this->preEscapeFilterNode($node, $env); - } elseif ($node instanceof Twig_Node_Print) { - return $this->escapePrintNode($node, $env, $this->needEscaping($env)); - } - - if ($node instanceof Twig_Node_AutoEscape || $node instanceof Twig_Node_Block) { - array_pop($this->statusStack); - } elseif ($node instanceof Twig_Node_BlockReference) { - $this->blocks[$node->getAttribute('name')] = $this->needEscaping($env); - } - - return $node; - } - - protected function escapePrintNode(Twig_Node_Print $node, Twig_Environment $env, $type) - { - if (false === $type) { - return $node; - } - - $expression = $node->getNode('expr'); - - if ($this->isSafeFor($type, $expression, $env)) { - return $node; - } - - $class = get_class($node); - - return new $class( - $this->getEscaperFilter($type, $expression), - $node->getLine() - ); - } - - protected function preEscapeFilterNode(Twig_Node_Expression_Filter $filter, Twig_Environment $env) - { - $name = $filter->getNode('filter')->getAttribute('value'); - - $type = $env->getFilter($name)->getPreEscape(); - if (null === $type) { - return $filter; - } - - $node = $filter->getNode('node'); - if ($this->isSafeFor($type, $node, $env)) { - return $filter; - } - - $filter->setNode('node', $this->getEscaperFilter($type, $node)); - - return $filter; - } - - protected function isSafeFor($type, Twig_NodeInterface $expression, $env) - { - $safe = $this->safeAnalysis->getSafe($expression); - - if (null === $safe) { - if (null === $this->traverser) { - $this->traverser = new Twig_NodeTraverser($env, array($this->safeAnalysis)); - } - - $this->safeAnalysis->setSafeVars($this->safeVars); - - $this->traverser->traverse($expression); - $safe = $this->safeAnalysis->getSafe($expression); - } - - return in_array($type, $safe) || in_array('all', $safe); - } - - protected function needEscaping(Twig_Environment $env) - { - if (count($this->statusStack)) { - return $this->statusStack[count($this->statusStack) - 1]; - } - - return $this->defaultStrategy ? $this->defaultStrategy : false; - } - - protected function getEscaperFilter($type, Twig_NodeInterface $node) - { - $line = $node->getLine(); - $name = new Twig_Node_Expression_Constant('escape', $line); - $args = new Twig_Node(array(new Twig_Node_Expression_Constant((string) $type, $line), new Twig_Node_Expression_Constant(null, $line), new Twig_Node_Expression_Constant(true, $line))); - - return new Twig_Node_Expression_Filter($node, $name, $args, $line); - } - - /** - * {@inheritdoc} - */ - public function getPriority() - { - return 0; - } -} diff --git a/lib/Twig/NodeVisitor/Optimizer.php b/lib/Twig/NodeVisitor/Optimizer.php deleted file mode 100644 index a254def75be63..0000000000000 --- a/lib/Twig/NodeVisitor/Optimizer.php +++ /dev/null @@ -1,246 +0,0 @@ - - */ -class Twig_NodeVisitor_Optimizer implements Twig_NodeVisitorInterface -{ - const OPTIMIZE_ALL = -1; - const OPTIMIZE_NONE = 0; - const OPTIMIZE_FOR = 2; - const OPTIMIZE_RAW_FILTER = 4; - const OPTIMIZE_VAR_ACCESS = 8; - - protected $loops = array(); - protected $optimizers; - protected $prependedNodes = array(); - protected $inABody = false; - - /** - * Constructor. - * - * @param integer $optimizers The optimizer mode - */ - public function __construct($optimizers = -1) - { - if (!is_int($optimizers) || $optimizers > 2) { - throw new InvalidArgumentException(sprintf('Optimizer mode "%s" is not valid.', $optimizers)); - } - - $this->optimizers = $optimizers; - } - - /** - * {@inheritdoc} - */ - public function enterNode(Twig_NodeInterface $node, Twig_Environment $env) - { - if (self::OPTIMIZE_FOR === (self::OPTIMIZE_FOR & $this->optimizers)) { - $this->enterOptimizeFor($node, $env); - } - - if (!version_compare(phpversion(), '5.4.0RC1', '>=') && self::OPTIMIZE_VAR_ACCESS === (self::OPTIMIZE_VAR_ACCESS & $this->optimizers) && !$env->isStrictVariables() && !$env->hasExtension('sandbox')) { - if ($this->inABody) { - if (!$node instanceof Twig_Node_Expression) { - if (get_class($node) !== 'Twig_Node') { - array_unshift($this->prependedNodes, array()); - } - } else { - $node = $this->optimizeVariables($node, $env); - } - } elseif ($node instanceof Twig_Node_Body) { - $this->inABody = true; - } - } - - return $node; - } - - /** - * {@inheritdoc} - */ - public function leaveNode(Twig_NodeInterface $node, Twig_Environment $env) - { - $expression = $node instanceof Twig_Node_Expression; - - if (self::OPTIMIZE_FOR === (self::OPTIMIZE_FOR & $this->optimizers)) { - $this->leaveOptimizeFor($node, $env); - } - - if (self::OPTIMIZE_RAW_FILTER === (self::OPTIMIZE_RAW_FILTER & $this->optimizers)) { - $node = $this->optimizeRawFilter($node, $env); - } - - $node = $this->optimizePrintNode($node, $env); - - if (self::OPTIMIZE_VAR_ACCESS === (self::OPTIMIZE_VAR_ACCESS & $this->optimizers) && !$env->isStrictVariables() && !$env->hasExtension('sandbox')) { - if ($node instanceof Twig_Node_Body) { - $this->inABody = false; - } elseif ($this->inABody) { - if (!$expression && get_class($node) !== 'Twig_Node' && $prependedNodes = array_shift($this->prependedNodes)) { - $nodes = array(); - foreach (array_unique($prependedNodes) as $name) { - $nodes[] = new Twig_Node_SetTemp($name, $node->getLine()); - } - - $nodes[] = $node; - $node = new Twig_Node($nodes); - } - } - } - - return $node; - } - - protected function optimizeVariables($node, $env) - { - if ('Twig_Node_Expression_Name' === get_class($node) && $node->isSimple()) { - $this->prependedNodes[0][] = $node->getAttribute('name'); - - return new Twig_Node_Expression_TempName($node->getAttribute('name'), $node->getLine()); - } - - return $node; - } - - /** - * Optimizes print nodes. - * - * It replaces: - * - * * "echo $this->render(Parent)Block()" with "$this->display(Parent)Block()" - * - * @param Twig_NodeInterface $node A Node - * @param Twig_Environment $env The current Twig environment - */ - protected function optimizePrintNode($node, $env) - { - if (!$node instanceof Twig_Node_Print) { - return $node; - } - - if ( - $node->getNode('expr') instanceof Twig_Node_Expression_BlockReference || - $node->getNode('expr') instanceof Twig_Node_Expression_Parent - ) { - $node->getNode('expr')->setAttribute('output', true); - - return $node->getNode('expr'); - } - - return $node; - } - - /** - * Removes "raw" filters. - * - * @param Twig_NodeInterface $node A Node - * @param Twig_Environment $env The current Twig environment - */ - protected function optimizeRawFilter($node, $env) - { - if ($node instanceof Twig_Node_Expression_Filter && 'raw' == $node->getNode('filter')->getAttribute('value')) { - return $node->getNode('node'); - } - - return $node; - } - - /** - * Optimizes "for" tag by removing the "loop" variable creation whenever possible. - * - * @param Twig_NodeInterface $node A Node - * @param Twig_Environment $env The current Twig environment - */ - protected function enterOptimizeFor($node, $env) - { - if ($node instanceof Twig_Node_For) { - // disable the loop variable by default - $node->setAttribute('with_loop', false); - array_unshift($this->loops, $node); - } elseif (!$this->loops) { - // we are outside a loop - return; - } - - // when do we need to add the loop variable back? - - // the loop variable is referenced for the current loop - elseif ($node instanceof Twig_Node_Expression_Name && 'loop' === $node->getAttribute('name')) { - $this->addLoopToCurrent(); - } - - // block reference - elseif ($node instanceof Twig_Node_BlockReference || $node instanceof Twig_Node_Expression_BlockReference) { - $this->addLoopToCurrent(); - } - - // include without the only attribute - elseif ($node instanceof Twig_Node_Include && !$node->getAttribute('only')) { - $this->addLoopToAll(); - } - - // the loop variable is referenced via an attribute - elseif ($node instanceof Twig_Node_Expression_GetAttr - && (!$node->getNode('attribute') instanceof Twig_Node_Expression_Constant - || 'parent' === $node->getNode('attribute')->getAttribute('value') - ) - && (true === $this->loops[0]->getAttribute('with_loop') - || ($node->getNode('node') instanceof Twig_Node_Expression_Name - && 'loop' === $node->getNode('node')->getAttribute('name') - ) - ) - ) { - $this->addLoopToAll(); - } - } - - /** - * Optimizes "for" tag by removing the "loop" variable creation whenever possible. - * - * @param Twig_NodeInterface $node A Node - * @param Twig_Environment $env The current Twig environment - */ - protected function leaveOptimizeFor($node, $env) - { - if ($node instanceof Twig_Node_For) { - array_shift($this->loops); - } - } - - protected function addLoopToCurrent() - { - $this->loops[0]->setAttribute('with_loop', true); - } - - protected function addLoopToAll() - { - foreach ($this->loops as $loop) { - $loop->setAttribute('with_loop', true); - } - } - - /** - * {@inheritdoc} - */ - public function getPriority() - { - return 255; - } -} diff --git a/lib/Twig/NodeVisitor/SafeAnalysis.php b/lib/Twig/NodeVisitor/SafeAnalysis.php deleted file mode 100644 index 7dc65c0e68883..0000000000000 --- a/lib/Twig/NodeVisitor/SafeAnalysis.php +++ /dev/null @@ -1,133 +0,0 @@ -safeVars = $safeVars; - } - - public function getSafe(Twig_NodeInterface $node) - { - $hash = spl_object_hash($node); - if (isset($this->data[$hash])) { - foreach ($this->data[$hash] as $bucket) { - if ($bucket['key'] === $node) { - return $bucket['value']; - } - } - } - - return null; - } - - protected function setSafe(Twig_NodeInterface $node, array $safe) - { - $hash = spl_object_hash($node); - if (isset($this->data[$hash])) { - foreach ($this->data[$hash] as &$bucket) { - if ($bucket['key'] === $node) { - $bucket['value'] = $safe; - - return; - } - } - } - $this->data[$hash][] = array( - 'key' => $node, - 'value' => $safe, - ); - } - - public function enterNode(Twig_NodeInterface $node, Twig_Environment $env) - { - return $node; - } - - public function leaveNode(Twig_NodeInterface $node, Twig_Environment $env) - { - if ($node instanceof Twig_Node_Expression_Constant) { - // constants are marked safe for all - $this->setSafe($node, array('all')); - } elseif ($node instanceof Twig_Node_Expression_BlockReference) { - // blocks are safe by definition - $this->setSafe($node, array('all')); - } elseif ($node instanceof Twig_Node_Expression_Parent) { - // parent block is safe by definition - $this->setSafe($node, array('all')); - } elseif ($node instanceof Twig_Node_Expression_Conditional) { - // intersect safeness of both operands - $safe = $this->intersectSafe($this->getSafe($node->getNode('expr2')), $this->getSafe($node->getNode('expr3'))); - $this->setSafe($node, $safe); - } elseif ($node instanceof Twig_Node_Expression_Filter) { - // filter expression is safe when the filter is safe - $name = $node->getNode('filter')->getAttribute('value'); - $args = $node->getNode('arguments'); - if (false !== $filter = $env->getFilter($name)) { - $safe = $filter->getSafe($args); - if (null === $safe) { - $safe = $this->intersectSafe($this->getSafe($node->getNode('node')), $filter->getPreservesSafety()); - } - $this->setSafe($node, $safe); - } else { - $this->setSafe($node, array()); - } - } elseif ($node instanceof Twig_Node_Expression_Function) { - // function expression is safe when the function is safe - $name = $node->getAttribute('name'); - $args = $node->getNode('arguments'); - $function = $env->getFunction($name); - if (false !== $function) { - $this->setSafe($node, $function->getSafe($args)); - } else { - $this->setSafe($node, array()); - } - } elseif ($node instanceof Twig_Node_Expression_MethodCall) { - if ($node->getAttribute('safe')) { - $this->setSafe($node, array('all')); - } else { - $this->setSafe($node, array()); - } - } elseif ($node instanceof Twig_Node_Expression_GetAttr && $node->getNode('node') instanceof Twig_Node_Expression_Name) { - $name = $node->getNode('node')->getAttribute('name'); - // attributes on template instances are safe - if ('_self' == $name || in_array($name, $this->safeVars)) { - $this->setSafe($node, array('all')); - } else { - $this->setSafe($node, array()); - } - } else { - $this->setSafe($node, array()); - } - - return $node; - } - - protected function intersectSafe(array $a = null, array $b = null) - { - if (null === $a || null === $b) { - return array(); - } - - if (in_array('all', $a)) { - return $b; - } - - if (in_array('all', $b)) { - return $a; - } - - return array_intersect($a, $b); - } - - /** - * {@inheritdoc} - */ - public function getPriority() - { - return 0; - } -} diff --git a/lib/Twig/NodeVisitor/Sandbox.php b/lib/Twig/NodeVisitor/Sandbox.php deleted file mode 100644 index fb27045baaf1e..0000000000000 --- a/lib/Twig/NodeVisitor/Sandbox.php +++ /dev/null @@ -1,92 +0,0 @@ - - */ -class Twig_NodeVisitor_Sandbox implements Twig_NodeVisitorInterface -{ - protected $inAModule = false; - protected $tags; - protected $filters; - protected $functions; - - /** - * Called before child nodes are visited. - * - * @param Twig_NodeInterface $node The node to visit - * @param Twig_Environment $env The Twig environment instance - * - * @return Twig_NodeInterface The modified node - */ - public function enterNode(Twig_NodeInterface $node, Twig_Environment $env) - { - if ($node instanceof Twig_Node_Module) { - $this->inAModule = true; - $this->tags = array(); - $this->filters = array(); - $this->functions = array(); - - return $node; - } elseif ($this->inAModule) { - // look for tags - if ($node->getNodeTag()) { - $this->tags[] = $node->getNodeTag(); - } - - // look for filters - if ($node instanceof Twig_Node_Expression_Filter) { - $this->filters[] = $node->getNode('filter')->getAttribute('value'); - } - - // look for functions - if ($node instanceof Twig_Node_Expression_Function) { - $this->functions[] = $node->getAttribute('name'); - } - - // wrap print to check __toString() calls - if ($node instanceof Twig_Node_Print) { - return new Twig_Node_SandboxedPrint($node->getNode('expr'), $node->getLine(), $node->getNodeTag()); - } - } - - return $node; - } - - /** - * Called after child nodes are visited. - * - * @param Twig_NodeInterface $node The node to visit - * @param Twig_Environment $env The Twig environment instance - * - * @return Twig_NodeInterface The modified node - */ - public function leaveNode(Twig_NodeInterface $node, Twig_Environment $env) - { - if ($node instanceof Twig_Node_Module) { - $this->inAModule = false; - - return new Twig_Node_SandboxedModule($node, array_unique($this->filters), array_unique($this->tags), array_unique($this->functions)); - } - - return $node; - } - - /** - * {@inheritdoc} - */ - public function getPriority() - { - return 0; - } -} diff --git a/lib/Twig/NodeVisitorInterface.php b/lib/Twig/NodeVisitorInterface.php deleted file mode 100644 index f33c13fc2265e..0000000000000 --- a/lib/Twig/NodeVisitorInterface.php +++ /dev/null @@ -1,47 +0,0 @@ - - */ -interface Twig_NodeVisitorInterface -{ - /** - * Called before child nodes are visited. - * - * @param Twig_NodeInterface $node The node to visit - * @param Twig_Environment $env The Twig environment instance - * - * @return Twig_NodeInterface The modified node - */ - public function enterNode(Twig_NodeInterface $node, Twig_Environment $env); - - /** - * Called after child nodes are visited. - * - * @param Twig_NodeInterface $node The node to visit - * @param Twig_Environment $env The Twig environment instance - * - * @return Twig_NodeInterface|false The modified node or false if the node must be removed - */ - public function leaveNode(Twig_NodeInterface $node, Twig_Environment $env); - - /** - * Returns the priority for this visitor. - * - * Priority should be between -10 and 10 (0 is the default). - * - * @return integer The priority level - */ - public function getPriority(); -} diff --git a/lib/Twig/Parser.php b/lib/Twig/Parser.php deleted file mode 100644 index 958e46b3dfa51..0000000000000 --- a/lib/Twig/Parser.php +++ /dev/null @@ -1,394 +0,0 @@ - - */ -class Twig_Parser implements Twig_ParserInterface -{ - protected $stack = array(); - protected $stream; - protected $parent; - protected $handlers; - protected $visitors; - protected $expressionParser; - protected $blocks; - protected $blockStack; - protected $macros; - protected $env; - protected $reservedMacroNames; - protected $importedSymbols; - protected $traits; - protected $embeddedTemplates = array(); - - /** - * Constructor. - * - * @param Twig_Environment $env A Twig_Environment instance - */ - public function __construct(Twig_Environment $env) - { - $this->env = $env; - } - - public function getEnvironment() - { - return $this->env; - } - - public function getVarName() - { - return sprintf('__internal_%s', hash('sha1', uniqid(mt_rand(), true), false)); - } - - public function getFilename() - { - return $this->stream->getFilename(); - } - - /** - * Converts a token stream to a node tree. - * - * @param Twig_TokenStream $stream A token stream instance - * - * @return Twig_Node_Module A node tree - */ - public function parse(Twig_TokenStream $stream, $test = null, $dropNeedle = false) - { - // push all variables into the stack to keep the current state of the parser - $vars = get_object_vars($this); - unset($vars['stack'], $vars['env'], $vars['handlers'], $vars['visitors'], $vars['expressionParser']); - $this->stack[] = $vars; - - // tag handlers - if (null === $this->handlers) { - $this->handlers = $this->env->getTokenParsers(); - $this->handlers->setParser($this); - } - - // node visitors - if (null === $this->visitors) { - $this->visitors = $this->env->getNodeVisitors(); - } - - if (null === $this->expressionParser) { - $this->expressionParser = new Twig_ExpressionParser($this, $this->env->getUnaryOperators(), $this->env->getBinaryOperators()); - } - - $this->stream = $stream; - $this->parent = null; - $this->blocks = array(); - $this->macros = array(); - $this->traits = array(); - $this->blockStack = array(); - $this->importedSymbols = array(array()); - $this->embeddedTemplates = array(); - - try { - $body = $this->subparse($test, $dropNeedle); - - if (null !== $this->parent) { - if (null === $body = $this->filterBodyNodes($body)) { - $body = new Twig_Node(); - } - } - } catch (Twig_Error_Syntax $e) { - if (!$e->getTemplateFile()) { - $e->setTemplateFile($this->getFilename()); - } - - if (!$e->getTemplateLine()) { - $e->setTemplateLine($this->stream->getCurrent()->getLine()); - } - - throw $e; - } - - $node = new Twig_Node_Module(new Twig_Node_Body(array($body)), $this->parent, new Twig_Node($this->blocks), new Twig_Node($this->macros), new Twig_Node($this->traits), $this->embeddedTemplates, $this->getFilename()); - - $traverser = new Twig_NodeTraverser($this->env, $this->visitors); - - $node = $traverser->traverse($node); - - // restore previous stack so previous parse() call can resume working - foreach (array_pop($this->stack) as $key => $val) { - $this->$key = $val; - } - - return $node; - } - - public function subparse($test, $dropNeedle = false) - { - $lineno = $this->getCurrentToken()->getLine(); - $rv = array(); - while (!$this->stream->isEOF()) { - switch ($this->getCurrentToken()->getType()) { - case Twig_Token::TEXT_TYPE: - $token = $this->stream->next(); - $rv[] = new Twig_Node_Text($token->getValue(), $token->getLine()); - break; - - case Twig_Token::VAR_START_TYPE: - $token = $this->stream->next(); - $expr = $this->expressionParser->parseExpression(); - $this->stream->expect(Twig_Token::VAR_END_TYPE); - $rv[] = new Twig_Node_Print($expr, $token->getLine()); - break; - - case Twig_Token::BLOCK_START_TYPE: - $this->stream->next(); - $token = $this->getCurrentToken(); - - if ($token->getType() !== Twig_Token::NAME_TYPE) { - throw new Twig_Error_Syntax('A block must start with a tag name', $token->getLine(), $this->getFilename()); - } - - if (null !== $test && call_user_func($test, $token)) { - if ($dropNeedle) { - $this->stream->next(); - } - - if (1 === count($rv)) { - return $rv[0]; - } - - return new Twig_Node($rv, array(), $lineno); - } - - $subparser = $this->handlers->getTokenParser($token->getValue()); - if (null === $subparser) { - if (null !== $test) { - $error = sprintf('Unexpected tag name "%s"', $token->getValue()); - if (is_array($test) && isset($test[0]) && $test[0] instanceof Twig_TokenParserInterface) { - $error .= sprintf(' (expecting closing tag for the "%s" tag defined near line %s)', $test[0]->getTag(), $lineno); - } - - throw new Twig_Error_Syntax($error, $token->getLine(), $this->getFilename()); - } - - $message = sprintf('Unknown tag name "%s"', $token->getValue()); - if ($alternatives = $this->env->computeAlternatives($token->getValue(), array_keys($this->env->getTags()))) { - $message = sprintf('%s. Did you mean "%s"', $message, implode('", "', $alternatives)); - } - - throw new Twig_Error_Syntax($message, $token->getLine(), $this->getFilename()); - } - - $this->stream->next(); - - $node = $subparser->parse($token); - if (null !== $node) { - $rv[] = $node; - } - break; - - default: - throw new Twig_Error_Syntax('Lexer or parser ended up in unsupported state.', 0, $this->getFilename()); - } - } - - if (1 === count($rv)) { - return $rv[0]; - } - - return new Twig_Node($rv, array(), $lineno); - } - - public function addHandler($name, $class) - { - $this->handlers[$name] = $class; - } - - public function addNodeVisitor(Twig_NodeVisitorInterface $visitor) - { - $this->visitors[] = $visitor; - } - - public function getBlockStack() - { - return $this->blockStack; - } - - public function peekBlockStack() - { - return $this->blockStack[count($this->blockStack) - 1]; - } - - public function popBlockStack() - { - array_pop($this->blockStack); - } - - public function pushBlockStack($name) - { - $this->blockStack[] = $name; - } - - public function hasBlock($name) - { - return isset($this->blocks[$name]); - } - - public function getBlock($name) - { - return $this->blocks[$name]; - } - - public function setBlock($name, $value) - { - $this->blocks[$name] = new Twig_Node_Body(array($value), array(), $value->getLine()); - } - - public function hasMacro($name) - { - return isset($this->macros[$name]); - } - - public function setMacro($name, Twig_Node_Macro $node) - { - if (null === $this->reservedMacroNames) { - $this->reservedMacroNames = array(); - $r = new ReflectionClass($this->env->getBaseTemplateClass()); - foreach ($r->getMethods() as $method) { - $this->reservedMacroNames[] = $method->getName(); - } - } - - if (in_array($name, $this->reservedMacroNames)) { - throw new Twig_Error_Syntax(sprintf('"%s" cannot be used as a macro name as it is a reserved keyword', $name), $node->getLine(), $this->getFilename()); - } - - $this->macros[$name] = $node; - } - - public function addTrait($trait) - { - $this->traits[] = $trait; - } - - public function hasTraits() - { - return count($this->traits) > 0; - } - - public function embedTemplate(Twig_Node_Module $template) - { - $template->setIndex(mt_rand()); - - $this->embeddedTemplates[] = $template; - } - - public function addImportedSymbol($type, $alias, $name = null, Twig_Node_Expression $node = null) - { - $this->importedSymbols[0][$type][$alias] = array('name' => $name, 'node' => $node); - } - - public function getImportedSymbol($type, $alias) - { - foreach ($this->importedSymbols as $functions) { - if (isset($functions[$type][$alias])) { - return $functions[$type][$alias]; - } - } - } - - public function isMainScope() - { - return 1 === count($this->importedSymbols); - } - - public function pushLocalScope() - { - array_unshift($this->importedSymbols, array()); - } - - public function popLocalScope() - { - array_shift($this->importedSymbols); - } - - /** - * Gets the expression parser. - * - * @return Twig_ExpressionParser The expression parser - */ - public function getExpressionParser() - { - return $this->expressionParser; - } - - public function getParent() - { - return $this->parent; - } - - public function setParent($parent) - { - $this->parent = $parent; - } - - /** - * Gets the token stream. - * - * @return Twig_TokenStream The token stream - */ - public function getStream() - { - return $this->stream; - } - - /** - * Gets the current token. - * - * @return Twig_Token The current token - */ - public function getCurrentToken() - { - return $this->stream->getCurrent(); - } - - protected function filterBodyNodes(Twig_NodeInterface $node) - { - // check that the body does not contain non-empty output nodes - if ( - ($node instanceof Twig_Node_Text && !ctype_space($node->getAttribute('data'))) - || - (!$node instanceof Twig_Node_Text && !$node instanceof Twig_Node_BlockReference && $node instanceof Twig_NodeOutputInterface) - ) { - if (false !== strpos((string) $node, chr(0xEF).chr(0xBB).chr(0xBF))) { - throw new Twig_Error_Syntax('A template that extends another one cannot have a body but a byte order mark (BOM) has been detected; it must be removed.', $node->getLine(), $this->getFilename()); - } - - throw new Twig_Error_Syntax('A template that extends another one cannot have a body.', $node->getLine(), $this->getFilename()); - } - - // bypass "set" nodes as they "capture" the output - if ($node instanceof Twig_Node_Set) { - return $node; - } - - if ($node instanceof Twig_NodeOutputInterface) { - return; - } - - foreach ($node as $k => $n) { - if (null !== $n && null === $n = $this->filterBodyNodes($n)) { - $node->removeNode($k); - } - } - - return $node; - } -} diff --git a/lib/Twig/ParserInterface.php b/lib/Twig/ParserInterface.php deleted file mode 100644 index f0d790097ecd6..0000000000000 --- a/lib/Twig/ParserInterface.php +++ /dev/null @@ -1,28 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -interface Twig_ParserInterface -{ - /** - * Converts a token stream to a node tree. - * - * @param Twig_TokenStream $stream A token stream instance - * - * @return Twig_Node_Module A node tree - */ - public function parse(Twig_TokenStream $stream); -} diff --git a/lib/Twig/Sandbox/SecurityError.php b/lib/Twig/Sandbox/SecurityError.php deleted file mode 100644 index 015bfaea22b6a..0000000000000 --- a/lib/Twig/Sandbox/SecurityError.php +++ /dev/null @@ -1,19 +0,0 @@ - - */ -class Twig_Sandbox_SecurityError extends Twig_Error -{ -} diff --git a/lib/Twig/Sandbox/SecurityPolicy.php b/lib/Twig/Sandbox/SecurityPolicy.php deleted file mode 100644 index 66ee233200b39..0000000000000 --- a/lib/Twig/Sandbox/SecurityPolicy.php +++ /dev/null @@ -1,119 +0,0 @@ - - */ -class Twig_Sandbox_SecurityPolicy implements Twig_Sandbox_SecurityPolicyInterface -{ - protected $allowedTags; - protected $allowedFilters; - protected $allowedMethods; - protected $allowedProperties; - protected $allowedFunctions; - - public function __construct(array $allowedTags = array(), array $allowedFilters = array(), array $allowedMethods = array(), array $allowedProperties = array(), array $allowedFunctions = array()) - { - $this->allowedTags = $allowedTags; - $this->allowedFilters = $allowedFilters; - $this->setAllowedMethods($allowedMethods); - $this->allowedProperties = $allowedProperties; - $this->allowedFunctions = $allowedFunctions; - } - - public function setAllowedTags(array $tags) - { - $this->allowedTags = $tags; - } - - public function setAllowedFilters(array $filters) - { - $this->allowedFilters = $filters; - } - - public function setAllowedMethods(array $methods) - { - $this->allowedMethods = array(); - foreach ($methods as $class => $m) { - $this->allowedMethods[$class] = array_map('strtolower', is_array($m) ? $m : array($m)); - } - } - - public function setAllowedProperties(array $properties) - { - $this->allowedProperties = $properties; - } - - public function setAllowedFunctions(array $functions) - { - $this->allowedFunctions = $functions; - } - - public function checkSecurity($tags, $filters, $functions) - { - foreach ($tags as $tag) { - if (!in_array($tag, $this->allowedTags)) { - throw new Twig_Sandbox_SecurityError(sprintf('Tag "%s" is not allowed.', $tag)); - } - } - - foreach ($filters as $filter) { - if (!in_array($filter, $this->allowedFilters)) { - throw new Twig_Sandbox_SecurityError(sprintf('Filter "%s" is not allowed.', $filter)); - } - } - - foreach ($functions as $function) { - if (!in_array($function, $this->allowedFunctions)) { - throw new Twig_Sandbox_SecurityError(sprintf('Function "%s" is not allowed.', $function)); - } - } - } - - public function checkMethodAllowed($obj, $method) - { - if ($obj instanceof Twig_TemplateInterface || $obj instanceof Twig_Markup) { - return true; - } - - $allowed = false; - $method = strtolower($method); - foreach ($this->allowedMethods as $class => $methods) { - if ($obj instanceof $class) { - $allowed = in_array($method, $methods); - - break; - } - } - - if (!$allowed) { - throw new Twig_Sandbox_SecurityError(sprintf('Calling "%s" method on a "%s" object is not allowed.', $method, get_class($obj))); - } - } - - public function checkPropertyAllowed($obj, $property) - { - $allowed = false; - foreach ($this->allowedProperties as $class => $properties) { - if ($obj instanceof $class) { - $allowed = in_array($property, is_array($properties) ? $properties : array($properties)); - - break; - } - } - - if (!$allowed) { - throw new Twig_Sandbox_SecurityError(sprintf('Calling "%s" property on a "%s" object is not allowed.', $property, get_class($obj))); - } - } -} diff --git a/lib/Twig/Sandbox/SecurityPolicyInterface.php b/lib/Twig/Sandbox/SecurityPolicyInterface.php deleted file mode 100644 index 6ab48e3cc98dc..0000000000000 --- a/lib/Twig/Sandbox/SecurityPolicyInterface.php +++ /dev/null @@ -1,24 +0,0 @@ - - */ -interface Twig_Sandbox_SecurityPolicyInterface -{ - public function checkSecurity($tags, $filters, $functions); - - public function checkMethodAllowed($obj, $method); - - public function checkPropertyAllowed($obj, $method); -} diff --git a/lib/Twig/SimpleFilter.php b/lib/Twig/SimpleFilter.php deleted file mode 100644 index a6bf60f80c557..0000000000000 --- a/lib/Twig/SimpleFilter.php +++ /dev/null @@ -1,96 +0,0 @@ - - */ -class Twig_SimpleFilter -{ - protected $name; - protected $callable; - protected $options; - protected $arguments = array(); - - public function __construct($name, $callable, array $options = array()) - { - $this->name = $name; - $this->callable = $callable; - $this->options = array_merge(array( - 'needs_environment' => false, - 'needs_context' => false, - 'is_safe' => null, - 'is_safe_callback' => null, - 'pre_escape' => null, - 'preserves_safety' => null, - 'node_class' => 'Twig_Node_Expression_Filter', - ), $options); - } - - public function getName() - { - return $this->name; - } - - public function getCallable() - { - return $this->callable; - } - - public function getNodeClass() - { - return $this->options['node_class']; - } - - public function setArguments($arguments) - { - $this->arguments = $arguments; - } - - public function getArguments() - { - return $this->arguments; - } - - public function needsEnvironment() - { - return $this->options['needs_environment']; - } - - public function needsContext() - { - return $this->options['needs_context']; - } - - public function getSafe(Twig_Node $filterArgs) - { - if (null !== $this->options['is_safe']) { - return $this->options['is_safe']; - } - - if (null !== $this->options['is_safe_callback']) { - return call_user_func($this->options['is_safe_callback'], $filterArgs); - } - - return null; - } - - public function getPreservesSafety() - { - return $this->options['preserves_safety']; - } - - public function getPreEscape() - { - return $this->options['pre_escape']; - } -} diff --git a/lib/Twig/SimpleFunction.php b/lib/Twig/SimpleFunction.php deleted file mode 100644 index 8ef6aca2ff520..0000000000000 --- a/lib/Twig/SimpleFunction.php +++ /dev/null @@ -1,84 +0,0 @@ - - */ -class Twig_SimpleFunction -{ - protected $name; - protected $callable; - protected $options; - protected $arguments = array(); - - public function __construct($name, $callable, array $options = array()) - { - $this->name = $name; - $this->callable = $callable; - $this->options = array_merge(array( - 'needs_environment' => false, - 'needs_context' => false, - 'is_safe' => null, - 'is_safe_callback' => null, - 'node_class' => 'Twig_Node_Expression_Function', - ), $options); - } - - public function getName() - { - return $this->name; - } - - public function getCallable() - { - return $this->callable; - } - - public function getNodeClass() - { - return $this->options['node_class']; - } - - public function setArguments($arguments) - { - $this->arguments = $arguments; - } - - public function getArguments() - { - return $this->arguments; - } - - public function needsEnvironment() - { - return $this->options['needs_environment']; - } - - public function needsContext() - { - return $this->options['needs_context']; - } - - public function getSafe(Twig_Node $functionArgs) - { - if (null !== $this->options['is_safe']) { - return $this->options['is_safe']; - } - - if (null !== $this->options['is_safe_callback']) { - return call_user_func($this->options['is_safe_callback'], $functionArgs); - } - - return array(); - } -} diff --git a/lib/Twig/SimpleTest.php b/lib/Twig/SimpleTest.php deleted file mode 100644 index 225459c9f1298..0000000000000 --- a/lib/Twig/SimpleTest.php +++ /dev/null @@ -1,46 +0,0 @@ - - */ -class Twig_SimpleTest -{ - protected $name; - protected $callable; - protected $options; - - public function __construct($name, $callable, array $options = array()) - { - $this->name = $name; - $this->callable = $callable; - $this->options = array_merge(array( - 'node_class' => 'Twig_Node_Expression_Test', - ), $options); - } - - public function getName() - { - return $this->name; - } - - public function getCallable() - { - return $this->callable; - } - - public function getNodeClass() - { - return $this->options['node_class']; - } -} diff --git a/lib/Twig/Template.php b/lib/Twig/Template.php deleted file mode 100644 index a001ca03706be..0000000000000 --- a/lib/Twig/Template.php +++ /dev/null @@ -1,455 +0,0 @@ - - */ -abstract class Twig_Template implements Twig_TemplateInterface -{ - protected static $cache = array(); - - protected $parent; - protected $parents; - protected $env; - protected $blocks; - protected $traits; - - /** - * Constructor. - * - * @param Twig_Environment $env A Twig_Environment instance - */ - public function __construct(Twig_Environment $env) - { - $this->env = $env; - $this->blocks = array(); - $this->traits = array(); - } - - /** - * Returns the template name. - * - * @return string The template name - */ - abstract public function getTemplateName(); - - /** - * {@inheritdoc} - */ - public function getEnvironment() - { - return $this->env; - } - - /** - * Returns the parent template. - * - * This method is for internal use only and should never be called - * directly. - * - * @return Twig_TemplateInterface|false The parent template or false if there is no parent - */ - public function getParent(array $context) - { - if (null !== $this->parent) { - return $this->parent; - } - - $parent = $this->doGetParent($context); - if (false === $parent) { - return false; - } elseif ($parent instanceof Twig_Template) { - $name = $parent->getTemplateName(); - $this->parents[$name] = $parent; - $parent = $name; - } elseif (!isset($this->parents[$parent])) { - $this->parents[$parent] = $this->env->loadTemplate($parent); - } - - return $this->parents[$parent]; - } - - protected function doGetParent(array $context) - { - return false; - } - - public function isTraitable() - { - return true; - } - - /** - * Displays a parent block. - * - * This method is for internal use only and should never be called - * directly. - * - * @param string $name The block name to display from the parent - * @param array $context The context - * @param array $blocks The current set of blocks - */ - public function displayParentBlock($name, array $context, array $blocks = array()) - { - $name = (string) $name; - - if (isset($this->traits[$name])) { - $this->traits[$name][0]->displayBlock($name, $context, $blocks); - } elseif (false !== $parent = $this->getParent($context)) { - $parent->displayBlock($name, $context, $blocks); - } else { - throw new Twig_Error_Runtime(sprintf('The template has no parent and no traits defining the "%s" block', $name), -1, $this->getTemplateName()); - } - } - - /** - * Displays a block. - * - * This method is for internal use only and should never be called - * directly. - * - * @param string $name The block name to display - * @param array $context The context - * @param array $blocks The current set of blocks - */ - public function displayBlock($name, array $context, array $blocks = array()) - { - $name = (string) $name; - - if (isset($blocks[$name])) { - $b = $blocks; - unset($b[$name]); - call_user_func($blocks[$name], $context, $b); - } elseif (isset($this->blocks[$name])) { - call_user_func($this->blocks[$name], $context, $blocks); - } elseif (false !== $parent = $this->getParent($context)) { - $parent->displayBlock($name, $context, array_merge($this->blocks, $blocks)); - } - } - - /** - * Renders a parent block. - * - * This method is for internal use only and should never be called - * directly. - * - * @param string $name The block name to render from the parent - * @param array $context The context - * @param array $blocks The current set of blocks - * - * @return string The rendered block - */ - public function renderParentBlock($name, array $context, array $blocks = array()) - { - ob_start(); - $this->displayParentBlock($name, $context, $blocks); - - return ob_get_clean(); - } - - /** - * Renders a block. - * - * This method is for internal use only and should never be called - * directly. - * - * @param string $name The block name to render - * @param array $context The context - * @param array $blocks The current set of blocks - * - * @return string The rendered block - */ - public function renderBlock($name, array $context, array $blocks = array()) - { - ob_start(); - $this->displayBlock($name, $context, $blocks); - - return ob_get_clean(); - } - - /** - * Returns whether a block exists or not. - * - * This method is for internal use only and should never be called - * directly. - * - * This method does only return blocks defined in the current template - * or defined in "used" traits. - * - * It does not return blocks from parent templates as the parent - * template name can be dynamic, which is only known based on the - * current context. - * - * @param string $name The block name - * - * @return Boolean true if the block exists, false otherwise - */ - public function hasBlock($name) - { - return isset($this->blocks[(string) $name]); - } - - /** - * Returns all block names. - * - * This method is for internal use only and should never be called - * directly. - * - * @return array An array of block names - * - * @see hasBlock - */ - public function getBlockNames() - { - return array_keys($this->blocks); - } - - /** - * Returns all blocks. - * - * This method is for internal use only and should never be called - * directly. - * - * @return array An array of blocks - * - * @see hasBlock - */ - public function getBlocks() - { - return $this->blocks; - } - - /** - * {@inheritdoc} - */ - public function display(array $context, array $blocks = array()) - { - $this->displayWithErrorHandling($this->env->mergeGlobals($context), $blocks); - } - - /** - * {@inheritdoc} - */ - public function render(array $context) - { - $level = ob_get_level(); - ob_start(); - try { - $this->display($context); - } catch (Exception $e) { - while (ob_get_level() > $level) { - ob_end_clean(); - } - - throw $e; - } - - return ob_get_clean(); - } - - protected function displayWithErrorHandling(array $context, array $blocks = array()) - { - try { - $this->doDisplay($context, $blocks); - } catch (Twig_Error $e) { - if (!$e->getTemplateFile()) { - $e->setTemplateFile($this->getTemplateName()); - } - - // this is mostly useful for Twig_Error_Loader exceptions - // see Twig_Error_Loader - if (false === $e->getTemplateLine()) { - $e->setTemplateLine(-1); - $e->guess(); - } - - throw $e; - } catch (Exception $e) { - throw new Twig_Error_Runtime(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, null, $e); - } - } - - /** - * Auto-generated method to display the template with the given context. - * - * @param array $context An array of parameters to pass to the template - * @param array $blocks An array of blocks to pass to the template - */ - abstract protected function doDisplay(array $context, array $blocks = array()); - - /** - * Returns a variable from the context. - * - * This method is for internal use only and should never be called - * directly. - * - * This method should not be overridden in a sub-class as this is an - * implementation detail that has been introduced to optimize variable - * access for versions of PHP before 5.4. This is not a way to override - * the way to get a variable value. - * - * @param array $context The context - * @param string $item The variable to return from the context - * @param Boolean $ignoreStrictCheck Whether to ignore the strict variable check or not - * - * @return The content of the context variable - * - * @throws Twig_Error_Runtime if the variable does not exist and Twig is running in strict mode - */ - final protected function getContext($context, $item, $ignoreStrictCheck = false) - { - if (!array_key_exists($item, $context)) { - if ($ignoreStrictCheck || !$this->env->isStrictVariables()) { - return null; - } - - throw new Twig_Error_Runtime(sprintf('Variable "%s" does not exist', $item), -1, $this->getTemplateName()); - } - - return $context[$item]; - } - - /** - * Returns the attribute value for a given array/object. - * - * @param mixed $object The object or array from where to get the item - * @param mixed $item The item to get from the array or object - * @param array $arguments An array of arguments to pass if the item is an object method - * @param string $type The type of attribute (@see Twig_TemplateInterface) - * @param Boolean $isDefinedTest Whether this is only a defined check - * @param Boolean $ignoreStrictCheck Whether to ignore the strict attribute check or not - * - * @return mixed The attribute value, or a Boolean when $isDefinedTest is true, or null when the attribute is not set and $ignoreStrictCheck is true - * - * @throws Twig_Error_Runtime if the attribute does not exist and Twig is running in strict mode and $isDefinedTest is false - */ - protected function getAttribute($object, $item, array $arguments = array(), $type = Twig_TemplateInterface::ANY_CALL, $isDefinedTest = false, $ignoreStrictCheck = false) - { - // array - if (Twig_TemplateInterface::METHOD_CALL !== $type) { - $arrayItem = is_bool($item) || is_float($item) ? (int) $item : $item; - - if ((is_array($object) && array_key_exists($arrayItem, $object)) - || ($object instanceof ArrayAccess && isset($object[$arrayItem])) - ) { - if ($isDefinedTest) { - return true; - } - - return $object[$arrayItem]; - } - - if (Twig_TemplateInterface::ARRAY_CALL === $type || !is_object($object)) { - if ($isDefinedTest) { - return false; - } - - if ($ignoreStrictCheck || !$this->env->isStrictVariables()) { - return null; - } - - if (is_object($object)) { - throw new Twig_Error_Runtime(sprintf('Key "%s" in object (with ArrayAccess) of type "%s" does not exist', $arrayItem, get_class($object)), -1, $this->getTemplateName()); - } elseif (is_array($object)) { - throw new Twig_Error_Runtime(sprintf('Key "%s" for array with keys "%s" does not exist', $arrayItem, implode(', ', array_keys($object))), -1, $this->getTemplateName()); - } elseif (Twig_TemplateInterface::ARRAY_CALL === $type) { - throw new Twig_Error_Runtime(sprintf('Impossible to access a key ("%s") on a %s variable ("%s")', $item, gettype($object), $object), -1, $this->getTemplateName()); - } else { - throw new Twig_Error_Runtime(sprintf('Impossible to access an attribute ("%s") on a %s variable ("%s")', $item, gettype($object), $object), -1, $this->getTemplateName()); - } - } - } - - if (!is_object($object)) { - if ($isDefinedTest) { - return false; - } - - if ($ignoreStrictCheck || !$this->env->isStrictVariables()) { - return null; - } - - throw new Twig_Error_Runtime(sprintf('Impossible to invoke a method ("%s") on a %s variable ("%s")', $item, gettype($object), $object), -1, $this->getTemplateName()); - } - - $class = get_class($object); - - // object property - if (Twig_TemplateInterface::METHOD_CALL !== $type) { - if (isset($object->$item) || array_key_exists((string) $item, $object)) { - if ($isDefinedTest) { - return true; - } - - if ($this->env->hasExtension('sandbox')) { - $this->env->getExtension('sandbox')->checkPropertyAllowed($object, $item); - } - - return $object->$item; - } - } - - // object method - if (!isset(self::$cache[$class]['methods'])) { - self::$cache[$class]['methods'] = array_change_key_case(array_flip(get_class_methods($object))); - } - - $lcItem = strtolower($item); - if (isset(self::$cache[$class]['methods'][$lcItem])) { - $method = (string) $item; - } elseif (isset(self::$cache[$class]['methods']['get'.$lcItem])) { - $method = 'get'.$item; - } elseif (isset(self::$cache[$class]['methods']['is'.$lcItem])) { - $method = 'is'.$item; - } elseif (isset(self::$cache[$class]['methods']['__call'])) { - $method = (string) $item; - } else { - if ($isDefinedTest) { - return false; - } - - if ($ignoreStrictCheck || !$this->env->isStrictVariables()) { - return null; - } - - throw new Twig_Error_Runtime(sprintf('Method "%s" for object "%s" does not exist', $item, get_class($object)), -1, $this->getTemplateName()); - } - - if ($isDefinedTest) { - return true; - } - - if ($this->env->hasExtension('sandbox')) { - $this->env->getExtension('sandbox')->checkMethodAllowed($object, $method); - } - - $ret = call_user_func_array(array($object, $method), $arguments); - - // useful when calling a template method from a template - // this is not supported but unfortunately heavily used in the Symfony profiler - if ($object instanceof Twig_TemplateInterface) { - return $ret === '' ? '' : new Twig_Markup($ret, $this->env->getCharset()); - } - - return $ret; - } - - /** - * This method is only useful when testing Twig. Do not use it. - */ - public static function clearCache() - { - self::$cache = array(); - } -} diff --git a/lib/Twig/TemplateInterface.php b/lib/Twig/TemplateInterface.php deleted file mode 100644 index 879f503ec1d39..0000000000000 --- a/lib/Twig/TemplateInterface.php +++ /dev/null @@ -1,47 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -interface Twig_TemplateInterface -{ - const ANY_CALL = 'any'; - const ARRAY_CALL = 'array'; - const METHOD_CALL = 'method'; - - /** - * Renders the template with the given context and returns it as string. - * - * @param array $context An array of parameters to pass to the template - * - * @return string The rendered template - */ - public function render(array $context); - - /** - * Displays the template with the given context. - * - * @param array $context An array of parameters to pass to the template - * @param array $blocks An array of blocks to pass to the template - */ - public function display(array $context, array $blocks = array()); - - /** - * Returns the bound environment for this template. - * - * @return Twig_Environment The current environment - */ - public function getEnvironment(); -} diff --git a/lib/Twig/Test.php b/lib/Twig/Test.php deleted file mode 100644 index 3baff88560fe9..0000000000000 --- a/lib/Twig/Test.php +++ /dev/null @@ -1,34 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -abstract class Twig_Test implements Twig_TestInterface, Twig_TestCallableInterface -{ - protected $options; - protected $arguments = array(); - - public function __construct(array $options = array()) - { - $this->options = array_merge(array( - 'callable' => null, - ), $options); - } - - public function getCallable() - { - return $this->options['callable']; - } -} diff --git a/lib/Twig/Test/Function.php b/lib/Twig/Test/Function.php deleted file mode 100644 index 4be6b9b924274..0000000000000 --- a/lib/Twig/Test/Function.php +++ /dev/null @@ -1,35 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -class Twig_Test_Function extends Twig_Test -{ - protected $function; - - public function __construct($function, array $options = array()) - { - $options['callable'] = $function; - - parent::__construct($options); - - $this->function = $function; - } - - public function compile() - { - return $this->function; - } -} diff --git a/lib/Twig/Test/IntegrationTestCase.php b/lib/Twig/Test/IntegrationTestCase.php deleted file mode 100644 index 724f09417801b..0000000000000 --- a/lib/Twig/Test/IntegrationTestCase.php +++ /dev/null @@ -1,154 +0,0 @@ - - * @author Karma Dordrak - */ -abstract class Twig_Test_IntegrationTestCase extends PHPUnit_Framework_TestCase -{ - abstract protected function getExtensions(); - abstract protected function getFixturesDir(); - - /** - * @dataProvider getTests - */ - public function testIntegration($file, $message, $condition, $templates, $exception, $outputs) - { - $this->doIntegrationTest($file, $message, $condition, $templates, $exception, $outputs); - } - - public function getTests() - { - $fixturesDir = realpath($this->getFixturesDir()); - $tests = array(); - - foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($fixturesDir), RecursiveIteratorIterator::LEAVES_ONLY) as $file) { - if (!preg_match('/\.test$/', $file)) { - continue; - } - - $test = file_get_contents($file->getRealpath()); - - if (preg_match('/ - --TEST--\s*(.*?)\s*(?:--CONDITION--\s*(.*))?\s*((?:--TEMPLATE(?:\(.*?\))?--(?:.*?))+)\s*(?:--DATA--\s*(.*))?\s*--EXCEPTION--\s*(.*)/sx', $test, $match)) { - $message = $match[1]; - $condition = $match[2]; - $templates = $this->parseTemplates($match[3]); - $exception = $match[5]; - $outputs = array(array(null, $match[4], null, '')); - } elseif (preg_match('/--TEST--\s*(.*?)\s*(?:--CONDITION--\s*(.*))?\s*((?:--TEMPLATE(?:\(.*?\))?--(?:.*?))+)--DATA--.*?--EXPECT--.*/s', $test, $match)) { - $message = $match[1]; - $condition = $match[2]; - $templates = $this->parseTemplates($match[3]); - $exception = false; - preg_match_all('/--DATA--(.*?)(?:--CONFIG--(.*?))?--EXPECT--(.*?)(?=\-\-DATA\-\-|$)/s', $test, $outputs, PREG_SET_ORDER); - } else { - throw new InvalidArgumentException(sprintf('Test "%s" is not valid.', str_replace($fixturesDir.'/', '', $file))); - } - - $tests[] = array(str_replace($fixturesDir.'/', '', $file), $message, $condition, $templates, $exception, $outputs); - } - - return $tests; - } - - protected function doIntegrationTest($file, $message, $condition, $templates, $exception, $outputs) - { - if ($condition) { - eval('$ret = '.$condition.';'); - if (!$ret) { - $this->markTestSkipped($condition); - } - } - - $loader = new Twig_Loader_Array($templates); - - foreach ($outputs as $match) { - $config = array_merge(array( - 'cache' => false, - 'strict_variables' => true, - ), $match[2] ? eval($match[2].';') : array()); - $twig = new Twig_Environment($loader, $config); - $twig->addGlobal('global', 'global'); - foreach ($this->getExtensions() as $extension) { - $twig->addExtension($extension); - } - - try { - $template = $twig->loadTemplate('index.twig'); - } catch (Exception $e) { - if (false !== $exception) { - $this->assertEquals(trim($exception), trim(sprintf('%s: %s', get_class($e), $e->getMessage()))); - - return; - } - - if ($e instanceof Twig_Error_Syntax) { - $e->setTemplateFile($file); - - throw $e; - } - - throw new Twig_Error(sprintf('%s: %s', get_class($e), $e->getMessage()), -1, $file, $e); - } - - try { - $output = trim($template->render(eval($match[1].';')), "\n "); - } catch (Exception $e) { - if (false !== $exception) { - $this->assertEquals(trim($exception), trim(sprintf('%s: %s', get_class($e), $e->getMessage()))); - - return; - } - - if ($e instanceof Twig_Error_Syntax) { - $e->setTemplateFile($file); - } else { - $e = new Twig_Error(sprintf('%s: %s', get_class($e), $e->getMessage()), -1, $file, $e); - } - - $output = trim(sprintf('%s: %s', get_class($e), $e->getMessage())); - } - - if (false !== $exception) { - list($class, ) = explode(':', $exception); - $this->assertThat(NULL, new PHPUnit_Framework_Constraint_Exception($class)); - } - - $expected = trim($match[3], "\n "); - - if ($expected != $output) { - echo 'Compiled template that failed:'; - - foreach (array_keys($templates) as $name) { - echo "Template: $name\n"; - $source = $loader->getSource($name); - echo $twig->compile($twig->parse($twig->tokenize($source, $name))); - } - } - $this->assertEquals($expected, $output, $message.' (in '.$file.')'); - } - } - - protected static function parseTemplates($test) - { - $templates = array(); - preg_match_all('/--TEMPLATE(?:\((.*?)\))?--(.*?)(?=\-\-TEMPLATE|$)/s', $test, $matches, PREG_SET_ORDER); - foreach ($matches as $match) { - $templates[($match[1] ? $match[1] : 'index.twig')] = $match[2]; - } - - return $templates; - } -} diff --git a/lib/Twig/Test/Method.php b/lib/Twig/Test/Method.php deleted file mode 100644 index 17c6c041d6255..0000000000000 --- a/lib/Twig/Test/Method.php +++ /dev/null @@ -1,37 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -class Twig_Test_Method extends Twig_Test -{ - protected $extension; - protected $method; - - public function __construct(Twig_ExtensionInterface $extension, $method, array $options = array()) - { - $options['callable'] = array($extension, $method); - - parent::__construct($options); - - $this->extension = $extension; - $this->method = $method; - } - - public function compile() - { - return sprintf('$this->env->getExtension(\'%s\')->%s', $this->extension->getName(), $this->method); - } -} diff --git a/lib/Twig/Test/Node.php b/lib/Twig/Test/Node.php deleted file mode 100644 index c832a57bf424e..0000000000000 --- a/lib/Twig/Test/Node.php +++ /dev/null @@ -1,37 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -class Twig_Test_Node extends Twig_Test -{ - protected $class; - - public function __construct($class, array $options = array()) - { - parent::__construct($options); - - $this->class = $class; - } - - public function getClass() - { - return $this->class; - } - - public function compile() - { - } -} diff --git a/lib/Twig/Test/NodeTestCase.php b/lib/Twig/Test/NodeTestCase.php deleted file mode 100644 index b15c85ffd7d61..0000000000000 --- a/lib/Twig/Test/NodeTestCase.php +++ /dev/null @@ -1,58 +0,0 @@ -assertNodeCompilation($source, $node, $environment); - } - - public function assertNodeCompilation($source, Twig_Node $node, Twig_Environment $environment = null) - { - $compiler = $this->getCompiler($environment); - $compiler->compile($node); - - $this->assertEquals($source, trim($compiler->getSource())); - } - - protected function getCompiler(Twig_Environment $environment = null) - { - return new Twig_Compiler(null === $environment ? $this->getEnvironment() : $environment); - } - - protected function getEnvironment() - { - return new Twig_Environment(); - } - - protected function getVariableGetter($name) - { - if (version_compare(phpversion(), '5.4.0RC1', '>=')) { - return sprintf('(isset($context["%s"]) ? $context["%s"] : null)', $name, $name); - } - - return sprintf('$this->getContext($context, "%s")', $name); - } - - protected function getAttributeGetter() - { - if (function_exists('twig_template_get_attributes')) { - return 'twig_template_get_attributes($this, '; - } - - return '$this->getAttribute('; - } -} diff --git a/lib/Twig/TestCallableInterface.php b/lib/Twig/TestCallableInterface.php deleted file mode 100644 index 0db43682d0420..0000000000000 --- a/lib/Twig/TestCallableInterface.php +++ /dev/null @@ -1,21 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -interface Twig_TestCallableInterface -{ - public function getCallable(); -} diff --git a/lib/Twig/TestInterface.php b/lib/Twig/TestInterface.php deleted file mode 100644 index 30d8a2c4f0a0f..0000000000000 --- a/lib/Twig/TestInterface.php +++ /dev/null @@ -1,26 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -interface Twig_TestInterface -{ - /** - * Compiles a test. - * - * @return string The PHP code for the test - */ - public function compile(); -} diff --git a/lib/Twig/Token.php b/lib/Twig/Token.php deleted file mode 100644 index bbca90dbbfdc8..0000000000000 --- a/lib/Twig/Token.php +++ /dev/null @@ -1,218 +0,0 @@ - - */ -class Twig_Token -{ - protected $value; - protected $type; - protected $lineno; - - const EOF_TYPE = -1; - const TEXT_TYPE = 0; - const BLOCK_START_TYPE = 1; - const VAR_START_TYPE = 2; - const BLOCK_END_TYPE = 3; - const VAR_END_TYPE = 4; - const NAME_TYPE = 5; - const NUMBER_TYPE = 6; - const STRING_TYPE = 7; - const OPERATOR_TYPE = 8; - const PUNCTUATION_TYPE = 9; - const INTERPOLATION_START_TYPE = 10; - const INTERPOLATION_END_TYPE = 11; - - /** - * Constructor. - * - * @param integer $type The type of the token - * @param string $value The token value - * @param integer $lineno The line position in the source - */ - public function __construct($type, $value, $lineno) - { - $this->type = $type; - $this->value = $value; - $this->lineno = $lineno; - } - - /** - * Returns a string representation of the token. - * - * @return string A string representation of the token - */ - public function __toString() - { - return sprintf('%s(%s)', self::typeToString($this->type, true, $this->lineno), $this->value); - } - - /** - * Tests the current token for a type and/or a value. - * - * Parameters may be: - * * just type - * * type and value (or array of possible values) - * * just value (or array of possible values) (NAME_TYPE is used as type) - * - * @param array|integer $type The type to test - * @param array|string|null $values The token value - * - * @return Boolean - */ - public function test($type, $values = null) - { - if (null === $values && !is_int($type)) { - $values = $type; - $type = self::NAME_TYPE; - } - - return ($this->type === $type) && ( - null === $values || - (is_array($values) && in_array($this->value, $values)) || - $this->value == $values - ); - } - - /** - * Gets the line. - * - * @return integer The source line - */ - public function getLine() - { - return $this->lineno; - } - - /** - * Gets the token type. - * - * @return integer The token type - */ - public function getType() - { - return $this->type; - } - - /** - * Gets the token value. - * - * @return string The token value - */ - public function getValue() - { - return $this->value; - } - - /** - * Returns the constant representation (internal) of a given type. - * - * @param integer $type The type as an integer - * @param Boolean $short Whether to return a short representation or not - * @param integer $line The code line - * - * @return string The string representation - */ - public static function typeToString($type, $short = false, $line = -1) - { - switch ($type) { - case self::EOF_TYPE: - $name = 'EOF_TYPE'; - break; - case self::TEXT_TYPE: - $name = 'TEXT_TYPE'; - break; - case self::BLOCK_START_TYPE: - $name = 'BLOCK_START_TYPE'; - break; - case self::VAR_START_TYPE: - $name = 'VAR_START_TYPE'; - break; - case self::BLOCK_END_TYPE: - $name = 'BLOCK_END_TYPE'; - break; - case self::VAR_END_TYPE: - $name = 'VAR_END_TYPE'; - break; - case self::NAME_TYPE: - $name = 'NAME_TYPE'; - break; - case self::NUMBER_TYPE: - $name = 'NUMBER_TYPE'; - break; - case self::STRING_TYPE: - $name = 'STRING_TYPE'; - break; - case self::OPERATOR_TYPE: - $name = 'OPERATOR_TYPE'; - break; - case self::PUNCTUATION_TYPE: - $name = 'PUNCTUATION_TYPE'; - break; - case self::INTERPOLATION_START_TYPE: - $name = 'INTERPOLATION_START_TYPE'; - break; - case self::INTERPOLATION_END_TYPE: - $name = 'INTERPOLATION_END_TYPE'; - break; - default: - throw new LogicException(sprintf('Token of type "%s" does not exist.', $type)); - } - - return $short ? $name : 'Twig_Token::'.$name; - } - - /** - * Returns the english representation of a given type. - * - * @param integer $type The type as an integer - * @param integer $line The code line - * - * @return string The string representation - */ - public static function typeToEnglish($type, $line = -1) - { - switch ($type) { - case self::EOF_TYPE: - return 'end of template'; - case self::TEXT_TYPE: - return 'text'; - case self::BLOCK_START_TYPE: - return 'begin of statement block'; - case self::VAR_START_TYPE: - return 'begin of print statement'; - case self::BLOCK_END_TYPE: - return 'end of statement block'; - case self::VAR_END_TYPE: - return 'end of print statement'; - case self::NAME_TYPE: - return 'name'; - case self::NUMBER_TYPE: - return 'number'; - case self::STRING_TYPE: - return 'string'; - case self::OPERATOR_TYPE: - return 'operator'; - case self::PUNCTUATION_TYPE: - return 'punctuation'; - case self::INTERPOLATION_START_TYPE: - return 'begin of string interpolation'; - case self::INTERPOLATION_END_TYPE: - return 'end of string interpolation'; - default: - throw new LogicException(sprintf('Token of type "%s" does not exist.', $type)); - } - } -} diff --git a/lib/Twig/TokenParser.php b/lib/Twig/TokenParser.php deleted file mode 100644 index decebd5eead68..0000000000000 --- a/lib/Twig/TokenParser.php +++ /dev/null @@ -1,33 +0,0 @@ - - */ -abstract class Twig_TokenParser implements Twig_TokenParserInterface -{ - /** - * @var Twig_Parser - */ - protected $parser; - - /** - * Sets the parser associated with this token parser - * - * @param $parser A Twig_Parser instance - */ - public function setParser(Twig_Parser $parser) - { - $this->parser = $parser; - } -} diff --git a/lib/Twig/TokenParser/AutoEscape.php b/lib/Twig/TokenParser/AutoEscape.php deleted file mode 100644 index 27560288391dc..0000000000000 --- a/lib/Twig/TokenParser/AutoEscape.php +++ /dev/null @@ -1,89 +0,0 @@ - - * {% autoescape true %} - * Everything will be automatically escaped in this block - * {% endautoescape %} - * - * {% autoescape false %} - * Everything will be outputed as is in this block - * {% endautoescape %} - * - * {% autoescape true js %} - * Everything will be automatically escaped in this block - * using the js escaping strategy - * {% endautoescape %} - * - */ -class Twig_TokenParser_AutoEscape extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $lineno = $token->getLine(); - $stream = $this->parser->getStream(); - - if ($stream->test(Twig_Token::BLOCK_END_TYPE)) { - $value = 'html'; - } else { - $expr = $this->parser->getExpressionParser()->parseExpression(); - if (!$expr instanceof Twig_Node_Expression_Constant) { - throw new Twig_Error_Syntax('An escaping strategy must be a string or a Boolean.', $stream->getCurrent()->getLine(), $stream->getFilename()); - } - $value = $expr->getAttribute('value'); - - $compat = true === $value || false === $value; - - if (true === $value) { - $value = 'html'; - } - - if ($compat && $stream->test(Twig_Token::NAME_TYPE)) { - if (false === $value) { - throw new Twig_Error_Syntax('Unexpected escaping strategy as you set autoescaping to false.', $stream->getCurrent()->getLine(), $stream->getFilename()); - } - - $value = $stream->next()->getValue(); - } - } - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - $body = $this->parser->subparse(array($this, 'decideBlockEnd'), true); - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - return new Twig_Node_AutoEscape($value, $body, $lineno, $this->getTag()); - } - - public function decideBlockEnd(Twig_Token $token) - { - return $token->test('endautoescape'); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'autoescape'; - } -} diff --git a/lib/Twig/TokenParser/Block.php b/lib/Twig/TokenParser/Block.php deleted file mode 100644 index a2e017f3e884f..0000000000000 --- a/lib/Twig/TokenParser/Block.php +++ /dev/null @@ -1,83 +0,0 @@ - - * {% block head %} - * - * {% block title %}{% endblock %} - My Webpage - * {% endblock %} - * - */ -class Twig_TokenParser_Block extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $lineno = $token->getLine(); - $stream = $this->parser->getStream(); - $name = $stream->expect(Twig_Token::NAME_TYPE)->getValue(); - if ($this->parser->hasBlock($name)) { - throw new Twig_Error_Syntax(sprintf("The block '$name' has already been defined line %d", $this->parser->getBlock($name)->getLine()), $stream->getCurrent()->getLine(), $stream->getFilename()); - } - $this->parser->setBlock($name, $block = new Twig_Node_Block($name, new Twig_Node(array()), $lineno)); - $this->parser->pushLocalScope(); - $this->parser->pushBlockStack($name); - - if ($stream->test(Twig_Token::BLOCK_END_TYPE)) { - $stream->next(); - - $body = $this->parser->subparse(array($this, 'decideBlockEnd'), true); - if ($stream->test(Twig_Token::NAME_TYPE)) { - $value = $stream->next()->getValue(); - - if ($value != $name) { - throw new Twig_Error_Syntax(sprintf("Expected endblock for block '$name' (but %s given)", $value), $stream->getCurrent()->getLine(), $stream->getFilename()); - } - } - } else { - $body = new Twig_Node(array( - new Twig_Node_Print($this->parser->getExpressionParser()->parseExpression(), $lineno), - )); - } - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - $block->setNode('body', $body); - $this->parser->popBlockStack(); - $this->parser->popLocalScope(); - - return new Twig_Node_BlockReference($name, $lineno, $this->getTag()); - } - - public function decideBlockEnd(Twig_Token $token) - { - return $token->test('endblock'); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'block'; - } -} diff --git a/lib/Twig/TokenParser/Do.php b/lib/Twig/TokenParser/Do.php deleted file mode 100644 index f50939dd214e1..0000000000000 --- a/lib/Twig/TokenParser/Do.php +++ /dev/null @@ -1,42 +0,0 @@ -parser->getExpressionParser()->parseExpression(); - - $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - - return new Twig_Node_Do($expr, $token->getLine(), $this->getTag()); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'do'; - } -} diff --git a/lib/Twig/TokenParser/Embed.php b/lib/Twig/TokenParser/Embed.php deleted file mode 100644 index 69cb5f35ff810..0000000000000 --- a/lib/Twig/TokenParser/Embed.php +++ /dev/null @@ -1,66 +0,0 @@ -parser->getStream(); - - $parent = $this->parser->getExpressionParser()->parseExpression(); - - list($variables, $only, $ignoreMissing) = $this->parseArguments(); - - // inject a fake parent to make the parent() function work - $stream->injectTokens(array( - new Twig_Token(Twig_Token::BLOCK_START_TYPE, '', $token->getLine()), - new Twig_Token(Twig_Token::NAME_TYPE, 'extends', $token->getLine()), - new Twig_Token(Twig_Token::STRING_TYPE, '__parent__', $token->getLine()), - new Twig_Token(Twig_Token::BLOCK_END_TYPE, '', $token->getLine()), - )); - - $module = $this->parser->parse($stream, array($this, 'decideBlockEnd'), true); - - // override the parent with the correct one - $module->setNode('parent', $parent); - - $this->parser->embedTemplate($module); - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - return new Twig_Node_Embed($module->getAttribute('filename'), $module->getAttribute('index'), $variables, $only, $ignoreMissing, $token->getLine(), $this->getTag()); - } - - public function decideBlockEnd(Twig_Token $token) - { - return $token->test('endembed'); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'embed'; - } -} diff --git a/lib/Twig/TokenParser/Extends.php b/lib/Twig/TokenParser/Extends.php deleted file mode 100644 index 110bc8b458ef3..0000000000000 --- a/lib/Twig/TokenParser/Extends.php +++ /dev/null @@ -1,54 +0,0 @@ - - * {% extends "base.html" %} - * - */ -class Twig_TokenParser_Extends extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - if (!$this->parser->isMainScope()) { - throw new Twig_Error_Syntax('Cannot extend from a block', $token->getLine(), $this->parser->getFilename()); - } - - if (null !== $this->parser->getParent()) { - throw new Twig_Error_Syntax('Multiple extends tags are forbidden', $token->getLine(), $this->parser->getFilename()); - } - $this->parser->setParent($this->parser->getExpressionParser()->parseExpression()); - - $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - - return null; - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'extends'; - } -} diff --git a/lib/Twig/TokenParser/Filter.php b/lib/Twig/TokenParser/Filter.php deleted file mode 100644 index 2b97475aea151..0000000000000 --- a/lib/Twig/TokenParser/Filter.php +++ /dev/null @@ -1,61 +0,0 @@ - - * {% filter upper %} - * This text becomes uppercase - * {% endfilter %} - * - */ -class Twig_TokenParser_Filter extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $name = $this->parser->getVarName(); - $ref = new Twig_Node_Expression_BlockReference(new Twig_Node_Expression_Constant($name, $token->getLine()), true, $token->getLine(), $this->getTag()); - - $filter = $this->parser->getExpressionParser()->parseFilterExpressionRaw($ref, $this->getTag()); - $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - - $body = $this->parser->subparse(array($this, 'decideBlockEnd'), true); - $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - - $block = new Twig_Node_Block($name, $body, $token->getLine()); - $this->parser->setBlock($name, $block); - - return new Twig_Node_Print($filter, $token->getLine(), $this->getTag()); - } - - public function decideBlockEnd(Twig_Token $token) - { - return $token->test('endfilter'); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'filter'; - } -} diff --git a/lib/Twig/TokenParser/Flush.php b/lib/Twig/TokenParser/Flush.php deleted file mode 100644 index 4e15e78538462..0000000000000 --- a/lib/Twig/TokenParser/Flush.php +++ /dev/null @@ -1,42 +0,0 @@ -parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - - return new Twig_Node_Flush($token->getLine(), $this->getTag()); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'flush'; - } -} diff --git a/lib/Twig/TokenParser/For.php b/lib/Twig/TokenParser/For.php deleted file mode 100644 index 98a6d079d169c..0000000000000 --- a/lib/Twig/TokenParser/For.php +++ /dev/null @@ -1,136 +0,0 @@ - - *
      - * {% for user in users %} - *
    • {{ user.username|e }}
    • - * {% endfor %} - *
    - * - */ -class Twig_TokenParser_For extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $lineno = $token->getLine(); - $stream = $this->parser->getStream(); - $targets = $this->parser->getExpressionParser()->parseAssignmentExpression(); - $stream->expect(Twig_Token::OPERATOR_TYPE, 'in'); - $seq = $this->parser->getExpressionParser()->parseExpression(); - - $ifexpr = null; - if ($stream->test(Twig_Token::NAME_TYPE, 'if')) { - $stream->next(); - $ifexpr = $this->parser->getExpressionParser()->parseExpression(); - } - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - $body = $this->parser->subparse(array($this, 'decideForFork')); - if ($stream->next()->getValue() == 'else') { - $stream->expect(Twig_Token::BLOCK_END_TYPE); - $else = $this->parser->subparse(array($this, 'decideForEnd'), true); - } else { - $else = null; - } - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - if (count($targets) > 1) { - $keyTarget = $targets->getNode(0); - $keyTarget = new Twig_Node_Expression_AssignName($keyTarget->getAttribute('name'), $keyTarget->getLine()); - $valueTarget = $targets->getNode(1); - $valueTarget = new Twig_Node_Expression_AssignName($valueTarget->getAttribute('name'), $valueTarget->getLine()); - } else { - $keyTarget = new Twig_Node_Expression_AssignName('_key', $lineno); - $valueTarget = $targets->getNode(0); - $valueTarget = new Twig_Node_Expression_AssignName($valueTarget->getAttribute('name'), $valueTarget->getLine()); - } - - if ($ifexpr) { - $this->checkLoopUsageCondition($stream, $ifexpr); - $this->checkLoopUsageBody($stream, $body); - } - - return new Twig_Node_For($keyTarget, $valueTarget, $seq, $ifexpr, $body, $else, $lineno, $this->getTag()); - } - - public function decideForFork(Twig_Token $token) - { - return $token->test(array('else', 'endfor')); - } - - public function decideForEnd(Twig_Token $token) - { - return $token->test('endfor'); - } - - // the loop variable cannot be used in the condition - protected function checkLoopUsageCondition(Twig_TokenStream $stream, Twig_NodeInterface $node) - { - if ($node instanceof Twig_Node_Expression_GetAttr && $node->getNode('node') instanceof Twig_Node_Expression_Name && 'loop' == $node->getNode('node')->getAttribute('name')) { - throw new Twig_Error_Syntax('The "loop" variable cannot be used in a looping condition', $node->getLine(), $stream->getFilename()); - } - - foreach ($node as $n) { - if (!$n) { - continue; - } - - $this->checkLoopUsageCondition($stream, $n); - } - } - - // check usage of non-defined loop-items - // it does not catch all problems (for instance when a for is included into another or when the variable is used in an include) - protected function checkLoopUsageBody(Twig_TokenStream $stream, Twig_NodeInterface $node) - { - if ($node instanceof Twig_Node_Expression_GetAttr && $node->getNode('node') instanceof Twig_Node_Expression_Name && 'loop' == $node->getNode('node')->getAttribute('name')) { - $attribute = $node->getNode('attribute'); - if ($attribute instanceof Twig_Node_Expression_Constant && in_array($attribute->getAttribute('value'), array('length', 'revindex0', 'revindex', 'last'))) { - throw new Twig_Error_Syntax(sprintf('The "loop.%s" variable is not defined when looping with a condition', $attribute->getAttribute('value')), $node->getLine(), $stream->getFilename()); - } - } - - // should check for parent.loop.XXX usage - if ($node instanceof Twig_Node_For) { - return; - } - - foreach ($node as $n) { - if (!$n) { - continue; - } - - $this->checkLoopUsageBody($stream, $n); - } - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'for'; - } -} diff --git a/lib/Twig/TokenParser/From.php b/lib/Twig/TokenParser/From.php deleted file mode 100644 index a54054dbc942c..0000000000000 --- a/lib/Twig/TokenParser/From.php +++ /dev/null @@ -1,74 +0,0 @@ - - * {% from 'forms.html' import forms %} - * - */ -class Twig_TokenParser_From extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $macro = $this->parser->getExpressionParser()->parseExpression(); - $stream = $this->parser->getStream(); - $stream->expect('import'); - - $targets = array(); - do { - $name = $stream->expect(Twig_Token::NAME_TYPE)->getValue(); - - $alias = $name; - if ($stream->test('as')) { - $stream->next(); - - $alias = $stream->expect(Twig_Token::NAME_TYPE)->getValue(); - } - - $targets[$name] = $alias; - - if (!$stream->test(Twig_Token::PUNCTUATION_TYPE, ',')) { - break; - } - - $stream->next(); - } while (true); - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - $node = new Twig_Node_Import($macro, new Twig_Node_Expression_AssignName($this->parser->getVarName(), $token->getLine()), $token->getLine(), $this->getTag()); - - foreach ($targets as $name => $alias) { - $this->parser->addImportedSymbol('function', $alias, 'get'.$name, $node->getNode('var')); - } - - return $node; - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'from'; - } -} diff --git a/lib/Twig/TokenParser/If.php b/lib/Twig/TokenParser/If.php deleted file mode 100644 index 3d7d1f517f936..0000000000000 --- a/lib/Twig/TokenParser/If.php +++ /dev/null @@ -1,94 +0,0 @@ - - * {% if users %} - *
      - * {% for user in users %} - *
    • {{ user.username|e }}
    • - * {% endfor %} - *
    - * {% endif %} - * - */ -class Twig_TokenParser_If extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $lineno = $token->getLine(); - $expr = $this->parser->getExpressionParser()->parseExpression(); - $stream = $this->parser->getStream(); - $stream->expect(Twig_Token::BLOCK_END_TYPE); - $body = $this->parser->subparse(array($this, 'decideIfFork')); - $tests = array($expr, $body); - $else = null; - - $end = false; - while (!$end) { - switch ($stream->next()->getValue()) { - case 'else': - $stream->expect(Twig_Token::BLOCK_END_TYPE); - $else = $this->parser->subparse(array($this, 'decideIfEnd')); - break; - - case 'elseif': - $expr = $this->parser->getExpressionParser()->parseExpression(); - $stream->expect(Twig_Token::BLOCK_END_TYPE); - $body = $this->parser->subparse(array($this, 'decideIfFork')); - $tests[] = $expr; - $tests[] = $body; - break; - - case 'endif': - $end = true; - break; - - default: - throw new Twig_Error_Syntax(sprintf('Unexpected end of template. Twig was looking for the following tags "else", "elseif", or "endif" to close the "if" block started at line %d)', $lineno), $stream->getCurrent()->getLine(), $stream->getFilename()); - } - } - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - return new Twig_Node_If(new Twig_Node($tests), $else, $lineno, $this->getTag()); - } - - public function decideIfFork(Twig_Token $token) - { - return $token->test(array('elseif', 'else', 'endif')); - } - - public function decideIfEnd(Twig_Token $token) - { - return $token->test(array('endif')); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'if'; - } -} diff --git a/lib/Twig/TokenParser/Import.php b/lib/Twig/TokenParser/Import.php deleted file mode 100644 index e7050c70c6e81..0000000000000 --- a/lib/Twig/TokenParser/Import.php +++ /dev/null @@ -1,49 +0,0 @@ - - * {% import 'forms.html' as forms %} - * - */ -class Twig_TokenParser_Import extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $macro = $this->parser->getExpressionParser()->parseExpression(); - $this->parser->getStream()->expect('as'); - $var = new Twig_Node_Expression_AssignName($this->parser->getStream()->expect(Twig_Token::NAME_TYPE)->getValue(), $token->getLine()); - $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - - $this->parser->addImportedSymbol('template', $var->getAttribute('name')); - - return new Twig_Node_Import($macro, $var, $token->getLine(), $this->getTag()); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'import'; - } -} diff --git a/lib/Twig/TokenParser/Include.php b/lib/Twig/TokenParser/Include.php deleted file mode 100644 index 4a317868f3e3a..0000000000000 --- a/lib/Twig/TokenParser/Include.php +++ /dev/null @@ -1,80 +0,0 @@ - - * {% include 'header.html' %} - * Body - * {% include 'footer.html' %} - * - */ -class Twig_TokenParser_Include extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $expr = $this->parser->getExpressionParser()->parseExpression(); - - list($variables, $only, $ignoreMissing) = $this->parseArguments(); - - return new Twig_Node_Include($expr, $variables, $only, $ignoreMissing, $token->getLine(), $this->getTag()); - } - - protected function parseArguments() - { - $stream = $this->parser->getStream(); - - $ignoreMissing = false; - if ($stream->test(Twig_Token::NAME_TYPE, 'ignore')) { - $stream->next(); - $stream->expect(Twig_Token::NAME_TYPE, 'missing'); - - $ignoreMissing = true; - } - - $variables = null; - if ($stream->test(Twig_Token::NAME_TYPE, 'with')) { - $stream->next(); - - $variables = $this->parser->getExpressionParser()->parseExpression(); - } - - $only = false; - if ($stream->test(Twig_Token::NAME_TYPE, 'only')) { - $stream->next(); - - $only = true; - } - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - return array($variables, $only, $ignoreMissing); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'include'; - } -} diff --git a/lib/Twig/TokenParser/Macro.php b/lib/Twig/TokenParser/Macro.php deleted file mode 100644 index c2a033608d32b..0000000000000 --- a/lib/Twig/TokenParser/Macro.php +++ /dev/null @@ -1,70 +0,0 @@ - - * {% macro input(name, value, type, size) %} - * - * {% endmacro %} - * - */ -class Twig_TokenParser_Macro extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $lineno = $token->getLine(); - $stream = $this->parser->getStream(); - $name = $stream->expect(Twig_Token::NAME_TYPE)->getValue(); - - $arguments = $this->parser->getExpressionParser()->parseArguments(true, true); - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - $this->parser->pushLocalScope(); - $body = $this->parser->subparse(array($this, 'decideBlockEnd'), true); - if ($stream->test(Twig_Token::NAME_TYPE)) { - $value = $stream->next()->getValue(); - - if ($value != $name) { - throw new Twig_Error_Syntax(sprintf("Expected endmacro for macro '$name' (but %s given)", $value), $stream->getCurrent()->getLine(), $stream->getFilename()); - } - } - $this->parser->popLocalScope(); - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - $this->parser->setMacro($name, new Twig_Node_Macro($name, new Twig_Node_Body(array($body)), $arguments, $lineno, $this->getTag())); - - return null; - } - - public function decideBlockEnd(Twig_Token $token) - { - return $token->test('endmacro'); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'macro'; - } -} diff --git a/lib/Twig/TokenParser/Sandbox.php b/lib/Twig/TokenParser/Sandbox.php deleted file mode 100644 index 9457325ab4556..0000000000000 --- a/lib/Twig/TokenParser/Sandbox.php +++ /dev/null @@ -1,68 +0,0 @@ - - * {% sandbox %} - * {% include 'user.html' %} - * {% endsandbox %} - * - * - * @see http://www.twig-project.org/doc/api.html#sandbox-extension for details - */ -class Twig_TokenParser_Sandbox extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - $body = $this->parser->subparse(array($this, 'decideBlockEnd'), true); - $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - - // in a sandbox tag, only include tags are allowed - if (!$body instanceof Twig_Node_Include) { - foreach ($body as $node) { - if ($node instanceof Twig_Node_Text && ctype_space($node->getAttribute('data'))) { - continue; - } - - if (!$node instanceof Twig_Node_Include) { - throw new Twig_Error_Syntax('Only "include" tags are allowed within a "sandbox" section', $node->getLine(), $this->parser->getFilename()); - } - } - } - - return new Twig_Node_Sandbox($body, $token->getLine(), $this->getTag()); - } - - public function decideBlockEnd(Twig_Token $token) - { - return $token->test('endsandbox'); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'sandbox'; - } -} diff --git a/lib/Twig/TokenParser/Set.php b/lib/Twig/TokenParser/Set.php deleted file mode 100644 index 70e0b41baeeef..0000000000000 --- a/lib/Twig/TokenParser/Set.php +++ /dev/null @@ -1,84 +0,0 @@ - - * {% set foo = 'foo' %} - * - * {% set foo = [1, 2] %} - * - * {% set foo = {'foo': 'bar'} %} - * - * {% set foo = 'foo' ~ 'bar' %} - * - * {% set foo, bar = 'foo', 'bar' %} - * - * {% set foo %}Some content{% endset %} - * - */ -class Twig_TokenParser_Set extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $lineno = $token->getLine(); - $stream = $this->parser->getStream(); - $names = $this->parser->getExpressionParser()->parseAssignmentExpression(); - - $capture = false; - if ($stream->test(Twig_Token::OPERATOR_TYPE, '=')) { - $stream->next(); - $values = $this->parser->getExpressionParser()->parseMultitargetExpression(); - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - if (count($names) !== count($values)) { - throw new Twig_Error_Syntax("When using set, you must have the same number of variables and assignments.", $stream->getCurrent()->getLine(), $stream->getFilename()); - } - } else { - $capture = true; - - if (count($names) > 1) { - throw new Twig_Error_Syntax("When using set with a block, you cannot have a multi-target.", $stream->getCurrent()->getLine(), $stream->getFilename()); - } - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - $values = $this->parser->subparse(array($this, 'decideBlockEnd'), true); - $stream->expect(Twig_Token::BLOCK_END_TYPE); - } - - return new Twig_Node_Set($capture, $names, $values, $lineno, $this->getTag()); - } - - public function decideBlockEnd(Twig_Token $token) - { - return $token->test('endset'); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'set'; - } -} diff --git a/lib/Twig/TokenParser/Spaceless.php b/lib/Twig/TokenParser/Spaceless.php deleted file mode 100644 index 1e3fa8f3edd97..0000000000000 --- a/lib/Twig/TokenParser/Spaceless.php +++ /dev/null @@ -1,59 +0,0 @@ - - * {% spaceless %} - *
    - * foo - *
    - * {% endspaceless %} - * - * {# output will be
    foo
    #} - * - */ -class Twig_TokenParser_Spaceless extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $lineno = $token->getLine(); - - $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - $body = $this->parser->subparse(array($this, 'decideSpacelessEnd'), true); - $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE); - - return new Twig_Node_Spaceless($body, $lineno, $this->getTag()); - } - - public function decideSpacelessEnd(Twig_Token $token) - { - return $token->test('endspaceless'); - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'spaceless'; - } -} diff --git a/lib/Twig/TokenParser/Use.php b/lib/Twig/TokenParser/Use.php deleted file mode 100644 index 85f084a528363..0000000000000 --- a/lib/Twig/TokenParser/Use.php +++ /dev/null @@ -1,84 +0,0 @@ - - * {% extends "base.html" %} - * - * {% use "blocks.html" %} - * - * {% block title %}{% endblock %} - * {% block content %}{% endblock %} - * - * - * @see http://www.twig-project.org/doc/templates.html#horizontal-reuse for details. - */ -class Twig_TokenParser_Use extends Twig_TokenParser -{ - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token) - { - $template = $this->parser->getExpressionParser()->parseExpression(); - $stream = $this->parser->getStream(); - - if (!$template instanceof Twig_Node_Expression_Constant) { - throw new Twig_Error_Syntax('The template references in a "use" statement must be a string.', $stream->getCurrent()->getLine(), $stream->getFilename()); - } - - $targets = array(); - if ($stream->test('with')) { - $stream->next(); - - do { - $name = $stream->expect(Twig_Token::NAME_TYPE)->getValue(); - - $alias = $name; - if ($stream->test('as')) { - $stream->next(); - - $alias = $stream->expect(Twig_Token::NAME_TYPE)->getValue(); - } - - $targets[$name] = new Twig_Node_Expression_Constant($alias, -1); - - if (!$stream->test(Twig_Token::PUNCTUATION_TYPE, ',')) { - break; - } - - $stream->next(); - } while (true); - } - - $stream->expect(Twig_Token::BLOCK_END_TYPE); - - $this->parser->addTrait(new Twig_Node(array('template' => $template, 'targets' => new Twig_Node($targets)))); - - return null; - } - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag() - { - return 'use'; - } -} diff --git a/lib/Twig/TokenParserBroker.php b/lib/Twig/TokenParserBroker.php deleted file mode 100644 index 9518c7c8a2af8..0000000000000 --- a/lib/Twig/TokenParserBroker.php +++ /dev/null @@ -1,138 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -class Twig_TokenParserBroker implements Twig_TokenParserBrokerInterface -{ - protected $parser; - protected $parsers = array(); - protected $brokers = array(); - - /** - * Constructor. - * - * @param array|Traversable $parsers A Traversable of Twig_TokenParserInterface instances - * @param array|Traversable $brokers A Traversable of Twig_TokenParserBrokerInterface instances - */ - public function __construct($parsers = array(), $brokers = array()) - { - foreach ($parsers as $parser) { - if (!$parser instanceof Twig_TokenParserInterface) { - throw new LogicException('$parsers must a an array of Twig_TokenParserInterface'); - } - $this->parsers[$parser->getTag()] = $parser; - } - foreach ($brokers as $broker) { - if (!$broker instanceof Twig_TokenParserBrokerInterface) { - throw new LogicException('$brokers must a an array of Twig_TokenParserBrokerInterface'); - } - $this->brokers[] = $broker; - } - } - - /** - * Adds a TokenParser. - * - * @param Twig_TokenParserInterface $parser A Twig_TokenParserInterface instance - */ - public function addTokenParser(Twig_TokenParserInterface $parser) - { - $this->parsers[$parser->getTag()] = $parser; - } - - /** - * Removes a TokenParser. - * - * @param Twig_TokenParserInterface $parser A Twig_TokenParserInterface instance - */ - public function removeTokenParser(Twig_TokenParserInterface $parser) - { - $name = $parser->getTag(); - if (isset($this->parsers[$name]) && $parser === $this->parsers[$name]) { - unset($this->parsers[$name]); - } - } - - /** - * Adds a TokenParserBroker. - * - * @param Twig_TokenParserBroker $broker A Twig_TokenParserBroker instance - */ - public function addTokenParserBroker(Twig_TokenParserBroker $broker) - { - $this->brokers[] = $broker; - } - - /** - * Removes a TokenParserBroker. - * - * @param Twig_TokenParserBroker $broker A Twig_TokenParserBroker instance - */ - public function removeTokenParserBroker(Twig_TokenParserBroker $broker) - { - if (false !== $pos = array_search($broker, $this->brokers)) { - unset($this->brokers[$pos]); - } - } - - /** - * Gets a suitable TokenParser for a tag. - * - * First looks in parsers, then in brokers. - * - * @param string $tag A tag name - * - * @return null|Twig_TokenParserInterface A Twig_TokenParserInterface or null if no suitable TokenParser was found - */ - public function getTokenParser($tag) - { - if (isset($this->parsers[$tag])) { - return $this->parsers[$tag]; - } - $broker = end($this->brokers); - while (false !== $broker) { - $parser = $broker->getTokenParser($tag); - if (null !== $parser) { - return $parser; - } - $broker = prev($this->brokers); - } - - return null; - } - - public function getParsers() - { - return $this->parsers; - } - - public function getParser() - { - return $this->parser; - } - - public function setParser(Twig_ParserInterface $parser) - { - $this->parser = $parser; - foreach ($this->parsers as $tokenParser) { - $tokenParser->setParser($parser); - } - foreach ($this->brokers as $broker) { - $broker->setParser($parser); - } - } -} diff --git a/lib/Twig/TokenParserBrokerInterface.php b/lib/Twig/TokenParserBrokerInterface.php deleted file mode 100644 index 3f006e339bf92..0000000000000 --- a/lib/Twig/TokenParserBrokerInterface.php +++ /dev/null @@ -1,45 +0,0 @@ - - * @deprecated since 1.12 (to be removed in 2.0) - */ -interface Twig_TokenParserBrokerInterface -{ - /** - * Gets a TokenParser suitable for a tag. - * - * @param string $tag A tag name - * - * @return null|Twig_TokenParserInterface A Twig_TokenParserInterface or null if no suitable TokenParser was found - */ - public function getTokenParser($tag); - - /** - * Calls Twig_TokenParserInterface::setParser on all parsers the implementation knows of. - * - * @param Twig_ParserInterface $parser A Twig_ParserInterface interface - */ - public function setParser(Twig_ParserInterface $parser); - - /** - * Gets the Twig_ParserInterface. - * - * @return null|Twig_ParserInterface A Twig_ParserInterface instance or null - */ - public function getParser(); -} diff --git a/lib/Twig/TokenParserInterface.php b/lib/Twig/TokenParserInterface.php deleted file mode 100644 index bbde771410306..0000000000000 --- a/lib/Twig/TokenParserInterface.php +++ /dev/null @@ -1,41 +0,0 @@ - - */ -interface Twig_TokenParserInterface -{ - /** - * Sets the parser associated with this token parser - * - * @param $parser A Twig_Parser instance - */ - public function setParser(Twig_Parser $parser); - - /** - * Parses a token and returns a node. - * - * @param Twig_Token $token A Twig_Token instance - * - * @return Twig_NodeInterface A Twig_NodeInterface instance - */ - public function parse(Twig_Token $token); - - /** - * Gets the tag name associated with this token parser. - * - * @return string The tag name - */ - public function getTag(); -} diff --git a/lib/Twig/TokenStream.php b/lib/Twig/TokenStream.php deleted file mode 100644 index a78189f667a60..0000000000000 --- a/lib/Twig/TokenStream.php +++ /dev/null @@ -1,144 +0,0 @@ - - */ -class Twig_TokenStream -{ - protected $tokens; - protected $current; - protected $filename; - - /** - * Constructor. - * - * @param array $tokens An array of tokens - * @param string $filename The name of the filename which tokens are associated with - */ - public function __construct(array $tokens, $filename = null) - { - $this->tokens = $tokens; - $this->current = 0; - $this->filename = $filename; - } - - /** - * Returns a string representation of the token stream. - * - * @return string - */ - public function __toString() - { - return implode("\n", $this->tokens); - } - - public function injectTokens(array $tokens) - { - $this->tokens = array_merge(array_slice($this->tokens, 0, $this->current), $tokens, array_slice($this->tokens, $this->current)); - } - - /** - * Sets the pointer to the next token and returns the old one. - * - * @return Twig_Token - */ - public function next() - { - if (!isset($this->tokens[++$this->current])) { - throw new Twig_Error_Syntax('Unexpected end of template', $this->tokens[$this->current - 1]->getLine(), $this->filename); - } - - return $this->tokens[$this->current - 1]; - } - - /** - * Tests a token and returns it or throws a syntax error. - * - * @return Twig_Token - */ - public function expect($type, $value = null, $message = null) - { - $token = $this->tokens[$this->current]; - if (!$token->test($type, $value)) { - $line = $token->getLine(); - throw new Twig_Error_Syntax(sprintf('%sUnexpected token "%s" of value "%s" ("%s" expected%s)', - $message ? $message.'. ' : '', - Twig_Token::typeToEnglish($token->getType(), $line), $token->getValue(), - Twig_Token::typeToEnglish($type, $line), $value ? sprintf(' with value "%s"', $value) : ''), - $line, - $this->filename - ); - } - $this->next(); - - return $token; - } - - /** - * Looks at the next token. - * - * @param integer $number - * - * @return Twig_Token - */ - public function look($number = 1) - { - if (!isset($this->tokens[$this->current + $number])) { - throw new Twig_Error_Syntax('Unexpected end of template', $this->tokens[$this->current + $number - 1]->getLine(), $this->filename); - } - - return $this->tokens[$this->current + $number]; - } - - /** - * Tests the current token - * - * @return bool - */ - public function test($primary, $secondary = null) - { - return $this->tokens[$this->current]->test($primary, $secondary); - } - - /** - * Checks if end of stream was reached - * - * @return bool - */ - public function isEOF() - { - return $this->tokens[$this->current]->getType() === Twig_Token::EOF_TYPE; - } - - /** - * Gets the current token - * - * @return Twig_Token - */ - public function getCurrent() - { - return $this->tokens[$this->current]; - } - - /** - * Gets the filename associated with this stream - * - * @return string - */ - public function getFilename() - { - return $this->filename; - } -} diff --git a/pub/index.php b/pub/index.php index 056fd41c01808..459fa5dc8f6bf 100644 --- a/pub/index.php +++ b/pub/index.php @@ -26,7 +26,7 @@ require __DIR__ . '/../app/bootstrap.php'; \Magento\Profiler::start('magento'); $params = $_SERVER; -$params[\Magento\Core\Model\App::PARAM_APP_URIS][\Magento\Core\Model\Dir::PUB] = ''; +$params[\Magento\Core\Model\App::PARAM_APP_URIS][\Magento\App\Dir::PUB] = ''; $entryPoint = new \Magento\Core\Model\EntryPoint\Http(new \Magento\Core\Model\Config\Primary(BP, $params)); $entryPoint->processRequest(); \Magento\Profiler::stop('magento'); diff --git a/pub/lib/mage/adminhtml/varienLoader.js b/pub/lib/mage/adminhtml/varienLoader.js index 2da2621990226..f7385cbdd8b83 100644 --- a/pub/lib/mage/adminhtml/varienLoader.js +++ b/pub/lib/mage/adminhtml/varienLoader.js @@ -197,10 +197,10 @@ varienLoaderHandler.handler = { request.options.loaderArea = $$('#html-body .wrapper')[0]; // Blocks all page if(request && request.options.loaderArea){ - Element.clonePosition($('loading-mask'), $(request.options.loaderArea), {offsetLeft:-2}) + //Element.clonePosition($('loading-mask'), $(request.options.loaderArea), {offsetLeft:-2}); toggleSelectsUnderBlock($('loading-mask'), false); Element.show('loading-mask'); - setLoaderPosition(); + //setLoaderPosition(); if(request.options.loaderArea=='html-body'){ //Element.show('loading-process'); } diff --git a/pub/lib/mage/calendar.js b/pub/lib/mage/calendar.js index 35ed961d191bd..f0a0f06dfce81 100644 --- a/pub/lib/mage/calendar.js +++ b/pub/lib/mage/calendar.js @@ -196,10 +196,16 @@ to[this._picker()]('option', 'minDate', selectedDate); }, this); $.mage.calendar.prototype._initPicker.call(this, from); + from.on('change', $.proxy(function() { + to[this._picker()]('option', 'minDate', from[this._picker()]('getDate')); + }, this)); this.options.onSelect = $.proxy(function(selectedDate) { from[this._picker()]('option', 'maxDate', selectedDate); }, this); $.mage.calendar.prototype._initPicker.call(this, to); + to.on('change', $.proxy(function() { + from[this._picker()]('option', 'maxDate', to[this._picker()]('getDate')); + }, this)); } }, diff --git a/pub/lib/mage/loader.js b/pub/lib/mage/loader.js index bec394ad7e627..01a59b691415e 100644 --- a/pub/lib/mage/loader.js +++ b/pub/lib/mage/loader.js @@ -105,8 +105,7 @@ */ _render: function() { if (this.spinner.length === 0) { - this.spinner = $.tmpl(this.options.template, this.options) - .css(this._getCssObj()); + this.spinner = $.tmpl(this.options.template, this.options)/*.css(this._getCssObj())*/; } this.element.prepend(this.spinner); },