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_Downloadable_Adminhtml_Downloadable_FileController
  • Mage_Downloadable_Adminhtml_Downloadable_Product_EditController
  • Mage_Downloadable_Block_Adminhtml_Catalog_Product_Edit_Tab_Downloadable
  • Mage_Downloadable_Block_Adminhtml_Catalog_Product_Edit_Tab_Downloadable_Links
  • Mage_Downloadable_Block_Adminhtml_Catalog_Product_Edit_Tab_Downloadable_Samples
  • Mage_Downloadable_Block_Adminhtml_Sales_Items_Column_Downloadable_Name
  • Mage_Downloadable_Block_Catalog_Product_Links
  • Mage_Downloadable_Block_Catalog_Product_Samples
  • Mage_Downloadable_Block_Catalog_Product_View_Type
  • Mage_Downloadable_Block_Checkout_Cart_Item_Renderer
  • Mage_Downloadable_Block_Checkout_Success
  • Mage_Downloadable_Block_Customer_Products_List
  • Mage_Downloadable_Block_Sales_Order_Email_Items_Downloadable
  • Mage_Downloadable_Block_Sales_Order_Email_Items_Order_Downloadable
  • Mage_Downloadable_Block_Sales_Order_Item_Renderer_Downloadable
  • Mage_Downloadable_CustomerController
  • Mage_Downloadable_DownloadController
  • Mage_Downloadable_Helper_Catalog_Product_Configuration
  • Mage_Downloadable_Helper_Data
  • Mage_Downloadable_Helper_Download
  • Mage_Downloadable_Helper_File
  • Mage_Downloadable_Model_CatalogIndex_Data_Downloadable
  • Mage_Downloadable_Model_Link
  • Mage_Downloadable_Model_Link_Api
  • Mage_Downloadable_Model_Link_Api_Uploader
  • Mage_Downloadable_Model_Link_Api_V2
  • Mage_Downloadable_Model_Link_Api_Validator
  • Mage_Downloadable_Model_Link_Purchased
  • Mage_Downloadable_Model_Link_Purchased_Item
  • Mage_Downloadable_Model_Mysql4_Indexer_Price
  • Mage_Downloadable_Model_Mysql4_Link
  • Mage_Downloadable_Model_Mysql4_Link_Collection
  • Mage_Downloadable_Model_Mysql4_Link_Purchased
  • Mage_Downloadable_Model_Mysql4_Link_Purchased_Collection
  • Mage_Downloadable_Model_Mysql4_Link_Purchased_Item
  • Mage_Downloadable_Model_Mysql4_Link_Purchased_Item_Collection
  • Mage_Downloadable_Model_Mysql4_Sample
  • Mage_Downloadable_Model_Mysql4_Sample_Collection
  • Mage_Downloadable_Model_Observer
  • Mage_Downloadable_Model_Product_Price
  • Mage_Downloadable_Model_Product_Type
  • Mage_Downloadable_Model_Resource_Indexer_Price
  • Mage_Downloadable_Model_Resource_Link
  • Mage_Downloadable_Model_Resource_Link_Collection
  • Mage_Downloadable_Model_Resource_Link_Purchased
  • Mage_Downloadable_Model_Resource_Link_Purchased_Collection
  • Mage_Downloadable_Model_Resource_Link_Purchased_Item
  • Mage_Downloadable_Model_Resource_Link_Purchased_Item_Collection
  • Mage_Downloadable_Model_Resource_Sample
  • Mage_Downloadable_Model_Resource_Sample_Collection
  • Mage_Downloadable_Model_Sales_Order_Pdf_Items_Abstract
  • Mage_Downloadable_Model_Sales_Order_Pdf_Items_Creditmemo
  • Mage_Downloadable_Model_Sales_Order_Pdf_Items_Invoice
  • Mage_Downloadable_Model_Sample
  • Mage_Downloadable_Model_System_Config_Source_Contentdisposition
  • Mage_Downloadable_Model_System_Config_Source_Orderitemstatus
  • 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_Downloadable
 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:  * Downloadable Product Links part block
 29:  *
 30:  * @category    Mage
 31:  * @package     Mage_Downloadable
 32:  * @author      Magento Core Team <core@magentocommerce.com>
 33:  */
 34: class Mage_Downloadable_Block_Catalog_Product_Links extends Mage_Catalog_Block_Product_Abstract
 35: {
 36:     /**
 37:      * Enter description here...
 38:      *
 39:      * @return boolean
 40:      */
 41:     public function getLinksPurchasedSeparately()
 42:     {
 43:         return $this->getProduct()->getLinksPurchasedSeparately();
 44:     }
 45: 
 46:     /**
 47:      * Enter description here...
 48:      *
 49:      * @return boolean
 50:      */
 51:     public function getLinkSelectionRequired()
 52:     {
 53:         return $this->getProduct()->getTypeInstance(true)
 54:             ->getLinkSelectionRequired($this->getProduct());
 55:     }
 56: 
 57:     /**
 58:      * Enter description here...
 59:      *
 60:      * @return boolean
 61:      */
 62:     public function hasLinks()
 63:     {
 64:         return $this->getProduct()->getTypeInstance(true)
 65:             ->hasLinks($this->getProduct());
 66:     }
 67: 
 68:     /**
 69:      * Enter description here...
 70:      *
 71:      * @return array
 72:      */
 73:     public function getLinks()
 74:     {
 75:         return $this->getProduct()->getTypeInstance(true)
 76:             ->getLinks($this->getProduct());
 77:     }
 78: 
 79:     /**
 80:      * Enter description here...
 81:      *
 82:      * @param Mage_Downloadable_Model_Link $link
 83:      * @return string
 84:      */
 85:     public function getFormattedLinkPrice($link)
 86:     {
 87:         $price = $link->getPrice();
 88:         $store = $this->getProduct()->getStore();
 89: 
 90:         if (0 == $price) {
 91:             return '';
 92:         }
 93: 
 94:         $taxCalculation = Mage::getSingleton('tax/calculation');
 95:         if (!$taxCalculation->getCustomer() && Mage::registry('current_customer')) {
 96:             $taxCalculation->setCustomer(Mage::registry('current_customer'));
 97:         }
 98: 
 99:         $taxHelper = Mage::helper('tax');
100:         $coreHelper = $this->helper('core');
101:         $_priceInclTax = $taxHelper->getPrice($link->getProduct(), $price, true);
102:         $_priceExclTax = $taxHelper->getPrice($link->getProduct(), $price);
103: 
104:         $priceStr = '<span class="price-notice">+';
105:         if ($taxHelper->displayPriceIncludingTax()) {
106:             $priceStr .= $coreHelper->currencyByStore($_priceInclTax, $store);
107:         } elseif ($taxHelper->displayPriceExcludingTax()) {
108:             $priceStr .= $coreHelper->currencyByStore($_priceExclTax, $store);
109:         } elseif ($taxHelper->displayBothPrices()) {
110:             $priceStr .= $coreHelper->currencyByStore($_priceExclTax, $store);
111:             if ($_priceInclTax != $_priceExclTax) {
112:                 $priceStr .= ' (+'.$coreHelper
113:                     ->currencyByStore($_priceInclTax, $store).' '.$this->__('Incl. Tax').')';
114:             }
115:         }
116:         $priceStr .= '</span>';
117: 
118:         return $priceStr;
119:     }
120: 
121:     /**
122:      * Returns price converted to current currency rate
123:      *
124:      * @param float $price
125:      * @return float
126:      */
127:     public function getCurrencyPrice($price)
128:     {
129:         $store = $this->getProduct()->getStore();
130:         return $this->helper('core')->currencyByStore($price, $store, false);
131:     }
132: 
133:     /**
134:      * Enter description here...
135:      *
136:      * @return string
137:      */
138:     public function getJsonConfig()
139:     {
140:         $config = array();
141:         $coreHelper = Mage::helper('core');
142: 
143:         foreach ($this->getLinks() as $link) {
144:             $config[$link->getId()] = $coreHelper->currency($link->getPrice(), false, false);
145:         }
146: 
147:         return $coreHelper->jsonEncode($config);
148:     }
149: 
150:     public function getLinkSamlpeUrl($link)
151:     {
152:         return $this->getUrl('downloadable/download/linkSample', array('link_id' => $link->getId()));
153:     }
154: 
155:     /**
156:      * Return title of links section
157:      *
158:      * @return string
159:      */
160:     public function getLinksTitle()
161:     {
162:         if ($this->getProduct()->getLinksTitle()) {
163:             return $this->getProduct()->getLinksTitle();
164:         }
165:         return Mage::getStoreConfig(Mage_Downloadable_Model_Link::XML_PATH_LINKS_TITLE);
166:     }
167: 
168:     /**
169:      * Return true if target of link new window
170:      *
171:      * @return bool
172:      */
173:     public function getIsOpenInNewWindow()
174:     {
175:         return Mage::getStoreConfigFlag(Mage_Downloadable_Model_Link::XML_PATH_TARGET_NEW_WINDOW);
176:     }
177: 
178:     /**
179:      * Returns whether link checked by default or not
180:      *
181:      * @param Mage_Downloadable_Model_Link $link
182:      * @return bool
183:      */
184:     public function getIsLinkChecked($link)
185:     {
186:         $configValue = $this->getProduct()->getPreconfiguredValues()->getLinks();
187:         if (!$configValue || !is_array($configValue)) {
188:             return false;
189:         }
190: 
191:         return $configValue && (in_array($link->getId(), $configValue));
192:     }
193: 
194:     /**
195:      * Returns value for link's input checkbox - either 'checked' or ''
196:      *
197:      * @param Mage_Downloadable_Model_Link $link
198:      * @return string
199:      */
200:     public function getLinkCheckedValue($link)
201:     {
202:         return $this->getIsLinkChecked($link) ? 'checked' : '';
203:     }
204: }
205: 
Magento 1.7.0.2 API documentation generated by ApiGen 2.8.0