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_Adminhtml
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: * Adminhtml block for fieldset of configurable product
29: *
30: * @category Mage
31: * @package Mage_Adminhtml
32: * @author Magento Core Team <core@magentocommerce.com>
33: */
34: class Mage_Adminhtml_Block_Catalog_Product_Composite_Fieldset_Configurable extends Mage_Catalog_Block_Product_View_Type_Configurable
35: {
36: /**
37: * Retrieve product
38: *
39: * @return Mage_Catalog_Model_Product
40: */
41: public function getProduct()
42: {
43: if (!$this->hasData('product')) {
44: $this->setData('product', Mage::registry('product'));
45: }
46: $product = $this->getData('product');
47: if (is_null($product->getTypeInstance(true)->getStoreFilter($product))) {
48: $product->getTypeInstance(true)->setStoreFilter(Mage::app()->getStore($product->getStoreId()), $product);
49: }
50:
51: return $product;
52: }
53:
54: /**
55: * Retrieve current store
56: *
57: * @return Mage_Core_Model_Store
58: */
59: public function getCurrentStore()
60: {
61: return Mage::app()->getStore($this->getProduct()->getStoreId());
62: }
63:
64: /**
65: * Returns additional values for js config, con be overriden by descedants
66: *
67: * @return array
68: */
69: protected function _getAdditionalConfig()
70: {
71: $result = parent::_getAdditionalConfig();
72: $result['disablePriceReload'] = true; // There's no field for price at popup
73: $result['stablePrices'] = true; // We don't want to recalc prices displayed in OPTIONs of SELECT
74: return $result;
75: }
76: }
77: