Moved module out of the code pool directory
- Moved app/code/community/* -> app/code/*
Concentrated templates and static files in the module directory
Concentrated translation dictionaries in the module directory
Concentrated layout updates in the module directory
- Broken down module's layout updates into separate files per layout handle
- Renamed layout handles 'catalog_category_*' -> 'catalog_category_view_type_*'
Concentrated module declaration in the module directory
- Declared dependency on module Magento_Theme instead of Mage_Page
Actualized references to core classes
- Replaced Mage_* -> \Magento\*
- Replaced Varien_* -> \Magento\Framework\*
- Formalized dependencies on modules Magento_Cms, Magento_Customer, Magento_Eav
Removed module context from the 'gettext' translation
- Updated placeholders in translatable literals
- Removed empty helper class
- Removed declaration of helpers and translation dictionaries from config
Injected dependencies in constructors
- Declared dependencies on singletons instead of service location Mage::getSingleton()
- Declared dependencies on auto-generated factories for transient objects instead of Mage::getModel() and Mage::getResourceModel()
- Utilized shared registry instead of Mage::registry() and Mage::register()
- Utilized shared scoped config instead of Mage::getStoreConfig() and Mage::getStoreConfigFlag()
- Utilized shared store manager instead of Mage::app()->getStore()
- Removed declaration of class prefixes from config
Dereferenced table names
Removed unused deprecated code
Replaced usage of deprecated methods
- Replaced htmlEscape() -> escapeHtml()
Re-implemented compatibility with Netzarbeiter_LoginCatalog extension
- Introduced plugin that transparently prevents categories rendering
- Activated the plugin through the DI config for the frontend area
- Injected dependency on the shared module manager instead of Mage::getConfig()
- Utilized shared object manager as a service locator for graceful dependencies instead of Mage::helper()
Implemented system configuration
- Introduced '<module_dir>/etc/adminhtml/system.xml' to replace '<module_dir>/etc/system.xml'
- Converted format of the system configuration sections/groups/fields, preserving original data
Re-implemented layout updates
- Converted format of layout instructions, maintaining functional equivalence
-- Wrapped optional blocks into intermediate blocks as a workaround for conditional presence in containers
- Removed declaration of layout files from config
Fixed inability to display number of products in categories
Actualized configuration for the Magento module deployment manager
Updated version of the module
- Incremented major version of the module to indicate backward incompatibility
-- Skipped one major version to give room for version increase in Magento 1.x branch
- Described version change in the README file
Inverted configuration options of showing/hiding navigation blocks
- Changed options "Hide * Navigation" -> "Show * Navigation"
- Optimized layout instructions