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_XmlConnect
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 image helper
29: *
30: * @category Mage
31: * @package Mage_XmlConnect
32: * @author Magento Core Team <core@magentocommerce.com>
33: */
34: class Mage_XmlConnect_Helper_Catalog_Category_Image extends Mage_Catalog_Helper_Image
35: {
36: /**
37: * Init
38: *
39: * @param Mage_Catalog_Model_Product $product
40: * @param string $attributeName
41: * @param string $imageFile
42: * @return Mage_XmlConnect_Helper_Catalog_Category_Image
43: *
44: */
45: public function init(Mage_Catalog_Model_Product $product, $attributeName, $imageFile = null)
46: {
47: return $this;
48: }
49:
50: /**
51: * Init image helper object
52: *
53: * @param Mage_Catalog_Model_Abstract $category
54: * @param string $attributeName
55: * @param string $imageFile
56: * @return Mage_XmlConnect_Helper_Catalog_Category_Image
57: */
58: public function initialize(Mage_Catalog_Model_Abstract $category, $attributeName, $imageFile = null)
59: {
60: $this->_reset();
61: $this->_setModel(Mage::getModel('xmlconnect/catalog_category_image'));
62: $this->_getModel()->setDestinationSubdir($attributeName);
63: $this->setProduct($category);
64:
65: $this->setWatermark(
66: Mage::getStoreConfig("design/watermark/{$this->_getModel()->getDestinationSubdir()}_image")
67: );
68: $this->setWatermarkImageOpacity(
69: Mage::getStoreConfig("design/watermark/{$this->_getModel()->getDestinationSubdir()}_imageOpacity")
70: );
71: $this->setWatermarkPosition(
72: Mage::getStoreConfig("design/watermark/{$this->_getModel()->getDestinationSubdir()}_position")
73: );
74: $this->setWatermarkSize(
75: Mage::getStoreConfig("design/watermark/{$this->_getModel()->getDestinationSubdir()}_size")
76: );
77:
78: if ($imageFile) {
79: $this->setImageFile($imageFile);
80: } else {
81: /*
82: * add for work original size
83: */
84: $this->_getModel()->setBaseFile(
85: $this->getProduct()->getData($this->_getModel()->getDestinationSubdir())
86: );
87: }
88: return $this;
89: }
90:
91: /**
92: * Return placeholder image file path
93: *
94: * @return string
95: */
96: public function getPlaceholder()
97: {
98: if (!$this->_placeholder) {
99: $attr = $this->_getModel()->getDestinationSubdir();
100: $this->_placeholder = 'images/xmlconnect/catalog/category/placeholder/' . $attr . '.jpg';
101: }
102: return $this->_placeholder;
103: }
104: }
105: