Version Notes
Features:
- DDL install scripts for generated entity
- enable entities by store view (similar to CMS pages)
- meta title for admin pages
Bug fixes:
- errors in some function documentations
Refactoring:
- moved meta information to separate tab.
- completed the help tab
Download this release
Release Info
Developer | Marius |
Extension | Ultimate_ModuleCreator |
Version | 1.6.0 |
Comparing to | |
See all releases |
Code changes from version 1.5.0 to 1.6.0
- app/code/community/Ultimate/ModuleCreator/Model/Attribute.php +36 -0
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Abstract.php +30 -2
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Country.php +5 -0
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Decimal.php +10 -0
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Int.php +10 -0
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Textarea.php +5 -0
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Timestamp.php +5 -0
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Website.php +10 -0
- app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Yesno.php +10 -0
- app/code/community/Ultimate/ModuleCreator/Model/Entity.php +45 -71
- app/code/community/Ultimate/ModuleCreator/Model/Module.php +18 -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/Edit/Form/IsTree/01_top.php +1 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Form/12_seo.php +0 -12
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Form/12_stores.php +7 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Meta/01_content.php +37 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Stores/01_content.php +34 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/02_seo.php +5 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/03_stores.php +7 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/{02_relations_tabs.php → 04_relations_tabs.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/{03_product_relation.php → 05_product_relation.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/{04_footer.php → 06_footer.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/01_top.php +1 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/02_seo.php +5 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/03_stores.php +7 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/{02_relations_tabs.php → 04_relations_tabs.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/{03_product_relation.php → 05_product_relation.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/{04_footer.php → 06_footer.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/07_stores.php +11 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{07_created_at.php → 08_created_at.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{08_updated_at.php → 09_updated_at.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{09_grid_actions.php → 10_grid_actions.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{10_grid_export.php → 11_grid_export.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{11_columns_footer.php → 12_columns_footer.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{12_mass_action_top.php → 13_mass_action_top.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{13_mass_action_status.php → 14_mass_action_status.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{14_mass_action_flags.php → 15_mass_action_flags.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/16_footer.php +0 -22
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{15_mass_action_parents.php → 16_mass_action_parents.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/17_footer.php +47 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Widget/Chooser/03_content.php +10 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Widget/Chooser/05_footer.php +10 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Widget/Chooser/IsTree/01_content.php +1 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Catalog/Product/List/Entity/01_top.php +2 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/01_top.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/IsTree/01_top.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/IsTree/03_center.php +5 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/IsTree/06_active_children.php +5 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/IsTree/07_active_children_no_status.php +5 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/Rss/01_top.php +2 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/Widget/View/01_top.php +3 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Controller/Router/03_footer.php +1 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/03_constructor.php +53 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/04_not_tree.php +35 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{04_tree.php → 05_tree.php} +25 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{05_tree_before_save_no_url_rewrite.php → 06_tree_before_save_no_url_rewrite.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{06_tree_before_save_url_rewrite.php → 07_tree_before_save_url_rewrite.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{07_children_no_status.php → 08_children_no_status.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{08_children_status.php → 09_children_status.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{09_content.php → 10_content.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{11_url_rewrite_not_status.php → 11_url_rewrite_status.php} +26 -9
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{10_url_rewrite_status.php → 12_url_rewrite_not_status.php} +22 -13
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{12_url_rewrite_before_save_not_tree.php → 13_url_rewrite_before_save_not_tree.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{13_footer.php → 14_footer.php} +0 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/Collection/01_top.php +57 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/Tree/03_content.php +1 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/Entity/WidgetController/02_tree.php +1 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/01_top.php +12 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/09_exception.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/IsTree/01_top.php +2 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/EntityController/05_view.php +3 -1
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/etc/config/02_tables.xml +3 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/etc/wsi/06_porttype_entity.xml +2 -2
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/01_top.php +10 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/02_entity.php +31 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/03_product_relation.php +27 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/04_sibling_relation.php +26 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/05_footer.php +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1/02_entity.php +10 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/locale/en_US/Namespace_Module/01_global.csv +1 -0
- app/code/community/Ultimate/ModuleCreator/etc/m/app/locale/en_US/Namespace_Module/06_global_seo.csv +2 -0
- app/code/community/Ultimate/ModuleCreator/etc/modulecreator.xml +122 -28
- app/code/community/Ultimate/ModuleCreator/etc/system.xml +9 -0
- app/design/adminhtml/default/default/template/ultimate_modulecreator/edit/tab/help.phtml +12 -0
- app/locale/en_US/Ultimate_ModuleCreator.csv +1 -0
- package.xml +13 -11
app/code/community/Ultimate/ModuleCreator/Model/Attribute.php
CHANGED
@@ -161,6 +161,42 @@ class Ultimate_ModuleCreator_Model_Attribute extends Ultimate_ModuleCreator_Mode
|
|
161 |
public function getSqlColumn(){
|
162 |
return $this->getTypeInstance()->getSqlColumn();
|
163 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
/**
|
165 |
* get the frontend html
|
166 |
* @access public
|
161 |
public function getSqlColumn(){
|
162 |
return $this->getTypeInstance()->getSqlColumn();
|
163 |
}
|
164 |
+
/**
|
165 |
+
* get the sql column
|
166 |
+
* @access public
|
167 |
+
* @return string
|
168 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
169 |
+
*/
|
170 |
+
public function getDdlSqlColumn(){
|
171 |
+
$ddl = '';
|
172 |
+
$ddl .= "->addColumn('{$this->getCode()}', Varien_Db_Ddl_Table::".$this->getTypeDdl().", ".$this->getSizeDdl().", array(\n";
|
173 |
+
if ($this->getRequired()){
|
174 |
+
$ddl .= "\t\t"."'nullable' => false,\n";
|
175 |
+
}
|
176 |
+
if ($this->getType() == 'int'){
|
177 |
+
$ddl .= "\t\t"."'unsigned' => true,\n";
|
178 |
+
}
|
179 |
+
$ddl .= "\t\t), '".$this->getLabel()."')\n";
|
180 |
+
return $ddl;
|
181 |
+
}
|
182 |
+
/**
|
183 |
+
* get column ddl type
|
184 |
+
* @access public
|
185 |
+
* @return string
|
186 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
187 |
+
*/
|
188 |
+
public function getTypeDdl(){
|
189 |
+
return $this->getTypeInstance()->getTypeDdl();
|
190 |
+
}
|
191 |
+
/**
|
192 |
+
* get column ddl size
|
193 |
+
* @access public
|
194 |
+
* @return string
|
195 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
196 |
+
*/
|
197 |
+
public function getSizeDdl(){
|
198 |
+
return $this->getTypeInstance()->getSizeDdl();
|
199 |
+
}
|
200 |
/**
|
201 |
* get the frontend html
|
202 |
* @access public
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Abstract.php
CHANGED
@@ -26,12 +26,22 @@ class Ultimate_ModuleCreator_Model_Attribute_Type_Abstract extends Varien_Object
|
|
26 |
* separator for options
|
27 |
* @var string
|
28 |
*/
|
29 |
-
const OPTION_SEPARATOR
|
30 |
/**
|
31 |
* attribute memebr
|
32 |
* @var mixed(null|Ultimate_ModuleCreator_Model_Attribute)
|
33 |
*/
|
34 |
-
protected $_attribute
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
/**
|
36 |
* set attribute
|
37 |
* @access public
|
@@ -163,4 +173,22 @@ class Ultimate_ModuleCreator_Model_Attribute_Type_Abstract extends Varien_Object
|
|
163 |
public function getRssText(){
|
164 |
return ' $'.'description .= $item->get'.$this->getAttribute()->getMagicMethodCode().'();';
|
165 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
166 |
}
|
26 |
* separator for options
|
27 |
* @var string
|
28 |
*/
|
29 |
+
const OPTION_SEPARATOR = "\t\t\t";
|
30 |
/**
|
31 |
* attribute memebr
|
32 |
* @var mixed(null|Ultimate_ModuleCreator_Model_Attribute)
|
33 |
*/
|
34 |
+
protected $_attribute = null;
|
35 |
+
/**
|
36 |
+
* sql colum ddl type
|
37 |
+
* @var string
|
38 |
+
*/
|
39 |
+
protected $_typeDdl = 'TYPE_TEXT';
|
40 |
+
/**
|
41 |
+
* sql colum ddl size
|
42 |
+
* @var string
|
43 |
+
*/
|
44 |
+
protected $_sizeDdl = '255';
|
45 |
/**
|
46 |
* set attribute
|
47 |
* @access public
|
173 |
public function getRssText(){
|
174 |
return ' $'.'description .= $item->get'.$this->getAttribute()->getMagicMethodCode().'();';
|
175 |
}
|
176 |
+
/**
|
177 |
+
* get column ddl type
|
178 |
+
* @access public
|
179 |
+
* @return string
|
180 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
181 |
+
*/
|
182 |
+
public function getTypeDdl(){
|
183 |
+
return $this->_typeDdl;
|
184 |
+
}
|
185 |
+
/**
|
186 |
+
* get column ddl size
|
187 |
+
* @access public
|
188 |
+
* @return string
|
189 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
190 |
+
*/
|
191 |
+
public function getSizeDdl(){
|
192 |
+
return $this->_sizeDdl;
|
193 |
+
}
|
194 |
}
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Country.php
CHANGED
@@ -22,6 +22,11 @@
|
|
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
|
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 |
+
* sql colum ddl size
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
protected $_sizeDdl = '2';
|
30 |
/**
|
31 |
* get the type for the form
|
32 |
* @access public
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Decimal.php
CHANGED
@@ -22,6 +22,16 @@
|
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Decimal extends Ultimate_ModuleCreator_Model_Attribute_Type_Int{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
/**
|
26 |
* get the sql column format
|
27 |
* @access public
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Decimal extends Ultimate_ModuleCreator_Model_Attribute_Type_Int{
|
25 |
+
/**
|
26 |
+
* sql colum ddl type
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
protected $_typeDdl = 'TYPE_DECIMAL';
|
30 |
+
/**
|
31 |
+
* sql colum ddl size
|
32 |
+
* @var string
|
33 |
+
*/
|
34 |
+
protected $_sizeDdl = "'12,4'";
|
35 |
/**
|
36 |
* get the sql column format
|
37 |
* @access public
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Int.php
CHANGED
@@ -22,6 +22,16 @@
|
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Int extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
/**
|
26 |
* get the sql column
|
27 |
* @access public
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Int extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
25 |
+
/**
|
26 |
+
* sql colum ddl type
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
protected $_typeDdl = 'TYPE_INTEGER';
|
30 |
+
/**
|
31 |
+
* sql colum ddl size
|
32 |
+
* @var string
|
33 |
+
*/
|
34 |
+
protected $_sizeDdl = 'null';
|
35 |
/**
|
36 |
* get the sql column
|
37 |
* @access public
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Textarea.php
CHANGED
@@ -22,6 +22,11 @@
|
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Textarea extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
|
|
|
|
|
|
|
|
|
|
25 |
/**
|
26 |
* the textarea attributes are not allowed in the admin grid
|
27 |
* @access public
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Textarea extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
25 |
+
/**
|
26 |
+
* sql colum ddl size
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
protected $_sizeDdl = "'64k'";
|
30 |
/**
|
31 |
* the textarea attributes are not allowed in the admin grid
|
32 |
* @access public
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Timestamp.php
CHANGED
@@ -22,6 +22,11 @@
|
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Timestamp extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
|
|
|
|
|
|
|
|
|
|
25 |
/**
|
26 |
* get the type for the form
|
27 |
* @access public
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Timestamp extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
25 |
+
/**
|
26 |
+
* sql colum ddl type
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
protected $_typeDdl = 'TYPE_DATETIME';
|
30 |
/**
|
31 |
* get the type for the form
|
32 |
* @access public
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Website.php
CHANGED
@@ -22,6 +22,16 @@
|
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Website extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
/**
|
26 |
* get the type for the form
|
27 |
* @access public
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Website extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
25 |
+
/**
|
26 |
+
* sql colum ddl type
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
protected $_typeDdl = 'TYPE_INTEGER';
|
30 |
+
/**
|
31 |
+
* sql colum ddl size
|
32 |
+
* @var string
|
33 |
+
*/
|
34 |
+
protected $_sizeDdl = 'null';
|
35 |
/**
|
36 |
* get the type for the form
|
37 |
* @access public
|
app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Yesno.php
CHANGED
@@ -22,6 +22,16 @@
|
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Yesno extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
/**
|
26 |
* get the type for the form
|
27 |
* @access public
|
22 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
23 |
*/
|
24 |
class Ultimate_ModuleCreator_Model_Attribute_Type_Yesno extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract{
|
25 |
+
/**
|
26 |
+
* sql colum ddl type
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
protected $_typeDdl = 'TYPE_INTEGER';
|
30 |
+
/**
|
31 |
+
* sql colum ddl size
|
32 |
+
* @var string
|
33 |
+
*/
|
34 |
+
protected $_sizeDdl = 'null';
|
35 |
/**
|
36 |
* get the type for the form
|
37 |
* @access public
|
app/code/community/Ultimate/ModuleCreator/Model/Entity.php
CHANGED
@@ -211,6 +211,8 @@ class Ultimate_ModuleCreator_Model_Entity extends Ultimate_ModuleCreator_Model_A
|
|
211 |
$placeholders['{{nameAttributeLabel}}'] = $nameAttribute->getLabel();
|
212 |
$placeholders['{{firstImageField}}'] = $this->getFirstImageField();
|
213 |
$placeholders['{{attributeSql}}'] = $this->getAttributesSql();
|
|
|
|
|
214 |
$placeholders['{{menu_sort}}'] = $this->getPosition();
|
215 |
$placeholders['{{defaults}}'] = $this->getConfigDefaults();
|
216 |
$placeholders['{{systemAttributes}}'] = $this->getSystemAttributes();
|
@@ -219,6 +221,7 @@ class Ultimate_ModuleCreator_Model_Entity extends Ultimate_ModuleCreator_Model_A
|
|
219 |
$placeholders['{{EntityViewWidgetAttributes}}'] = $this->getViewWidgetAttributesHtml();
|
220 |
$placeholders['{{EntityViewRelationLayout}}'] = $this->getRelationLayoutXml();
|
221 |
$placeholders['{{fks}}'] = $this->getParentEntitiesFks("\t\t");
|
|
|
222 |
$placeholders['{{referenceHead}}'] = $this->getReferenceHeadLayout();
|
223 |
//$placeholders['{{entityApiRelations}}'] = $this->getApiRelations();
|
224 |
$placeholders['{{entityApiAdditional}}'] = $this->getApiAdditional();
|
@@ -372,77 +375,25 @@ class Ultimate_ModuleCreator_Model_Entity extends Ultimate_ModuleCreator_Model_A
|
|
372 |
foreach ($simulated as $attr){
|
373 |
$content .= $padding.$attr->getSqlColumn()."\n";
|
374 |
}
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
if ($this->getIsTree()){
|
390 |
-
$attr = Mage::getModel('modulecreator/attribute');
|
391 |
-
$attr->setCode('parent_id');
|
392 |
-
$attr->setLabel('Parent id');
|
393 |
-
$attr->setType('int');
|
394 |
-
$content .= $padding.$attr->getSqlColumn()."\n";
|
395 |
-
|
396 |
-
$attr = Mage::getModel('modulecreator/attribute');
|
397 |
-
$attr->setCode('path');
|
398 |
-
$attr->setLabel('Path');
|
399 |
-
$attr->setType('text');
|
400 |
-
$content .= $padding.$attr->getSqlColumn()."\n";
|
401 |
-
|
402 |
-
$attr = Mage::getModel('modulecreator/attribute');
|
403 |
-
$attr->setCode('position');
|
404 |
-
$attr->setLabel('Position');
|
405 |
-
$attr->setType('int');
|
406 |
-
$content .= $padding.$attr->getSqlColumn()."\n";
|
407 |
-
|
408 |
-
$attr = Mage::getModel('modulecreator/attribute');
|
409 |
-
$attr->setCode('level');
|
410 |
-
$attr->setLabel('Level');
|
411 |
-
$attr->setType('int');
|
412 |
-
$content .= $padding.$attr->getSqlColumn()."\n";
|
413 |
-
|
414 |
-
$attr = Mage::getModel('modulecreator/attribute');
|
415 |
-
$attr->setCode('children_count');
|
416 |
-
$attr->setLabel('Children count');
|
417 |
-
$attr->setType('int');
|
418 |
-
$content .= $padding.$attr->getSqlColumn()."\n";
|
419 |
}
|
420 |
-
|
421 |
-
|
422 |
-
$attr->
|
423 |
-
$attr->setLabel('In RSS');
|
424 |
-
$attr->setType('yesno');
|
425 |
-
$content .= $padding.$attr->getSqlColumn()."\n";
|
426 |
}
|
427 |
-
if ($this->getFrontendAddSeo()){
|
428 |
-
$attr = Mage::getModel('modulecreator/attribute');
|
429 |
-
$attr->setCode('meta_title');
|
430 |
-
$attr->setLabel('Meta title');
|
431 |
-
$attr->setType('text');
|
432 |
-
$content .= $padding.$attr->getSqlColumn()."\n";
|
433 |
-
|
434 |
-
$attr = Mage::getModel('modulecreator/attribute');
|
435 |
-
$attr->setCode('meta_keywords');
|
436 |
-
$attr->setLabel('Meta keywords');
|
437 |
-
$attr->setType('textarea');
|
438 |
-
$content .= $padding.$attr->getSqlColumn()."\n";
|
439 |
-
|
440 |
-
$attr = Mage::getModel('modulecreator/attribute');
|
441 |
-
$attr->setCode('meta_description');
|
442 |
-
$attr->setLabel('Meta description');
|
443 |
-
$attr->setType('textarea');
|
444 |
-
$content .= $padding.$attr->getSqlColumn()."\n";
|
445 |
-
}*/
|
446 |
return substr($content,0, strlen($content) - strlen("\n"));
|
447 |
}
|
448 |
/**
|
@@ -784,7 +735,7 @@ class Ultimate_ModuleCreator_Model_Entity extends Ultimate_ModuleCreator_Model_A
|
|
784 |
* @return string
|
785 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
786 |
*/
|
787 |
-
public function getParentEntitiesFkAttributes($padding){
|
788 |
$parents = $this->getRelatedEntities(Ultimate_ModuleCreator_Helper_Data::RELATION_TYPE_CHILD);
|
789 |
$content = '';
|
790 |
foreach ($parents as $parent){
|
@@ -792,7 +743,12 @@ class Ultimate_ModuleCreator_Model_Entity extends Ultimate_ModuleCreator_Model_A
|
|
792 |
$attr->setCode($parent->getNameSingular().'_id');
|
793 |
$attr->setLabel($parent->getLabelSingular());
|
794 |
$attr->setType('int');
|
795 |
-
|
|
|
|
|
|
|
|
|
|
|
796 |
}
|
797 |
return $content;
|
798 |
}
|
@@ -811,6 +767,24 @@ class Ultimate_ModuleCreator_Model_Entity extends Ultimate_ModuleCreator_Model_A
|
|
811 |
}
|
812 |
return $content;
|
813 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
814 |
/**
|
815 |
* check if entity does not behave as tree
|
816 |
* @access public
|
211 |
$placeholders['{{nameAttributeLabel}}'] = $nameAttribute->getLabel();
|
212 |
$placeholders['{{firstImageField}}'] = $this->getFirstImageField();
|
213 |
$placeholders['{{attributeSql}}'] = $this->getAttributesSql();
|
214 |
+
$placeholders['{{attributeDdlSql}}'] = $this->getAttributesDdlSql();
|
215 |
+
|
216 |
$placeholders['{{menu_sort}}'] = $this->getPosition();
|
217 |
$placeholders['{{defaults}}'] = $this->getConfigDefaults();
|
218 |
$placeholders['{{systemAttributes}}'] = $this->getSystemAttributes();
|
221 |
$placeholders['{{EntityViewWidgetAttributes}}'] = $this->getViewWidgetAttributesHtml();
|
222 |
$placeholders['{{EntityViewRelationLayout}}'] = $this->getRelationLayoutXml();
|
223 |
$placeholders['{{fks}}'] = $this->getParentEntitiesFks("\t\t");
|
224 |
+
$placeholders['{{fksDdl}}'] = $this->getParentEntitiesFksDdl("\t");
|
225 |
$placeholders['{{referenceHead}}'] = $this->getReferenceHeadLayout();
|
226 |
//$placeholders['{{entityApiRelations}}'] = $this->getApiRelations();
|
227 |
$placeholders['{{entityApiAdditional}}'] = $this->getApiAdditional();
|
375 |
foreach ($simulated as $attr){
|
376 |
$content .= $padding.$attr->getSqlColumn()."\n";
|
377 |
}
|
378 |
+
return substr($content,0, strlen($content) - strlen("\n"));
|
379 |
+
}
|
380 |
+
/**
|
381 |
+
* get the ddl sql for attributes
|
382 |
+
* @access public
|
383 |
+
* @return string
|
384 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
385 |
+
*/
|
386 |
+
public function getAttributesDdlSql(){
|
387 |
+
$padding = "\t";
|
388 |
+
$content = '';
|
389 |
+
$content.= $this->getParentEntitiesFkAttributes($padding, true);
|
390 |
+
foreach ($this->getAttributes() as $attribute){
|
391 |
+
$content .= $padding.$attribute->getDdlSqlColumn()."\n";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
392 |
}
|
393 |
+
$simulated = $this->_getSimulatedAttributes(null, false);
|
394 |
+
foreach ($simulated as $attr){
|
395 |
+
$content .= $padding.$attr->getDdlSqlColumn()."\n";
|
|
|
|
|
|
|
396 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
397 |
return substr($content,0, strlen($content) - strlen("\n"));
|
398 |
}
|
399 |
/**
|
735 |
* @return string
|
736 |
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
737 |
*/
|
738 |
+
public function getParentEntitiesFkAttributes($padding, $ddl = false){
|
739 |
$parents = $this->getRelatedEntities(Ultimate_ModuleCreator_Helper_Data::RELATION_TYPE_CHILD);
|
740 |
$content = '';
|
741 |
foreach ($parents as $parent){
|
743 |
$attr->setCode($parent->getNameSingular().'_id');
|
744 |
$attr->setLabel($parent->getLabelSingular());
|
745 |
$attr->setType('int');
|
746 |
+
if ($ddl){
|
747 |
+
$content .= $padding.$attr->getDdlSqlColumn()."\n";
|
748 |
+
}
|
749 |
+
else{
|
750 |
+
$content .= $padding.$attr->getSqlColumn()."\n";
|
751 |
+
}
|
752 |
}
|
753 |
return $content;
|
754 |
}
|
767 |
}
|
768 |
return $content;
|
769 |
}
|
770 |
+
/**
|
771 |
+
* get foreign keys for sql (Ddl)
|
772 |
+
* @access public
|
773 |
+
* @param string $padding
|
774 |
+
* @return string
|
775 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
776 |
+
*/
|
777 |
+
public function getParentEntitiesFksDdl($padding){
|
778 |
+
$parents = $this->getRelatedEntities(Ultimate_ModuleCreator_Helper_Data::RELATION_TYPE_CHILD);
|
779 |
+
$content = '';
|
780 |
+
|
781 |
+
$module = strtolower($this->getModule()->getModuleName());
|
782 |
+
foreach ($parents as $parent){
|
783 |
+
$parentName = strtolower($parent->getNameSingular());
|
784 |
+
$content .= "\n".$padding."->addIndex($"."this->getIdxName('".$module.'/'.$parentName."', array('".$parentName."_id')), array('".$parentName."_id'))";
|
785 |
+
}
|
786 |
+
return $content;
|
787 |
+
}
|
788 |
/**
|
789 |
* check if entity does not behave as tree
|
790 |
* @access public
|
app/code/community/Ultimate/ModuleCreator/Model/Module.php
CHANGED
@@ -978,4 +978,22 @@ class Ultimate_ModuleCreator_Model_Module extends Ultimate_ModuleCreator_Model_A
|
|
978 |
}
|
979 |
return $relations;
|
980 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
981 |
}
|
978 |
}
|
979 |
return $relations;
|
980 |
}
|
981 |
+
/**
|
982 |
+
* get use ddl
|
983 |
+
* @access public
|
984 |
+
* @return bool
|
985 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
986 |
+
*/
|
987 |
+
public function getUseDdl(){
|
988 |
+
return Mage::getStoreConfigFlag('modulecreator/settings/use_ddl');
|
989 |
+
}
|
990 |
+
/**
|
991 |
+
* get not use ddl
|
992 |
+
* @access public
|
993 |
+
* @return bool
|
994 |
+
* @author Marius Strajeru <marius.strajeru@gmail.com>
|
995 |
+
*/
|
996 |
+
public function getNotUseDdl(){
|
997 |
+
return !$this->getUseDdl();
|
998 |
+
}
|
999 |
}
|
app/code/community/Ultimate/ModuleCreator/etc/config.xml
CHANGED
@@ -24,7 +24,7 @@
|
|
24 |
<config>
|
25 |
<modules>
|
26 |
<Ultimate_ModuleCreator>
|
27 |
-
<version>1.
|
28 |
</Ultimate_ModuleCreator>
|
29 |
</modules>
|
30 |
<global>
|
@@ -94,7 +94,7 @@ http://opensource.org/licenses/mit-license.php
|
|
94 |
@copyright Copyright (c) {{Y}}
|
95 |
@license http://opensource.org/licenses/mit-license.php MIT License
|
96 |
]]></license>
|
97 |
-
|
98 |
</settings>
|
99 |
<entity_defaults>
|
100 |
<use_frontend>1</use_frontend>
|
24 |
<config>
|
25 |
<modules>
|
26 |
<Ultimate_ModuleCreator>
|
27 |
+
<version>1.6.0</version>
|
28 |
</Ultimate_ModuleCreator>
|
29 |
</modules>
|
30 |
<global>
|
94 |
@copyright Copyright (c) {{Y}}
|
95 |
@license http://opensource.org/licenses/mit-license.php MIT License
|
96 |
]]></license>
|
97 |
+
<use_ddl>1</use_ddl>
|
98 |
</settings>
|
99 |
<entity_defaults>
|
100 |
<use_frontend>1</use_frontend>
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Form/IsTree/01_top.php
CHANGED
@@ -29,7 +29,7 @@ class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Form extends {{Na
|
|
29 |
* prepare the layout
|
30 |
* @access protected
|
31 |
* @return {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Form
|
32 |
-
* {{
|
33 |
*/
|
34 |
protected function _prepareLayout(){
|
35 |
${{entity}} = $this->get{{Entity}}();
|
29 |
* prepare the layout
|
30 |
* @access protected
|
31 |
* @return {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Form
|
32 |
+
* {{qwertyuiop}}
|
33 |
*/
|
34 |
protected function _prepareLayout(){
|
35 |
${{entity}} = $this->get{{Entity}}();
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Form/12_seo.php
DELETED
@@ -1,12 +0,0 @@
|
|
1 |
-
$fieldset->addField('meta_title', 'text', array(
|
2 |
-
'label' => Mage::helper('{{module}}')->__('Meta-title'),
|
3 |
-
'name' => 'meta_title',
|
4 |
-
));
|
5 |
-
$fieldset->addField('meta_description', 'textarea', array(
|
6 |
-
'name' => 'meta_description',
|
7 |
-
'label' => Mage::helper('{{module}}')->__('Meta-description'),
|
8 |
-
));
|
9 |
-
$fieldset->addField('meta_keywords', 'textarea', array(
|
10 |
-
'name' => 'meta_keywords',
|
11 |
-
'label' => Mage::helper('{{module}}')->__('Meta-keywords'),
|
12 |
-
));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Form/12_stores.php
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
if (Mage::app()->isSingleStoreMode()){
|
2 |
+
$fieldset->addField('store_id', 'hidden', array(
|
3 |
+
'name' => 'stores[]',
|
4 |
+
'value' => Mage::app()->getStore(true)->getId()
|
5 |
+
));
|
6 |
+
Mage::registry('current_{{entity}}')->setStoreId(Mage::app()->getStore(true)->getId());
|
7 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Meta/01_content.php
ADDED
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
{{License}}
|
3 |
+
/**
|
4 |
+
* meta information tab
|
5 |
+
*
|
6 |
+
* @category {{Namespace}}
|
7 |
+
* @package {{Namespace}}_{{Module}}
|
8 |
+
* {{qwertyuiop}}
|
9 |
+
*/
|
10 |
+
class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Tab_Meta extends Mage_Adminhtml_Block_Widget_Form{
|
11 |
+
/**
|
12 |
+
* prepare the form
|
13 |
+
* @access protected
|
14 |
+
* @return {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Tab_Meta
|
15 |
+
* {{qwertyuiop}}
|
16 |
+
*/
|
17 |
+
protected function _prepareForm(){
|
18 |
+
$form = new Varien_Data_Form();
|
19 |
+
$form->setFieldNameSuffix('{{entity}}');
|
20 |
+
$this->setForm($form);
|
21 |
+
$fieldset = $form->addFieldset('{{entity}}_meta_form', array('legend'=>Mage::helper('{{module}}')->__('Meta information')));
|
22 |
+
$fieldset->addField('meta_title', 'text', array(
|
23 |
+
'label' => Mage::helper('{{module}}')->__('Meta-title'),
|
24 |
+
'name' => 'meta_title',
|
25 |
+
));
|
26 |
+
$fieldset->addField('meta_description', 'textarea', array(
|
27 |
+
'name' => 'meta_description',
|
28 |
+
'label' => Mage::helper('{{module}}')->__('Meta-description'),
|
29 |
+
));
|
30 |
+
$fieldset->addField('meta_keywords', 'textarea', array(
|
31 |
+
'name' => 'meta_keywords',
|
32 |
+
'label' => Mage::helper('{{module}}')->__('Meta-keywords'),
|
33 |
+
));
|
34 |
+
$form->addValues(Mage::registry('current_{{entity}}')->getData());
|
35 |
+
return parent::_prepareForm();
|
36 |
+
}
|
37 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Stores/01_content.php
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
{{License}}
|
3 |
+
/**
|
4 |
+
* store selection tab
|
5 |
+
*
|
6 |
+
* @category {{Namespace}}
|
7 |
+
* @package {{Namespace}}_{{Module}}
|
8 |
+
* {{qwertyuiop}}
|
9 |
+
*/
|
10 |
+
class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Tab_Stores extends Mage_Adminhtml_Block_Widget_Form{
|
11 |
+
/**
|
12 |
+
* prepare the form
|
13 |
+
* @access protected
|
14 |
+
* @return {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Tab_Stores
|
15 |
+
* {{qwertyuiop}}
|
16 |
+
*/
|
17 |
+
protected function _prepareForm(){
|
18 |
+
$form = new Varien_Data_Form();
|
19 |
+
$form->setFieldNameSuffix('{{entity}}');
|
20 |
+
$this->setForm($form);
|
21 |
+
$fieldset = $form->addFieldset('{{entity}}_stores_form', array('legend'=>Mage::helper('{{module}}')->__('Store views')));
|
22 |
+
$field = $fieldset->addField('store_id', 'multiselect', array(
|
23 |
+
'name' => 'stores[]',
|
24 |
+
'label' => Mage::helper('{{module}}')->__('Store Views'),
|
25 |
+
'title' => Mage::helper('{{module}}')->__('Store Views'),
|
26 |
+
'required' => true,
|
27 |
+
'values'=> Mage::getSingleton('adminhtml/system_store')->getStoreValuesForForm(false, true),
|
28 |
+
));
|
29 |
+
$renderer = $this->getLayout()->createBlock('adminhtml/store_switcher_form_renderer_fieldset_element');
|
30 |
+
$field->setRenderer($renderer);
|
31 |
+
$form->addValues(Mage::registry('current_{{entity}}')->getData());
|
32 |
+
return parent::_prepareForm();
|
33 |
+
}
|
34 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/02_seo.php
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
$this->addTab('form_meta_section', array(
|
2 |
+
'label' => Mage::helper('{{module}}')->__('Meta'),
|
3 |
+
'title' => Mage::helper('{{module}}')->__('Meta'),
|
4 |
+
'content' => $this->getLayout()->createBlock('{{module}}/adminhtml_{{entity}}_edit_tab_meta')->toHtml(),
|
5 |
+
));
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/03_stores.php
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
if (!Mage::app()->isSingleStoreMode()){
|
2 |
+
$this->addTab('form_store_section', array(
|
3 |
+
'label' => Mage::helper('{{module}}')->__('Store views'),
|
4 |
+
'title' => Mage::helper('{{module}}')->__('Store views'),
|
5 |
+
'content' => $this->getLayout()->createBlock('{{module}}/adminhtml_{{entity}}_edit_tab_stores')->toHtml(),
|
6 |
+
));
|
7 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/{02_relations_tabs.php → 04_relations_tabs.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/{03_product_relation.php → 05_product_relation.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/{04_footer.php → 06_footer.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/01_top.php
CHANGED
@@ -22,7 +22,7 @@ class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Tabs extends Mage
|
|
22 |
$this->setTemplate('widget/tabshoriz.phtml');
|
23 |
}
|
24 |
/**
|
25 |
-
* Retrieve {{
|
26 |
* @access public
|
27 |
* @return {{Namespace}}_{{Module}}_Model_{{Entity}}
|
28 |
* {{qwertyuiop}}
|
22 |
$this->setTemplate('widget/tabshoriz.phtml');
|
23 |
}
|
24 |
/**
|
25 |
+
* Retrieve {{entityLabel}} entity
|
26 |
* @access public
|
27 |
* @return {{Namespace}}_{{Module}}_Model_{{Entity}}
|
28 |
* {{qwertyuiop}}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/02_seo.php
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
$this->addTab('form_meta_section', array(
|
2 |
+
'label' => Mage::helper('{{module}}')->__('Meta'),
|
3 |
+
'title' => Mage::helper('{{module}}')->__('Meta'),
|
4 |
+
'content' => $this->getLayout()->createBlock('{{module}}/adminhtml_{{entity}}_edit_tab_meta')->toHtml(),
|
5 |
+
));
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/03_stores.php
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
if (!Mage::app()->isSingleStoreMode()){
|
2 |
+
$this->addTab('form_store_section', array(
|
3 |
+
'label' => Mage::helper('{{module}}')->__('Store views'),
|
4 |
+
'title' => Mage::helper('{{module}}')->__('Store views'),
|
5 |
+
'content' => $this->getLayout()->createBlock('{{module}}/adminhtml_{{entity}}_edit_tab_stores')->toHtml(),
|
6 |
+
));
|
7 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/{02_relations_tabs.php → 04_relations_tabs.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/{03_product_relation.php → 05_product_relation.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tabs/IsTree/{04_footer.php → 06_footer.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/07_stores.php
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
if (!Mage::app()->isSingleStoreMode()) {
|
2 |
+
$this->addColumn('store_id', array(
|
3 |
+
'header'=> Mage::helper('{{module}}')->__('Store Views'),
|
4 |
+
'index' => 'store_id',
|
5 |
+
'type' => 'store',
|
6 |
+
'store_all' => true,
|
7 |
+
'store_view'=> true,
|
8 |
+
'sortable' => false,
|
9 |
+
'filter_condition_callback'=> array($this, '_filterStoreCondition'),
|
10 |
+
));
|
11 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{07_created_at.php → 08_created_at.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{08_updated_at.php → 09_updated_at.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{09_grid_actions.php → 10_grid_actions.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{10_grid_export.php → 11_grid_export.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{11_columns_footer.php → 12_columns_footer.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{12_mass_action_top.php → 13_mass_action_top.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{13_mass_action_status.php → 14_mass_action_status.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{14_mass_action_flags.php → 15_mass_action_flags.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/16_footer.php
DELETED
@@ -1,22 +0,0 @@
|
|
1 |
-
return $this;
|
2 |
-
}
|
3 |
-
/**
|
4 |
-
* get the row url
|
5 |
-
* @access public
|
6 |
-
* @param {{Namespace}}_{{Module}}_Model_{{Entity}}
|
7 |
-
* @return string
|
8 |
-
* {{qwertyuiop}}
|
9 |
-
*/
|
10 |
-
public function getRowUrl($row){
|
11 |
-
return $this->getUrl('*/*/edit', array('id' => $row->getId()));
|
12 |
-
}
|
13 |
-
/**
|
14 |
-
* get the grid url
|
15 |
-
* @access public
|
16 |
-
* @return string
|
17 |
-
* {{qwertyuiop}}
|
18 |
-
*/
|
19 |
-
public function getGridUrl(){
|
20 |
-
return $this->getUrl('*/*/grid', array('_current'=>true));
|
21 |
-
}
|
22 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/{15_mass_action_parents.php → 16_mass_action_parents.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Grid/17_footer.php
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
return $this;
|
2 |
+
}
|
3 |
+
/**
|
4 |
+
* get the row url
|
5 |
+
* @access public
|
6 |
+
* @param {{Namespace}}_{{Module}}_Model_{{Entity}}
|
7 |
+
* @return string
|
8 |
+
* {{qwertyuiop}}
|
9 |
+
*/
|
10 |
+
public function getRowUrl($row){
|
11 |
+
return $this->getUrl('*/*/edit', array('id' => $row->getId()));
|
12 |
+
}
|
13 |
+
/**
|
14 |
+
* get the grid url
|
15 |
+
* @access public
|
16 |
+
* @return string
|
17 |
+
* {{qwertyuiop}}
|
18 |
+
*/
|
19 |
+
public function getGridUrl(){
|
20 |
+
return $this->getUrl('*/*/grid', array('_current'=>true));
|
21 |
+
}
|
22 |
+
/**
|
23 |
+
* after collection load
|
24 |
+
* @access protected
|
25 |
+
* @return {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Grid
|
26 |
+
* {{qwertyuiop}}
|
27 |
+
*/
|
28 |
+
protected function _afterLoadCollection(){
|
29 |
+
$this->getCollection()->walk('afterLoad');
|
30 |
+
parent::_afterLoadCollection();
|
31 |
+
}
|
32 |
+
/**
|
33 |
+
* filter store column
|
34 |
+
* @access protected
|
35 |
+
* @param {{Namespace}}_{{Module}}_Model_Resource_{{Entity}}_Collection $collection
|
36 |
+
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
|
37 |
+
* @return {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Grid
|
38 |
+
* {{qwertyuiop}}
|
39 |
+
*/
|
40 |
+
protected function _filterStoreCondition($collection, $column){
|
41 |
+
if (!$value = $column->getFilter()->getValue()) {
|
42 |
+
return;
|
43 |
+
}
|
44 |
+
$collection->addStoreFilter($value);
|
45 |
+
return $this;
|
46 |
+
}
|
47 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Widget/Chooser/03_content.php
CHANGED
@@ -76,3 +76,13 @@
|
|
76 |
'align' => 'left',
|
77 |
'index' => '{{nameAttribute}}',
|
78 |
));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
'align' => 'left',
|
77 |
'index' => '{{nameAttribute}}',
|
78 |
));
|
79 |
+
if (!Mage::app()->isSingleStoreMode()) {
|
80 |
+
$this->addColumn('store_id', array(
|
81 |
+
'header'=> Mage::helper('{{module}}')->__('Store Views'),
|
82 |
+
'index' => 'store_id',
|
83 |
+
'type' => 'store',
|
84 |
+
'store_all' => true,
|
85 |
+
'store_view'=> true,
|
86 |
+
'sortable' => false,
|
87 |
+
));
|
88 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Widget/Chooser/05_footer.php
CHANGED
@@ -9,4 +9,14 @@
|
|
9 |
public function getGridUrl(){
|
10 |
return $this->getUrl('adminhtml/{{module}}_{{entity}}_widget/chooser', array('_current' => true));
|
11 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
}
|
9 |
public function getGridUrl(){
|
10 |
return $this->getUrl('adminhtml/{{module}}_{{entity}}_widget/chooser', array('_current' => true));
|
11 |
}
|
12 |
+
/**
|
13 |
+
* after collection load
|
14 |
+
* @access protected
|
15 |
+
* @return {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Widget_Chooser
|
16 |
+
* {{qwertyuiop}}
|
17 |
+
*/
|
18 |
+
protected function _afterLoadCollection(){
|
19 |
+
$this->getCollection()->walk('afterLoad');
|
20 |
+
parent::_afterLoadCollection();
|
21 |
+
}
|
22 |
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Adminhtml/Entity/Widget/Chooser/IsTree/01_content.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
{{License}}
|
3 |
|
4 |
/**
|
5 |
-
* {{
|
6 |
*
|
7 |
* @category {{Namespace}}
|
8 |
* @package{{Namespace}}_{{Module}}
|
2 |
{{License}}
|
3 |
|
4 |
/**
|
5 |
+
* {{EntityLabel}} chooser for Wysiwyg CMS widget
|
6 |
*
|
7 |
* @category {{Namespace}}
|
8 |
* @package{{Namespace}}_{{Module}}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Catalog/Product/List/Entity/01_top.php
CHANGED
@@ -18,3 +18,5 @@ class {{Namespace}}_{{Module}}_Block_Catalog_Product_List_{{Entity}} extends Mag
|
|
18 |
if (!$this->hasData('{{entity}}_collection')){
|
19 |
$product = Mage::registry('product');
|
20 |
$collection = Mage::getResourceSingleton('{{module}}/{{entity}}_collection')
|
|
|
|
18 |
if (!$this->hasData('{{entity}}_collection')){
|
19 |
$product = Mage::registry('product');
|
20 |
$collection = Mage::getResourceSingleton('{{module}}/{{entity}}_collection')
|
21 |
+
->addStoreFilter(Mage::app()->getStore())
|
22 |
+
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/01_top.php
CHANGED
@@ -17,3 +17,4 @@ class {{Namespace}}_{{Module}}_Block_{{Entity}}_List extends Mage_Core_Block_Tem
|
|
17 |
public function __construct(){
|
18 |
parent::__construct();
|
19 |
${{entities}} = Mage::getResourceModel('{{module}}/{{entity}}_collection')
|
|
17 |
public function __construct(){
|
18 |
parent::__construct();
|
19 |
${{entities}} = Mage::getResourceModel('{{module}}/{{entity}}_collection')
|
20 |
+
->addStoreFilter(Mage::app()->getStore())
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/IsTree/01_top.php
CHANGED
@@ -17,3 +17,4 @@ class {{Namespace}}_{{Module}}_Block_{{Entity}}_List extends Mage_Core_Block_Tem
|
|
17 |
public function __construct(){
|
18 |
parent::__construct();
|
19 |
${{entities}} = Mage::getResourceModel('{{module}}/{{entity}}_collection')
|
|
17 |
public function __construct(){
|
18 |
parent::__construct();
|
19 |
${{entities}} = Mage::getResourceModel('{{module}}/{{entity}}_collection')
|
20 |
+
->addStoreFilter(Mage::app()->getStore())
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/IsTree/03_center.php
CHANGED
@@ -47,3 +47,8 @@
|
|
47 |
*/
|
48 |
public function draw{{Entity}}(${{entity}}, $level = 0){
|
49 |
$html = '';
|
|
|
|
|
|
|
|
|
|
47 |
*/
|
48 |
public function draw{{Entity}}(${{entity}}, $level = 0){
|
49 |
$html = '';
|
50 |
+
$storeIds = Mage::getResourceSingleton('news/section')->lookupStoreIds($section->getId());
|
51 |
+
$validStoreIds = array(0, Mage::app()->getStore()->getId());
|
52 |
+
if (!array_intersect($storeIds, $validStoreIds)){
|
53 |
+
continue;
|
54 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/IsTree/06_active_children.php
CHANGED
@@ -1,5 +1,10 @@
|
|
1 |
$activeChildren = array();
|
2 |
foreach ($children as $child) {
|
|
|
|
|
|
|
|
|
|
|
3 |
if ($child->getStatus()) {
|
4 |
$activeChildren[] = $child;
|
5 |
}
|
1 |
$activeChildren = array();
|
2 |
foreach ($children as $child) {
|
3 |
+
$childStoreIds = Mage::getResourceSingleton('{{module}}/{{entity}}')->lookupStoreIds($child->getId());
|
4 |
+
$validStoreIds = array(0, Mage::app()->getStore()->getId());
|
5 |
+
if (!array_intersect($childStoreIds, $validStoreIds)){
|
6 |
+
continue;
|
7 |
+
}
|
8 |
if ($child->getStatus()) {
|
9 |
$activeChildren[] = $child;
|
10 |
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/List/IsTree/07_active_children_no_status.php
CHANGED
@@ -1,4 +1,9 @@
|
|
1 |
$activeChildren = array();
|
2 |
foreach ($children as $child) {
|
|
|
|
|
|
|
|
|
|
|
3 |
$activeChildren[] = $child;
|
4 |
}
|
1 |
$activeChildren = array();
|
2 |
foreach ($children as $child) {
|
3 |
+
$childStoreIds = Mage::getResourceSingleton('{{module}}/{{entity}}')->lookupStoreIds($child->getId());
|
4 |
+
$validStoreIds = array(0, Mage::app()->getStore()->getId());
|
5 |
+
if (!array_intersect($childStoreIds, $validStoreIds)){
|
6 |
+
continue;
|
7 |
+
}
|
8 |
$activeChildren[] = $child;
|
9 |
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/Rss/01_top.php
CHANGED
@@ -45,3 +45,5 @@ class {{Namespace}}_{{Module}}_Block_{{Entity}}_Rss extends Mage_Rss_Block_Abstr
|
|
45 |
);
|
46 |
$rssObj->_addHeader($data);
|
47 |
$collection = Mage::getModel('{{module}}/{{entity}}')->getCollection()
|
|
|
|
45 |
);
|
46 |
$rssObj->_addHeader($data);
|
47 |
$collection = Mage::getModel('{{module}}/{{entity}}')->getCollection()
|
48 |
+
->addStoreFilter(Mage::app()->getStore())
|
49 |
+
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Block/Entity/Widget/View/01_top.php
CHANGED
@@ -19,4 +19,6 @@ class {{Namespace}}_{{Module}}_Block_{{Entity}}_Widget_View extends Mage_Core_Bl
|
|
19 |
parent::_beforeToHtml();
|
20 |
${{entity}}Id = $this->getData('{{entity}}_id');
|
21 |
if (${{entity}}Id) {
|
22 |
-
${{entity}} = Mage::getModel('{{module}}/{{entity}}')
|
|
|
|
19 |
parent::_beforeToHtml();
|
20 |
${{entity}}Id = $this->getData('{{entity}}_id');
|
21 |
if (${{entity}}Id) {
|
22 |
+
${{entity}} = Mage::getModel('{{module}}/{{entity}}')
|
23 |
+
->setStoreId(Mage::app()->getStore()->getId())
|
24 |
+
->load(${{entity}}Id);
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Controller/Router/03_footer.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
foreach ($check as $key=>$settings){
|
2 |
$model = Mage::getModel($settings->getModel());
|
3 |
-
$id = $model->checkUrlKey($urlKey);
|
4 |
if ($id){
|
5 |
$request->setModuleName('{{module}}')
|
6 |
->setControllerName($settings->getController())
|
1 |
foreach ($check as $key=>$settings){
|
2 |
$model = Mage::getModel($settings->getModel());
|
3 |
+
$id = $model->checkUrlKey($urlKey, Mage::app()->getStore()->getId());
|
4 |
if ($id){
|
5 |
$request->setModuleName('{{module}}')
|
6 |
->setControllerName($settings->getController())
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/03_constructor.php
CHANGED
@@ -7,3 +7,56 @@
|
|
7 |
public function _construct(){
|
8 |
$this->_init('{{module}}/{{entity}}', 'entity_id');
|
9 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
public function _construct(){
|
8 |
$this->_init('{{module}}/{{entity}}', 'entity_id');
|
9 |
}
|
10 |
+
|
11 |
+
/**
|
12 |
+
* Get store ids to which specified item is assigned
|
13 |
+
* @access public
|
14 |
+
* @param int ${{entity}}Id
|
15 |
+
* @return array
|
16 |
+
* {{qwertyuiop}}
|
17 |
+
*/
|
18 |
+
public function lookupStoreIds(${{entity}}Id){
|
19 |
+
$adapter = $this->_getReadAdapter();
|
20 |
+
$select = $adapter->select()
|
21 |
+
->from($this->getTable('{{module}}/{{entity}}_store'), 'store_id')
|
22 |
+
->where('{{entity}}_id = ?',(int)${{entity}}Id);
|
23 |
+
return $adapter->fetchCol($select);
|
24 |
+
}
|
25 |
+
/**
|
26 |
+
* Perform operations after object load
|
27 |
+
* @access public
|
28 |
+
* @param Mage_Core_Model_Abstract $object
|
29 |
+
* @return {{Namespace}}_{{Module}}_Model_Resource_{{Entity}}
|
30 |
+
* {{qwertyuiop}}
|
31 |
+
*/
|
32 |
+
protected function _afterLoad(Mage_Core_Model_Abstract $object){
|
33 |
+
if ($object->getId()) {
|
34 |
+
$stores = $this->lookupStoreIds($object->getId());
|
35 |
+
$object->setData('store_id', $stores);
|
36 |
+
}
|
37 |
+
return parent::_afterLoad($object);
|
38 |
+
}
|
39 |
+
|
40 |
+
/**
|
41 |
+
* Retrieve select object for load object data
|
42 |
+
*
|
43 |
+
* @param string $field
|
44 |
+
* @param mixed $value
|
45 |
+
* @param {{Namespace}}_{{Module}}_Model_{{Entity}} $object
|
46 |
+
* @return Zend_Db_Select
|
47 |
+
*/
|
48 |
+
protected function _getLoadSelect($field, $value, $object){
|
49 |
+
$select = parent::_getLoadSelect($field, $value, $object);
|
50 |
+
if ($object->getStoreId()) {
|
51 |
+
$storeIds = array(Mage_Core_Model_App::ADMIN_STORE_ID, (int)$object->getStoreId());
|
52 |
+
$select->join(
|
53 |
+
array('{{module}}_{{entity}}_store' => $this->getTable('{{module}}/{{entity}}_store')),
|
54 |
+
$this->getMainTable() . '.entity_id = {{module}}_{{entity}}_store.{{entity}}_id',
|
55 |
+
array()
|
56 |
+
)
|
57 |
+
->where('{{module}}_{{entity}}_store.store_id IN (?)', $storeIds)
|
58 |
+
->order('{{module}}_{{entity}}_store.store_id DESC')
|
59 |
+
->limit(1);
|
60 |
+
}
|
61 |
+
return $select;
|
62 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/04_not_tree.php
ADDED
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* Assign {{entityLabel}} to store views
|
3 |
+
* @access protected
|
4 |
+
* @param Mage_Core_Model_Abstract $object
|
5 |
+
* @return {{Namespace}}_{{Module}}_Model_Resource_{{Entity}}
|
6 |
+
* {{qwertyuiop}}
|
7 |
+
*/
|
8 |
+
protected function _afterSave(Mage_Core_Model_Abstract $object){
|
9 |
+
$oldStores = $this->lookupStoreIds($object->getId());
|
10 |
+
$newStores = (array)$object->getStores();
|
11 |
+
if (empty($newStores)) {
|
12 |
+
$newStores = (array)$object->getStoreId();
|
13 |
+
}
|
14 |
+
$table = $this->getTable('{{module}}/{{entity}}_store');
|
15 |
+
$insert = array_diff($newStores, $oldStores);
|
16 |
+
$delete = array_diff($oldStores, $newStores);
|
17 |
+
if ($delete) {
|
18 |
+
$where = array(
|
19 |
+
'{{entity}}_id = ?' => (int) $object->getId(),
|
20 |
+
'store_id IN (?)' => $delete
|
21 |
+
);
|
22 |
+
$this->_getWriteAdapter()->delete($table, $where);
|
23 |
+
}
|
24 |
+
if ($insert) {
|
25 |
+
$data = array();
|
26 |
+
foreach ($insert as $storeId) {
|
27 |
+
$data[] = array(
|
28 |
+
'{{entity}}_id' => (int) $object->getId(),
|
29 |
+
'store_id' => (int) $storeId
|
30 |
+
);
|
31 |
+
}
|
32 |
+
$this->_getWriteAdapter()->insertMultiple($table, $data);
|
33 |
+
}
|
34 |
+
return parent::_afterSave($object);
|
35 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{04_tree.php → 05_tree.php}
RENAMED
@@ -73,6 +73,31 @@
|
|
73 |
$object->setPath($object->getPath() . $object->getId());
|
74 |
$this->_savePath($object);
|
75 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
return parent::_afterSave($object);
|
77 |
}
|
78 |
|
73 |
$object->setPath($object->getPath() . $object->getId());
|
74 |
$this->_savePath($object);
|
75 |
}
|
76 |
+
$oldStores = $this->lookupStoreIds($object->getId());
|
77 |
+
$newStores = (array)$object->getStores();
|
78 |
+
if (empty($newStores)) {
|
79 |
+
$newStores = (array)$object->getStoreId();
|
80 |
+
}
|
81 |
+
$table = $this->getTable('{{module}}/{{entity}}_store');
|
82 |
+
$insert = array_diff($newStores, $oldStores);
|
83 |
+
$delete = array_diff($oldStores, $newStores);
|
84 |
+
if ($delete) {
|
85 |
+
$where = array(
|
86 |
+
'{{entity}}_id = ?' => (int) $object->getId(),
|
87 |
+
'store_id IN (?)' => $delete
|
88 |
+
);
|
89 |
+
$this->_getWriteAdapter()->delete($table, $where);
|
90 |
+
}
|
91 |
+
if ($insert) {
|
92 |
+
$data = array();
|
93 |
+
foreach ($insert as $storeId) {
|
94 |
+
$data[] = array(
|
95 |
+
'{{entity}}_id' => (int) $object->getId(),
|
96 |
+
'store_id' => (int) $storeId
|
97 |
+
);
|
98 |
+
}
|
99 |
+
$this->_getWriteAdapter()->insertMultiple($table, $data);
|
100 |
+
}
|
101 |
return parent::_afterSave($object);
|
102 |
}
|
103 |
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{05_tree_before_save_no_url_rewrite.php → 06_tree_before_save_no_url_rewrite.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{06_tree_before_save_url_rewrite.php → 07_tree_before_save_url_rewrite.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{07_children_no_status.php → 08_children_no_status.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{08_children_status.php → 09_children_status.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{09_content.php → 10_content.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{11_url_rewrite_not_status.php → 11_url_rewrite_status.php}
RENAMED
@@ -2,13 +2,18 @@
|
|
2 |
* check url key
|
3 |
* @access public
|
4 |
* @param string $urlKey
|
|
|
5 |
* @return mixed
|
6 |
* {{qwertyuiop}}
|
7 |
*/
|
8 |
-
public function checkUrlKey($urlKey){
|
9 |
-
$
|
|
|
|
|
|
|
|
|
10 |
$select->reset(Zend_Db_Select::COLUMNS)
|
11 |
-
->columns('
|
12 |
->limit(1);
|
13 |
|
14 |
return $this->_getReadAdapter()->fetchOne($select);
|
@@ -17,13 +22,19 @@
|
|
17 |
* init the check select
|
18 |
* @access protected
|
19 |
* @param string $urlKey
|
|
|
20 |
* @return Zend_Db_Select
|
21 |
* {{qwertyuiop}}
|
22 |
*/
|
23 |
-
protected function _initCheckUrlKeySelect($urlKey){
|
24 |
$select = $this->_getReadAdapter()->select()
|
25 |
-
->from(array('
|
26 |
-
->
|
|
|
|
|
|
|
|
|
|
|
27 |
return $select;
|
28 |
}
|
29 |
/**
|
@@ -34,9 +45,15 @@
|
|
34 |
* {{qwertyuiop}}
|
35 |
*/
|
36 |
public function getIsUniqueUrlKey(Mage_Core_Model_Abstract $object){
|
37 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
if ($object->getId()) {
|
39 |
-
$select->where('
|
40 |
}
|
41 |
if ($this->_getWriteAdapter()->fetchRow($select)) {
|
42 |
return false;
|
@@ -62,4 +79,4 @@
|
|
62 |
*/
|
63 |
protected function isValidUrlKey(Mage_Core_Model_Abstract $object){
|
64 |
return preg_match('/^[a-z0-9][a-z0-9_\/-]+(\.[a-z0-9_-]+)?$/', $object->getData('url_key'));
|
65 |
-
}
|
2 |
* check url key
|
3 |
* @access public
|
4 |
* @param string $urlKey
|
5 |
+
* @param bool $active
|
6 |
* @return mixed
|
7 |
* {{qwertyuiop}}
|
8 |
*/
|
9 |
+
public function checkUrlKey($urlKey, $storeId, $active = true){
|
10 |
+
$stores = array(Mage_Core_Model_App::ADMIN_STORE_ID, $storeId);
|
11 |
+
$select = $this->_initCheckUrlKeySelect($urlKey, $stores);
|
12 |
+
if (!is_null($active)) {
|
13 |
+
$select->where('e.status = ?', $active);
|
14 |
+
}
|
15 |
$select->reset(Zend_Db_Select::COLUMNS)
|
16 |
+
->columns('e.entity_id')
|
17 |
->limit(1);
|
18 |
|
19 |
return $this->_getReadAdapter()->fetchOne($select);
|
22 |
* init the check select
|
23 |
* @access protected
|
24 |
* @param string $urlKey
|
25 |
+
* @param array $store
|
26 |
* @return Zend_Db_Select
|
27 |
* {{qwertyuiop}}
|
28 |
*/
|
29 |
+
protected function _initCheckUrlKeySelect($urlKey, $store){
|
30 |
$select = $this->_getReadAdapter()->select()
|
31 |
+
->from(array('e' => $this->getMainTable()))
|
32 |
+
->join(
|
33 |
+
array('es' => $this->getTable('{{module}}/{{entity}}_store')),
|
34 |
+
'e.entity_id = es.{{entity}}_id',
|
35 |
+
array())
|
36 |
+
->where('e.url_key = ?', $urlKey)
|
37 |
+
->where('es.store_id IN (?)', $store);
|
38 |
return $select;
|
39 |
}
|
40 |
/**
|
45 |
* {{qwertyuiop}}
|
46 |
*/
|
47 |
public function getIsUniqueUrlKey(Mage_Core_Model_Abstract $object){
|
48 |
+
if (Mage::app()->isSingleStoreMode() || !$object->hasStores()) {
|
49 |
+
$stores = array(Mage_Core_Model_App::ADMIN_STORE_ID);
|
50 |
+
}
|
51 |
+
else {
|
52 |
+
$stores = (array)$object->getData('stores');
|
53 |
+
}
|
54 |
+
$select = $this->_initCheckUrlKeySelect($object->getData('url_key'), $stores);
|
55 |
if ($object->getId()) {
|
56 |
+
$select->where('e.entity_id <> ?', $object->getId());
|
57 |
}
|
58 |
if ($this->_getWriteAdapter()->fetchRow($select)) {
|
59 |
return false;
|
79 |
*/
|
80 |
protected function isValidUrlKey(Mage_Core_Model_Abstract $object){
|
81 |
return preg_match('/^[a-z0-9][a-z0-9_\/-]+(\.[a-z0-9_-]+)?$/', $object->getData('url_key'));
|
82 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{10_url_rewrite_status.php → 12_url_rewrite_not_status.php}
RENAMED
@@ -2,17 +2,14 @@
|
|
2 |
* check url key
|
3 |
* @access public
|
4 |
* @param string $urlKey
|
5 |
-
* @param bool $active
|
6 |
* @return mixed
|
7 |
* {{qwertyuiop}}
|
8 |
*/
|
9 |
-
public function checkUrlKey($urlKey, $
|
10 |
-
$
|
11 |
-
|
12 |
-
$select->where('main_table.status = ?', $active);
|
13 |
-
}
|
14 |
$select->reset(Zend_Db_Select::COLUMNS)
|
15 |
-
->columns('
|
16 |
->limit(1);
|
17 |
|
18 |
return $this->_getReadAdapter()->fetchOne($select);
|
@@ -21,13 +18,19 @@
|
|
21 |
* init the check select
|
22 |
* @access protected
|
23 |
* @param string $urlKey
|
|
|
24 |
* @return Zend_Db_Select
|
25 |
* {{qwertyuiop}}
|
26 |
*/
|
27 |
-
protected function _initCheckUrlKeySelect($urlKey){
|
28 |
$select = $this->_getReadAdapter()->select()
|
29 |
-
->from(array('
|
30 |
-
->
|
|
|
|
|
|
|
|
|
|
|
31 |
return $select;
|
32 |
}
|
33 |
/**
|
@@ -38,9 +41,15 @@
|
|
38 |
* {{qwertyuiop}}
|
39 |
*/
|
40 |
public function getIsUniqueUrlKey(Mage_Core_Model_Abstract $object){
|
41 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
if ($object->getId()) {
|
43 |
-
$select->where('
|
44 |
}
|
45 |
if ($this->_getWriteAdapter()->fetchRow($select)) {
|
46 |
return false;
|
@@ -66,4 +75,4 @@
|
|
66 |
*/
|
67 |
protected function isValidUrlKey(Mage_Core_Model_Abstract $object){
|
68 |
return preg_match('/^[a-z0-9][a-z0-9_\/-]+(\.[a-z0-9_-]+)?$/', $object->getData('url_key'));
|
69 |
-
}
|
2 |
* check url key
|
3 |
* @access public
|
4 |
* @param string $urlKey
|
|
|
5 |
* @return mixed
|
6 |
* {{qwertyuiop}}
|
7 |
*/
|
8 |
+
public function checkUrlKey($urlKey, $storeId){
|
9 |
+
$stores = array(Mage_Core_Model_App::ADMIN_STORE_ID, $storeId);
|
10 |
+
$select = $this->_initCheckUrlKeySelect($urlKey, $stores);
|
|
|
|
|
11 |
$select->reset(Zend_Db_Select::COLUMNS)
|
12 |
+
->columns('e.entity_id')
|
13 |
->limit(1);
|
14 |
|
15 |
return $this->_getReadAdapter()->fetchOne($select);
|
18 |
* init the check select
|
19 |
* @access protected
|
20 |
* @param string $urlKey
|
21 |
+
* @param array $store
|
22 |
* @return Zend_Db_Select
|
23 |
* {{qwertyuiop}}
|
24 |
*/
|
25 |
+
protected function _initCheckUrlKeySelect($urlKey, $store){
|
26 |
$select = $this->_getReadAdapter()->select()
|
27 |
+
->from(array('e' => $this->getMainTable()))
|
28 |
+
->join(
|
29 |
+
array('es' => $this->getTable('{{module}}/{{entity}}_store')),
|
30 |
+
'e.entity_id = es.{{entity}}_id',
|
31 |
+
array())
|
32 |
+
->where('e.url_key = ?', $urlKey)
|
33 |
+
->where('es.store_id IN (?)', $store);
|
34 |
return $select;
|
35 |
}
|
36 |
/**
|
41 |
* {{qwertyuiop}}
|
42 |
*/
|
43 |
public function getIsUniqueUrlKey(Mage_Core_Model_Abstract $object){
|
44 |
+
if (Mage::app()->isSingleStoreMode() || !$object->hasStores()) {
|
45 |
+
$stores = array(Mage_Core_Model_App::ADMIN_STORE_ID);
|
46 |
+
}
|
47 |
+
else {
|
48 |
+
$stores = (array)$object->getData('stores');
|
49 |
+
}
|
50 |
+
$select = $this->_initCheckUrlKeySelect($object->getData('url_key'), $stores);
|
51 |
if ($object->getId()) {
|
52 |
+
$select->where('e.entity_id <> ?', $object->getId());
|
53 |
}
|
54 |
if ($this->_getWriteAdapter()->fetchRow($select)) {
|
55 |
return false;
|
75 |
*/
|
76 |
protected function isValidUrlKey(Mage_Core_Model_Abstract $object){
|
77 |
return preg_match('/^[a-z0-9][a-z0-9_\/-]+(\.[a-z0-9_-]+)?$/', $object->getData('url_key'));
|
78 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{12_url_rewrite_before_save_not_tree.php → 13_url_rewrite_before_save_not_tree.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/{13_footer.php → 14_footer.php}
RENAMED
File without changes
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/Collection/01_top.php
CHANGED
@@ -18,6 +18,7 @@ class {{Namespace}}_{{Module}}_Model_Resource_{{Entity}}_Collection extends Mage
|
|
18 |
public function _construct(){
|
19 |
parent::_construct();
|
20 |
$this->_init('{{module}}/{{entity}}');
|
|
|
21 |
}
|
22 |
/**
|
23 |
* get {{entities}} as array
|
@@ -42,3 +43,59 @@ class {{Namespace}}_{{Module}}_Model_Resource_{{Entity}}_Collection extends Mage
|
|
42 |
protected function _toOptionHash($valueField='entity_id', $labelField='{{nameAttribute}}'){
|
43 |
return parent::_toOptionHash($valueField, $labelField);
|
44 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
public function _construct(){
|
19 |
parent::_construct();
|
20 |
$this->_init('{{module}}/{{entity}}');
|
21 |
+
$this->_map['fields']['store'] = 'store_table.store_id';
|
22 |
}
|
23 |
/**
|
24 |
* get {{entities}} as array
|
43 |
protected function _toOptionHash($valueField='entity_id', $labelField='{{nameAttribute}}'){
|
44 |
return parent::_toOptionHash($valueField, $labelField);
|
45 |
}
|
46 |
+
/**
|
47 |
+
* Add filter by store
|
48 |
+
* @access public
|
49 |
+
* @param int|Mage_Core_Model_Store $store
|
50 |
+
* @param bool $withAdmin
|
51 |
+
* @return {{Namespace}}_{{Module}}_Model_Resource_{{Entity}}_Collection
|
52 |
+
* {{qwertyuiop}}
|
53 |
+
*/
|
54 |
+
public function addStoreFilter($store, $withAdmin = true){
|
55 |
+
if (!isset($this->_joinedFields['store'])){
|
56 |
+
if ($store instanceof Mage_Core_Model_Store) {
|
57 |
+
$store = array($store->getId());
|
58 |
+
}
|
59 |
+
if (!is_array($store)) {
|
60 |
+
$store = array($store);
|
61 |
+
}
|
62 |
+
if ($withAdmin) {
|
63 |
+
$store[] = Mage_Core_Model_App::ADMIN_STORE_ID;
|
64 |
+
}
|
65 |
+
$this->addFilter('store', array('in' => $store), 'public');
|
66 |
+
$this->_joinedFields['store'] = true;
|
67 |
+
}
|
68 |
+
return $this;
|
69 |
+
}
|
70 |
+
/**
|
71 |
+
* Join store relation table if there is store filter
|
72 |
+
* @access protected
|
73 |
+
* @return {{Namespace}}_{{Module}}_Model_Resource_{{Entity}}_Collection
|
74 |
+
* {{qwertyuiop}}
|
75 |
+
*/
|
76 |
+
protected function _renderFiltersBefore(){
|
77 |
+
if ($this->getFilter('store')) {
|
78 |
+
$this->getSelect()->join(
|
79 |
+
array('store_table' => $this->getTable('{{module}}/{{entity}}_store')),
|
80 |
+
'main_table.entity_id = store_table.{{entity}}_id',
|
81 |
+
array()
|
82 |
+
)->group('main_table.entity_id');
|
83 |
+
/*
|
84 |
+
* Allow analytic functions usage because of one field grouping
|
85 |
+
*/
|
86 |
+
$this->_useAnalyticFunction = true;
|
87 |
+
}
|
88 |
+
return parent::_renderFiltersBefore();
|
89 |
+
}
|
90 |
+
/**
|
91 |
+
* Get SQL for get record count.
|
92 |
+
* Extra GROUP BY strip added.
|
93 |
+
* @access public
|
94 |
+
* @return Varien_Db_Select
|
95 |
+
* {{qwertyuiop}}
|
96 |
+
*/
|
97 |
+
public function getSelectCountSql(){
|
98 |
+
$countSelect = parent::getSelectCountSql();
|
99 |
+
$countSelect->reset(Zend_Db_Select::GROUP);
|
100 |
+
return $countSelect;
|
101 |
+
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/Model/Resource/Entity/Tree/03_content.php
CHANGED
@@ -19,7 +19,7 @@
|
|
19 |
}
|
20 |
|
21 |
/**
|
22 |
-
* Get {{entitiesLabel} collection
|
23 |
* @access public
|
24 |
* @param boolean $sorted
|
25 |
* @return {{Namespace}}_{{Module}}_Model_Resource_{{Entity}}_Collection
|
19 |
}
|
20 |
|
21 |
/**
|
22 |
+
* Get {{entitiesLabel}} collection
|
23 |
* @access public
|
24 |
* @param boolean $sorted
|
25 |
* @return {{Namespace}}_{{Module}}_Model_Resource_{{Entity}}_Collection
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/Entity/WidgetController/02_tree.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
/**
|
2 |
-
* {{
|
3 |
* @access public
|
4 |
* @return void
|
5 |
* {{qwertyuiop}}
|
1 |
/**
|
2 |
+
* {{entitiesLabel}} json action
|
3 |
* @access public
|
4 |
* @return void
|
5 |
* {{qwertyuiop}}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/01_top.php
CHANGED
@@ -29,7 +29,10 @@ class {{Namespace}}_{{Module}}_Adminhtml_{{Module}}_{{Entity}}Controller extends
|
|
29 |
* {{qwertyuiop}}
|
30 |
*/
|
31 |
public function indexAction() {
|
32 |
-
$this->loadLayout()
|
|
|
|
|
|
|
33 |
}
|
34 |
/**
|
35 |
* grid action
|
@@ -60,6 +63,14 @@ class {{Namespace}}_{{Module}}_Adminhtml_{{Module}}_{{Entity}}Controller extends
|
|
60 |
}
|
61 |
Mage::register('{{entity}}_data', ${{entity}});
|
62 |
$this->loadLayout();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63 |
if (Mage::getSingleton('cms/wysiwyg_config')->isEnabled()) {
|
64 |
$this->getLayout()->getBlock('head')->setCanLoadTinyMce(true);
|
65 |
}
|
29 |
* {{qwertyuiop}}
|
30 |
*/
|
31 |
public function indexAction() {
|
32 |
+
$this->loadLayout();
|
33 |
+
$this->_title(Mage::helper('{{module}}')->__('{{Module}}'))
|
34 |
+
->_title(Mage::helper('{{module}}')->__('{{EntitiesLabel}}'));
|
35 |
+
$this->renderLayout();
|
36 |
}
|
37 |
/**
|
38 |
* grid action
|
63 |
}
|
64 |
Mage::register('{{entity}}_data', ${{entity}});
|
65 |
$this->loadLayout();
|
66 |
+
$this->_title(Mage::helper('{{module}}')->__('{{Module}}'))
|
67 |
+
->_title(Mage::helper('{{module}}')->__('{{EntitiesLabel}}'));
|
68 |
+
if (${{entity}}->getId()){
|
69 |
+
$this->_title(${{entity}}->get{{EntityNameMagicCode}}());
|
70 |
+
}
|
71 |
+
else{
|
72 |
+
$this->_title(Mage::helper('{{module}}')->__('Add {{entityLabel}}'));
|
73 |
+
}
|
74 |
if (Mage::getSingleton('cms/wysiwyg_config')->isEnabled()) {
|
75 |
$this->getLayout()->getBlock('head')->setCanLoadTinyMce(true);
|
76 |
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/09_exception.php
CHANGED
@@ -4,3 +4,4 @@
|
|
4 |
return;
|
5 |
}
|
6 |
catch (Exception $e) {
|
|
4 |
return;
|
5 |
}
|
6 |
catch (Exception $e) {
|
7 |
+
Mage::logException($e);
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/Adminhtml/Module/EntityController/IsTree/01_top.php
CHANGED
@@ -99,6 +99,8 @@ class {{Namespace}}_{{Module}}_Adminhtml_{{Module}}_{{Entity}}Controller extends
|
|
99 |
return;
|
100 |
}
|
101 |
$this->loadLayout();
|
|
|
|
|
102 |
$this->_setActiveMenu('{{module}}/{{entity}}');
|
103 |
$this->getLayout()->getBlock('head')->setCanLoadExtJs(true)
|
104 |
->setContainerCssClass('{{entity}}');
|
99 |
return;
|
100 |
}
|
101 |
$this->loadLayout();
|
102 |
+
$this->_title(Mage::helper('{{module}}')->__('{{Module}}'))
|
103 |
+
->_title(Mage::helper('{{module}}')->__('{{EntitiesLabel}}'));
|
104 |
$this->_setActiveMenu('{{module}}/{{entity}}');
|
105 |
$this->getLayout()->getBlock('head')->setCanLoadExtJs(true)
|
106 |
->setContainerCssClass('{{entity}}');
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/controllers/EntityController/05_view.php
CHANGED
@@ -6,7 +6,9 @@
|
|
6 |
*/
|
7 |
public function viewAction(){
|
8 |
${{entity}}Id = $this->getRequest()->getParam('id', 0);
|
9 |
-
${{entity}} = Mage::getModel('{{module}}/{{entity}}')
|
|
|
|
|
10 |
if (!${{entity}}->getId()){
|
11 |
$this->_forward('no-route');
|
12 |
}
|
6 |
*/
|
7 |
public function viewAction(){
|
8 |
${{entity}}Id = $this->getRequest()->getParam('id', 0);
|
9 |
+
${{entity}} = Mage::getModel('{{module}}/{{entity}}')
|
10 |
+
->setStoreId(Mage::app()->getStore()->getId())
|
11 |
+
->load(${{entity}}Id);
|
12 |
if (!${{entity}}->getId()){
|
13 |
$this->_forward('no-route');
|
14 |
}
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/etc/config/02_tables.xml
CHANGED
@@ -1,3 +1,6 @@
|
|
1 |
<{{entity}}>
|
2 |
<table>{{module}}_{{entity}}</table>
|
3 |
</{{entity}}>
|
|
|
|
|
|
1 |
<{{entity}}>
|
2 |
<table>{{module}}_{{entity}}</table>
|
3 |
</{{entity}}>
|
4 |
+
<{{entity}}_store>
|
5 |
+
<table>{{module}}_{{entity}}_store</table>
|
6 |
+
</{{entity}}_store>
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/etc/wsi/06_porttype_entity.xml
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
<wsdl:operation name="{{module}}{{Entity}}List">
|
2 |
-
<wsdl:documentation>Retrieve list of
|
3 |
<wsdl:input message="typens:{{module}}{{Entity}}ListRequest" />
|
4 |
<wsdl:output message="typens:{{module}}{{Entity}}ListResponse" />
|
5 |
</wsdl:operation>
|
6 |
<wsdl:operation name="{{module}}{{Entity}}Info">
|
7 |
-
<wsdl:documentation>Retrieve
|
8 |
<wsdl:input message="typens:{{module}}{{Entity}}InfoRequest" />
|
9 |
<wsdl:output message="typens:{{module}}{{Entity}}InfoResponse" />
|
10 |
</wsdl:operation>
|
1 |
<wsdl:operation name="{{module}}{{Entity}}List">
|
2 |
+
<wsdl:documentation>Retrieve list of {{entitiesLabel}}</wsdl:documentation>
|
3 |
<wsdl:input message="typens:{{module}}{{Entity}}ListRequest" />
|
4 |
<wsdl:output message="typens:{{module}}{{Entity}}ListResponse" />
|
5 |
</wsdl:operation>
|
6 |
<wsdl:operation name="{{module}}{{Entity}}Info">
|
7 |
+
<wsdl:documentation>Retrieve {{entityLabel}} info</wsdl:documentation>
|
8 |
<wsdl:input message="typens:{{module}}{{Entity}}InfoRequest" />
|
9 |
<wsdl:output message="typens:{{module}}{{Entity}}InfoResponse" />
|
10 |
</wsdl:operation>
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/01_top.php
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
{{License}}
|
3 |
+
/**
|
4 |
+
* {{Module}} module install script
|
5 |
+
*
|
6 |
+
* @category {{Namespace}}
|
7 |
+
* @package {{Namespace}}_{{Module}}
|
8 |
+
* {{qwertyuiop}}
|
9 |
+
*/
|
10 |
+
$this->startSetup();
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/02_entity.php
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
$table = $this->getConnection()
|
2 |
+
->newTable($this->getTable('{{module}}/{{entity}}'))
|
3 |
+
->addColumn('entity_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
4 |
+
'identity' => true,
|
5 |
+
'nullable' => false,
|
6 |
+
'primary' => true,
|
7 |
+
), '{{EntityLabel}} ID')
|
8 |
+
{{attributeDdlSql}}
|
9 |
+
->addColumn('created_at', Varien_Db_Ddl_Table::TYPE_TIMESTAMP, null, array(
|
10 |
+
), '{{EntityLabel}} Creation Time')
|
11 |
+
->addColumn('updated_at', Varien_Db_Ddl_Table::TYPE_TIMESTAMP, null, array(
|
12 |
+
), '{{EntityLabel}} Modification Time'){{fksDdl}}
|
13 |
+
->setComment('{{EntityLabel}} Table');
|
14 |
+
$this->getConnection()->createTable($table);
|
15 |
+
|
16 |
+
$table = $this->getConnection()
|
17 |
+
->newTable($this->getTable('{{module}}/{{entity}}_store'))
|
18 |
+
->addColumn('{{entity}}_id', Varien_Db_Ddl_Table::TYPE_SMALLINT, null, array(
|
19 |
+
'nullable' => false,
|
20 |
+
'primary' => true,
|
21 |
+
), '{{EntityLabel}} ID')
|
22 |
+
->addColumn('store_id', Varien_Db_Ddl_Table::TYPE_SMALLINT, null, array(
|
23 |
+
'unsigned' => true,
|
24 |
+
'nullable' => false,
|
25 |
+
'primary' => true,
|
26 |
+
), 'Store ID')
|
27 |
+
->addIndex($this->getIdxName('{{module}}/{{entity}}_store', array('store_id')), array('store_id'))
|
28 |
+
->addForeignKey($this->getFkName('{{module}}/{{entity}}_store', '{{entity}}_id', '{{module}}/{{entity}}', 'entity_id'), '{{entity}}_id', $this->getTable('{{module}}/{{entity}}'), 'entity_id', Varien_Db_Ddl_Table::ACTION_CASCADE, Varien_Db_Ddl_Table::ACTION_CASCADE)
|
29 |
+
->addForeignKey($this->getFkName('{{module}}/{{entity}}_store', 'store_id', 'core/store', 'store_id'), 'store_id', $this->getTable('core/store'), 'store_id', Varien_Db_Ddl_Table::ACTION_CASCADE, Varien_Db_Ddl_Table::ACTION_CASCADE)
|
30 |
+
->setComment('{{EntitiesLabel}} To Store Linkage Table');
|
31 |
+
$this->getConnection()->createTable($table);
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/03_product_relation.php
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
$table = $this->getConnection()
|
2 |
+
->newTable($this->getTable('{{module}}/{{entity}}_product'))
|
3 |
+
->addColumn('rel_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
4 |
+
'unsigned' => true,
|
5 |
+
'identity' => true,
|
6 |
+
'nullable' => false,
|
7 |
+
'primary' => true,
|
8 |
+
), 'Category ID')
|
9 |
+
->addColumn('{{entity}}_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
10 |
+
'unsigned' => true,
|
11 |
+
'nullable' => false,
|
12 |
+
'default' => '0',
|
13 |
+
), '{{EntityLabel}} ID')
|
14 |
+
->addColumn('product_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
15 |
+
'unsigned' => true,
|
16 |
+
'nullable' => false,
|
17 |
+
'default' => '0',
|
18 |
+
), 'Product ID')
|
19 |
+
->addColumn('position', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
20 |
+
'nullable' => false,
|
21 |
+
'default' => '0',
|
22 |
+
), 'Position')
|
23 |
+
->addIndex($this->getIdxName('{{module}}/{{entity}}_product', array('product_id')), array('product_id'))
|
24 |
+
->addForeignKey($this->getFkName('{{module}}/{{entity}}_product', '{{entity}}_id', '{{module}}/{{entity}}', 'entity_id'), '{{entity}}_id', $this->getTable('{{module}}/{{entity}}'), 'entity_id', Varien_Db_Ddl_Table::ACTION_CASCADE, Varien_Db_Ddl_Table::ACTION_CASCADE)
|
25 |
+
->addForeignKey($this->getFkName('{{module}}/{{entity}}_product', 'product_id', 'catalog/product', 'entity_id'), 'product_id', $this->getTable('catalog/product'), 'entity_id', Varien_Db_Ddl_Table::ACTION_CASCADE, Varien_Db_Ddl_Table::ACTION_CASCADE)
|
26 |
+
->setComment('{{EntityLabel}} to Product Linkage Table');
|
27 |
+
$this->getConnection()->createTable($table);
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/04_sibling_relation.php
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
$table = $this->getConnection()
|
2 |
+
->newTable($this->getTable('{{module}}/{{entity}}_{{sibling}}'))
|
3 |
+
->addColumn('rel_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
4 |
+
'unsigned' => true,
|
5 |
+
'identity' => true,
|
6 |
+
'nullable' => false,
|
7 |
+
'primary' => true,
|
8 |
+
), 'Relation ID')
|
9 |
+
->addColumn('{{entity}}_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
10 |
+
'unsigned' => true,
|
11 |
+
'nullable' => false,
|
12 |
+
'default' => '0',
|
13 |
+
), '{{EntityLabel}} ID')
|
14 |
+
->addColumn('{{sibling}}_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
15 |
+
'unsigned' => true,
|
16 |
+
'nullable' => false,
|
17 |
+
'default' => '0',
|
18 |
+
), '{{SiblingLabel}} ID')
|
19 |
+
->addColumn('position', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
20 |
+
'nullable' => false,
|
21 |
+
'default' => '0',
|
22 |
+
), 'Position')
|
23 |
+
->addForeignKey($this->getFkName('{{module}}/{{entity}}_{{sibling}}', '{{entity}}_id', '{{module}}/{{entity}}', 'entity_id'), '{{entity}}_id', $this->getTable('{{module}}/{{entity}}'), 'entity_id', Varien_Db_Ddl_Table::ACTION_CASCADE, Varien_Db_Ddl_Table::ACTION_CASCADE)
|
24 |
+
->addForeignKey($this->getFkName('{{module}}/{{entity}}_{{sibling}}', '{{sibling}}_id', '{{module}}/{{entity}}', 'entity_id'), '{{sibling}}_id', $this->getTable('{{module}}/{{sibling}}'), 'entity_id', Varien_Db_Ddl_Table::ACTION_CASCADE, Varien_Db_Ddl_Table::ACTION_CASCADE)
|
25 |
+
->setComment('{{EntityLabel}} to {{SiblingLabel}} Linkage Table');
|
26 |
+
$this->getConnection()->createTable($table);
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/05_footer.php
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
$this->endSetup();
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1/02_entity.php
CHANGED
@@ -7,3 +7,13 @@ $this->run("
|
|
7 |
PRIMARY KEY (`entity_id`){{fks}})
|
8 |
ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
9 |
");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
PRIMARY KEY (`entity_id`){{fks}})
|
8 |
ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
9 |
");
|
10 |
+
$this->run("
|
11 |
+
CREATE TABLE `{$this->getTable('{{module}}/{{entity}}_store')}` (
|
12 |
+
`{{entity}}_id` int(10) NOT NULL,
|
13 |
+
`store_id` int(10) unsigned NOT NULL,
|
14 |
+
PRIMARY KEY (`{{entity}}_id`,`store_id`),
|
15 |
+
CONSTRAINT `FK_{{MODULE}}_{{ENTITY}}_STORE_{{ENTITY}}` FOREIGN KEY (`{{entity}}_id`) REFERENCES `{$this->getTable('{{module}}/{{entity}}')}` (`entity_id`) ON UPDATE CASCADE ON DELETE CASCADE,
|
16 |
+
CONSTRAINT `FK_{{MODULE}}_{{ENTITY}}_STORE_STORE` FOREIGN KEY (`store_id`) REFERENCES `{$this->getTable('core/store')}` (`store_id`) ON UPDATE CASCADE ON DELETE CASCADE
|
17 |
+
)
|
18 |
+
ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='{{EntitiesLabel}} to Stores';
|
19 |
+
");
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/locale/en_US/Namespace_Module/01_global.csv
CHANGED
@@ -11,3 +11,4 @@
|
|
11 |
"Are you sure?","Are you sure?"
|
12 |
"Home","Home"
|
13 |
"None","None"
|
|
11 |
"Are you sure?","Are you sure?"
|
12 |
"Home","Home"
|
13 |
"None","None"
|
14 |
+
"Store views","Store views"
|
app/code/community/Ultimate/ModuleCreator/etc/m/app/locale/en_US/Namespace_Module/06_global_seo.csv
CHANGED
@@ -1,3 +1,5 @@
|
|
1 |
"Meta-title","Meta-title"
|
2 |
"Meta-description","Meta-description"
|
3 |
"Meta-keywords","Meta-keywords"
|
|
|
|
1 |
"Meta-title","Meta-title"
|
2 |
"Meta-description","Meta-description"
|
3 |
"Meta-keywords","Meta-keywords"
|
4 |
+
"Meta information","Meta information"
|
5 |
+
"Meta","Meta"
|
app/code/community/Ultimate/ModuleCreator/etc/modulecreator.xml
CHANGED
@@ -64,48 +64,51 @@
|
|
64 |
</depend>
|
65 |
</file>
|
66 |
<file>
|
67 |
-
<name>
|
|
|
|
|
|
|
68 |
<depend>
|
69 |
<created_to_grid />
|
70 |
</depend>
|
71 |
</file>
|
72 |
<file>
|
73 |
-
<name>
|
74 |
<depend>
|
75 |
<updated_to_grid />
|
76 |
</depend>
|
77 |
</file>
|
78 |
<file>
|
79 |
-
<name>
|
80 |
</file>
|
81 |
<file>
|
82 |
-
<name>
|
83 |
</file>
|
84 |
<file>
|
85 |
-
<name>
|
86 |
</file>
|
87 |
<file>
|
88 |
-
<name>
|
89 |
</file>
|
90 |
<file>
|
91 |
-
<name>
|
92 |
<depend>
|
93 |
<add_status />
|
94 |
</depend>
|
95 |
</file>
|
96 |
<file>
|
97 |
-
<name>
|
98 |
<scope>attribute</scope>
|
99 |
<depend_type>
|
100 |
<yesno />
|
101 |
</depend_type>
|
102 |
</file>
|
103 |
<file>
|
104 |
-
<name>
|
105 |
<scope>parents</scope>
|
106 |
</file>
|
107 |
<file>
|
108 |
-
<name>
|
109 |
</file>
|
110 |
</content>
|
111 |
</file>
|
@@ -187,17 +190,26 @@
|
|
187 |
<name>01_top.php</name>
|
188 |
</file>
|
189 |
<file>
|
190 |
-
<name>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
191 |
<scope>siblings</scope>
|
192 |
</file>
|
193 |
<file>
|
194 |
-
<name>
|
195 |
<depend>
|
196 |
<link_product />
|
197 |
</depend>
|
198 |
</file>
|
199 |
<file>
|
200 |
-
<name>
|
201 |
</file>
|
202 |
</content>
|
203 |
</file>
|
@@ -216,17 +228,26 @@
|
|
216 |
<name>01_top.php</name>
|
217 |
</file>
|
218 |
<file>
|
219 |
-
<name>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
220 |
<scope>siblings</scope>
|
221 |
</file>
|
222 |
<file>
|
223 |
-
<name>
|
224 |
<depend>
|
225 |
<link_product />
|
226 |
</depend>
|
227 |
</file>
|
228 |
<file>
|
229 |
-
<name>
|
230 |
</file>
|
231 |
</content>
|
232 |
</file>
|
@@ -421,68 +442,74 @@
|
|
421 |
<name>03_constructor.php</name>
|
422 |
</file>
|
423 |
<file>
|
424 |
-
<name>
|
|
|
|
|
|
|
|
|
|
|
|
|
425 |
<depend>
|
426 |
<is_tree />
|
427 |
</depend>
|
428 |
</file>
|
429 |
<file>
|
430 |
-
<name>
|
431 |
<depend>
|
432 |
<is_tree />
|
433 |
<not_url_rewrite />
|
434 |
</depend>
|
435 |
</file>
|
436 |
<file>
|
437 |
-
<name>
|
438 |
<depend>
|
439 |
<is_tree />
|
440 |
<url_rewrite />
|
441 |
</depend>
|
442 |
</file>
|
443 |
<file>
|
444 |
-
<name>
|
445 |
<depend>
|
446 |
<is_tree />
|
447 |
<not_add_status />
|
448 |
</depend>
|
449 |
</file>
|
450 |
<file>
|
451 |
-
<name>
|
452 |
<depend>
|
453 |
<is_tree />
|
454 |
<add_status />
|
455 |
</depend>
|
456 |
</file>
|
457 |
<file>
|
458 |
-
<name>
|
459 |
<depend>
|
460 |
<is_tree />
|
461 |
</depend>
|
462 |
</file>
|
463 |
<file>
|
464 |
-
<name>
|
465 |
<depend>
|
466 |
<add_status />
|
467 |
<url_rewrite />
|
468 |
</depend>
|
469 |
</file>
|
470 |
<file>
|
471 |
-
<name>
|
472 |
<depend>
|
473 |
<not_add_status />
|
474 |
<url_rewrite />
|
475 |
</depend>
|
476 |
</file>
|
477 |
<file>
|
478 |
-
<name>
|
479 |
<depend>
|
480 |
<url_rewrite />
|
481 |
<not_is_tree />
|
482 |
</depend>
|
483 |
</file>
|
484 |
<file>
|
485 |
-
<name>
|
486 |
</file>
|
487 |
</content>
|
488 |
</file>
|
@@ -1292,7 +1319,7 @@
|
|
1292 |
</depend>
|
1293 |
</file>
|
1294 |
<file>
|
1295 |
-
<name>
|
1296 |
<depend>
|
1297 |
<frontend_add_seo />
|
1298 |
</depend>
|
@@ -1320,7 +1347,38 @@
|
|
1320 |
</file>
|
1321 |
</content>
|
1322 |
</file>
|
1323 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1324 |
<file translate="title" module="modulecreator">
|
1325 |
<title>WISIWYG helper block.</title>
|
1326 |
<scope>global</scope>
|
@@ -1401,6 +1459,9 @@
|
|
1401 |
<file translate="title" module="modulecreator">
|
1402 |
<title>Install script</title>
|
1403 |
<scope>global</scope>
|
|
|
|
|
|
|
1404 |
<filetype>php</filetype>
|
1405 |
<from>app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1/</from>
|
1406 |
<to>app/code/{{codepool}}/{{Namespace}}/{{Module}}/sql/{{namespace}}_{{module}}_setup/install-0.0.1.php</to>
|
@@ -1428,6 +1489,39 @@
|
|
1428 |
</file>
|
1429 |
</content>
|
1430 |
</file>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1431 |
<file translate="title" module="modulecreator">
|
1432 |
<title>Widget xml</title>
|
1433 |
<scope>global</scope>
|
64 |
</depend>
|
65 |
</file>
|
66 |
<file>
|
67 |
+
<name>07_stores.php</name>
|
68 |
+
</file>
|
69 |
+
<file>
|
70 |
+
<name>08_created_at.php</name>
|
71 |
<depend>
|
72 |
<created_to_grid />
|
73 |
</depend>
|
74 |
</file>
|
75 |
<file>
|
76 |
+
<name>09_updated_at.php</name>
|
77 |
<depend>
|
78 |
<updated_to_grid />
|
79 |
</depend>
|
80 |
</file>
|
81 |
<file>
|
82 |
+
<name>10_grid_actions.php</name>
|
83 |
</file>
|
84 |
<file>
|
85 |
+
<name>11_grid_export.php</name>
|
86 |
</file>
|
87 |
<file>
|
88 |
+
<name>12_columns_footer.php</name>
|
89 |
</file>
|
90 |
<file>
|
91 |
+
<name>13_mass_action_top.php</name>
|
92 |
</file>
|
93 |
<file>
|
94 |
+
<name>14_mass_action_status.php</name>
|
95 |
<depend>
|
96 |
<add_status />
|
97 |
</depend>
|
98 |
</file>
|
99 |
<file>
|
100 |
+
<name>15_mass_action_flags.php</name>
|
101 |
<scope>attribute</scope>
|
102 |
<depend_type>
|
103 |
<yesno />
|
104 |
</depend_type>
|
105 |
</file>
|
106 |
<file>
|
107 |
+
<name>16_mass_action_parents.php</name>
|
108 |
<scope>parents</scope>
|
109 |
</file>
|
110 |
<file>
|
111 |
+
<name>17_footer.php</name>
|
112 |
</file>
|
113 |
</content>
|
114 |
</file>
|
190 |
<name>01_top.php</name>
|
191 |
</file>
|
192 |
<file>
|
193 |
+
<name>02_seo.php</name>
|
194 |
+
<depend>
|
195 |
+
<frontend_add_seo />
|
196 |
+
</depend>
|
197 |
+
</file>
|
198 |
+
<file>
|
199 |
+
<name>03_stores.php</name>
|
200 |
+
</file>
|
201 |
+
<file>
|
202 |
+
<name>04_relations_tabs.php</name>
|
203 |
<scope>siblings</scope>
|
204 |
</file>
|
205 |
<file>
|
206 |
+
<name>05_product_relation.php</name>
|
207 |
<depend>
|
208 |
<link_product />
|
209 |
</depend>
|
210 |
</file>
|
211 |
<file>
|
212 |
+
<name>06_footer.php</name>
|
213 |
</file>
|
214 |
</content>
|
215 |
</file>
|
228 |
<name>01_top.php</name>
|
229 |
</file>
|
230 |
<file>
|
231 |
+
<name>02_seo.php</name>
|
232 |
+
<depend>
|
233 |
+
<frontend_add_seo />
|
234 |
+
</depend>
|
235 |
+
</file>
|
236 |
+
<file>
|
237 |
+
<name>03_stores.php</name>
|
238 |
+
</file>
|
239 |
+
<file>
|
240 |
+
<name>04_relations_tabs.php</name>
|
241 |
<scope>siblings</scope>
|
242 |
</file>
|
243 |
<file>
|
244 |
+
<name>05_product_relation.php</name>
|
245 |
<depend>
|
246 |
<link_product />
|
247 |
</depend>
|
248 |
</file>
|
249 |
<file>
|
250 |
+
<name>06_footer.php</name>
|
251 |
</file>
|
252 |
</content>
|
253 |
</file>
|
442 |
<name>03_constructor.php</name>
|
443 |
</file>
|
444 |
<file>
|
445 |
+
<name>04_not_tree.php</name>
|
446 |
+
<depend>
|
447 |
+
<not_is_tree />
|
448 |
+
</depend>
|
449 |
+
</file>
|
450 |
+
<file>
|
451 |
+
<name>05_tree.php</name>
|
452 |
<depend>
|
453 |
<is_tree />
|
454 |
</depend>
|
455 |
</file>
|
456 |
<file>
|
457 |
+
<name>06_tree_before_save_no_url_rewrite.php</name>
|
458 |
<depend>
|
459 |
<is_tree />
|
460 |
<not_url_rewrite />
|
461 |
</depend>
|
462 |
</file>
|
463 |
<file>
|
464 |
+
<name>07_tree_before_save_url_rewrite.php</name>
|
465 |
<depend>
|
466 |
<is_tree />
|
467 |
<url_rewrite />
|
468 |
</depend>
|
469 |
</file>
|
470 |
<file>
|
471 |
+
<name>08_children_no_status.php</name>
|
472 |
<depend>
|
473 |
<is_tree />
|
474 |
<not_add_status />
|
475 |
</depend>
|
476 |
</file>
|
477 |
<file>
|
478 |
+
<name>09_children_status.php</name>
|
479 |
<depend>
|
480 |
<is_tree />
|
481 |
<add_status />
|
482 |
</depend>
|
483 |
</file>
|
484 |
<file>
|
485 |
+
<name>10_content.php</name>
|
486 |
<depend>
|
487 |
<is_tree />
|
488 |
</depend>
|
489 |
</file>
|
490 |
<file>
|
491 |
+
<name>11_url_rewrite_status.php</name>
|
492 |
<depend>
|
493 |
<add_status />
|
494 |
<url_rewrite />
|
495 |
</depend>
|
496 |
</file>
|
497 |
<file>
|
498 |
+
<name>12_url_rewrite_not_status.php</name>
|
499 |
<depend>
|
500 |
<not_add_status />
|
501 |
<url_rewrite />
|
502 |
</depend>
|
503 |
</file>
|
504 |
<file>
|
505 |
+
<name>13_url_rewrite_before_save_not_tree.php</name>
|
506 |
<depend>
|
507 |
<url_rewrite />
|
508 |
<not_is_tree />
|
509 |
</depend>
|
510 |
</file>
|
511 |
<file>
|
512 |
+
<name>14_footer.php</name>
|
513 |
</file>
|
514 |
</content>
|
515 |
</file>
|
1319 |
</depend>
|
1320 |
</file>
|
1321 |
<file>
|
1322 |
+
<name>12_stores.php</name>
|
1323 |
<depend>
|
1324 |
<frontend_add_seo />
|
1325 |
</depend>
|
1347 |
</file>
|
1348 |
</content>
|
1349 |
</file>
|
1350 |
+
<file translate="title" module="modulecreator">
|
1351 |
+
<title>Flat entity admin meta attributes tab.</title>
|
1352 |
+
<scope>entity</scope>
|
1353 |
+
<filetype>php</filetype>
|
1354 |
+
<depend>
|
1355 |
+
<flat />
|
1356 |
+
<frontend_add_seo />
|
1357 |
+
</depend>
|
1358 |
+
<from>app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Meta/</from>
|
1359 |
+
<to>app/code/{{codepool}}/{{Namespace}}/{{Module}}/Block/Adminhtml/{{Entity}}/Edit/Tab/Meta.php</to>
|
1360 |
+
<content>
|
1361 |
+
<file>
|
1362 |
+
<name>01_content.php</name>
|
1363 |
+
</file>
|
1364 |
+
</content>
|
1365 |
+
</file>
|
1366 |
+
<file translate="title" module="modulecreator">
|
1367 |
+
<title>Flat entity admin stores tab.</title>
|
1368 |
+
<scope>entity</scope>
|
1369 |
+
<filetype>php</filetype>
|
1370 |
+
<depend>
|
1371 |
+
<flat />
|
1372 |
+
<frontend_add_seo />
|
1373 |
+
</depend>
|
1374 |
+
<from>app/code/cp/Ns/Md/Block/Adminhtml/Entity/Edit/Tab/Stores/</from>
|
1375 |
+
<to>app/code/{{codepool}}/{{Namespace}}/{{Module}}/Block/Adminhtml/{{Entity}}/Edit/Tab/Stores.php</to>
|
1376 |
+
<content>
|
1377 |
+
<file>
|
1378 |
+
<name>01_content.php</name>
|
1379 |
+
</file>
|
1380 |
+
</content>
|
1381 |
+
</file>
|
1382 |
<file translate="title" module="modulecreator">
|
1383 |
<title>WISIWYG helper block.</title>
|
1384 |
<scope>global</scope>
|
1459 |
<file translate="title" module="modulecreator">
|
1460 |
<title>Install script</title>
|
1461 |
<scope>global</scope>
|
1462 |
+
<depend>
|
1463 |
+
<not_use_ddl />
|
1464 |
+
</depend>
|
1465 |
<filetype>php</filetype>
|
1466 |
<from>app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1/</from>
|
1467 |
<to>app/code/{{codepool}}/{{Namespace}}/{{Module}}/sql/{{namespace}}_{{module}}_setup/install-0.0.1.php</to>
|
1489 |
</file>
|
1490 |
</content>
|
1491 |
</file>
|
1492 |
+
<file translate="title" module="modulecreator">
|
1493 |
+
<title>Install script</title>
|
1494 |
+
<scope>global</scope>
|
1495 |
+
<depend>
|
1496 |
+
<use_ddl />
|
1497 |
+
</depend>
|
1498 |
+
<filetype>php</filetype>
|
1499 |
+
<from>app/code/cp/Ns/Md/sql/namespace_module_setup/install-0.0.1-ddl/</from>
|
1500 |
+
<to>app/code/{{codepool}}/{{Namespace}}/{{Module}}/sql/{{namespace}}_{{module}}_setup/install-0.0.1.php</to>
|
1501 |
+
<content>
|
1502 |
+
<file>
|
1503 |
+
<name>01_top.php</name>
|
1504 |
+
</file>
|
1505 |
+
<file>
|
1506 |
+
<name>02_entity.php</name>
|
1507 |
+
<scope>entity</scope>
|
1508 |
+
</file>
|
1509 |
+
<file>
|
1510 |
+
<name>03_product_relation.php</name>
|
1511 |
+
<scope>entity</scope>
|
1512 |
+
<depend>
|
1513 |
+
<link_product />
|
1514 |
+
</depend>
|
1515 |
+
</file>
|
1516 |
+
<file>
|
1517 |
+
<name>04_sibling_relation.php</name>
|
1518 |
+
<scope>siblings</scope>
|
1519 |
+
</file>
|
1520 |
+
<file>
|
1521 |
+
<name>05_footer.php</name>
|
1522 |
+
</file>
|
1523 |
+
</content>
|
1524 |
+
</file>
|
1525 |
<file translate="title" module="modulecreator">
|
1526 |
<title>Widget xml</title>
|
1527 |
<scope>global</scope>
|
app/code/community/Ultimate/ModuleCreator/etc/system.xml
CHANGED
@@ -82,6 +82,15 @@
|
|
82 |
<show_in_store>0</show_in_store>
|
83 |
<comment>Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year</comment>
|
84 |
</license>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
</fields>
|
86 |
</settings>
|
87 |
<entity_defaults translate="label" module="modulecreator">
|
82 |
<show_in_store>0</show_in_store>
|
83 |
<comment>Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year</comment>
|
84 |
</license>
|
85 |
+
<use_ddl translate="label" module="modulecreator">
|
86 |
+
<label>Use DDL for install script</label>
|
87 |
+
<frontend_type>select</frontend_type>
|
88 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
89 |
+
<sort_order>50</sort_order>
|
90 |
+
<show_in_default>1</show_in_default>
|
91 |
+
<show_in_website>0</show_in_website>
|
92 |
+
<show_in_store>0</show_in_store>
|
93 |
+
</use_ddl>
|
94 |
</fields>
|
95 |
</settings>
|
96 |
<entity_defaults translate="label" module="modulecreator">
|
app/design/adminhtml/default/default/template/ultimate_modulecreator/edit/tab/help.phtml
CHANGED
@@ -179,6 +179,18 @@
|
|
179 |
<?php echo Mage::helper('modulecreator')->__('Each entity has a field called created_at and one called updated_at that remembers when the item was created and saved last. Setting these wo "Yes" will add these columns to the admin gird.');?>
|
180 |
</p>
|
181 |
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
182 |
<li>
|
183 |
<strong><?php echo Mage::helper('modulecreator')->__('Include "Status" field')?></strong><br />
|
184 |
<p>
|
179 |
<?php echo Mage::helper('modulecreator')->__('Each entity has a field called created_at and one called updated_at that remembers when the item was created and saved last. Setting these wo "Yes" will add these columns to the admin gird.');?>
|
180 |
</p>
|
181 |
</li>
|
182 |
+
<li>
|
183 |
+
<strong><?php echo Mage::helper('modulecreator')->__('Add to admin global search')?></strong><br />
|
184 |
+
<p>
|
185 |
+
<?php echo Mage::helper('modulecreator')->__('When using the global admin search Magento searches on products, customers and orders. This can make it search in your entities also.')?>
|
186 |
+
</p>
|
187 |
+
</li>
|
188 |
+
<li>
|
189 |
+
<strong><?php echo Mage::helper('modulecreator')->__('Create API')?></strong><br />
|
190 |
+
<p>
|
191 |
+
<?php echo Mage::helper('modulecreator')->__('This will create the files needed for the SOAP API for the custom entity.')?>
|
192 |
+
</p>
|
193 |
+
</li>
|
194 |
<li>
|
195 |
<strong><?php echo Mage::helper('modulecreator')->__('Include "Status" field')?></strong><br />
|
196 |
<p>
|
app/locale/en_US/Ultimate_ModuleCreator.csv
CHANGED
@@ -338,6 +338,7 @@
|
|
338 |
"Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} as placeholder for current year.","Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} as placeholder for current year.","false"
|
339 |
"Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year","Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year","false"
|
340 |
"Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year.","Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year.","false"
|
|
|
341 |
"View widget","View widget","false"
|
342 |
"WISIWYG helper block.","WISIWYG helper block.","false"
|
343 |
"Website","Website","true"
|
338 |
"Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} as placeholder for current year.","Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} as placeholder for current year.","false"
|
339 |
"Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year","Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year","false"
|
340 |
"Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year.","Use {{Namespace}} as a placeholder for namespace, {{Module}} as a placeholder for the module name and {{Y}} for current year.","false"
|
341 |
+
"Use DDL for install script","Use DDL for install script"
|
342 |
"View widget","View widget","false"
|
343 |
"WISIWYG helper block.","WISIWYG helper block.","false"
|
344 |
"Website","Website","true"
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Ultimate_ModuleCreator</name>
|
4 |
-
<version>1.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/MIT">MIT License</license>
|
7 |
<channel>community</channel>
|
@@ -9,17 +9,19 @@
|
|
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>Features:
|
12 |
-
-
|
13 |
-
-
|
14 |
-
|
15 |
-
|
16 |
-
-
|
17 |
-
Refactoring
|
18 |
-
-
|
|
|
|
|
19 |
<authors><author><name>Marius Strajeru</name><user>tzyganu</user><email>tzyganu@gmail.com</email></author></authors>
|
20 |
-
<date>2013-04-
|
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="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="5232f076d415a7fea7470c210e9937a1"/><file name="Entity.php" hash="c67e2105bb2087ce3a56c739d3b4335b"/><dir name="Module"><file name="Collection.php" hash="0e413b976cbc9649ec982fe0f4b95dd1"/></dir><file name="Module.php" hash="74aa2aacef31c8d7f8c3fad0fa0c97bb"/><file name="Relation.php" hash="d026e9113cf9ad8c65fc4c78bdac5852"/><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="7287d029ddff85952cae1f54fc54d370"/><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="09f99a030f1e9e09864cee3e5f92457c"/><file name="15_tree.php" hash="c577ef6c4d67da82d5226162345ef896"/><file name="16_tree_status.php" hash="64da48d68c1af82304cea4ee2c21800e"/><file name="17_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="Api"><file name="01_top.php" hash="c1956fcb05a9cb5130a2b736875deff7"/><file name="02_product_relation_info.php" hash="1c7bc902ac26ce46dfa0d7fc9928550b"/><file name="03_sibling_info.php" hash="e47f87465f7bc8ef58513290f79059a3"/><file name="04_info_footer.php" hash="f86ab31eddfc4e564e856d6e2e7dae19"/><file name="05_tree.php" hash="c7748f2727f04dc6abd56f7857a83fc6"/><file name="06_product_relation.php" hash="e8e82e554b7da081ad41490255233686"/><file name="07_sibling_relation.php" hash="44840138eaed0a057d6435107e9e0bf0"/><file name="08_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="V2"><file name="01_top.php" hash="e9b8c7bcd7cc8a16bcd0d88f3f889981"/><file name="02_product_relation.php" hash="cdf0cbb621852613df86f91988463608"/><file name="03_sibling_relation.php" hash="c323564cb482d85f774415585ed2b1df"/><file name="04_footer.php" hash="6a6c4437c80ae02dc771877d93a38b6c"/></dir></dir><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="api"><file name="01_top.xml" hash="7836cc079929002f49056da0be781555"/><file name="02_entity_api.xml" hash="56522fd929feb8847a9b967cf476b43f"/><file name="03_resource_alias.xml" hash="b5a94f1f1ce1b7cc87fca2c80e98027a"/><file name="04_entity_resource_alias.xml" hash="532ce8db90f811adc74dc024b7024602"/><file name="05_v2.xml" hash="5fbe5be841e5295fbc5ea8d2ae85543b"/><file name="06_v2_entity.xml" hash="0d5d9f9f702c83233a18e38bc3d5c2cb"/><file name="07_acl.xml" hash="f901a483416fdaed90b5777c3bc8a8e2"/><file name="08_acl_entity.xml" hash="6c30398b3df24d454653a2a56f3fe790"/><file name="09_footer.xml" hash="080e838a7ed6930c7bf9cf17e4c6c7e8"/></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 name="wsdl"><file name="01_top.xml" hash="032cf4d009950a895bcc746d14520c4a"/><file name="02_entity_types.xml" hash="da926f1d401ef0cf6981478e600ce590"/><file name="03_schema_footer.xml" hash="11cdc73afaf5c18317842cfa4bdb18c5"/><file name="04_entity_messages.xml" hash="c6a3c8f421237712c9b6d0c18ffee1b3"/><file name="05_porttype_top.xml" hash="a0f28bf86ea809a274f5ace26c1151a1"/><file name="06_porttype_entity.xml" hash="a12705979c73a95665bfb0acec67020a"/><file name="07_porttype_footer.xml" hash="edd2f81a01c7a7ab53ac219e3858eac1"/><file name="08_binding_top.xml" hash="eb9eb6fbf3658ac82c81c7618452215a"/><file name="09_entity_binding.xml" hash="f8b0190d1667c74d566f01734f99f48e"/><file name="10_footer.xml" hash="2211f6d3fd443d15bcdcc05a5d51688a"/></dir><dir name="wsi"><file name="01_top.xml" hash="1114adc81809072b93634c4ef3f2e4c5"/><file name="02_entity_types.xml" hash="267596c149eaa51cd68289ea18f0ed99"/><file name="03_schema_footer.xml" hash="0f0f2308f6bce8a1913b262bf82b3a27"/><file name="04_entity_messages.xml" hash="fd238b2d37b4e5bc5cd4d40b1c98ce75"/><file name="05_porttype_top.xml" hash="d531a165007b9599c8d5d99217f8d351"/><file name="06_porttype_entity.xml" hash="df8ef427f5d23245e52a001eeaefbcdb"/><file name="07_porttype_footer.xml" hash="edff616a12bdb1606c4e3d29e5f334bc"/><file name="08_binding_top.xml" hash="8634ae067a9a45d2321e46a3e07e856c"/><file name="09_entity_binding.xml" hash="1affab4357607e1b491b502f7789e4c8"/><file name="10_footer.xml" hash="1022e110706ee7f3cb1edfa2d491e31f"/></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="e3465d0427eadb644654d8e614f6a209"/><file name="13_url_rewrite.csv" hash="87e5df1e3e95f0751f362b5acf37ddce"/><file name="14_api.csv" hash="58e27bb8ef0a04a711e20207dce037a4"/><file name="15_api_entity.csv" hash="5f79e38c8a97f2e171eedc2d5246910d"/><file name="16_api_product_related.csv" hash="f6875de876ab6e34595e5513aa35628b"/><file name="17_api_tree.csv" hash="99f44156e5181aa598f1d217b8c1cbc7"/><file name="18_api_sibling.csv" hash="096605fae72bf35317dc4601406a23d0"/></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="b04acac63e000066b607f12788be6d24"/><file name="system.xml" hash="cd7ac112cc90b7ce4de307800d0ee584"/></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="ca653f56e1ad2fb6c6e54c64a462e9eb"/></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="8938a6c3ad159fe924edb13983acadfb"/></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="f2259e0ec25ae1812bf192bdddb1fa7a"/></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.6.0</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/MIT">MIT License</license>
|
7 |
<channel>community</channel>
|
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>Features:
|
12 |
+
- DDL install scripts for generated entity
|
13 |
+
- enable entities by store view (similar to CMS pages)
|
14 |
+
- meta title for admin pages
|
15 |
+
Bug fixes: 
|
16 |
+
- errors in some function documentations
|
17 |
+
Refactoring: 
|
18 |
+
- moved meta information to separate tab.
|
19 |
+
- completed the help tab
|
20 |
+
</notes>
|
21 |
<authors><author><name>Marius Strajeru</name><user>tzyganu</user><email>tzyganu@gmail.com</email></author></authors>
|
22 |
+
<date>2013-04-19</date>
|
23 |
+
<time>09:52:54</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="db70512d5a1123e8065c2237b0ce5960"/><file name="Country.php" hash="f1d8b4418c223baafed7c218acf1b640"/><file name="Decimal.php" hash="54d30f34faa1b998073a78a9abdb13b8"/><file name="File.php" hash="a8e18228577beb612f202acbe0ddb41a"/><file name="Image.php" hash="80211878524ee9ed71096d30b1c52c42"/><file name="Int.php" hash="754778ace18f36c77e5de96c2ccc4273"/><file name="Text.php" hash="237217feda93dadf93a63f181ebb8793"/><file name="Textarea.php" hash="befe5d84f69efc1a85b7f258b50ff950"/><file name="Timestamp.php" hash="05759eaa9d07cee6c47764eaaab5c292"/><file name="Website.php" hash="2ea3d85dd5e2ffa846a3da376e70ffcd"/><file name="Yesno.php" hash="689678378cfabfb54575653d109d79cf"/></dir></dir><file name="Attribute.php" hash="14b859fbda32ab06c8587e36151e6a97"/><file name="Entity.php" hash="1cc5c1021a30bd6653038a1ff1023761"/><dir name="Module"><file name="Collection.php" hash="0e413b976cbc9649ec982fe0f4b95dd1"/></dir><file name="Module.php" hash="f1058e525ad61b024da12b3fb3201cce"/><file name="Relation.php" hash="d026e9113cf9ad8c65fc4c78bdac5852"/><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="a0d41475e12aed3a33d53f356f620995"/><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="13336661cfaf0f25ceef484d28d1f99f"/><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_stores.php" hash="48e5e8e12b9d544496da7ee1a4997868"/><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="Meta"><file name="01_content.php" hash="3c47ce08d25eb90d91629e0647a01d5c"/></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 name="Stores"><file name="01_content.php" hash="db8bf44c310b5e2522bd1dd643af5a93"/></dir></dir><dir name="Tabs"><file name="01_top.php" hash="7cecbd5b68dc09c4e9a14f214b3b70df"/><file name="02_seo.php" hash="e6aaeed55a764190ba6bdd5e6b78188f"/><file name="03_stores.php" hash="0bc0c76c3fd28ef2147c9112ee7aa073"/><file name="04_relations_tabs.php" hash="3f1eba9e9a7bf177185364cffc8468ba"/><file name="05_product_relation.php" hash="aee681c7021e9efad07a39bc8f8cf56d"/><file name="06_footer.php" hash="01b6273dfbf342c1f984c1e10b631b65"/><dir name="IsTree"><file name="01_top.php" hash="e2f945070c544afb320959d6f410587b"/><file name="02_seo.php" hash="e6aaeed55a764190ba6bdd5e6b78188f"/><file name="03_stores.php" hash="0bc0c76c3fd28ef2147c9112ee7aa073"/><file name="04_relations_tabs.php" hash="50d5a9065062cf44f11a8aba92140790"/><file name="05_product_relation.php" hash="c5dc78d7c883af529b3adf72770d3dde"/><file name="06_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_stores.php" hash="083304c47194a612232e1554b3afdc70"/><file name="08_created_at.php" hash="15f2bf1aeab4512931cfd13461466dbf"/><file name="09_updated_at.php" hash="b416ed24d9613f8332f4191f0378c1a3"/><file name="10_grid_actions.php" hash="fbc479c06560e193e4c2177358eadc07"/><file name="11_grid_export.php" hash="3da336230cb919e5dd36e39d21ea3f0e"/><file name="12_columns_footer.php" hash="1cdf225b4a61a0036903c4e251484684"/><file name="13_mass_action_top.php" hash="4979fc362c7c0666bcfe39e89f3a88f4"/><file name="14_mass_action_status.php" hash="d504216f92f489be7857bee37cf0771c"/><file name="15_mass_action_flags.php" hash="9b0d9088708f5e84b50e7ac6ee06a632"/><file name="16_mass_action_parents.php" hash="7b36b4b3954e3913e6bdafb822ca6634"/><file name="17_footer.php" hash="671e5e1d49c4023a016c0bd1fb53fb31"/></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="cf1a5893817a61c410f0ea5071cd75f6"/><file name="04_status.php" hash="6fb78962dd9ffb30ee5d750876a26e5d"/><file name="05_footer.php" hash="5d257efc9e4b41bf2a0efb46190e59ec"/><dir name="IsTree"><file name="01_content.php" hash="f16e81972cc4add59cefc51e37599547"/></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="9f3fdfa832ef7be2e51a4807d87f4248"/><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="70e1c31772d2afaf9f27af0d5f83939c"/><file name="02_status.php" hash="716a6a2f8243c5048f90584f0bd7f888"/><file name="03_footer.php" hash="369738e4147fd032b12c1df4aa01ed9c"/><dir name="IsTree"><file name="01_top.php" hash="70e1c31772d2afaf9f27af0d5f83939c"/><file name="02_status.php" hash="716a6a2f8243c5048f90584f0bd7f888"/><file name="03_center.php" hash="8d06ad36d30a8e242a28284ed852d02d"/><file name="04_status_draw.php" hash="05f41e4fa26f8644069191a7621b6e3f"/><file name="05_children.php" hash="b59bb1c9e92637ceab3196618b8deee7"/><file name="06_active_children.php" hash="b94240db116938724f17c956514b3919"/><file name="07_active_children_no_status.php" hash="11df90ae4209241f1a3361523e9b490c"/><file name="08_footer.php" hash="90180c9a604e490752cf905fd3410efd"/></dir></dir><dir name="Rss"><file name="01_top.php" hash="3fafe99eb2eca968647283a10e847ad5"/><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="7ef1885e33a674dc952230c7a50aca81"/><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="17469d98f81368c7e35deb1b7321cc19"/></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="09f99a030f1e9e09864cee3e5f92457c"/><file name="15_tree.php" hash="c577ef6c4d67da82d5226162345ef896"/><file name="16_tree_status.php" hash="64da48d68c1af82304cea4ee2c21800e"/><file name="17_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="Api"><file name="01_top.php" hash="c1956fcb05a9cb5130a2b736875deff7"/><file name="02_product_relation_info.php" hash="1c7bc902ac26ce46dfa0d7fc9928550b"/><file name="03_sibling_info.php" hash="e47f87465f7bc8ef58513290f79059a3"/><file name="04_info_footer.php" hash="f86ab31eddfc4e564e856d6e2e7dae19"/><file name="05_tree.php" hash="c7748f2727f04dc6abd56f7857a83fc6"/><file name="06_product_relation.php" hash="e8e82e554b7da081ad41490255233686"/><file name="07_sibling_relation.php" hash="44840138eaed0a057d6435107e9e0bf0"/><file name="08_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="V2"><file name="01_top.php" hash="e9b8c7bcd7cc8a16bcd0d88f3f889981"/><file name="02_product_relation.php" hash="cdf0cbb621852613df86f91988463608"/><file name="03_sibling_relation.php" hash="c323564cb482d85f774415585ed2b1df"/><file name="04_footer.php" hash="6a6c4437c80ae02dc771877d93a38b6c"/></dir></dir><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="c52e8b2694802192d4e4abe8ea0bac35"/><file name="04_not_tree.php" hash="d7860bfbba616ec75aaa23480d35e462"/><file name="05_tree.php" hash="153094ca24b380a2708ecb7532aaca18"/><file name="06_tree_before_save_no_url_rewrite.php" hash="721b246ab7c8011faa810f9c509cbc76"/><file name="07_tree_before_save_url_rewrite.php" hash="872a4a6d7b408bf621a52739e5d8438a"/><file name="08_children_no_status.php" hash="41b492cea369e6303ad444b16f016857"/><file name="09_children_status.php" hash="61bfda77779840f9855311137112979e"/><file name="10_content.php" hash="ad6a926a11cf4ca722b896a78bbeadab"/><file name="11_url_rewrite_status.php" hash="e32e6c2ce2419fa01181a6bc62236c07"/><file name="12_url_rewrite_not_status.php" hash="81e1b3574fb2766760b7baf9b56b89ea"/><file name="13_url_rewrite_before_save_not_tree.php" hash="2d51e7bda2f717d22bd17593851f65fa"/><file name="14_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/><dir name="Collection"><file name="01_top.php" hash="d07e1e18d79b3be34193b78ff2bb0a34"/><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="ec13ef4bc7eb96364605b8e6d214c9fb"/><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="0662fc91f7ef5090d5b74be7c971d3b9"/><file name="03_footer.php" hash="cbb184dd8e05c9709e5dcaedaa0495cf"/></dir></dir><dir name="EntityController"><file name="01_top.php" hash="10fa062eef953d4236da1dfc135717d1"/><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="b4f42e91747b48665a6287faf0342bc0"/><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="e651cfbf97dc7451b38974611a1be692"/><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="64c7b0b4222d351b20885b51a6153158"/><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="api"><file name="01_top.xml" hash="7836cc079929002f49056da0be781555"/><file name="02_entity_api.xml" hash="56522fd929feb8847a9b967cf476b43f"/><file name="03_resource_alias.xml" hash="b5a94f1f1ce1b7cc87fca2c80e98027a"/><file name="04_entity_resource_alias.xml" hash="532ce8db90f811adc74dc024b7024602"/><file name="05_v2.xml" hash="5fbe5be841e5295fbc5ea8d2ae85543b"/><file name="06_v2_entity.xml" hash="0d5d9f9f702c83233a18e38bc3d5c2cb"/><file name="07_acl.xml" hash="f901a483416fdaed90b5777c3bc8a8e2"/><file name="08_acl_entity.xml" hash="6c30398b3df24d454653a2a56f3fe790"/><file name="09_footer.xml" hash="080e838a7ed6930c7bf9cf17e4c6c7e8"/></dir><dir name="config"><file name="01_top.xml" hash="ab60a876013ce736e83c89e6e9be4e25"/><file name="02_tables.xml" hash="806cef86423c771c8909ba69b6780dee"/><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 name="wsdl"><file name="01_top.xml" hash="032cf4d009950a895bcc746d14520c4a"/><file name="02_entity_types.xml" hash="da926f1d401ef0cf6981478e600ce590"/><file name="03_schema_footer.xml" hash="11cdc73afaf5c18317842cfa4bdb18c5"/><file name="04_entity_messages.xml" hash="c6a3c8f421237712c9b6d0c18ffee1b3"/><file name="05_porttype_top.xml" hash="a0f28bf86ea809a274f5ace26c1151a1"/><file name="06_porttype_entity.xml" hash="a12705979c73a95665bfb0acec67020a"/><file name="07_porttype_footer.xml" hash="edd2f81a01c7a7ab53ac219e3858eac1"/><file name="08_binding_top.xml" hash="eb9eb6fbf3658ac82c81c7618452215a"/><file name="09_entity_binding.xml" hash="f8b0190d1667c74d566f01734f99f48e"/><file name="10_footer.xml" hash="2211f6d3fd443d15bcdcc05a5d51688a"/></dir><dir name="wsi"><file name="01_top.xml" hash="1114adc81809072b93634c4ef3f2e4c5"/><file name="02_entity_types.xml" hash="267596c149eaa51cd68289ea18f0ed99"/><file name="03_schema_footer.xml" hash="0f0f2308f6bce8a1913b262bf82b3a27"/><file name="04_entity_messages.xml" hash="fd238b2d37b4e5bc5cd4d40b1c98ce75"/><file name="05_porttype_top.xml" hash="d531a165007b9599c8d5d99217f8d351"/><file name="06_porttype_entity.xml" hash="bef6725d39c1b96cac3694cf707ea78a"/><file name="07_porttype_footer.xml" hash="edff616a12bdb1606c4e3d29e5f334bc"/><file name="08_binding_top.xml" hash="8634ae067a9a45d2321e46a3e07e856c"/><file name="09_entity_binding.xml" hash="1affab4357607e1b491b502f7789e4c8"/><file name="10_footer.xml" hash="1022e110706ee7f3cb1edfa2d491e31f"/></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="fe0cd5718f68e347f92118de3ebcdbd7"/><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 name="install-0.0.1-ddl"><file name="01_top.php" hash="50cec9cf47ccb1001b16c156bd792210"/><file name="02_entity.php" hash="6497a1f379b9e4d7bb35d98ad28e6767"/><file name="03_product_relation.php" hash="844585191b8c338c895e59c7162b54ab"/><file name="04_sibling_relation.php" hash="9a31f0b23781ef937045d26a48c5dcd1"/><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="f38bee4515bcc54da7f781a0bac1da66"/><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="1c5889d31d3410540715b6c866966178"/><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="e3465d0427eadb644654d8e614f6a209"/><file name="13_url_rewrite.csv" hash="87e5df1e3e95f0751f362b5acf37ddce"/><file name="14_api.csv" hash="58e27bb8ef0a04a711e20207dce037a4"/><file name="15_api_entity.csv" hash="5f79e38c8a97f2e171eedc2d5246910d"/><file name="16_api_product_related.csv" hash="f6875de876ab6e34595e5513aa35628b"/><file name="17_api_tree.csv" hash="99f44156e5181aa598f1d217b8c1cbc7"/><file name="18_api_sibling.csv" hash="096605fae72bf35317dc4601406a23d0"/></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="4022f41d69e77fd0d9e5ef130687c978"/><file name="system.xml" hash="5446234bd875fb0740fc7430a019f987"/></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="ca653f56e1ad2fb6c6e54c64a462e9eb"/></dir><file name="entities.phtml" hash="df9179ffd5e72a04cf4740488521f0ce"/><file name="help.phtml" hash="f57b75302fc0e90e2cb5bba49946cd82"/><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="0a37d4e248c2dcccc63dac60ddbc3b3f"/></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="f2259e0ec25ae1812bf192bdddb1fa7a"/></dir></target></contents>
|
25 |
<compatible/>
|
26 |
<dependencies><required><php><min>5.0.0</min><max>7.0.0</max></php></required></dependencies>
|
27 |
</package>
|