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:  * Catalog Product Abstract Block
 30:  *
 31:  * @category   Mage
 32:  * @package    Mage_Catalog
 33:  * @author     Magento Core Team <core@magentocommerce.com>
 34:  */
 35: abstract class Mage_Catalog_Block_Product_Abstract extends Mage_Core_Block_Template
 36: {
 37:     protected $_priceBlock = array();
 38: 
 39:     /**
 40:      * Default price block
 41:      *
 42:      * @var string
 43:      */
 44:     protected $_block = 'catalog/product_price';
 45: 
 46:     protected $_priceBlockDefaultTemplate = 'catalog/product/price.phtml';
 47: 
 48:     protected $_tierPriceDefaultTemplate  = 'catalog/product/view/tierprices.phtml';
 49: 
 50:     protected $_priceBlockTypes = array();
 51: 
 52:     /**
 53:      * Flag which allow/disallow to use link for as low as price
 54:      *
 55:      * @var bool
 56:      */
 57:     protected $_useLinkForAsLowAs = true;
 58: 
 59:     protected $_reviewsHelperBlock;
 60: 
 61:     /**
 62:      * Default product amount per row
 63:      *
 64:      * @var int
 65:      */
 66:     protected $_defaultColumnCount = 3;
 67: 
 68:     /**
 69:      * Product amount per row depending on custom page layout of category
 70:      *
 71:      * @var array
 72:      */
 73:     protected $_columnCountLayoutDepend = array();
 74: 
 75:     /**
 76:      * Default MAP renderer type
 77:      *
 78:      * @var string
 79:      */
 80:     protected $_mapRenderer = 'msrp';
 81: 
 82:     /**
 83:      * Retrieve url for add product to cart
 84:      * Will return product view page URL if product has required options
 85:      *
 86:      * @param Mage_Catalog_Model_Product $product
 87:      * @param array $additional
 88:      * @return string
 89:      */
 90:     public function getAddToCartUrl($product, $additional = array())
 91:     {
 92:         if ($product->getTypeInstance(true)->hasRequiredOptions($product)) {
 93:             if (!isset($additional['_escape'])) {
 94:                 $additional['_escape'] = true;
 95:             }
 96:             if (!isset($additional['_query'])) {
 97:                 $additional['_query'] = array();
 98:             }
 99:             $additional['_query']['options'] = 'cart';
100: 
101:             return $this->getProductUrl($product, $additional);
102:         }
103:         return $this->helper('checkout/cart')->getAddUrl($product, $additional);
104:     }
105: 
106:     /**
107:      * Retrieves url for form submitting:
108:      * some objects can use setSubmitRouteData() to set route and params for form submitting,
109:      * otherwise default url will be used
110:      *
111:      * @param Mage_Catalog_Model_Product $product
112:      * @param array $additional
113:      * @return string
114:      */
115:     public function getSubmitUrl($product, $additional = array())
116:     {
117:         $submitRouteData = $this->getData('submit_route_data');
118:         if ($submitRouteData) {
119:             $route = $submitRouteData['route'];
120:             $params = isset($submitRouteData['params']) ? $submitRouteData['params'] : array();
121:             $submitUrl = $this->getUrl($route, array_merge($params, $additional));
122:         } else {
123:             $submitUrl = $this->getAddToCartUrl($product, $additional);
124:         }
125:         return $submitUrl;
126:     }
127: 
128:     /**
129:      * Enter description here...
130:      *
131:      * @param Mage_Catalog_Model_Product $product
132:      * @return string
133:      */
134:     public function getAddToWishlistUrl($product)
135:     {
136:         return $this->helper('wishlist')->getAddUrl($product);
137:     }
138: 
139:     /**
140:      * Retrieve Add Product to Compare Products List URL
141:      *
142:      * @param Mage_Catalog_Model_Product $product
143:      * @return string
144:      */
145:     public function getAddToCompareUrl($product)
146:     {
147:         return $this->helper('catalog/product_compare')->getAddUrl($product);
148:     }
149: 
150:     public function getMinimalQty($product)
151:     {
152:         if ($stockItem = $product->getStockItem()) {
153:             return ($stockItem->getMinSaleQty() && $stockItem->getMinSaleQty() > 0 ? $stockItem->getMinSaleQty() * 1 : null);
154:         }
155:         return null;
156:     }
157: 
158:     protected function _getPriceBlock($productTypeId)
159:     {
160:         if (!isset($this->_priceBlock[$productTypeId])) {
161:             $block = $this->_block;
162:             if (isset($this->_priceBlockTypes[$productTypeId])) {
163:                 if ($this->_priceBlockTypes[$productTypeId]['block'] != '') {
164:                     $block = $this->_priceBlockTypes[$productTypeId]['block'];
165:                 }
166:             }
167:             $this->_priceBlock[$productTypeId] = $this->getLayout()->createBlock($block);
168:         }
169:         return $this->_priceBlock[$productTypeId];
170:     }
171: 
172:     protected function _getPriceBlockTemplate($productTypeId)
173:     {
174:         if (isset($this->_priceBlockTypes[$productTypeId])) {
175:             if ($this->_priceBlockTypes[$productTypeId]['template'] != '') {
176:                 return $this->_priceBlockTypes[$productTypeId]['template'];
177:             }
178:         }
179:         return $this->_priceBlockDefaultTemplate;
180:     }
181: 
182: 
183:     /**
184:      * Prepares and returns block to render some product type
185:      *
186:      * @param string $productType
187:      * @return Mage_Core_Block_Template
188:      */
189:     public function _preparePriceRenderer($productType)
190:     {
191:         return $this->_getPriceBlock($productType)
192:             ->setTemplate($this->_getPriceBlockTemplate($productType))
193:             ->setUseLinkForAsLowAs($this->_useLinkForAsLowAs);
194:     }
195: 
196:     /**
197:      * Returns product price block html
198:      *
199:      * @param Mage_Catalog_Model_Product $product
200:      * @param boolean $displayMinimalPrice
201:      * @param string $idSuffix
202:      * @return string
203:      */
204:     public function getPriceHtml($product, $displayMinimalPrice = false, $idSuffix = '')
205:     {
206:         $type_id = $product->getTypeId();
207:         if (Mage::helper('catalog')->canApplyMsrp($product)) {
208:             $realPriceHtml = $this->_preparePriceRenderer($type_id)
209:                 ->setProduct($product)
210:                 ->setDisplayMinimalPrice($displayMinimalPrice)
211:                 ->setIdSuffix($idSuffix)
212:                 ->toHtml();
213:             $product->setAddToCartUrl($this->getAddToCartUrl($product));
214:             $product->setRealPriceHtml($realPriceHtml);
215:             $type_id = $this->_mapRenderer;
216:         }
217: 
218:         return $this->_preparePriceRenderer($type_id)
219:             ->setProduct($product)
220:             ->setDisplayMinimalPrice($displayMinimalPrice)
221:             ->setIdSuffix($idSuffix)
222:             ->toHtml();
223:     }
224: 
225:     /**
226:      * Adding customized price template for product type
227:      *
228:      * @param string $type
229:      * @param string $block
230:      * @param string $template
231:      */
232:     public function addPriceBlockType($type, $block = '', $template = '')
233:     {
234:         if ($type) {
235:             $this->_priceBlockTypes[$type] = array(
236:                 'block' => $block,
237:                 'template' => $template
238:             );
239:         }
240:     }
241: 
242:     /**
243:      * Get product reviews summary
244:      *
245:      * @param Mage_Catalog_Model_Product $product
246:      * @param bool $templateType
247:      * @param bool $displayIfNoReviews
248:      * @return string
249:      */
250:     public function getReviewsSummaryHtml(Mage_Catalog_Model_Product $product, $templateType = false,
251:         $displayIfNoReviews = false)
252:     {
253:         if ($this->_initReviewsHelperBlock()) {
254:             return $this->_reviewsHelperBlock->getSummaryHtml($product, $templateType, $displayIfNoReviews);
255:         }
256: 
257:         return '';
258:     }
259: 
260:     /**
261:      * Add/replace reviews summary template by type
262:      *
263:      * @param string $type
264:      * @param string $template
265:      * @return string
266:      */
267:     public function addReviewSummaryTemplate($type, $template)
268:     {
269:         if ($this->_initReviewsHelperBlock()) {
270:             $this->_reviewsHelperBlock->addTemplate($type, $template);
271:         }
272: 
273:         return '';
274:     }
275: 
276:     /**
277:      * Create reviews summary helper block once
278:      *
279:      * @return boolean
280:      */
281:     protected function _initReviewsHelperBlock()
282:     {
283:         if (!$this->_reviewsHelperBlock) {
284:             if (!Mage::helper('catalog')->isModuleEnabled('Mage_Review')) {
285:                 return false;
286:             } else {
287:                 $this->_reviewsHelperBlock = $this->getLayout()->createBlock('review/helper');
288:             }
289:         }
290: 
291:         return true;
292:     }
293: 
294:     /**
295:      * Retrieve currently viewed product object
296:      *
297:      * @return Mage_Catalog_Model_Product
298:      */
299:     public function getProduct()
300:     {
301:         if (!$this->hasData('product')) {
302:             $this->setData('product', Mage::registry('product'));
303:         }
304:         return $this->getData('product');
305:     }
306: 
307:     public function getTierPriceTemplate()
308:     {
309:         if (!$this->hasData('tier_price_template')) {
310:             return $this->_tierPriceDefaultTemplate;
311:         }
312: 
313:         return $this->getData('tier_price_template');
314:     }
315:     /**
316:      * Returns product tier price block html
317:      *
318:      * @param Mage_Catalog_Model_Product $product
319:      * @return string
320:      */
321:     public function getTierPriceHtml($product = null)
322:     {
323:         if (is_null($product)) {
324:             $product = $this->getProduct();
325:         }
326:         return $this->_getPriceBlock($product->getTypeId())
327:             ->setTemplate($this->getTierPriceTemplate())
328:             ->setProduct($product)
329:             ->setInGrouped($this->getProduct()->isGrouped())
330:             ->toHtml();
331:     }
332: 
333:     /**
334:      * Get tier prices (formatted)
335:      *
336:      * @param Mage_Catalog_Model_Product $product
337:      * @return array
338:      */
339:     public function getTierPrices($product = null)
340:     {
341:         if (is_null($product)) {
342:             $product = $this->getProduct();
343:         }
344:         $prices  = $product->getFormatedTierPrice();
345: 
346:         $res = array();
347:         if (is_array($prices)) {
348:             foreach ($prices as $price) {
349:                 $price['price_qty'] = $price['price_qty'] * 1;
350: 
351:                 $_productPrice = $product->getPrice();
352:                 if ($_productPrice != $product->getFinalPrice()) {
353:                     $_productPrice = $product->getFinalPrice();
354:                 }
355: 
356:                 // Group price must be used for percent calculation if it is lower
357:                 $groupPrice = $product->getGroupPrice();
358:                 if ($_productPrice > $groupPrice) {
359:                     $_productPrice = $groupPrice;
360:                 }
361: 
362:                 if ($price['price'] < $_productPrice) {
363:                     $price['savePercent'] = ceil(100 - ((100 / $_productPrice) * $price['price']));
364: 
365:                     $tierPrice = Mage::app()->getStore()->convertPrice(
366:                         Mage::helper('tax')->getPrice($product, $price['website_price'])
367:                     );
368:                     $price['formated_price'] = Mage::app()->getStore()->formatPrice($tierPrice);
369:                     $price['formated_price_incl_tax'] = Mage::app()->getStore()->formatPrice(
370:                         Mage::app()->getStore()->convertPrice(
371:                             Mage::helper('tax')->getPrice($product, $price['website_price'], true)
372:                         )
373:                     );
374: 
375:                     if (Mage::helper('catalog')->canApplyMsrp($product)) {
376:                         $oldPrice = $product->getFinalPrice();
377:                         $product->setPriceCalculation(false);
378:                         $product->setPrice($tierPrice);
379:                         $product->setFinalPrice($tierPrice);
380: 
381:                         $this->getPriceHtml($product);
382:                         $product->setPriceCalculation(true);
383: 
384:                         $price['real_price_html'] = $product->getRealPriceHtml();
385:                         $product->setFinalPrice($oldPrice);
386:                     }
387: 
388:                     $res[] = $price;
389:                 }
390:             }
391:         }
392: 
393:         return $res;
394:     }
395: 
396:     /**
397:      * Add all attributes and apply pricing logic to products collection
398:      * to get correct values in different products lists.
399:      * E.g. crosssells, upsells, new products, recently viewed
400:      *
401:      * @param Mage_Catalog_Model_Resource_Product_Collection $collection
402:      * @return Mage_Catalog_Model_Resource_Product_Collection
403:      */
404:     protected function _addProductAttributesAndPrices(Mage_Catalog_Model_Resource_Product_Collection $collection)
405:     {
406:         return $collection
407:             ->addMinimalPrice()
408:             ->addFinalPrice()
409:             ->addTaxPercents()
410:             ->addAttributeToSelect(Mage::getSingleton('catalog/config')->getProductAttributes())
411:             ->addUrlRewrite();
412:     }
413: 
414:     /**
415:      * Retrieve given media attribute label or product name if no label
416:      *
417:      * @param Mage_Catalog_Model_Product $product
418:      * @param string $mediaAttributeCode
419:      *
420:      * @return string
421:      */
422:     public function getImageLabel($product=null, $mediaAttributeCode='image')
423:     {
424:         if (is_null($product)) {
425:             $product = $this->getProduct();
426:         }
427: 
428:         $label = $product->getData($mediaAttributeCode.'_label');
429:         if (empty($label)) {
430:             $label = $product->getName();
431:         }
432: 
433:         return $label;
434:     }
435: 
436:     /**
437:      * Retrieve Product URL using UrlDataObject
438:      *
439:      * @param Mage_Catalog_Model_Product $product
440:      * @param array $additional the route params
441:      * @return string
442:      */
443:     public function getProductUrl($product, $additional = array())
444:     {
445:         if ($this->hasProductUrl($product)) {
446:             if (!isset($additional['_escape'])) {
447:                 $additional['_escape'] = true;
448:             }
449:             return $product->getUrlModel()->getUrl($product, $additional);
450:         }
451: 
452:         return '#';
453:     }
454: 
455:     /**
456:      * Check Product has URL
457:      *
458:      * @param Mage_Catalog_Model_Product $product
459:      * @return bool
460:      */
461:     public function hasProductUrl($product)
462:     {
463:         if ($product->getVisibleInSiteVisibilities()) {
464:             return true;
465:         }
466:         if ($product->hasUrlDataObject()) {
467:             if (in_array($product->hasUrlDataObject()->getVisibility(), $product->getVisibleInSiteVisibilities())) {
468:                 return true;
469:             }
470:         }
471: 
472:         return false;
473:     }
474: 
475:     /**
476:      * Retrieve product amount per row
477:      *
478:      * @return int
479:      */
480:     public function getColumnCount()
481:     {
482:         if (!$this->_getData('column_count')) {
483:             $pageLayout = $this->getPageLayout();
484:             if ($pageLayout && $this->getColumnCountLayoutDepend($pageLayout->getCode())) {
485:                 $this->setData(
486:                     'column_count',
487:                     $this->getColumnCountLayoutDepend($pageLayout->getCode())
488:                 );
489:             } else {
490:                 $this->setData('column_count', $this->_defaultColumnCount);
491:             }
492:         }
493: 
494:         return (int) $this->_getData('column_count');
495:     }
496: 
497:     /**
498:      * Add row size depends on page layout
499:      *
500:      * @param string $pageLayout
501:      * @param int $columnCount
502:      * @return Mage_Catalog_Block_Product_List
503:      */
504:     public function addColumnCountLayoutDepend($pageLayout, $columnCount)
505:     {
506:         $this->_columnCountLayoutDepend[$pageLayout] = $columnCount;
507:         return $this;
508:     }
509: 
510:     /**
511:      * Remove row size depends on page layout
512:      *
513:      * @param string $pageLayout
514:      * @return Mage_Catalog_Block_Product_List
515:      */
516:     public function removeColumnCountLayoutDepend($pageLayout)
517:     {
518:         if (isset($this->_columnCountLayoutDepend[$pageLayout])) {
519:             unset($this->_columnCountLayoutDepend[$pageLayout]);
520:         }
521: 
522:         return $this;
523:     }
524: 
525:     /**
526:      * Retrieve row size depends on page layout
527:      *
528:      * @param string $pageLayout
529:      * @return int|boolean
530:      */
531:     public function getColumnCountLayoutDepend($pageLayout)
532:     {
533:         if (isset($this->_columnCountLayoutDepend[$pageLayout])) {
534:             return $this->_columnCountLayoutDepend[$pageLayout];
535:         }
536: 
537:         return false;
538:     }
539: 
540:     /**
541:      * Retrieve current page layout
542:      *
543:      * @return Varien_Object
544:      */
545:     public function getPageLayout()
546:     {
547:         return $this->helper('page/layout')->getCurrentPageLayout();
548:     }
549: 
550:     /**
551:      * Check whether the price can be shown for the specified product
552:      *
553:      * @param Mage_Catalog_Model_Product $product
554:      * @return bool
555:      */
556:     public function getCanShowProductPrice($product)
557:     {
558:         return $product->getCanShowPrice() !== false;
559:     }
560: 
561:     /**
562:      * If exists price template block, retrieve price blocks from it
563:      *
564:      * @return Mage_Catalog_Block_Product_Abstract
565:      */
566:     protected function _prepareLayout()
567:     {
568:         parent::_prepareLayout();
569: 
570:         /* @var $block Mage_Catalog_Block_Product_Price_Template */
571:         $block = $this->getLayout()->getBlock('catalog_product_price_template');
572:         if ($block) {
573:             foreach ($block->getPriceBlockTypes() as $type => $priceBlock) {
574:                 $this->addPriceBlockType($type, $priceBlock['block'], $priceBlock['template']);
575:             }
576:         }
577: 
578:         return $this;
579:     }
580: }
581: 
Magento 1.7.0.2 API documentation generated by ApiGen 2.8.0