Version Notes
Bug fixes:
- siblings not listed in the order set in admin.
- entity models are missing event prefixes and event objects.
Features:
- Added 'country' field type
- Added log creation for each module with the files that are created.
Refactor:
- Clean up for image attribute renderers (frontend and backend).
- added Mage::logException for admin exceptions
- Rafactor image helper (thanks carco).
Download this release
Release Info
Developer | Marius |
Extension | Ultimate_ModuleCreator |
Version | 1.4.1 |
Comparing to | |
See all releases |
Code changes from version 1.4.0 to 1.4.1
- app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Settings.php +1 -1
- app/code/community/Ultimate/ModuleCreator/Helper/Data.php +7 -1
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Abstract.php +1 -1
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Country.php +88 -0
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Image.php +3 -3
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Website.php +2 -4
- app/code/community/Ultimate/ModuleCreator/Model/Module.php +24 -0
- app/code/community/Ultimate/ModuleCreator/etc/config.xml +2 -2
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Helper/File/01_content.php +1 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/Catalog/Product/List/01_content.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/Sibling/List/01_content.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Helper/Entity/Image/01_content.php +3 -139
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Helper/Image/Abstract/01_content.php +447 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Entity/01_top.php +16 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/10_center.php +2 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/11_mass_status.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/12_mass_update.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/13_mass_parents.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/IsTree/01_top.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/IsTree/09_real_save.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/modulecreator.xml +14 -0
- app/design/adminhtml/default/default/template/ultimate_modulecreator/edit/tab/entities/entity/attribute.phtml +2 -2
- package.xml +13 -11
app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Settings.php
CHANGED
@@ -160,7 +160,7 @@ class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Settings ext
|
|
160 |
'name' => 'license',
|
161 |
'label' => Mage::helper('modulecreator')->__('License'),
|
162 |
'title' => Mage::helper('modulecreator')->__('License'),
|
163 |
-
'required' =>
|
164 |
'value' => $values->getLicense(),
|
165 |
'style' => 'width:'.$fieldWidth.'px',
|
166 |
'after_element_html'=> Mage::helper('modulecreator/adminhtml')->getTooltipHtml(Mage::helper('modulecreator')->__('License'), Mage::helper('modulecreator')->__('Added at the top of every generated file.').'<br />'.Mage::helper('modulecreator')->__('Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year.'))
|
160 |
'name' => 'license',
|
161 |
'label' => Mage::helper('modulecreator')->__('License'),
|
162 |
'title' => Mage::helper('modulecreator')->__('License'),
|
163 |
+
'required' => false,
|
164 |
'value' => $values->getLicense(),
|
165 |
'style' => 'width:'.$fieldWidth.'px',
|
166 |
'after_element_html'=> Mage::helper('modulecreator/adminhtml')->getTooltipHtml(Mage::helper('modulecreator')->__('License'), Mage::helper('modulecreator')->__('Added at the top of every generated file.').'<br />'.Mage::helper('modulecreator')->__('Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year.'))
|
app/code/community/Ultimate/ModuleCreator/Helper/Data.php
CHANGED
@@ -34,7 +34,12 @@ class Ultimate_ModuleCreator_Helper_Data extends Mage_Core_Helper_Data{
|
|
34 |
* @var array()
|
35 |
*/
|
36 |
public static $_restrictedEntityNames = array(
|
37 |
-
'resource', 'setup',
|
|
|
|
|
|
|
|
|
|
|
38 |
);
|
39 |
/**
|
40 |
* get a list with "special attribute" names and error messages
|
@@ -97,6 +102,7 @@ class Ultimate_ModuleCreator_Helper_Data extends Mage_Core_Helper_Data{
|
|
97 |
$options['file'] = Mage::helper('modulecreator')->__('File');
|
98 |
$options['image'] = Mage::helper('modulecreator')->__('Image');
|
99 |
$options['website'] = Mage::helper('modulecreator')->__('Website');
|
|
|
100 |
return $options;
|
101 |
}
|
102 |
/**
|
34 |
* @var array()
|
35 |
*/
|
36 |
public static $_restrictedEntityNames = array(
|
37 |
+
'resource', 'setup',
|
38 |
+
'attribute', 'system',
|
39 |
+
'flat', 'data',
|
40 |
+
'collection', 'adminhtml',
|
41 |
+
'widget', 'observer',
|
42 |
+
'tree', 'image'
|
43 |
);
|
44 |
/**
|
45 |
* get a list with "special attribute" names and error messages
|
102 |
$options['file'] = Mage::helper('modulecreator')->__('File');
|
103 |
$options['image'] = Mage::helper('modulecreator')->__('Image');
|
104 |
$options['website'] = Mage::helper('modulecreator')->__('Website');
|
105 |
+
$options['country'] = Mage::helper('modulecreator')->__('Country');
|
106 |
return $options;
|
107 |
}
|
108 |
/**
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Abstract.php
CHANGED
@@ -152,7 +152,7 @@ class Ultimate_ModuleCreator_Model_Attribute_Type_Abstract extends Varien_Object
|
|
152 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
153 |
*/
|
154 |
public function getFrontendHtml(){
|
155 |
-
return
|
156 |
}
|
157 |
/**
|
158 |
* get the text for RSS
|
152 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
153 |
*/
|
154 |
public function getFrontendHtml(){
|
155 |
+
return '<?php echo Mage::helper(\''.strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName()).'\')->__(\''.$this->getAttribute()->getLabel().'\');?>:<?php echo $_'.strtolower($this->getAttribute()->getEntity()->getNameSingular()).'->get'.$this->getAttribute()->getMagicMethodCode().'();?>'."\n";
|
156 |
}
|
157 |
/**
|
158 |
* get the text for RSS
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Country.php
ADDED
@@ -0,0 +1,88 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Ultimate_ModuleCreator extension
|
4 |
+
*
|
5 |
+
* NOTICE OF LICENSE
|
6 |
+
*
|
7 |
+
* This source file is subject to the MIT License
|
8 |
+
* that is bundled with this package in the file LICENSE_UMC.txt.
|
9 |
+
* It is also available through the world-wide-web at this URL:
|
10 |
+
* http://opensource.org/licenses/mit-license.php
|
11 |
+
*
|
12 |
+
* @category Ultimate
|
13 |
+
* @package Ultimate_ModuleCreator
|
14 |
+
* @copyright Copyright (c) 2012
|
15 |
+
* @license http://opensource.org/licenses/mit-license.php MIT License
|
16 |
+
*/
|
17 |
+
/**
|
18 |
+
* attribute type country
|
19 |
+
*
|
20 |
+
* @category Ultimate
|
21 |
+
* @package Ultimate_ModuleCreator
|
22 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
+
*/
|
24 |
+
class Ultimate_ModuleCreator_Model_Attribute_Type_Country extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
25 |
+
/**
|
26 |
+
* get the type for the form
|
27 |
+
* @access public
|
28 |
+
* @return string
|
29 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
30 |
+
*/
|
31 |
+
public function getFormType(){
|
32 |
+
return 'select';
|
33 |
+
}
|
34 |
+
/**
|
35 |
+
* get the options for form input
|
36 |
+
* @access public
|
37 |
+
* @return string
|
38 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
39 |
+
*/
|
40 |
+
public function getFormOptions(){
|
41 |
+
$options = parent::getFormOptions();
|
42 |
+
$module = strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName());
|
43 |
+
$options .= self::OPTION_SEPARATOR."'values'=> Mage::getResourceModel('directory/country_collection')->toOptionArray(),\n";
|
44 |
+
return $options;
|
45 |
+
}
|
46 |
+
/**
|
47 |
+
* get the sql column
|
48 |
+
* @access public
|
49 |
+
* @return string
|
50 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
51 |
+
*/
|
52 |
+
public function getSqlColumn(){
|
53 |
+
return '`'.$this->getAttribute()->getCode().'` VARCHAR(3) '.$this->getNullSql().' default \'\',';
|
54 |
+
}
|
55 |
+
/**
|
56 |
+
* get html for frontend
|
57 |
+
* @access public
|
58 |
+
* @return string
|
59 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
60 |
+
*/
|
61 |
+
public function getFrontendHtml(){
|
62 |
+
$entityName = strtolower($this->getAttribute()->getEntity()->getNameSingular());
|
63 |
+
$ucEntity = ucfirst($entityName);
|
64 |
+
$module = strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName());
|
65 |
+
return '<?php echo Mage::helper(\''.$module.'\')->__("'.$this->getAttribute()->getLabel().'");?>:<?php echo ($_'.$entityName.'->get'.$this->getAttribute()->getMagicMethodCode().'()) ? Mage::getModel(\'directory/country\')->load($_'.$entityName.'->get'.$this->getAttribute()->getMagicMethodCode().'())->getName():Mage::helper(\''.$module.'\')->__(\'None\') ?>'."\n";
|
66 |
+
}
|
67 |
+
/**
|
68 |
+
* get the grid column options
|
69 |
+
* @access public
|
70 |
+
* @return string
|
71 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
72 |
+
*/
|
73 |
+
public function getColumnOptions(){
|
74 |
+
return "'type' => 'country',\n";
|
75 |
+
}
|
76 |
+
/**
|
77 |
+
* get the RSS feed text
|
78 |
+
* @access public
|
79 |
+
* @return string
|
80 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
81 |
+
*/
|
82 |
+
public function getRssText(){
|
83 |
+
$entityName = strtolower($this->getAttribute()->getEntity()->getNameSingular());
|
84 |
+
$ucEntity = ucfirst($entityName);
|
85 |
+
$module = strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName());
|
86 |
+
return ' $description .= Mage::helper(\''.$module.'\')->__("'.$this->getAttribute()->getLabel().'").\':\'.(($item->get'.$this->getAttribute()->getMagicMethodCode().'()) ? Mage::getModel(\'directory/country\')->load($item->get'.$this->getAttribute()->getMagicMethodCode().'())->getName():Mage::helper(\''.$module.'\')->__(\'None\'));';
|
87 |
+
}
|
88 |
+
}
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Image.php
CHANGED
@@ -60,8 +60,8 @@ class Ultimate_ModuleCreator_Model_Attribute_Type_Image extends Ultimate_ModuleC
|
|
60 |
$entityName = strtolower($this->getAttribute()->getEntity()->getNameSingular());
|
61 |
$ucEntity = ucfirst($entityName);
|
62 |
$module = strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName());
|
63 |
-
$content .= '
|
64 |
-
$content .= ' <img src="<?php echo Mage::helper(\''.$module.'/'.$entityName.'_image\')->init($_'.$entityName.', \''.$this->getAttribute()->getCode().'\'
|
65 |
$content .= ' <?php endif;?>'."\n";
|
66 |
return $content;
|
67 |
}
|
@@ -77,7 +77,7 @@ class Ultimate_ModuleCreator_Model_Attribute_Type_Image extends Ultimate_ModuleC
|
|
77 |
$ucEntity = ucfirst($entityName);
|
78 |
$module = strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName());
|
79 |
$content .= ' if ($item->get'.$this->getAttribute()->getMagicMethodCode().'()) {'."\n";
|
80 |
-
$content .= ' $description .= \'<img src="\'.Mage::helper(\''.$module.'/'.$entityName.'_image\')->init($item, \''.$this->getAttribute()->getCode().'\'
|
81 |
$content .= ' }';
|
82 |
return $content;
|
83 |
}
|
60 |
$entityName = strtolower($this->getAttribute()->getEntity()->getNameSingular());
|
61 |
$ucEntity = ucfirst($entityName);
|
62 |
$module = strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName());
|
63 |
+
$content .= '<?php if ($_'.$entityName.'->get'.$this->getAttribute()->getMagicMethodCode().'()) :?>'."\n";
|
64 |
+
$content .= ' <img src="<?php echo Mage::helper(\''.$module.'/'.$entityName.'_image\')->init($_'.$entityName.', \''.$this->getAttribute()->getCode().'\')->resize(75);?>" alt="<?php echo $this->htmlEscape($_'.$entityName.'->get'.$this->getAttribute()->getEntity()->getNameAttributeMagicCode().'());?>" />'."\n\t";
|
65 |
$content .= ' <?php endif;?>'."\n";
|
66 |
return $content;
|
67 |
}
|
77 |
$ucEntity = ucfirst($entityName);
|
78 |
$module = strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName());
|
79 |
$content .= ' if ($item->get'.$this->getAttribute()->getMagicMethodCode().'()) {'."\n";
|
80 |
+
$content .= ' $description .= \'<img src="\'.Mage::helper(\''.$module.'/'.$entityName.'_image\')->init($item, \''.$this->getAttribute()->getCode().'\')->resize(75).\'" alt="\'.$this->htmlEscape($item->get'.$this->getAttribute()->getEntity()->getNameAttributeMagicCode().'()).\'" />\';'."\n";
|
81 |
$content .= ' }';
|
82 |
return $content;
|
83 |
}
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Website.php
CHANGED
@@ -86,8 +86,6 @@ class Ultimate_ModuleCreator_Model_Attribute_Type_Website extends Ultimate_Modul
|
|
86 |
$entityName = strtolower($this->getAttribute()->getEntity()->getNameSingular());
|
87 |
$ucEntity = ucfirst($entityName);
|
88 |
$module = strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName());
|
89 |
-
return '
|
90 |
-
}
|
91 |
-
|
92 |
-
|
93 |
}
|
86 |
$entityName = strtolower($this->getAttribute()->getEntity()->getNameSingular());
|
87 |
$ucEntity = ucfirst($entityName);
|
88 |
$module = strtolower($this->getAttribute()->getEntity()->getModule()->getModuleName());
|
89 |
+
return ' $description .= Mage::helper(\''.$module.'\')->__("'.$this->getAttribute()->getLabel().'").\':\'.(($item->get'.$this->getAttribute()->getMagicMethodCode().'()) ? Mage::getModel(\'core/website\')->load($item->get'.$this->getAttribute()->getMagicMethodCode().'())->getName():Mage::helper(\''.$module.'\')->__(\'None\'));';
|
90 |
+
}
|
|
|
|
|
91 |
}
|
app/code/community/Ultimate/ModuleCreator/Model/Module.php
CHANGED
@@ -208,6 +208,15 @@ class Ultimate_ModuleCreator_Model_Module extends Ultimate_ModuleCreator_Model_A
|
|
208 |
public function getXmlPath(){
|
209 |
return Mage::helper('modulecreator')->getLocalPackagesPath().$this->getNamespace()."_".$this->getModuleName().'.xml';
|
210 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
211 |
/**
|
212 |
* save the module as xml
|
213 |
* @access public
|
@@ -352,6 +361,21 @@ class Ultimate_ModuleCreator_Model_Module extends Ultimate_ModuleCreator_Model_A
|
|
352 |
$destinationFile = $basePath.$name;
|
353 |
$this->_writeFile($destinationFile, $file);
|
354 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
355 |
return $this;
|
356 |
}
|
357 |
/**
|
208 |
public function getXmlPath(){
|
209 |
return Mage::helper('modulecreator')->getLocalPackagesPath().$this->getNamespace()."_".$this->getModuleName().'.xml';
|
210 |
}
|
211 |
+
/**
|
212 |
+
* get the log file path
|
213 |
+
* @access public
|
214 |
+
* @return string
|
215 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
216 |
+
*/
|
217 |
+
public function getLogPath(){
|
218 |
+
return Mage::helper('modulecreator')->getLocalPackagesPath().$this->getNamespace()."_".$this->getModuleName().'.log';
|
219 |
+
}
|
220 |
/**
|
221 |
* save the module as xml
|
222 |
* @access public
|
361 |
$destinationFile = $basePath.$name;
|
362 |
$this->_writeFile($destinationFile, $file);
|
363 |
}
|
364 |
+
$this->_writeLog();
|
365 |
+
return $this;
|
366 |
+
}
|
367 |
+
/**
|
368 |
+
* write a log with the files that were created
|
369 |
+
* @access protected
|
370 |
+
* @return Ultimate_ModuleCreator_Model_Module
|
371 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
372 |
+
*/
|
373 |
+
protected function _writeLog(){
|
374 |
+
$filesToWrite = array_keys($this->_files);
|
375 |
+
asort($filesToWrite);
|
376 |
+
$filesToWrite = array_values($filesToWrite);
|
377 |
+
$text = implode("\n", $filesToWrite);
|
378 |
+
$this->_writeFile($this->getLogPath(), $text);
|
379 |
return $this;
|
380 |
}
|
381 |
/**
|
app/code/community/Ultimate/ModuleCreator/etc/config.xml
CHANGED
@@ -24,7 +24,7 @@
|
|
24 |
<config>
|
25 |
<modules>
|
26 |
<Ultimate_ModuleCreator>
|
27 |
-
<version>1.4.
|
28 |
</Ultimate_ModuleCreator>
|
29 |
</modules>
|
30 |
<global>
|
@@ -85,7 +85,7 @@
|
|
85 |
NOTICE OF LICENSE
|
86 |
|
87 |
This source file is subject to the MIT License
|
88 |
-
that is bundled with this package in the file
|
89 |
It is also available through the world-wide-web at this URL:
|
90 |
http://opensource.org/licenses/mit-license.php
|
91 |
|
24 |
<config>
|
25 |
<modules>
|
26 |
<Ultimate_ModuleCreator>
|
27 |
+
<version>1.4.1</version>
|
28 |
</Ultimate_ModuleCreator>
|
29 |
</modules>
|
30 |
<global>
|
85 |
NOTICE OF LICENSE
|
86 |
|
87 |
This source file is subject to the MIT License
|
88 |
+
that is bundled with this package in the file LICENSE.txt.
|
89 |
It is also available through the world-wide-web at this URL:
|
90 |
http://opensource.org/licenses/mit-license.php
|
91 |
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Helper/File/01_content.php
CHANGED
@@ -27,7 +27,7 @@ class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Helper_File extends Va
|
|
27 |
*/
|
28 |
public function getElementHtml(){
|
29 |
$html = '';
|
30 |
-
$this->
|
31 |
$html.= parent::getElementHtml();
|
32 |
if ($this->getValue()) {
|
33 |
$url = $this->_getUrl();
|
27 |
*/
|
28 |
public function getElementHtml(){
|
29 |
$html = '';
|
30 |
+
$this->addClass('input-file');
|
31 |
$html.= parent::getElementHtml();
|
32 |
if ($this->getValue()) {
|
33 |
$url = $this->_getUrl();
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/Catalog/Product/List/01_content.php
CHANGED
@@ -18,6 +18,7 @@ class {{Namespace}}_{{Module}}_Block_{{Entity}}_Catalog_Product_List extends Mag
|
|
18 |
$collection = $this->get{{Entity}}()->getSelectedProductsCollection();
|
19 |
$collection->addAttributeToSelect('name');
|
20 |
$collection->addUrlRewrite();
|
|
|
21 |
Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($collection);
|
22 |
Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($collection);
|
23 |
return $collection;
|
18 |
$collection = $this->get{{Entity}}()->getSelectedProductsCollection();
|
19 |
$collection->addAttributeToSelect('name');
|
20 |
$collection->addUrlRewrite();
|
21 |
+
$collection->getSelect()->order('related.position');
|
22 |
Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($collection);
|
23 |
Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($collection);
|
24 |
return $collection;
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/Sibling/List/01_content.php
CHANGED
@@ -19,6 +19,7 @@ class {{Namespace}}_{{Module}}_Block_{{Entity}}_{{Sibling}}_List extends {{Names
|
|
19 |
${{entity}} = $this->get{{Entity}}();
|
20 |
if (${{entity}}){
|
21 |
$this->get{{Siblings}}()->add{{Entity}}Filter(${{entity}}->getId());
|
|
|
22 |
}
|
23 |
}
|
24 |
/**
|
19 |
${{entity}} = $this->get{{Entity}}();
|
20 |
if (${{entity}}){
|
21 |
$this->get{{Siblings}}()->add{{Entity}}Filter(${{entity}}->getId());
|
22 |
+
$this->get{{Siblings}}()->unshiftOrder('related_{{entity}}.position', 'ASC');
|
23 |
}
|
24 |
}
|
25 |
/**
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Helper/Entity/Image/01_content.php
CHANGED
@@ -7,151 +7,15 @@
|
|
7 |
* @package {{Namespace}}_{{Module}}
|
8 |
* {{qwertyuiop}}
|
9 |
*/
|
10 |
-
class {{Namespace}}_{{Module}}_Helper_{{Entity}}_Image extends
|
11 |
/**
|
12 |
* image placeholder
|
13 |
* @var string
|
14 |
*/
|
15 |
protected $_placeholder = 'images/placeholder/{{entity}}.jpg';
|
16 |
/**
|
17 |
-
* image
|
18 |
* @var string
|
19 |
*/
|
20 |
-
protected $
|
21 |
-
/**
|
22 |
-
* image processor
|
23 |
-
* @var null|Varien_Image_Adapter_Gd2
|
24 |
-
*/
|
25 |
-
protected $_imageProcessor = null;
|
26 |
-
/**
|
27 |
-
* image to process
|
28 |
-
* @var null|string
|
29 |
-
*/
|
30 |
-
protected $_image = null;
|
31 |
-
/**
|
32 |
-
* resize width
|
33 |
-
* @var null|int
|
34 |
-
*/
|
35 |
-
protected $_width = null;
|
36 |
-
/**
|
37 |
-
* resize height
|
38 |
-
* @var null|int
|
39 |
-
*/
|
40 |
-
protected $_height = null;
|
41 |
-
/**
|
42 |
-
* resized image folder name
|
43 |
-
* @var string
|
44 |
-
*/
|
45 |
-
protected $_resizeFolderName = 'cache';
|
46 |
-
/**
|
47 |
-
* image base path
|
48 |
-
* @var sting
|
49 |
-
*/
|
50 |
-
protected $_basePath = '{{entity}}';
|
51 |
-
/**
|
52 |
-
* image path
|
53 |
-
* @var string
|
54 |
-
*/
|
55 |
-
protected $_imagePath = 'image';
|
56 |
-
/**
|
57 |
-
* get the image path for {{entityLabel}}
|
58 |
-
* @access public
|
59 |
-
* @return string
|
60 |
-
* {{qwertyuiop}}
|
61 |
-
*/
|
62 |
-
public function getImageBaseDir(){
|
63 |
-
return Mage::getBaseDir('media').DS.'{{entity}}'.DS.'image';
|
64 |
-
}
|
65 |
-
/**
|
66 |
-
* get the image url for {{entityLabel}}
|
67 |
-
* @access public
|
68 |
-
* @return string
|
69 |
-
* {{qwertyuiop}}
|
70 |
-
*/
|
71 |
-
public function getImageBaseUrl(){
|
72 |
-
return Mage::getBaseUrl('media').'{{entity}}'.'/'.'image';
|
73 |
-
}
|
74 |
-
/**
|
75 |
-
* init image
|
76 |
-
* @access public
|
77 |
-
* @param Varien_Object $object
|
78 |
-
* @param string $imageField
|
79 |
-
* @return {{Namespace}}_{{Module}}_Helper_{{Entity}}_Image
|
80 |
-
* {{qwertyuiop}}
|
81 |
-
*/
|
82 |
-
public function init(Varien_Object $object, $imageField = '{{firstImageField}}'){
|
83 |
-
$this->_reset();
|
84 |
-
$this->_image = $object->getData($imageField);
|
85 |
-
try{
|
86 |
-
$this->_getImageProcessor()->open($this->getImageBaseDir().$this->_image);
|
87 |
-
}
|
88 |
-
catch (Exception $e){
|
89 |
-
$this->_getImageProcessor()->open(Mage::getDesign()->getSkinUrl($this->_placeholder));
|
90 |
-
$this->_image = '/'.$this->_placeholder;
|
91 |
-
}
|
92 |
-
return $this;
|
93 |
-
}
|
94 |
-
/**
|
95 |
-
* reset the image processor
|
96 |
-
* @access protected
|
97 |
-
* @return {{Namespace}}_{{Module}}_Helper_{{Entity}}_Image
|
98 |
-
* {{qwertyuiop}}
|
99 |
-
*/
|
100 |
-
protected function _reset(){
|
101 |
-
$this->_imageProcessor = null;
|
102 |
-
$this->_image = null;
|
103 |
-
$this->_width = null;
|
104 |
-
$this->_height = null;
|
105 |
-
return $this;
|
106 |
-
}
|
107 |
-
/**
|
108 |
-
* get the image processor
|
109 |
-
* @access protected
|
110 |
-
* @return Varien_Image_Adapter_Gd2
|
111 |
-
* {{qwertyuiop}}
|
112 |
-
*/
|
113 |
-
protected function _getImageProcessor(){
|
114 |
-
if (is_null($this->_imageProcessor)){
|
115 |
-
$class = $this->_imageProcessorClass;
|
116 |
-
$this->_imageProcessor = new $class();
|
117 |
-
}
|
118 |
-
return $this->_imageProcessor;
|
119 |
-
}
|
120 |
-
/**
|
121 |
-
* resize image
|
122 |
-
* @access public
|
123 |
-
* @param int $width - defaults to null
|
124 |
-
* @param int $height - defaults to null
|
125 |
-
* @return {{Namespace}}_{{Module}}_Helper_{{Entity}}_Image
|
126 |
-
* {{qwertyuiop}}
|
127 |
-
*/
|
128 |
-
public function resize($width = null, $height = null){
|
129 |
-
$this->_width = $width;
|
130 |
-
$this->_height = $height;
|
131 |
-
$this->_getImageProcessor()->keepAspectRatio(true);
|
132 |
-
$this->_getImageProcessor()->keepTransparency(true);
|
133 |
-
$this->_getImageProcessor()->resize($width, $height);
|
134 |
-
return $this;
|
135 |
-
}
|
136 |
-
/**
|
137 |
-
* to string - no need for cache expire because the image names will be different
|
138 |
-
* @access public
|
139 |
-
* @return string
|
140 |
-
* {{qwertyuiop}}
|
141 |
-
*/
|
142 |
-
public function __toString(){
|
143 |
-
try{
|
144 |
-
$width = $this->_width;
|
145 |
-
$height = $this->_height;
|
146 |
-
$imageRealPath = $this->getImageBaseDir().DS.$this->_resizeFolderName.DS.$width.'x'.$height.$this->_image;
|
147 |
-
if (!file_exists($imageRealPath)){
|
148 |
-
$this->_getImageProcessor()->save($imageRealPath);
|
149 |
-
}
|
150 |
-
return $this->getImageBaseUrl().'/'.$this->_resizeFolderName.'/'.$width.'x'.$height.$this->_image;
|
151 |
-
}
|
152 |
-
catch (Exception $e){
|
153 |
-
Mage::logException($e);
|
154 |
-
return '';
|
155 |
-
}
|
156 |
-
}
|
157 |
}
|
7 |
* @package {{Namespace}}_{{Module}}
|
8 |
* {{qwertyuiop}}
|
9 |
*/
|
10 |
+
class {{Namespace}}_{{Module}}_Helper_{{Entity}}_Image extends {{Namespace}}_{{Module}}_Helper_Image_Abstract{
|
11 |
/**
|
12 |
* image placeholder
|
13 |
* @var string
|
14 |
*/
|
15 |
protected $_placeholder = 'images/placeholder/{{entity}}.jpg';
|
16 |
/**
|
17 |
+
* image subdir
|
18 |
* @var string
|
19 |
*/
|
20 |
+
protected $_subdir = '{{entity}}';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Helper/Image/Abstract/01_content.php
ADDED
@@ -0,0 +1,447 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
{{License}}
|
3 |
+
/**
|
4 |
+
* abstract image helper
|
5 |
+
*
|
6 |
+
* @category {{Namespace}}
|
7 |
+
* @package {{Namespace}}_{{Module}}
|
8 |
+
* {{qwertyuiop}}
|
9 |
+
*/
|
10 |
+
abstract class {{Namespace}}_{{Module}}_Helper_Image_Abstract extends Mage_Core_Helper_Data{
|
11 |
+
/**
|
12 |
+
* path to image placeholder
|
13 |
+
* override in child
|
14 |
+
* @var string
|
15 |
+
*/
|
16 |
+
protected $_placeholder = '';
|
17 |
+
/**
|
18 |
+
* subdirectory to save imaves
|
19 |
+
* override in child
|
20 |
+
* @var string
|
21 |
+
*/
|
22 |
+
protected $_subdir = '';
|
23 |
+
/**
|
24 |
+
* image processor
|
25 |
+
* @var null|Varien_Image_Adapter_Gd2
|
26 |
+
*/
|
27 |
+
protected $_imageProcessor = null;
|
28 |
+
/**
|
29 |
+
* image to process
|
30 |
+
* @var unknown_type
|
31 |
+
*/
|
32 |
+
protected $_image = null;
|
33 |
+
/**
|
34 |
+
* error message
|
35 |
+
* @var string
|
36 |
+
*/
|
37 |
+
protected $_openError = "";
|
38 |
+
/**
|
39 |
+
* keep image frame
|
40 |
+
* @var bool
|
41 |
+
*/
|
42 |
+
protected $_keepFrame = false;
|
43 |
+
/**
|
44 |
+
* keep image aspect ratio
|
45 |
+
* @var bool
|
46 |
+
*/
|
47 |
+
protected $_keepAspectRatio = true;
|
48 |
+
/**
|
49 |
+
* constrain image
|
50 |
+
* @var bool
|
51 |
+
*/
|
52 |
+
protected $_constrainOnly = true;
|
53 |
+
/**
|
54 |
+
* addaptive resize - crop
|
55 |
+
* https://github.com/wearefarm/magento-adaptive-resize/blob/master/README.md
|
56 |
+
* @var bool
|
57 |
+
*/
|
58 |
+
protected $_adaptiveResize = 'center'; // false|center|top|bottom
|
59 |
+
/**
|
60 |
+
* image width
|
61 |
+
* @var mixed(null|int)
|
62 |
+
*/
|
63 |
+
protected $_width = null;
|
64 |
+
/**
|
65 |
+
* image height
|
66 |
+
* @var mixed(null|int)
|
67 |
+
*/
|
68 |
+
protected $_height = null;
|
69 |
+
/**
|
70 |
+
* image resize needed
|
71 |
+
* @var mixed (null|array)
|
72 |
+
*/
|
73 |
+
protected $_scheduledResize = null;
|
74 |
+
/**
|
75 |
+
* image is resized
|
76 |
+
* @var bool
|
77 |
+
*/
|
78 |
+
protected $_resized = false;
|
79 |
+
/**
|
80 |
+
* addaptive resize positions
|
81 |
+
* https://github.com/wearefarm/magento-adaptive-resize/blob/master/README.md
|
82 |
+
* @var array
|
83 |
+
*/
|
84 |
+
protected $_adaptiveResizePositions = array(
|
85 |
+
'center'=>array(0.5,0.5),
|
86 |
+
'top' =>array(1,0),
|
87 |
+
'bottom'=>array(0,1)
|
88 |
+
);
|
89 |
+
/**
|
90 |
+
* resized image folder name
|
91 |
+
* @var string
|
92 |
+
*/
|
93 |
+
protected $_resizeFolderName = 'cache';
|
94 |
+
/**
|
95 |
+
* get the image base dir
|
96 |
+
* @access public
|
97 |
+
* @return string
|
98 |
+
* {{qwertyuiop}}
|
99 |
+
*/
|
100 |
+
public function getImageBaseDir(){
|
101 |
+
return Mage::getBaseDir('media').DS.$this->_subdir.DS.'image';
|
102 |
+
}
|
103 |
+
/**
|
104 |
+
* get the image url for object
|
105 |
+
* @access public
|
106 |
+
* @return string
|
107 |
+
* {{qwertyuiop}}
|
108 |
+
*/
|
109 |
+
public function getImageBaseUrl(){
|
110 |
+
return Mage::getBaseUrl('media').$this->_subdir.'/'.'image';
|
111 |
+
}
|
112 |
+
|
113 |
+
/**
|
114 |
+
* init image
|
115 |
+
* @access public
|
116 |
+
* @param Varien_Object $object
|
117 |
+
* @param string $imageField
|
118 |
+
* @return {{Namespace}}_{{Module}}_Helper_Image_Abstract
|
119 |
+
* {{qwertyuiop}}
|
120 |
+
*/
|
121 |
+
public function init(Varien_Object $object, $imageField = 'image'){
|
122 |
+
$this->_imageProcessor = null;
|
123 |
+
$this->_image = $object->getDataUsingMethod($imageField);
|
124 |
+
if(!$this->_image) {
|
125 |
+
$this->_image = '/'.$this->_placeholder;
|
126 |
+
}
|
127 |
+
$this->_widht = null;
|
128 |
+
$this->_height = null;
|
129 |
+
$this->_scheduledResize = false;
|
130 |
+
$this->_resized = false;
|
131 |
+
$this->_adaptiveResize = 'center';
|
132 |
+
|
133 |
+
try{
|
134 |
+
$this->_getImageProcessor()->open($this->getImageBaseDir().$this->_image);
|
135 |
+
}
|
136 |
+
catch (Exception $e){
|
137 |
+
$this->_openError = $e->getMessage();
|
138 |
+
try{
|
139 |
+
$this->_getImageProcessor()->open(Mage::getDesign()->getSkinUrl($this->_placeholder));
|
140 |
+
$this->_image = '/'.$this->_placeholder;
|
141 |
+
}
|
142 |
+
catch(Exception $e) {
|
143 |
+
$this->_openError .= "\n".$e->getMessage();
|
144 |
+
$this->_image = null;
|
145 |
+
}
|
146 |
+
}
|
147 |
+
return $this;
|
148 |
+
}
|
149 |
+
/**
|
150 |
+
* get the image processor
|
151 |
+
* @access protected
|
152 |
+
* @return Varien_Image_Adapter_Gd2
|
153 |
+
* {{qwertyuiop}}
|
154 |
+
*/
|
155 |
+
protected function _getImageProcessor() {
|
156 |
+
if (is_null($this->_imageProcessor)) {
|
157 |
+
$this->_imageProcessor = Varien_Image_Adapter::factory('GD2');
|
158 |
+
$this->_imageProcessor->keepFrame($this->_keepFrame);
|
159 |
+
$this->_imageProcessor->keepAspectRatio($this->_keepAspectRatio);
|
160 |
+
$this->_imageProcessor->constrainOnly($this->_constrainOnly);
|
161 |
+
}
|
162 |
+
return $this->_imageProcessor;
|
163 |
+
}
|
164 |
+
/**
|
165 |
+
* Get/set keepAspectRatio
|
166 |
+
* @access public
|
167 |
+
* @param bool $value
|
168 |
+
* @return mixed(bool|{{Namespace}}_{{Module}}_Helper_Image_Abstract)
|
169 |
+
* {{qwertyuiop}}
|
170 |
+
*/
|
171 |
+
public function keepAspectRatio($value = null){
|
172 |
+
if (null !== $value) {
|
173 |
+
$this->_getImageProcessor()->keepAspectRatio($value);
|
174 |
+
return $this;
|
175 |
+
}
|
176 |
+
else {
|
177 |
+
return $this->_getImageProcessor()->keepAspectRatio();
|
178 |
+
}
|
179 |
+
}
|
180 |
+
|
181 |
+
/**
|
182 |
+
* Get/set keepFrame
|
183 |
+
* @access public
|
184 |
+
* @param bool $value
|
185 |
+
* @return mixed(bool|{{Namespace}}_{{Module}}_Helper_Image_Abstract)
|
186 |
+
* {{qwertyuiop}}
|
187 |
+
*/
|
188 |
+
public function keepFrame($value = null){
|
189 |
+
if (null !== $value) {
|
190 |
+
$this->_getImageProcessor()->keepFrame($value);
|
191 |
+
return $this;
|
192 |
+
}
|
193 |
+
else {
|
194 |
+
return $this->_getImageProcessor()->keepFrame();
|
195 |
+
}
|
196 |
+
}
|
197 |
+
/**
|
198 |
+
* Get/set keepTransparency
|
199 |
+
* @access public
|
200 |
+
* @param bool $value
|
201 |
+
* @return mixed(bool|{{Namespace}}_{{Module}}_Helper_Image_Abstract)
|
202 |
+
* {{qwertyuiop}}
|
203 |
+
*/
|
204 |
+
public function keepTransparency($value = null){
|
205 |
+
if (null !== $value) {
|
206 |
+
$this->_getImageProcessor()->keepTransparency($value);
|
207 |
+
return $this;
|
208 |
+
}
|
209 |
+
else {
|
210 |
+
return $this->_getImageProcessor()->keepTransparency();
|
211 |
+
}
|
212 |
+
}
|
213 |
+
/**
|
214 |
+
* Get/set adaptiveResize
|
215 |
+
* @access public
|
216 |
+
* @param bool|string $value
|
217 |
+
* @return mixed(bool|{{Namespace}}_{{Module}}_Helper_Image_Abstract)
|
218 |
+
* https://github.com/wearefarm/magento-adaptive-resize/blob/master/README.md
|
219 |
+
* {{qwertyuiop}}
|
220 |
+
*/
|
221 |
+
public function adaptiveResize($value = null){
|
222 |
+
if (null !== $value) {
|
223 |
+
$this->_adaptiveResize = $value;
|
224 |
+
if($value) {
|
225 |
+
$this->keepFrame(false);
|
226 |
+
}
|
227 |
+
return $this;
|
228 |
+
}
|
229 |
+
else {
|
230 |
+
return $this->_adaptiveResize;
|
231 |
+
}
|
232 |
+
}
|
233 |
+
/**
|
234 |
+
* Get/set constrainOnly
|
235 |
+
* @access public
|
236 |
+
* @param bool $value
|
237 |
+
* @return mixed(bool|{{Namespace}}_{{Module}}_Helper_Image_Abstract)
|
238 |
+
* {{qwertyuiop}}
|
239 |
+
*/
|
240 |
+
public function constrainOnly($value = null){
|
241 |
+
if (null !== $value) {
|
242 |
+
$this->_getImageProcessor()->constrainOnly($value);
|
243 |
+
return $this;
|
244 |
+
}
|
245 |
+
else {
|
246 |
+
return $this->_getImageProcessor()->constrainOnly();
|
247 |
+
}
|
248 |
+
}
|
249 |
+
/**
|
250 |
+
* Get/set quality, values in percentage from 0 to 100
|
251 |
+
* @access public
|
252 |
+
* @param int $value
|
253 |
+
* @return mixed(bool|{{Namespace}}_{{Module}}_Helper_Image_Abstract)
|
254 |
+
* {{qwertyuiop}}
|
255 |
+
*/
|
256 |
+
public function quality($value = null){
|
257 |
+
if (null !== $value) {
|
258 |
+
$this->_getImageProcessor()->quality($value);
|
259 |
+
return $this;
|
260 |
+
}
|
261 |
+
else {
|
262 |
+
return $this->_getImageProcessor()->quality();
|
263 |
+
}
|
264 |
+
}
|
265 |
+
/**
|
266 |
+
* Get/set keepBackgroundColor
|
267 |
+
* @access public
|
268 |
+
* @param array $value
|
269 |
+
* @return mixed(bool|{{Namespace}}_{{Module}}_Helper_Image_Abstract)
|
270 |
+
* {{qwertyuiop}}
|
271 |
+
*/
|
272 |
+
public function backgroundColor($value = null){
|
273 |
+
if (null !== $value) {
|
274 |
+
$this->_getImageProcessor()-> backgroundColor($value);
|
275 |
+
return $this;
|
276 |
+
}
|
277 |
+
else {
|
278 |
+
return $this->_getImageProcessor()-> backgroundColor();
|
279 |
+
}
|
280 |
+
}
|
281 |
+
/**
|
282 |
+
* resize image
|
283 |
+
* @access public
|
284 |
+
* @param int $width - defaults to null
|
285 |
+
* @param int $height - defaults to null
|
286 |
+
* @return {{Namespace}}_{{Module}}_Helper_Image_Abstract
|
287 |
+
* {{qwertyuiop}}
|
288 |
+
*/
|
289 |
+
public function resize($width = null, $height = null) {
|
290 |
+
$this->_scheduledResize = true;
|
291 |
+
$this->_width = $width;
|
292 |
+
$this->_height = $height;
|
293 |
+
return $this;
|
294 |
+
}
|
295 |
+
/**
|
296 |
+
* get destination image prefix
|
297 |
+
* @access protected
|
298 |
+
* @return {{Namespace}}_{{Module}}_Helper_Image_Abstract
|
299 |
+
* {{qwertyuiop}}
|
300 |
+
*/
|
301 |
+
protected function _getDestinationImagePrefix() {
|
302 |
+
if(!$this->_image) {
|
303 |
+
return $this;
|
304 |
+
}
|
305 |
+
$imageRealPath = "";
|
306 |
+
if($this->_scheduledResize) {
|
307 |
+
$width = $this->_width;
|
308 |
+
$height = $this->_height;
|
309 |
+
$adaptive = $this->adaptiveResize();
|
310 |
+
$keepFrame = $this->keepFrame();
|
311 |
+
$keepAspectRatio= $this->keepAspectRatio();
|
312 |
+
$constrainOnly = $this->constrainOnly();
|
313 |
+
$imageRealPath = $width.'x'.$height;
|
314 |
+
$options = "";
|
315 |
+
|
316 |
+
if(!$keepAspectRatio) {
|
317 |
+
$imageRealPath .= '-exact';
|
318 |
+
}
|
319 |
+
else {
|
320 |
+
if(!$keepFrame && $width && $height && ($adaptive !== false)) {
|
321 |
+
$adaptive = strtolower(trim($adaptive));
|
322 |
+
if(isset($this->_adaptiveResizePositions[$adaptive])) {
|
323 |
+
$imageRealPath .= '-'.$adaptive;
|
324 |
+
}
|
325 |
+
}
|
326 |
+
}
|
327 |
+
if($keepFrame) {
|
328 |
+
$imageRealPath .= '-frame';
|
329 |
+
$_backgroundColor = $this->backgroundColor();
|
330 |
+
if($_backgroundColor) {
|
331 |
+
$imageRealPath .= '-'.implode('-',$_backgroundColor);
|
332 |
+
}
|
333 |
+
}
|
334 |
+
if(!$constrainOnly) {
|
335 |
+
$imageRealPath .= '-zoom';
|
336 |
+
}
|
337 |
+
}
|
338 |
+
return $imageRealPath;
|
339 |
+
}
|
340 |
+
/**
|
341 |
+
* get image destination path
|
342 |
+
* @access protected
|
343 |
+
* @return string
|
344 |
+
* {{qwertyuiop}}
|
345 |
+
*/
|
346 |
+
protected function _getDestinationPath() {
|
347 |
+
if(!$this->_image) {
|
348 |
+
return $this;
|
349 |
+
}
|
350 |
+
if($this->_scheduledResize) {
|
351 |
+
return $this->getImageBaseDir().DS.$this->_resizeFolderName.DS.$this->_getDestinationImagePrefix().DS.$this->_image;
|
352 |
+
} else {
|
353 |
+
return $this->getImageBaseDir().DS.$this->_image;
|
354 |
+
}
|
355 |
+
}
|
356 |
+
/**
|
357 |
+
* get image url
|
358 |
+
* @access protected
|
359 |
+
* @return mixed (string|bool)
|
360 |
+
* {{qwertyuiop}}
|
361 |
+
*/
|
362 |
+
protected function _getImageUrl() {
|
363 |
+
if(!$this->_image) {
|
364 |
+
return false;
|
365 |
+
}
|
366 |
+
if($this->_scheduledResize) {
|
367 |
+
return $this->getImageBaseUrl().'/'.$this->_resizeFolderName.'/'.$this->_getDestinationImagePrefix().$this->_image;
|
368 |
+
}
|
369 |
+
else {
|
370 |
+
return $this->getImageBaseUrl().$this->_image;
|
371 |
+
}
|
372 |
+
}
|
373 |
+
/**
|
374 |
+
* resize image
|
375 |
+
* @access protected
|
376 |
+
* @return {{Namespace}}_{{Module}}_Helper_Image_Abstract
|
377 |
+
* {{qwertyuiop}}
|
378 |
+
*/
|
379 |
+
protected function _doResize() {
|
380 |
+
if(!$this->_image || !$this->_scheduledResize || $this->_resized) {
|
381 |
+
return $this;
|
382 |
+
}
|
383 |
+
$this->_resized = true; //mark as resized
|
384 |
+
$width = $this->_width;
|
385 |
+
$height = $this->_height;
|
386 |
+
$adaptive = $width && $height &&
|
387 |
+
$this->keepAspectRatio() && !$this->keepFrame() &&
|
388 |
+
($this->adaptiveResize() !== false);
|
389 |
+
$adaptivePosition = false;
|
390 |
+
if($adaptive) {
|
391 |
+
$adaptive = strtolower(trim($this->adaptiveResize()));
|
392 |
+
if(isset($this->_adaptiveResizePositions[$adaptive])) {
|
393 |
+
$adaptivePosition = $this->_adaptiveResizePositions[$adaptive];
|
394 |
+
}
|
395 |
+
}
|
396 |
+
$processor = $this->_getImageProcessor();
|
397 |
+
|
398 |
+
if(!$adaptivePosition) {
|
399 |
+
$processor->resize($width, $height);
|
400 |
+
return $this;
|
401 |
+
}
|
402 |
+
//make adaptive resize
|
403 |
+
//https://github.com/wearefarm/magento-adaptive-resize/blob/master/README.md
|
404 |
+
$currentRatio = $processor->getOriginalWidth() / $processor->getOriginalHeight();
|
405 |
+
$targetRatio = $width / $height;
|
406 |
+
if ($targetRatio > $currentRatio) {
|
407 |
+
$processor->resize($width, null);
|
408 |
+
}
|
409 |
+
else {
|
410 |
+
$processor->resize(null, $height);
|
411 |
+
}
|
412 |
+
$diffWidth = $processor->getOriginalWidth() - $width;
|
413 |
+
$diffHeight = $processor->getOriginalHeight() - $height;
|
414 |
+
if($diffWidth || $diffHeight) {
|
415 |
+
$processor->crop(
|
416 |
+
floor($diffHeight * $adaptivePosition[0]), //top rate
|
417 |
+
floor($diffWidth / 2),
|
418 |
+
ceil($diffWidth / 2),
|
419 |
+
ceil($diffHeight * $adaptivePosition[1]) //bottom rate
|
420 |
+
);
|
421 |
+
}
|
422 |
+
return $this;
|
423 |
+
}
|
424 |
+
/**
|
425 |
+
* to string - no need for cache expire because the image names will be different
|
426 |
+
* @access public
|
427 |
+
* @return string
|
428 |
+
* {{qwertyuiop}}
|
429 |
+
*/
|
430 |
+
public function __toString(){
|
431 |
+
try{
|
432 |
+
if(!$this->_image) {
|
433 |
+
throw new Exception($this->_openError);
|
434 |
+
}
|
435 |
+
$imageRealPath = $this->_getDestinationPath();
|
436 |
+
if (!file_exists($imageRealPath)) {
|
437 |
+
$this->_doResize();
|
438 |
+
$this->_getImageProcessor()->save($imageRealPath);
|
439 |
+
}
|
440 |
+
return $this->_getImageUrl();
|
441 |
+
}
|
442 |
+
catch (Exception $e){
|
443 |
+
Mage::logException($e);
|
444 |
+
return 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAFr0lEQVR42rWXaUxUZxSGZVOKpWBRCGrSijBgDG1dagaxVgNSUqhAqq1CqzVVksb+sdZU0hgbfhQ1riEoiHFns4qVEYWglEWgVaBQLXRYJKzCzCA7KCpvz7njHbgz4AXSkryZYea73/Oe5Tv3zhQABtGfGcmCZPk/yYIZEuYIuDnJgeRKcn8pj/9Q7rw3M5g1moFpJGVnVxe0Wi20Oh107e1of/wYj1kdHejo7AR/z+oS1d0tqLunx6AeVm+vifoHBsAMZo1lYKVWq0NzyyO0PGrFo9Y2tLZp0KYRDA2bMjamN6c3OGzSxGwvmWDGWAasSR9qde0EbiVwG4E10AxnQw/XQ1nDUAYZZ2QU9fX1gRnMGtMAASTwMUvBGoYyQFoClmkJ5A0QhOHSlEtTbQoeAewVRdGy+kZoYDwGCGSacmOwKVQK6+9H/yh68uSJvAGGCGBTuACur6pCXUICssPDcXfHDvy5dy8KIyLQdOkSmh8+FNI8YCwCs54+fSpvgCNkOJeiwwieHROD3KBP8CDyJ9QePYLq/fuhjoqCml7L9/yI236+yI+L40hZDJRocHBwXAZGjTztq00o+mYbKiIj8cf2cGT6rIJKqUTakiW44a1EwdYtKNm1C/lfboBq0xcMM9GzZ8/kDRDMBJ5FkWeHrkPJD7uQvsYb177egr/LyzndQhPmpqYi2c0Fv23aiPxt25AZHIi8kycnZ4CaS1rz2lpcXbEUhd9ux7VVSmSfO8d1NaSY36cGBSJzrT9uhYYia+PnyFy/Dul+K6FpbmaoQc+fP5c3wF0twtnM5d27cfPTAEFJYRskcH69vjkMBaEh1BtBuEX9kbJIgav+q5EW6Iu0PXsYatCLFy/kDfCR4j7g1PIxSwwm+PogJCo98c/9+1L41s24FxaCIh8f5K3xwdVlC3CeTkTCewqkBvjhSthnkzMgwvn9WS9PpH7kh3Pve4yE0+brURLsixJqxOIPvKHyWoicM2eEWscrZuPI3Dk4tciNoRLJGuCB0q0fMMJQOb5YgQMz7BHj5mQYJvE+3shdqkDpvHkonz8PqmUKZJ8+zQAh0ti3HbDPbAriFusNDA0NscZngKFC9C8n2sm1foh6wwqHZ9vgdnIyYlZ5QeVojd/p0r+szHHZxR5Z8fGGCCtKSxHnZI1ouuZsyMcMlkjWAEN79dELEV/4ficOzZmOE7TpPlcnpDrb4A5d9oDgv7ja42ZcrAHOgLggfyTMskbsXBukROyeeAkYKkbPHd9UX48DHjMRa0lAgmfQJXenmiPFfQauH4+RwH89fBgXXGyRTOaOLpiFlsbGic8BHi5i9GyAm+7yoYOIUdghiZbfmmqBC++8iWiaCyJcXVaG6ABfpNCaLDJ32s0OV+ga2oP3Eu+QvJ/8A8mA3oDkvLP7Q8H+OOVB9ba2QKHja8icb4vEBTNx0cMB11xex10q071pFjhPa47QWuojPs58P+H7Cov/HyLGcjkD7Fw0IElf0oH9OOjpiBvudihztEG1uRnqSGoylE3RH/N0wsWon4WHFY1Gg5aWFjQ1NaGhoRH19Q1QqVR3iPEWyVzOgJh+iQFWQ10dTuz8DvsCVuOY0gXRXvNxNMQfsfRZjVotwGtpfBcWFqKoqAjldM+oqKhguJr2X0iayjw5Axy9sYGRE01yvvk7vo4HGEeel5fHnwt1r6qqYngj7b1IbD45Ayb1Z4DUgHS48BqGcb055Tk5uUIfVVdXIyMjQ2tra7uC9p7OHHkDBB7bgGn0/Bmv5ej5QaaOSlRcXIyamhoB7uzs7Ef72jJjogaM6//K9HPH63Q6qKkPKisrkZ6e3kiRL2c4yUzWgPjDZCIGAEgM0C8qNsBwbrh3STZSoLyB5QR8Ve1HKwGv5x7gsz5E8AL+HSie9YkYsHx5Rr25FJOUF2kuyUoCkjUgNcGZsJ6kpolDZrz6F2ZUsalEFcbPAAAAAElFTkSuQmCC';
|
445 |
+
}
|
446 |
+
}
|
447 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Entity/01_top.php
CHANGED
@@ -8,5 +8,20 @@
|
|
8 |
* {{qwertyuiop}}
|
9 |
*/
|
10 |
class {{Namespace}}_{{Module}}_Model_{{Entity}} extends Mage_Core_Model_Abstract{
|
|
|
|
|
|
|
|
|
|
|
11 |
const CACHE_TAG = '{{module}}_{{entity}}';
|
12 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
* {{qwertyuiop}}
|
9 |
*/
|
10 |
class {{Namespace}}_{{Module}}_Model_{{Entity}} extends Mage_Core_Model_Abstract{
|
11 |
+
/**
|
12 |
+
* Entity code.
|
13 |
+
* Can be used as part of method name for entity processing
|
14 |
+
*/
|
15 |
+
const ENTITY= '{{module}}_{{entity}}';
|
16 |
const CACHE_TAG = '{{module}}_{{entity}}';
|
17 |
+
/**
|
18 |
+
* Prefix of model events names
|
19 |
+
* @var string
|
20 |
+
*/
|
21 |
+
protected $_eventPrefix = '{{module}}_{{entity}}';
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Parameter name in event
|
25 |
+
* @var string
|
26 |
+
*/
|
27 |
+
protected $_eventObject = '{{entity}}';
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/10_center.php
CHANGED
@@ -29,6 +29,7 @@
|
|
29 |
catch (Exception $e) {
|
30 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error deleteing {{entityLabel}}.'));
|
31 |
$this->_redirect('*/*/edit', array('id' => $this->getRequest()->getParam('id')));
|
|
|
32 |
return;
|
33 |
}
|
34 |
}
|
@@ -59,6 +60,7 @@
|
|
59 |
}
|
60 |
catch (Exception $e) {
|
61 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error deleteing {{entitiesLabel}}.'));
|
|
|
62 |
}
|
63 |
}
|
64 |
$this->_redirect('*/*/index');
|
29 |
catch (Exception $e) {
|
30 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error deleteing {{entityLabel}}.'));
|
31 |
$this->_redirect('*/*/edit', array('id' => $this->getRequest()->getParam('id')));
|
32 |
+
Mage::logException($e);
|
33 |
return;
|
34 |
}
|
35 |
}
|
60 |
}
|
61 |
catch (Exception $e) {
|
62 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error deleteing {{entitiesLabel}}.'));
|
63 |
+
Mage::logException($e);
|
64 |
}
|
65 |
}
|
66 |
$this->_redirect('*/*/index');
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/11_mass_status.php
CHANGED
@@ -24,6 +24,7 @@
|
|
24 |
}
|
25 |
catch (Exception $e) {
|
26 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error updating {{entitiesLabel}}.'));
|
|
|
27 |
}
|
28 |
}
|
29 |
$this->_redirect('*/*/index');
|
24 |
}
|
25 |
catch (Exception $e) {
|
26 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error updating {{entitiesLabel}}.'));
|
27 |
+
Mage::logException($e);
|
28 |
}
|
29 |
}
|
30 |
$this->_redirect('*/*/index');
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/12_mass_update.php
CHANGED
@@ -24,6 +24,7 @@
|
|
24 |
}
|
25 |
catch (Exception $e) {
|
26 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error updating {{entitiesLabel}}.'));
|
|
|
27 |
}
|
28 |
}
|
29 |
$this->_redirect('*/*/index');
|
24 |
}
|
25 |
catch (Exception $e) {
|
26 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error updating {{entitiesLabel}}.'));
|
27 |
+
Mage::logException($e);
|
28 |
}
|
29 |
}
|
30 |
$this->_redirect('*/*/index');
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/13_mass_parents.php
CHANGED
@@ -24,6 +24,7 @@
|
|
24 |
}
|
25 |
catch (Exception $e) {
|
26 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error updating {{entitiesLabel}}.'));
|
|
|
27 |
}
|
28 |
}
|
29 |
$this->_redirect('*/*/index');
|
24 |
}
|
25 |
catch (Exception $e) {
|
26 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('There was an error updating {{entitiesLabel}}.'));
|
27 |
+
Mage::logException($e);
|
28 |
}
|
29 |
}
|
30 |
$this->_redirect('*/*/index');
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/IsTree/01_top.php
CHANGED
@@ -225,6 +225,7 @@ class {{Namespace}}_{{Module}}_Adminhtml_{{Module}}_{{Entity}}Controller extends
|
|
225 |
catch (Exception $e){
|
226 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('An error occurred while trying to delete the {{entityLabel}}.'));
|
227 |
$this->getResponse()->setRedirect($this->getUrl('*/*/edit', array('_current'=>true)));
|
|
|
228 |
return;
|
229 |
}
|
230 |
}
|
225 |
catch (Exception $e){
|
226 |
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('{{module}}')->__('An error occurred while trying to delete the {{entityLabel}}.'));
|
227 |
$this->getResponse()->setRedirect($this->getUrl('*/*/edit', array('_current'=>true)));
|
228 |
+
Mage::logException($e);
|
229 |
return;
|
230 |
}
|
231 |
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/IsTree/09_real_save.php
CHANGED
@@ -4,6 +4,7 @@
|
|
4 |
}
|
5 |
catch (Exception $e){
|
6 |
$this->_getSession()->addError($e->getMessage())->set{{Entity}}Data($data);
|
|
|
7 |
$refreshTree = 'false';
|
8 |
}
|
9 |
}
|
4 |
}
|
5 |
catch (Exception $e){
|
6 |
$this->_getSession()->addError($e->getMessage())->set{{Entity}}Data($data);
|
7 |
+
Mage::logException($e);
|
8 |
$refreshTree = 'false';
|
9 |
}
|
10 |
}
|
app/code/community/Ultimate/ModuleCreator/etc/modulecreator.xml
CHANGED
@@ -2744,5 +2744,19 @@
|
|
2744 |
</file>
|
2745 |
</content>
|
2746 |
</file>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2747 |
</files>
|
2748 |
</config>
|
2744 |
</file>
|
2745 |
</content>
|
2746 |
</file>
|
2747 |
+
<file translate="title" module="modulecreator">
|
2748 |
+
<title>Abstract helper</title>
|
2749 |
+
<filetype>php</filetype>
|
2750 |
+
<depend>
|
2751 |
+
<has_image />
|
2752 |
+
</depend>
|
2753 |
+
<from>app/code/cp/Ns/Md/Helper/Image/Abstract/</from>
|
2754 |
+
<to>app/code/{{codepool}}/{{Namespace}}/{{Module}}/Helper/Image/Abstract.php</to>
|
2755 |
+
<content>
|
2756 |
+
<file>
|
2757 |
+
<name>01_content.php</name>
|
2758 |
+
</file>
|
2759 |
+
</content>
|
2760 |
+
</file>
|
2761 |
</files>
|
2762 |
</config>
|
app/design/adminhtml/default/default/template/ultimate_modulecreator/edit/tab/entities/entity/attribute.phtml
CHANGED
@@ -114,7 +114,7 @@
|
|
114 |
<?php echo Mage::helper('modulecreator/adminhtml')->getTooltipHtml(Mage::helper('modulecreator')->__('Acts as name'), Mage::helper('modulecreator')->__('The attribute marked this way will be used in lists and dropdowns.'))?>
|
115 |
</td>
|
116 |
</tr>
|
117 |
-
<tr class="type-text type-textarea type-yesno type-timestamp type-int type-decimal type-website">
|
118 |
<td class="label">
|
119 |
<label for="attribute_<?php echo $_id?>_required">
|
120 |
<?php echo Mage::helper('modulecreator')->__('Is required') ?>
|
@@ -136,7 +136,7 @@
|
|
136 |
<?php echo Mage::helper('modulecreator/adminhtml')->getTooltipHtml(Mage::helper('modulecreator')->__('Use WYSIWYG editor'), Mage::helper('modulecreator')->__('This will allow you to use WYSIWYG editors for texareas.'))?>
|
137 |
</td>
|
138 |
</tr>
|
139 |
-
<tr class="type-text type-yesno type-timestamp type-int type-decimal type-website">
|
140 |
<td class="label">
|
141 |
<label for="attribute_<?php echo $_id?>_admin_grid">
|
142 |
<?php echo Mage::helper('modulecreator')->__('Add in admin grid') ?>
|
114 |
<?php echo Mage::helper('modulecreator/adminhtml')->getTooltipHtml(Mage::helper('modulecreator')->__('Acts as name'), Mage::helper('modulecreator')->__('The attribute marked this way will be used in lists and dropdowns.'))?>
|
115 |
</td>
|
116 |
</tr>
|
117 |
+
<tr class="type-text type-textarea type-yesno type-timestamp type-int type-decimal type-website type-country">
|
118 |
<td class="label">
|
119 |
<label for="attribute_<?php echo $_id?>_required">
|
120 |
<?php echo Mage::helper('modulecreator')->__('Is required') ?>
|
136 |
<?php echo Mage::helper('modulecreator/adminhtml')->getTooltipHtml(Mage::helper('modulecreator')->__('Use WYSIWYG editor'), Mage::helper('modulecreator')->__('This will allow you to use WYSIWYG editors for texareas.'))?>
|
137 |
</td>
|
138 |
</tr>
|
139 |
+
<tr class="type-text type-yesno type-timestamp type-int type-decimal type-website type-country">
|
140 |
<td class="label">
|
141 |
<label for="attribute_<?php echo $_id?>_admin_grid">
|
142 |
<?php echo Mage::helper('modulecreator')->__('Add in admin grid') ?>
|
package.xml
CHANGED
@@ -1,25 +1,27 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Ultimate_ModuleCreator</name>
|
4 |
-
<version>1.4.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/MIT">MIT License</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Develop custom Magento modules without writing any code. Use a module creator. Use this module creator</summary>
|
10 |
<description>This module allows you to create custom Magento modules for your own entities. You can create as many entities as you want in one extension, you can establish relations between them, decide to generate only back-end pages or both back-end and frontend pages.</description>
|
11 |
-
<notes>
|
12 |
-
-
|
13 |
-
|
14 |
-
|
15 |
-
-
|
16 |
-
-
|
17 |
Refactor:
|
18 |
-
-
|
|
|
|
|
19 |
<authors><author><name>Marius Strajeru</name><user>tzyganu</user><email>tzyganu@gmail.com</email></author></authors>
|
20 |
-
<date>2013-03-
|
21 |
-
<time>
|
22 |
-
<contents><target name="magecommunity"><dir name="Ultimate"><dir name="ModuleCreator"><dir name="Block"><dir name="Adminhtml"><dir name="Modulecreator"><dir name="Edit"><file name="Form.php" hash="cb4328ae858a31a31d76016e50b56739"/><dir name="Tab"><dir name="Entities"><dir name="Entity"><file name="Attribute.php" hash="daa6787fa3f72150fc86c4350be932da"/></dir><file name="Entity.php" hash="8d5b07f735a5a7107f1abf66bbb482da"/></dir><file name="Entities.php" hash="65602b8daaa8585d9c94d7a4d8d7dcde"/><file name="Help.php" hash="304c68d68e9adf0962817e27877683b6"/><file name="Relation.php" hash="43730e74747b8e6e5985eee259e6db07"/><file name="Settings.php" hash="64feb76f7190edb881fbc47b7cb03a61"/></dir><file name="Tabs.php" hash="578af9256efb3d516db14db7e396e5e3"/></dir><file name="Edit.php" hash="491948d86e2e3a50fa185a407997c163"/><file name="Grid.php" hash="96ef8fa066b89937712b44991191f4de"/></dir><file name="Modulecreator.php" hash="b2630018b6f103d1a3f9e92ed7de7a54"/></dir></dir><file name="Exception.php" hash="aaef7086ff700d7132418cf68629246f"/><dir name="Helper"><file name="Adminhtml.php" hash="f913d91b1041032b35e4d0ca2fd20205"/><file name="Data.php" hash="3e8d3a8b1c2ff38f5badbf0704146e21"/></dir><dir name="Model"><file name="Abstract.php" hash="33a186edb30b8ff3f54fda6690a90a2c"/><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Source"><file name="Codepool.php" hash="045f0555fc545799148627e081ca8727"/><file name="Install.php" hash="7fb2fd108b5bed63b31ab9cfd0da25f5"/><file name="Layout.php" hash="3d63a2221b3a93926c662b3c10effc2c"/></dir></dir></dir></dir><dir name="Attribute"><dir name="Type"><file name="Abstract.php" hash="681df23324db6483e71689bf60dd443f"/><file name="Decimal.php" hash="593c993bfba24af511164987a8c11eb3"/><file name="File.php" hash="a8e18228577beb612f202acbe0ddb41a"/><file name="Image.php" hash="8dfbde0bf761b04864146be321197eb6"/><file name="Int.php" hash="7e06c84fa8a3c2940624248c386e2d67"/><file name="Text.php" hash="237217feda93dadf93a63f181ebb8793"/><file name="Textarea.php" hash="04cd8559fbeeb8b81733e6c9a3b7b725"/><file name="Timestamp.php" hash="d18d599090ac5fa824e44edf3fa14486"/><file name="Website.php" hash="659f6de66ea3d529613cfe90f7fc3f99"/><file name="Yesno.php" hash="dbb96529e483d587d8d8d99f176afa8b"/></dir></dir><file name="Attribute.php" hash="b6ab929edc78a41829630b0a02d59e5e"/><file name="Entity.php" hash="bd57954f5eb26d276273e9040281b236"/><dir name="Module"><file name="Collection.php" hash="0e413b976cbc9649ec982fe0f4b95dd1"/></dir><file name="Module.php" hash="178c6f038c1e4cba5c1b34da5a99a84b"/><file name="Relation.php" hash="aca1db5db2cd807298acd21dc7b24b39"/><file name="Writer.php" hash="b47341646a1882d77e57cf6a5b30ad49"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="ModulecreatorController.php" hash="11ee92957c8099af688993543b9f849e"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="755c04b748c41ced20f41c725acc95c2"/><file name="config.xml" hash="799273103ec8c4c35b31dbd5d88dd8f9"/><dir name="m"><dir name="app"><dir name="code"><dir name="cp"><dir name="Ns"><dir name="Md"><dir name="Block"><dir name="Adminhtml"><dir name="Catalog"><dir name="Product"><dir name="Edit"><dir name="Tab"><dir name="Entity"><file name="01_content.php" hash="59347ed053e0fe3dc2e25a5c5490ecd4"/><dir name="IsTree"><file name="01_content.php" hash="1eda50311bcf910106a49ad54f1681fd"/></dir></dir></dir></dir></dir></dir><dir name="Entity"><file name="01_content.php" hash="5dfc799aeee50cc5ef32d356c1cc176f"/><dir name="Abstract"><file name="01_content.php" hash="dfe60775e0f319347a8937a17733c751"/></dir><dir name="Edit"><file name="01_content.php" hash="21d1cd84da305a41e516752e39c12404"/><dir name="Form"><file name="01_content.php" hash="39f68c93dba53e650f502776c03caf20"/><dir name="IsTree"><file name="01_top.php" hash="6bf3a72161678690d515deb253fb5f3d"/><file name="02_product_relation.php" hash="adee6754a75247b7d401d8f774d3918b"/><file name="03_entity_relation.php" hash="7f06c1f227ff6e8e1f64606bc1da6d3a"/><file name="04_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="IsTree"><file name="01_content.php" hash="6f8ab2c71f28a7618db8b94c311d6f13"/></dir><dir name="Tab"><dir name="Form"><file name="01_top.php" hash="9f6681f6bc3e012a8c711739a0ed6ae1"/><file name="02_image.php" hash="8dbf5010de2c46aabb02cd7a4df6f45e"/><file name="03_file.php" hash="64ede5038fe0edfec08671a5ca521777"/><file name="04_wysiwyg.php" hash="d25a58b233bd88a2e6d1fd5a79398394"/><file name="05_wysiwyg_is_tree.php" hash="6ef452bba45e48bbfc370ea24b61d6e0"/><file name="06_path_tree.php" hash="9991a81df109b0abbc8bd06a26694d1b"/><file name="07_parents.php" hash="476f7ebd1b04a879f3dd51b1913f9a9d"/><file name="08_attributes.php" hash="44c81d580dcf072b2ed9b5cc90fb1fac"/><file name="09_url_rewrite.php" hash="fdcf74d7a3abe5bfa32db1d5f042d8e2"/><file name="10_status.php" hash="ade9e66ee2dd546ebea8c9800b378a88"/><file name="11_rss.php" hash="0a122d46cc4826a0bd62b2f5d52b3fdc"/><file name="12_seo.php" hash="f0cf29478e91ced8dc39170b2574f1f2"/><file name="13_add_values_not_tree.php" hash="dc7ba40ed78eb43b08fc46c235029c8c"/><file name="14_add_values_tree.php" hash="c569ce680f4c5328292d6bb4f4c37e69"/><file name="15_get_entity_tree.php" hash="3d9027f073bf28f89aecd6b224c350ca"/><file name="16_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir><dir name="Product"><file name="01_content.php" hash="e42fb1044c47e7e1ba7c456f057b9558"/></dir><dir name="Sibling"><file name="01_content.php" hash="45cbbc5d065f5e0402a8340e14e5e6b2"/><dir name="IsTree"><file name="01_content.php" hash="0809c980a4d5059bc679e37762853f5e"/></dir></dir></dir><dir name="Tabs"><file name="01_top.php" hash="7cecbd5b68dc09c4e9a14f214b3b70df"/><file name="02_relations_tabs.php" hash="3f1eba9e9a7bf177185364cffc8468ba"/><file name="03_product_relation.php" hash="aee681c7021e9efad07a39bc8f8cf56d"/><file name="04_footer.php" hash="01b6273dfbf342c1f984c1e10b631b65"/><dir name="IsTree"><file name="01_top.php" hash="e48cac6414b02601cbef87e9831846a2"/><file name="02_relations_tabs.php" hash="50d5a9065062cf44f11a8aba92140790"/><file name="03_product_relation.php" hash="c5dc78d7c883af529b3adf72770d3dde"/><file name="04_footer.php" hash="5cad78a0f4dc4a2531cb6195e5e9ea5a"/></dir></dir></dir><dir name="Grid"><file name="01_top.php" hash="1a0c8754c5482692ae460fd6aafcfa6b"/><file name="02_columns_top.php" hash="1d28265e98b06fe61edde000c0d28db6"/><file name="03_parents.php" hash="011f4f2895cbaa33e753168131feedee"/><file name="04_grid_attributes.php" hash="2e7a6d5f6333b44ddf6792898a6e01c1"/><file name="05_url_rewrite.php" hash="b35f254eefea0d714de7ec6bdf5f2c4b"/><file name="06_grid_status.php" hash="f1d657a64ad855219882ac8aa6ead5b5"/><file name="07_created_at.php" hash="15f2bf1aeab4512931cfd13461466dbf"/><file name="08_updated_at.php" hash="b416ed24d9613f8332f4191f0378c1a3"/><file name="09_grid_actions.php" hash="fbc479c06560e193e4c2177358eadc07"/><file name="10_grid_export.php" hash="3da336230cb919e5dd36e39d21ea3f0e"/><file name="11_columns_footer.php" hash="1cdf225b4a61a0036903c4e251484684"/><file name="12_mass_action_top.php" hash="4979fc362c7c0666bcfe39e89f3a88f4"/><file name="13_mass_action_status.php" hash="d504216f92f489be7857bee37cf0771c"/><file name="14_mass_action_flags.php" hash="9b0d9088708f5e84b50e7ac6ee06a632"/><file name="15_mass_action_parents.php" hash="7b36b4b3954e3913e6bdafb822ca6634"/><file name="16_footer.php" hash="0833ff1f2002af6a4db1df3a3cad3385"/></dir><dir name="Helper"><dir name="File"><file name="01_content.php" hash="c436397f5889f3b9784f257af452ab74"/></dir><dir name="Image"><file name="01_content.php" hash="62a55ac8856f4dc555d6dc373c2de7d5"/></dir></dir><dir name="Tree"><file name="01_top.php" hash="8b8eaeea900cceeccb0b12717fe440f7"/><file name="02_status.php" hash="3a0cada5dfb430e3d7b9890e3f6ac2ba"/><file name="03_footer.php" hash="1e7043194d0104f8e39c6418af00a7f4"/></dir><dir name="Widget"><dir name="Chooser"><file name="01_top.php" hash="61b31cd249d7f23aeb456eeff337c9c0"/><file name="02_top_status.php" hash="ae8d09557d6c9aa3a920e148f0cdd7d6"/><file name="03_content.php" hash="8dcbeac6eb2d80f500479a36c5b49c36"/><file name="04_status.php" hash="6fb78962dd9ffb30ee5d750876a26e5d"/><file name="05_footer.php" hash="c6f7967214ca668b51f41dc428cf7145"/><dir name="IsTree"><file name="01_content.php" hash="90138bcf517a4df92825e95e65902a1c"/></dir></dir></dir></dir><dir name="Helper"><dir name="Wysiwyg"><file name="01_content.php" hash="50f63445cbb78d5eb1ff42eed07e76af"/></dir></dir></dir><dir name="Catalog"><dir name="Product"><dir name="List"><dir name="Entity"><file name="01_top.php" hash="e73df46ed0d2f57e185cebe41814ab67"/><file name="02_status.php" hash="716a6a2f8243c5048f90584f0bd7f888"/><file name="03_footer.php" hash="7afa811ee3b39c3717cbb8f484e32405"/></dir></dir></dir></dir><dir name="Entity"><dir name="Catalog"><dir name="Product"><dir name="List"><file name="01_content.php" hash="bba37916e5149dcbc9604aecd8ad785c"/></dir></dir></dir><dir name="Child"><dir name="List"><file name="01_content.php" hash="30ac249d25535c1a522f96bae56a4f75"/></dir></dir><dir name="Children"><file name="01_content.php" hash="e3f2d736896f8b81132ab0ce4735d08a"/></dir><dir name="List"><file name="01_top.php" hash="225b59a84d8bf6cb0d06d62bb5240eb2"/><file name="02_status.php" hash="716a6a2f8243c5048f90584f0bd7f888"/><file name="03_footer.php" hash="369738e4147fd032b12c1df4aa01ed9c"/><dir name="IsTree"><file name="01_top.php" hash="225b59a84d8bf6cb0d06d62bb5240eb2"/><file name="02_status.php" hash="716a6a2f8243c5048f90584f0bd7f888"/><file name="03_center.php" hash="d4bab4d0e7f4741b0288454906b0e428"/><file name="04_status_draw.php" hash="05f41e4fa26f8644069191a7621b6e3f"/><file name="05_children.php" hash="b59bb1c9e92637ceab3196618b8deee7"/><file name="06_active_children.php" hash="1c9785dbb369f8d3818d4644c5f7e232"/><file name="07_active_children_no_status.php" hash="60a6cf3f5643514e5c1b83353cea5ea9"/><file name="08_footer.php" hash="90180c9a604e490752cf905fd3410efd"/></dir></dir><dir name="Rss"><file name="01_top.php" hash="957b89055315fee8ecefa6b34e940efe"/><file name="02_status.php" hash="7a81b20fbd0ca4ac140c263e481a5b06"/><file name="03_content_top.php" hash="6e2c16bd170842cc88610692439c4674"/><file name="04_content.php" hash="f556d8f00acfa61f93bbc9b09da3508b"/><file name="05_footer.php" hash="0514ad15059f8411d3315d111aac5b84"/></dir><dir name="Sibling"><dir name="List"><file name="01_content.php" hash="b4e59d0fb7204da8f984fb07835fa39a"/></dir></dir><dir name="View"><file name="01_content.php" hash="b6824731ad9bb41ef1f84b4359596f67"/></dir><dir name="Widget"><dir name="Link"><file name="01_content.php" hash="2862dcc4937c58fbee284764732e733c"/></dir><dir name="View"><file name="01_top.php" hash="a31bafcf8918811ff55b0a8eaf49c021"/><file name="02_status.php" hash="fd4d2e31a4c04c13bb470ce615550310"/><file name="03_template.php" hash="e6fd0367cfbd0b14996e189ac56b2d3b"/><file name="04_status.php" hash="573160846b9e8693e966c0881103f25e"/><file name="05_footer.php" hash="1009acd5e8f54dbedb651ecffb283df1"/></dir></dir></dir><dir name="Rss"><file name="01_content.php" hash="ea37b93ec747a042dd51e2e4eaeb22ac"/></dir></dir><dir name="Controller"><dir name="Adminhtml"><dir name="Module"><file name="01_content.php" hash="938c09e00f8a7045d70c7e97dd478df8"/></dir></dir><dir name="Router"><file name="01_top.php" hash="c9dd518945d5ab5fb7508084c2206125"/><file name="02_entity.php" hash="8ba8993dd992d580cd5e3b6ced303d38"/><file name="03_footer.php" hash="7ba40f835c0bbca8dfb8e60753142de4"/></dir></dir><dir name="Helper"><dir name="Data"><file name="01_top.php" hash="44aa03c717b24b0086230271b07f195a"/><file name="02_entity.php" hash="378423c2b9ba4ac86328e094d6e60946"/><file name="03_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir><dir name="Entity"><file name="01_top.php" hash="6e37881fbe0898e930a5d7b3d1ce606f"/><file name="02_tree.php" hash="8e6d460e528f4b0e3e74bbbff06336dd"/><file name="03_rss.php" hash="9e9fa595a4a7ec7f159e1d64620119ae"/><file name="04_file.php" hash="44bc7ce84f603100f67dedc1edf3cc0d"/><file name="05_footer.php" hash="2e687c8e025cca2e891ac925406f277c"/><dir name="Image"><file name="01_content.php" hash="6433332d53494da8842cd600613a2849"/></dir></dir><dir name="Product"><file name="01_top.php" hash="20709afdafe7e3fd280e7c346a441b0c"/><file name="02_content.php" hash="33fa587ea74ff5caae02e2263bd6092b"/><file name="03_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="Model"><dir name="Adminhtml"><dir name="Observer"><file name="01_top.php" hash="abec4c7c295fb57c4086fdf9d22cdf28"/><file name="02_entity.php" hash="6c64bd2314a24f6d2dafa4dedb448b8c"/><file name="03_entity_save.php" hash="6b6db7bcb0cffefc6c3406df406c497a"/><file name="04_entity_save_tree.php" hash="aca15cbb7afc5a832488addb56df157e"/><file name="05_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir><dir name="Search"><dir name="Entity"><file name="01_content.php" hash="824a247bcd2cadb8f1da16ec3034d1c1"/></dir></dir></dir><dir name="Entity"><file name="01_top.php" hash="c8dfa83fb27e2a7242a1a81b90692d35"/><file name="02_var_sibling.php" hash="cbbdeeaa7082b22b3a57508dc6bcd4fa"/><file name="03_var_product_relation.php" hash="50cd6433f6617ed2d47c2a9ab9bee4d1"/><file name="04_construct.php" hash="81fb22faf1dc0c05920f5db34061100c"/><file name="05_url.php" hash="6d955735b11308ec8087bfbf2d0c6078"/><file name="06_url_rewrite_not_status.php" hash="514c4998931a817a55e652ec6fa4a322"/><file name="07_url_rewrite_status.php" hash="c5b3cbcffc16a48989a5491e4abd2c4b"/><file name="08_editors.php" hash="615bc07ef7e14bc892bb567e3c22cef7"/><file name="09_after_save_top.php" hash="f456ae82840db694e49d527d6ad23f8f"/><file name="10_after_save_product.php" hash="7e85bbf889a5beededa975831b573d97"/><file name="11_after_save_sibling.php" hash="a7ea726ae5b4b19f78773a563a7196bf"/><file name="12_after_save_footer.php" hash="1af792cf3f94391bbe2b261a0d927a8c"/><file name="13_product_relation.php" hash="890ad6b1cad708779f0e5cb1aa745f1a"/><file name="14_sibling_relation.php" hash="f833e4acb70b198a1cc69da992affc76"/><file name="15_tree.php" hash="c577ef6c4d67da82d5226162345ef896"/><file name="16_tree_status.php" hash="64da48d68c1af82304cea4ee2c21800e"/><file name="17_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="Product"><file name="01_content.php" hash="d8dfaa0ac8ba132bf95d3d65452d9795"/></dir><dir name="Sibling"><file name="01_content.php" hash="ef2fc76324ca0afcaabab7f8272bd526"/></dir></dir><dir name="Resource"><dir name="Entity"><file name="01_top.php" hash="8584bb2dba4e8da350ad36ee91ba7094"/><file name="02_tree_var.php" hash="8a673f57e7979c6c0aa2dc38c8f29c38"/><file name="03_constructor.php" hash="1c67d6971268cb3765067a30d6a5ebac"/><file name="04_tree.php" hash="f5f39cd45b72b48079a8bc3c6cee81d2"/><file name="05_tree_before_save_no_url_rewrite.php" hash="721b246ab7c8011faa810f9c509cbc76"/><file name="06_tree_before_save_url_rewrite.php" hash="872a4a6d7b408bf621a52739e5d8438a"/><file name="07_children_no_status.php" hash="41b492cea369e6303ad444b16f016857"/><file name="08_children_status.php" hash="61bfda77779840f9855311137112979e"/><file name="09_content.php" hash="ad6a926a11cf4ca722b896a78bbeadab"/><file name="10_url_rewrite_status.php" hash="1f7413dfcd315965fac22404f7a2808e"/><file name="11_url_rewrite_not_status.php" hash="13b834ba94b4998155668d3c211d2759"/><file name="12_url_rewrite_before_save_not_tree.php" hash="2d51e7bda2f717d22bd17593851f65fa"/><file name="13_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="Collection"><file name="01_top.php" hash="7aed912ade7c0e7f779b73d3022772b4"/><file name="02_tree.php" hash="22c1250f162919870d08ec9aa71b949e"/><file name="03_tree_status.php" hash="fe745dc63220b3ddd5f799921077ac51"/><file name="04_product_relation.php" hash="d2f707b97df2ecf2d088aebeeb660822"/><file name="05_sibling_relation.php" hash="4563330e972ef0b0f4b96096b8594727"/><file name="06_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir><dir name="Product"><file name="01_content.php" hash="1545e16c25769395d3d95ec03a8cd4b3"/><dir name="Collection"><file name="01_content.php" hash="401d1dc800ddf76ea155160f3e02d162"/></dir><dir name="IsTree"><file name="01_content.php" hash="0a1b1718dec4ec27dc5310d45b388e2e"/></dir></dir><dir name="Sibling"><file name="01_top.php" hash="e78ca594012a642782fc2292084f81ca"/><file name="02_save_relation.php" hash="43dbb46224c1f8ca4a658a6a5d5077ad"/><file name="03_save_relation_tree.php" hash="1b0b458b7327dd6beaca0455d4268921"/><file name="04_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="Collection"><file name="01_content.php" hash="c48de1443823a6ff51517f8a6cab0599"/></dir></dir><dir name="Tree"><file name="01_top.php" hash="d286ac636149b07c3e1993eb4d157529"/><file name="02_status_top.php" hash="f4151c843a394922807dcb59ce6807d8"/><file name="03_content.php" hash="402a0ba7525c552db2e2fa64c79f6473"/><file name="04_not_status.php" hash="d1b54f100c018fe6d5ae965e5aac8dd8"/><file name="05_status.php" hash="df0ef83645e0784f4c33534b976421ee"/><file name="06_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="Setup"><file name="01_content.php" hash="335c579a20a627c5a403e3c7ac6156c0"/></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Module"><dir name="Entity"><dir name="Catalog"><dir name="ProductController"><file name="01_content.php" hash="b904ef31283029cf808cc42719208874"/><dir name="IsTree"><file name="01_content.php" hash="989ec00484ec5ef3f04df8f9f0007eee"/></dir></dir></dir><dir name="WidgetController"><file name="01_content.php" hash="8d934e135109f74ac036b84d6939f6c9"/><file name="02_tree.php" hash="41b1fca05f9bd59455c72b1d240cc1e7"/><file name="03_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="EntityController"><file name="01_top.php" hash="21cbb6239ec0b4d998b494308af6cf1a"/><file name="02_upload_image.php" hash="c111546b644ffafd26c102f095334f95"/><file name="03_upload_files.php" hash="90fd33445b8889a23e5af035da89c15e"/><file name="04_save_product_relation.php" hash="29b35c54da6069c72edd245c42aa5369"/><file name="05_save_sibling_relation.php" hash="e9fe7f25344280b483db7108cc3ae0b1"/><file name="06_save_sibling_relation_tree.php" hash="ee1dcb0a6924b8c7c074a63ec2331f53"/><file name="07_save.php" hash="11c73c7cfc8c76738fce70c466ba7c63"/><file name="08_exception_upload.php" hash="216185c48b0b0937597939a95026a1c9"/><file name="09_exception.php" hash="b34376b34211a9cc21609ac7438d6d6d"/><file name="10_center.php" hash="1984de58c3a4636d053f4bc323b93e68"/><file name="11_mass_status.php" hash="32f826d9e0d091077da35a1ff4854f75"/><file name="12_mass_update.php" hash="f8cffcba29b0b98b815440b5407f2420"/><file name="13_mass_parents.php" hash="c13b8ac14871f114676d1d29be9dcb26"/><file name="14_product_relation_actions.php" hash="772e8ec1661ca45871bc962bdf1bbbcd"/><file name="15_sibling_actions.php" hash="8833208a9d834e7d5fda272a6b827b53"/><file name="16_sibling_actions_tree.php" hash="2994bf89f5d90bfc90e94a76444a4719"/><file name="17_footer.php" hash="044299b6435f621987f31c7c540f113c"/><dir name="IsTree"><file name="01_top.php" hash="a2485af1338305fd72aab2093ff2fb16"/><file name="02_wysiwyg.php" hash="3c2ec4bab3895ca6a43bd0416b827028"/><file name="03_save.php" hash="e22bd734eb73a53a0d365f619cd8f7e6"/><file name="04_upload_image.php" hash="c111546b644ffafd26c102f095334f95"/><file name="05_upload_file.php" hash="90fd33445b8889a23e5af035da89c15e"/><file name="06_save_continue.php" hash="b277fb6a9cdb4a28b43416331154f9b8"/><file name="07_product_data.php" hash="d9050ba8bf3d0780d5077a606184e09c"/><file name="08_sibling_data.php" hash="5edd1b8750aef7c7e4fc0137d038a867"/><file name="09_real_save.php" hash="41caa318e523711a1245673a15d2e486"/><file name="10_product_relation_action.php" hash="1a9875a99162f151e67b827e695f22a9"/><file name="11_sibling_actions.php" hash="0c165d6714a5a4b6203c9d021cdba223"/><file name="12_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir></dir></dir><dir name="EntityController"><file name="01_top.php" hash="eec876d7b63d893886bb334b09480af4"/><file name="02_list.php" hash="dfcf0e406a5a6548637bd50ce06bb1f6"/><file name="03_list_seo.php" hash="04dedfdc059b8b4b89c7c9ccc403a4b4"/><file name="04_list_footer.php" hash="1d41a3331d006d0a04ff32bb4085210b"/><file name="05_view.php" hash="65c4d2ff246370e5bda69be233e01275"/><file name="06_view_status.php" hash="fd0bc040dc135e3469757569ffcf7899"/><file name="07_view_status_tree.php" hash="2b36e7be800e6c59e12a87b0ef697097"/><file name="08_view2.php" hash="af3fc07f58fa608f8f70f2e0264fe0bd"/><file name="09_breadcrumbs.php" hash="8157b6c12ecd17df9acdf095e7eb75db"/><file name="10_breadcrumbs_tree.php" hash="f2391a45fb1ce3e64de454981973cc23"/><file name="11_breadcrumbs_footer.php" hash="b41efc51d35a4f93a3b00dc5f899e1b5"/><file name="12_view_seo.php" hash="2e56f0ef104d419dee88abf037fe9f18"/><file name="13_view_footer.php" hash="3be2b1b314c50af6fd03c53647f06e56"/><file name="14_rss.php" hash="6e2fc4485e7a2b6c3508d05d7b71748d"/><file name="15_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="data"><dir name="namespace_module_setup"><dir name="data-install-0.0.1.php"><file name="01_top.php" hash="d63e4a5fbe4435eadd52abf1534ee829"/><file name="02_entity.php" hash="df6b285616bf2741ae9288e5d9e0758e"/></dir></dir></dir><dir name="etc"><dir name="adminhtml"><file name="01_top.xml" hash="11dee4372e147adfdd6dcf549207d52c"/><file name="02_entity_acl.xml" hash="6afabb39251e5233380992ec92a7a49f"/><file name="03_center.xml" hash="c3daf849d2cc4f2b9bb10319466df7b9"/><file name="04_entity_menu.xml" hash="c940e5491e196974bd81421566bec92d"/><file name="05_footer.xml" hash="567de2825a456f5c8de1c2d3f718b333"/></dir><dir name="config"><file name="01_top.xml" hash="ab60a876013ce736e83c89e6e9be4e25"/><file name="02_tables.xml" hash="07d07c4044d5ee658664c9d3465ea676"/><file name="03_siblings_table.xml" hash="13cdf74c83b7d86d15717b7e31bcc5ed"/><file name="04_relation_table.xml" hash="5e50710deedcd19316110a4db8dbfe5c"/><file name="05_global.xml" hash="9e1870511df355e90da3f86acb7e88cf"/><file name="06_url_rewrite.xml" hash="d7e710748d570d29aca3d15ec4424f2d"/><file name="07_adminhtml.xml" hash="f91e8a152a9e4b7c331df0583e987c7c"/><file name="08_relation_product.xml" hash="de83346f1f657f61a23251f37016bd99"/><file name="09_global_search_top.xml" hash="24e3dddbf6fc52170457a0804c07e060"/><file name="10_global_search_entity.xml" hash="c9e6a985c2292d82c0e648b0fea07837"/><file name="11_global_search_footer.xml" hash="46e34587440f1aa3462eba45aca78be7"/><file name="12_admin.xml" hash="d4c5c6313071ffa54afb69782dbcc21e"/><file name="13_frontend.xml" hash="9617988c4eb5ab502eb57349ab1a2dec"/><file name="14_default_top.xml" hash="a306c05cad3fd6c4c46f5c162e52df68"/><file name="15_default.xml" hash="fc553b2555e09b1ab639b58649b5b4cf"/><file name="16_default_footer.xml" hash="40004610d67a1bcf5ecf317917a1b0ab"/></dir><dir name="system"><file name="01_top.xml" hash="a250611cd158a2b0f9c0adef5b3d8074"/><file name="02_entity.xml" hash="0e789a6caeecd1e7223ab6c44ca1504e"/><file name="03_footer.xml" hash="2ead9ca0742a78448b5db442581d4cd9"/></dir><dir name="widget"><file name="01_top.xml" hash="29a6efa02a0f04ce056cc53d0b4e2272"/><file name="02_entity.xml" hash="102a8cfb8f0a2c330768add309e25e97"/><file name="03_footer.xml" hash="b84026fabe4a09ef682aac220eccf07a"/></dir></dir><dir name="sql"><dir name="namespace_module_setup"><dir name="install-0.0.1"><file name="01_top.php" hash="50cec9cf47ccb1001b16c156bd792210"/><file name="02_entity.php" hash="fdfc8dbe0872a9f346d10925942daad0"/><file name="03_product_relation.php" hash="1be95058703726dc35fc985466d62129"/><file name="04_sibling_relation.php" hash="581b0adc63e3e28ab89dc576a3f2e7d6"/><file name="05_footer.php" hash="7d307239f928e12e9a9b48754777f640"/></dir></dir></dir></dir></dir></dir></dir><dir name="design"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><dir name="namespace_module"><file name="01_top.xml" hash="c657e63ddce2df350b7d45c57620e967"/><file name="02_entity_not_tree.xml" hash="4897e318fff890bf377ed3e8091b9986"/><file name="03_relation_product.xml" hash="4ae352696eebe3635e9df76bedaf48d6"/><file name="04_relation_sibling.xml" hash="b9f5a68c69914abeb24c9638a451b157"/><file name="05_entity_tree.xml" hash="e598aa0b93b1e6d5f180bac14f0fc20c"/><file name="06_relation_product_tree.xml" hash="897ddf70ea257a2f553bed07f1e84e3c"/><file name="07_relation_sibling_tree.xml" hash="3ae178a0a81364ec8df9935bf8a3da23"/><file name="08_footer.xml" hash="fd25391f06094530aadcbee222b433fc"/></dir></dir><dir name="template"><dir name="namespace_module"><dir name="catalog"><dir name="product"><dir name="edit"><dir name="tab"><dir name="entity"><file name="01_content.phtml" hash="22515160e08aec47a72e51321949ef9b"/></dir></dir></dir></dir></dir><dir name="entity"><dir name="edit"><file name="01_content.phtml" hash="ce1e8b965823d7880a5acea0de5ba26a"/><dir name="form"><file name="01_top.phtml" hash="99f82b638e08569b4be985af5a77aa26"/><file name="02_product_hidden.phtml" hash="7ef02b97f351681086ccc0f69615cbef"/><file name="03_sibling_hidden.phtml" hash="b0ab3d283c7dd99670034f439f1a7e83"/><file name="04_content.phtml" hash="887287c2135f192c2e050e7d9c2df401"/><file name="05_status.phtml" hash="3f4356540bc8cef1186b62c04e41d305"/><file name="06_content2.phtml" hash="d3d867b32ed5001de64b9d349d4a304f"/><file name="07_product_relation.phtml" hash="95ca5bc339ba49da37e0f9b5714521ea"/><file name="08_sibling_relations.phtml" hash="781a697648d00ec4c824380fae4b67ac"/><file name="09_footer.phtml" hash="5fd8d0c41500e156711c723af13f627f"/></dir><dir name="tab"><dir name="sibling"><file name="01_content.phtml" hash="59bbfec6eb6cee9778872eac55ac74bc"/></dir></dir></dir><dir name="tree"><file name="01_content.phtml" hash="0326fef77a80ddb5d154939783b52b1a"/></dir><dir name="widget"><dir name="tree"><file name="01_content.phtml" hash="e0e24d2640bdc3e4c7234564b263465f"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="namespace_module"><file name="01_top.xml" hash="bf6f2b1a2a7bfaec115c381abfa40e02"/><file name="02_default_top.xml" hash="10c0056a19cc82fbf809aa13b879b4ff"/><file name="03_default.xml" hash="e58d9aa36808b39bdd648d51fca7b992"/><file name="04_default_footer.xml" hash="22f72da3c656b5721d355607c891cc9c"/><file name="05_list.xml" hash="d612266dae53939552fb5b0a6fcb6feb"/><file name="06_view.xml" hash="7f3837e6fc2f6325304d5028fcfda532"/><file name="07_entity_rss.xml" hash="f06074f610065fbc6cb9a228402da7a7"/><file name="08_rss_top.xml" hash="54753c3cd7d42667c88c88f0084484f2"/><file name="09_rss.xml" hash="b513533d7cc561ec197ce1662bf54883"/><file name="10_rss_footer.xml" hash="3adf9a1e5301aa4221cede3ff5208785"/><file name="11_relation_product.xml" hash="309965e4062dc6f6f82dd495035e08ec"/><file name="12_footer.xml" hash="fd25391f06094530aadcbee222b433fc"/></dir></dir><dir name="template"><dir name="namespace_module"><dir name="catalog"><dir name="product"><dir name="list"><dir name="entity"><file name="01_top.phtml" hash="bb86f12fc472152437ef1be97280d258"/><file name="02_link_top.phtml" hash="62a65063f9611f31b02a5b3f3b34f524"/><file name="03_name.phtml" hash="fed55ae628836787e7a2ba05b1e695e6"/><file name="04_link_footer.phtml" hash="f01ee0fb040754cbdd4c7ca86dbec387"/><file name="05_footer.phtml" hash="d0bff7b594da78b60141591d6870556b"/></dir></dir></dir></dir><dir name="entity"><dir name="catalog"><dir name="product"><dir name="list"><file name="01_content.phtml" hash="96ec480a53c89ff5b87cfd59dc163f9e"/></dir></dir></dir><dir name="children"><file name="01_content.phtml" hash="129d29d6a49f3e6bbbd0697f55c97740"/></dir><dir name="list"><file name="01_top.phtml" hash="10c541cba8766100d47e8baadb8ce6a5"/><file name="02_rss_link.phtml" hash="cacf7866f6dd54ab37a217d7cb7466c7"/><file name="03_footer.phtml" hash="24d3a1e0224a9e59f5daa0d2660e76b4"/><file name="04_footer_is_tree.phtml" hash="098332bf5a88d8529ea3ef57ed9c75f4"/></dir><dir name="sibling"><dir name="child"><dir name="list"><file name="01_content.phtml" hash="5a1f524b49cf120201a90ee695f90544"/></dir></dir><dir name="list"><file name="01_content.phtml" hash="5a1f524b49cf120201a90ee695f90544"/></dir></dir><dir name="view"><file name="01_content.phtml" hash="205b0b21c650f28ff0e364d6ec8ce552"/></dir><dir name="widget"><dir name="link"><file name="01_content.phtml" hash="11d9e23bd1c2f8cb8a0f857c8bb393d8"/></dir><dir name="view"><file name="01_content.phtml" hash="f89f40babc5af3cd30597cd097ad9ab9"/></dir></dir></dir><dir name="rss"><file name="01_content.phtml" hash="172a345ace9b7ec84ad2e18f51d48257"/></dir></dir></dir></dir></dir></dir></dir><dir name="etc"><dir name="modules"><dir name="Namespace_Module"><file name="01_content.xml" hash="4495317a1b8392281b68f07a546c56c2"/></dir></dir></dir><dir name="locale"><dir name="en_US"><dir name="Namespace_Module"><file name="01_global.csv" hash="133cec10c0a2d55366574bbaa3c98a6f"/><file name="02_entity.csv" hash="97e1a2056ec2f49acc1c5c9598ef10d7"/><file name="03_attribute.csv" hash="0bc9532d35587f2225e398156cc3ef7f"/><file name="04_global_status.csv" hash="507d9e24387e6935b1ee629e8432f842"/><file name="05_global_rss.csv" hash="df495f10c1e7d7d3fb770d8b406b9f9b"/><file name="06_global_seo.csv" hash="5f973fd7dfbb61ce8c21d6f7e8622379"/><file name="07_attribute_yesno.csv" hash="20eaf2d5eaa8224e5fa1c7a63634b1c0"/><file name="08_global_file.csv" hash="8bebcdd48d5ae7b533cc53e789f03ef2"/><file name="09_product_relation.csv" hash="b96f377dfa788f2772f2f8b7f156aebd"/><file name="10_relations.csv" hash="d0f7a10c89d21ade4ba17cd73dbb42fb"/><file name="11_global_tree.csv" hash="279098d455e2c1adcde8668e042541d7"/><file name="12_tree_entity.csv" hash="d41675dbb1bf588d1d59af8f7b255c2d"/><file name="13_url_rewrite.csv" hash="56d63caf8b00b1bc92bece5516b6b27f"/></dir></dir></dir></dir><dir name="skin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="namespace_module"><dir name="tree"><file name="01_content.css" hash="7929b899ed457d539637d5083286bed4"/></dir></dir></dir><dir name="images"><dir name="namespace_module"><dir name="collapsedgif"><file name="01_content.gif" hash="ef74c08289e94b7aae81766fb00d4195"/></dir><dir name="collapsedpng"><file name="01_content.png" hash="0613450d25c762b6a40c51768b02462d"/></dir><dir name="expandedgif"><file name="01_content.gif" hash="3f5512a54f359343273caf7b3787ee8a"/></dir><dir name="expandedpng"><file name="01_content.png" hash="f7f28ae897708c78b28ead22c3692bb8"/></dir><dir name="line1gif"><file name="01_content.gif" hash="65b0c812c8d57ea72b84fc69a077a40a"/></dir><dir name="line1png"><file name="01_content.png" hash="4e01064a2c78b8885f65ff7a40f78c02"/></dir><dir name="line2gif"><file name="01_content.gif" hash="95fc5c58069ece5eb44e198ee53b3fe1"/></dir><dir name="line2png"><file name="01_content.png" hash="6adbb4ca64d943f5ee5528d713757fde"/></dir></dir><dir name="placeholder"><file name="entity.jpg" hash="6361a80d5ca988fcec45ad3767322e5e"/></dir></dir><dir name="js"><dir name="namespace_module"><dir name="tree"><file name="01_content.js" hash="1b8a1e7b1cb23e7a87e05b33a34523a0"/></dir></dir></dir></dir></dir></dir></dir></dir><file name="modulecreator.xml" hash="0e68e62adb7faaa519951aaf6e390db3"/><file name="system.xml" hash="5375cca1089787206cfabb41d7aa0614"/></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="ultimate_modulecreator.xml" hash="f21bb3c8940eb81307817c0491caf300"/></dir><dir name="template"><dir name="ultimate_modulecreator"><dir name="edit"><dir name="tab"><dir name="entities"><dir name="entity"><file name="attribute.phtml" hash="c2bcdf07dc68c229e8a5e46537352df6"/></dir><file name="entity.phtml" hash="f356184e2d8855a13456f52ac7e51d8e"/></dir><file name="entities.phtml" hash="df9179ffd5e72a04cf4740488521f0ce"/><file name="help.phtml" hash="dae530bc9d4ab9445d95d087bfc80fe6"/><file name="relation.phtml" hash="17a41ecbecdf7af519d11c3d026a800b"/></dir></dir><file name="edit.phtml" hash="8d10e82ae89d9e4ede28e6c59c9e724c"/><file name="tooltip.phtml" hash="d3598ad3f978d708b1f7f36feee39560"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Ultimate_ModuleCreator.xml" hash="324d2b364541a7355c9ff4248c0518f2"/></dir></target><target name="magelocale"><dir name="en_US"><file name="Ultimate_ModuleCreator.csv" hash="e8d1c6166a369904c245004c99893f40"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><file name="ultimate_modulecreator.css" hash="781a789d72dc08f660479543ff09b143"/><dir name="images"><dir name="ultimate_modulecreator"><file name="logo.png" hash="9c9ca3b07295cab1cb1503865905ee50"/></dir></dir></dir></dir></dir></target><target name="mage"><dir name="."><file name="LICENSE_UMC.txt" hash="1372b858e10f4c6feb2967766a0b7a62"/><file name="readme_UMC.txt" hash="7b8cd5baf640a5078be5c7136b56b5d9"/></dir></target><target name="mageweb"><dir name="."><file name="modman" hash="191dd9a4e001d6f8de5933202daac7d1"/></dir></target></contents>
|
23 |
<compatible/>
|
24 |
<dependencies><required><php><min>5.0.0</min><max>7.0.0</max></php></required></dependencies>
|
25 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Ultimate_ModuleCreator</name>
|
4 |
+
<version>1.4.1</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/MIT">MIT License</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Develop custom Magento modules without writing any code. Use a module creator. Use this module creator</summary>
|
10 |
<description>This module allows you to create custom Magento modules for your own entities. You can create as many entities as you want in one extension, you can establish relations between them, decide to generate only back-end pages or both back-end and frontend pages.</description>
|
11 |
+
<notes>Bug fixes:
|
12 |
+
- siblings not listed in the order set in admin.
|
13 |
+
- entity models are missing event prefixes and event objects.
|
14 |
+
Features:
|
15 |
+
- Added 'country' field type
|
16 |
+
- Added log creation for each module with the files that are created.
|
17 |
Refactor:
|
18 |
+
- Clean up for image attribute renderers (frontend and backend).
|
19 |
+
- added Mage::logException for admin exceptions
|
20 |
+
- Rafactor image helper (thanks carco).</notes>
|
21 |
<authors><author><name>Marius Strajeru</name><user>tzyganu</user><email>tzyganu@gmail.com</email></author></authors>
|
22 |
+
<date>2013-03-15</date>
|
23 |
+
<time>21:46:24</time>
|
24 |
+
<contents><target name="magecommunity"><dir name="Ultimate"><dir name="ModuleCreator"><dir name="Block"><dir name="Adminhtml"><dir name="Modulecreator"><dir name="Edit"><file name="Form.php" hash="cb4328ae858a31a31d76016e50b56739"/><dir name="Tab"><dir name="Entities"><dir name="Entity"><file name="Attribute.php" hash="daa6787fa3f72150fc86c4350be932da"/></dir><file name="Entity.php" hash="8d5b07f735a5a7107f1abf66bbb482da"/></dir><file name="Entities.php" hash="65602b8daaa8585d9c94d7a4d8d7dcde"/><file name="Help.php" hash="304c68d68e9adf0962817e27877683b6"/><file name="Relation.php" hash="43730e74747b8e6e5985eee259e6db07"/><file name="Settings.php" hash="dee31d423d26a3efbc773530ac847afb"/></dir><file name="Tabs.php" hash="578af9256efb3d516db14db7e396e5e3"/></dir><file name="Edit.php" hash="491948d86e2e3a50fa185a407997c163"/><file name="Grid.php" hash="96ef8fa066b89937712b44991191f4de"/></dir><file name="Modulecreator.php" hash="b2630018b6f103d1a3f9e92ed7de7a54"/></dir></dir><file name="Exception.php" hash="aaef7086ff700d7132418cf68629246f"/><dir name="Helper"><file name="Adminhtml.php" hash="f913d91b1041032b35e4d0ca2fd20205"/><file name="Data.php" hash="15c1fc5975814c656c587da7db416a21"/></dir><dir name="Model"><file name="Abstract.php" hash="33a186edb30b8ff3f54fda6690a90a2c"/><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Source"><file name="Codepool.php" hash="045f0555fc545799148627e081ca8727"/><file name="Install.php" hash="7fb2fd108b5bed63b31ab9cfd0da25f5"/><file name="Layout.php" hash="3d63a2221b3a93926c662b3c10effc2c"/></dir></dir></dir></dir><dir name="Attribute"><dir name="Type"><file name="Abstract.php" hash="983e731730dbc4ee0a8c24ec662c091a"/><file name="Country.php" hash="59211a0da793c9f828caa161688f0d1c"/><file name="Decimal.php" hash="593c993bfba24af511164987a8c11eb3"/><file name="File.php" hash="a8e18228577beb612f202acbe0ddb41a"/><file name="Image.php" hash="80211878524ee9ed71096d30b1c52c42"/><file name="Int.php" hash="7e06c84fa8a3c2940624248c386e2d67"/><file name="Text.php" hash="237217feda93dadf93a63f181ebb8793"/><file name="Textarea.php" hash="04cd8559fbeeb8b81733e6c9a3b7b725"/><file name="Timestamp.php" hash="d18d599090ac5fa824e44edf3fa14486"/><file name="Website.php" hash="0bd68cd56e97013711986bdb3edf06cb"/><file name="Yesno.php" hash="dbb96529e483d587d8d8d99f176afa8b"/></dir></dir><file name="Attribute.php" hash="b6ab929edc78a41829630b0a02d59e5e"/><file name="Entity.php" hash="bd57954f5eb26d276273e9040281b236"/><dir name="Module"><file name="Collection.php" hash="0e413b976cbc9649ec982fe0f4b95dd1"/></dir><file name="Module.php" hash="b34a226d017260e9a2c1edfcaf169fc3"/><file name="Relation.php" hash="aca1db5db2cd807298acd21dc7b24b39"/><file name="Writer.php" hash="b47341646a1882d77e57cf6a5b30ad49"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="ModulecreatorController.php" hash="11ee92957c8099af688993543b9f849e"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="755c04b748c41ced20f41c725acc95c2"/><file name="config.xml" hash="653f667533ebab4952b8448d1443ea11"/><dir name="m"><dir name="app"><dir name="code"><dir name="cp"><dir name="Ns"><dir name="Md"><dir name="Block"><dir name="Adminhtml"><dir name="Catalog"><dir name="Product"><dir name="Edit"><dir name="Tab"><dir name="Entity"><file name="01_content.php" hash="59347ed053e0fe3dc2e25a5c5490ecd4"/><dir name="IsTree"><file name="01_content.php" hash="1eda50311bcf910106a49ad54f1681fd"/></dir></dir></dir></dir></dir></dir><dir name="Entity"><file name="01_content.php" hash="5dfc799aeee50cc5ef32d356c1cc176f"/><dir name="Abstract"><file name="01_content.php" hash="dfe60775e0f319347a8937a17733c751"/></dir><dir name="Edit"><file name="01_content.php" hash="21d1cd84da305a41e516752e39c12404"/><dir name="Form"><file name="01_content.php" hash="39f68c93dba53e650f502776c03caf20"/><dir name="IsTree"><file name="01_top.php" hash="6bf3a72161678690d515deb253fb5f3d"/><file name="02_product_relation.php" hash="adee6754a75247b7d401d8f774d3918b"/><file name="03_entity_relation.php" hash="7f06c1f227ff6e8e1f64606bc1da6d3a"/><file name="04_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="IsTree"><file name="01_content.php" hash="6f8ab2c71f28a7618db8b94c311d6f13"/></dir><dir name="Tab"><dir name="Form"><file name="01_top.php" hash="9f6681f6bc3e012a8c711739a0ed6ae1"/><file name="02_image.php" hash="8dbf5010de2c46aabb02cd7a4df6f45e"/><file name="03_file.php" hash="64ede5038fe0edfec08671a5ca521777"/><file name="04_wysiwyg.php" hash="d25a58b233bd88a2e6d1fd5a79398394"/><file name="05_wysiwyg_is_tree.php" hash="6ef452bba45e48bbfc370ea24b61d6e0"/><file name="06_path_tree.php" hash="9991a81df109b0abbc8bd06a26694d1b"/><file name="07_parents.php" hash="476f7ebd1b04a879f3dd51b1913f9a9d"/><file name="08_attributes.php" hash="44c81d580dcf072b2ed9b5cc90fb1fac"/><file name="09_url_rewrite.php" hash="fdcf74d7a3abe5bfa32db1d5f042d8e2"/><file name="10_status.php" hash="ade9e66ee2dd546ebea8c9800b378a88"/><file name="11_rss.php" hash="0a122d46cc4826a0bd62b2f5d52b3fdc"/><file name="12_seo.php" hash="f0cf29478e91ced8dc39170b2574f1f2"/><file name="13_add_values_not_tree.php" hash="dc7ba40ed78eb43b08fc46c235029c8c"/><file name="14_add_values_tree.php" hash="c569ce680f4c5328292d6bb4f4c37e69"/><file name="15_get_entity_tree.php" hash="3d9027f073bf28f89aecd6b224c350ca"/><file name="16_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir><dir name="Product"><file name="01_content.php" hash="e42fb1044c47e7e1ba7c456f057b9558"/></dir><dir name="Sibling"><file name="01_content.php" hash="45cbbc5d065f5e0402a8340e14e5e6b2"/><dir name="IsTree"><file name="01_content.php" hash="0809c980a4d5059bc679e37762853f5e"/></dir></dir></dir><dir name="Tabs"><file name="01_top.php" hash="7cecbd5b68dc09c4e9a14f214b3b70df"/><file name="02_relations_tabs.php" hash="3f1eba9e9a7bf177185364cffc8468ba"/><file name="03_product_relation.php" hash="aee681c7021e9efad07a39bc8f8cf56d"/><file name="04_footer.php" hash="01b6273dfbf342c1f984c1e10b631b65"/><dir name="IsTree"><file name="01_top.php" hash="e48cac6414b02601cbef87e9831846a2"/><file name="02_relations_tabs.php" hash="50d5a9065062cf44f11a8aba92140790"/><file name="03_product_relation.php" hash="c5dc78d7c883af529b3adf72770d3dde"/><file name="04_footer.php" hash="5cad78a0f4dc4a2531cb6195e5e9ea5a"/></dir></dir></dir><dir name="Grid"><file name="01_top.php" hash="1a0c8754c5482692ae460fd6aafcfa6b"/><file name="02_columns_top.php" hash="1d28265e98b06fe61edde000c0d28db6"/><file name="03_parents.php" hash="011f4f2895cbaa33e753168131feedee"/><file name="04_grid_attributes.php" hash="2e7a6d5f6333b44ddf6792898a6e01c1"/><file name="05_url_rewrite.php" hash="b35f254eefea0d714de7ec6bdf5f2c4b"/><file name="06_grid_status.php" hash="f1d657a64ad855219882ac8aa6ead5b5"/><file name="07_created_at.php" hash="15f2bf1aeab4512931cfd13461466dbf"/><file name="08_updated_at.php" hash="b416ed24d9613f8332f4191f0378c1a3"/><file name="09_grid_actions.php" hash="fbc479c06560e193e4c2177358eadc07"/><file name="10_grid_export.php" hash="3da336230cb919e5dd36e39d21ea3f0e"/><file name="11_columns_footer.php" hash="1cdf225b4a61a0036903c4e251484684"/><file name="12_mass_action_top.php" hash="4979fc362c7c0666bcfe39e89f3a88f4"/><file name="13_mass_action_status.php" hash="d504216f92f489be7857bee37cf0771c"/><file name="14_mass_action_flags.php" hash="9b0d9088708f5e84b50e7ac6ee06a632"/><file name="15_mass_action_parents.php" hash="7b36b4b3954e3913e6bdafb822ca6634"/><file name="16_footer.php" hash="0833ff1f2002af6a4db1df3a3cad3385"/></dir><dir name="Helper"><dir name="File"><file name="01_content.php" hash="c00cdcedf171c992bb88a20402bfd70d"/></dir><dir name="Image"><file name="01_content.php" hash="62a55ac8856f4dc555d6dc373c2de7d5"/></dir></dir><dir name="Tree"><file name="01_top.php" hash="8b8eaeea900cceeccb0b12717fe440f7"/><file name="02_status.php" hash="3a0cada5dfb430e3d7b9890e3f6ac2ba"/><file name="03_footer.php" hash="1e7043194d0104f8e39c6418af00a7f4"/></dir><dir name="Widget"><dir name="Chooser"><file name="01_top.php" hash="61b31cd249d7f23aeb456eeff337c9c0"/><file name="02_top_status.php" hash="ae8d09557d6c9aa3a920e148f0cdd7d6"/><file name="03_content.php" hash="8dcbeac6eb2d80f500479a36c5b49c36"/><file name="04_status.php" hash="6fb78962dd9ffb30ee5d750876a26e5d"/><file name="05_footer.php" hash="c6f7967214ca668b51f41dc428cf7145"/><dir name="IsTree"><file name="01_content.php" hash="90138bcf517a4df92825e95e65902a1c"/></dir></dir></dir></dir><dir name="Helper"><dir name="Wysiwyg"><file name="01_content.php" hash="50f63445cbb78d5eb1ff42eed07e76af"/></dir></dir></dir><dir name="Catalog"><dir name="Product"><dir name="List"><dir name="Entity"><file name="01_top.php" hash="e73df46ed0d2f57e185cebe41814ab67"/><file name="02_status.php" hash="716a6a2f8243c5048f90584f0bd7f888"/><file name="03_footer.php" hash="7afa811ee3b39c3717cbb8f484e32405"/></dir></dir></dir></dir><dir name="Entity"><dir name="Catalog"><dir name="Product"><dir name="List"><file name="01_content.php" hash="f9a6ec0ca31b9525357f447b5471256f"/></dir></dir></dir><dir name="Child"><dir name="List"><file name="01_content.php" hash="30ac249d25535c1a522f96bae56a4f75"/></dir></dir><dir name="Children"><file name="01_content.php" hash="e3f2d736896f8b81132ab0ce4735d08a"/></dir><dir name="List"><file name="01_top.php" hash="225b59a84d8bf6cb0d06d62bb5240eb2"/><file name="02_status.php" hash="716a6a2f8243c5048f90584f0bd7f888"/><file name="03_footer.php" hash="369738e4147fd032b12c1df4aa01ed9c"/><dir name="IsTree"><file name="01_top.php" hash="225b59a84d8bf6cb0d06d62bb5240eb2"/><file name="02_status.php" hash="716a6a2f8243c5048f90584f0bd7f888"/><file name="03_center.php" hash="d4bab4d0e7f4741b0288454906b0e428"/><file name="04_status_draw.php" hash="05f41e4fa26f8644069191a7621b6e3f"/><file name="05_children.php" hash="b59bb1c9e92637ceab3196618b8deee7"/><file name="06_active_children.php" hash="1c9785dbb369f8d3818d4644c5f7e232"/><file name="07_active_children_no_status.php" hash="60a6cf3f5643514e5c1b83353cea5ea9"/><file name="08_footer.php" hash="90180c9a604e490752cf905fd3410efd"/></dir></dir><dir name="Rss"><file name="01_top.php" hash="957b89055315fee8ecefa6b34e940efe"/><file name="02_status.php" hash="7a81b20fbd0ca4ac140c263e481a5b06"/><file name="03_content_top.php" hash="6e2c16bd170842cc88610692439c4674"/><file name="04_content.php" hash="f556d8f00acfa61f93bbc9b09da3508b"/><file name="05_footer.php" hash="0514ad15059f8411d3315d111aac5b84"/></dir><dir name="Sibling"><dir name="List"><file name="01_content.php" hash="09e6f490b8b2d73efdbecbb68737c81f"/></dir></dir><dir name="View"><file name="01_content.php" hash="b6824731ad9bb41ef1f84b4359596f67"/></dir><dir name="Widget"><dir name="Link"><file name="01_content.php" hash="2862dcc4937c58fbee284764732e733c"/></dir><dir name="View"><file name="01_top.php" hash="a31bafcf8918811ff55b0a8eaf49c021"/><file name="02_status.php" hash="fd4d2e31a4c04c13bb470ce615550310"/><file name="03_template.php" hash="e6fd0367cfbd0b14996e189ac56b2d3b"/><file name="04_status.php" hash="573160846b9e8693e966c0881103f25e"/><file name="05_footer.php" hash="1009acd5e8f54dbedb651ecffb283df1"/></dir></dir></dir><dir name="Rss"><file name="01_content.php" hash="ea37b93ec747a042dd51e2e4eaeb22ac"/></dir></dir><dir name="Controller"><dir name="Adminhtml"><dir name="Module"><file name="01_content.php" hash="938c09e00f8a7045d70c7e97dd478df8"/></dir></dir><dir name="Router"><file name="01_top.php" hash="c9dd518945d5ab5fb7508084c2206125"/><file name="02_entity.php" hash="8ba8993dd992d580cd5e3b6ced303d38"/><file name="03_footer.php" hash="7ba40f835c0bbca8dfb8e60753142de4"/></dir></dir><dir name="Helper"><dir name="Data"><file name="01_top.php" hash="44aa03c717b24b0086230271b07f195a"/><file name="02_entity.php" hash="378423c2b9ba4ac86328e094d6e60946"/><file name="03_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir><dir name="Entity"><file name="01_top.php" hash="6e37881fbe0898e930a5d7b3d1ce606f"/><file name="02_tree.php" hash="8e6d460e528f4b0e3e74bbbff06336dd"/><file name="03_rss.php" hash="9e9fa595a4a7ec7f159e1d64620119ae"/><file name="04_file.php" hash="44bc7ce84f603100f67dedc1edf3cc0d"/><file name="05_footer.php" hash="2e687c8e025cca2e891ac925406f277c"/><dir name="Image"><file name="01_content.php" hash="e09360ea17dff94a611787004030275b"/></dir></dir><dir name="Image"><dir name="Abstract"><file name="01_content.php" hash="b39acaba6cf4d242689147dfffc8f095"/></dir></dir><dir name="Product"><file name="01_top.php" hash="20709afdafe7e3fd280e7c346a441b0c"/><file name="02_content.php" hash="33fa587ea74ff5caae02e2263bd6092b"/><file name="03_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="Model"><dir name="Adminhtml"><dir name="Observer"><file name="01_top.php" hash="abec4c7c295fb57c4086fdf9d22cdf28"/><file name="02_entity.php" hash="6c64bd2314a24f6d2dafa4dedb448b8c"/><file name="03_entity_save.php" hash="6b6db7bcb0cffefc6c3406df406c497a"/><file name="04_entity_save_tree.php" hash="aca15cbb7afc5a832488addb56df157e"/><file name="05_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir><dir name="Search"><dir name="Entity"><file name="01_content.php" hash="824a247bcd2cadb8f1da16ec3034d1c1"/></dir></dir></dir><dir name="Entity"><file name="01_top.php" hash="37daaca4671c58ef2fb2eaa50e0d7a7b"/><file name="02_var_sibling.php" hash="cbbdeeaa7082b22b3a57508dc6bcd4fa"/><file name="03_var_product_relation.php" hash="50cd6433f6617ed2d47c2a9ab9bee4d1"/><file name="04_construct.php" hash="81fb22faf1dc0c05920f5db34061100c"/><file name="05_url.php" hash="6d955735b11308ec8087bfbf2d0c6078"/><file name="06_url_rewrite_not_status.php" hash="514c4998931a817a55e652ec6fa4a322"/><file name="07_url_rewrite_status.php" hash="c5b3cbcffc16a48989a5491e4abd2c4b"/><file name="08_editors.php" hash="615bc07ef7e14bc892bb567e3c22cef7"/><file name="09_after_save_top.php" hash="f456ae82840db694e49d527d6ad23f8f"/><file name="10_after_save_product.php" hash="7e85bbf889a5beededa975831b573d97"/><file name="11_after_save_sibling.php" hash="a7ea726ae5b4b19f78773a563a7196bf"/><file name="12_after_save_footer.php" hash="1af792cf3f94391bbe2b261a0d927a8c"/><file name="13_product_relation.php" hash="890ad6b1cad708779f0e5cb1aa745f1a"/><file name="14_sibling_relation.php" hash="f833e4acb70b198a1cc69da992affc76"/><file name="15_tree.php" hash="c577ef6c4d67da82d5226162345ef896"/><file name="16_tree_status.php" hash="64da48d68c1af82304cea4ee2c21800e"/><file name="17_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="Product"><file name="01_content.php" hash="d8dfaa0ac8ba132bf95d3d65452d9795"/></dir><dir name="Sibling"><file name="01_content.php" hash="ef2fc76324ca0afcaabab7f8272bd526"/></dir></dir><dir name="Resource"><dir name="Entity"><file name="01_top.php" hash="8584bb2dba4e8da350ad36ee91ba7094"/><file name="02_tree_var.php" hash="8a673f57e7979c6c0aa2dc38c8f29c38"/><file name="03_constructor.php" hash="1c67d6971268cb3765067a30d6a5ebac"/><file name="04_tree.php" hash="f5f39cd45b72b48079a8bc3c6cee81d2"/><file name="05_tree_before_save_no_url_rewrite.php" hash="721b246ab7c8011faa810f9c509cbc76"/><file name="06_tree_before_save_url_rewrite.php" hash="872a4a6d7b408bf621a52739e5d8438a"/><file name="07_children_no_status.php" hash="41b492cea369e6303ad444b16f016857"/><file name="08_children_status.php" hash="61bfda77779840f9855311137112979e"/><file name="09_content.php" hash="ad6a926a11cf4ca722b896a78bbeadab"/><file name="10_url_rewrite_status.php" hash="1f7413dfcd315965fac22404f7a2808e"/><file name="11_url_rewrite_not_status.php" hash="13b834ba94b4998155668d3c211d2759"/><file name="12_url_rewrite_before_save_not_tree.php" hash="2d51e7bda2f717d22bd17593851f65fa"/><file name="13_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="Collection"><file name="01_top.php" hash="7aed912ade7c0e7f779b73d3022772b4"/><file name="02_tree.php" hash="22c1250f162919870d08ec9aa71b949e"/><file name="03_tree_status.php" hash="fe745dc63220b3ddd5f799921077ac51"/><file name="04_product_relation.php" hash="d2f707b97df2ecf2d088aebeeb660822"/><file name="05_sibling_relation.php" hash="4563330e972ef0b0f4b96096b8594727"/><file name="06_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir><dir name="Product"><file name="01_content.php" hash="1545e16c25769395d3d95ec03a8cd4b3"/><dir name="Collection"><file name="01_content.php" hash="401d1dc800ddf76ea155160f3e02d162"/></dir><dir name="IsTree"><file name="01_content.php" hash="0a1b1718dec4ec27dc5310d45b388e2e"/></dir></dir><dir name="Sibling"><file name="01_top.php" hash="e78ca594012a642782fc2292084f81ca"/><file name="02_save_relation.php" hash="43dbb46224c1f8ca4a658a6a5d5077ad"/><file name="03_save_relation_tree.php" hash="1b0b458b7327dd6beaca0455d4268921"/><file name="04_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="Collection"><file name="01_content.php" hash="c48de1443823a6ff51517f8a6cab0599"/></dir></dir><dir name="Tree"><file name="01_top.php" hash="d286ac636149b07c3e1993eb4d157529"/><file name="02_status_top.php" hash="f4151c843a394922807dcb59ce6807d8"/><file name="03_content.php" hash="402a0ba7525c552db2e2fa64c79f6473"/><file name="04_not_status.php" hash="d1b54f100c018fe6d5ae965e5aac8dd8"/><file name="05_status.php" hash="df0ef83645e0784f4c33534b976421ee"/><file name="06_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="Setup"><file name="01_content.php" hash="335c579a20a627c5a403e3c7ac6156c0"/></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Module"><dir name="Entity"><dir name="Catalog"><dir name="ProductController"><file name="01_content.php" hash="b904ef31283029cf808cc42719208874"/><dir name="IsTree"><file name="01_content.php" hash="989ec00484ec5ef3f04df8f9f0007eee"/></dir></dir></dir><dir name="WidgetController"><file name="01_content.php" hash="8d934e135109f74ac036b84d6939f6c9"/><file name="02_tree.php" hash="41b1fca05f9bd59455c72b1d240cc1e7"/><file name="03_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="EntityController"><file name="01_top.php" hash="21cbb6239ec0b4d998b494308af6cf1a"/><file name="02_upload_image.php" hash="c111546b644ffafd26c102f095334f95"/><file name="03_upload_files.php" hash="90fd33445b8889a23e5af035da89c15e"/><file name="04_save_product_relation.php" hash="29b35c54da6069c72edd245c42aa5369"/><file name="05_save_sibling_relation.php" hash="e9fe7f25344280b483db7108cc3ae0b1"/><file name="06_save_sibling_relation_tree.php" hash="ee1dcb0a6924b8c7c074a63ec2331f53"/><file name="07_save.php" hash="11c73c7cfc8c76738fce70c466ba7c63"/><file name="08_exception_upload.php" hash="216185c48b0b0937597939a95026a1c9"/><file name="09_exception.php" hash="b34376b34211a9cc21609ac7438d6d6d"/><file name="10_center.php" hash="bc1d289241de1722abb5685c63352c2e"/><file name="11_mass_status.php" hash="31d3560d9ec69d1e5f190d34ef9f54a2"/><file name="12_mass_update.php" hash="adc4ce198da420c75a45f32f9deb9d8f"/><file name="13_mass_parents.php" hash="2f6af9624a7c790d0995fb445e3b8af5"/><file name="14_product_relation_actions.php" hash="772e8ec1661ca45871bc962bdf1bbbcd"/><file name="15_sibling_actions.php" hash="8833208a9d834e7d5fda272a6b827b53"/><file name="16_sibling_actions_tree.php" hash="2994bf89f5d90bfc90e94a76444a4719"/><file name="17_footer.php" hash="044299b6435f621987f31c7c540f113c"/><dir name="IsTree"><file name="01_top.php" hash="951a6a86fdc5f2b39a6b2cae4c9f6434"/><file name="02_wysiwyg.php" hash="3c2ec4bab3895ca6a43bd0416b827028"/><file name="03_save.php" hash="e22bd734eb73a53a0d365f619cd8f7e6"/><file name="04_upload_image.php" hash="c111546b644ffafd26c102f095334f95"/><file name="05_upload_file.php" hash="90fd33445b8889a23e5af035da89c15e"/><file name="06_save_continue.php" hash="b277fb6a9cdb4a28b43416331154f9b8"/><file name="07_product_data.php" hash="d9050ba8bf3d0780d5077a606184e09c"/><file name="08_sibling_data.php" hash="5edd1b8750aef7c7e4fc0137d038a867"/><file name="09_real_save.php" hash="c59972f30bbca76b52376696013d9f82"/><file name="10_product_relation_action.php" hash="1a9875a99162f151e67b827e695f22a9"/><file name="11_sibling_actions.php" hash="0c165d6714a5a4b6203c9d021cdba223"/><file name="12_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir></dir></dir><dir name="EntityController"><file name="01_top.php" hash="eec876d7b63d893886bb334b09480af4"/><file name="02_list.php" hash="dfcf0e406a5a6548637bd50ce06bb1f6"/><file name="03_list_seo.php" hash="04dedfdc059b8b4b89c7c9ccc403a4b4"/><file name="04_list_footer.php" hash="1d41a3331d006d0a04ff32bb4085210b"/><file name="05_view.php" hash="65c4d2ff246370e5bda69be233e01275"/><file name="06_view_status.php" hash="fd0bc040dc135e3469757569ffcf7899"/><file name="07_view_status_tree.php" hash="2b36e7be800e6c59e12a87b0ef697097"/><file name="08_view2.php" hash="af3fc07f58fa608f8f70f2e0264fe0bd"/><file name="09_breadcrumbs.php" hash="8157b6c12ecd17df9acdf095e7eb75db"/><file name="10_breadcrumbs_tree.php" hash="f2391a45fb1ce3e64de454981973cc23"/><file name="11_breadcrumbs_footer.php" hash="b41efc51d35a4f93a3b00dc5f899e1b5"/><file name="12_view_seo.php" hash="2e56f0ef104d419dee88abf037fe9f18"/><file name="13_view_footer.php" hash="3be2b1b314c50af6fd03c53647f06e56"/><file name="14_rss.php" hash="6e2fc4485e7a2b6c3508d05d7b71748d"/><file name="15_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="data"><dir name="namespace_module_setup"><dir name="data-install-0.0.1.php"><file name="01_top.php" hash="d63e4a5fbe4435eadd52abf1534ee829"/><file name="02_entity.php" hash="df6b285616bf2741ae9288e5d9e0758e"/></dir></dir></dir><dir name="etc"><dir name="adminhtml"><file name="01_top.xml" hash="11dee4372e147adfdd6dcf549207d52c"/><file name="02_entity_acl.xml" hash="6afabb39251e5233380992ec92a7a49f"/><file name="03_center.xml" hash="c3daf849d2cc4f2b9bb10319466df7b9"/><file name="04_entity_menu.xml" hash="c940e5491e196974bd81421566bec92d"/><file name="05_footer.xml" hash="567de2825a456f5c8de1c2d3f718b333"/></dir><dir name="config"><file name="01_top.xml" hash="ab60a876013ce736e83c89e6e9be4e25"/><file name="02_tables.xml" hash="07d07c4044d5ee658664c9d3465ea676"/><file name="03_siblings_table.xml" hash="13cdf74c83b7d86d15717b7e31bcc5ed"/><file name="04_relation_table.xml" hash="5e50710deedcd19316110a4db8dbfe5c"/><file name="05_global.xml" hash="9e1870511df355e90da3f86acb7e88cf"/><file name="06_url_rewrite.xml" hash="d7e710748d570d29aca3d15ec4424f2d"/><file name="07_adminhtml.xml" hash="f91e8a152a9e4b7c331df0583e987c7c"/><file name="08_relation_product.xml" hash="de83346f1f657f61a23251f37016bd99"/><file name="09_global_search_top.xml" hash="24e3dddbf6fc52170457a0804c07e060"/><file name="10_global_search_entity.xml" hash="c9e6a985c2292d82c0e648b0fea07837"/><file name="11_global_search_footer.xml" hash="46e34587440f1aa3462eba45aca78be7"/><file name="12_admin.xml" hash="d4c5c6313071ffa54afb69782dbcc21e"/><file name="13_frontend.xml" hash="9617988c4eb5ab502eb57349ab1a2dec"/><file name="14_default_top.xml" hash="a306c05cad3fd6c4c46f5c162e52df68"/><file name="15_default.xml" hash="fc553b2555e09b1ab639b58649b5b4cf"/><file name="16_default_footer.xml" hash="40004610d67a1bcf5ecf317917a1b0ab"/></dir><dir name="system"><file name="01_top.xml" hash="a250611cd158a2b0f9c0adef5b3d8074"/><file name="02_entity.xml" hash="0e789a6caeecd1e7223ab6c44ca1504e"/><file name="03_footer.xml" hash="2ead9ca0742a78448b5db442581d4cd9"/></dir><dir name="widget"><file name="01_top.xml" hash="29a6efa02a0f04ce056cc53d0b4e2272"/><file name="02_entity.xml" hash="102a8cfb8f0a2c330768add309e25e97"/><file name="03_footer.xml" hash="b84026fabe4a09ef682aac220eccf07a"/></dir></dir><dir name="sql"><dir name="namespace_module_setup"><dir name="install-0.0.1"><file name="01_top.php" hash="50cec9cf47ccb1001b16c156bd792210"/><file name="02_entity.php" hash="fdfc8dbe0872a9f346d10925942daad0"/><file name="03_product_relation.php" hash="1be95058703726dc35fc985466d62129"/><file name="04_sibling_relation.php" hash="581b0adc63e3e28ab89dc576a3f2e7d6"/><file name="05_footer.php" hash="7d307239f928e12e9a9b48754777f640"/></dir></dir></dir></dir></dir></dir></dir><dir name="design"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><dir name="namespace_module"><file name="01_top.xml" hash="c657e63ddce2df350b7d45c57620e967"/><file name="02_entity_not_tree.xml" hash="4897e318fff890bf377ed3e8091b9986"/><file name="03_relation_product.xml" hash="4ae352696eebe3635e9df76bedaf48d6"/><file name="04_relation_sibling.xml" hash="b9f5a68c69914abeb24c9638a451b157"/><file name="05_entity_tree.xml" hash="e598aa0b93b1e6d5f180bac14f0fc20c"/><file name="06_relation_product_tree.xml" hash="897ddf70ea257a2f553bed07f1e84e3c"/><file name="07_relation_sibling_tree.xml" hash="3ae178a0a81364ec8df9935bf8a3da23"/><file name="08_footer.xml" hash="fd25391f06094530aadcbee222b433fc"/></dir></dir><dir name="template"><dir name="namespace_module"><dir name="catalog"><dir name="product"><dir name="edit"><dir name="tab"><dir name="entity"><file name="01_content.phtml" hash="22515160e08aec47a72e51321949ef9b"/></dir></dir></dir></dir></dir><dir name="entity"><dir name="edit"><file name="01_content.phtml" hash="ce1e8b965823d7880a5acea0de5ba26a"/><dir name="form"><file name="01_top.phtml" hash="99f82b638e08569b4be985af5a77aa26"/><file name="02_product_hidden.phtml" hash="7ef02b97f351681086ccc0f69615cbef"/><file name="03_sibling_hidden.phtml" hash="b0ab3d283c7dd99670034f439f1a7e83"/><file name="04_content.phtml" hash="887287c2135f192c2e050e7d9c2df401"/><file name="05_status.phtml" hash="3f4356540bc8cef1186b62c04e41d305"/><file name="06_content2.phtml" hash="d3d867b32ed5001de64b9d349d4a304f"/><file name="07_product_relation.phtml" hash="95ca5bc339ba49da37e0f9b5714521ea"/><file name="08_sibling_relations.phtml" hash="781a697648d00ec4c824380fae4b67ac"/><file name="09_footer.phtml" hash="5fd8d0c41500e156711c723af13f627f"/></dir><dir name="tab"><dir name="sibling"><file name="01_content.phtml" hash="59bbfec6eb6cee9778872eac55ac74bc"/></dir></dir></dir><dir name="tree"><file name="01_content.phtml" hash="0326fef77a80ddb5d154939783b52b1a"/></dir><dir name="widget"><dir name="tree"><file name="01_content.phtml" hash="e0e24d2640bdc3e4c7234564b263465f"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="namespace_module"><file name="01_top.xml" hash="bf6f2b1a2a7bfaec115c381abfa40e02"/><file name="02_default_top.xml" hash="10c0056a19cc82fbf809aa13b879b4ff"/><file name="03_default.xml" hash="e58d9aa36808b39bdd648d51fca7b992"/><file name="04_default_footer.xml" hash="22f72da3c656b5721d355607c891cc9c"/><file name="05_list.xml" hash="d612266dae53939552fb5b0a6fcb6feb"/><file name="06_view.xml" hash="7f3837e6fc2f6325304d5028fcfda532"/><file name="07_entity_rss.xml" hash="f06074f610065fbc6cb9a228402da7a7"/><file name="08_rss_top.xml" hash="54753c3cd7d42667c88c88f0084484f2"/><file name="09_rss.xml" hash="b513533d7cc561ec197ce1662bf54883"/><file name="10_rss_footer.xml" hash="3adf9a1e5301aa4221cede3ff5208785"/><file name="11_relation_product.xml" hash="309965e4062dc6f6f82dd495035e08ec"/><file name="12_footer.xml" hash="fd25391f06094530aadcbee222b433fc"/></dir></dir><dir name="template"><dir name="namespace_module"><dir name="catalog"><dir name="product"><dir name="list"><dir name="entity"><file name="01_top.phtml" hash="bb86f12fc472152437ef1be97280d258"/><file name="02_link_top.phtml" hash="62a65063f9611f31b02a5b3f3b34f524"/><file name="03_name.phtml" hash="fed55ae628836787e7a2ba05b1e695e6"/><file name="04_link_footer.phtml" hash="f01ee0fb040754cbdd4c7ca86dbec387"/><file name="05_footer.phtml" hash="d0bff7b594da78b60141591d6870556b"/></dir></dir></dir></dir><dir name="entity"><dir name="catalog"><dir name="product"><dir name="list"><file name="01_content.phtml" hash="96ec480a53c89ff5b87cfd59dc163f9e"/></dir></dir></dir><dir name="children"><file name="01_content.phtml" hash="129d29d6a49f3e6bbbd0697f55c97740"/></dir><dir name="list"><file name="01_top.phtml" hash="10c541cba8766100d47e8baadb8ce6a5"/><file name="02_rss_link.phtml" hash="cacf7866f6dd54ab37a217d7cb7466c7"/><file name="03_footer.phtml" hash="24d3a1e0224a9e59f5daa0d2660e76b4"/><file name="04_footer_is_tree.phtml" hash="098332bf5a88d8529ea3ef57ed9c75f4"/></dir><dir name="sibling"><dir name="child"><dir name="list"><file name="01_content.phtml" hash="5a1f524b49cf120201a90ee695f90544"/></dir></dir><dir name="list"><file name="01_content.phtml" hash="5a1f524b49cf120201a90ee695f90544"/></dir></dir><dir name="view"><file name="01_content.phtml" hash="205b0b21c650f28ff0e364d6ec8ce552"/></dir><dir name="widget"><dir name="link"><file name="01_content.phtml" hash="11d9e23bd1c2f8cb8a0f857c8bb393d8"/></dir><dir name="view"><file name="01_content.phtml" hash="f89f40babc5af3cd30597cd097ad9ab9"/></dir></dir></dir><dir name="rss"><file name="01_content.phtml" hash="172a345ace9b7ec84ad2e18f51d48257"/></dir></dir></dir></dir></dir></dir></dir><dir name="etc"><dir name="modules"><dir name="Namespace_Module"><file name="01_content.xml" hash="4495317a1b8392281b68f07a546c56c2"/></dir></dir></dir><dir name="locale"><dir name="en_US"><dir name="Namespace_Module"><file name="01_global.csv" hash="133cec10c0a2d55366574bbaa3c98a6f"/><file name="02_entity.csv" hash="97e1a2056ec2f49acc1c5c9598ef10d7"/><file name="03_attribute.csv" hash="0bc9532d35587f2225e398156cc3ef7f"/><file name="04_global_status.csv" hash="507d9e24387e6935b1ee629e8432f842"/><file name="05_global_rss.csv" hash="df495f10c1e7d7d3fb770d8b406b9f9b"/><file name="06_global_seo.csv" hash="5f973fd7dfbb61ce8c21d6f7e8622379"/><file name="07_attribute_yesno.csv" hash="20eaf2d5eaa8224e5fa1c7a63634b1c0"/><file name="08_global_file.csv" hash="8bebcdd48d5ae7b533cc53e789f03ef2"/><file name="09_product_relation.csv" hash="b96f377dfa788f2772f2f8b7f156aebd"/><file name="10_relations.csv" hash="d0f7a10c89d21ade4ba17cd73dbb42fb"/><file name="11_global_tree.csv" hash="279098d455e2c1adcde8668e042541d7"/><file name="12_tree_entity.csv" hash="d41675dbb1bf588d1d59af8f7b255c2d"/><file name="13_url_rewrite.csv" hash="56d63caf8b00b1bc92bece5516b6b27f"/></dir></dir></dir></dir><dir name="skin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="namespace_module"><dir name="tree"><file name="01_content.css" hash="7929b899ed457d539637d5083286bed4"/></dir></dir></dir><dir name="images"><dir name="namespace_module"><dir name="collapsedgif"><file name="01_content.gif" hash="ef74c08289e94b7aae81766fb00d4195"/></dir><dir name="collapsedpng"><file name="01_content.png" hash="0613450d25c762b6a40c51768b02462d"/></dir><dir name="expandedgif"><file name="01_content.gif" hash="3f5512a54f359343273caf7b3787ee8a"/></dir><dir name="expandedpng"><file name="01_content.png" hash="f7f28ae897708c78b28ead22c3692bb8"/></dir><dir name="line1gif"><file name="01_content.gif" hash="65b0c812c8d57ea72b84fc69a077a40a"/></dir><dir name="line1png"><file name="01_content.png" hash="4e01064a2c78b8885f65ff7a40f78c02"/></dir><dir name="line2gif"><file name="01_content.gif" hash="95fc5c58069ece5eb44e198ee53b3fe1"/></dir><dir name="line2png"><file name="01_content.png" hash="6adbb4ca64d943f5ee5528d713757fde"/></dir></dir><dir name="placeholder"><file name="entity.jpg" hash="6361a80d5ca988fcec45ad3767322e5e"/></dir></dir><dir name="js"><dir name="namespace_module"><dir name="tree"><file name="01_content.js" hash="1b8a1e7b1cb23e7a87e05b33a34523a0"/></dir></dir></dir></dir></dir></dir></dir></dir><file name="modulecreator.xml" hash="4f9e48642035eb4b72f529869dc563cc"/><file name="system.xml" hash="5375cca1089787206cfabb41d7aa0614"/></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="ultimate_modulecreator.xml" hash="f21bb3c8940eb81307817c0491caf300"/></dir><dir name="template"><dir name="ultimate_modulecreator"><dir name="edit"><dir name="tab"><dir name="entities"><dir name="entity"><file name="attribute.phtml" hash="586ebc5ca473dfcd1a0a47917c4353e4"/></dir><file name="entity.phtml" hash="f356184e2d8855a13456f52ac7e51d8e"/></dir><file name="entities.phtml" hash="df9179ffd5e72a04cf4740488521f0ce"/><file name="help.phtml" hash="dae530bc9d4ab9445d95d087bfc80fe6"/><file name="relation.phtml" hash="17a41ecbecdf7af519d11c3d026a800b"/></dir></dir><file name="edit.phtml" hash="8d10e82ae89d9e4ede28e6c59c9e724c"/><file name="tooltip.phtml" hash="d3598ad3f978d708b1f7f36feee39560"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Ultimate_ModuleCreator.xml" hash="324d2b364541a7355c9ff4248c0518f2"/></dir></target><target name="magelocale"><dir name="en_US"><file name="Ultimate_ModuleCreator.csv" hash="e8d1c6166a369904c245004c99893f40"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><file name="ultimate_modulecreator.css" hash="781a789d72dc08f660479543ff09b143"/><dir name="images"><dir name="ultimate_modulecreator"><file name="logo.png" hash="9c9ca3b07295cab1cb1503865905ee50"/></dir></dir></dir></dir></dir></target><target name="mage"><dir name="."><file name="LICENSE_UMC.txt" hash="1372b858e10f4c6feb2967766a0b7a62"/><file name="readme_UMC.txt" hash="7b8cd5baf640a5078be5c7136b56b5d9"/></dir></target><target name="mageweb"><dir name="."><file name="modman" hash="191dd9a4e001d6f8de5933202daac7d1"/></dir></target></contents>
|
25 |
<compatible/>
|
26 |
<dependencies><required><php><min>5.0.0</min><max>7.0.0</max></php></required></dependencies>
|
27 |
</package>
|