Overview

Packages

  • currencysymbol
  • MAbout
  • Mage
    • Admin
    • Adminhtml
    • AdminNotification
    • Api
    • Api2
    • Authorizenet
    • Backup
    • Bundle
    • Captcha
    • Catalog
    • CatalogIndex
    • CatalogInventory
    • CatalogRule
    • CatalogSearch
    • Centinel
    • Checkout
    • Cms
    • Compiler
    • Connect
    • Contacts
    • Core
    • Cron
    • CurrencySymbol
    • Customer
    • Dataflow
    • Directory
    • DirtectPost
    • Downloadable
    • Eav
    • GiftMessage
    • GoogleAnalytics
    • GoogleBase
    • GoogleCheckout
    • ImportExport
    • Index
    • Install
    • Log
    • Media
    • Newsletter
    • Oauth
    • Page
    • PageCache
    • Paygate
    • Payment
    • Paypal
    • PaypalUk
    • Persistent
    • Poll
    • ProductAlert
    • Rating
    • Reports
    • Review
    • Rss
    • Rule
    • Sales
    • SalesRule
    • Sedfriend
    • Sendfriend
    • Shipping
    • Sitemap
    • Tag
    • Tax
    • Usa
    • Weee
    • Widget
    • Wishlist
    • XmlConnect
  • None
  • Phoenix
    • Moneybookers
  • PHP
  • Zend
    • Date
    • Mime
    • XmlRpc

Classes

  • Mage_Catalog_Block_Breadcrumbs
  • Mage_Catalog_Block_Category_View
  • Mage_Catalog_Block_Category_Widget_Link
  • Mage_Catalog_Block_Layer_Filter_Abstract
  • Mage_Catalog_Block_Layer_Filter_Attribute
  • Mage_Catalog_Block_Layer_Filter_Category
  • Mage_Catalog_Block_Layer_Filter_Decimal
  • Mage_Catalog_Block_Layer_Filter_Price
  • Mage_Catalog_Block_Layer_State
  • Mage_Catalog_Block_Layer_View
  • Mage_Catalog_Block_Navigation
  • Mage_Catalog_Block_Product
  • Mage_Catalog_Block_Product_Abstract
  • Mage_Catalog_Block_Product_Compare_Abstract
  • Mage_Catalog_Block_Product_Compare_List
  • Mage_Catalog_Block_Product_Compare_Sidebar
  • Mage_Catalog_Block_Product_Gallery
  • Mage_Catalog_Block_Product_List
  • Mage_Catalog_Block_Product_List_Crosssell
  • Mage_Catalog_Block_Product_List_Promotion
  • Mage_Catalog_Block_Product_List_Random
  • Mage_Catalog_Block_Product_List_Related
  • Mage_Catalog_Block_Product_List_Toolbar
  • Mage_Catalog_Block_Product_List_Upsell
  • Mage_Catalog_Block_Product_New
  • Mage_Catalog_Block_Product_Price
  • Mage_Catalog_Block_Product_Price_Template
  • Mage_Catalog_Block_Product_Send
  • Mage_Catalog_Block_Product_View
  • Mage_Catalog_Block_Product_View_Abstract
  • Mage_Catalog_Block_Product_View_Additional
  • Mage_Catalog_Block_Product_View_Attributes
  • Mage_Catalog_Block_Product_View_Description
  • Mage_Catalog_Block_Product_View_Media
  • Mage_Catalog_Block_Product_View_Options
  • Mage_Catalog_Block_Product_View_Options_Abstract
  • Mage_Catalog_Block_Product_View_Options_Type_Date
  • Mage_Catalog_Block_Product_View_Options_Type_Default
  • Mage_Catalog_Block_Product_View_Options_Type_File
  • Mage_Catalog_Block_Product_View_Options_Type_Select
  • Mage_Catalog_Block_Product_View_Options_Type_Text
  • Mage_Catalog_Block_Product_View_Price
  • Mage_Catalog_Block_Product_View_Tabs
  • Mage_Catalog_Block_Product_View_Type_Configurable
  • Mage_Catalog_Block_Product_View_Type_Grouped
  • Mage_Catalog_Block_Product_View_Type_Simple
  • Mage_Catalog_Block_Product_View_Type_Virtual
  • Mage_Catalog_Block_Product_Widget_Link
  • Mage_Catalog_Block_Product_Widget_New
  • Mage_Catalog_Block_Seo_Sitemap_Abstract
  • Mage_Catalog_Block_Seo_Sitemap_Category
  • Mage_Catalog_Block_Seo_Sitemap_Product
  • Mage_Catalog_Block_Seo_Sitemap_Tree_Category
  • Mage_Catalog_Block_Widget_Link
  • Mage_Catalog_CategoryController
  • Mage_Catalog_Exception
  • Mage_Catalog_Helper_Category
  • Mage_Catalog_Helper_Category_Flat
  • Mage_Catalog_Helper_Data
  • Mage_Catalog_Helper_Image
  • Mage_Catalog_Helper_Map
  • Mage_Catalog_Helper_Output
  • Mage_Catalog_Helper_Product
  • Mage_Catalog_Helper_Product_Compare
  • Mage_Catalog_Helper_Product_Configuration
  • Mage_Catalog_Helper_Product_Flat
  • Mage_Catalog_Helper_Product_Options
  • Mage_Catalog_Helper_Product_Url
  • Mage_Catalog_Helper_Product_View
  • Mage_Catalog_IndexController
  • Mage_Catalog_Model_Abstract
  • Mage_Catalog_Model_Api2_Product
  • Mage_Catalog_Model_Api2_Product_Category
  • Mage_Catalog_Model_Api2_Product_Category_Rest
  • Mage_Catalog_Model_Api2_Product_Category_Rest_Admin_V1
  • Mage_Catalog_Model_Api2_Product_Category_Rest_Customer_V1
  • Mage_Catalog_Model_Api2_Product_Category_Rest_Guest_V1
  • Mage_Catalog_Model_Api2_Product_Image
  • Mage_Catalog_Model_Api2_Product_Image_Rest
  • Mage_Catalog_Model_Api2_Product_Image_Rest_Admin_V1
  • Mage_Catalog_Model_Api2_Product_Image_Rest_Customer_V1
  • Mage_Catalog_Model_Api2_Product_Image_Rest_Guest_V1
  • Mage_Catalog_Model_Api2_Product_Image_Validator_Image
  • Mage_Catalog_Model_Api2_Product_Rest
  • Mage_Catalog_Model_Api2_Product_Rest_Admin_V1
  • Mage_Catalog_Model_Api2_Product_Rest_Customer_V1
  • Mage_Catalog_Model_Api2_Product_Rest_Guest_V1
  • Mage_Catalog_Model_Api2_Product_Validator_Product
  • Mage_Catalog_Model_Api2_Product_Website
  • Mage_Catalog_Model_Api2_Product_Website_Rest
  • Mage_Catalog_Model_Api2_Product_Website_Rest_Admin_V1
  • Mage_Catalog_Model_Api2_Product_Website_Validator_Admin_Website
  • Mage_Catalog_Model_Api_Resource
  • Mage_Catalog_Model_Attribute_Backend_Customlayoutupdate
  • Mage_Catalog_Model_Category
  • Mage_Catalog_Model_Category_Api
  • Mage_Catalog_Model_Category_Api_V2
  • Mage_Catalog_Model_Category_Attribute_Api
  • Mage_Catalog_Model_Category_Attribute_Api_V2
  • Mage_Catalog_Model_Category_Attribute_Backend_Image
  • Mage_Catalog_Model_Category_Attribute_Backend_Sortby
  • Mage_Catalog_Model_Category_Attribute_Backend_Urlkey
  • Mage_Catalog_Model_Category_Attribute_Source_Layout
  • Mage_Catalog_Model_Category_Attribute_Source_Mode
  • Mage_Catalog_Model_Category_Attribute_Source_Page
  • Mage_Catalog_Model_Category_Attribute_Source_Sortby
  • Mage_Catalog_Model_Category_Indexer_Flat
  • Mage_Catalog_Model_Category_Indexer_Product
  • Mage_Catalog_Model_Config
  • Mage_Catalog_Model_Convert
  • Mage_Catalog_Model_Convert_Adapter_Catalog
  • Mage_Catalog_Model_Convert_Adapter_Product
  • Mage_Catalog_Model_Convert_Parser_Product
  • Mage_Catalog_Model_Design
  • Mage_Catalog_Model_Entity_Attribute
  • Mage_Catalog_Model_Entity_Product_Attribute_Frontend_Image
  • Mage_Catalog_Model_Index
  • Mage_Catalog_Model_Indexer_Url
  • Mage_Catalog_Model_Layer
  • Mage_Catalog_Model_Layer_Filter_Abstract
  • Mage_Catalog_Model_Layer_Filter_Attribute
  • Mage_Catalog_Model_Layer_Filter_Category
  • Mage_Catalog_Model_Layer_Filter_Decimal
  • Mage_Catalog_Model_Layer_Filter_Item
  • Mage_Catalog_Model_Layer_Filter_Price
  • Mage_Catalog_Model_Layer_Filter_Price_Algorithm
  • Mage_Catalog_Model_Layer_State
  • Mage_Catalog_Model_Observer
  • Mage_Catalog_Model_Product
  • Mage_Catalog_Model_Product_Action
  • Mage_Catalog_Model_Product_Api
  • Mage_Catalog_Model_Product_Api_V2
  • Mage_Catalog_Model_Product_Attribute_Api
  • Mage_Catalog_Model_Product_Attribute_Api_V2
  • Mage_Catalog_Model_Product_Attribute_Backend_Boolean
  • Mage_Catalog_Model_Product_Attribute_Backend_Groupprice
  • Mage_Catalog_Model_Product_Attribute_Backend_Groupprice_Abstract
  • Mage_Catalog_Model_Product_Attribute_Backend_Media
  • Mage_Catalog_Model_Product_Attribute_Backend_Msrp
  • Mage_Catalog_Model_Product_Attribute_Backend_Price
  • Mage_Catalog_Model_Product_Attribute_Backend_Recurring
  • Mage_Catalog_Model_Product_Attribute_Backend_Sku
  • Mage_Catalog_Model_Product_Attribute_Backend_Startdate
  • Mage_Catalog_Model_Product_Attribute_Backend_Tierprice
  • Mage_Catalog_Model_Product_Attribute_Backend_Urlkey
  • Mage_Catalog_Model_Product_Attribute_Frontend_Image
  • Mage_Catalog_Model_Product_Attribute_Group
  • Mage_Catalog_Model_Product_Attribute_Media_Api
  • Mage_Catalog_Model_Product_Attribute_Media_Api_V2
  • Mage_Catalog_Model_Product_Attribute_Set_Api
  • Mage_Catalog_Model_Product_Attribute_Set_Api_V2
  • Mage_Catalog_Model_Product_Attribute_Source_Boolean
  • Mage_Catalog_Model_Product_Attribute_Source_Countryofmanufacture
  • Mage_Catalog_Model_Product_Attribute_Source_Layout
  • Mage_Catalog_Model_Product_Attribute_Source_Msrp_Type
  • Mage_Catalog_Model_Product_Attribute_Source_Msrp_Type_Enabled
  • Mage_Catalog_Model_Product_Attribute_Source_Msrp_Type_Price
  • Mage_Catalog_Model_Product_Attribute_Tierprice_Api
  • Mage_Catalog_Model_Product_Attribute_Tierprice_Api_V2
  • Mage_Catalog_Model_Product_Compare_Item
  • Mage_Catalog_Model_Product_Compare_List
  • Mage_Catalog_Model_Product_Condition
  • Mage_Catalog_Model_Product_Configuration_Item_Option
  • Mage_Catalog_Model_Product_Flat_Flag
  • Mage_Catalog_Model_Product_Flat_Indexer
  • Mage_Catalog_Model_Product_Flat_Observer
  • Mage_Catalog_Model_Product_Image
  • Mage_Catalog_Model_Product_Indexer_Eav
  • Mage_Catalog_Model_Product_Indexer_Flat
  • Mage_Catalog_Model_Product_Indexer_Price
  • Mage_Catalog_Model_Product_Link
  • Mage_Catalog_Model_Product_Link_Api
  • Mage_Catalog_Model_Product_Link_Api_V2
  • Mage_Catalog_Model_Product_Media_Config
  • Mage_Catalog_Model_Product_Option
  • Mage_Catalog_Model_Product_Option_Api
  • Mage_Catalog_Model_Product_Option_Api_V2
  • Mage_Catalog_Model_Product_Option_Observer
  • Mage_Catalog_Model_Product_Option_Type_Date
  • Mage_Catalog_Model_Product_Option_Type_Default
  • Mage_Catalog_Model_Product_Option_Type_File
  • Mage_Catalog_Model_Product_Option_Type_Select
  • Mage_Catalog_Model_Product_Option_Type_Text
  • Mage_Catalog_Model_Product_Option_Value
  • Mage_Catalog_Model_Product_Option_Value_Api
  • Mage_Catalog_Model_Product_Option_Value_Api_V2
  • Mage_Catalog_Model_Product_Status
  • Mage_Catalog_Model_Product_Type
  • Mage_Catalog_Model_Product_Type_Abstract
  • Mage_Catalog_Model_Product_Type_Api
  • Mage_Catalog_Model_Product_Type_Api_V2
  • Mage_Catalog_Model_Product_Type_Configurable
  • Mage_Catalog_Model_Product_Type_Configurable_Attribute
  • Mage_Catalog_Model_Product_Type_Configurable_Price
  • Mage_Catalog_Model_Product_Type_Grouped
  • Mage_Catalog_Model_Product_Type_Grouped_Price
  • Mage_Catalog_Model_Product_Type_Price
  • Mage_Catalog_Model_Product_Type_Simple
  • Mage_Catalog_Model_Product_Type_Virtual
  • Mage_Catalog_Model_Product_Url
  • Mage_Catalog_Model_Product_Visibility
  • Mage_Catalog_Model_Product_Website
  • Mage_Catalog_Model_Resource_Abstract
  • Mage_Catalog_Model_Resource_Attribute
  • Mage_Catalog_Model_Resource_Category
  • Mage_Catalog_Model_Resource_Category_Attribute_Collection
  • Mage_Catalog_Model_Resource_Category_Attribute_Frontend_Image
  • Mage_Catalog_Model_Resource_Category_Attribute_Source_Layout
  • Mage_Catalog_Model_Resource_Category_Attribute_Source_Mode
  • Mage_Catalog_Model_Resource_Category_Attribute_Source_Page
  • Mage_Catalog_Model_Resource_Category_Collection
  • Mage_Catalog_Model_Resource_Category_Flat
  • Mage_Catalog_Model_Resource_Category_Flat_Collection
  • Mage_Catalog_Model_Resource_Category_Indexer_Product
  • Mage_Catalog_Model_Resource_Category_Tree
  • Mage_Catalog_Model_Resource_Collection_Abstract
  • Mage_Catalog_Model_Resource_Config
  • Mage_Catalog_Model_Resource_Eav_Attribute
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Abstract
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Attribute
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Attribute_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Attribute_Frontend_Image
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Attribute_Source_Layout
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Attribute_Source_Mode
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Attribute_Source_Page
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Flat
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Flat_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Indexer_Product
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Tree
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Collection_Abstract
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Config
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Layer_Filter_Attribute
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Layer_Filter_Decimal
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Layer_Filter_Price
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Action
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Backend_Image
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Backend_Media
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Backend_Tierprice
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Backend_Urlkey
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Frontend_Image
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Attribute_Frontend_Tierprice
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Compare_Item
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Compare_Item_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Flat
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Flat_Indexer
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Abstract
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Eav
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Eav_Abstract
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Eav_Decimal
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Eav_Source
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Price
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Price_Configurable
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Price_Default
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Price_Grouped
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Link
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Link_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Link_Product_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Option
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Option_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Option_Value
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Option_Value_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Relation
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Status
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Type_Configurable
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Type_Configurable_Attribute
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Type_Configurable_Attribute_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Type_Configurable_Product_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Website
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Sendfriend
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Sendfriend_Collection
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Setup
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Url
  • Mage_Catalog_Model_Resource_Helper_Mysql4
  • Mage_Catalog_Model_Resource_Layer_Filter_Attribute
  • Mage_Catalog_Model_Resource_Layer_Filter_Decimal
  • Mage_Catalog_Model_Resource_Layer_Filter_Price
  • Mage_Catalog_Model_Resource_Product
  • Mage_Catalog_Model_Resource_Product_Action
  • Mage_Catalog_Model_Resource_Product_Attribute_Backend_Groupprice
  • Mage_Catalog_Model_Resource_Product_Attribute_Backend_Groupprice_Abstract
  • Mage_Catalog_Model_Resource_Product_Attribute_Backend_Image
  • Mage_Catalog_Model_Resource_Product_Attribute_Backend_Media
  • Mage_Catalog_Model_Resource_Product_Attribute_Backend_Tierprice
  • Mage_Catalog_Model_Resource_Product_Attribute_Backend_Urlkey
  • Mage_Catalog_Model_Resource_Product_Attribute_Collection
  • Mage_Catalog_Model_Resource_Product_Attribute_Frontend_Image
  • Mage_Catalog_Model_Resource_Product_Attribute_Frontend_Tierprice
  • Mage_Catalog_Model_Resource_Product_Collection
  • Mage_Catalog_Model_Resource_Product_Compare_Item
  • Mage_Catalog_Model_Resource_Product_Compare_Item_Collection
  • Mage_Catalog_Model_Resource_Product_Flat
  • Mage_Catalog_Model_Resource_Product_Flat_Indexer
  • Mage_Catalog_Model_Resource_Product_Indexer_Abstract
  • Mage_Catalog_Model_Resource_Product_Indexer_Eav
  • Mage_Catalog_Model_Resource_Product_Indexer_Eav_Abstract
  • Mage_Catalog_Model_Resource_Product_Indexer_Eav_Decimal
  • Mage_Catalog_Model_Resource_Product_Indexer_Eav_Source
  • Mage_Catalog_Model_Resource_Product_Indexer_Price
  • Mage_Catalog_Model_Resource_Product_Indexer_Price_Configurable
  • Mage_Catalog_Model_Resource_Product_Indexer_Price_Default
  • Mage_Catalog_Model_Resource_Product_Indexer_Price_Grouped
  • Mage_Catalog_Model_Resource_Product_Link
  • Mage_Catalog_Model_Resource_Product_Link_Collection
  • Mage_Catalog_Model_Resource_Product_Link_Product_Collection
  • Mage_Catalog_Model_Resource_Product_Option
  • Mage_Catalog_Model_Resource_Product_Option_Collection
  • Mage_Catalog_Model_Resource_Product_Option_Value
  • Mage_Catalog_Model_Resource_Product_Option_Value_Collection
  • Mage_Catalog_Model_Resource_Product_Relation
  • Mage_Catalog_Model_Resource_Product_Status
  • Mage_Catalog_Model_Resource_Product_Type_Configurable
  • Mage_Catalog_Model_Resource_Product_Type_Configurable_Attribute
  • Mage_Catalog_Model_Resource_Product_Type_Configurable_Attribute_Collection
  • Mage_Catalog_Model_Resource_Product_Type_Configurable_Product_Collection
  • Mage_Catalog_Model_Resource_Product_Website
  • Mage_Catalog_Model_Resource_Setup
  • Mage_Catalog_Model_Resource_Url
  • Mage_Catalog_Model_Session
  • Mage_Catalog_Model_System_Config_Backend_Catalog_Category_Flat
  • Mage_Catalog_Model_System_Config_Backend_Catalog_Product_Flat
  • Mage_Catalog_Model_System_Config_Backend_Catalog_Url_Rewrite_Suffix
  • Mage_Catalog_Model_Template_Filter
  • Mage_Catalog_Model_Url
  • Mage_Catalog_Product_CompareController
  • Mage_Catalog_ProductController
  • Mage_Catalog_Seo_SitemapController
  • Mage_CatalogSearch_Model_Resource_Helper_Mysql4
  • Mage_XmlConnect_Model_Catalog_Category_Media_Config

Interfaces

  • Mage_Catalog_Helper_Product_Configuration_Interface
  • Mage_Catalog_Model_Product_Condition_Interface
  • Mage_Catalog_Model_Product_Configuration_Item_Interface
  • Mage_Catalog_Model_Product_Configuration_Item_Option_Interface
  • Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Price_Interface
  • Mage_Catalog_Model_Resource_Product_Indexer_Price_Interface
  • Overview
  • Package
  • Class
  • Tree
  1: <?php
  2: /**
  3:  * Magento
  4:  *
  5:  * NOTICE OF LICENSE
  6:  *
  7:  * This source file is subject to the Open Software License (OSL 3.0)
  8:  * that is bundled with this package in the file LICENSE.txt.
  9:  * It is also available through the world-wide-web at this URL:
 10:  * http://opensource.org/licenses/osl-3.0.php
 11:  * If you did not receive a copy of the license and are unable to
 12:  * obtain it through the world-wide-web, please send an email
 13:  * to license@magentocommerce.com so we can send you a copy immediately.
 14:  *
 15:  * DISCLAIMER
 16:  *
 17:  * Do not edit or add to this file if you wish to upgrade Magento to newer
 18:  * versions in the future. If you wish to customize Magento for your
 19:  * needs please refer to http://www.magentocommerce.com for more information.
 20:  *
 21:  * @category    Mage
 22:  * @package     Mage_Catalog
 23:  * @copyright   Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
 24:  * @license     http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
 25:  */
 26: 
 27: 
 28: /**
 29:  * Category resource collection
 30:  *
 31:  * @category    Mage
 32:  * @package     Mage_Catalog
 33:  * @author      Magento Core Team <core@magentocommerce.com>
 34:  */
 35: class Mage_Catalog_Model_Resource_Category_Collection extends Mage_Catalog_Model_Resource_Collection_Abstract
 36: {
 37:     /**
 38:      * Event prefix
 39:      *
 40:      * @var string
 41:      */
 42:     protected $_eventPrefix              = 'catalog_category_collection';
 43: 
 44:     /**
 45:      * Event object name
 46:      *
 47:      * @var string
 48:      */
 49:     protected $_eventObject              = 'category_collection';
 50: 
 51:     /**
 52:      * Name of product table
 53:      *
 54:      * @var string
 55:      */
 56:     protected $_productTable;
 57: 
 58:     /**
 59:      * Store id, that we should count products on
 60:      *
 61:      * @var int
 62:      */
 63:     protected $_productStoreId;
 64: 
 65:     /**
 66:      * Name of product website table
 67:      *
 68:      * @var string
 69:      */
 70:     protected $_productWebsiteTable;
 71: 
 72:     /**
 73:      * Load with product count flag
 74:      *
 75:      * @var boolean
 76:      */
 77:     protected $_loadWithProductCount     = false;
 78: 
 79:     /**
 80:      * Init collection and determine table names
 81:      *
 82:      */
 83:     protected function _construct()
 84:     {
 85:         $this->_init('catalog/category');
 86: 
 87:         $this->_productWebsiteTable = $this->getTable('catalog/product_website');
 88:         $this->_productTable        = $this->getTable('catalog/category_product');
 89:     }
 90: 
 91:     /**
 92:      * Add Id filter
 93:      *
 94:      * @param array $categoryIds
 95:      * @return Mage_Catalog_Model_Resource_Category_Collection
 96:      */
 97:     public function addIdFilter($categoryIds)
 98:     {
 99:         if (is_array($categoryIds)) {
100:             if (empty($categoryIds)) {
101:                 $condition = '';
102:             } else {
103:                 $condition = array('in' => $categoryIds);
104:             }
105:         } elseif (is_numeric($categoryIds)) {
106:             $condition = $categoryIds;
107:         } elseif (is_string($categoryIds)) {
108:             $ids = explode(',', $categoryIds);
109:             if (empty($ids)) {
110:                 $condition = $categoryIds;
111:             } else {
112:                 $condition = array('in' => $ids);
113:             }
114:         }
115:         $this->addFieldToFilter('entity_id', $condition);
116:         return $this;
117:     }
118: 
119:     /**
120:      * Set flag for loading product count
121:      *
122:      * @param boolean $flag
123:      * @return Mage_Catalog_Model_Resource_Category_Collection
124:      */
125:     public function setLoadProductCount($flag)
126:     {
127:         $this->_loadWithProductCount = $flag;
128:         return $this;
129:     }
130: 
131:     /**
132:      * Before collection load
133:      *
134:      * @return Mage_Catalog_Model_Resource_Category_Collection
135:      */
136:     protected function _beforeLoad()
137:     {
138:         Mage::dispatchEvent($this->_eventPrefix . '_load_before',
139:                             array($this->_eventObject => $this));
140:         return parent::_beforeLoad();
141:     }
142: 
143:     /**
144:      * After collection load
145:      *
146:      * @return Mage_Catalog_Model_Resource_Category_Collection
147:      */
148:     protected function _afterLoad()
149:     {
150:         Mage::dispatchEvent($this->_eventPrefix . '_load_after',
151:                             array($this->_eventObject => $this));
152: 
153:         return parent::_afterLoad();
154:     }
155: 
156:     /**
157:      * Set id of the store that we should count products on
158:      *
159:      * @param int $storeId
160:      * @return Mage_Catalog_Model_Resource_Category_Collection
161:      */
162:     public function setProductStoreId($storeId)
163:     {
164:         $this->_productStoreId = $storeId;
165:         return $this;
166:     }
167: 
168:     /**
169:      * Get id of the store that we should count products on
170:      *
171:      * @return int
172:      */
173:     public function getProductStoreId()
174:     {
175:         if (is_null($this->_productStoreId)) {
176:             $this->_productStoreId = Mage_Catalog_Model_Abstract::DEFAULT_STORE_ID;
177:         }
178:         return $this->_productStoreId;
179:     }
180: 
181:     /**
182:      * Load collection
183:      *
184:      * @param bool $printQuery
185:      * @param bool $logQuery
186:      * @return Mage_Catalog_Model_Resource_Category_Collection
187:      */
188:     public function load($printQuery = false, $logQuery = false)
189:     {
190:         if ($this->isLoaded()) {
191:             return $this;
192:         }
193: 
194:         if ($this->_loadWithProductCount) {
195:             $this->addAttributeToSelect('all_children');
196:             $this->addAttributeToSelect('is_anchor');
197:         }
198: 
199:         parent::load($printQuery, $logQuery);
200: 
201:         if ($this->_loadWithProductCount) {
202:             $this->_loadProductCount();
203:         }
204: 
205:         return $this;
206:     }
207: 
208:     /**
209:      * Load categories product count
210:      *
211:      */
212:     protected function _loadProductCount()
213:     {
214:         $this->loadProductCount($this->_items, true, true);
215:     }
216: 
217:     /**
218:      * Load product count for specified items
219:      *
220:      * @param array $items
221:      * @param boolean $countRegular get product count for regular (non-anchor) categories
222:      * @param boolean $countAnchor get product count for anchor categories
223:      * @return Mage_Catalog_Model_Resource_Category_Collection
224:      */
225:     public function loadProductCount($items, $countRegular = true, $countAnchor = true)
226:     {
227:         $anchor     = array();
228:         $regular    = array();
229:         $websiteId  = Mage::app()->getStore($this->getProductStoreId())->getWebsiteId();
230: 
231:         foreach ($items as $item) {
232:             if ($item->getIsAnchor()) {
233:                 $anchor[$item->getId()] = $item;
234:             } else {
235:                 $regular[$item->getId()] = $item;
236:             }
237:         }
238: 
239:         if ($countRegular) {
240:             // Retrieve regular categories product counts
241:             $regularIds = array_keys($regular);
242:             if (!empty($regularIds)) {
243:                 $select = $this->_conn->select();
244:                 $select->from(
245:                         array('main_table' => $this->_productTable),
246:                         array('category_id', new Zend_Db_Expr('COUNT(main_table.product_id)'))
247:                     )
248:                     ->where($this->_conn->quoteInto('main_table.category_id IN(?)', $regularIds))
249:                     ->group('main_table.category_id');
250:                 if ($websiteId) {
251:                     $select->join(
252:                         array('w' => $this->_productWebsiteTable),
253:                         'main_table.product_id = w.product_id', array()
254:                     )
255:                     ->where('w.website_id = ?', $websiteId);
256:                 }
257:                 $counts = $this->_conn->fetchPairs($select);
258:                 foreach ($regular as $item) {
259:                     if (isset($counts[$item->getId()])) {
260:                         $item->setProductCount($counts[$item->getId()]);
261:                     } else {
262:                         $item->setProductCount(0);
263:                     }
264:                 }
265:             }
266:         }
267: 
268:         if ($countAnchor) {
269:             // Retrieve Anchor categories product counts
270:             foreach ($anchor as $item) {
271:                 if ($allChildren = $item->getAllChildren()) {
272:                     $bind = array(
273:                         'entity_id' => $item->getId(),
274:                         'c_path'    => $item->getPath() . '/%'
275:                     );
276:                     $select = $this->_conn->select();
277:                     $select->from(
278:                             array('main_table' => $this->_productTable),
279:                             new Zend_Db_Expr('COUNT(DISTINCT main_table.product_id)')
280:                         )
281:                         ->joinInner(
282:                             array('e' => $this->getTable('catalog/category')),
283:                             'main_table.category_id=e.entity_id',
284:                             array()
285:                         )
286:                         ->where('e.entity_id = :entity_id')
287:                         ->orWhere('e.path LIKE :c_path');
288:                     if ($websiteId) {
289:                         $select->join(
290:                             array('w' => $this->_productWebsiteTable),
291:                             'main_table.product_id = w.product_id', array()
292:                         )
293:                         ->where('w.website_id = ?', $websiteId);
294:                     }
295:                     $item->setProductCount((int) $this->_conn->fetchOne($select, $bind));
296:                 } else {
297:                     $item->setProductCount(0);
298:                 }
299:             }
300:         }
301:         return $this;
302:     }
303: 
304:     /**
305:      * Add category path filter
306:      *
307:      * @param string $regexp
308:      * @return Mage_Catalog_Model_Resource_Category_Collection
309:      */
310:     public function addPathFilter($regexp)
311:     {
312:         $this->addFieldToFilter('path', array('regexp' => $regexp));
313:         return $this;
314:     }
315: 
316:     /**
317:      * Joins url rewrite rules to collection
318:      *
319:      * @return Mage_Catalog_Model_Resource_Category_Collection
320:      */
321:     public function joinUrlRewrite()
322:     {
323:         $storeId = Mage::app()->getStore()->getId();
324:         $this->joinTable(
325:             'core/url_rewrite',
326:             'category_id=entity_id',
327:             array('request_path'),
328:             "{{table}}.is_system=1"
329:                 . " AND {{table}}.product_id IS NULL"
330:                 . " AND {{table}}.store_id='{$storeId}'"
331:                 . " AND id_path LIKE 'category/%'",
332:             'left'
333:         );
334:         return $this;
335:     }
336: 
337:     /**
338:      * Add active category filter
339:      *
340:      * @return Mage_Catalog_Model_Resource_Category_Collection
341:      */
342:     public function addIsActiveFilter()
343:     {
344:         $this->addAttributeToFilter('is_active', 1);
345:         Mage::dispatchEvent($this->_eventPrefix . '_add_is_active_filter',
346:                             array($this->_eventObject => $this));
347:         return $this;
348:     }
349: 
350:     /**
351:      * Add name attribute to result
352:      *
353:      * @return Mage_Catalog_Model_Resource_Category_Collection
354:      */
355:     public function addNameToResult()
356:     {
357:         $this->addAttributeToSelect('name');
358:         return $this;
359:     }
360: 
361:     /**
362:      * Add url rewrite rules to collection
363:      *
364:      * @return Mage_Catalog_Model_Resource_Category_Collection
365:      */
366:     public function addUrlRewriteToResult()
367:     {
368:         $this->joinUrlRewrite();
369:         return $this;
370:     }
371: 
372:     /**
373:      * Add category path filter
374:      *
375:      * @param array|string $paths
376:      * @return Mage_Catalog_Model_Resource_Category_Collection
377:      */
378:     public function addPathsFilter($paths)
379:     {
380:         if (!is_array($paths)) {
381:             $paths = array($paths);
382:         }
383:         $write  = $this->getResource()->getWriteConnection();
384:         $cond   = array();
385:         foreach ($paths as $path) {
386:             $cond[] = $write->quoteInto('e.path LIKE ?', "$path%");
387:         }
388:         if ($cond) {
389:             $this->getSelect()->where(join(' OR ', $cond));
390:         }
391:         return $this;
392:     }
393: 
394:     /**
395:      * Add category level filter
396:      *
397:      * @param int|string $level
398:      * @return Mage_Catalog_Model_Resource_Category_Collection
399:      */
400:     public function addLevelFilter($level)
401:     {
402:         $this->addFieldToFilter('level', array('lteq' => $level));
403:         return $this;
404:     }
405: 
406:     /**
407:      * Add root category filter
408:      *
409:      * @return Mage_Catalog_Model_Resource_Category_Collection
410:      */
411:     public function addRootLevelFilter()
412:     {
413:         $this->addFieldToFilter('path', array('neq' => '1'));
414:         $this->addLevelFilter(1);
415:         return $this;
416:     }
417: 
418:     /**
419:      * Add order field
420:      *
421:      * @param string $field
422:      * @return Mage_Catalog_Model_Resource_Category_Collection
423:      */
424:     public function addOrderField($field)
425:     {
426:         $this->setOrder($field, self::SORT_ORDER_ASC);
427:         return $this;
428:     }
429: }
430: 
Magento 1.7.0.2 API documentation generated by ApiGen 2.8.0