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_Bundle_Model_Sales_Order_Pdf_Items_Creditmemo
  • Mage_Bundle_Model_Sales_Order_Pdf_Items_Invoice
  • Mage_ImportExport_Model_Resource_Helper_Mysql4
  • Mage_Sales_Billing_AgreementController
  • Mage_Sales_Block_Adminhtml_Billing_Agreement
  • Mage_Sales_Block_Adminhtml_Billing_Agreement_Grid
  • Mage_Sales_Block_Adminhtml_Billing_Agreement_View
  • Mage_Sales_Block_Adminhtml_Billing_Agreement_View_Form
  • Mage_Sales_Block_Adminhtml_Billing_Agreement_View_Tab_Info
  • Mage_Sales_Block_Adminhtml_Billing_Agreement_View_Tab_Orders
  • Mage_Sales_Block_Adminhtml_Billing_Agreement_View_Tabs
  • Mage_Sales_Block_Adminhtml_Customer_Edit_Tab_Agreement
  • Mage_Sales_Block_Adminhtml_Customer_Edit_Tab_Recurring_Profile
  • Mage_Sales_Block_Adminhtml_Recurring_Profile
  • Mage_Sales_Block_Adminhtml_Recurring_Profile_Edit_Form
  • Mage_Sales_Block_Adminhtml_Recurring_Profile_Grid
  • Mage_Sales_Block_Adminhtml_Recurring_Profile_View
  • Mage_Sales_Block_Adminhtml_Recurring_Profile_View_Tab_Info
  • Mage_Sales_Block_Adminhtml_Recurring_Profile_View_Tab_Orders
  • Mage_Sales_Block_Adminhtml_Report_Filter_Form
  • Mage_Sales_Block_Adminhtml_Report_Filter_Form_Coupon
  • Mage_Sales_Block_Adminhtml_Report_Filter_Form_Order
  • Mage_Sales_Block_Billing_Agreement_View
  • Mage_Sales_Block_Billing_Agreements
  • Mage_Sales_Block_Guest_Links
  • Mage_Sales_Block_Items_Abstract
  • Mage_Sales_Block_Order_Comments
  • Mage_Sales_Block_Order_Creditmemo
  • Mage_Sales_Block_Order_Creditmemo_Items
  • Mage_Sales_Block_Order_Creditmemo_Totals
  • Mage_Sales_Block_Order_Details
  • Mage_Sales_Block_Order_Email_Creditmemo_Items
  • Mage_Sales_Block_Order_Email_Invoice_Items
  • Mage_Sales_Block_Order_Email_Items
  • Mage_Sales_Block_Order_Email_Items_Default
  • Mage_Sales_Block_Order_Email_Items_Order_Default
  • Mage_Sales_Block_Order_Email_Items_Order_Grouped
  • Mage_Sales_Block_Order_Email_Shipment_Items
  • Mage_Sales_Block_Order_History
  • Mage_Sales_Block_Order_Info
  • Mage_Sales_Block_Order_Info_Buttons
  • Mage_Sales_Block_Order_Invoice
  • Mage_Sales_Block_Order_Invoice_Items
  • Mage_Sales_Block_Order_Invoice_Totals
  • Mage_Sales_Block_Order_Item_Renderer_Default
  • Mage_Sales_Block_Order_Item_Renderer_Grouped
  • Mage_Sales_Block_Order_Items
  • Mage_Sales_Block_Order_Print
  • Mage_Sales_Block_Order_Print_Creditmemo
  • Mage_Sales_Block_Order_Print_Invoice
  • Mage_Sales_Block_Order_Print_Shipment
  • Mage_Sales_Block_Order_Recent
  • Mage_Sales_Block_Order_Shipment
  • Mage_Sales_Block_Order_Shipment_Items
  • Mage_Sales_Block_Order_Totals
  • Mage_Sales_Block_Order_View
  • Mage_Sales_Block_Payment_Form_Billing_Agreement
  • Mage_Sales_Block_Payment_Info_Billing_Agreement
  • Mage_Sales_Block_Recurring_Profile_View
  • Mage_Sales_Block_Recurring_Profiles
  • Mage_Sales_Block_Reorder_Sidebar
  • Mage_Sales_Block_Widget_Guest_Form
  • Mage_Sales_Controller_Abstract
  • Mage_Sales_DownloadController
  • Mage_Sales_Exception
  • Mage_Sales_Helper_Data
  • Mage_Sales_Helper_Guest
  • Mage_Sales_Helper_Reorder
  • Mage_Sales_Model_Abstract
  • Mage_Sales_Model_Api2_Order
  • Mage_Sales_Model_Api2_Order_Address
  • Mage_Sales_Model_Api2_Order_Address_Rest
  • Mage_Sales_Model_Api2_Order_Address_Rest_Admin_V1
  • Mage_Sales_Model_Api2_Order_Address_Rest_Customer_V1
  • Mage_Sales_Model_Api2_Order_Comment
  • Mage_Sales_Model_Api2_Order_Comment_Rest
  • Mage_Sales_Model_Api2_Order_Comment_Rest_Admin_V1
  • Mage_Sales_Model_Api2_Order_Comment_Rest_Customer_V1
  • Mage_Sales_Model_Api2_Order_Item
  • Mage_Sales_Model_Api2_Order_Item_Rest
  • Mage_Sales_Model_Api2_Order_Item_Rest_Admin_V1
  • Mage_Sales_Model_Api2_Order_Item_Rest_Customer_V1
  • Mage_Sales_Model_Api2_Order_Rest
  • Mage_Sales_Model_Api2_Order_Rest_Admin_V1
  • Mage_Sales_Model_Api2_Order_Rest_Customer_V1
  • Mage_Sales_Model_Api_Resource
  • Mage_Sales_Model_Billing_Agreement
  • Mage_Sales_Model_Config
  • Mage_Sales_Model_Config_Ordered
  • Mage_Sales_Model_Convert_Order
  • Mage_Sales_Model_Convert_Quote
  • Mage_Sales_Model_Email_Template
  • Mage_Sales_Model_Entity_Order
  • Mage_Sales_Model_Entity_Order_Address
  • Mage_Sales_Model_Entity_Order_Address_Collection
  • Mage_Sales_Model_Entity_Order_Attribute_Backend_Billing
  • Mage_Sales_Model_Entity_Order_Attribute_Backend_Child
  • Mage_Sales_Model_Entity_Order_Attribute_Backend_Parent
  • Mage_Sales_Model_Entity_Order_Attribute_Backend_Shipping
  • Mage_Sales_Model_Entity_Order_Collection
  • Mage_Sales_Model_Entity_Order_Creditmemo
  • Mage_Sales_Model_Entity_Order_Creditmemo_Attribute_Backend_Child
  • Mage_Sales_Model_Entity_Order_Creditmemo_Attribute_Backend_Parent
  • Mage_Sales_Model_Entity_Order_Creditmemo_Collection
  • Mage_Sales_Model_Entity_Order_Creditmemo_Comment
  • Mage_Sales_Model_Entity_Order_Creditmemo_Comment_Collection
  • Mage_Sales_Model_Entity_Order_Creditmemo_Item
  • Mage_Sales_Model_Entity_Order_Creditmemo_Item_Collection
  • Mage_Sales_Model_Entity_Order_Invoice
  • Mage_Sales_Model_Entity_Order_Invoice_Attribute_Backend_Child
  • Mage_Sales_Model_Entity_Order_Invoice_Attribute_Backend_Item
  • Mage_Sales_Model_Entity_Order_Invoice_Attribute_Backend_Order
  • Mage_Sales_Model_Entity_Order_Invoice_Attribute_Backend_Parent
  • Mage_Sales_Model_Entity_Order_Invoice_Collection
  • Mage_Sales_Model_Entity_Order_Invoice_Comment
  • Mage_Sales_Model_Entity_Order_Invoice_Comment_Collection
  • Mage_Sales_Model_Entity_Order_Invoice_Item
  • Mage_Sales_Model_Entity_Order_Invoice_Item_Collection
  • Mage_Sales_Model_Entity_Order_Item
  • Mage_Sales_Model_Entity_Order_Item_Collection
  • Mage_Sales_Model_Entity_Order_Payment
  • Mage_Sales_Model_Entity_Order_Payment_Collection
  • Mage_Sales_Model_Entity_Order_Shipment
  • Mage_Sales_Model_Entity_Order_Shipment_Attribute_Backend_Child
  • Mage_Sales_Model_Entity_Order_Shipment_Attribute_Backend_Parent
  • Mage_Sales_Model_Entity_Order_Shipment_Collection
  • Mage_Sales_Model_Entity_Order_Shipment_Comment
  • Mage_Sales_Model_Entity_Order_Shipment_Comment_Collection
  • Mage_Sales_Model_Entity_Order_Shipment_Item
  • Mage_Sales_Model_Entity_Order_Shipment_Item_Collection
  • Mage_Sales_Model_Entity_Order_Shipment_Track
  • Mage_Sales_Model_Entity_Order_Shipment_Track_Collection
  • Mage_Sales_Model_Entity_Order_Status_History
  • Mage_Sales_Model_Entity_Order_Status_History_Collection
  • Mage_Sales_Model_Entity_Quote
  • Mage_Sales_Model_Entity_Quote_Address
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Backend
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Backend_Child
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Backend_Parent
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Backend_Region
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Frontend
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Frontend_Custbalance
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Frontend_Discount
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Frontend_Grand
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Frontend_Shipping
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Frontend_Subtotal
  • Mage_Sales_Model_Entity_Quote_Address_Attribute_Frontend_Tax
  • Mage_Sales_Model_Entity_Quote_Address_Collection
  • Mage_Sales_Model_Entity_Quote_Address_Item
  • Mage_Sales_Model_Entity_Quote_Address_Item_Collection
  • Mage_Sales_Model_Entity_Quote_Address_Rate
  • Mage_Sales_Model_Entity_Quote_Address_Rate_Collection
  • Mage_Sales_Model_Entity_Quote_Collection
  • Mage_Sales_Model_Entity_Quote_Item
  • Mage_Sales_Model_Entity_Quote_Item_Collection
  • Mage_Sales_Model_Entity_Quote_Payment
  • Mage_Sales_Model_Entity_Quote_Payment_Collection
  • Mage_Sales_Model_Entity_Sale_Collection
  • Mage_Sales_Model_Entity_Setup
  • Mage_Sales_Model_Mysql4_Abstract
  • Mage_Sales_Model_Mysql4_Billing_Agreement
  • Mage_Sales_Model_Mysql4_Billing_Agreement_Collection
  • Mage_Sales_Model_Mysql4_Collection_Abstract
  • Mage_Sales_Model_Mysql4_Order
  • Mage_Sales_Model_Mysql4_Order_Abstract
  • Mage_Sales_Model_Mysql4_Order_Address
  • Mage_Sales_Model_Mysql4_Order_Address_Collection
  • Mage_Sales_Model_Mysql4_Order_Attribute_Backend_Billing
  • Mage_Sales_Model_Mysql4_Order_Attribute_Backend_Child
  • Mage_Sales_Model_Mysql4_Order_Attribute_Backend_Parent
  • Mage_Sales_Model_Mysql4_Order_Attribute_Backend_Shipping
  • Mage_Sales_Model_Mysql4_Order_Collection
  • Mage_Sales_Model_Mysql4_Order_Collection_Abstract
  • Mage_Sales_Model_Mysql4_Order_Comment_Collection_Abstract
  • Mage_Sales_Model_Mysql4_Order_Creditmemo
  • Mage_Sales_Model_Mysql4_Order_Creditmemo_Attribute_Backend_Child
  • Mage_Sales_Model_Mysql4_Order_Creditmemo_Attribute_Backend_Parent
  • Mage_Sales_Model_Mysql4_Order_Creditmemo_Collection
  • Mage_Sales_Model_Mysql4_Order_Creditmemo_Comment
  • Mage_Sales_Model_Mysql4_Order_Creditmemo_Comment_Collection
  • Mage_Sales_Model_Mysql4_Order_Creditmemo_Grid_Collection
  • Mage_Sales_Model_Mysql4_Order_Creditmemo_Item
  • Mage_Sales_Model_Mysql4_Order_Creditmemo_Item_Collection
  • Mage_Sales_Model_Mysql4_Order_Grid_Collection
  • Mage_Sales_Model_Mysql4_Order_Invoice
  • Mage_Sales_Model_Mysql4_Order_Invoice_Attribute_Backend_Child
  • Mage_Sales_Model_Mysql4_Order_Invoice_Attribute_Backend_Item
  • Mage_Sales_Model_Mysql4_Order_Invoice_Attribute_Backend_Order
  • Mage_Sales_Model_Mysql4_Order_Invoice_Attribute_Backend_Parent
  • Mage_Sales_Model_Mysql4_Order_Invoice_Collection
  • Mage_Sales_Model_Mysql4_Order_Invoice_Comment
  • Mage_Sales_Model_Mysql4_Order_Invoice_Comment_Collection
  • Mage_Sales_Model_Mysql4_Order_Invoice_Grid_Collection
  • Mage_Sales_Model_Mysql4_Order_Invoice_Item
  • Mage_Sales_Model_Mysql4_Order_Invoice_Item_Collection
  • Mage_Sales_Model_Mysql4_Order_Item
  • Mage_Sales_Model_Mysql4_Order_Item_Collection
  • Mage_Sales_Model_Mysql4_Order_Payment
  • Mage_Sales_Model_Mysql4_Order_Payment_Collection
  • Mage_Sales_Model_Mysql4_Order_Payment_Transaction
  • Mage_Sales_Model_Mysql4_Order_Payment_Transaction_Collection
  • Mage_Sales_Model_Mysql4_Order_Shipment
  • Mage_Sales_Model_Mysql4_Order_Shipment_Attribute_Backend_Child
  • Mage_Sales_Model_Mysql4_Order_Shipment_Attribute_Backend_Parent
  • Mage_Sales_Model_Mysql4_Order_Shipment_Collection
  • Mage_Sales_Model_Mysql4_Order_Shipment_Comment
  • Mage_Sales_Model_Mysql4_Order_Shipment_Comment_Collection
  • Mage_Sales_Model_Mysql4_Order_Shipment_Grid_Collection
  • Mage_Sales_Model_Mysql4_Order_Shipment_Item
  • Mage_Sales_Model_Mysql4_Order_Shipment_Item_Collection
  • Mage_Sales_Model_Mysql4_Order_Shipment_Track
  • Mage_Sales_Model_Mysql4_Order_Shipment_Track_Collection
  • Mage_Sales_Model_Mysql4_Order_Status
  • Mage_Sales_Model_Mysql4_Order_Status_Collection
  • Mage_Sales_Model_Mysql4_Order_Status_History
  • Mage_Sales_Model_Mysql4_Order_Status_History_Collection
  • Mage_Sales_Model_Mysql4_Order_Tax
  • Mage_Sales_Model_Mysql4_Order_Tax_Collection
  • Mage_Sales_Model_Mysql4_Quote
  • Mage_Sales_Model_Mysql4_Quote_Address
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Backend
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Backend_Child
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Backend_Parent
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Backend_Region
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Frontend
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Frontend_Custbalance
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Frontend_Discount
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Frontend_Grand
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Frontend_Shipping
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Frontend_Subtotal
  • Mage_Sales_Model_Mysql4_Quote_Address_Attribute_Frontend_Tax
  • Mage_Sales_Model_Mysql4_Quote_Address_Collection
  • Mage_Sales_Model_Mysql4_Quote_Address_Item
  • Mage_Sales_Model_Mysql4_Quote_Address_Item_Collection
  • Mage_Sales_Model_Mysql4_Quote_Address_Rate
  • Mage_Sales_Model_Mysql4_Quote_Address_Rate_Collection
  • Mage_Sales_Model_Mysql4_Quote_Collection
  • Mage_Sales_Model_Mysql4_Quote_Item
  • Mage_Sales_Model_Mysql4_Quote_Item_Collection
  • Mage_Sales_Model_Mysql4_Quote_Item_Option
  • Mage_Sales_Model_Mysql4_Quote_Item_Option_Collection
  • Mage_Sales_Model_Mysql4_Quote_Payment
  • Mage_Sales_Model_Mysql4_Quote_Payment_Collection
  • Mage_Sales_Model_Mysql4_Recurring_Profile
  • Mage_Sales_Model_Mysql4_Recurring_Profile_Collection
  • Mage_Sales_Model_Mysql4_Report
  • Mage_Sales_Model_Mysql4_Report_Abstract
  • Mage_Sales_Model_Mysql4_Report_Bestsellers
  • Mage_Sales_Model_Mysql4_Report_Bestsellers_Collection
  • Mage_Sales_Model_Mysql4_Report_Collection_Abstract
  • Mage_Sales_Model_Mysql4_Report_Invoiced
  • Mage_Sales_Model_Mysql4_Report_Invoiced_Collection_Invoiced
  • Mage_Sales_Model_Mysql4_Report_Invoiced_Collection_Order
  • Mage_Sales_Model_Mysql4_Report_Order
  • Mage_Sales_Model_Mysql4_Report_Order_Collection
  • Mage_Sales_Model_Mysql4_Report_Order_Updatedat_Collection
  • Mage_Sales_Model_Mysql4_Report_Refunded
  • Mage_Sales_Model_Mysql4_Report_Refunded_Collection_Order
  • Mage_Sales_Model_Mysql4_Report_Refunded_Collection_Refunded
  • Mage_Sales_Model_Mysql4_Report_Shipping
  • Mage_Sales_Model_Mysql4_Report_Shipping_Collection_Order
  • Mage_Sales_Model_Mysql4_Report_Shipping_Collection_Shipment
  • Mage_Sales_Model_Mysql4_Sale_Collection
  • Mage_Sales_Model_Mysql4_Setup
  • Mage_Sales_Model_Observer
  • Mage_Sales_Model_Order
  • Mage_Sales_Model_Order_Address
  • Mage_Sales_Model_Order_Api
  • Mage_Sales_Model_Order_Api_V2
  • Mage_Sales_Model_Order_Config
  • Mage_Sales_Model_Order_Creditmemo
  • Mage_Sales_Model_Order_Creditmemo_Api
  • Mage_Sales_Model_Order_Creditmemo_Api_V2
  • Mage_Sales_Model_Order_Creditmemo_Comment
  • Mage_Sales_Model_Order_Creditmemo_Config
  • Mage_Sales_Model_Order_Creditmemo_Item
  • Mage_Sales_Model_Order_Creditmemo_Total_Abstract
  • Mage_Sales_Model_Order_Creditmemo_Total_Cost
  • Mage_Sales_Model_Order_Creditmemo_Total_Discount
  • Mage_Sales_Model_Order_Creditmemo_Total_Grand
  • Mage_Sales_Model_Order_Creditmemo_Total_Shipping
  • Mage_Sales_Model_Order_Creditmemo_Total_Subtotal
  • Mage_Sales_Model_Order_Creditmemo_Total_Tax
  • Mage_Sales_Model_Order_Invoice
  • Mage_Sales_Model_Order_Invoice_Api
  • Mage_Sales_Model_Order_Invoice_Api_V2
  • Mage_Sales_Model_Order_Invoice_Comment
  • Mage_Sales_Model_Order_Invoice_Config
  • Mage_Sales_Model_Order_Invoice_Item
  • Mage_Sales_Model_Order_Invoice_Total_Abstract
  • Mage_Sales_Model_Order_Invoice_Total_Cost
  • Mage_Sales_Model_Order_Invoice_Total_Discount
  • Mage_Sales_Model_Order_Invoice_Total_Grand
  • Mage_Sales_Model_Order_Invoice_Total_Shipping
  • Mage_Sales_Model_Order_Invoice_Total_Subtotal
  • Mage_Sales_Model_Order_Invoice_Total_Tax
  • Mage_Sales_Model_Order_Item
  • Mage_Sales_Model_Order_Payment
  • Mage_Sales_Model_Order_Payment_Transaction
  • Mage_Sales_Model_Order_Pdf_Abstract
  • Mage_Sales_Model_Order_Pdf_Creditmemo
  • Mage_Sales_Model_Order_Pdf_Invoice
  • Mage_Sales_Model_Order_Pdf_Items_Abstract
  • Mage_Sales_Model_Order_Pdf_Items_Creditmemo_Default
  • Mage_Sales_Model_Order_Pdf_Items_Creditmemo_Grouped
  • Mage_Sales_Model_Order_Pdf_Items_Invoice_Default
  • Mage_Sales_Model_Order_Pdf_Items_Invoice_Grouped
  • Mage_Sales_Model_Order_Pdf_Items_Shipment_Default
  • Mage_Sales_Model_Order_Pdf_Shipment
  • Mage_Sales_Model_Order_Pdf_Shipment_Packaging
  • Mage_Sales_Model_Order_Pdf_Total_Default
  • Mage_Sales_Model_Order_Shipment
  • Mage_Sales_Model_Order_Shipment_Api
  • Mage_Sales_Model_Order_Shipment_Api_V2
  • Mage_Sales_Model_Order_Shipment_Comment
  • Mage_Sales_Model_Order_Shipment_Item
  • Mage_Sales_Model_Order_Shipment_Track
  • Mage_Sales_Model_Order_Status
  • Mage_Sales_Model_Order_Status_History
  • Mage_Sales_Model_Order_Tax
  • Mage_Sales_Model_Order_Total
  • Mage_Sales_Model_Order_Total_Abstract
  • Mage_Sales_Model_Order_Total_Config_Base
  • Mage_Sales_Model_Payment_Method_Billing_AgreementAbstract
  • Mage_Sales_Model_Quote
  • Mage_Sales_Model_Quote_Address
  • Mage_Sales_Model_Quote_Address_Item
  • Mage_Sales_Model_Quote_Address_Rate
  • Mage_Sales_Model_Quote_Address_Total
  • Mage_Sales_Model_Quote_Address_Total_Abstract
  • Mage_Sales_Model_Quote_Address_Total_Custbalance
  • Mage_Sales_Model_Quote_Address_Total_Discount
  • Mage_Sales_Model_Quote_Address_Total_Grand
  • Mage_Sales_Model_Quote_Address_Total_Msrp
  • Mage_Sales_Model_Quote_Address_Total_Nominal
  • Mage_Sales_Model_Quote_Address_Total_Nominal_Collector
  • Mage_Sales_Model_Quote_Address_Total_Nominal_Recurring_Initial
  • Mage_Sales_Model_Quote_Address_Total_Nominal_Recurring_Trial
  • Mage_Sales_Model_Quote_Address_Total_Nominal_RecurringAbstract
  • Mage_Sales_Model_Quote_Address_Total_Nominal_Shipping
  • Mage_Sales_Model_Quote_Address_Total_Nominal_Subtotal
  • Mage_Sales_Model_Quote_Address_Total_Shipping
  • Mage_Sales_Model_Quote_Address_Total_Subtotal
  • Mage_Sales_Model_Quote_Address_Total_Tax
  • Mage_Sales_Model_Quote_Config
  • Mage_Sales_Model_Quote_Item
  • Mage_Sales_Model_Quote_Item_Abstract
  • Mage_Sales_Model_Quote_Item_Option
  • Mage_Sales_Model_Quote_Payment
  • Mage_Sales_Model_Recurring_Profile
  • Mage_Sales_Model_Resource_Abstract
  • Mage_Sales_Model_Resource_Billing_Agreement
  • Mage_Sales_Model_Resource_Billing_Agreement_Collection
  • Mage_Sales_Model_Resource_Collection_Abstract
  • Mage_Sales_Model_Resource_Helper_Mysql4
  • Mage_Sales_Model_Resource_Order
  • Mage_Sales_Model_Resource_Order_Abstract
  • Mage_Sales_Model_Resource_Order_Address
  • Mage_Sales_Model_Resource_Order_Address_Collection
  • Mage_Sales_Model_Resource_Order_Attribute_Backend_Billing
  • Mage_Sales_Model_Resource_Order_Attribute_Backend_Child
  • Mage_Sales_Model_Resource_Order_Attribute_Backend_Parent
  • Mage_Sales_Model_Resource_Order_Attribute_Backend_Shipping
  • Mage_Sales_Model_Resource_Order_Collection
  • Mage_Sales_Model_Resource_Order_Collection_Abstract
  • Mage_Sales_Model_Resource_Order_Comment_Collection_Abstract
  • Mage_Sales_Model_Resource_Order_Creditmemo
  • Mage_Sales_Model_Resource_Order_Creditmemo_Attribute_Backend_Child
  • Mage_Sales_Model_Resource_Order_Creditmemo_Attribute_Backend_Parent
  • Mage_Sales_Model_Resource_Order_Creditmemo_Collection
  • Mage_Sales_Model_Resource_Order_Creditmemo_Comment
  • Mage_Sales_Model_Resource_Order_Creditmemo_Comment_Collection
  • Mage_Sales_Model_Resource_Order_Creditmemo_Grid_Collection
  • Mage_Sales_Model_Resource_Order_Creditmemo_Item
  • Mage_Sales_Model_Resource_Order_Creditmemo_Item_Collection
  • Mage_Sales_Model_Resource_Order_Grid_Collection
  • Mage_Sales_Model_Resource_Order_Invoice
  • Mage_Sales_Model_Resource_Order_Invoice_Attribute_Backend_Child
  • Mage_Sales_Model_Resource_Order_Invoice_Attribute_Backend_Item
  • Mage_Sales_Model_Resource_Order_Invoice_Attribute_Backend_Order
  • Mage_Sales_Model_Resource_Order_Invoice_Attribute_Backend_Parent
  • Mage_Sales_Model_Resource_Order_Invoice_Collection
  • Mage_Sales_Model_Resource_Order_Invoice_Comment
  • Mage_Sales_Model_Resource_Order_Invoice_Comment_Collection
  • Mage_Sales_Model_Resource_Order_Invoice_Grid_Collection
  • Mage_Sales_Model_Resource_Order_Invoice_Item
  • Mage_Sales_Model_Resource_Order_Invoice_Item_Collection
  • Mage_Sales_Model_Resource_Order_Item
  • Mage_Sales_Model_Resource_Order_Item_Collection
  • Mage_Sales_Model_Resource_Order_Payment
  • Mage_Sales_Model_Resource_Order_Payment_Collection
  • Mage_Sales_Model_Resource_Order_Payment_Transaction
  • Mage_Sales_Model_Resource_Order_Payment_Transaction_Collection
  • Mage_Sales_Model_Resource_Order_Shipment
  • Mage_Sales_Model_Resource_Order_Shipment_Attribute_Backend_Child
  • Mage_Sales_Model_Resource_Order_Shipment_Attribute_Backend_Parent
  • Mage_Sales_Model_Resource_Order_Shipment_Collection
  • Mage_Sales_Model_Resource_Order_Shipment_Comment
  • Mage_Sales_Model_Resource_Order_Shipment_Comment_Collection
  • Mage_Sales_Model_Resource_Order_Shipment_Grid_Collection
  • Mage_Sales_Model_Resource_Order_Shipment_Item
  • Mage_Sales_Model_Resource_Order_Shipment_Item_Collection
  • Mage_Sales_Model_Resource_Order_Shipment_Track
  • Mage_Sales_Model_Resource_Order_Shipment_Track_Collection
  • Mage_Sales_Model_Resource_Order_Status
  • Mage_Sales_Model_Resource_Order_Status_Collection
  • Mage_Sales_Model_Resource_Order_Status_History
  • Mage_Sales_Model_Resource_Order_Status_History_Collection
  • Mage_Sales_Model_Resource_Order_Tax
  • Mage_Sales_Model_Resource_Order_Tax_Collection
  • Mage_Sales_Model_Resource_Quote
  • Mage_Sales_Model_Resource_Quote_Address
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Backend
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Backend_Child
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Backend_Parent
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Backend_Region
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Frontend
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Frontend_Custbalance
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Frontend_Discount
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Frontend_Grand
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Frontend_Shipping
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Frontend_Subtotal
  • Mage_Sales_Model_Resource_Quote_Address_Attribute_Frontend_Tax
  • Mage_Sales_Model_Resource_Quote_Address_Collection
  • Mage_Sales_Model_Resource_Quote_Address_Item
  • Mage_Sales_Model_Resource_Quote_Address_Item_Collection
  • Mage_Sales_Model_Resource_Quote_Address_Rate
  • Mage_Sales_Model_Resource_Quote_Address_Rate_Collection
  • Mage_Sales_Model_Resource_Quote_Collection
  • Mage_Sales_Model_Resource_Quote_Item
  • Mage_Sales_Model_Resource_Quote_Item_Collection
  • Mage_Sales_Model_Resource_Quote_Item_Option
  • Mage_Sales_Model_Resource_Quote_Item_Option_Collection
  • Mage_Sales_Model_Resource_Quote_Payment
  • Mage_Sales_Model_Resource_Quote_Payment_Collection
  • Mage_Sales_Model_Resource_Recurring_Profile
  • Mage_Sales_Model_Resource_Recurring_Profile_Collection
  • Mage_Sales_Model_Resource_Report
  • Mage_Sales_Model_Resource_Report_Abstract
  • Mage_Sales_Model_Resource_Report_Bestsellers
  • Mage_Sales_Model_Resource_Report_Bestsellers_Collection
  • Mage_Sales_Model_Resource_Report_Collection_Abstract
  • Mage_Sales_Model_Resource_Report_Invoiced
  • Mage_Sales_Model_Resource_Report_Invoiced_Collection_Invoiced
  • Mage_Sales_Model_Resource_Report_Invoiced_Collection_Order
  • Mage_Sales_Model_Resource_Report_Order
  • Mage_Sales_Model_Resource_Report_Order_Collection
  • Mage_Sales_Model_Resource_Report_Order_Createdat
  • Mage_Sales_Model_Resource_Report_Order_Updatedat
  • Mage_Sales_Model_Resource_Report_Order_Updatedat_Collection
  • Mage_Sales_Model_Resource_Report_Refunded
  • Mage_Sales_Model_Resource_Report_Refunded_Collection_Order
  • Mage_Sales_Model_Resource_Report_Refunded_Collection_Refunded
  • Mage_Sales_Model_Resource_Report_Shipping
  • Mage_Sales_Model_Resource_Report_Shipping_Collection_Order
  • Mage_Sales_Model_Resource_Report_Shipping_Collection_Shipment
  • Mage_Sales_Model_Resource_Sale_Collection
  • Mage_Sales_Model_Resource_Setup
  • Mage_Sales_Model_Service_Order
  • Mage_Sales_Model_Service_Quote
  • Mage_Sales_Model_Status_List
  • Mage_Sales_OrderController
  • Mage_Sales_Recurring_ProfileController
  • Mage_Shipping_TrackingController
  • Test

Interfaces

  • Mage_Sales_Model_Resource_Helper_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_Sales
 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:  * Quote item abstract model
 29:  *
 30:  * Price attributes:
 31:  *  - price - initial item price, declared during product association
 32:  *  - original_price - product price before any calculations
 33:  *  - calculation_price - prices for item totals calculation
 34:  *  - custom_price - new price that can be declared by user and recalculated during calculation process
 35:  *  - original_custom_price - original defined value of custom price without any convertion
 36:  *
 37:  * @category   Mage
 38:  * @package    Mage_Sales
 39:  * @author      Magento Core Team <core@magentocommerce.com>
 40:  */
 41: abstract class Mage_Sales_Model_Quote_Item_Abstract extends Mage_Core_Model_Abstract
 42:     implements Mage_Catalog_Model_Product_Configuration_Item_Interface
 43: {
 44:     protected $_parentItem  = null;
 45:     protected $_children    = array();
 46:     protected $_messages    = array();
 47: 
 48:     /**
 49:      * Retrieve Quote instance
 50:      *
 51:      * @return Mage_Sales_Model_Quote
 52:      */
 53:     abstract function getQuote();
 54: 
 55:     /**
 56:      * Retrieve product model object associated with item
 57:      *
 58:      * @return Mage_Catalog_Model_Product
 59:      */
 60:     public function getProduct()
 61:     {
 62:         $product = $this->_getData('product');
 63:         if (($product === null) && $this->getProductId()) {
 64:             $product = Mage::getModel('catalog/product')
 65:                 ->setStoreId($this->getQuote()->getStoreId())
 66:                 ->load($this->getProductId());
 67:             $this->setProduct($product);
 68:         }
 69: 
 70:         /**
 71:          * Reset product final price because it related to custom options
 72:          */
 73:         $product->setFinalPrice(null);
 74:         if (is_array($this->_optionsByCode)) {
 75:             $product->setCustomOptions($this->_optionsByCode);
 76:         }
 77:         return $product;
 78:     }
 79: 
 80:     /**
 81:      * Returns special download params (if needed) for custom option with type = 'file'
 82:      * Needed to implement Mage_Catalog_Model_Product_Configuration_Item_Interface.
 83:      * Return null, as quote item needs no additional configuration.
 84:      *
 85:      * @return null|Varien_Object
 86:      */
 87:     public function getFileDownloadParams()
 88:     {
 89:         return null;
 90:     }
 91: 
 92:     /**
 93:      * Specify parent item id before saving data
 94:      *
 95:      * @return  Mage_Sales_Model_Quote_Item_Abstract
 96:      */
 97:     protected function _beforeSave()
 98:     {
 99:         parent::_beforeSave();
100:         if ($this->getParentItem()) {
101:             $this->setParentItemId($this->getParentItem()->getId());
102:         }
103:         return $this;
104:     }
105: 
106: 
107:     /**
108:      * Set parent item
109:      *
110:      * @param  Mage_Sales_Model_Quote_Item $parentItem
111:      * @return Mage_Sales_Model_Quote_Item
112:      */
113:     public function setParentItem($parentItem)
114:     {
115:         if ($parentItem) {
116:             $this->_parentItem = $parentItem;
117:             $parentItem->addChild($this);
118:         }
119:         return $this;
120:     }
121: 
122:     /**
123:      * Get parent item
124:      *
125:      * @return Mage_Sales_Model_Quote_Item
126:      */
127:     public function getParentItem()
128:     {
129:         return $this->_parentItem;
130:     }
131: 
132:     /**
133:      * Get chil items
134:      *
135:      * @return array
136:      */
137:     public function getChildren()
138:     {
139:         return $this->_children;
140:     }
141: 
142:     /**
143:      * Add child item
144:      *
145:      * @param  Mage_Sales_Model_Quote_Item_Abstract $child
146:      * @return Mage_Sales_Model_Quote_Item_Abstract
147:      */
148:     public function addChild($child)
149:     {
150:         $this->setHasChildren(true);
151:         $this->_children[] = $child;
152:         return $this;
153:     }
154: 
155:     /**
156:      * Adds message(s) for quote item. Duplicated messages are not added.
157:      *
158:      * @param  mixed $messages
159:      * @return Mage_Sales_Model_Quote_Item_Abstract
160:      */
161:     public function setMessage($messages)
162:     {
163:         $messagesExists = $this->getMessage(false);
164:         if (!is_array($messages)) {
165:             $messages = array($messages);
166:         }
167:         foreach ($messages as $message) {
168:             if (!in_array($message, $messagesExists)) {
169:                 $this->addMessage($message);
170:             }
171:         }
172:         return $this;
173:     }
174: 
175:     /**
176:      * Add message of quote item to array of messages
177:      *
178:      * @param   string $message
179:      * @return  Mage_Sales_Model_Quote_Item_Abstract
180:      */
181:     public function addMessage($message)
182:     {
183:         $this->_messages[] = $message;
184:         return $this;
185:     }
186: 
187:     /**
188:      * Get messages array of quote item
189:      *
190:      * @param   bool $string flag for converting messages to string
191:      * @return  array|string
192:      */
193:     public function getMessage($string = true)
194:     {
195:         if ($string) {
196:             return join("\n", $this->_messages);
197:         }
198:         return $this->_messages;
199:     }
200: 
201:     /**
202:      * Removes message by text
203:      *
204:      * @param string $text
205:      * @return Mage_Sales_Model_Quote_Item_Abstract
206:      */
207:     public function removeMessageByText($text)
208:     {
209:         foreach ($this->_messages as $key => $message) {
210:             if ($message == $text) {
211:                 unset($this->_messages[$key]);
212:             }
213:         }
214:         return $this;
215:     }
216: 
217:     /**
218:      * Clears all messages
219:      *
220:      * @return Mage_Sales_Model_Quote_Item_Abstract
221:      */
222:     public function clearMessage()
223:     {
224:         $this->unsMessage(); // For older compatibility, when we kept message inside data array
225:         $this->_messages = array();
226:         return $this;
227:     }
228: 
229:     /**
230:      * Retrieve store model object
231:      *
232:      * @return Mage_Core_Model_Store
233:      */
234:     public function getStore()
235:     {
236:         return $this->getQuote()->getStore();
237:     }
238: 
239:     /**
240:      * Checking item data
241:      *
242:      * @return Mage_Sales_Model_Quote_Item_Abstract
243:      */
244:     public function checkData()
245:     {
246:         $this->setHasError(false);
247:         $this->clearMessage();
248: 
249:         $qty = $this->_getData('qty');
250: 
251:         try {
252:             $this->setQty($qty);
253:         } catch (Mage_Core_Exception $e){
254:             $this->setHasError(true);
255:             $this->setMessage($e->getMessage());
256:         } catch (Exception $e){
257:             $this->setHasError(true);
258:             $this->setMessage(Mage::helper('sales')->__('Item qty declaration error.'));
259:         }
260: 
261:         try {
262:             $this->getProduct()->getTypeInstance(true)->checkProductBuyState($this->getProduct());
263:         } catch (Mage_Core_Exception $e) {
264:             $this->setHasError(true);
265:             $this->setMessage($e->getMessage());
266:             $this->getQuote()->setHasError(true);
267:             $this->getQuote()->addMessage(
268:                 Mage::helper('sales')->__('Some of the products below do not have all the required options. Please edit them and configure all the required options.')
269:             );
270:         } catch (Exception $e) {
271:             $this->setHasError(true);
272:             $this->setMessage(Mage::helper('sales')->__('Item options declaration error.'));
273:             $this->getQuote()->setHasError(true);
274:             $this->getQuote()->addMessage(Mage::helper('sales')->__('Items options declaration error.'));
275:         }
276: 
277:         return $this;
278:     }
279: 
280:     /**
281:      * Get original (not related with parent item) item quantity
282:      *
283:      * @return  int|float
284:      */
285:     public function getQty()
286:     {
287:         return $this->_getData('qty');
288:     }
289: 
290:     /**
291:      * Get total item quantity (include parent item relation)
292:      *
293:      * @return  int|float
294:      */
295:     public function getTotalQty()
296:     {
297:         if ($this->getParentItem()) {
298:             return $this->getQty()*$this->getParentItem()->getQty();
299:         }
300:         return $this->getQty();
301:     }
302: 
303:     /**
304:      * Calculate item row total price
305:      *
306:      * @return Mage_Sales_Model_Quote_Item
307:      */
308:     public function calcRowTotal()
309:     {
310:         $qty        = $this->getTotalQty();
311:         // Round unit price before multiplying to prevent losing 1 cent on subtotal
312:         $total      = $this->getStore()->roundPrice($this->getCalculationPriceOriginal()) * $qty;
313:         $baseTotal  = $this->getBaseCalculationPriceOriginal() * $qty;
314: 
315:         $this->setRowTotal($this->getStore()->roundPrice($total));
316:         $this->setBaseRowTotal($this->getStore()->roundPrice($baseTotal));
317:         return $this;
318:     }
319: 
320:     /**
321:      * Get item price used for quote calculation process.
322:      * This method get custom price (if it is defined) or original product final price
323:      *
324:      * @return float
325:      */
326:     public function getCalculationPrice()
327:     {
328:         $price = $this->_getData('calculation_price');
329:         if (is_null($price)) {
330:             if ($this->hasCustomPrice()) {
331:                 $price = $this->getCustomPrice();
332:             } else {
333:                 $price = $this->getConvertedPrice();
334:             }
335:             $this->setData('calculation_price', $price);
336:         }
337:         return $price;
338:     }
339: 
340:     /**
341:      * Get item price used for quote calculation process.
342:      * This method get original custom price applied before tax calculation
343:      *
344:      * @return float
345:      */
346:     public function getCalculationPriceOriginal()
347:     {
348:         $price = $this->_getData('calculation_price');
349:         if (is_null($price)) {
350:             if ($this->hasOriginalCustomPrice()) {
351:                 $price = $this->getOriginalCustomPrice();
352:             } else {
353:                 $price = $this->getConvertedPrice();
354:             }
355:             $this->setData('calculation_price', $price);
356:         }
357:         return $price;
358:     }
359: 
360:     /**
361:      * Get calculation price used for quote calculation in base currency.
362:      *
363:      * @return float
364:      */
365:     public function getBaseCalculationPrice()
366:     {
367:         if (!$this->hasBaseCalculationPrice()) {
368:             if ($this->hasCustomPrice()) {
369:                 $price = (float) $this->getCustomPrice();
370:                 if ($price) {
371:                     $rate = $this->getStore()->convertPrice($price) / $price;
372:                     $price = $price / $rate;
373:                 }
374:             } else {
375:                 $price = $this->getPrice();
376:             }
377:             $this->setBaseCalculationPrice($price);
378:         }
379:         return $this->_getData('base_calculation_price');
380:     }
381: 
382:     /**
383:      * Get original calculation price used for quote calculation in base currency.
384:      *
385:      * @return float
386:      */
387:     public function getBaseCalculationPriceOriginal()
388:     {
389:         if (!$this->hasBaseCalculationPrice()) {
390:             if ($this->hasOriginalCustomPrice()) {
391:                 $price = (float) $this->getOriginalCustomPrice();
392:                 if ($price) {
393:                     $rate = $this->getStore()->convertPrice($price) / $price;
394:                     $price = $price / $rate;
395:                 }
396:             } else {
397:                 $price = $this->getPrice();
398:             }
399:             $this->setBaseCalculationPrice($price);
400:         }
401:         return $this->_getData('base_calculation_price');
402:     }
403: 
404:     /**
405:      * Get whether the item is nominal
406:      * TODO: fix for multishipping checkout
407:      *
408:      * @return bool
409:      */
410:     public function isNominal()
411:     {
412:         if (!$this->hasData('is_nominal')) {
413:             $this->setData('is_nominal', $this->getProduct() ? '1' == $this->getProduct()->getIsRecurring() : false);
414:         }
415:         return $this->_getData('is_nominal');
416:     }
417: 
418:     /**
419:      * Data getter for 'is_nominal'
420:      * Used for converting item to order item
421:      *
422:      * @return int
423:      */
424:     public function getIsNominal()
425:     {
426:         return (int)$this->isNominal();
427:     }
428: 
429:     /**
430:      * Get original price (retrieved from product) for item.
431:      * Original price value is in quote selected currency
432:      *
433:      * @return float
434:      */
435:     public function getOriginalPrice()
436:     {
437:         $price = $this->_getData('original_price');
438:         if (is_null($price)) {
439:             $price = $this->getStore()->convertPrice($this->getBaseOriginalPrice());
440:             $this->setData('original_price', $price);
441:         }
442:         return $price;
443:     }
444: 
445:     /**
446:      * Set original price to item (calculation price will be refreshed too)
447:      *
448:      * @param   float $price
449:      * @return  Mage_Sales_Model_Quote_Item_Abstract
450:      */
451:     public function setOriginalPrice($price)
452:     {
453:         return $this->setData('original_price', $price);
454:     }
455: 
456:     /**
457:      * Get Original item price (got from product) in base website currency
458:      *
459:      * @return float
460:      */
461:     public function getBaseOriginalPrice()
462:     {
463:         return $this->_getData('base_original_price');
464:     }
465: 
466:     /**
467:      * Specify custom item price (used in case whe we have apply not product price to item)
468:      *
469:      * @param   float $value
470:      * @return  Mage_Sales_Model_Quote_Item_Abstract
471:      */
472:     public function setCustomPrice($value)
473:     {
474:         $this->setCalculationPrice($value);
475:         $this->setBaseCalculationPrice(null);
476:         return $this->setData('custom_price', $value);
477:     }
478: 
479:     /**
480:      * Get item price. Item price currency is website base currency.
481:      *
482:      * @return decimal
483:      */
484:     public function getPrice()
485:     {
486:         return $this->_getData('price');
487:     }
488: 
489:     /**
490:      * Specify item price (base calculation price and converted price will be refreshed too)
491:      *
492:      * @param   float $value
493:      * @return  Mage_Sales_Model_Quote_Item_Abstract
494:      */
495:     public function setPrice($value)
496:     {
497:         $this->setBaseCalculationPrice(null);
498:         $this->setConvertedPrice(null);
499:         return $this->setData('price', $value);
500:     }
501: 
502:     /**
503:      * Get item price converted to quote currency
504:      * @return float
505:      */
506:     public function getConvertedPrice()
507:     {
508:         $price = $this->_getData('converted_price');
509:         if (is_null($price)) {
510:             $price = $this->getStore()->convertPrice($this->getPrice());
511:             $this->setData('converted_price', $price);
512:         }
513:         return $price;
514:     }
515: 
516:     /**
517:      * Set new value for converted price
518:      * @param float $value
519:      * @return Mage_Sales_Model_Quote_Item_Abstract
520:      */
521:     public function setConvertedPrice($value)
522:     {
523:         $this->setCalculationPrice(null);
524:         $this->setData('converted_price', $value);
525:         return $this;
526:     }
527: 
528:     /**
529:      * Clone quote item
530:      *
531:      * @return Mage_Sales_Model_Quote_Item
532:      */
533:     public function __clone()
534:     {
535:         $this->setId(null);
536:         $this->_parentItem  = null;
537:         $this->_children    = array();
538:         $this->_messages    = array();
539:         return $this;
540:     }
541: 
542:     /**
543:      * Checking if there children calculated or parent item
544:      * when we have parent quote item and its children
545:      *
546:      * @return bool
547:      */
548:     public function isChildrenCalculated()
549:     {
550:         if ($this->getParentItem()) {
551:             $calculate = $this->getParentItem()->getProduct()->getPriceType();
552:         } else {
553:             $calculate = $this->getProduct()->getPriceType();
554:         }
555: 
556:         if ((null !== $calculate) && (int)$calculate === Mage_Catalog_Model_Product_Type_Abstract::CALCULATE_CHILD) {
557:             return true;
558:         }
559:         return false;
560:     }
561: 
562:     /**
563:      * Checking can we ship product separatelly (each child separately)
564:      * or each parent product item can be shipped only like one item
565:      *
566:      * @return bool
567:      */
568:     public function isShipSeparately()
569:     {
570:         if ($this->getParentItem()) {
571:             $shipmentType = $this->getParentItem()->getProduct()->getShipmentType();
572:         } else {
573:             $shipmentType = $this->getProduct()->getShipmentType();
574:         }
575: 
576:         if ((null !== $shipmentType) &&
577:             (int)$shipmentType === Mage_Catalog_Model_Product_Type_Abstract::SHIPMENT_SEPARATELY) {
578:             return true;
579:         }
580:         return false;
581:     }
582: 
583: 
584: 
585: 
586: 
587: 
588: 
589: 
590: 
591: 
592: 
593: 
594: 
595: 
596: 
597: 
598: 
599: 
600: 
601: 
602: 
603:     /**
604:      * Calculate item tax amount
605:      *
606:      * @deprecated logic moved to tax totals calculation model
607:      * @return  Mage_Sales_Model_Quote_Item
608:      */
609:     public function calcTaxAmount()
610:     {
611:         $store = $this->getStore();
612: 
613:         if (!Mage::helper('tax')->priceIncludesTax($store)) {
614:             if (Mage::helper('tax')->applyTaxAfterDiscount($store)) {
615:                 $rowTotal       = $this->getRowTotalWithDiscount();
616:                 $rowBaseTotal   = $this->getBaseRowTotalWithDiscount();
617:             } else {
618:                 $rowTotal       = $this->getRowTotal();
619:                 $rowBaseTotal   = $this->getBaseRowTotal();
620:             }
621: 
622:             $taxPercent = $this->getTaxPercent()/100;
623: 
624:             $this->setTaxAmount($store->roundPrice($rowTotal * $taxPercent));
625:             $this->setBaseTaxAmount($store->roundPrice($rowBaseTotal * $taxPercent));
626: 
627:             $rowTotal       = $this->getRowTotal();
628:             $rowBaseTotal   = $this->getBaseRowTotal();
629:             $this->setTaxBeforeDiscount($store->roundPrice($rowTotal * $taxPercent));
630:             $this->setBaseTaxBeforeDiscount($store->roundPrice($rowBaseTotal * $taxPercent));
631:         } else {
632:             if (Mage::helper('tax')->applyTaxAfterDiscount($store)) {
633:                 $totalBaseTax = $this->getBaseTaxAmount();
634:                 $totalTax = $this->getTaxAmount();
635: 
636:                 if ($totalTax && $totalBaseTax) {
637:                     $totalTax -= $this->getDiscountAmount()*($this->getTaxPercent()/100);
638:                     $totalBaseTax -= $this->getBaseDiscountAmount()*($this->getTaxPercent()/100);
639: 
640:                     $this->setBaseTaxAmount($store->roundPrice($totalBaseTax));
641:                     $this->setTaxAmount($store->roundPrice($totalTax));
642:                 }
643:             }
644:         }
645: 
646:         if (Mage::helper('tax')->discountTax($store) && !Mage::helper('tax')->applyTaxAfterDiscount($store)) {
647:             if ($this->getDiscountPercent()) {
648:                 $baseTaxAmount =  $this->getBaseTaxBeforeDiscount();
649:                 $taxAmount = $this->getTaxBeforeDiscount();
650: 
651:                 $baseDiscountDisposition = $baseTaxAmount/100*$this->getDiscountPercent();
652:                 $discountDisposition = $taxAmount/100*$this->getDiscountPercent();
653: 
654:                 $this->setDiscountAmount($this->getDiscountAmount()+$discountDisposition);
655:                 $this->setBaseDiscountAmount($this->getBaseDiscountAmount()+$baseDiscountDisposition);
656:             }
657:         }
658: 
659:         return $this;
660:     }
661: 
662:     /**
663:      * Get item tax amount
664:      *
665:      * @deprecated
666:      * @return  decimal
667:      */
668:     public function getTaxAmount()
669:     {
670:         return $this->_getData('tax_amount');
671:     }
672: 
673: 
674:     /**
675:      * Get item base tax amount
676:      *
677:      * @deprecated
678:      * @return decimal
679:      */
680:     public function getBaseTaxAmount()
681:     {
682:         return $this->_getData('base_tax_amount');
683:     }
684: 
685:     /**
686:      * Get item price (item price always exclude price)
687:      *
688:      * @deprecated
689:      * @return decimal
690:      */
691:     protected function _calculatePrice($value, $saveTaxes = true)
692:     {
693:         $store = $this->getQuote()->getStore();
694: 
695:         if (Mage::helper('tax')->priceIncludesTax($store)) {
696:             $bAddress = $this->getQuote()->getBillingAddress();
697:             $sAddress = $this->getQuote()->getShippingAddress();
698: 
699:             $address = $this->getAddress();
700: 
701:             if ($address) {
702:                 switch ($address->getAddressType()) {
703:                     case Mage_Sales_Model_Quote_Address::TYPE_BILLING:
704:                         $bAddress = $address;
705:                         break;
706:                     case Mage_Sales_Model_Quote_Address::TYPE_SHIPPING:
707:                         $sAddress = $address;
708:                         break;
709:                 }
710:             }
711: 
712:             if ($this->getProduct()->getIsVirtual()) {
713:                 $sAddress = $bAddress;
714:             }
715: 
716:             $priceExcludingTax = Mage::helper('tax')->getPrice(
717:                 $this->getProduct()->setTaxPercent(null),
718:                 $value,
719:                 false,
720:                 $sAddress,
721:                 $bAddress,
722:                 $this->getQuote()->getCustomerTaxClassId(),
723:                 $store
724:             );
725: 
726:             $priceIncludingTax = Mage::helper('tax')->getPrice(
727:                 $this->getProduct()->setTaxPercent(null),
728:                 $value,
729:                 true,
730:                 $sAddress,
731:                 $bAddress,
732:                 $this->getQuote()->getCustomerTaxClassId(),
733:                 $store
734:             );
735: 
736:             if ($saveTaxes) {
737:                 $qty = $this->getQty();
738:                 if ($this->getParentItem()) {
739:                     $qty = $qty*$this->getParentItem()->getQty();
740:                 }
741: 
742:                 if (Mage::helper('tax')->displayCartPriceInclTax($store)) {
743:                     $rowTotal = $value*$qty;
744:                     $rowTotalExcTax = Mage::helper('tax')->getPrice(
745:                         $this->getProduct()->setTaxPercent(null),
746:                         $rowTotal,
747:                         false,
748:                         $sAddress,
749:                         $bAddress,
750:                         $this->getQuote()->getCustomerTaxClassId(),
751:                         $store
752:                     );
753:                     $rowTotalIncTax = Mage::helper('tax')->getPrice(
754:                         $this->getProduct()->setTaxPercent(null),
755:                         $rowTotal,
756:                         true,
757:                         $sAddress,
758:                         $bAddress,
759:                         $this->getQuote()->getCustomerTaxClassId(),
760:                         $store
761:                     );
762:                     $totalBaseTax = $rowTotalIncTax-$rowTotalExcTax;
763:                     $this->setRowTotalExcTax($rowTotalExcTax);
764:                 }
765:                 else {
766:                     $taxAmount = $priceIncludingTax - $priceExcludingTax;
767:                     $this->setTaxPercent($this->getProduct()->getTaxPercent());
768:                     $totalBaseTax = $taxAmount*$qty;
769:                 }
770: 
771:                 $totalTax = $this->getStore()->convertPrice($totalBaseTax);
772:                 $this->setTaxBeforeDiscount($totalTax);
773:                 $this->setBaseTaxBeforeDiscount($totalBaseTax);
774: 
775:                 $this->setTaxAmount($totalTax);
776:                 $this->setBaseTaxAmount($totalBaseTax);
777:             }
778: 
779:             $value = $priceExcludingTax;
780:         }
781: 
782:         return $value;
783:     }
784: }
785: 
Magento 1.7.0.2 API documentation generated by ApiGen 2.8.0