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:  * Catalog product option model
 29:  *
 30:  * @method Mage_Catalog_Model_Resource_Product_Option _getResource()
 31:  * @method Mage_Catalog_Model_Resource_Product_Option getResource()
 32:  * @method int getProductId()
 33:  * @method Mage_Catalog_Model_Product_Option setProductId(int $value)
 34:  * @method string getType()
 35:  * @method Mage_Catalog_Model_Product_Option setType(string $value)
 36:  * @method int getIsRequire()
 37:  * @method Mage_Catalog_Model_Product_Option setIsRequire(int $value)
 38:  * @method string getSku()
 39:  * @method Mage_Catalog_Model_Product_Option setSku(string $value)
 40:  * @method int getMaxCharacters()
 41:  * @method Mage_Catalog_Model_Product_Option setMaxCharacters(int $value)
 42:  * @method string getFileExtension()
 43:  * @method Mage_Catalog_Model_Product_Option setFileExtension(string $value)
 44:  * @method int getImageSizeX()
 45:  * @method Mage_Catalog_Model_Product_Option setImageSizeX(int $value)
 46:  * @method int getImageSizeY()
 47:  * @method Mage_Catalog_Model_Product_Option setImageSizeY(int $value)
 48:  * @method int getSortOrder()
 49:  * @method Mage_Catalog_Model_Product_Option setSortOrder(int $value)
 50:  *
 51:  * @category    Mage
 52:  * @package     Mage_Catalog
 53:  * @author      Magento Core Team <core@magentocommerce.com>
 54:  */
 55: class Mage_Catalog_Model_Product_Option extends Mage_Core_Model_Abstract
 56: {
 57:     const OPTION_GROUP_TEXT   = 'text';
 58:     const OPTION_GROUP_FILE   = 'file';
 59:     const OPTION_GROUP_SELECT = 'select';
 60:     const OPTION_GROUP_DATE   = 'date';
 61: 
 62:     const OPTION_TYPE_FIELD     = 'field';
 63:     const OPTION_TYPE_AREA      = 'area';
 64:     const OPTION_TYPE_FILE      = 'file';
 65:     const OPTION_TYPE_DROP_DOWN = 'drop_down';
 66:     const OPTION_TYPE_RADIO     = 'radio';
 67:     const OPTION_TYPE_CHECKBOX  = 'checkbox';
 68:     const OPTION_TYPE_MULTIPLE  = 'multiple';
 69:     const OPTION_TYPE_DATE      = 'date';
 70:     const OPTION_TYPE_DATE_TIME = 'date_time';
 71:     const OPTION_TYPE_TIME      = 'time';
 72: 
 73:     protected $_product;
 74: 
 75:     protected $_options = array();
 76: 
 77:     protected $_valueInstance;
 78: 
 79:     protected $_values = array();
 80: 
 81:     protected function _construct()
 82:     {
 83:         $this->_init('catalog/product_option');
 84:     }
 85: 
 86:     /**
 87:      * Add value of option to values array
 88:      *
 89:      * @param Mage_Catalog_Model_Product_Option_Value $value
 90:      * @return Mage_Catalog_Model_Product_Option
 91:      */
 92:     public function addValue(Mage_Catalog_Model_Product_Option_Value $value)
 93:     {
 94:         $this->_values[$value->getId()] = $value;
 95:         return $this;
 96:     }
 97: 
 98:     /**
 99:      * Get value by given id
100:      *
101:      * @param int $valueId
102:      * @return Mage_Catalog_Model_Product_Option_Value
103:      */
104:     public function getValueById($valueId)
105:     {
106:         if (isset($this->_values[$valueId])) {
107:             return $this->_values[$valueId];
108:         }
109: 
110:         return null;
111:     }
112: 
113:     public function getValues()
114:     {
115:         return $this->_values;
116:     }
117: 
118:     /**
119:      * Retrieve value instance
120:      *
121:      * @return Mage_Catalog_Model_Product_Option_Value
122:      */
123:     public function getValueInstance()
124:     {
125:         if (!$this->_valueInstance) {
126:             $this->_valueInstance = Mage::getSingleton('catalog/product_option_value');
127:         }
128:         return $this->_valueInstance;
129:     }
130: 
131:     /**
132:      * Add option for save it
133:      *
134:      * @param array $option
135:      * @return Mage_Catalog_Model_Product_Option
136:      */
137:     public function addOption($option)
138:     {
139:         $this->_options[] = $option;
140:         return $this;
141:     }
142: 
143:     /**
144:      * Get all options
145:      *
146:      * @return array
147:      */
148:     public function getOptions()
149:     {
150:         return $this->_options;
151:     }
152: 
153:     /**
154:      * Set options for array
155:      *
156:      * @param array $options
157:      * @return Mage_Catalog_Model_Product_Option
158:      */
159:     public function setOptions($options)
160:     {
161:         $this->_options = $options;
162:         return $this;
163:     }
164: 
165:     /**
166:      * Set options to empty array
167:      *
168:      * @return Mage_Catalog_Model_Product_Option
169:      */
170:     public function unsetOptions()
171:     {
172:         $this->_options = array();
173:         return $this;
174:     }
175: 
176:     /**
177:      * Retrieve product instance
178:      *
179:      * @return Mage_Catalog_Model_Product
180:      */
181:     public function getProduct()
182:     {
183:         return $this->_product;
184:     }
185: 
186:     /**
187:      * Set product instance
188:      *
189:      * @param Mage_Catalog_Model_Product $product
190:      * @return Mage_Catalog_Model_Product_Option
191:      */
192:     public function setProduct(Mage_Catalog_Model_Product $product = null)
193:     {
194:         $this->_product = $product;
195:         return $this;
196:     }
197: 
198:     /**
199:      * Get group name of option by given option type
200:      *
201:      * @param string $type
202:      * @return string
203:      */
204:     public function getGroupByType($type = null)
205:     {
206:         if (is_null($type)) {
207:             $type = $this->getType();
208:         }
209:         $optionGroupsToTypes = array(
210:             self::OPTION_TYPE_FIELD => self::OPTION_GROUP_TEXT,
211:             self::OPTION_TYPE_AREA => self::OPTION_GROUP_TEXT,
212:             self::OPTION_TYPE_FILE => self::OPTION_GROUP_FILE,
213:             self::OPTION_TYPE_DROP_DOWN => self::OPTION_GROUP_SELECT,
214:             self::OPTION_TYPE_RADIO => self::OPTION_GROUP_SELECT,
215:             self::OPTION_TYPE_CHECKBOX => self::OPTION_GROUP_SELECT,
216:             self::OPTION_TYPE_MULTIPLE => self::OPTION_GROUP_SELECT,
217:             self::OPTION_TYPE_DATE => self::OPTION_GROUP_DATE,
218:             self::OPTION_TYPE_DATE_TIME => self::OPTION_GROUP_DATE,
219:             self::OPTION_TYPE_TIME => self::OPTION_GROUP_DATE,
220:         );
221: 
222:         return isset($optionGroupsToTypes[$type])?$optionGroupsToTypes[$type]:'';
223:     }
224: 
225:     /**
226:      * Group model factory
227:      *
228:      * @param string $type Option type
229:      * @return Mage_Catalog_Model_Product_Option_Group_Abstract
230:      */
231:     public function groupFactory($type)
232:     {
233:         $group = $this->getGroupByType($type);
234:         if (!empty($group)) {
235:             return Mage::getModel('catalog/product_option_type_' . $group);
236:         }
237:         Mage::throwException(Mage::helper('catalog')->__('Wrong option type to get group instance.'));
238:     }
239: 
240:     /**
241:      * Save options.
242:      *
243:      * @return Mage_Catalog_Model_Product_Option
244:      */
245:     public function saveOptions()
246:     {
247:         foreach ($this->getOptions() as $option) {
248:             $this->setData($option)
249:                 ->setData('product_id', $this->getProduct()->getId())
250:                 ->setData('store_id', $this->getProduct()->getStoreId());
251: 
252:             if ($this->getData('option_id') == '0') {
253:                 $this->unsetData('option_id');
254:             } else {
255:                 $this->setId($this->getData('option_id'));
256:             }
257:             $isEdit = (bool)$this->getId()? true:false;
258: 
259:             if ($this->getData('is_delete') == '1') {
260:                 if ($isEdit) {
261:                     $this->getValueInstance()->deleteValue($this->getId());
262:                     $this->deletePrices($this->getId());
263:                     $this->deleteTitles($this->getId());
264:                     $this->delete();
265:                 }
266:             } else {
267:                 if ($this->getData('previous_type') != '') {
268:                     $previousType = $this->getData('previous_type');
269: 
270:                     /**
271:                      * if previous option has different group from one is came now
272:                      * need to remove all data of previous group
273:                      */
274:                     if ($this->getGroupByType($previousType) != $this->getGroupByType($this->getData('type'))) {
275: 
276:                         switch ($this->getGroupByType($previousType)) {
277:                             case self::OPTION_GROUP_SELECT:
278:                                 $this->unsetData('values');
279:                                 if ($isEdit) {
280:                                     $this->getValueInstance()->deleteValue($this->getId());
281:                                 }
282:                                 break;
283:                             case self::OPTION_GROUP_FILE:
284:                                 $this->setData('file_extension', '');
285:                                 $this->setData('image_size_x', '0');
286:                                 $this->setData('image_size_y', '0');
287:                                 break;
288:                             case self::OPTION_GROUP_TEXT:
289:                                 $this->setData('max_characters', '0');
290:                                 break;
291:                             case self::OPTION_GROUP_DATE:
292:                                 break;
293:                         }
294:                         if ($this->getGroupByType($this->getData('type')) == self::OPTION_GROUP_SELECT) {
295:                             $this->setData('sku', '');
296:                             $this->unsetData('price');
297:                             $this->unsetData('price_type');
298:                             if ($isEdit) {
299:                                 $this->deletePrices($this->getId());
300:                             }
301:                         }
302:                     }
303:                 }
304:                 $this->save();            }
305:         }//eof foreach()
306:         return $this;
307:     }
308: 
309:     protected function _afterSave()
310:     {
311:         $this->getValueInstance()->unsetValues();
312:         if (is_array($this->getData('values'))) {
313:             foreach ($this->getData('values') as $value) {
314:                 $this->getValueInstance()->addValue($value);
315:             }
316: 
317:             $this->getValueInstance()->setOption($this)
318:                 ->saveValues();
319:         } elseif ($this->getGroupByType($this->getType()) == self::OPTION_GROUP_SELECT) {
320:             Mage::throwException(Mage::helper('catalog')->__('Select type options required values rows.'));
321:         }
322: 
323:         return parent::_afterSave();
324:     }
325: 
326:     /**
327:      * Return price. If $flag is true and price is percent
328:      *  return converted percent to price
329:      *
330:      * @param bool $flag
331:      * @return decimal
332:      */
333:     public function getPrice($flag=false)
334:     {
335:         if ($flag && $this->getPriceType() == 'percent') {
336:             $basePrice = $this->getProduct()->getFinalPrice();
337:             $price = $basePrice*($this->_getData('price')/100);
338:             return $price;
339:         }
340:         return $this->_getData('price');
341:     }
342: 
343:     /**
344:      * Delete prices of option
345:      *
346:      * @param int $option_id
347:      * @return Mage_Catalog_Model_Product_Option
348:      */
349:     public function deletePrices($option_id)
350:     {
351:         $this->getResource()->deletePrices($option_id);
352:         return $this;
353:     }
354: 
355:     /**
356:      * Delete titles of option
357:      *
358:      * @param int $option_id
359:      * @return Mage_Catalog_Model_Product_Option
360:      */
361:     public function deleteTitles($option_id)
362:     {
363:         $this->getResource()->deleteTitles($option_id);
364:         return $this;
365:     }
366: 
367:     /**
368:      * get Product Option Collection
369:      *
370:      * @param Mage_Catalog_Model_Product $product
371:      * @return Mage_Catalog_Model_Resource_Product_Option_Collection
372:      */
373:     public function getProductOptionCollection(Mage_Catalog_Model_Product $product)
374:     {
375:         $collection = $this->getCollection()
376:             ->addFieldToFilter('product_id', $product->getId())
377:             ->addTitleToResult($product->getStoreId())
378:             ->addPriceToResult($product->getStoreId())
379:             ->setOrder('sort_order', 'asc')
380:             ->setOrder('title', 'asc');
381: 
382:         if ($this->getAddRequiredFilter()) {
383:             $collection->addRequiredFilter($this->getAddRequiredFilterValue());
384:         }
385: 
386:         $collection->addValuesToResult($product->getStoreId());
387:         return $collection;
388:     }
389: 
390:     /**
391:      * Get collection of values for current option
392:      *
393:      * @return Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Option_Value_Collection
394:      */
395:     public function getValuesCollection()
396:     {
397:         $collection = $this->getValueInstance()
398:             ->getValuesCollection($this);
399: 
400:         return $collection;
401:     }
402: 
403:     /**
404:      * Get collection of values by given option ids
405:      *
406:      * @param array $optionIds
407:      * @param int $store_id
408:      * @return unknown
409:      */
410:     public function getOptionValuesByOptionId($optionIds, $store_id)
411:     {
412:         $collection = Mage::getModel('catalog/product_option_value')
413:             ->getValuesByOption($optionIds, $this->getId(), $store_id);
414: 
415:         return $collection;
416:     }
417: 
418:     /**
419:      * Prepare array of options for duplicate
420:      *
421:      * @return array
422:      */
423:     public function prepareOptionForDuplicate()
424:     {
425:         $this->setProductId(null);
426:         $this->setOptionId(null);
427:         $newOption = $this->__toArray();
428:         if ($_values = $this->getValues()) {
429:             $newValuesArray = array();
430:             foreach ($_values as $_value) {
431:                 $newValuesArray[] = $_value->prepareValueForDuplicate();
432:             }
433:             $newOption['values'] = $newValuesArray;
434:         }
435: 
436:         return $newOption;
437:     }
438: 
439:     /**
440:      * Duplicate options for product
441:      *
442:      * @param int $oldProductId
443:      * @param int $newProductId
444:      * @return Mage_Catalog_Model_Product_Option
445:      */
446:     public function duplicate($oldProductId, $newProductId)
447:     {
448:         $this->getResource()->duplicate($this, $oldProductId, $newProductId);
449: 
450:         return $this;
451:     }
452: 
453:     /**
454:      * Retrieve option searchable data
455:      *
456:      * @param int $productId
457:      * @param int $storeId
458:      * @return array
459:      */
460:     public function getSearchableData($productId, $storeId)
461:     {
462:         return $this->_getResource()->getSearchableData($productId, $storeId);
463:     }
464: 
465:     /**
466:      * Clearing object's data
467:      *
468:      * @return Mage_Catalog_Model_Product_Option
469:      */
470:     protected function _clearData()
471:     {
472:         $this->_data = array();
473:         $this->_values = array();
474:         return $this;
475:     }
476: 
477:     /**
478:      * Clearing cyclic references
479:      *
480:      * @return Mage_Catalog_Model_Product_Option
481:      */
482:     protected function _clearReferences()
483:     {
484:         if (!empty($this->_values)) {
485:             foreach ($this->_values as $value) {
486:                 $value->unsetOption();
487:             }
488:         }
489:         return $this;
490:     }
491: }
492: 
Magento 1.7.0.2 API documentation generated by ApiGen 2.8.0