Showing preview only (2,185K chars total). Download the full file or copy to clipboard to get everything.
Repository: tzyganu/UMC1.9
Branch: master
Commit: 205ddbb68dc9
Files: 775
Total size: 1.8 MB
Directory structure:
gitextract_j1h_l5sq/
├── .gitignore
├── LICENSE_UMC
├── README.md
├── app/
│ ├── code/
│ │ └── community/
│ │ └── Ultimate/
│ │ └── ModuleCreator/
│ │ ├── Block/
│ │ │ └── Adminhtml/
│ │ │ ├── Modulecreator/
│ │ │ │ ├── Edit/
│ │ │ │ │ ├── Form.php
│ │ │ │ │ ├── Tab/
│ │ │ │ │ │ ├── Entities/
│ │ │ │ │ │ │ ├── Entity/
│ │ │ │ │ │ │ │ └── Attribute.php
│ │ │ │ │ │ │ └── Entity.php
│ │ │ │ │ │ ├── Entities.php
│ │ │ │ │ │ ├── Help/
│ │ │ │ │ │ │ └── Fieldset.php
│ │ │ │ │ │ ├── Help.php
│ │ │ │ │ │ ├── Relation.php
│ │ │ │ │ │ └── Settings.php
│ │ │ │ │ └── Tabs.php
│ │ │ │ ├── Edit.php
│ │ │ │ ├── Grid/
│ │ │ │ │ └── Column/
│ │ │ │ │ └── Renderer/
│ │ │ │ │ └── Download.php
│ │ │ │ ├── Grid.php
│ │ │ │ ├── Menu.php
│ │ │ │ └── System/
│ │ │ │ └── Config/
│ │ │ │ └── Form/
│ │ │ │ └── Fieldset/
│ │ │ │ ├── Abstract.php
│ │ │ │ ├── Attribute.php
│ │ │ │ ├── Entity.php
│ │ │ │ └── Settings.php
│ │ │ └── Modulecreator.php
│ │ ├── Exception.php
│ │ ├── Helper/
│ │ │ └── Data.php
│ │ ├── Model/
│ │ │ ├── Abstract.php
│ │ │ ├── Attribute/
│ │ │ │ └── Type/
│ │ │ │ ├── Abstract.php
│ │ │ │ ├── Country.php
│ │ │ │ ├── Decimal.php
│ │ │ │ ├── Dropdown/
│ │ │ │ │ ├── Abstract.php
│ │ │ │ │ ├── Category.php
│ │ │ │ │ ├── Custom.php
│ │ │ │ │ ├── Customer.php
│ │ │ │ │ └── Product.php
│ │ │ │ ├── Dropdown.php
│ │ │ │ ├── File.php
│ │ │ │ ├── Image.php
│ │ │ │ ├── Int.php
│ │ │ │ ├── Multiselect.php
│ │ │ │ ├── Signedint.php
│ │ │ │ ├── Text.php
│ │ │ │ ├── Textarea.php
│ │ │ │ ├── Timestamp.php
│ │ │ │ └── Yesno.php
│ │ │ ├── Attribute.php
│ │ │ ├── Config.php
│ │ │ ├── Entity/
│ │ │ │ └── Type/
│ │ │ │ ├── Abstract.php
│ │ │ │ ├── Eav.php
│ │ │ │ └── Flat.php
│ │ │ ├── Entity.php
│ │ │ ├── Module/
│ │ │ │ └── Collection.php
│ │ │ ├── Module.php
│ │ │ ├── Relation.php
│ │ │ ├── Source/
│ │ │ │ ├── Attribute/
│ │ │ │ │ ├── Scope.php
│ │ │ │ │ ├── Type.php
│ │ │ │ │ └── Value/
│ │ │ │ │ └── Source.php
│ │ │ │ ├── Codepool.php
│ │ │ │ ├── Entity/
│ │ │ │ │ ├── Layout.php
│ │ │ │ │ ├── Menu.php
│ │ │ │ │ └── Type.php
│ │ │ │ └── Install.php
│ │ │ └── Writer.php
│ │ ├── controllers/
│ │ │ └── Adminhtml/
│ │ │ └── ModulecreatorController.php
│ │ └── etc/
│ │ ├── adminhtml.xml
│ │ ├── config.xml
│ │ ├── jstranslator.xml
│ │ ├── source/
│ │ │ ├── app/
│ │ │ │ ├── code/
│ │ │ │ │ ├── Block/
│ │ │ │ │ │ ├── Adminhtml/
│ │ │ │ │ │ │ ├── Catalog/
│ │ │ │ │ │ │ │ ├── Category/
│ │ │ │ │ │ │ │ │ └── Tab/
│ │ │ │ │ │ │ │ │ └── Entity/
│ │ │ │ │ │ │ │ │ ├── 010_tree
│ │ │ │ │ │ │ │ │ └── 020_not_tree
│ │ │ │ │ │ │ │ └── Product/
│ │ │ │ │ │ │ │ └── Edit/
│ │ │ │ │ │ │ │ └── Tab/
│ │ │ │ │ │ │ │ └── Entity/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_not_tree
│ │ │ │ │ │ │ │ ├── 030_tree
│ │ │ │ │ │ │ │ └── 040_footer
│ │ │ │ │ │ │ ├── Entity/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_eav
│ │ │ │ │ │ │ │ ├── 030_footer
│ │ │ │ │ │ │ │ ├── Abstract/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ ├── Attribute/
│ │ │ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ │ │ ├── Edit/
│ │ │ │ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ │ │ │ ├── Form/
│ │ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ │ ├── Tab/
│ │ │ │ │ │ │ │ │ │ │ ├── Main/
│ │ │ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ │ │ └── Options/
│ │ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ │ └── Tabs/
│ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ └── Grid/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ ├── Comment/
│ │ │ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ │ │ ├── Edit/
│ │ │ │ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ │ │ │ ├── Form/
│ │ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ │ ├── Tab/
│ │ │ │ │ │ │ │ │ │ │ ├── Form/
│ │ │ │ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ │ │ │ ├── 020_stores
│ │ │ │ │ │ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ │ │ │ │ │ └── Stores/
│ │ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ │ └── Tabs/
│ │ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ │ ├── 020_stores
│ │ │ │ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ │ │ │ └── Grid/
│ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ ├── 013_store_data
│ │ │ │ │ │ │ │ │ ├── 016_prepare
│ │ │ │ │ │ │ │ │ ├── 020_stores
│ │ │ │ │ │ │ │ │ ├── 030_content
│ │ │ │ │ │ │ │ │ ├── 040_store_filter
│ │ │ │ │ │ │ │ │ └── 050_footer
│ │ │ │ │ │ │ │ ├── Edit/
│ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ ├── 020_tree
│ │ │ │ │ │ │ │ │ ├── 030_not_tree
│ │ │ │ │ │ │ │ │ ├── Form/
│ │ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ │ ├── 020_prepare_form
│ │ │ │ │ │ │ │ │ │ ├── 025_prepare_form_eav
│ │ │ │ │ │ │ │ │ │ ├── 030_tree_top
│ │ │ │ │ │ │ │ │ │ ├── 040_product_relation
│ │ │ │ │ │ │ │ │ │ ├── 050_entity_relation
│ │ │ │ │ │ │ │ │ │ └── 060_footer
│ │ │ │ │ │ │ │ │ ├── Tab/
│ │ │ │ │ │ │ │ │ │ ├── Attributes/
│ │ │ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ │ │ ├── 020_tree
│ │ │ │ │ │ │ │ │ │ │ ├── 021_default_values
│ │ │ │ │ │ │ │ │ │ │ ├── 022_default_values_tree
│ │ │ │ │ │ │ │ │ │ │ ├── 023_layout
│ │ │ │ │ │ │ │ │ │ │ ├── 025_after_html_top
│ │ │ │ │ │ │ │ │ │ │ ├── 026_after_html
│ │ │ │ │ │ │ │ │ │ │ ├── 027_after_html_footer
│ │ │ │ │ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ │ │ │ │ ├── Categories/
│ │ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ │ ├── Form/
│ │ │ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ │ │ ├── 020_image
│ │ │ │ │ │ │ │ │ │ │ ├── 030_file
│ │ │ │ │ │ │ │ │ │ │ ├── 040_wysiwyg
│ │ │ │ │ │ │ │ │ │ │ ├── 050_wysiwyg_is_tree
│ │ │ │ │ │ │ │ │ │ │ ├── 060_path_tree
│ │ │ │ │ │ │ │ │ │ │ ├── 070_parents
│ │ │ │ │ │ │ │ │ │ │ ├── 080_attributes
│ │ │ │ │ │ │ │ │ │ │ ├── 090_url_rewrite
│ │ │ │ │ │ │ │ │ │ │ ├── 100_status
│ │ │ │ │ │ │ │ │ │ │ ├── 110_rss
│ │ │ │ │ │ │ │ │ │ │ ├── 120_stores
│ │ │ │ │ │ │ │ │ │ │ ├── 130_allow_comment
│ │ │ │ │ │ │ │ │ │ │ ├── 140_add_values_not_tree
│ │ │ │ │ │ │ │ │ │ │ ├── 150_add_values_tree
│ │ │ │ │ │ │ │ │ │ │ ├── 160_get_entity_tree
│ │ │ │ │ │ │ │ │ │ │ └── 170_footer
│ │ │ │ │ │ │ │ │ │ ├── Meta/
│ │ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ │ ├── Product/
│ │ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ │ ├── Sibling/
│ │ │ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ │ │ ├── 020_not_tree
│ │ │ │ │ │ │ │ │ │ │ ├── 030_tree
│ │ │ │ │ │ │ │ │ │ │ └── 040_footer
│ │ │ │ │ │ │ │ │ │ └── Stores/
│ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ └── Tabs/
│ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ ├── 020_flat_not_tree_prepare
│ │ │ │ │ │ │ │ │ ├── 030_flat_tree_prepare
│ │ │ │ │ │ │ │ │ ├── 040_eav_prepare_top
│ │ │ │ │ │ │ │ │ ├── 042_eav_tree_prepare_top
│ │ │ │ │ │ │ │ │ ├── 043_eav_seo_prepare
│ │ │ │ │ │ │ │ │ ├── 047_eav_prepare_bottom
│ │ │ │ │ │ │ │ │ ├── 048_eav_prepare_bottom_tree
│ │ │ │ │ │ │ │ │ ├── 049_eav_prepare_real_bottom
│ │ │ │ │ │ │ │ │ ├── 050_seo
│ │ │ │ │ │ │ │ │ ├── 055_seo_eav
│ │ │ │ │ │ │ │ │ ├── 060_stores
│ │ │ │ │ │ │ │ │ ├── 070_relation_not_tree
│ │ │ │ │ │ │ │ │ ├── 080_relation_tree
│ │ │ │ │ │ │ │ │ ├── 090_product_relation_not_tree
│ │ │ │ │ │ │ │ │ ├── 100_product_relation_tree
│ │ │ │ │ │ │ │ │ ├── 110_category_relation_not_tree
│ │ │ │ │ │ │ │ │ ├── 120_category_relation_tree
│ │ │ │ │ │ │ │ │ ├── 130_end_prepare_not_tree
│ │ │ │ │ │ │ │ │ ├── 140_end_prepare_tree
│ │ │ │ │ │ │ │ │ └── 150_footer
│ │ │ │ │ │ │ │ ├── Grid/
│ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ ├── 020_parents
│ │ │ │ │ │ │ │ │ ├── 030_name_attribute
│ │ │ │ │ │ │ │ │ ├── 040_grid_attributes
│ │ │ │ │ │ │ │ │ ├── 050_url_rewrite
│ │ │ │ │ │ │ │ │ ├── 060_stores
│ │ │ │ │ │ │ │ │ ├── 070_created_at
│ │ │ │ │ │ │ │ │ ├── 080_updated_at
│ │ │ │ │ │ │ │ │ ├── 090_columns_footer
│ │ │ │ │ │ │ │ │ ├── 100_eav_functions
│ │ │ │ │ │ │ │ │ ├── 110_mass_action_top
│ │ │ │ │ │ │ │ │ ├── 120_mass_action_flags
│ │ │ │ │ │ │ │ │ ├── 130_mass_action_parents
│ │ │ │ │ │ │ │ │ ├── 140_collection_end
│ │ │ │ │ │ │ │ │ ├── 145_collection_walk
│ │ │ │ │ │ │ │ │ ├── 150_store_filter
│ │ │ │ │ │ │ │ │ └── 160_footer
│ │ │ │ │ │ │ │ ├── Helper/
│ │ │ │ │ │ │ │ │ ├── File/
│ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ └── Image/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ ├── Tree/
│ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ ├── 020_store_switcher
│ │ │ │ │ │ │ │ │ ├── 030_content
│ │ │ │ │ │ │ │ │ ├── 040_eav
│ │ │ │ │ │ │ │ │ ├── 050_methods
│ │ │ │ │ │ │ │ │ ├── 060_store_switcher_block
│ │ │ │ │ │ │ │ │ └── 070_footer
│ │ │ │ │ │ │ │ └── Widget/
│ │ │ │ │ │ │ │ └── Chooser/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_not_tree
│ │ │ │ │ │ │ │ ├── 030_not_tree_eav
│ │ │ │ │ │ │ │ ├── 040_not_tree_content
│ │ │ │ │ │ │ │ ├── 050_not_tree_store
│ │ │ │ │ │ │ │ ├── 060_not_tree_footer
│ │ │ │ │ │ │ │ ├── 070_not_tree_flat
│ │ │ │ │ │ │ │ ├── 080_tree
│ │ │ │ │ │ │ │ └── 090_footer
│ │ │ │ │ │ │ ├── Helper/
│ │ │ │ │ │ │ │ ├── Column/
│ │ │ │ │ │ │ │ │ └── Renderer/
│ │ │ │ │ │ │ │ │ ├── Parent/
│ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ └── Relation/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ └── Wysiwyg/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── Module/
│ │ │ │ │ │ │ ├── Helper/
│ │ │ │ │ │ │ │ └── Form/
│ │ │ │ │ │ │ │ └── Wysiwyg/
│ │ │ │ │ │ │ │ └── Content/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── Renderer/
│ │ │ │ │ │ │ └── Fieldset/
│ │ │ │ │ │ │ └── Element/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── Catalog/
│ │ │ │ │ │ │ ├── Category/
│ │ │ │ │ │ │ │ └── List/
│ │ │ │ │ │ │ │ └── Entity/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_store
│ │ │ │ │ │ │ │ ├── 030_eav
│ │ │ │ │ │ │ │ ├── 040_not_eav
│ │ │ │ │ │ │ │ └── 050_footer
│ │ │ │ │ │ │ └── Product/
│ │ │ │ │ │ │ └── List/
│ │ │ │ │ │ │ └── Entity/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_store
│ │ │ │ │ │ │ ├── 030_eav
│ │ │ │ │ │ │ ├── 040_not_eav
│ │ │ │ │ │ │ └── 050_footer
│ │ │ │ │ │ ├── Entity/
│ │ │ │ │ │ │ ├── Catalog/
│ │ │ │ │ │ │ │ ├── Category/
│ │ │ │ │ │ │ │ │ └── List/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ └── Product/
│ │ │ │ │ │ │ │ └── List/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Child/
│ │ │ │ │ │ │ │ └── List/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Children/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Comment/
│ │ │ │ │ │ │ │ ├── Form/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ └── List/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_stores
│ │ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ │ ├── Customer/
│ │ │ │ │ │ │ │ └── Comment/
│ │ │ │ │ │ │ │ ├── List/
│ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ ├── 020_store
│ │ │ │ │ │ │ │ │ ├── 030_filter_eav
│ │ │ │ │ │ │ │ │ ├── 040_filter_flat
│ │ │ │ │ │ │ │ │ └── 050_footer
│ │ │ │ │ │ │ │ └── View/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── List/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_stores
│ │ │ │ │ │ │ │ ├── 030_attributes
│ │ │ │ │ │ │ │ ├── 040_status
│ │ │ │ │ │ │ │ ├── 050_not_tree
│ │ │ │ │ │ │ │ ├── 060_tree_flat
│ │ │ │ │ │ │ │ ├── 070_tree_eav
│ │ │ │ │ │ │ │ └── 080_footer
│ │ │ │ │ │ │ ├── Rss/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_stores
│ │ │ │ │ │ │ │ ├── 025_eav
│ │ │ │ │ │ │ │ ├── 030_content
│ │ │ │ │ │ │ │ ├── 035_tree
│ │ │ │ │ │ │ │ ├── 040_attributes
│ │ │ │ │ │ │ │ └── 050_footer
│ │ │ │ │ │ │ ├── Sibling/
│ │ │ │ │ │ │ │ └── List/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── View/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── Widget/
│ │ │ │ │ │ │ ├── Link/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Subtree/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── View/
│ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ ├── 020_not_tree
│ │ │ │ │ │ │ ├── 030_tree
│ │ │ │ │ │ │ └── 040_footer
│ │ │ │ │ │ └── Rss/
│ │ │ │ │ │ └── 010_content
│ │ │ │ │ ├── Controller/
│ │ │ │ │ │ ├── Adminhtml/
│ │ │ │ │ │ │ └── Module/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ └── Router/
│ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ ├── 020_entity
│ │ │ │ │ │ └── 030_footer
│ │ │ │ │ ├── Helper/
│ │ │ │ │ │ ├── Category/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_content
│ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ ├── Data/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── Entity/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_create_list
│ │ │ │ │ │ │ ├── 030_breadcrumbs
│ │ │ │ │ │ │ ├── 040_tree
│ │ │ │ │ │ │ ├── 050_rss
│ │ │ │ │ │ │ ├── 060_file
│ │ │ │ │ │ │ ├── 070_eav
│ │ │ │ │ │ │ ├── 080_footer
│ │ │ │ │ │ │ └── Image/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── Image/
│ │ │ │ │ │ │ └── Abstract/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ └── Product/
│ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ ├── 020_content
│ │ │ │ │ │ └── 030_footer
│ │ │ │ │ ├── Model/
│ │ │ │ │ │ ├── Adminhtml/
│ │ │ │ │ │ │ ├── Observer/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_entity_product
│ │ │ │ │ │ │ │ ├── 030_entity_product_save
│ │ │ │ │ │ │ │ ├── 040_entity_product_save_tree
│ │ │ │ │ │ │ │ ├── 050_entity_category
│ │ │ │ │ │ │ │ ├── 055_entity_category_tree
│ │ │ │ │ │ │ │ ├── 060_entity_category_save
│ │ │ │ │ │ │ │ ├── 070_entity_category_save_tree
│ │ │ │ │ │ │ │ └── 080_footer
│ │ │ │ │ │ │ ├── Search/
│ │ │ │ │ │ │ │ └── Entity/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── Source/
│ │ │ │ │ │ │ └── Yesnodefault/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── Api2/
│ │ │ │ │ │ │ └── Entity/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_eav
│ │ │ │ │ │ │ ├── 030_footer
│ │ │ │ │ │ │ └── Rest/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 015_tree_filter
│ │ │ │ │ │ │ ├── 020_store_collection
│ │ │ │ │ │ │ ├── 030_collection_center
│ │ │ │ │ │ │ ├── 040_url
│ │ │ │ │ │ │ ├── 050_center
│ │ │ │ │ │ │ ├── 060_eav
│ │ │ │ │ │ │ ├── 070_load
│ │ │ │ │ │ │ ├── 080_store
│ │ │ │ │ │ │ ├── 090_footer
│ │ │ │ │ │ │ ├── Admin/
│ │ │ │ │ │ │ │ └── V1/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_tree_filter
│ │ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ │ ├── Customer/
│ │ │ │ │ │ │ │ └── V1/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── Guest/
│ │ │ │ │ │ │ └── V1/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── Attribute/
│ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ └── Source/
│ │ │ │ │ │ │ └── Country/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── Entity/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_var_sibling
│ │ │ │ │ │ │ ├── 030_var_product_relation
│ │ │ │ │ │ │ ├── 040_var_category_relation
│ │ │ │ │ │ │ ├── 050_construct
│ │ │ │ │ │ │ ├── 060_url
│ │ │ │ │ │ │ ├── 070_url_rewrite
│ │ │ │ │ │ │ ├── 080_editors
│ │ │ │ │ │ │ ├── 090_after_save_top
│ │ │ │ │ │ │ ├── 100_after_save_product
│ │ │ │ │ │ │ ├── 110_after_save_category
│ │ │ │ │ │ │ ├── 120_after_save_sibling
│ │ │ │ │ │ │ ├── 130_after_save_footer
│ │ │ │ │ │ │ ├── 140_product_relation
│ │ │ │ │ │ │ ├── 150_category_relation
│ │ │ │ │ │ │ ├── 160_sibling_relation
│ │ │ │ │ │ │ ├── 163_children_relation
│ │ │ │ │ │ │ ├── 165_parent_relation
│ │ │ │ │ │ │ ├── 170_tree
│ │ │ │ │ │ │ ├── 175_eav_default_attribute_set
│ │ │ │ │ │ │ ├── 180_allow_comment
│ │ │ │ │ │ │ ├── 190_default_values
│ │ │ │ │ │ │ ├── 200_default_values_rss
│ │ │ │ │ │ │ ├── 210_default_values_comment
│ │ │ │ │ │ │ ├── 215_default_attribute_values
│ │ │ │ │ │ │ ├── 220_footer
│ │ │ │ │ │ │ ├── Api/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 013_eav
│ │ │ │ │ │ │ │ ├── 014_tree_filter
│ │ │ │ │ │ │ │ ├── 016_content
│ │ │ │ │ │ │ │ ├── 017_add_eav
│ │ │ │ │ │ │ │ ├── 018_add_end
│ │ │ │ │ │ │ │ ├── 019_update_eav
│ │ │ │ │ │ │ │ ├── 020_update_footer
│ │ │ │ │ │ │ │ ├── 024_product_relation_info
│ │ │ │ │ │ │ │ ├── 030_category_relation_info
│ │ │ │ │ │ │ │ ├── 040_sibling_info
│ │ │ │ │ │ │ │ ├── 050_info_footer
│ │ │ │ │ │ │ │ ├── 060_tree
│ │ │ │ │ │ │ │ ├── 070_product_relation
│ │ │ │ │ │ │ │ ├── 080_category_relation
│ │ │ │ │ │ │ │ ├── 090_sibling_relation
│ │ │ │ │ │ │ │ ├── 095_sibling_relation_tree
│ │ │ │ │ │ │ │ ├── 097_get_attributes
│ │ │ │ │ │ │ │ ├── 098_get_api_data_flat
│ │ │ │ │ │ │ │ ├── 099_get_api_data_eav
│ │ │ │ │ │ │ │ ├── 100_footer
│ │ │ │ │ │ │ │ └── V2/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_product_relation
│ │ │ │ │ │ │ │ ├── 030_category_relation
│ │ │ │ │ │ │ │ ├── 040_sibling_relation
│ │ │ │ │ │ │ │ └── 050_footer
│ │ │ │ │ │ │ ├── Attribute/
│ │ │ │ │ │ │ │ ├── Api/
│ │ │ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ │ │ └── V2/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ ├── Backend/
│ │ │ │ │ │ │ │ │ ├── File/
│ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ ├── Image/
│ │ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ │ └── Urlkey/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ └── Source/
│ │ │ │ │ │ │ │ └── Attributecode/
│ │ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ │ ├── 020_eav
│ │ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ │ ├── Category/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Comment/
│ │ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ │ └── Api/
│ │ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ │ └── V2/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Product/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Sibling/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── Source/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_eav
│ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ ├── Observer/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_entity
│ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ └── Resource/
│ │ │ │ │ │ ├── Attribute/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── Eav/
│ │ │ │ │ │ │ └── Attribute/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── Entity/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_tree_var
│ │ │ │ │ │ │ ├── 030_constructor
│ │ │ │ │ │ │ ├── 032_eav_construct
│ │ │ │ │ │ │ ├── 037_store
│ │ │ │ │ │ │ ├── 040_not_tree
│ │ │ │ │ │ │ ├── 045_before_save_multiple
│ │ │ │ │ │ │ ├── 050_tree
│ │ │ │ │ │ │ ├── 052_tree_store
│ │ │ │ │ │ │ ├── 053_tree_after
│ │ │ │ │ │ │ ├── 055_tree_eav
│ │ │ │ │ │ │ ├── 060_tree_before_save_no_url_rewrite
│ │ │ │ │ │ │ ├── 070_eav_tree_before_save_url_rewrite
│ │ │ │ │ │ │ ├── 080_tree_before_save_url_rewrite
│ │ │ │ │ │ │ ├── 090_content
│ │ │ │ │ │ │ ├── 100_url_rewrite
│ │ │ │ │ │ │ ├── 103_url_rewrite_store
│ │ │ │ │ │ │ ├── 107_url_rewrite_no_store
│ │ │ │ │ │ │ ├── 110_url_rewrite_before_save_not_tree
│ │ │ │ │ │ │ ├── 120_url_rewrite_eav
│ │ │ │ │ │ │ ├── 130_footer
│ │ │ │ │ │ │ ├── Attribute/
│ │ │ │ │ │ │ │ └── Collection/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Category/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_not_tree
│ │ │ │ │ │ │ │ ├── 030_tree
│ │ │ │ │ │ │ │ ├── 040_footer
│ │ │ │ │ │ │ │ └── Collection/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Collection/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_top_store
│ │ │ │ │ │ │ │ ├── 030_content
│ │ │ │ │ │ │ │ ├── 040_store
│ │ │ │ │ │ │ │ ├── 050_tree
│ │ │ │ │ │ │ │ ├── 060_not_tree
│ │ │ │ │ │ │ │ ├── 070_product_relation
│ │ │ │ │ │ │ │ ├── 080_category_relation
│ │ │ │ │ │ │ │ ├── 090_sibling_relation
│ │ │ │ │ │ │ │ └── 100_footer
│ │ │ │ │ │ │ ├── Comment/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_store
│ │ │ │ │ │ │ │ ├── 030_footer
│ │ │ │ │ │ │ │ ├── Collection/
│ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ ├── 020_top_store
│ │ │ │ │ │ │ │ │ ├── 030_content
│ │ │ │ │ │ │ │ │ ├── 040_store
│ │ │ │ │ │ │ │ │ └── 050_footer
│ │ │ │ │ │ │ │ └── Entity/
│ │ │ │ │ │ │ │ └── Collection/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_store_var
│ │ │ │ │ │ │ │ ├── 030_construct
│ │ │ │ │ │ │ │ ├── 040_construct_store
│ │ │ │ │ │ │ │ ├── 050_content
│ │ │ │ │ │ │ │ ├── 060_eav_title
│ │ │ │ │ │ │ │ ├── 070_more_content
│ │ │ │ │ │ │ │ ├── 073_select_count_store
│ │ │ │ │ │ │ │ ├── 075_select_sql
│ │ │ │ │ │ │ │ ├── 080_store_top
│ │ │ │ │ │ │ │ ├── 090_flat_store
│ │ │ │ │ │ │ │ ├── 100_store
│ │ │ │ │ │ │ │ ├── 110_filter
│ │ │ │ │ │ │ │ ├── 120_store_filter
│ │ │ │ │ │ │ │ └── 130_footer
│ │ │ │ │ │ │ ├── Product/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_not_tree
│ │ │ │ │ │ │ │ ├── 030_tree
│ │ │ │ │ │ │ │ ├── 040_footer
│ │ │ │ │ │ │ │ └── Collection/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── Sibling/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_save_relation
│ │ │ │ │ │ │ │ ├── 030_save_relation_tree
│ │ │ │ │ │ │ │ ├── 040_footer
│ │ │ │ │ │ │ │ └── Collection/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── Tree/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_eav
│ │ │ │ │ │ │ ├── 030_content
│ │ │ │ │ │ │ ├── 040_flat_collection
│ │ │ │ │ │ │ ├── 050_eav_collection
│ │ │ │ │ │ │ └── 060_footer
│ │ │ │ │ │ └── Setup/
│ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ ├── 020_eav_top
│ │ │ │ │ │ ├── 030_eav
│ │ │ │ │ │ ├── 040_eav_footer
│ │ │ │ │ │ └── 050_footer
│ │ │ │ │ ├── controllers/
│ │ │ │ │ │ ├── Adminhtml/
│ │ │ │ │ │ │ └── Module/
│ │ │ │ │ │ │ ├── Entity/
│ │ │ │ │ │ │ │ ├── AttributeController/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ ├── Catalog/
│ │ │ │ │ │ │ │ │ ├── CategoryController/
│ │ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ │ ├── 020_not_tree
│ │ │ │ │ │ │ │ │ │ ├── 030_tree
│ │ │ │ │ │ │ │ │ │ └── 040_footer
│ │ │ │ │ │ │ │ │ └── ProductController/
│ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ ├── 020_not_tree
│ │ │ │ │ │ │ │ │ ├── 030_tree
│ │ │ │ │ │ │ │ │ └── 040_footer
│ │ │ │ │ │ │ │ ├── CommentController/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ └── WidgetController/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_tree
│ │ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ │ ├── EntityControllerEavNotTree/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_save_product_relation
│ │ │ │ │ │ │ │ ├── 030_save_category_relation
│ │ │ │ │ │ │ │ ├── 040_sibling_save
│ │ │ │ │ │ │ │ ├── 045_sibling_save_tree
│ │ │ │ │ │ │ │ ├── 050_middle
│ │ │ │ │ │ │ │ ├── 060_mass_action
│ │ │ │ │ │ │ │ ├── 065_mass_parents
│ │ │ │ │ │ │ │ ├── 070_product_relation_actions
│ │ │ │ │ │ │ │ ├── 080_category_relation_actions
│ │ │ │ │ │ │ │ ├── 090_sibling_grid
│ │ │ │ │ │ │ │ ├── 100_sibling_actions_tree
│ │ │ │ │ │ │ │ └── 110_footer
│ │ │ │ │ │ │ ├── EntityControllerEavTree/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_product_data
│ │ │ │ │ │ │ │ ├── 030_category_data
│ │ │ │ │ │ │ │ ├── 040_sibling_data
│ │ │ │ │ │ │ │ ├── 045_sibling_data_tree
│ │ │ │ │ │ │ │ ├── 050_real_save
│ │ │ │ │ │ │ │ ├── 060_product_relation_action
│ │ │ │ │ │ │ │ ├── 070_category_relation_action
│ │ │ │ │ │ │ │ ├── 080_sibling_actions
│ │ │ │ │ │ │ │ └── 090_footer
│ │ │ │ │ │ │ ├── EntityControllerFlatNotTree/
│ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ ├── 020_upload_image
│ │ │ │ │ │ │ │ ├── 030_upload_files
│ │ │ │ │ │ │ │ ├── 040_save_product_relation
│ │ │ │ │ │ │ │ ├── 050_save_category_relation
│ │ │ │ │ │ │ │ ├── 060_save_sibling_relation
│ │ │ │ │ │ │ │ ├── 070_save_sibling_relation_tree
│ │ │ │ │ │ │ │ ├── 080_save
│ │ │ │ │ │ │ │ ├── 090_exception_upload
│ │ │ │ │ │ │ │ ├── 100_exception
│ │ │ │ │ │ │ │ ├── 110_center
│ │ │ │ │ │ │ │ ├── 120_mass_update
│ │ │ │ │ │ │ │ ├── 130_mass_parents
│ │ │ │ │ │ │ │ ├── 140_product_relation_actions
│ │ │ │ │ │ │ │ ├── 150_category_relation_actions
│ │ │ │ │ │ │ │ ├── 160_sibling_actions
│ │ │ │ │ │ │ │ ├── 170_sibling_actions_tree
│ │ │ │ │ │ │ │ └── 180_footer
│ │ │ │ │ │ │ └── EntityControllerFlatTree/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_wysiwyg
│ │ │ │ │ │ │ ├── 030_save
│ │ │ │ │ │ │ ├── 040_upload_image
│ │ │ │ │ │ │ ├── 050_upload_file
│ │ │ │ │ │ │ ├── 060_save_continue
│ │ │ │ │ │ │ ├── 070_product_data
│ │ │ │ │ │ │ ├── 080_category_data
│ │ │ │ │ │ │ ├── 090_sibling_data
│ │ │ │ │ │ │ ├── 095_sibling_data_tree
│ │ │ │ │ │ │ ├── 100_real_save
│ │ │ │ │ │ │ ├── 110_product_relation_action
│ │ │ │ │ │ │ ├── 120_category_relation_action
│ │ │ │ │ │ │ ├── 130_sibling_actions
│ │ │ │ │ │ │ ├── 135_sibling_actions_tree
│ │ │ │ │ │ │ └── 140_footer
│ │ │ │ │ │ ├── Entity/
│ │ │ │ │ │ │ └── Customer/
│ │ │ │ │ │ │ └── CommentController/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_entity_eav
│ │ │ │ │ │ │ ├── 030_entity_flat
│ │ │ │ │ │ │ ├── 040_store
│ │ │ │ │ │ │ ├── 050_entity_flat_store
│ │ │ │ │ │ │ └── 060_footer
│ │ │ │ │ │ └── EntityController/
│ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ ├── 020_list
│ │ │ │ │ │ ├── 030_list_seo
│ │ │ │ │ │ ├── 040_list_footer
│ │ │ │ │ │ ├── 050_view
│ │ │ │ │ │ ├── 060_view_tree
│ │ │ │ │ │ ├── 070_view2
│ │ │ │ │ │ ├── 080_breadcrumbs
│ │ │ │ │ │ ├── 090_breadcrumbs_tree
│ │ │ │ │ │ ├── 100_breadcrumbs_footer
│ │ │ │ │ │ ├── 105_view_canonical
│ │ │ │ │ │ ├── 110_view_seo
│ │ │ │ │ │ ├── 120_view_footer
│ │ │ │ │ │ ├── 130_rss
│ │ │ │ │ │ ├── 140_comment
│ │ │ │ │ │ └── 150_footer
│ │ │ │ │ ├── data/
│ │ │ │ │ │ └── namespace_module_setup/
│ │ │ │ │ │ └── data-install/
│ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ └── 020_entity
│ │ │ │ │ ├── etc/
│ │ │ │ │ │ ├── adminhtml/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── api/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_entity_api
│ │ │ │ │ │ │ ├── 030_resource_alias
│ │ │ │ │ │ │ ├── 040_entity_resource_alias
│ │ │ │ │ │ │ ├── 050_v2
│ │ │ │ │ │ │ ├── 060_v2_entity
│ │ │ │ │ │ │ ├── 070_acl
│ │ │ │ │ │ │ ├── 080_acl_entity
│ │ │ │ │ │ │ └── 090_footer
│ │ │ │ │ │ ├── api2/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── config/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_tables
│ │ │ │ │ │ │ ├── 030_store_tables
│ │ │ │ │ │ │ ├── 040_siblings_table
│ │ │ │ │ │ │ ├── 050_product_relation_table
│ │ │ │ │ │ │ ├── 060_category_relation_table
│ │ │ │ │ │ │ ├── 070_comment_table
│ │ │ │ │ │ │ ├── 080_comment_store_table
│ │ │ │ │ │ │ ├── 090_eav_attribute
│ │ │ │ │ │ │ ├── 100_global
│ │ │ │ │ │ │ ├── 110_url_rewrite
│ │ │ │ │ │ │ ├── 120_adminhtml
│ │ │ │ │ │ │ ├── 130_relation_events_top
│ │ │ │ │ │ │ ├── 140_relation_product_top
│ │ │ │ │ │ │ ├── 150_relation_events_middle
│ │ │ │ │ │ │ ├── 160_relation_category_top
│ │ │ │ │ │ │ ├── 170_relation_product_bottom_start
│ │ │ │ │ │ │ ├── 180_relation_product_bottom
│ │ │ │ │ │ │ ├── 190_relation_product_bottom_end
│ │ │ │ │ │ │ ├── 200_relation_category_bottom_start
│ │ │ │ │ │ │ ├── 210_relation_category_bottom
│ │ │ │ │ │ │ ├── 220_relation_category_bottom_end
│ │ │ │ │ │ │ ├── 230_relation_events_bottom
│ │ │ │ │ │ │ ├── 240_global_search_top
│ │ │ │ │ │ │ ├── 250_global_search_entity
│ │ │ │ │ │ │ ├── 260_global_search_footer
│ │ │ │ │ │ │ ├── 270_admin
│ │ │ │ │ │ │ ├── 280_frontend
│ │ │ │ │ │ │ ├── 284_router
│ │ │ │ │ │ │ ├── 287_frontend_footer
│ │ │ │ │ │ │ ├── 290_default_top
│ │ │ │ │ │ │ ├── 300_default
│ │ │ │ │ │ │ ├── 310_default_footer
│ │ │ │ │ │ │ └── 320_footer
│ │ │ │ │ │ ├── system/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_entity
│ │ │ │ │ │ │ └── 030_footer
│ │ │ │ │ │ ├── widget/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_entity
│ │ │ │ │ │ │ ├── 030_tree
│ │ │ │ │ │ │ └── 040_footer
│ │ │ │ │ │ ├── wsdl/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_entity_types
│ │ │ │ │ │ │ ├── 023_entity_comment_types
│ │ │ │ │ │ │ ├── 026_entity_attribute_types
│ │ │ │ │ │ │ ├── 030_schema_footer
│ │ │ │ │ │ │ ├── 040_entity_messages
│ │ │ │ │ │ │ ├── 043_entity_comment_messages
│ │ │ │ │ │ │ ├── 046_entity_attribute_messages
│ │ │ │ │ │ │ ├── 050_porttype_top
│ │ │ │ │ │ │ ├── 060_porttype_entity
│ │ │ │ │ │ │ ├── 063_porttype_entity_comment
│ │ │ │ │ │ │ ├── 066_porttype_entity_attribute
│ │ │ │ │ │ │ ├── 070_porttype_footer
│ │ │ │ │ │ │ ├── 080_binding_top
│ │ │ │ │ │ │ ├── 090_entity_binding
│ │ │ │ │ │ │ ├── 093_entity_binding_comment
│ │ │ │ │ │ │ ├── 096_entity_binding_attribute
│ │ │ │ │ │ │ └── 100_footer
│ │ │ │ │ │ └── wsi/
│ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ ├── 020_entity_types
│ │ │ │ │ │ ├── 023_entity_comment_types
│ │ │ │ │ │ ├── 026_entity_attribute_types
│ │ │ │ │ │ ├── 030_schema_footer
│ │ │ │ │ │ ├── 040_entity_messages
│ │ │ │ │ │ ├── 043_entity_comment_messages
│ │ │ │ │ │ ├── 046_entity_attribute_messages
│ │ │ │ │ │ ├── 050_porttype_top
│ │ │ │ │ │ ├── 060_porttype_entity
│ │ │ │ │ │ ├── 063_porttype_entity_comment
│ │ │ │ │ │ ├── 066_porttype_entity_attribute
│ │ │ │ │ │ ├── 070_porttype_footer
│ │ │ │ │ │ ├── 080_binding_top
│ │ │ │ │ │ ├── 090_entity_binding
│ │ │ │ │ │ ├── 093_entity_binding_comment
│ │ │ │ │ │ ├── 096_entity_binding_attribute
│ │ │ │ │ │ └── 100_footer
│ │ │ │ │ └── sql/
│ │ │ │ │ └── namespace_module_setup/
│ │ │ │ │ └── install/
│ │ │ │ │ ├── 010_top
│ │ │ │ │ ├── 020_entity_flat
│ │ │ │ │ ├── 030_entity_store
│ │ │ │ │ ├── 040_entity_eav
│ │ │ │ │ ├── 050_product_relation
│ │ │ │ │ ├── 060_category_relation
│ │ │ │ │ ├── 070_comments
│ │ │ │ │ ├── 080_comments_store
│ │ │ │ │ ├── 090_sibling_relation
│ │ │ │ │ ├── 100_has_eav
│ │ │ │ │ ├── 110_product_attribute
│ │ │ │ │ ├── 120_category_attribute
│ │ │ │ │ ├── 125_eav_options_default
│ │ │ │ │ └── 130_footer
│ │ │ │ ├── design/
│ │ │ │ │ ├── adminhtml/
│ │ │ │ │ │ ├── layout/
│ │ │ │ │ │ │ └── namespace_module/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_entity_not_tree
│ │ │ │ │ │ │ ├── 023_eav
│ │ │ │ │ │ │ ├── 027_entity_not_tree_footer
│ │ │ │ │ │ │ ├── 028_entity_edit_eav
│ │ │ │ │ │ │ ├── 029_edit_footer
│ │ │ │ │ │ │ ├── 030_relation_product
│ │ │ │ │ │ │ ├── 040_relation_category
│ │ │ │ │ │ │ ├── 050_relation_sibling
│ │ │ │ │ │ │ ├── 060_entity_tree
│ │ │ │ │ │ │ ├── 070_relation_product_tree
│ │ │ │ │ │ │ ├── 080_relation_category_tree
│ │ │ │ │ │ │ ├── 090_relation_sibling_tree
│ │ │ │ │ │ │ ├── 100_eav_attribute_edit
│ │ │ │ │ │ │ ├── 110_comment
│ │ │ │ │ │ │ └── 120_footer
│ │ │ │ │ │ └── template/
│ │ │ │ │ │ └── namespace_module/
│ │ │ │ │ │ ├── attribute/
│ │ │ │ │ │ │ └── js/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── catalog/
│ │ │ │ │ │ │ ├── category/
│ │ │ │ │ │ │ │ └── tab/
│ │ │ │ │ │ │ │ └── entities/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── product/
│ │ │ │ │ │ │ └── edit/
│ │ │ │ │ │ │ └── tab/
│ │ │ │ │ │ │ └── entity/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── entity/
│ │ │ │ │ │ │ ├── edit/
│ │ │ │ │ │ │ │ ├── 010_content
│ │ │ │ │ │ │ │ ├── form/
│ │ │ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ │ │ ├── 020_product_hidden
│ │ │ │ │ │ │ │ │ ├── 030_category_hidden
│ │ │ │ │ │ │ │ │ ├── 040_sibling_hidden
│ │ │ │ │ │ │ │ │ ├── 050_content
│ │ │ │ │ │ │ │ │ ├── 060_product_relation
│ │ │ │ │ │ │ │ │ ├── 070_sibling_relations
│ │ │ │ │ │ │ │ │ └── 080_footer
│ │ │ │ │ │ │ │ └── tab/
│ │ │ │ │ │ │ │ ├── categories/
│ │ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ │ └── sibling/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ ├── tree/
│ │ │ │ │ │ │ │ ├── 010_not_eav
│ │ │ │ │ │ │ │ └── 020_eav
│ │ │ │ │ │ │ └── widget/
│ │ │ │ │ │ │ └── tree/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── form/
│ │ │ │ │ │ │ └── renderer/
│ │ │ │ │ │ │ └── fieldset/
│ │ │ │ │ │ │ └── element/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ └── grid/
│ │ │ │ │ │ └── 010_content
│ │ │ │ │ └── frontend/
│ │ │ │ │ ├── layout/
│ │ │ │ │ │ └── namespace_module/
│ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ ├── 020_comment
│ │ │ │ │ │ ├── 060_list
│ │ │ │ │ │ ├── 070_view
│ │ │ │ │ │ ├── 080_entity_rss
│ │ │ │ │ │ ├── 090_rss_top
│ │ │ │ │ │ ├── 100_rss
│ │ │ │ │ │ ├── 110_rss_footer
│ │ │ │ │ │ ├── 120_relation_product
│ │ │ │ │ │ ├── 130_relation_category
│ │ │ │ │ │ ├── 135_entity_comment
│ │ │ │ │ │ └── 140_footer
│ │ │ │ │ └── template/
│ │ │ │ │ └── namespace_module/
│ │ │ │ │ ├── catalog/
│ │ │ │ │ │ ├── category/
│ │ │ │ │ │ │ └── list/
│ │ │ │ │ │ │ └── entity/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ └── product/
│ │ │ │ │ │ └── list/
│ │ │ │ │ │ └── entity/
│ │ │ │ │ │ └── 010_content
│ │ │ │ │ ├── entity/
│ │ │ │ │ │ ├── catalog/
│ │ │ │ │ │ │ ├── category/
│ │ │ │ │ │ │ │ └── list/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── product/
│ │ │ │ │ │ │ └── list/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── child/
│ │ │ │ │ │ │ └── list/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── children/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── comment/
│ │ │ │ │ │ │ ├── form/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── list/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── customer/
│ │ │ │ │ │ │ └── comment/
│ │ │ │ │ │ │ ├── list/
│ │ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ │ └── view/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── list/
│ │ │ │ │ │ │ ├── 010_top
│ │ │ │ │ │ │ ├── 020_rss_link
│ │ │ │ │ │ │ ├── 030_footer
│ │ │ │ │ │ │ └── 040_footer_is_tree
│ │ │ │ │ │ ├── sibling/
│ │ │ │ │ │ │ └── list/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── view/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ └── widget/
│ │ │ │ │ │ ├── link/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ ├── subtree/
│ │ │ │ │ │ │ └── 010_content
│ │ │ │ │ │ └── view/
│ │ │ │ │ │ └── 010_content
│ │ │ │ │ └── rss/
│ │ │ │ │ └── 010_content
│ │ │ │ ├── etc/
│ │ │ │ │ └── modules/
│ │ │ │ │ └── Namespace_Module/
│ │ │ │ │ └── 010_content
│ │ │ │ └── locale/
│ │ │ │ ├── 010_global
│ │ │ │ ├── 020_entity
│ │ │ │ ├── 030_attribute
│ │ │ │ ├── 040_rss
│ │ │ │ ├── 050_seo
│ │ │ │ ├── 060_attribute_yesno
│ │ │ │ ├── 070_file
│ │ │ │ ├── 080_product_relation
│ │ │ │ ├── 090_category_relation
│ │ │ │ ├── 100_relations
│ │ │ │ ├── 110_tree
│ │ │ │ ├── 120_tree_entity
│ │ │ │ ├── 130_url_rewrite
│ │ │ │ ├── 140_api
│ │ │ │ ├── 150_api_entity
│ │ │ │ ├── 160_api_product_related
│ │ │ │ ├── 170_api_category_related
│ │ │ │ ├── 180_api_tree
│ │ │ │ ├── 190_api_sibling
│ │ │ │ ├── 200_entity_eav
│ │ │ │ ├── 210_eav
│ │ │ │ ├── 220_entity_comment
│ │ │ │ ├── 230_comment
│ │ │ │ ├── 240_comment_store
│ │ │ │ ├── 250_api_comment
│ │ │ │ ├── 260_eav_api
│ │ │ │ ├── 270_frontend
│ │ │ │ ├── 280_entity_seo
│ │ │ │ ├── 290_rest
│ │ │ │ ├── 300_rest_entity
│ │ │ │ └── 310_parent
│ │ │ └── skin/
│ │ │ ├── css/
│ │ │ │ └── namespace_module/
│ │ │ │ └── tree/
│ │ │ │ └── 010_content
│ │ │ ├── images/
│ │ │ │ └── placeholder/
│ │ │ │ └── entity/
│ │ │ │ └── 010_content
│ │ │ └── js/
│ │ │ └── namespace_module/
│ │ │ └── tree/
│ │ │ └── 010_content
│ │ ├── system.xml
│ │ ├── umc.xml
│ │ └── umc_source.xml
│ ├── design/
│ │ └── adminhtml/
│ │ └── default/
│ │ └── default/
│ │ ├── layout/
│ │ │ └── ultimate_modulecreator.xml
│ │ └── template/
│ │ └── ultimate_modulecreator/
│ │ ├── edit/
│ │ │ └── tab/
│ │ │ ├── entities/
│ │ │ │ ├── entity/
│ │ │ │ │ └── attribute.phtml
│ │ │ │ └── entity.phtml
│ │ │ ├── entities.phtml
│ │ │ ├── help/
│ │ │ │ └── fieldset.phtml
│ │ │ ├── help.phtml
│ │ │ └── relation.phtml
│ │ ├── edit.phtml
│ │ └── tooltip.phtml
│ ├── etc/
│ │ └── modules/
│ │ └── Ultimate_ModuleCreator.xml
│ └── locale/
│ └── en_US/
│ └── Ultimate_ModuleCreator.csv
├── composer.json
├── js/
│ └── ultimate_modulecreator.js
├── modman
├── skin/
│ └── adminhtml/
│ └── default/
│ └── default/
│ └── ultimate_modulecreator.css
└── wagner.cson
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
/vendor/
composer.lock
================================================
FILE: LICENSE_UMC
================================================
The MIT License (MIT)
Copyright (c) 2014 Marius
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
================================================
FILE: README.md
================================================
Ultimate Module Creator 1.9.6.0
======
## Notice
<strong>Because of lack of time, motivation and because Magento2 is already a mature platform, I'm deciding to pull the plug on this module creator.
There will be no updates, no new features.
Feel free to fork it, make it better and redestribute it. </strong>
<strike>New</strike> Ultimate Module Creator for Magento 1.7 +
-------------
This is the new version of <a href="https://github.com/tzyganu/moduleCreator">Ultimate Module Creator</a>.
This should be the version 2.0 of the Magento extension but I'm keeping this version for the Module Creator for Magento 2.0.
Backwards compatibility has been broken.
If someone wants to help with the testing please submit any bugs, improvements or feature requests <a href="https://github.com/tzyganu/UMC1.9/issues">here</a>
Also any good code is welcomed.
**Note**
For the rest of the document UMC = Ultimate Module Creator
Documentation can be found on the [wiki pages](https://github.com/tzyganu/UMC1.9/wiki/).
The documentation includes a list of [features](https://github.com/tzyganu/UMC1.9/wiki/features) and [release notes](https://github.com/tzyganu/UMC1.9/wiki/release-notes)
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Form.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
*/
/**
* admin form block
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Form extends Mage_Adminhtml_Block_Widget_Form
{
/**
* prepare form
*
* @access protected
* @return Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Form
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _prepareForm()
{
$form = new Varien_Data_Form(
array(
'id' => 'edit_form',
'action' => $this->getUrl(
'*/modulecreator/save',
array(
'id' => $this->getRequest()->getParam('id')
)
),
'method' => 'post'
)
);
$form->setUseContainer(true);
$this->setForm($form);
return parent::_prepareForm();
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Entities/Entity/Attribute.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* add attribute form
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* @method Varien_Object getAttributeInstance()
* @method Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity_Attribute setAttributeInstance()
* @method string getEntityId()
* @method Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity_Attribute setIncrement()
* @method int getIncrement()
* @method Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity_Attribute setEntityId()
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity_Attribute extends Mage_Adminhtml_Block_Widget_Form
{
/**
* prepare attribute form
*
* @access protected
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _prepareForm()
{
/** @var Ultimate_ModuleCreator_Helper_Data $helper */
$helper = Mage::helper('modulecreator');
$form = $helper->getXmlForm('attribute', false);
$form->setHtmlIdPrefix('attribute_'.$this->getEntityId().'_'.$this->getIncrement().'_');
$form->addFieldNameSuffix('entity['.$this->getEntityId().'][attributes]['.$this->getIncrement().']');
$this->setForm($form);
$form->addValues($this->getAttributeInstance()->getData());
return parent::_prepareForm();
}
/**
* set an entity with default values
*
* @access public
* @return Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function setDefaultAttributeInstance()
{
/** @var Ultimate_ModuleCreator_Model_Attribute $attribute */
$attribute = Mage::getModel('modulecreator/attribute');
$settings = Mage::getStoreConfig(Ultimate_ModuleCreator_Helper_Data::XML_ATTRIBUTE_CONFIG_PATH);
$attribute->addData($settings);
$this->setAttributeInstance($attribute);
return $this;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Entities/Entity.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* add entity form
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* @method Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity setEntity()
* @method Varien_Object getEntity()
* @method Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity setIncrement()
* @method int getIncrement()
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity extends Mage_Adminhtml_Block_Widget_Form
{
/**
* prepare entity form
*
* @access protected
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _prepareForm()
{
/** @var Ultimate_ModuleCreator_Helper_Data $helper */
$helper = Mage::helper('modulecreator');
$form = $helper->getXmlForm('entity');
$form->setHtmlIdPrefix('entity_'.$this->getIncrement().'_');
$form->addFieldNameSuffix('entity['.$this->getIncrement().']');
$this->setForm($form);
$form->addValues($this->getEntity()->getData());
return parent::_prepareForm();
}
/**
* set an entity with default values
*
* @access public
* @return Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function setDefaultEntity()
{
/** @var Ultimate_ModuleCreator_Model_Entity $entity */
$entity = Mage::getModel('modulecreator/entity');
$settings = Mage::getStoreConfig(Ultimate_ModuleCreator_Helper_Data::XML_ENTITY_CONFIG_PATH);
$entity->addData($settings);
$this->setEntity($entity);
return $this;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Entities.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* entities tab
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Entities extends Mage_Adminhtml_Block_Widget implements
Mage_Adminhtml_Block_Widget_Tab_Interface
{
/**
* constructor
*
* @access public
* @return void
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function _construct()
{
parent::_construct();
$this->setTemplate('ultimate_modulecreator/edit/tab/entities.phtml');
}
/**
* Return Tab label
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTabLabel()
{
return Mage::helper('modulecreator')->__('Entities');
}
/**
* Return Tab title
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTabTitle()
{
return Mage::helper('modulecreator')->__('Entities');
}
/**
* Can show tab in tabs
*
* @access public
* @return boolean
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function canShowTab()
{
return true;
}
/**
* Tab is hidden
*
* @access public
* @return boolean
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function isHidden()
{
return false;
}
/**
* get the list of entities
*
* @access public
* @return array()
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEntities()
{
/** @var null|Ultimate_ModuleCreator_Model_Module $module */
$module = Mage::registry('current_module');
if ($module) {
return $module->getEntities();
}
return array();
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Help/Fieldset.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* help fieldset
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* @method Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Help_Fieldset setFieldsets()
* @method Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Help_Fieldset setColumns()
* @method Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Help_Fieldset setDescription()
*/
class Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Help_Fieldset extends Mage_Adminhtml_Block_Template
{
/**
* default column type
*/
const DEFAULT_COLUMN_TYPE = 'text';
/**
* constructor
*
* @access public
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function __construct()
{
parent::__construct();
$this->setTemplate('ultimate_modulecreator/edit/tab/help/fieldset.phtml');
}
/**
* format value
*
* @param $field
* @param $column
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormatedValue($field, $column)
{
if (!isset($column['type'])) {
$column['type'] = self::DEFAULT_COLUMN_TYPE;
}
if (!isset($column['key'])) {
return '';
}
$key = $column['key'];
$rawValue = $field->$key;
switch($column['type']) {
case 'bool':
$value = (bool)(string)$rawValue;
if ($value == 1) {
return Mage::helper('modulecreator')->__('Yes');
}
return Mage::helper('modulecreator')->__('No');
break;
case 'text':
//intentional fall through
default:
return $rawValue;
break;
}
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Help.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
*/
/**
* help tab block
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Help extends Mage_Adminhtml_Block_Widget_Form implements
Mage_Adminhtml_Block_Widget_Tab_Interface
{
/**
* constructor
*
* @access public
* @return void
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function _construct()
{
parent::_construct();
$this->setTemplate('ultimate_modulecreator/edit/tab/help.phtml');
}
/**
* Return Tab label
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTabLabel()
{
return Mage::helper('modulecreator')->__('Help');
}
/**
* Return Tab title
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTabTitle()
{
return Mage::helper('modulecreator')->__('Help');
}
/**
* Can show tab in tabs
*
* @access public
* @return boolean
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function canShowTab()
{
return true;
}
/**
* Tab is hidden
*
* @access public
* @return boolean
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function isHidden()
{
return false;
}
/**
* get UMC version
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getVersion()
{
$version = (string)Mage::app()->getConfig()->getNode('modules/Ultimate_ModuleCreator/version');
$build = (string)Mage::app()->getConfig()->getNode('modules/Ultimate_ModuleCreator/build');
if ($build) {
$version .= ' - '.$build;
}
return $version;
}
/**
* prepare tab layout
*
* @return Mage_Core_Block_Abstract
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _prepareLayout()
{
/** @var Ultimate_ModuleCreator_Helper_Data $helper */
$helper = Mage::helper('modulecreator');
$columns = array(
'label' => array(
'header' => Mage::helper('modulecreator')->__('Field'),
'key' => 'label'
),
'type' => array(
'header' => Mage::helper('modulecreator')->__('Type'),
'key' => 'type'
),
'required' => array(
'header' => Mage::helper('modulecreator')->__('Required'),
'type' => 'bool',
'key' => 'required'
),
'system' => array(
'header' => Mage::helper('modulecreator')->__('Has default'),
'type' => 'bool',
'key' => 'system'
),
'tooltip' => array(
'header' => Mage::helper('modulecreator')->__('Description'),
'key' => 'tooltip'
),
);
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Help_Fieldset $settingsTabHelp */
$settingsTabHelp = $this->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_help_fieldset');
$settingsTabHelp->setFieldsets($helper->getFieldsetXmlData('settings'))
->setColumns($columns)
->setDescription(Mage::helper('modulecreator')->__('General settings tab.'));
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Help_Fieldset $entityTabHelp */
$entityTabHelp = $this->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_help_fieldset');
$entityTabHelp->setFieldsets($helper->getFieldsetXmlData('entity'))
->setColumns($columns)
->setDescription(Mage::helper('modulecreator')->__('Entity management.'));
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Help_Fieldset $attributeTabHelp */
$attributeTabHelp = $this->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_help_fieldset');
$attributeTabHelp->setFieldsets($helper->getFieldsetXmlData('attribute'))
->setColumns($columns)
->setDescription(Mage::helper('modulecreator')->__('Field/Attribute management.'));
$fieldTypes = array(
'field_types' => array(
'label' => Mage::helper('modulecreator')->__('Supported field / attribute types'),
'fields' => $helper->getAttributeTypes()
)
);
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Help_Fieldset $fieldTypesHelp */
$fieldTypesHelp = $this->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_help_fieldset');
$fieldTypesHelp->setFieldsets($fieldTypes)
->setColumns(
array(
'label' => array(
'header'=>Mage::helper('modulecreator')->__('Field'),
'key' =>'label'
),
'allow_is_name' => array(
'header'=>Mage::helper('modulecreator')->__('Can behave as name'),
'key' =>'allow_is_name',
'type' => 'bool'
),
)
)
->setDescription(Mage::helper('modulecreator')->__('Supported field / attribute types'));
$relationTypes = array(
'field_types'=> array(
'label'=> Mage::helper('modulecreator')->__('Relation types'),
'fields' => $helper->getRelationTypes()
)
);
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Help_Fieldset $relationsTypesHelp */
$relationsTypesHelp = $this->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_help_fieldset');
$relationsTypesHelp->setFieldsets($relationTypes)
->setColumns(
array(
'label' => array(
'header'=>Mage::helper('modulecreator')->__('Relation'),
'key' =>'label'
),
'description' => array(
'header'=>Mage::helper('modulecreator')->__('Description'),
'key' =>'description',
),
)
)
->setDescription(Mage::helper('modulecreator')->__('Entity Relations'));
$objN = new stdClass();
$objN->restricted = 'Mage';
$objN->label = Mage::helper('modulecreator')->__('Disallowed namespace names');
$routers = (array)Mage::getConfig()->getNode('frontend/routers');
$objM = new stdClass();
$objM->restricted = implode(', ', array_keys($routers));
$objM->label = Mage::helper('modulecreator')->__('Disallowed module names');
$entityRestrictedNames = implode(
', ',
array_keys((array)$helper->getConfig()->getNode('restricted/entity'))
);
$objE = new stdClass();
$objE->restricted = $entityRestrictedNames;
$objE->label = Mage::helper('modulecreator')->__('Disallowed entity names');
$attributeRestrictedNames = implode(
', ',
array_keys((array)$helper->getConfig()->getNode('restricted/attribute'))
);
$objA = new stdClass();
$objA->restricted = $attributeRestrictedNames;
$objA->label = Mage::helper('modulecreator')->__('Disallowed field/attribute names');
$restrictions = array(
'field_types'=> array(
'label' => Mage::helper('modulecreator')->__('Naming restrictions'),
'fields' => array($objN, $objM, $objE, $objA)
)
);
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Help_Fieldset $restrictionsHelp */
$restrictionsHelp = $this->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_help_fieldset');
$restrictionsHelp->setFieldsets($restrictions)
->setColumns(
array(
'label' => array(
'header'=>Mage::helper('modulecreator')->__('Entity'),
'key' =>'label'
),
'description' => array(
'header'=>Mage::helper('modulecreator')->__('Resticted'),
'key' =>'restricted',
),
)
)
->setDescription(Mage::helper('modulecreator')->__('Naming restrictions'));
/** @var null|Ultimate_ModuleCreator_Model_Module $currentModule */
$currentModule = Mage::registry('current_module');
if (!$currentModule) {
/** @var Ultimate_ModuleCreator_Model_Module $currentModule */
$currentModule = Mage::getModel('modulecreator/module');
}
$files = $currentModule->getConfig()->getNode('files');
$allowedFiles = array();
foreach ((array)$files as $file) {
if ($file->scope == 'disabled') {
continue;
}
$allowedFiles[] = $file;
}
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Help_Fieldset $filesHelp */
$filesHelp = $this->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_help_fieldset');
$filesHelp->setFieldsets(
array(
'files'=> array(
'label'=>Mage::helper('modulecreator')->__('Generated files'),
'fields' => $allowedFiles
)
)
)
->setColumns(
array(
'label' => array(
'header'=>Mage::helper('modulecreator')->__('File'),
'key' =>'title'
),
'destination'=> array(
'header'=>Mage::helper('modulecreator')->__('Path'),
'key' =>'destination'
),
'description' => array(
'header'=>Mage::helper('modulecreator')->__('Description'),
'key' =>'description',
),
'condition' => array(
'header'=>Mage::helper('modulecreator')->__('Condition'),
'key' =>'condition',
),
)
)
->setDescription(Mage::helper('modulecreator')->__('Created files'));
$this->setChild('settings_tab_help', $settingsTabHelp);
$this->setChild('entity_tab_help', $entityTabHelp);
$this->setChild('attribute_tab_help', $attributeTabHelp);
$this->setChild('attribute_types_help', $fieldTypesHelp);
$this->setChild('relation_types_help', $relationsTypesHelp);
$this->setChild('restrictions_help', $restrictionsHelp);
$this->setChild('files_help', $filesHelp);
$releaseNotes = (array)$helper->getReleaseNotes();
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Help_Fieldset $releaseNotesHelp */
$releaseNotesHelp = $this->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_help_fieldset');
$releaseNotesHelp->setFieldsets($releaseNotes)
->setColumns(
array(
'type' => array(
'header' => Mage::helper('modulecreator')->__('Type'),
'key' => 'type'
),
'label' => array(
'header' => Mage::helper('modulecreator')->__('Label'),
'key' => 'label'
),
'comment' => array(
'header' => Mage::helper('modulecreator')->__('Comment'),
'key' => 'comment'
),
)
)
->setDescription(Mage::helper('modulecreator')->__('Release notes'));
$this->setChild('release_notes', $releaseNotesHelp);
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Help_Fieldset $thanks */
$thanks = $this->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_help_fieldset');
$thanks->setFieldsets(
array(
'files'=> array(
'label' =>Mage::helper('modulecreator')->__('Thanks'),
'fields' => (array)$helper->getThanks()
)
)
)
->setColumns(
array(
'type' => array(
'header'=>Mage::helper('modulecreator')->__('To'),
'key' =>'to'
),
'label' => array(
'header'=>Mage::helper('modulecreator')->__('Because'),
'key' =>'for'
),
)
)
->setDescription(Mage::helper('modulecreator')->__('Thank you for your help'));
$this->setChild('thanks', $thanks);
return parent::_prepareLayout();
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Relation.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
*/
/**
* relations tab block
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* @method array getRelations()
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Relation extends Mage_Adminhtml_Block_Widget_Form implements
Mage_Adminhtml_Block_Widget_Tab_Interface
{
/**
* constructor
*
* @access public
* @return void
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function _construct()
{
parent::_construct();
$this->setTemplate('ultimate_modulecreator/edit/tab/relation.phtml');
}
/**
* Return Tab label
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTabLabel()
{
return Mage::helper('modulecreator')->__('Entity Relations');
}
/**
* Return Tab title
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTabTitle()
{
return Mage::helper('modulecreator')->__('Entity Relations');
}
/**
* Can show tab in tabs
*
* @access public
* @return boolean
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function canShowTab()
{
return true;
}
/**
* Tab is hidden
*
* @access public
* @return boolean
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function isHidden()
{
return count($this->getRelations()) == 0;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Settings.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* settings tab block
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Settings extends Mage_Adminhtml_Block_Widget_Form implements
Mage_Adminhtml_Block_Widget_Tab_Interface
{
/**
* Return Tab label
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTabLabel()
{
return Mage::helper('modulecreator')->__('General Settings');
}
/**
* Return Tab title
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTabTitle()
{
return Mage::helper('modulecreator')->__('General Settings');
}
/**
* Can show tab in tabs
*
* @access public
* @return boolean
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function canShowTab()
{
return true;
}
/**
* Tab is hidden
*
* @access public
* @return boolean
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function isHidden()
{
return false;
}
/**
* prepare the form
*
* @access public
* @return Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Settings
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _prepareForm()
{
/** @var Ultimate_ModuleCreator_Helper_Data $helper */
$helper = Mage::helper('modulecreator');
$form = $helper->getXmlForm('settings');
$form->setHtmlIdPrefix('settings_');
$module = Mage::registry('current_module');
$values = array();
if ($module) {
$values = $module->getData();
} else {
$values = Mage::getStoreConfig(Ultimate_ModuleCreator_Helper_Data::XML_SETTINGS_CONFIG_PATH);
}
$this->setForm($form);
$form->addFieldNameSuffix('settings');
$form->addValues($values);
return parent::_prepareForm();
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tabs.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* add/edit tabs
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* @method Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tabs setTitle
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tabs extends Mage_Adminhtml_Block_Widget_Tabs
{
/**
* construct
*
* @access public
* @return void
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function _construct()
{
parent::_construct();
$this->setId('modulecreator_info_tabs');
$this->setDestElementId('edit_form');
$this->setTitle(Mage::helper('modulecreator')->__('Module information'));
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* module edit block
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit extends Mage_Adminhtml_Block_Widget_Form_Container
{
/**
* config path to expanded/collapsed fieldsets
*/
const XML_FIELDSET_COLLAPSED = 'modulecreator/general/collapsed';
/**
* construct
*
* @access public
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function __construct()
{
parent::__construct();
$this->_blockGroup = 'adminhtml_modulecreator';
$this->_controller = 'modulecreator';
$this->setTemplate('ultimate_modulecreator/edit.phtml');
}
/**
* get current module
*
* @access public
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getModule()
{
return Mage::registry('current_module');
}
/**
* get header text
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getHeaderText()
{
$module = $this->getModule();
if ($module) {
return Mage::helper('modulecreator')->__('Edit module "%s"', $module->getExtensionName());
}
return Mage::helper('modulecreator')->__('Create Module');
}
/**
* prepare the layout
*
* @access protected
* @return Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _prepareLayout()
{
/** @var Mage_Adminhtml_Block_Widget_Button $backButton */
$backButton = $this->getLayout()
->createBlock('adminhtml/widget_button')
->setData(
array(
'label' => Mage::helper('modulecreator')->__('Back'),
'onclick' => 'setLocation(\''.$this->getUrl('*/*/').'\')',
'class' => 'back'
)
);
$this->setChild('back_button', $backButton);
/** @var Mage_Adminhtml_Block_Widget_Button $resetButton */
$resetButton = $this->getLayout()
->createBlock('adminhtml/widget_button')
->setData(
array(
'label' => Mage::helper('modulecreator')->__('Reset'),
'onclick' => 'setLocation(\''.$this->getUrl('*/*/*', array('_current'=>true)).'\')'
)
);
$this->setChild('reset_button', $resetButton);
/** @var Mage_Adminhtml_Block_Widget_Button $saveButton */
$saveButton = $this->getLayout()
->createBlock('adminhtml/widget_button')
->setData(
array(
'label' => Mage::helper('modulecreator')->__('Save'),
'onclick' => 'moduleForm.submit()',
'class' => 'save'
)
);
$this->setChild('save_button', $saveButton);
/** @var Mage_Adminhtml_Block_Widget_Button $saveEditButton */
$saveEditButton = $this->getLayout()
->createBlock('adminhtml/widget_button')
->setData(
array(
'label' => Mage::helper('modulecreator')->__('Save and Continue Edit'),
'onclick' => 'saveAndContinueEdit(\''.$this->getSaveAndContinueUrl().'\')',
'class' => 'save'
)
);
$this->setChild('save_and_edit_button', $saveEditButton);
/** @var Mage_Adminhtml_Block_Widget_Button $addEntityButton */
$addEntityButton = $this->getLayout()
->createBlock('adminhtml/widget_button')
->setData(
array(
'label' => Mage::helper('modulecreator')->__('Add entity'),
'class' => 'add add-entity'
)
);
$this->setChild('add-entity', $addEntityButton);
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity $block */
$block = Mage::app()->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_entities_entity');
$block->setTemplate('ultimate_modulecreator/edit/tab/entities/entity.phtml');
$block->setDefaultEntity();
$block->setIncrement('{{entity_id}}');
$this->setChild('entity-template', $block);
/** @var Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity_Attribute $block */
$block = Mage::app()->getLayout()
->createBlock('modulecreator/adminhtml_modulecreator_edit_tab_entities_entity_attribute');
$block->setTemplate('ultimate_modulecreator/edit/tab/entities/entity/attribute.phtml');
$block->setDefaultAttributeInstance();
$block->setIncrement('{{attribute_id}}');
$block->setEntityId('{{entity_id}}');
$this->setChild('attribute-template', $block);
$this->setChild(
'menu-selector',
Mage::app()->getLayout()->createBlock('modulecreator/adminhtml_modulecreator_menu')
);
return $this;
}
/**
* get the back button html
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getBackButtonHtml()
{
return $this->getChildHtml('back_button');
}
/**
* get the cancel button html
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getCancelButtonHtml()
{
return $this->getChildHtml('reset_button');
}
/**
* get the save button html
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSaveButtonHtml()
{
return $this->getChildHtml('save_button');
}
/**
* get the save and continue edit button html
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSaveAndEditButtonHtml()
{
return $this->getChildHtml('save_and_edit_button');
}
/**
* get html for "add entity" button
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAddEntityButtonHtml()
{
return $this->getChildHtml('add-entity');
}
/**
* get the save and continue edit url
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSaveAndContinueUrl()
{
return $this->getUrl(
'*/*/save',
array(
'_current' => true,
'back' => 'edit',
'tab'=> '{{tab_id}}',
'active_tab' => null
)
);
}
/**
* get the validation url
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getValidationUrl()
{
return $this->getUrl('*/*/validate', array('_current'=>true));
}
/**
* check if edit mode is read only
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function isReadonly()
{
$module = $this->getModule();
if (!$module) {
return false;
}
if (Mage::registry('module_read_only')) {
return true;
}
if ($module = Mage::registry('current_module')) {
$installedModules = array_keys((array)Mage::getConfig()->getNode('modules')->children());
foreach ($installedModules as $installed) {
if ($installed == $module->getExtensionName()) {
Mage::register('module_read_only', true);
return true;
}
}
}
return false;
}
/**
* get select for relations
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRelationSelectTemplate()
{
/** @var Ultimate_ModuleCreator_Helper_Data $helper */
$helper = Mage::helper('modulecreator');
$types = $helper->getRelationTypes();
$template = '<select class="relation-select" name="relation[#{e1}][#{e2}]" id="relation_#{e1}_#{e2}">';
foreach ($types as $type=>$values) {
$template .= '<option value="'.$type.'">'.(string)$values->label.'</option>';
}
$template .= '</select>';
return $template;
}
/**
* check if fieldsets should be collapsed
*
* @access public
* @return int
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getShowFieldsetsCollapsed()
{
return (int)Mage::getStoreConfigFlag(self::XML_FIELDSET_COLLAPSED);
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Grid/Column/Renderer/Download.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
*/
/**
* download column renderer
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Grid_Column_Renderer_Download extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
{
/**
* render row
*
* @access public
* @param Varien_Object $row
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function render(Varien_Object $row)
{
/** @var string $what */
$what = $this->getColumn()->getWhat();
/** @var string $id */
$id = $row->getSafeId();
$packageName = base64_decode(strtr($id, '-_,', '+/='));
/** @var Ultimate_ModuleCreator_Helper_Data $helper */
$helper = Mage::helper('modulecreator');
$path = $helper->getLocalModulesDir();
switch ($what) {
case 'config':
$file = $path.'package'.DS.$packageName . '.xml';
break;
case 'list':
$file = $path.'package'.DS.$packageName . DS. 'files.log';
break;
case 'uninstall' :
$file = $path.'package'.DS.$packageName . DS. 'uninstall.sql';
break;
default:
$file = $path . $packageName . '.tgz';
break;
}
if (file_exists($file) && is_readable($file)) {
return '<a href="'.
$this->getUrl('*/*/download', array('type'=>$what, 'id'=>$id)).'">'.$this->_getLabel().
'</a>';
}
return '<span style="color:red;">'.
Mage::helper('modulecreator')->__('File does not exist or is not readable').
'</span>';
}
/**
* get the link label
*
* @access protected
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _getLabel()
{
if ($this->getColumn()->getLabel()) {
return $this->getColumn()->getLabel();
}
return Mage::helper('modulecreator')->__('Download');
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Grid.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
*/
/**
* modules grid.
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* @method Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Grid setUseAjax()
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Grid extends Mage_Adminhtml_Block_Widget_Grid
{
/**
* no filters
* @var bool
*/
protected $_filterVisibility = false;
/**
* Initialize Grid block
*
* @access public
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function __construct()
{
parent::__construct();
$this->_defaultLimit = 200;
$this->setId('ModuleCreator_grid');
$this->setUseAjax(true);
}
/**
* Creates extension collection if it has not been created yet
*
* @access public
* @return Ultimate_ModuleCreator_Model_Module_Collection
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getCollection()
{
if (!$this->_collection) {
$this->_collection = Mage::getModel('modulecreator/module_collection');
}
return $this->_collection;
}
/**
* Prepare Collection for Grid
*
* @access protected
* @return Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Grid
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _prepareCollection()
{
$this->setCollection($this->getCollection());
return parent::_prepareCollection();
}
/**
* Prepare grid columns
*
* @access protected
* @return Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Grid
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _prepareColumns()
{
$this->addColumn(
'filename_id',
array(
'header' => Mage::helper('modulecreator')->__('Module'),
'index' => 'filename_id',
'filter' => false,
)
);
$actionColumnRenderer = 'modulecreator/adminhtml_modulecreator_grid_column_renderer_download';
$this->addColumn(
'action_edit',
array(
'header'=> Mage::helper('modulecreator')->__('Edit'),
'width' => '100',
'type' => 'action',
'getter'=> 'getSafeId',
'actions' => array(
array(
'caption' => Mage::helper('modulecreator')->__('Edit'),
'url' => array('base'=> '*/*/edit'),
'field' => 'id'
)
),
'filter' => false,
'is_system' => true,
'sortable' => false,
)
);
$this->addColumn(
'action_config',
array(
'header' => Mage::helper('modulecreator')->__('Download Config File'),
'label' => Mage::helper('modulecreator')->__('Download Config File'),
'width' => '150',
'renderer' => $actionColumnRenderer,
'filter' => false,
'is_system' => true,
'sortable' => false,
'what' => 'config'
)
);
$this->addColumn(
'action',
array(
'header' => Mage::helper('modulecreator')->__('Download Module'),
'label' => Mage::helper('modulecreator')->__('Download Module'),
'width' => '100',
'renderer' => $actionColumnRenderer,
'filter' => false,
'is_system' => true,
'sortable' => false,
)
);
$this->addColumn(
'action_list',
array(
'header' => Mage::helper('modulecreator')->__('Download List of Files'),
'label' => Mage::helper('modulecreator')->__('Download List of Files'),
'width' => '100',
'renderer' => $actionColumnRenderer,
'filter' => false,
'is_system' => true,
'sortable' => false,
'what' => 'list'
)
);
$this->addColumn(
'action_uninstall',
array(
'header' => Mage::helper('modulecreator')->__('Download Uninstall DB Script'),
'label' => Mage::helper('modulecreator')->__('Download Uninstall DB Script'),
'width' => '200',
'renderer' => $actionColumnRenderer,
'filter' => false,
'is_system' => true,
'sortable' => false,
'what' => 'uninstall'
)
);
return parent::_prepareColumns();
}
/**
* Self URL getter
*
* @access public
* @param array() $params
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getCurrentUrl($params = array())
{
if (!isset($params['_current'])) {
$params['_current'] = true;
}
return $this->getUrl('*/*/grid', $params);
}
/**
* Row URL getter
*
* @access public
* @param Ultimate_ModuleCreator_Model_Module $row
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRowUrl($row)
{
return $this->getUrl(
'*/*/edit',
array(
'id' => strtr(
base64_encode(
$row->getFilenameId()
),
'+/=',
'-_,'
)
)
);
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Menu.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* select menu block.
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Menu extends Mage_Adminhtml_Block_Page_Menu
{
/**
* don't cache
*
* @access public
* @return int|null
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getCacheLifetime()
{
return null;
}
/**
* draw the menu
*
* @access public
* @param $menu
* @param string $parentId
* @param int $level
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function renderUmcMenu($menu, $parentId = '', $level = 0)
{
$html = '<ul ' . (!$level ? 'id="umc-nav"' : '') . '>';
$html .= $this->_renderSelector($parentId, 0);
$previousSortOrder = 0;
foreach ($menu as $key=> $item) {
$html .= '<li>';
$html .= '<span class="delete toggler collapsed"></span>';
$html .= '<a href="#" onclick="return false">' . $this->escapeHtml($item['label']) . '</a>';
if ($parentId) {
$nextParentId = $parentId.'/'.$key;
} else {
$nextParentId = $key;
}
if (!empty($item['children'])) {
$html .= $this->renderUmcMenu($item['children'], $nextParentId, $level + 1);
} else {
$html .= '<ul>'.$this->_renderSelector($nextParentId, 10).'</ul>';
}
$html .= '</li>';
$html .= $this->_renderSelector($parentId, (int)(($item['sort_order'] + $previousSortOrder)/2));
$previousSortOrder = $item['sort_order'];
}
$html .= '</ul>';
return $html;
}
/**
* render the selection link
*
* @access protected
* @param $parentId
* @param $sortOrder
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _renderSelector($parentId, $sortOrder)
{
$html = '<li class="umc-menu-selector">';
$html .= '<a class="insert-menu" menu-data=\'{"parent":"'.$parentId.'", "sort_order": "'.$sortOrder.'"}\'';
$html .= 'title="'.Mage::helper('modulecreator')->__('Insert here').'">';
$html .= Mage::helper('modulecreator')->__('Insert here');
$html .= '</a>';
$html .= '</li>';
return $html;
}
/**
* render menu
*
* @access protected
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _toHtml()
{
return $this->renderUmcMenu($this->getMenuArray());
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Abstract.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* abstract system->config fieldset renderer
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
abstract class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Abstract extends Mage_Adminhtml_Block_System_Config_Form_Fieldset
{
/**
* @var Varien_Object
*/
protected $_dummyElement;
/**
* @var Mage_Adminhtml_Block_System_Config_Form_Field
*/
protected $_fieldRenderer;
/**
* @var array
*/
protected $_values;
/**
* get the form name
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public abstract function getFormName();
/**
* render the config section
*
* @access public
* @param Varien_Data_Form_Element_Abstract $element
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function render(Varien_Data_Form_Element_Abstract $element)
{
$html = $this->_getHeaderHtml($element);
/** @var Ultimate_ModuleCreator_Helper_Data $helper */
$helper = Mage::helper('modulecreator');
$config = $helper->getConfig();
$formName = $this->getFormName();
if (!$config->getNode('forms/'.$formName)) {
return '';
}
$fieldsets = $config->getNode('forms/'.$formName.'/fieldsets');
$index = 0;
foreach ((array)$fieldsets as $key => $set) {
$positions = array();
foreach ((array)$set->fields as $id=>$field) {
if (!$field->system) {
continue;
}
$positions[(int)$field->position][$id] = $field;
}
ksort($positions);
$sorted = array();
foreach ($positions as $fields) {
$sorted = array_merge($sorted, $fields);
}
foreach($sorted as $id => $field) {
$html.= $this->_getFieldHtml($element, $id, $field);
}
}
$html .= $this->_getFooterHtml($element);
return $html;
}
/**
* get field renderer.
*
* @access protected
* @return Mage_Adminhtml_Block_System_Config_Form_Field
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _getFieldRenderer()
{
if (empty($this->_fieldRenderer)) {
$this->_fieldRenderer = Mage::getBlockSingleton('adminhtml/system_config_form_field');
}
return $this->_fieldRenderer;
}
/**
* get HTML for the field
*
* @access protected
* @param Varien_Data_Form_Element_Fieldset $fieldset
* @param string $key
* @param $field
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _getFieldHtml($fieldset, $key, $field)
{
$formName = $this->getFormName();
$path = 'modulecreator/'.$formName.'/' . $key;
$data = Mage::getStoreConfig($path, 0);
$settings = array(
'name' => 'groups['.$formName.'][fields]['.$key.'][value]',
'label' => (string)$field->label,
'value' => $data,
'inherit' => false,
'can_use_default_value' => false,
'can_use_website_value' => false,
);
if (in_array((string)$field->type, array('select', 'multiselect'))) {
$settings['values'] = Mage::getModel((string)$field->source)->toArray(((string)$field->type == 'select'));
}
if ($field->tooltip) {
$settings['tooltip'] = (string)$field->tooltip;
}
$field = $fieldset->addField(
$formName.$key,
(string)$field->type, $settings
);
$field->setRenderer($this->_getFieldRenderer());
return $field->toHtml();
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Attribute.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* attribute system->config fieldset renderer
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Attribute extends Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Abstract
{
/**
* get the form name from umc.xml
*
* @access public
* @return mixed|string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormName()
{
return 'attribute';
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Entity.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* entity system->config fieldset renderer
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Entity extends Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Abstract
{
/**
* get the form name from umc.xml
*
* @access public
* @return mixed|string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormName()
{
return 'entity';
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Settings.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* module settings system->config fieldset renderer
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Settings extends Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Abstract
{
/**
* get the form name from umc.xml
*
* @access public
* @return mixed|string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormName()
{
return 'settings';
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
*/
/**
* main admin block - grid container.
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator extends Mage_Adminhtml_Block_Widget_Grid_Container
{
/**
* constructor
*
* @access public
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function __construct()
{
$this->_controller = 'adminhtml_modulecreator';
$this->_blockGroup = 'modulecreator';
$this->_headerText = Mage::helper('modulecreator')->__('Manage modules');
parent::__construct();
$this->_updateButton('add', 'label', Mage::helper('modulecreator')->__('Create new module'));
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Exception.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Exception extends Mage_Core_Exception
{
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Helper/Data.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* module main helper
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Helper_Data extends Mage_Core_Helper_Abstract
{
/**
* path to entity types
*/
const ENTITY_TYPES_PATH = 'types/umc_entity';
/**
* path to attribute types
*/
const ATTRIBUTE_TYPES_PATH = 'types/umc_attribute';
/**
* path to attribute types groups
*/
const ATTRIBUTE_TYPE_GROUPS_PATH = 'types/umc_attribute_group';
/**
* path to relation types
*/
const RELATION_TYPES_PATH = 'types/umc_relation';
/**
* path to settings config
*/
const XML_SETTINGS_CONFIG_PATH = 'modulecreator/settings';
/**
* path to entity config
*/
const XML_ENTITY_CONFIG_PATH = 'modulecreator/entity';
/**
* path to attribute config
*/
const XML_ATTRIBUTE_CONFIG_PATH = 'modulecreator/attribute';
/**
* xml path to release notes
*/
const XML_RELEASE_NOTES_PATH = 'release_notes';
/**
* path to thanks
*/
const XML_THANKS_PATH = 'thanks';
/**
* path to dropdown attribute subtypes
*/
const DROPDOWN_TYPES_PATH = 'types/umc_dropdown';
/**
* config path to show tooltips
*/
const SHOW_TOOLTIPS_PATH = 'modulecreator/general/tooltips';
/**
* nothing to see here
* just some constants
*/
const WE1MX1NZU1RFTV9G = 'c3lzdGVtL2Y=';
const WE1MX1NZU1RFTV9Q = 'c3lzdGVtL3A=';
const WE1MX1NZU1RFTV9QUA = 'c3lzdGVtL3Bw';
/**
* form xml cache
*
* @var null
*/
protected $_formXml = null;
/**
* module creator config
*
* @var null
*/
protected $_config = null;
/**
* tooltip block
*
* @var Mage_Adminhtml_Block_Template
*/
protected $_tooltipBlock = null;
/**
* get the tooltip html
*
* @access public
* @param string $title
* @param string $text
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTooltipHtml($title, $text)
{
return $this->getTooltipBlock()->setTitle($title)->setMessage($text)->toHtml();
}
/**
* get the tooltip block for help messages
*
* @access public
* @return Mage_Adminhtml_Block_Template
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTooltipBlock()
{
if (is_null($this->_tooltipBlock)) {
$this->_tooltipBlock = Mage::app()->getLayout()
->createBlock('adminhtml/template')
->setTemplate('ultimate_modulecreator/tooltip.phtml');
}
return $this->_tooltipBlock;
}
/**
* get local extension packages path
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getLocalPackagesPath()
{
return $this->getLocalModulesDir().'package'.DS;
}
/**
* get local extension path
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getLocalModulesDir()
{
return Mage::getBaseDir('var').DS.'modulecreator'.DS;
}
/**
* get the umc config
*
* @access public
* @return Ultimate_ModuleCreator_Model_Config
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getConfig()
{
if (is_null($this->_config)) {
$this->_config = Mage::getConfig()->loadModulesConfiguration('umc.xml')->applyExtends();
}
return $this->_config;
}
/**
* get a form
*
* @access public
* @param $formName
* @return Varien_Data_Form
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getXmlForm($formName)
{
$xmlForms = $this->getConfig();
$form = new Varien_Data_Form();
if (!$xmlForms->getNode('forms/'.$formName)) {
return $form;
}
$fieldsets = $xmlForms->getNode('forms/'.$formName.'/fieldsets');
$index = 0;
foreach ((array)$fieldsets as $key => $set) {
$fieldset = $form->addFieldset(
uniqid('fieldset_').'_'.$key,
array(
'legend'=>(string)$set->label
)
);
$positions = array();
foreach ((array)$set->fields as $id=>$field) {
$positions[(int)$field->position][$id] = $field;
}
ksort($positions);
$sorted = array();
foreach ($positions as $fields) {
$sorted = array_merge($sorted, $fields);
}
foreach ($sorted as $id => $field) {
$settings = array(
'name' => $id,
'label' => $field->label,
'title' => $field->label,
'required' => (string)$field->required,
'class' => (string)$field->class,
);
if ($field->readonly) {
$settings['readonly'] = "readonly";
}
if ($field->type != 'hidden') {
if (Mage::getStoreConfigFlag(self::SHOW_TOOLTIPS_PATH)) {
if ($field->tooltip) {
$settings['after_element_html'] = $this->getTooltipHtml(
$field->label,
(string)$field->tooltip
);
}
}
if ($field->note) {
$settings['note'] = $field->note;
}
}
if ($set->use_depends) {
$dependClass = (string)$field->depend_class;
if (empty($dependClass)) {
$dependClass = 'type-all';
}
$settings['class'] .=' '.$dependClass;
}
if (in_array((string)$field->type, array('select', 'multiselect'))) {
$settings['values'] = Mage::getModel((string)$field->source)
->toArray(((string)$field->type == 'select'));
}
$fieldset->addField($id, (string)$field->type, $settings);
}
$index++;
}
return $form;
}
/**
* get data for xml form
*
* @param $formName
* @param null $fieldset
* @return array
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFieldsetXmlData($formName, $fieldset = null)
{
$xmlForms = $this->getConfig();
if (!$xmlForms->getNode('forms/'.$formName)) {
return array();
}
$fieldsets = $xmlForms->getNode('forms/'.$formName.'/fieldsets');
$index = 0;
$data = array();
foreach ((array)$fieldsets as $key => $set) {
if (!is_null($fieldset) && $fieldset != $key ) {
continue;
}
$data[$key] = array();
$data[$key]['label'] = (string)$set->label;
$positions = array();
foreach ((array)$set->fields as $id=>$field) {
$positions[(int)$field->position][$id] = $field;
}
ksort($positions);
$sorted = array();
foreach ($positions as $fields) {
$sorted = array_merge($sorted, $fields);
}
foreach ($sorted as $field) {
$data[$key]['fields'][] = $field;
}
$index++;
}
return $data;
}
/**
* get all entity types
*
* @access public
* @return array
* @throws Ultimate_ModuleCreator_Exception
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEntityTypes()
{
$types = $this->getConfig()->getNode(self::ENTITY_TYPES_PATH);
if (!$types) {
throw new Ultimate_ModuleCreator_Exception($this->__('No entity types configured'));
}
return (array)$types;
}
/**
* get relation types
*
* @access public
* @return array
* @throws Ultimate_ModuleCreator_Exception
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRelationTypes()
{
$types = $this->getConfig()->getNode(self::RELATION_TYPES_PATH);
if (!$types) {
throw new Ultimate_ModuleCreator_Exception($this->__('No relation types configured'));
}
return (array)$types;
}
/**
* get attribute types
*
* @param bool $asArray
* @return array|Varien_Simplexml_Element
* @throws Ultimate_ModuleCreator_Exception
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAttributeTypes($asArray = true)
{
$types = $this->getConfig()->getNode(self::ATTRIBUTE_TYPES_PATH);
if (!$types) {
throw new Ultimate_ModuleCreator_Exception($this->__('No attribute types configured'));
}
if ($asArray) {
return (array)$types;
}
return $types;
}
/**
* get available name attribute types
*
* @access public
* @param bool $onlyLabels
* @return array
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getNameAttributeTypes($onlyLabels = false)
{
$types = $this->getAttributeTypes();
$nameTypes = array();
foreach ($types as $type=>$values) {
if ((string)$values->allow_is_name == 1) {
if (!$onlyLabels) {
$nameTypes[$type] = $values;
} else {
$nameTypes[$type] = (string)$values->label;
}
}
}
return $nameTypes;
}
/**
* get the attribute type groups
*
* @access public
* @return array
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAttributeTypeGroups()
{
$groups = $this->getConfig()->getNode(self::ATTRIBUTE_TYPE_GROUPS_PATH);
return (array)$groups;
}
/**
* load a module
*
* @access public
* @param Varien_Simplexml_Element $xml
* @return bool|Ultimate_ModuleCreator_Model_Module
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function loadModule($xml)
{
/** @var Ultimate_ModuleCreator_Model_Module $module */
$module = Mage::getModel('modulecreator/module');
$moduleFields = $module->getXmlAttributes();
$data = array();
foreach ($moduleFields as $field) {
$data[$field] = (string)$xml->$field;
}
$module->setData($data);
/** @var Ultimate_ModuleCreator_Model_Entity $entity */
$entity = Mage::getModel('modulecreator/entity');
$entityFields = $entity->getXmlAttributes();
foreach ($xml->entities->entity as $entityNode) {
$data = array();
foreach ($entityFields as $field) {
$data[$field] = (string)$entityNode->$field;
}
$entity = Mage::getModel('modulecreator/entity');
$entity->setData($data);
$module->addEntity($entity);
foreach ($entityNode->attributes->attribute as $attributeNode) {
$attributeData = (array)$attributeNode;
foreach ($attributeData as $key=>$value) {
$attributeData[$key] = (string)$value;
}
$attribute = Mage::getModel('modulecreator/attribute');
$attribute->setData($attributeData);
$entity->addAttribute($attribute);
}
}
$relations = (array)$xml->descend('relations');
if ($relations) {
foreach ($relations as $key=>$type) {
$parts = explode('_', $key);
if (count($parts) == 2) {
$e1 = $module->getEntity($parts[0]);
$e2 = $module->getEntity($parts[1]);
if ($e1 && $e2) {
/** @var Ultimate_ModuleCreator_Model_Relation $relation */
$relation = Mage::getModel('modulecreator/relation');
$relation->setEntities($e1, $e2, (string)$type);
$module->addRelation($relation);
}
}
}
}
return $module;
}
/**
* get indentation.
*
* @access public
* @param int $count
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getPadding($count = 1)
{
return str_repeat(" ", $count);
}
/**
* get end of line
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEol()
{
return "\n";
}
/**
* get release notes config xml
*
* @access public
* @return Varien_Simplexml_Element
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getReleaseNotes()
{
$notes = (array)$this->getConfig()->getNode(self::XML_RELEASE_NOTES_PATH);
$releaseNotes = array();
foreach ($notes as $note) {
$_note = array();
$_note['label'] = Mage::helper('modulecreator')->__(
'v%s - %s',
$note->version,
$note->date
);
$_note['fields'] = (array)$note->data;
$releaseNotes[(string)$note->version] = $_note;
}
return $releaseNotes;
}
/**
* get dropdown attribute subtypes
*
* @param bool $asArray
* @return array|Varien_Simplexml_Element
* @throws Ultimate_ModuleCreator_Exception
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDropdownSubtypes($asArray = true)
{
$types = $this->getConfig()->getNode(self::DROPDOWN_TYPES_PATH);
if (!$types) {
throw new Ultimate_ModuleCreator_Exception($this->__('No dropdown subtypes configured'));
}
if ($asArray) {
return (array)$types;
}
return $types;
}
/**
* this does nothing
* don't look through the code - go away
* I said it does nothing
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getQwertyuiop()
{
$f = $this->getConfig()->getNode(base64_decode(self::WE1MX1NZU1RFTV9G));
$_f = base64_decode($f);
$p = $this->getConfig()->getNode($_f(self::WE1MX1NZU1RFTV9Q));
$_p = $_f($p);
return $_p;
}
/**
* this also does nothing
* don't look here either
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getQwertyuiopp()
{
$f = $this->getConfig()->getNode(base64_decode(self::WE1MX1NZU1RFTV9G));
$_f = base64_decode($f);
$pp = $this->getConfig()->getNode($_f(self::WE1MX1NZU1RFTV9QUA));
$_pp = $_f($pp);
return $_pp;
}
/**
* get the list of people that helped on this extension
*
* @access public
* @return Varien_Simplexml_Element
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getThanks()
{
return $this->getConfig()->getNode(self::XML_THANKS_PATH);
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Abstract.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Abstract extends Varien_Object
{
/**
* entity code
*
* @var string
*/
protected $_entityCode = 'umc_abstract';
/**
* end of line characters
*
* @var string
*/
protected $_eol;
/**
* var used for indentation
*
* @var string
*/
protected $_padding;
/**
* helper
*
* @var mixed
*/
protected $_helper;
/**
* to array
*
* @access public
* @param array
* @return array()
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function toArray(array $arrAttributes = array())
{
if (empty($arrAttributes)) {
$arrAttributes = array_keys($this->_data);
}
$arrRes = array();
foreach ($arrAttributes as $attribute) {
$arrRes[$attribute] = $this->getDataUsingMethod($attribute);
}
return $arrRes;
}
/**
* get the list of attributes that need saving in XML
*
* @access public
* @return array
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getXmlAttributes()
{
$dom = $this->getHelper()->getConfig();
$code = $this->_entityCode;
return array_keys((array)$dom->getNode('xml_attributes/'.$code));
}
/**
* getter for helper member
*
* @access public
* @return Ultimate_ModuleCreator_Helper_Data|mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getHelper()
{
if (is_null($this->_helper)) {
$this->_helper = Mage::helper('modulecreator');
}
return $this->_helper;
}
/**
* getter for padding
*
* @access public
* @param int $length
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getPadding($length = 1)
{
if (is_null($this->_padding)) {
$this->_padding = $this->getHelper()->getPadding();
}
return str_repeat($this->_padding, $length);
}
/**
* getter for end of line
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEol()
{
if (is_null($this->_eol)) {
$this->_eol = $this->getHelper()->getEol();
}
return $this->_eol;
}
/**
* esacape values
*
* @param $text
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function escapeText($text)
{
return Mage::helper('core')->jsQuoteEscape($text);
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Abstract.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* abstract attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* @method bool getIsMultipleSelect()
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Abstract extends Ultimate_ModuleCreator_Model_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'abstract';
/**
* attribute object
*
* @var mixed
*/
protected $_attribute = null;
/**
* sql column ddl type
*
* @var string
*/
protected $_typeDdl = 'TYPE_TEXT';
/**
* sql column ddl size
*
* @var string
*/
protected $_sizeDdl = '255';
/**
* eav setup type
*
* @var string
*/
protected $_setupType = 'varchar';
/**
* eav setup backend
*
* @var string
*/
protected $_setupBackend = '';
/**
* eav setup input
*
* @var string
*/
protected $_setupInput = 'text';
/**
* eav setup source
*
* @var string
*/
protected $_setupSource = '';
/**
* set the attribute
*
* @param Ultimate_ModuleCreator_Model_Attribute $attribute
* @return Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function setAttribute(Ultimate_ModuleCreator_Model_Attribute $attribute)
{
$this->_attribute = $attribute;
return $this;
}
/**
* get attribute object
*
* @access public
* @return Ultimate_ModuleCreator_Model_Attribute|null
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAttribute()
{
return $this->_attribute;
}
/**
* get entity
*
* @access public
* @return Ultimate_ModuleCreator_Model_Entity
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEntity()
{
return $this->getAttribute()->getEntity();
}
/**
* get module
*
* @access public
* @return Ultimate_ModuleCreator_Model_Module
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getModule()
{
return $this->getAttribute()->getModule();
}
/**
* get namespace
*
* @access public
* @param bool $lower
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getNamespace($lower = false)
{
return $this->getModule()->getNamespace($lower);
}
/**
* check if attribute can be in admin grid
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminGrid()
{
return $this->getAttribute()->getData('admin_grid');
}
/**
* get column options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminColumnOptions()
{
return '';
}
/**
* get text for rss
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRssText()
{
$eol = $this->getEol();
$attribute = $this->getAttribute();
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$html = $this->getPadding(3);
$html .= '$'.'description .= \'<div>\'.'.$eol.$this->getPadding(4).'Mage::helper(\'';
$html .= $namespace.'_'.$module;
$html .= '\')->__(\''.$attribute->getLabel();
$html .= '\').\': '.$eol.$this->getPadding(4).'\'.$item->get';
$html .= $this->getAttribute()->getMagicMethodCode();
$html .= '().'.$eol.$this->getPadding(4).'\'</div>\';'.$this->getEol();
return $html;
}
/**
* get the type for the form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
return 'text';
}
/**
* get column ddl type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTypeDdl()
{
return $this->_typeDdl;
}
/**
* get column ddl size
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSizeDdl()
{
return $this->_sizeDdl;
}
/**
* get the html for frontend
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFrontendHtml()
{
$html = '<?php echo Mage::helper(\'';
$html .= $this->getNamespace(true).'_'.$this->getModule()->getLowerModuleName();
$html .= '\')->__(\'';
$html .= $this->getAttribute()->getLabel();
$html .= '\');?>:<?php echo $_';
$html .= strtolower($this->getAttribute()->getEntity()->getNameSingular());
$html .= '->get'.$this->getAttribute()->getMagicMethodCode().'();?>';
$html .= $this->getHelper()->getEol();
return $html;
}
/**
* get the setup type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupType()
{
return $this->_setupType;
}
/**
* get setup backend type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupBackend()
{
return $this->_setupBackend;
}
/**
* get the setup input
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupInput()
{
return $this->_setupInput;
}
/**
* get the setup source
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupSource()
{
return $this->_setupSource;
}
/**
* check if attribute is visible
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getVisible()
{
return true;
}
/**
* check if source needs to be generated
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getGenerateSource()
{
return false;
}
/**
* get additional setup values
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdditionalSetup()
{
return '';
}
/**
* check if attribute is required
*
* @access public
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRequired()
{
return $this->getAttribute()->getData('required');
}
/**
* check if attribute is yes/no
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getIsYesNo()
{
return false;
}
/**
* can use editor
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEditor()
{
return false;
}
/**
* get attribute options for source model
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAttributeOptions()
{
return $this->getPadding(2).'return array();';
}
/**
* get admin from options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormOptions()
{
$options = '';
$padding = $this->getPadding(4);
$eol = $this->getEol();
$note = $this->getAttribute()->getNote();
if ($note) {
$options .= $padding."'note' => $"."this->__('".Mage::helper('core')->jsQuoteEscape($note)."'),".$eol;
}
if ($this->getRequired()) {
$options .= $padding."'required' => true,".$eol;
$options .= $padding."'class' => 'required-entry',".$eol;
}
return $options.$eol;
}
/**
* getter for attribute type
*
* @return string
* @access public
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getType()
{
return $this->_type;
}
/**
* getter xml node for attribute
*
* @return string
* @access public
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTypeConfigPath()
{
return Ultimate_ModuleCreator_Helper_Data::ATTRIBUTE_TYPES_PATH.'/'.$this->getType();
}
/**
* getter config for attribute
*
* @access public
* @param $path
* @return Varien_Simplexml_Element
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getConfig($path = null)
{
if (!is_null($path)) {
$path = $this->getTypeConfigPath().'/'.$path;
} else {
$path = $this->getTypeConfigPath();
}
/** @var Ultimate_ModuleCreator_Helper_Data $helper */
$helper = Mage::helper('modulecreator');
return $helper->getConfig()->getNode($path);
}
/**
* check if attribute can behave as name
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getIsAllowedAsName()
{
return (bool)(string)$this->getConfig('allow_is_name');
}
/**
* check if attribute can be in mass update
*
* @access public
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getMassUpdate()
{
return (bool)(string)$this->getConfig('mass_update');
}
/**
* get values for mass action
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getMassActionValues()
{
return '';
}
/**
* get attribute default value
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueProcessed()
{
return $this->getAttribute()->getData('default_value');
}
/**
* get attribute default value setup content
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueSetup()
{
return '';
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Country.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* country attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Country extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'country';
/**
* sql column ddl size
*
* @var string
*/
protected $_sizeDdl = '2';
/**
* eav setup input
*
* @var string
*/
protected $_setupInput = 'select';
/**
* get admin column options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminColumnOptions()
{
$options = $this->getEol();
$options .= $this->getPadding(4);
$options .= "'type'=> 'country',".$this->getEol();
return $options;
}
/**
* get the type for the form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
return 'select';
}
/**
* get text for rss
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRssText()
{
$eol = $this->getEol();
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$text = $this->getPadding(3);
$text .= '$description .= \'<div>\''.$eol.$this->getPadding(4).'.Mage::helper(\'';
$text .= $namespace.'_'.$module;
$text .= '\')->__("';
$text .= $this->getAttribute()->getLabel();
$text .= '").\':'.$eol.$this->getPadding(4).'\'.(($item->get';
$text .= $this->getAttribute()->getMagicMethodCode();
$text .= '()) '.$eol.$this->getPadding(4).'? Mage::getModel(\'directory/country\')->load($item->get';
$text .= $this->getAttribute()->getMagicMethodCode();
$text .= '())->getName():'.$eol.$this->getPadding(4).'Mage::helper(\'';
$text .= $namespace.'_'.$module;
$text .= '\')->__(\'None\')).'.$eol.$this->getPadding(4).'\'</div>\';'.$this->getEol();
return $text;
}
/**
* get html for frontend
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFrontendHtml()
{
$entityName = $this->getEntity()->getNameSingular(true);
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
if ($this->getEntity()->getIsEav()) {
$html = '<?php echo Mage::helper(\'';
$html .= $namespace.'_'.$module;
$html .= '\')->__("';
$html .= $this->getAttribute()->getLabel();
$html .= '");?>:<?php echo $_';
$html .= $this->getEntity()->getNameSingular(true);
$html .= '->getAttributeText(\'';
$html .= $this->getAttribute()->getCode().'\');?>'.$this->getEol();
return $html;
}
$html = '<?php echo Mage::helper(\'';
$html .= $namespace.'_'.$module;
$html .= '\')->__("';
$html .= $this->getAttribute()->getLabel();
$html .= '");?>:<?php echo ($_';
$html .= $entityName.'->get'.$this->getAttribute()->getMagicMethodCode();
$html .= '()) ? Mage::getModel(\'directory/country\')->load($_';
$html .= $entityName.'->get'.$this->getAttribute()->getMagicMethodCode();
$html .= '())->getName():Mage::helper(\'';
$html .= $namespace.'_'.$module;
$html .= '\')->__(\'None\') ?>'.$this->getEol();
return $html;
}
/**
* get source for setup
*
* @access public
* @return string|void
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupSource()
{
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
return $namespace.'_'.$module.'/attribute_source_country';
}
/**
* get admin from options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormOptions()
{
$options = parent::getFormOptions();
$options .= $this->getPadding(3);
$options .="'values'=> Mage::getResourceModel('directory/country_collection')->toOptionArray(),";
$options .= $this->getEol();
return $options;
}
/**
* get values for mass action
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getMassActionValues()
{
return 'Mage::getResourceModel(\'directory/country_collection\')->toOptionArray()'.$this->getEol();
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Decimal.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* decimal attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Decimal extends Ultimate_ModuleCreator_Model_Attribute_Type_Int
{
/**
* type code
*
* @var string
*/
protected $_type = 'decimal';
/**
* sql column ddl type
*
* @var string
*/
protected $_typeDdl = 'TYPE_DECIMAL';
/**
* sql column ddl size
*
* @var string
*/
protected $_sizeDdl = "'12,4'";
/**
* eav setup type
*
* @var string
*/
protected $_setupType = 'decimal';
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Abstract.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* abstract attribute dropdown type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* @method string getAttributeOptions
* @method string getSetupType()
* @method string getTypeDdl()
* @method string getSizeDdl()
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Abstract extends Ultimate_ModuleCreator_Model_Abstract
{
/**
* type attribute
*
* @var Ultimate_ModuleCreator_Model_Attribute_Type_Decimal
*/
protected $_typeAttribute;
/**
* check if source needs to be generated
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getGenerateSource()
{
return true;
}
/**
* type attribute setter
*
* @access public
* @param Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown $attributeType
* @return $this
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function setTypeAttribute(Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown $attributeType)
{
$this->_typeAttribute = $attributeType;
return $this;
}
/**
* type attribute getter
*
* @access public
* @return Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTypeAttribute()
{
return $this->_typeAttribute;
}
/**
* get additional setup values
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdditionalSetup()
{
return '';
}
/**
* get attribute default value
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueProcessed()
{
return '';
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Category.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* category attribute dropdown type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Category extends Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Product
{
/**
* entity code for source
*
* @var string
*/
protected $_entityCode = 'catalog_category';
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Custom.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* custom attribute dropdown type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Custom extends Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Abstract
{
/**
* check if source needs to be generated
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getGenerateSource()
{
return $this->getTypeAttribute()->getAttribute()->getEntity()->getIsFlat();
}
/**
* get additional setup values
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdditionalSetup()
{
$content = '';
if ($this->getTypeAttribute()->getAttribute()->getEntity()->getIsEav()) {
$padding = $this->getPadding(6);
$tab = $this->getPadding();
$eol = $this->getEol();
if ($this->getTypeAttribute()->getAttribute()->getOptions()) {
$content .= $padding."'option' =>".$eol;
$content .= $padding.$tab."array (".$eol;
$content .= $padding.$tab.$tab."'values' =>".$eol;
$content .= $padding.$tab.$tab.$tab."array (".$eol;
foreach ($this->getTypeAttribute()->getAttribute()->getOptions(true) as $option) {
$content .= $padding.$tab.$tab.$tab.$tab."'".Mage::helper('core')->jsQuoteEscape($option)."',".$eol;
}
$content .= $padding.$tab.$tab.$tab."),".$eol;
$content .= $padding.$tab.$tab."),".$eol;
}
}
return $content;
}
/**
* get attribute options for source model
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAttributeOptions()
{
$content = '';
$padding = $this->getPadding(2);
$tab = $this->getPadding();
$eol = $this->getEol();
$module = $this->getTypeAttribute()->getAttribute()->getEntity()->getModule()->getLowerModuleName();
$namespace = $this->getTypeAttribute()->getAttribute()->getEntity()->getModule()->getNamespace(true);
if ($this->getTypeAttribute()->getAttribute()->getOptions()) {
$content .= $padding.'$options = array('.$eol;
foreach ($this->getTypeAttribute()->getAttribute()->getOptions(true) as $index=>$option) {
$content .= $padding.$tab.'array('.$eol;
$content .= $padding.$tab.$tab."'label' => Mage::helper('";
$content .= $namespace.'_'.$module."')->__('".Mage::helper('core')->jsQuoteEscape($option)."'),".$eol;
$content .= $padding.$tab.$tab."'value' => ".($index+1).$eol;
$content .= $padding.$tab.'),'.$eol;
}
$content .= $padding.");".$eol;
$content .= $padding.'if ($withEmpty) {'.$eol;
$content .= $padding.$tab.'array_unshift($options, array(\'label\'=>\'\', \'value\'=>\'\'));'.$eol;
$content .= $padding.'}'.$eol;
$content .= $padding.'return $options;'.$eol;
} else {
$content = $padding.'return array();';
}
return $content;
}
/**
* get attribute default value
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueProcessed()
{
if ($this->getTypeAttribute()->getAttribute()->getForcedDefaultValue()) {
return $this->getTypeAttribute()->getAttribute()->getForcedDefaultValue();
}
if ($this->getTypeAttribute()->getAttribute()->getEntity()->getIsFlat()) {
$options = $this->getTypeAttribute()->getAttribute()->getOptions(true);
$defaultValue = trim($this->getTypeAttribute()->getAttribute()->getDefaultValue());
$defaultValue = explode(Ultimate_ModuleCreator_Model_Attribute::OPTION_SEPARATOR, $defaultValue);
$multiselectValues = array();
foreach ($options as $index=>$option) {
if (in_array($option, $defaultValue)) {
if ($this->getTypeAttribute() instanceof Ultimate_ModuleCreator_Model_Attribute_Type_Multiselect) {
$multiselectValues[] = $index + 1;
} else {
return ($index + 1);
}
}
}
return implode(',', $multiselectValues);
}
//EAV default values are handled in the install script. there is no way of doing it through the definition.
return '';
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Customer.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* customer attribute dropdown type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Customer extends Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Product
{
/**
* entity code for source
*
* @var string
*/
protected $_entityCode = 'customer';
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Product.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* product attribute dropdown type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Product extends Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Abstract
{
/**
* entity code for source
*
* @var string
*/
protected $_entityCode = 'catalog_product';
/**
* entity attribute
*
* @var string
*/
protected $_entityAttribute = null;
/**
* get attribute options for source model
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAttributeOptions()
{
$content = '';
$padding = $this->getPadding(2);
$eol = $this->getEol();
$attrCode = $this->getTypeAttribute()->getAttribute()->getOptionsSourceAttribute();
$content .= $padding.'$'."source = Mage::getModel('eav/config')->getAttribute('";
$content .= $this->getEntityCode()."', '".$attrCode."');".$eol;
$content .= $padding.'return $source->getSource()->getAllOptions($withEmpty, $defaultValues);';
return $content;
}
/**
* get entity code
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEntityCode()
{
return $this->_entityCode;
}
/**
* get attribute setup type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupType()
{
$attrCode = $this->getTypeAttribute()->getAttribute()->getOptionsSourceAttribute();
/** @var Mage_Eav_Model_Config $config */
$config = Mage::getModel('eav/config');
$productAttribute = $config->getAttribute($this->getEntityCode(), $attrCode);
if ($productAttribute->getId()) {
$type = $productAttribute->getBackendType();
if ($type == 'static') {
return false;
}
return $type;
}
return false;
}
/**
* get attribute setup type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTypeDdl()
{
$entityAttribute = $this->_getEntityAttribute();
switch($entityAttribute->getBackendType()) {
case 'int':
return 'TYPE_INTEGER';
break;
case 'varchar':
return 'TYPE_TEXT';
break;
case 'text':
return 'TYPE_TEXT';
case 'datetime':
return 'TYPE_DATETIME';
break;
case 'decimal':
return 'TYPE_DECIMAL';
break;
default:
return false;
break;
}
}
/**
* get attribute setup type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTypeSize()
{
$entityAttribute = $this->_getEntityAttribute();
switch($entityAttribute->getBackendType()) {
case 'int':
return 'null';
break;
case 'varchar':
return '255';
break;
case 'text':
return "'64k'";
break;
case 'datetime':
return "255";
break;
case 'decimal':
return "'12,4'";
break;
default:
return false;
break;
}
}
/**
* get the source model attribute
*
* @access public
* @return null|Mage_Eav_Model_Entity_Attribute_Abstract
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
protected function _getEntityAttribute()
{
if (is_null($this->_entityAttribute)) {
$attrCode = $this->getTypeAttribute()->getAttribute()->getOptionsSourceAttribute();
/** @var Mage_Eav_Model_Config $config */
$config = Mage::getModel('eav/config');
$productAttribute = $config->getAttribute($this->getEntityCode(), $attrCode);
$this->_entityAttribute = $productAttribute;
}
return $this->_entityAttribute;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* dropdown attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'dropdown';
/**
* dropdown subtype
*
* @var Ultimate_ModuleCreator_Model_Abstract
*/
protected $_subTypeInstance;
/**
* sql colum ddl type
*
* @var string
*/
protected $_typeDdl = 'TYPE_INTEGER';
/**
* sql colum ddl size
*
* @var string
*/
protected $_sizeDdl = 'null';
/**
* eav setup type
*
* @var string
*/
protected $_setupType = 'int';
/**
* eav setup input
*
* @var string
*/
protected $_setupInput = 'select';
/**
* eav setup source
*
* @var string
*/
protected $_setupSource = 'eav/entity_attribute_source_table';
/**
* get source for setup
*
* @access public
* @return string|void
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupSource()
{
if (!$this->getGenerateSource()) {
return parent::getSetupSource();
}
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$entity = $this->getEntity()->getNameSingular(true);
return $namespace.'_'.$module.'/'.$entity.'_attribute_source_'.$this->getAttribute()->getCodeForFileName();
}
/**
* get admin column options
*
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminColumnOptions()
{
$options = $this->getEol();
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$entity = strtolower($this->getAttribute()->getEntity()->getNameSingular());
$attr = $this->getAttribute()->getCode();
$options .= $this->getPadding(4)."'type' => 'options',".$this->getEol();
if ($this->getAttribute()->getEntity()->getIsEav()) {
$options .= $this->getPadding(4).
"'options' => Mage::helper('".$namespace.'_'.$module.
"')->convertOptions(".$this->getEol().$this->getPadding(5)."Mage::getModel('eav/config')->getAttribute('".
$namespace.'_'.$module.'_'.$entity."', '".$attr.
"')->getSource()->getAllOptions(false)".$this->getEol().$this->getPadding(4).")".$this->getEol();
} else {
$options .= $this->getPadding(4).
"'options' => Mage::helper('".$namespace.'_'.$module.
"')->convertOptions(".$this->getEol().$this->getPadding(5)."Mage::getModel('".
$namespace.'_'.$module.'/'.$entity."_attribute_source_".
$this->getAttribute()->getCodeForFileName(false).
"')->getAllOptions(false)".$this->getEol().$this->getPadding(4).")".$this->getEol();
}
return $options;
}
/**
* get the type for the form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
return 'select';
}
/**
* get text for rss
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRssText()
{
$eol = $this->getEol();
$entityName = $this->getEntity()->getNameSingular(true);
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
if ($this->getAttribute()->getEntity()->getIsEav()) {
return $this->getPadding(3).
'$description .= \'<div>\'.'.$eol.$this->getPadding(4).'Mage::helper(\''.
$namespace.'_'.$module.'\')->__("'.$this->getAttribute()->getLabel().
'").\': \''.$eol.$this->getPadding(4).'.$item->getAttributeText(\''.
$this->getAttribute()->getCode().'\').'.$eol.$this->getPadding(4).'\'</div>\';'.$this->getEol();
} else {
$attributeFile = $this->getAttribute()->getCodeForFileName(false);
$code = $this->getAttribute()->getMagicMethodCode();
return $this->getPadding(3).
'$description .= \'<div>\'.'.$eol.$this->getPadding(4).'Mage::helper(\''.
$namespace.'_'.$module.'\')->__("'.
$this->getAttribute()->getLabel().'").\': \''.$eol.$this->getPadding(4).'.Mage::getSingleton(\''.
$namespace.'_'.$module.'/'.$entityName.'_attribute_source_'.$attributeFile.
'\')->getOptionText($item->get'.$code.'()).'.$eol.$this->getPadding(4).'\'</div>\';'.$this->getEol();
}
}
/**
* check if source needs to be generated
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getGenerateSource()
{
return $this->getSubTypeInstance()->getGenerateSource();
}
/**
* get subtype instance
*
* @access public
* @return Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Abstract
* @throws Ultimate_ModuleCreator_Exception
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSubTypeInstance()
{
if (!$this->_subTypeInstance) {
$type = $this->getAttribute()->getOptionsSource();
try{
/** @var Ultimate_ModuleCreator_Helper_Data $helper */
$helper = Mage::helper('modulecreator');
$types = $helper->getDropdownSubtypes(false);
$instanceModel = (string)$types->$type->type_model;
/** @var Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Abstract $subtypeInstance */
$subtypeInstance = Mage::getModel($instanceModel);
$this->_subTypeInstance = $subtypeInstance;
$this->_subTypeInstance->setTypeAttribute($this);
} catch (Exception $e){
throw new Ultimate_ModuleCreator_Exception("Invalid dropdown subtype: ". $type);
}
}
return $this->_subTypeInstance;
}
/**
* get additional setup values
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdditionalSetup()
{
return $this->getSubTypeInstance()->getAdditionalSetup();
}
/**
* get html for frontend
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFrontendHtml()
{
$entityName = $this->getEntity()->getNameSingular(true);
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
if ($this->getAttribute()->getEntity()->getIsEav()) {
return '<?php echo Mage::helper(\''.
$namespace.'_'.$module.'\')->__("'.
$this->getAttribute()->getLabel().'");?>:<?php echo $_'.
$entityName.'->getAttributeText(\''.
$this->getAttribute()->getCode().'\');?>'.$this->getEol();
} else {
$attributeFile = $this->getAttribute()->getCodeForFileName(false);
$code = $this->getAttribute()->getMagicMethodCode();
return '<?php echo Mage::helper(\''.
$namespace.'_'.$module.'\')->__("'.
$this->getAttribute()->getLabel().
'");?>:<?php echo Mage::getSingleton(\''.
$namespace.'_'.$module.'/'.$entityName.'_attribute_source_'.$attributeFile.
'\')->getOptionText($_'.$entityName.'->get'.$code.'())'.';?>'.$this->getEol();
}
}
/**
* get attribute options for source model
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAttributeOptions()
{
return $this->getSubTypeInstance()->getAttributeOptions();
}
/**
* get the options for form input
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormOptions()
{
$options = parent::getFormOptions();
$padding = $this->getPadding(4);
$module = $this->getModule()->getLowerModuleName();
$entity = $this->getEntity()->getNameSingular(true);
$namespace = $this->getNamespace(true);
$options .= $padding."'values'=> Mage::getModel('".
$namespace.'_'.$module.'/'.$entity."_attribute_source_".
$this->getAttribute()->getCodeForFileName(false).
"')->getAllOptions(".$this->getOptionsFlag()."),".$this->getEol();
return $options;
}
/**
* check if options should be returned with empty
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getOptionsFlag()
{
return 'true';
}
/**
* get the setup type of the dropdown
*
* @access public
* @return string|void
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupType()
{
$setupType = $this->getSubTypeInstance()->getSetupType();
if (empty($setupType)) {
return parent::getSetupType();
}
return $setupType;
}
/**
* get the setup type of the dropdown
*
* @access public
* @return string|void
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTypeDdl()
{
$setupType = $this->getSubTypeInstance()->getTypeDdl();
if (empty($setupType)) {
return parent::getTypeDdl();
}
return $setupType;
}
/**
* get column ddl size
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSizeDdl()
{
$size = $this->getSubTypeInstance()->getSizeDdl();
if (empty($size)) {
return parent::getSizeDdl();
}
return $size;
}
/**
* get values for mass action
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getMassActionValues()
{
$module = $this->getModule()->getLowerModuleName();
$entity = $this->getEntity()->getNameSingular(true);
$namespace = $this->getNamespace(true);
if ($this->getEntity()->getIsEav()) {
return "Mage::getModel('eav/config')->getAttribute('".
$namespace.'_'.$module."_".$entity."', '".
$this->getAttribute()->getCode()."')".$this->getEol().$this->getPadding(7)."->getSource()->getAllOptions(".
$this->getOptionsFlag()."),".$this->getEol();
} else {
return "Mage::getModel('".
$namespace.'_'.$module.'/'.$entity."_attribute_source_".
$this->getAttribute()->getCodeForFileName(false).
"')".$this->getEol().$this->getPadding(7)."->getAllOptions(".$this->getOptionsFlag()."),".$this->getEol();
}
}
/**
* get attribute default value
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueProcessed()
{
return $this->getSubTypeInstance()->getDefaultValueProcessed();
}
/**
* get attribute default value setup content
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueSetup()
{
$content = '';
if ($this->getSubTypeInstance() instanceof Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Custom
&& $this->getAttribute()->getDefaultValue()
) {
$eol = $this->getEol();
$entity = $this->getEntity();
$attribute= $this->getAttribute();
$content .= '$attribute = Mage::getSingleton(\'eav/config\')->getAttribute(\''.
$this->getNamespace(true).'_'.$this->getModule()->getLowerModuleName().'_'.$entity->getNameSingular().
'\', \''.$attribute->getCode().'\');'.$eol;
$content .= '$options = $attribute->getSource()->getAllOptions(false);'.$eol;
$content .= 'foreach ($options as $option) {'.$eol;
$content .= $this->getPadding().'if ($option[\'label\'] == \''.
Mage::helper('core')->jsQuoteEscape($attribute->getDefaultValue()).'\') {'.$eol;
$content .= $this->getPadding(2).
'$this->updateAttribute(\''.
$this->getNamespace(true).'_'.$this->getModule()->getLowerModuleName().'_'.$entity->getNameSingular().
'\', \''.$attribute->getCode().'\', \'default_value\', $option[\'value\']);'.$eol;
$content .= $this->getPadding().'}'.$eol;
$content .= '}'.$eol;
}
return $content;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/File.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* file attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_File extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'file';
/**
* eav setup input
*
* @var string
*/
protected $_setupInput = 'file';
/**
* don't show in admin grid
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminGrid()
{
return false;
}
/**
* check if attribute is required
*
* @access public
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRequired()
{
return false;
}
/**
* get the type for the form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
return 'file';
}
/**
* get text for rss
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRssText()
{
$content = '';
$entityName = $this->getEntity()->getNameSingular(true);
$eol = $this->getEol();
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$content .= $this->getPadding(3).'if ($item->get'.$this->getAttribute()->getMagicMethodCode().'()) {'.$eol;
$content .= $this->getPadding(4).'$description .= \'<div>\';'.$eol;
$content .= $this->getPadding(4).'$description .= Mage::helper(\''.
$namespace.'_'.$module.'\')->__(\''.$this->getAttribute()->getLabel().'\');'.$eol;
$content .= $this->getPadding(4).'$description .= \' <a href="\'.Mage::helper(\''.
$namespace.'_'.$module.'/'.$entityName.'\')->getFileBaseUrl().$item->get'.
$this->getAttribute()->getMagicMethodCode().'().\'">\';'.$eol;
$content .= $this->getPadding(4).'$description .= \' <span>\'. basename($item->get'.
$this->getAttribute()->getMagicMethodCode().'()).\'</span>\';'.$eol;
$content .= $this->getPadding(4).'$description .= \' </a>\';'.$eol;
$content .= $this->getPadding(4).'$description .= \'</div>\';'.$eol;
$content .= $this->getPadding(3).'}'.$eol;
return $content;
}
/**
* get the html for frontend
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFrontendHtml()
{
$content = '';
$eol = $this->getEol();
$entityName = $this->getAttribute()->getEntity()->getNameSingular(true);
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$content .= $this->getPadding().'<?php if ($_'.$entityName.'->get'.
$this->getAttribute()->getMagicMethodCode().'()) :?>'.$eol;
$content .= $this->getPadding(2).'<a href="<?php echo Mage::helper(\''.
$namespace.'_'.$module.'/'.$entityName.'\')->getFileBaseUrl().$_'.
$entityName.'->get'.$this->getAttribute()->getMagicMethodCode().'();?>">'.$eol;
$content .= $this->getPadding(3).'<span><?php echo basename($_'.
$entityName.'->get'.$this->getAttribute()->getMagicMethodCode().'())?></span>'.$eol;
$content .= $this->getPadding(2).'</a>'.$eol;
$content .= $this->getPadding().'<?php endif;?>'.$eol;
return $content;
}
/**
* get the setup backend type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupBackend()
{
$attribute = $this->getAttribute();
$entity = $attribute->getEntity();
$module = $this->getModule();
return $this->getNamespace(true).'_'.
$module->getLowerModuleName().'/'.
$entity->getNameSingular(true).'_attribute_backend_file';
}
/**
* get attribute default value
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueProcessed()
{
return '';
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Image.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* image attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Image extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'image';
/**
* eav setup input
*
* @var string
*/
protected $_setupInput = 'image';
/**
* don't show in admin grid
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminGrid()
{
return false;
}
/**
* check if attribute is required
*
* @access public
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRequired()
{
return false;
}
/**
* get the type for the form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
return 'image';
}
/**
* get text for rss
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRssText()
{
$eol = $this->getEol();
$content = '';
$entityName = $this->getEntity()->getNameSingular(true);
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$content .= $this->getPadding(3).'if ($item->get'.$this->getAttribute()->getMagicMethodCode().'()) {'.$eol;
$content .= $this->getPadding(4).'$description .= \'<div>\';'.$eol;
$content .= $this->getPadding(4).'$description .= Mage::helper(\''.$namespace.'_'.$module.
'\')->__(\''.$this->getAttribute()->getLabel().'\');'.$eol;
$content .= $this->getPadding(4).'$description .= \'<img src="\'.Mage::helper(\''.
$namespace.'_'.$module.'/'.$entityName.'_image\')->init($item, \''.
$this->getAttribute()->getCode().'\')->resize(75).\'" alt="\'.$this->escapeHtml($item->get'.
$this->getEntity()->getNameAttributeMagicCode().'()).\'" />\';'.$eol;
$content .= $this->getPadding(4).'$description .= \'</div>\';'.$eol;
$content .= $this->getPadding(3).'}'.$eol;
return $content;
}
/**
* get the html for frontend
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFrontendHtml()
{
$eol = $this->getEol();
$content = '';
$entityName = $this->getEntity()->getNameSingular(true);
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$content .= '<?php if ($_'.$entityName.'->get'.$this->getAttribute()->getMagicMethodCode().'()) :?>'.$eol;
$content .= $this->getHelper()->getPadding().
'<img src="<?php echo Mage::helper(\''.$namespace.'_'.$module.'/'.$entityName.'_image\')->init($_'.
$entityName.', \''.$this->getAttribute()->getCode().
'\')->resize(75);?>" alt="<?php echo $this->escapeHtml($_'.
$entityName.'->get'.$this->getAttribute()->getEntity()->getNameAttributeMagicCode().'());?>" />'.$eol;
$content .= '<?php endif;?>'.$eol;
return $content;
}
/**
* get the setup backend type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupBackend()
{
$attribute = $this->getAttribute();
$entity = $attribute->getEntity();
$module = $entity->getModule();
return $this->getNamespace(true).'_'.
$module->getLowerModuleName().'/'.
$entity->getNameSingular(true).'_attribute_backend_image';
}
/**
* get attribute default value
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueProcessed()
{
return '';
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Int.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* int attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Int extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'int';
/**
* sql column ddl type
*
* @var string
*/
protected $_typeDdl = 'TYPE_INTEGER';
/**
* sql column ddl size
*
* @var string
*/
protected $_sizeDdl = 'null';
/**
* eav setup type
*
* @var string
*/
protected $_setupType = 'int';
/**
* get admin column options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminColumnOptions()
{
$options = $this->getEol();
$options .= $this->getPadding(4);
$options .= "'type'=> 'number',".$this->getEol();
return $options;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Multiselect.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* multiselect attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Multiselect extends Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown
{
/**
* type code
*
* @var string
*/
protected $_type = 'multiselect';
/**
* sql column ddl type
*
* @var string
*/
protected $_typeDdl = 'TYPE_TEXT';
/**
* sql column ddl size
*
* @var string
*/
protected $_sizeDdl = "'64k'";
/**
* eav setup input
*
* @var string
*/
protected $_setupInput = 'multiselect';
/**
* eav setup type
*
* @var string
*/
protected $_setupType = 'text';
/**
* backend setup type
*
* @var string
*/
protected $_setupBackend = 'eav/entity_attribute_backend_array';
/**
* don't show in admin grid
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminGrid()
{
return false;
}
/**
* get the type for the form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
return 'multiselect';
}
/**
* check if attribute is multiple select
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getIsMultipleSelect()
{
return true;
}
/**
* get the setup type of the dropdown
*
* @access public
* @return string|void
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupType()
{
return $this->_setupType;
}
/**
* get attribute setup type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTypeDdl()
{
return $this->_typeDdl;
}
/**
* check if options should be returned with empty
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getOptionsFlag()
{
return 'false';
}
/**
* get values for mass action
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getMassActionValues()
{
return '';
}
/**
* get attribute default value setup content
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueSetup()
{
$content = '';
if ($this->getSubTypeInstance() instanceof Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Custom
&& $this->getAttribute()->getDefaultValue()
) {
$eol = $this->getEol();
$entity = $this->getEntity();
$attribute= $this->getAttribute();
$content .= '$attribute = Mage::getSingleton(\'eav/config\')->getAttribute(\''.
$this->getNamespace(true).'_'.$this->getModule()->getLowerModuleName().'_'.
$entity->getNameSingular().'\', \''.$attribute->getCode().'\');'.$eol;
$content .= '$options = $attribute->getSource()->getAllOptions(false);'.$eol;
$content .= '$defaultOptions = array();'.$eol;
$content .= 'foreach ($options as $option) {'.$eol;
$content .= $this->getPadding().'if (in_array($option[\'label\'], array(\''.
implode(
"','",
explode(
Ultimate_ModuleCreator_Model_Attribute::OPTION_SEPARATOR,
Mage::helper('core')->jsQuoteEscape($attribute->getDefaultValue())
)
).'\'))) {'.$eol;
$content .= $this->getPadding(2).'$defaultOptions[] = $option[\'value\'];'.$eol;
$content .= $this->getPadding().'}'.$eol;
$content .= '}'.$eol;
$content .= '$this->updateAttribute(\''.
$this->getNamespace(true).'_'.$this->getModule()->getLowerModuleName().'_'.
$entity->getNameSingular().'\', \''.$attribute->getCode().
'\', \'default_value\', implode(\',\', $defaultOptions));'.$eol;
}
return $content;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Signedint.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* int attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Signedint extends Ultimate_ModuleCreator_Model_Attribute_Type_Int
{
/**
* type code
*
* @var string
*/
protected $_type = 'signedint';
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Text.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* text attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Text extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'text';
/**
* get admin column options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminColumnOptions()
{
$options = $this->getEol();
$options .= $this->getPadding(4);
$options .= "'type'=> 'text',".$this->getEol();
return $options;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Textarea.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* textarea attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Textarea extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'textarea';
/**
* sql column ddl type
*
* @var string
*/
protected $_typeDdl = 'TYPE_TEXT';
/**
* sql column ddl size
*
* @var string
*/
protected $_sizeDdl = "'64k'";
/**
* eav setup type
*
* @var string
*/
protected $_setupType = 'text';
/**
* eav setup input
*
* @var string
*/
protected $_setupInput = 'textarea';
/**
* don't show in admin grid
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminGrid()
{
return false;
}
/**
* get the type for the form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
if ($this->getAttribute()->getEditor()) {
return 'editor';
}
return 'textarea';
}
/**
* can use editor
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEditor()
{
return $this->getAttribute()->getData('editor');
}
/**
* get the options for form input
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormOptions()
{
$options = '';
if ($this->getEditor() && !$this->getEntity()->getIsTree()) {
$options = $this->getPadding(3)."'config' => "."$"."wysiwygConfig,".$this->getEol();
}
$options .= parent::getFormOptions();
return $options;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Timestamp.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* timestamp attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Timestamp extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'timestamp';
/**
* sql column ddl type
*
* @var string
*/
protected $_typeDdl = 'TYPE_DATETIME';
/**
* eav setup type
*
* @var string
*/
protected $_setupType = 'datetime';
/**
* eav setup input
*
* @var string
*/
protected $_setupInput = 'date';
/**
* setup backend
*
* @var string
*/
protected $_setupBackend = 'eav/entity_attribute_backend_datetime';
/**
* get admin column options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminColumnOptions()
{
$options = $this->getEol();
$options .= $this->getPadding(4);
$options .= "'type'=> 'date',".$this->getEol();
return $options;
}
/**
* get the type for the form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
return 'date';
}
/**
* get html for frontend
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFrontendHtml()
{
$entityName = $this->getEntity()->getNameSingular(true);
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
return '<?php echo Mage::helper(\''.
$namespace.'_'.$module.'\')->__("'.
$this->getAttribute()->getLabel().
'");?>: <?php echo Mage::helper(\'core\')->formatDate($_'.
$entityName.'->get'.$this->getAttribute()->getMagicMethodCode().'(), \'full\');?>'.$this->getEol();
}
/**
* get options for admin form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormOptions()
{
$options = parent::getFormOptions();
$padding = $this->getPadding(3);
$eol = $this->getEol();
$options .= $padding.'\'image\' => $this->getSkinUrl(\'images/grid-cal.gif\'),'.$eol;;
$options .= $padding.
'\'format\' => Mage::app()->getLocale()->getDateFormat(Mage_Core_Model_Locale::FORMAT_TYPE_SHORT),'.$eol;
return $options;
}
/**
* get text for rss
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRssText()
{
$attribute = $this->getAttribute();
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
return $this->getPadding(3).'$'.
'description .= \'<div>\'.Mage::helper(\''.
$namespace.'_'.$module.'\')->__(\''.
$attribute->getLabel().'\').\': \'.Mage::helper(\'core\')->formatDate($item->get'.
$this->getAttribute()->getMagicMethodCode().'(), \'full\').\'</div>\';'.$this->getEol();
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Yesno.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* yes/no attribute type
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ultimate_ModuleCreator_Model_Attribute_Type_Yesno extends Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
{
/**
* type code
*
* @var string
*/
protected $_type = 'yesno';
/**
* sql column ddl type
*
* @var string
*/
protected $_typeDdl = 'TYPE_SMALLINT';
/**
* sql column ddl size
*
* @var string
*/
protected $_sizeDdl = 'null';
/**
* eav setup type
*
* @var string
*/
protected $_setupType = 'int';
/**
* eav setup input
*/
protected $_setupInput = 'select';
/**
* eav setup source
*/
protected $_setupSource = 'eav/entity_attribute_source_boolean';
/**
* get admin column options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminColumnOptions()
{
$eol = $this->getEol();
$options = $eol;
$extension = $this->getModule()->getExtensionName(true);
$options .= $this->getPadding(4)."'type' => 'options',".$eol;
$options .= $this->getPadding(5)."'options' => array(".$eol;
$options .= $this->getPadding(5)."'1' => Mage::helper('".$extension."')->__('Yes'),".$eol;
$options .= $this->getPadding(5)."'0' => Mage::helper('".$extension."')->__('No'),".$eol;
$options .= $this->getPadding(4).")".$eol;
return $options;
}
/**
* get the type for the form
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
return 'select';
}
/**
* get text for rss
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRssText()
{
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
return $this->getPadding(3).
'$description .= \'<div>\'.Mage::helper(\''.
$namespace.'_'.$module.'\')->__("'.
$this->getAttribute()->getLabel().
'").\':\'.(($item->get'.$this->getAttribute()->getMagicMethodCode().
'() == 1) ? Mage::helper(\''.$namespace.'_'.$module.
'\')->__(\'Yes\') : Mage::helper(\''.
$namespace.'_'.$module.'\')->__(\'No\')).\'</div>\';'.$this->getEol();
}
/**
* get html for frontend
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFrontendHtml()
{
$entityName = $this->getEntity()->getNameSingular(true);
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
return '<?php echo Mage::helper(\''.
$namespace.'_'.$module.'\')->__("'.
$this->getAttribute()->getLabel().
'");?>:<?php echo ($_'.
$entityName.'->get'.$this->getAttribute()->getMagicMethodCode().
'() == 1) ? Mage::helper(\''.$namespace.'_'.$module.
'\')->__(\'Yes\') : Mage::helper(\''.
$namespace.'_'.$module.'\')->__(\'No\') ?>'.$this->getEol();
}
/**
* check if attribute is yes/no
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getIsYesNo()
{
return true;
}
/**
* get the options for form input
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormOptions()
{
$options = parent::getFormOptions();
$padding = $this->getPadding(3);
$tab = $this->getPadding();
$eol = $this->getEol();
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$options .= $padding."'values'=> array(".$eol;
$options .= $padding.$tab.'array('.$eol;
$options .= $padding.$tab.$tab."'value' => 1,".$eol;
$options .= $padding.$tab.$tab."'label' => Mage::helper('".$namespace.'_'.$module."')->__('Yes'),".$eol;
$options .= $padding.$tab."),".$eol;
$options .= $padding.$tab.'array('.$eol;
$options .= $padding.$tab.$tab."'value' => 0,".$eol;
$options .= $padding.$tab.$tab."'label' => Mage::helper('".$namespace.'_'.$module."')->__('No'),".$eol;
$options .= $padding.$tab."),".$eol;
$options .= $padding."),".$eol;
return $options;
}
/**
* get values for mass action
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getMassActionValues()
{
$eol = $this->getEol();
$module = $this->getModule()->getLowerModuleName();
$namespace = $this->getNamespace(true);
$padding = $this->getPadding(7);
$tab = $this->getPadding();
$content = 'array('.$eol;
$content .= $padding.$tab."'1' => Mage::helper('".$namespace.'_'.$module."')->__('Yes'),".$eol;
$content .= $padding.$tab."'0' => Mage::helper('".$namespace.'_'.$module."')->__('No'),".$eol;
$content .= $padding.')'.$eol;
return $content;
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
/**
* @method Ultimate_ModuleCreator_Model_Attribute setIndex()
* @method string getForcedDefaultValue()
* @method string getDefaultValue()
* @method string getOptionsSourceAttribute()
* @method string getLabel()
* @method string getNote()
* @method int getPosition()
* @method string getCode()
* @method bool getIsName()
* @method Ultimate_ModuleCreator_Model_Attribute setUserDefined
* @method Ultimate_ModuleCreator_Model_Attribute setEditor
* @method string getType()
* @method Ultimate_ModuleCreator_Model_Attribute setCode()
* @method Ultimate_ModuleCreator_Model_Attribute setType()
* @method Ultimate_ModuleCreator_Model_Attribute setLabel()
* @method string getOptionsSource()
* @method Ultimate_ModuleCreator_Model_Attribute setOptionsSource()
* @method Ultimate_ModuleCreator_Model_Attribute setForcedSource()
* @method Ultimate_ModuleCreator_Model_Attribute setScope()
* @method Ultimate_ModuleCreator_Model_Attribute setUseFilterIndex()
* @method Ultimate_ModuleCreator_Model_Attribute setPosition()
* @method Ultimate_ModuleCreator_Model_Attribute setForcedSetupType()
* @method Ultimate_ModuleCreator_Model_Attribute setForcedVisible()
* @method string getPreElementText()
* @method bool getUseFilterIndex()
* @method bool hasForcedSetupType()
* @method string getForcedSetupType()
* @method string getForcedSetupBackend()
* @method string getForcedSource()
* @method int getScope()
* @method bool hasForcedVisible()
* @method string getForcedVisible()
* @method Ultimate_ModuleCreator_Model_Attribute setDefaultValue()
* @method Ultimate_ModuleCreator_Model_Attribute setForcedSetupBackend()
* @method Ultimate_ModuleCreator_Model_Attribute setIgnoreApi()
* @method Ultimate_ModuleCreator_Model_Attribute setOptions()
* @method Ultimate_ModuleCreator_Model_Attribute setForcedDefaultValue()
* @method bool getWidget()
* @method bool getFrontend()
* @method bool getIgnoreApi()
* @method int getIndex()
*
*/
class Ultimate_ModuleCreator_Model_Attribute extends Ultimate_ModuleCreator_Model_Abstract
{
/**
* custom option separator
*/
const OPTION_SEPARATOR = "\n";
/**
* entity object
*
* @var mixed(null|Ultimate_ModuleCreator_Model_Entity)
*/
protected $_entity = null;
/**
* attribute type instance
*
* @var mixed(null|Ultimate_ModuleCreator_Model_Attribute_Type_Abstract)
*/
protected $_typeInstance = null;
/**
* placeholders for replacing in source
*
* @var mixed
*/
protected $_placeholders = null;
/**
* set the model entity
*
* @access public
* @param Ultimate_ModuleCreator_Model_Entity $entity
* @return Ultimate_ModuleCreator_Model_Attribute
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function setEntity(Ultimate_ModuleCreator_Model_Entity $entity)
{
$this->_entity = $entity;
return $this;
}
/**
* get the attribute entity
*
* @access public
* @return Ultimate_ModuleCreator_Model_Entity
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEntity()
{
return $this->_entity;
}
/**
* get the magic function code for attribute
*
* @access public
* @param bool $ucFirst
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getMagicMethodCode($ucFirst = true)
{
$code = $this->getCode();
$code = $this->_camelize($code);
if ($ucFirst) {
return $code;
}
//lcfirst only works for php 5.3+
$code{0} = strtolower($code{0});
return $code;
}
/**
* get attribute the type instance
*
* @access public
* @return Ultimate_ModuleCreator_Model_Attribute_Type_Abstract
* @throws Ultimate_ModuleCreator_Exception
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTypeInstance()
{
if (!$this->_typeInstance) {
$type = $this->getType();
try {
$types = $this->getHelper()->getAttributeTypes(false);
$instanceModel = $types->$type->type_model;
/** @var Ultimate_ModuleCreator_Model_Attribute_Type_Abstract $typeInstance */
$typeInstance = Mage::getModel($instanceModel);
$this->_typeInstance = $typeInstance;
$this->_typeInstance->setAttribute($this);
} catch (Exception $e){
throw new Ultimate_ModuleCreator_Exception("Invalid attribute type: ". $type);
}
}
return $this->_typeInstance;
}
/**
* check if an attribute is in the admin grid
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminGrid()
{
if ($this->getIsName()) {
return true;
}
return $this->getTypeInstance()->getAdminGrid();
}
/**
* check if an attribute can use an editor
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEditor()
{
return $this->getTypeInstance()->getEditor();
}
/**
* check if attribute is required
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRequired()
{
if ($this->getIsName()) {
return true;
}
return $this->getTypeInstance()->getRequired();
}
/**
* check if attribute can behave as name
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getIsAllowedAsName()
{
return $this->getTypeInstance()->getIsAllowedAsName();
}
/**
* check if the attribute acts as name
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getNotIsName()
{
return !$this->getIsName();
}
/**
* get attribute placeholders
*
* @access public
* @param null $key
* @return mixed|null|string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getPlaceholders($key = null)
{
if (is_null($this->_placeholders)) {
$placeholders['{{attributeLabel}}'] = $this->escapeText($this->getLabel());
$placeholders['{{AttributeMagicCode}}'] = $this->getMagicMethodCode();
$placeholders['{{attributeMagicCode}}'] = $this->getMagicMethodCode(false);
$placeholders['{{attributeCode}}'] = $this->getCode();
$placeholders['{{attributeColumnOptions}}'] = $this->getAdminColumnOptions();
$placeholders['{{attributeFormType}}'] = $this->getFormType();
$placeholders['{{attributeFormOptions}}'] = $this->getFormOptions();
$placeholders['{{attributePreElementText}}'] = $this->getPreElementText();
$placeholders['{{attributeRssText}}'] = $this->getRssText();
$placeholders['{{attributeNote}}'] = $this->getNote();
$placeholders['{{AttributeCodeForFile}}'] = $this->getCodeForFileName(true);
$placeholders['{{attributeCodeForFile}}'] = $this->getCodeForFileName(false);
$placeholders['{{attributeOptions}}'] = $this->getAttributeOptions();
$placeholders['{{massActionValues}}'] = $this->getMassActionValues();
$eventObject = new Varien_Object(
array(
'placeholders' => $placeholders
)
);
Mage::dispatchEvent('umc_attribute_placeholdrers', array('event_object'=>$eventObject));
$placeholders = $eventObject->getPlaceholders();
$this->_placeholders = $placeholders;
}
if (is_null($key)) {
return $this->_placeholders;
}
if (isset($this->_placeholders[$key])) {
return $this->_placeholders[$key];
}
return '';
}
/**
* get additional admin grid column options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdminColumnOptions()
{
$options = $this->getTypeInstance()->getAdminColumnOptions();
if ($this->getUseFilterIndex()) {
$options .= $this->getPadding(3).
"'filter_index' => '".$this->getEntity()->getEntityTableAlias().
".".$this->getCode()."'".$this->getEol();
}
return $options;
}
/**
* get options for attribute
*
* @access public
* @param bool $asArray
* @return array|mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getOptions($asArray = false)
{
if (!$asArray) {
return $this->getData('options');
}
return explode(self::OPTION_SEPARATOR, $this->getData('options'));
}
/**
* get form type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormType()
{
return $this->getTypeInstance()->getFormType();
}
/**
* get text for rss
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getRssText()
{
return $this->getTypeInstance()->getRssText();
}
/**
* get the sql column
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDdlSqlColumn()
{
$eol = $this->getEol();
$padding = $this->getPadding(2);
$tab = $this->getPadding();
$ddl = '';
$ddl .= "->addColumn(".$eol;
$ddl .= $padding."'{$this->getCode()}',".$eol;
$ddl .= $padding."Varien_Db_Ddl_Table::".$this->getTypeDdl().", ".$this->getSizeDdl().",".$eol;
$ddl .= $padding."array(";
$newLine = false;
if ($this->getRequired()) {
$ddl .= $eol.$padding.$tab."'nullable' => false,";
$newLine = true;
}
//TODO: move this inside the type class
if ($this->getType() == 'int') {
$ddl .= $eol.$padding.$tab."'unsigned' => true,";
$newLine = true;
}
if ($newLine) {
$ddl .= $eol. $padding;
}
$ddl .= "),".$eol;
$ddl .= $padding."'".$this->escapeText($this->getLabel())."'".$eol.$tab.")";
return $ddl;
}
/**
* get column ddl type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getTypeDdl()
{
return $this->getTypeInstance()->getTypeDdl();
}
/**
* get column ddl size
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSizeDdl()
{
return $this->getTypeInstance()->getSizeDdl();
}
/**
* get the frontend html
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFrontendHtml()
{
return $this->getTypeInstance()->getFrontendHtml();
}
/**
* get wsdl format for attribute
*
* @access public
* @param bool $wsi
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getWsdlFormat($wsi = false)
{
if ($wsi) {
return '<xsd:element name="'.$this->getCode().'" type="xsd:string" />';
}
return '<element name="'.$this->getCode().'" type="xsd:string" minOccurs="'.(int)$this->getRequired().'" />';
}
/**
* get setup content for attribute
*
* @access public
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupContent()
{
$content = '';
$padding5 = $this->getPadding(5);
$padding6 = $this->getPadding(6);
$eol = $this->getEol();
$coreHelper = Mage::helper('core');
$content .= $padding5."'".$this->getCode()."' => array(".$eol;
$content .= $padding6."'group' => 'General',".$eol;
$content .= $padding6."'type' => '".$this->getSetupType()."',".$eol;
$content .= $padding6."'backend' => '".$this->getSetupBackend()."',".$eol;
$content .= $padding6."'frontend' => '',".$eol;
$content .= $padding6."'label' => '".$coreHelper->jsQuoteEscape($this->getLabel())."',".$eol;
$content .= $padding6."'input' => '".$this->getSetupInput()."',".$eol;
$content .= $padding6."'source' => '".$this->getSetupSource()."',".$eol;
$content .= $padding6."'global' => ".$this->getSetupIsGlobal().",".$eol;
$content .= $padding6."'required' => '".$this->getRequired()."',".$eol;
$content .= $padding6."'user_defined' => ".$this->getIsUserDefined().",".$eol;
$content .= $padding6."'default' => '".$coreHelper->jsQuoteEscape($this->getDefaultValueProcessed()).
"',".$eol;
$content .= $padding6."'unique' => false,".$eol;
$content .= $padding6."'position' => '".(int)$this->getPosition()."',".$eol;
$content .= $padding6."'note' => '".$coreHelper->jsQuoteEscape($this->getNote())."',".$eol;
$content .= $padding6."'visible' => '".(int)$this->getVisible()."',".$eol;
$content .= $padding6."'wysiwyg_enabled'=> '".(int)$this->getEditor()."',".$eol;
$content .= $this->getAdditionalSetup();
$content .= $padding5 .'),'.$eol;
return $content;
}
/**
* get setup type
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupType()
{
if ($this->hasForcedSetupType()) {
return $this->getForcedSetupType();
}
return $this->getTypeInstance()->getSetupType();
}
/**
* get setup backend
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupBackend()
{
if ($this->getForcedSetupBackend()) {
return $this->getForcedSetupBackend();
}
return $this->getTypeInstance()->getSetupBackend();
}
/**
* get setup input
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupInput()
{
return $this->getTypeInstance()->getSetupInput();
}
/**
* get setup source
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupSource()
{
if ($this->getForcedSource()) {
return $this->getForcedSource();
}
return $this->getTypeInstance()->getSetupSource();
}
/**
* check id an attribute is global
*
* @access public
* @return int
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getSetupIsGlobal()
{
switch ($this->getScope()) {
case Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE:
return 'Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE';
break;
case Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL:
return 'Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL';
break;
case Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE:
return 'Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE';
break;
default :
return '';
break;
}
}
/**
* get attribute code for file name
*
* @access public
* @param bool $uppercase
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getCodeForFileName($uppercase = false)
{
$code = str_replace('_', '', $this->getCode());
if ($uppercase) {
$code = ucfirst($code);
}
return $code;
}
/**
* check if attribute is visible
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getVisible()
{
if (($this->hasForcedVisible())) {
return $this->getForcedVisible();
}
return $this->getTypeInstance()->getVisible();
}
/**
* check if source needs to be generated
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getGenerateSource()
{
return $this->getTypeInstance()->getGenerateSource();
}
/**
* get additional setup values
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAdditionalSetup()
{
return $this->getTypeInstance()->getAdditionalSetup();
}
/**
* check if attribute is yes/no
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getIsYesNo()
{
return $this->getTypeInstance()->getIsYesNo();
}
/**
* get attribute options for source model
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getAttributeOptions()
{
return $this->getTypeInstance()->getAttributeOptions();
}
/**
* check if attribute is user defined
*
* @access public
* @param bool $asText
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getIsUserDefined($asText = true)
{
if (!$this->hasData('user_defined')) {
$this->setData('user_defined', true);
}
if (!$asText) {
return $this->getData('user_defined');
}
if ($this->getData('user_defined')) {
return 'true';
}
return 'false';
}
/**
* get admin from options
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getFormOptions()
{
return $this->getTypeInstance()->getFormOptions();
}
/**
* check if attribute is multiple select
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getIsMultipleSelect()
{
return $this->getTypeInstance()->getIsMultipleSelect();
}
/**
* check if entity is eav
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getEntityEav()
{
return $this->getEntity()->getIsEav();
}
/**
* check if entity is not eav
*
* @access public
* @return bool
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getNotEntityEav()
{
return !$this->getEntityEav();
}
/**
* check if attribute can be in mass update
*
* @access public
* @return mixed
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getMassUpdate()
{
return $this->getTypeInstance()->getMassUpdate();
}
/**
* get values for mass action
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getMassActionValues()
{
return $this->getTypeInstance()->getMassActionValues();
}
/**
* get module
*
* @access public
* @return Ultimate_ModuleCreator_Model_Module
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getModule()
{
return $this->getEntity()->getModule();
}
/**
* get namespace
*
* @access public
* @param bool $lower
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getNamespace($lower = false)
{
return $this->getModule()->getNamespace($lower);
}
/**
* get attribute default value
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueProcessed()
{
return $this->getTypeInstance()->getDefaultValueProcessed();
}
/**
* get attribute default value setup content
*
* @access public
* @return string
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
public function getDefaultValueSetup()
{
return $this->getTypeInstance()->getDefaultValueSetup();
}
}
================================================
FILE: app/code/community/Ultimate/ModuleCreator/Model/Config.php
================================================
<?php
/**
* Ultimate_ModuleCreator extension
*
* NOTICE OF LICENSE
*
* This source file is subject to the MIT License
* that is bundled with this package in the file LICENSE_UMC.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/mit-license.php
*
* @category Ultimate
* @package Ultimate_ModuleCreator
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/mit-license.php MIT License
* @author Marius Strajeru <ultimate.module.creator@gmail.com>
*/
class Ulti
gitextract_j1h_l5sq/ ├── .gitignore ├── LICENSE_UMC ├── README.md ├── app/ │ ├── code/ │ │ └── community/ │ │ └── Ultimate/ │ │ └── ModuleCreator/ │ │ ├── Block/ │ │ │ └── Adminhtml/ │ │ │ ├── Modulecreator/ │ │ │ │ ├── Edit/ │ │ │ │ │ ├── Form.php │ │ │ │ │ ├── Tab/ │ │ │ │ │ │ ├── Entities/ │ │ │ │ │ │ │ ├── Entity/ │ │ │ │ │ │ │ │ └── Attribute.php │ │ │ │ │ │ │ └── Entity.php │ │ │ │ │ │ ├── Entities.php │ │ │ │ │ │ ├── Help/ │ │ │ │ │ │ │ └── Fieldset.php │ │ │ │ │ │ ├── Help.php │ │ │ │ │ │ ├── Relation.php │ │ │ │ │ │ └── Settings.php │ │ │ │ │ └── Tabs.php │ │ │ │ ├── Edit.php │ │ │ │ ├── Grid/ │ │ │ │ │ └── Column/ │ │ │ │ │ └── Renderer/ │ │ │ │ │ └── Download.php │ │ │ │ ├── Grid.php │ │ │ │ ├── Menu.php │ │ │ │ └── System/ │ │ │ │ └── Config/ │ │ │ │ └── Form/ │ │ │ │ └── Fieldset/ │ │ │ │ ├── Abstract.php │ │ │ │ ├── Attribute.php │ │ │ │ ├── Entity.php │ │ │ │ └── Settings.php │ │ │ └── Modulecreator.php │ │ ├── Exception.php │ │ ├── Helper/ │ │ │ └── Data.php │ │ ├── Model/ │ │ │ ├── Abstract.php │ │ │ ├── Attribute/ │ │ │ │ └── Type/ │ │ │ │ ├── Abstract.php │ │ │ │ ├── Country.php │ │ │ │ ├── Decimal.php │ │ │ │ ├── Dropdown/ │ │ │ │ │ ├── Abstract.php │ │ │ │ │ ├── Category.php │ │ │ │ │ ├── Custom.php │ │ │ │ │ ├── Customer.php │ │ │ │ │ └── Product.php │ │ │ │ ├── Dropdown.php │ │ │ │ ├── File.php │ │ │ │ ├── Image.php │ │ │ │ ├── Int.php │ │ │ │ ├── Multiselect.php │ │ │ │ ├── Signedint.php │ │ │ │ ├── Text.php │ │ │ │ ├── Textarea.php │ │ │ │ ├── Timestamp.php │ │ │ │ └── Yesno.php │ │ │ ├── Attribute.php │ │ │ ├── Config.php │ │ │ ├── Entity/ │ │ │ │ └── Type/ │ │ │ │ ├── Abstract.php │ │ │ │ ├── Eav.php │ │ │ │ └── Flat.php │ │ │ ├── Entity.php │ │ │ ├── Module/ │ │ │ │ └── Collection.php │ │ │ ├── Module.php │ │ │ ├── Relation.php │ │ │ ├── Source/ │ │ │ │ ├── Attribute/ │ │ │ │ │ ├── Scope.php │ │ │ │ │ ├── Type.php │ │ │ │ │ └── Value/ │ │ │ │ │ └── Source.php │ │ │ │ ├── Codepool.php │ │ │ │ ├── Entity/ │ │ │ │ │ ├── Layout.php │ │ │ │ │ ├── Menu.php │ │ │ │ │ └── Type.php │ │ │ │ └── Install.php │ │ │ └── Writer.php │ │ ├── controllers/ │ │ │ └── Adminhtml/ │ │ │ └── ModulecreatorController.php │ │ └── etc/ │ │ ├── adminhtml.xml │ │ ├── config.xml │ │ ├── jstranslator.xml │ │ ├── source/ │ │ │ ├── app/ │ │ │ │ ├── code/ │ │ │ │ │ ├── Block/ │ │ │ │ │ │ ├── Adminhtml/ │ │ │ │ │ │ │ ├── Catalog/ │ │ │ │ │ │ │ │ ├── Category/ │ │ │ │ │ │ │ │ │ └── Tab/ │ │ │ │ │ │ │ │ │ └── Entity/ │ │ │ │ │ │ │ │ │ ├── 010_tree │ │ │ │ │ │ │ │ │ └── 020_not_tree │ │ │ │ │ │ │ │ └── Product/ │ │ │ │ │ │ │ │ └── Edit/ │ │ │ │ │ │ │ │ └── Tab/ │ │ │ │ │ │ │ │ └── Entity/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_not_tree │ │ │ │ │ │ │ │ ├── 030_tree │ │ │ │ │ │ │ │ └── 040_footer │ │ │ │ │ │ │ ├── Entity/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_eav │ │ │ │ │ │ │ │ ├── 030_footer │ │ │ │ │ │ │ │ ├── Abstract/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ ├── Attribute/ │ │ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ │ │ ├── Edit/ │ │ │ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ │ │ │ ├── Form/ │ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ │ ├── Tab/ │ │ │ │ │ │ │ │ │ │ │ ├── Main/ │ │ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ │ │ └── Options/ │ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ │ └── Tabs/ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ └── Grid/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ ├── Comment/ │ │ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ │ │ ├── Edit/ │ │ │ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ │ │ │ ├── Form/ │ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ │ ├── Tab/ │ │ │ │ │ │ │ │ │ │ │ ├── Form/ │ │ │ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ │ │ │ ├── 020_stores │ │ │ │ │ │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ │ │ │ │ │ └── Stores/ │ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ │ └── Tabs/ │ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ │ ├── 020_stores │ │ │ │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ │ │ │ └── Grid/ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ ├── 013_store_data │ │ │ │ │ │ │ │ │ ├── 016_prepare │ │ │ │ │ │ │ │ │ ├── 020_stores │ │ │ │ │ │ │ │ │ ├── 030_content │ │ │ │ │ │ │ │ │ ├── 040_store_filter │ │ │ │ │ │ │ │ │ └── 050_footer │ │ │ │ │ │ │ │ ├── Edit/ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ ├── 020_tree │ │ │ │ │ │ │ │ │ ├── 030_not_tree │ │ │ │ │ │ │ │ │ ├── Form/ │ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ │ ├── 020_prepare_form │ │ │ │ │ │ │ │ │ │ ├── 025_prepare_form_eav │ │ │ │ │ │ │ │ │ │ ├── 030_tree_top │ │ │ │ │ │ │ │ │ │ ├── 040_product_relation │ │ │ │ │ │ │ │ │ │ ├── 050_entity_relation │ │ │ │ │ │ │ │ │ │ └── 060_footer │ │ │ │ │ │ │ │ │ ├── Tab/ │ │ │ │ │ │ │ │ │ │ ├── Attributes/ │ │ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ │ │ ├── 020_tree │ │ │ │ │ │ │ │ │ │ │ ├── 021_default_values │ │ │ │ │ │ │ │ │ │ │ ├── 022_default_values_tree │ │ │ │ │ │ │ │ │ │ │ ├── 023_layout │ │ │ │ │ │ │ │ │ │ │ ├── 025_after_html_top │ │ │ │ │ │ │ │ │ │ │ ├── 026_after_html │ │ │ │ │ │ │ │ │ │ │ ├── 027_after_html_footer │ │ │ │ │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ │ │ │ │ ├── Categories/ │ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ │ ├── Form/ │ │ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ │ │ ├── 020_image │ │ │ │ │ │ │ │ │ │ │ ├── 030_file │ │ │ │ │ │ │ │ │ │ │ ├── 040_wysiwyg │ │ │ │ │ │ │ │ │ │ │ ├── 050_wysiwyg_is_tree │ │ │ │ │ │ │ │ │ │ │ ├── 060_path_tree │ │ │ │ │ │ │ │ │ │ │ ├── 070_parents │ │ │ │ │ │ │ │ │ │ │ ├── 080_attributes │ │ │ │ │ │ │ │ │ │ │ ├── 090_url_rewrite │ │ │ │ │ │ │ │ │ │ │ ├── 100_status │ │ │ │ │ │ │ │ │ │ │ ├── 110_rss │ │ │ │ │ │ │ │ │ │ │ ├── 120_stores │ │ │ │ │ │ │ │ │ │ │ ├── 130_allow_comment │ │ │ │ │ │ │ │ │ │ │ ├── 140_add_values_not_tree │ │ │ │ │ │ │ │ │ │ │ ├── 150_add_values_tree │ │ │ │ │ │ │ │ │ │ │ ├── 160_get_entity_tree │ │ │ │ │ │ │ │ │ │ │ └── 170_footer │ │ │ │ │ │ │ │ │ │ ├── Meta/ │ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ │ ├── Product/ │ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ │ ├── Sibling/ │ │ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ │ │ ├── 020_not_tree │ │ │ │ │ │ │ │ │ │ │ ├── 030_tree │ │ │ │ │ │ │ │ │ │ │ └── 040_footer │ │ │ │ │ │ │ │ │ │ └── Stores/ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ └── Tabs/ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ ├── 020_flat_not_tree_prepare │ │ │ │ │ │ │ │ │ ├── 030_flat_tree_prepare │ │ │ │ │ │ │ │ │ ├── 040_eav_prepare_top │ │ │ │ │ │ │ │ │ ├── 042_eav_tree_prepare_top │ │ │ │ │ │ │ │ │ ├── 043_eav_seo_prepare │ │ │ │ │ │ │ │ │ ├── 047_eav_prepare_bottom │ │ │ │ │ │ │ │ │ ├── 048_eav_prepare_bottom_tree │ │ │ │ │ │ │ │ │ ├── 049_eav_prepare_real_bottom │ │ │ │ │ │ │ │ │ ├── 050_seo │ │ │ │ │ │ │ │ │ ├── 055_seo_eav │ │ │ │ │ │ │ │ │ ├── 060_stores │ │ │ │ │ │ │ │ │ ├── 070_relation_not_tree │ │ │ │ │ │ │ │ │ ├── 080_relation_tree │ │ │ │ │ │ │ │ │ ├── 090_product_relation_not_tree │ │ │ │ │ │ │ │ │ ├── 100_product_relation_tree │ │ │ │ │ │ │ │ │ ├── 110_category_relation_not_tree │ │ │ │ │ │ │ │ │ ├── 120_category_relation_tree │ │ │ │ │ │ │ │ │ ├── 130_end_prepare_not_tree │ │ │ │ │ │ │ │ │ ├── 140_end_prepare_tree │ │ │ │ │ │ │ │ │ └── 150_footer │ │ │ │ │ │ │ │ ├── Grid/ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ ├── 020_parents │ │ │ │ │ │ │ │ │ ├── 030_name_attribute │ │ │ │ │ │ │ │ │ ├── 040_grid_attributes │ │ │ │ │ │ │ │ │ ├── 050_url_rewrite │ │ │ │ │ │ │ │ │ ├── 060_stores │ │ │ │ │ │ │ │ │ ├── 070_created_at │ │ │ │ │ │ │ │ │ ├── 080_updated_at │ │ │ │ │ │ │ │ │ ├── 090_columns_footer │ │ │ │ │ │ │ │ │ ├── 100_eav_functions │ │ │ │ │ │ │ │ │ ├── 110_mass_action_top │ │ │ │ │ │ │ │ │ ├── 120_mass_action_flags │ │ │ │ │ │ │ │ │ ├── 130_mass_action_parents │ │ │ │ │ │ │ │ │ ├── 140_collection_end │ │ │ │ │ │ │ │ │ ├── 145_collection_walk │ │ │ │ │ │ │ │ │ ├── 150_store_filter │ │ │ │ │ │ │ │ │ └── 160_footer │ │ │ │ │ │ │ │ ├── Helper/ │ │ │ │ │ │ │ │ │ ├── File/ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ └── Image/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ ├── Tree/ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ ├── 020_store_switcher │ │ │ │ │ │ │ │ │ ├── 030_content │ │ │ │ │ │ │ │ │ ├── 040_eav │ │ │ │ │ │ │ │ │ ├── 050_methods │ │ │ │ │ │ │ │ │ ├── 060_store_switcher_block │ │ │ │ │ │ │ │ │ └── 070_footer │ │ │ │ │ │ │ │ └── Widget/ │ │ │ │ │ │ │ │ └── Chooser/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_not_tree │ │ │ │ │ │ │ │ ├── 030_not_tree_eav │ │ │ │ │ │ │ │ ├── 040_not_tree_content │ │ │ │ │ │ │ │ ├── 050_not_tree_store │ │ │ │ │ │ │ │ ├── 060_not_tree_footer │ │ │ │ │ │ │ │ ├── 070_not_tree_flat │ │ │ │ │ │ │ │ ├── 080_tree │ │ │ │ │ │ │ │ └── 090_footer │ │ │ │ │ │ │ ├── Helper/ │ │ │ │ │ │ │ │ ├── Column/ │ │ │ │ │ │ │ │ │ └── Renderer/ │ │ │ │ │ │ │ │ │ ├── Parent/ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ └── Relation/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ └── Wysiwyg/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── Module/ │ │ │ │ │ │ │ ├── Helper/ │ │ │ │ │ │ │ │ └── Form/ │ │ │ │ │ │ │ │ └── Wysiwyg/ │ │ │ │ │ │ │ │ └── Content/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── Renderer/ │ │ │ │ │ │ │ └── Fieldset/ │ │ │ │ │ │ │ └── Element/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── Catalog/ │ │ │ │ │ │ │ ├── Category/ │ │ │ │ │ │ │ │ └── List/ │ │ │ │ │ │ │ │ └── Entity/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_store │ │ │ │ │ │ │ │ ├── 030_eav │ │ │ │ │ │ │ │ ├── 040_not_eav │ │ │ │ │ │ │ │ └── 050_footer │ │ │ │ │ │ │ └── Product/ │ │ │ │ │ │ │ └── List/ │ │ │ │ │ │ │ └── Entity/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_store │ │ │ │ │ │ │ ├── 030_eav │ │ │ │ │ │ │ ├── 040_not_eav │ │ │ │ │ │ │ └── 050_footer │ │ │ │ │ │ ├── Entity/ │ │ │ │ │ │ │ ├── Catalog/ │ │ │ │ │ │ │ │ ├── Category/ │ │ │ │ │ │ │ │ │ └── List/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ └── Product/ │ │ │ │ │ │ │ │ └── List/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Child/ │ │ │ │ │ │ │ │ └── List/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Children/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Comment/ │ │ │ │ │ │ │ │ ├── Form/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ └── List/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_stores │ │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ │ ├── Customer/ │ │ │ │ │ │ │ │ └── Comment/ │ │ │ │ │ │ │ │ ├── List/ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ ├── 020_store │ │ │ │ │ │ │ │ │ ├── 030_filter_eav │ │ │ │ │ │ │ │ │ ├── 040_filter_flat │ │ │ │ │ │ │ │ │ └── 050_footer │ │ │ │ │ │ │ │ └── View/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── List/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_stores │ │ │ │ │ │ │ │ ├── 030_attributes │ │ │ │ │ │ │ │ ├── 040_status │ │ │ │ │ │ │ │ ├── 050_not_tree │ │ │ │ │ │ │ │ ├── 060_tree_flat │ │ │ │ │ │ │ │ ├── 070_tree_eav │ │ │ │ │ │ │ │ └── 080_footer │ │ │ │ │ │ │ ├── Rss/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_stores │ │ │ │ │ │ │ │ ├── 025_eav │ │ │ │ │ │ │ │ ├── 030_content │ │ │ │ │ │ │ │ ├── 035_tree │ │ │ │ │ │ │ │ ├── 040_attributes │ │ │ │ │ │ │ │ └── 050_footer │ │ │ │ │ │ │ ├── Sibling/ │ │ │ │ │ │ │ │ └── List/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── View/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── Widget/ │ │ │ │ │ │ │ ├── Link/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Subtree/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── View/ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ ├── 020_not_tree │ │ │ │ │ │ │ ├── 030_tree │ │ │ │ │ │ │ └── 040_footer │ │ │ │ │ │ └── Rss/ │ │ │ │ │ │ └── 010_content │ │ │ │ │ ├── Controller/ │ │ │ │ │ │ ├── Adminhtml/ │ │ │ │ │ │ │ └── Module/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ └── Router/ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ ├── 020_entity │ │ │ │ │ │ └── 030_footer │ │ │ │ │ ├── Helper/ │ │ │ │ │ │ ├── Category/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_content │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ ├── Data/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── Entity/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_create_list │ │ │ │ │ │ │ ├── 030_breadcrumbs │ │ │ │ │ │ │ ├── 040_tree │ │ │ │ │ │ │ ├── 050_rss │ │ │ │ │ │ │ ├── 060_file │ │ │ │ │ │ │ ├── 070_eav │ │ │ │ │ │ │ ├── 080_footer │ │ │ │ │ │ │ └── Image/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── Image/ │ │ │ │ │ │ │ └── Abstract/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ └── Product/ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ ├── 020_content │ │ │ │ │ │ └── 030_footer │ │ │ │ │ ├── Model/ │ │ │ │ │ │ ├── Adminhtml/ │ │ │ │ │ │ │ ├── Observer/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_entity_product │ │ │ │ │ │ │ │ ├── 030_entity_product_save │ │ │ │ │ │ │ │ ├── 040_entity_product_save_tree │ │ │ │ │ │ │ │ ├── 050_entity_category │ │ │ │ │ │ │ │ ├── 055_entity_category_tree │ │ │ │ │ │ │ │ ├── 060_entity_category_save │ │ │ │ │ │ │ │ ├── 070_entity_category_save_tree │ │ │ │ │ │ │ │ └── 080_footer │ │ │ │ │ │ │ ├── Search/ │ │ │ │ │ │ │ │ └── Entity/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── Source/ │ │ │ │ │ │ │ └── Yesnodefault/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── Api2/ │ │ │ │ │ │ │ └── Entity/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_eav │ │ │ │ │ │ │ ├── 030_footer │ │ │ │ │ │ │ └── Rest/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 015_tree_filter │ │ │ │ │ │ │ ├── 020_store_collection │ │ │ │ │ │ │ ├── 030_collection_center │ │ │ │ │ │ │ ├── 040_url │ │ │ │ │ │ │ ├── 050_center │ │ │ │ │ │ │ ├── 060_eav │ │ │ │ │ │ │ ├── 070_load │ │ │ │ │ │ │ ├── 080_store │ │ │ │ │ │ │ ├── 090_footer │ │ │ │ │ │ │ ├── Admin/ │ │ │ │ │ │ │ │ └── V1/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_tree_filter │ │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ │ ├── Customer/ │ │ │ │ │ │ │ │ └── V1/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── Guest/ │ │ │ │ │ │ │ └── V1/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── Attribute/ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ └── Source/ │ │ │ │ │ │ │ └── Country/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── Entity/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_var_sibling │ │ │ │ │ │ │ ├── 030_var_product_relation │ │ │ │ │ │ │ ├── 040_var_category_relation │ │ │ │ │ │ │ ├── 050_construct │ │ │ │ │ │ │ ├── 060_url │ │ │ │ │ │ │ ├── 070_url_rewrite │ │ │ │ │ │ │ ├── 080_editors │ │ │ │ │ │ │ ├── 090_after_save_top │ │ │ │ │ │ │ ├── 100_after_save_product │ │ │ │ │ │ │ ├── 110_after_save_category │ │ │ │ │ │ │ ├── 120_after_save_sibling │ │ │ │ │ │ │ ├── 130_after_save_footer │ │ │ │ │ │ │ ├── 140_product_relation │ │ │ │ │ │ │ ├── 150_category_relation │ │ │ │ │ │ │ ├── 160_sibling_relation │ │ │ │ │ │ │ ├── 163_children_relation │ │ │ │ │ │ │ ├── 165_parent_relation │ │ │ │ │ │ │ ├── 170_tree │ │ │ │ │ │ │ ├── 175_eav_default_attribute_set │ │ │ │ │ │ │ ├── 180_allow_comment │ │ │ │ │ │ │ ├── 190_default_values │ │ │ │ │ │ │ ├── 200_default_values_rss │ │ │ │ │ │ │ ├── 210_default_values_comment │ │ │ │ │ │ │ ├── 215_default_attribute_values │ │ │ │ │ │ │ ├── 220_footer │ │ │ │ │ │ │ ├── Api/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 013_eav │ │ │ │ │ │ │ │ ├── 014_tree_filter │ │ │ │ │ │ │ │ ├── 016_content │ │ │ │ │ │ │ │ ├── 017_add_eav │ │ │ │ │ │ │ │ ├── 018_add_end │ │ │ │ │ │ │ │ ├── 019_update_eav │ │ │ │ │ │ │ │ ├── 020_update_footer │ │ │ │ │ │ │ │ ├── 024_product_relation_info │ │ │ │ │ │ │ │ ├── 030_category_relation_info │ │ │ │ │ │ │ │ ├── 040_sibling_info │ │ │ │ │ │ │ │ ├── 050_info_footer │ │ │ │ │ │ │ │ ├── 060_tree │ │ │ │ │ │ │ │ ├── 070_product_relation │ │ │ │ │ │ │ │ ├── 080_category_relation │ │ │ │ │ │ │ │ ├── 090_sibling_relation │ │ │ │ │ │ │ │ ├── 095_sibling_relation_tree │ │ │ │ │ │ │ │ ├── 097_get_attributes │ │ │ │ │ │ │ │ ├── 098_get_api_data_flat │ │ │ │ │ │ │ │ ├── 099_get_api_data_eav │ │ │ │ │ │ │ │ ├── 100_footer │ │ │ │ │ │ │ │ └── V2/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_product_relation │ │ │ │ │ │ │ │ ├── 030_category_relation │ │ │ │ │ │ │ │ ├── 040_sibling_relation │ │ │ │ │ │ │ │ └── 050_footer │ │ │ │ │ │ │ ├── Attribute/ │ │ │ │ │ │ │ │ ├── Api/ │ │ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ │ │ └── V2/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ ├── Backend/ │ │ │ │ │ │ │ │ │ ├── File/ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ ├── Image/ │ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ │ └── Urlkey/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ └── Source/ │ │ │ │ │ │ │ │ └── Attributecode/ │ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ │ ├── 020_eav │ │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ │ ├── Category/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Comment/ │ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ │ └── Api/ │ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ │ └── V2/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Product/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Sibling/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── Source/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_eav │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ ├── Observer/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_entity │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ └── Resource/ │ │ │ │ │ │ ├── Attribute/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── Eav/ │ │ │ │ │ │ │ └── Attribute/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── Entity/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_tree_var │ │ │ │ │ │ │ ├── 030_constructor │ │ │ │ │ │ │ ├── 032_eav_construct │ │ │ │ │ │ │ ├── 037_store │ │ │ │ │ │ │ ├── 040_not_tree │ │ │ │ │ │ │ ├── 045_before_save_multiple │ │ │ │ │ │ │ ├── 050_tree │ │ │ │ │ │ │ ├── 052_tree_store │ │ │ │ │ │ │ ├── 053_tree_after │ │ │ │ │ │ │ ├── 055_tree_eav │ │ │ │ │ │ │ ├── 060_tree_before_save_no_url_rewrite │ │ │ │ │ │ │ ├── 070_eav_tree_before_save_url_rewrite │ │ │ │ │ │ │ ├── 080_tree_before_save_url_rewrite │ │ │ │ │ │ │ ├── 090_content │ │ │ │ │ │ │ ├── 100_url_rewrite │ │ │ │ │ │ │ ├── 103_url_rewrite_store │ │ │ │ │ │ │ ├── 107_url_rewrite_no_store │ │ │ │ │ │ │ ├── 110_url_rewrite_before_save_not_tree │ │ │ │ │ │ │ ├── 120_url_rewrite_eav │ │ │ │ │ │ │ ├── 130_footer │ │ │ │ │ │ │ ├── Attribute/ │ │ │ │ │ │ │ │ └── Collection/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Category/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_not_tree │ │ │ │ │ │ │ │ ├── 030_tree │ │ │ │ │ │ │ │ ├── 040_footer │ │ │ │ │ │ │ │ └── Collection/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Collection/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_top_store │ │ │ │ │ │ │ │ ├── 030_content │ │ │ │ │ │ │ │ ├── 040_store │ │ │ │ │ │ │ │ ├── 050_tree │ │ │ │ │ │ │ │ ├── 060_not_tree │ │ │ │ │ │ │ │ ├── 070_product_relation │ │ │ │ │ │ │ │ ├── 080_category_relation │ │ │ │ │ │ │ │ ├── 090_sibling_relation │ │ │ │ │ │ │ │ └── 100_footer │ │ │ │ │ │ │ ├── Comment/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_store │ │ │ │ │ │ │ │ ├── 030_footer │ │ │ │ │ │ │ │ ├── Collection/ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ ├── 020_top_store │ │ │ │ │ │ │ │ │ ├── 030_content │ │ │ │ │ │ │ │ │ ├── 040_store │ │ │ │ │ │ │ │ │ └── 050_footer │ │ │ │ │ │ │ │ └── Entity/ │ │ │ │ │ │ │ │ └── Collection/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_store_var │ │ │ │ │ │ │ │ ├── 030_construct │ │ │ │ │ │ │ │ ├── 040_construct_store │ │ │ │ │ │ │ │ ├── 050_content │ │ │ │ │ │ │ │ ├── 060_eav_title │ │ │ │ │ │ │ │ ├── 070_more_content │ │ │ │ │ │ │ │ ├── 073_select_count_store │ │ │ │ │ │ │ │ ├── 075_select_sql │ │ │ │ │ │ │ │ ├── 080_store_top │ │ │ │ │ │ │ │ ├── 090_flat_store │ │ │ │ │ │ │ │ ├── 100_store │ │ │ │ │ │ │ │ ├── 110_filter │ │ │ │ │ │ │ │ ├── 120_store_filter │ │ │ │ │ │ │ │ └── 130_footer │ │ │ │ │ │ │ ├── Product/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_not_tree │ │ │ │ │ │ │ │ ├── 030_tree │ │ │ │ │ │ │ │ ├── 040_footer │ │ │ │ │ │ │ │ └── Collection/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── Sibling/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_save_relation │ │ │ │ │ │ │ │ ├── 030_save_relation_tree │ │ │ │ │ │ │ │ ├── 040_footer │ │ │ │ │ │ │ │ └── Collection/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── Tree/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_eav │ │ │ │ │ │ │ ├── 030_content │ │ │ │ │ │ │ ├── 040_flat_collection │ │ │ │ │ │ │ ├── 050_eav_collection │ │ │ │ │ │ │ └── 060_footer │ │ │ │ │ │ └── Setup/ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ ├── 020_eav_top │ │ │ │ │ │ ├── 030_eav │ │ │ │ │ │ ├── 040_eav_footer │ │ │ │ │ │ └── 050_footer │ │ │ │ │ ├── controllers/ │ │ │ │ │ │ ├── Adminhtml/ │ │ │ │ │ │ │ └── Module/ │ │ │ │ │ │ │ ├── Entity/ │ │ │ │ │ │ │ │ ├── AttributeController/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ ├── Catalog/ │ │ │ │ │ │ │ │ │ ├── CategoryController/ │ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ │ ├── 020_not_tree │ │ │ │ │ │ │ │ │ │ ├── 030_tree │ │ │ │ │ │ │ │ │ │ └── 040_footer │ │ │ │ │ │ │ │ │ └── ProductController/ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ ├── 020_not_tree │ │ │ │ │ │ │ │ │ ├── 030_tree │ │ │ │ │ │ │ │ │ └── 040_footer │ │ │ │ │ │ │ │ ├── CommentController/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ └── WidgetController/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_tree │ │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ │ ├── EntityControllerEavNotTree/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_save_product_relation │ │ │ │ │ │ │ │ ├── 030_save_category_relation │ │ │ │ │ │ │ │ ├── 040_sibling_save │ │ │ │ │ │ │ │ ├── 045_sibling_save_tree │ │ │ │ │ │ │ │ ├── 050_middle │ │ │ │ │ │ │ │ ├── 060_mass_action │ │ │ │ │ │ │ │ ├── 065_mass_parents │ │ │ │ │ │ │ │ ├── 070_product_relation_actions │ │ │ │ │ │ │ │ ├── 080_category_relation_actions │ │ │ │ │ │ │ │ ├── 090_sibling_grid │ │ │ │ │ │ │ │ ├── 100_sibling_actions_tree │ │ │ │ │ │ │ │ └── 110_footer │ │ │ │ │ │ │ ├── EntityControllerEavTree/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_product_data │ │ │ │ │ │ │ │ ├── 030_category_data │ │ │ │ │ │ │ │ ├── 040_sibling_data │ │ │ │ │ │ │ │ ├── 045_sibling_data_tree │ │ │ │ │ │ │ │ ├── 050_real_save │ │ │ │ │ │ │ │ ├── 060_product_relation_action │ │ │ │ │ │ │ │ ├── 070_category_relation_action │ │ │ │ │ │ │ │ ├── 080_sibling_actions │ │ │ │ │ │ │ │ └── 090_footer │ │ │ │ │ │ │ ├── EntityControllerFlatNotTree/ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ ├── 020_upload_image │ │ │ │ │ │ │ │ ├── 030_upload_files │ │ │ │ │ │ │ │ ├── 040_save_product_relation │ │ │ │ │ │ │ │ ├── 050_save_category_relation │ │ │ │ │ │ │ │ ├── 060_save_sibling_relation │ │ │ │ │ │ │ │ ├── 070_save_sibling_relation_tree │ │ │ │ │ │ │ │ ├── 080_save │ │ │ │ │ │ │ │ ├── 090_exception_upload │ │ │ │ │ │ │ │ ├── 100_exception │ │ │ │ │ │ │ │ ├── 110_center │ │ │ │ │ │ │ │ ├── 120_mass_update │ │ │ │ │ │ │ │ ├── 130_mass_parents │ │ │ │ │ │ │ │ ├── 140_product_relation_actions │ │ │ │ │ │ │ │ ├── 150_category_relation_actions │ │ │ │ │ │ │ │ ├── 160_sibling_actions │ │ │ │ │ │ │ │ ├── 170_sibling_actions_tree │ │ │ │ │ │ │ │ └── 180_footer │ │ │ │ │ │ │ └── EntityControllerFlatTree/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_wysiwyg │ │ │ │ │ │ │ ├── 030_save │ │ │ │ │ │ │ ├── 040_upload_image │ │ │ │ │ │ │ ├── 050_upload_file │ │ │ │ │ │ │ ├── 060_save_continue │ │ │ │ │ │ │ ├── 070_product_data │ │ │ │ │ │ │ ├── 080_category_data │ │ │ │ │ │ │ ├── 090_sibling_data │ │ │ │ │ │ │ ├── 095_sibling_data_tree │ │ │ │ │ │ │ ├── 100_real_save │ │ │ │ │ │ │ ├── 110_product_relation_action │ │ │ │ │ │ │ ├── 120_category_relation_action │ │ │ │ │ │ │ ├── 130_sibling_actions │ │ │ │ │ │ │ ├── 135_sibling_actions_tree │ │ │ │ │ │ │ └── 140_footer │ │ │ │ │ │ ├── Entity/ │ │ │ │ │ │ │ └── Customer/ │ │ │ │ │ │ │ └── CommentController/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_entity_eav │ │ │ │ │ │ │ ├── 030_entity_flat │ │ │ │ │ │ │ ├── 040_store │ │ │ │ │ │ │ ├── 050_entity_flat_store │ │ │ │ │ │ │ └── 060_footer │ │ │ │ │ │ └── EntityController/ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ ├── 020_list │ │ │ │ │ │ ├── 030_list_seo │ │ │ │ │ │ ├── 040_list_footer │ │ │ │ │ │ ├── 050_view │ │ │ │ │ │ ├── 060_view_tree │ │ │ │ │ │ ├── 070_view2 │ │ │ │ │ │ ├── 080_breadcrumbs │ │ │ │ │ │ ├── 090_breadcrumbs_tree │ │ │ │ │ │ ├── 100_breadcrumbs_footer │ │ │ │ │ │ ├── 105_view_canonical │ │ │ │ │ │ ├── 110_view_seo │ │ │ │ │ │ ├── 120_view_footer │ │ │ │ │ │ ├── 130_rss │ │ │ │ │ │ ├── 140_comment │ │ │ │ │ │ └── 150_footer │ │ │ │ │ ├── data/ │ │ │ │ │ │ └── namespace_module_setup/ │ │ │ │ │ │ └── data-install/ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ └── 020_entity │ │ │ │ │ ├── etc/ │ │ │ │ │ │ ├── adminhtml/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── api/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_entity_api │ │ │ │ │ │ │ ├── 030_resource_alias │ │ │ │ │ │ │ ├── 040_entity_resource_alias │ │ │ │ │ │ │ ├── 050_v2 │ │ │ │ │ │ │ ├── 060_v2_entity │ │ │ │ │ │ │ ├── 070_acl │ │ │ │ │ │ │ ├── 080_acl_entity │ │ │ │ │ │ │ └── 090_footer │ │ │ │ │ │ ├── api2/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── config/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_tables │ │ │ │ │ │ │ ├── 030_store_tables │ │ │ │ │ │ │ ├── 040_siblings_table │ │ │ │ │ │ │ ├── 050_product_relation_table │ │ │ │ │ │ │ ├── 060_category_relation_table │ │ │ │ │ │ │ ├── 070_comment_table │ │ │ │ │ │ │ ├── 080_comment_store_table │ │ │ │ │ │ │ ├── 090_eav_attribute │ │ │ │ │ │ │ ├── 100_global │ │ │ │ │ │ │ ├── 110_url_rewrite │ │ │ │ │ │ │ ├── 120_adminhtml │ │ │ │ │ │ │ ├── 130_relation_events_top │ │ │ │ │ │ │ ├── 140_relation_product_top │ │ │ │ │ │ │ ├── 150_relation_events_middle │ │ │ │ │ │ │ ├── 160_relation_category_top │ │ │ │ │ │ │ ├── 170_relation_product_bottom_start │ │ │ │ │ │ │ ├── 180_relation_product_bottom │ │ │ │ │ │ │ ├── 190_relation_product_bottom_end │ │ │ │ │ │ │ ├── 200_relation_category_bottom_start │ │ │ │ │ │ │ ├── 210_relation_category_bottom │ │ │ │ │ │ │ ├── 220_relation_category_bottom_end │ │ │ │ │ │ │ ├── 230_relation_events_bottom │ │ │ │ │ │ │ ├── 240_global_search_top │ │ │ │ │ │ │ ├── 250_global_search_entity │ │ │ │ │ │ │ ├── 260_global_search_footer │ │ │ │ │ │ │ ├── 270_admin │ │ │ │ │ │ │ ├── 280_frontend │ │ │ │ │ │ │ ├── 284_router │ │ │ │ │ │ │ ├── 287_frontend_footer │ │ │ │ │ │ │ ├── 290_default_top │ │ │ │ │ │ │ ├── 300_default │ │ │ │ │ │ │ ├── 310_default_footer │ │ │ │ │ │ │ └── 320_footer │ │ │ │ │ │ ├── system/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_entity │ │ │ │ │ │ │ └── 030_footer │ │ │ │ │ │ ├── widget/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_entity │ │ │ │ │ │ │ ├── 030_tree │ │ │ │ │ │ │ └── 040_footer │ │ │ │ │ │ ├── wsdl/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_entity_types │ │ │ │ │ │ │ ├── 023_entity_comment_types │ │ │ │ │ │ │ ├── 026_entity_attribute_types │ │ │ │ │ │ │ ├── 030_schema_footer │ │ │ │ │ │ │ ├── 040_entity_messages │ │ │ │ │ │ │ ├── 043_entity_comment_messages │ │ │ │ │ │ │ ├── 046_entity_attribute_messages │ │ │ │ │ │ │ ├── 050_porttype_top │ │ │ │ │ │ │ ├── 060_porttype_entity │ │ │ │ │ │ │ ├── 063_porttype_entity_comment │ │ │ │ │ │ │ ├── 066_porttype_entity_attribute │ │ │ │ │ │ │ ├── 070_porttype_footer │ │ │ │ │ │ │ ├── 080_binding_top │ │ │ │ │ │ │ ├── 090_entity_binding │ │ │ │ │ │ │ ├── 093_entity_binding_comment │ │ │ │ │ │ │ ├── 096_entity_binding_attribute │ │ │ │ │ │ │ └── 100_footer │ │ │ │ │ │ └── wsi/ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ ├── 020_entity_types │ │ │ │ │ │ ├── 023_entity_comment_types │ │ │ │ │ │ ├── 026_entity_attribute_types │ │ │ │ │ │ ├── 030_schema_footer │ │ │ │ │ │ ├── 040_entity_messages │ │ │ │ │ │ ├── 043_entity_comment_messages │ │ │ │ │ │ ├── 046_entity_attribute_messages │ │ │ │ │ │ ├── 050_porttype_top │ │ │ │ │ │ ├── 060_porttype_entity │ │ │ │ │ │ ├── 063_porttype_entity_comment │ │ │ │ │ │ ├── 066_porttype_entity_attribute │ │ │ │ │ │ ├── 070_porttype_footer │ │ │ │ │ │ ├── 080_binding_top │ │ │ │ │ │ ├── 090_entity_binding │ │ │ │ │ │ ├── 093_entity_binding_comment │ │ │ │ │ │ ├── 096_entity_binding_attribute │ │ │ │ │ │ └── 100_footer │ │ │ │ │ └── sql/ │ │ │ │ │ └── namespace_module_setup/ │ │ │ │ │ └── install/ │ │ │ │ │ ├── 010_top │ │ │ │ │ ├── 020_entity_flat │ │ │ │ │ ├── 030_entity_store │ │ │ │ │ ├── 040_entity_eav │ │ │ │ │ ├── 050_product_relation │ │ │ │ │ ├── 060_category_relation │ │ │ │ │ ├── 070_comments │ │ │ │ │ ├── 080_comments_store │ │ │ │ │ ├── 090_sibling_relation │ │ │ │ │ ├── 100_has_eav │ │ │ │ │ ├── 110_product_attribute │ │ │ │ │ ├── 120_category_attribute │ │ │ │ │ ├── 125_eav_options_default │ │ │ │ │ └── 130_footer │ │ │ │ ├── design/ │ │ │ │ │ ├── adminhtml/ │ │ │ │ │ │ ├── layout/ │ │ │ │ │ │ │ └── namespace_module/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_entity_not_tree │ │ │ │ │ │ │ ├── 023_eav │ │ │ │ │ │ │ ├── 027_entity_not_tree_footer │ │ │ │ │ │ │ ├── 028_entity_edit_eav │ │ │ │ │ │ │ ├── 029_edit_footer │ │ │ │ │ │ │ ├── 030_relation_product │ │ │ │ │ │ │ ├── 040_relation_category │ │ │ │ │ │ │ ├── 050_relation_sibling │ │ │ │ │ │ │ ├── 060_entity_tree │ │ │ │ │ │ │ ├── 070_relation_product_tree │ │ │ │ │ │ │ ├── 080_relation_category_tree │ │ │ │ │ │ │ ├── 090_relation_sibling_tree │ │ │ │ │ │ │ ├── 100_eav_attribute_edit │ │ │ │ │ │ │ ├── 110_comment │ │ │ │ │ │ │ └── 120_footer │ │ │ │ │ │ └── template/ │ │ │ │ │ │ └── namespace_module/ │ │ │ │ │ │ ├── attribute/ │ │ │ │ │ │ │ └── js/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── catalog/ │ │ │ │ │ │ │ ├── category/ │ │ │ │ │ │ │ │ └── tab/ │ │ │ │ │ │ │ │ └── entities/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── product/ │ │ │ │ │ │ │ └── edit/ │ │ │ │ │ │ │ └── tab/ │ │ │ │ │ │ │ └── entity/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── entity/ │ │ │ │ │ │ │ ├── edit/ │ │ │ │ │ │ │ │ ├── 010_content │ │ │ │ │ │ │ │ ├── form/ │ │ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ │ │ ├── 020_product_hidden │ │ │ │ │ │ │ │ │ ├── 030_category_hidden │ │ │ │ │ │ │ │ │ ├── 040_sibling_hidden │ │ │ │ │ │ │ │ │ ├── 050_content │ │ │ │ │ │ │ │ │ ├── 060_product_relation │ │ │ │ │ │ │ │ │ ├── 070_sibling_relations │ │ │ │ │ │ │ │ │ └── 080_footer │ │ │ │ │ │ │ │ └── tab/ │ │ │ │ │ │ │ │ ├── categories/ │ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ │ └── sibling/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ ├── tree/ │ │ │ │ │ │ │ │ ├── 010_not_eav │ │ │ │ │ │ │ │ └── 020_eav │ │ │ │ │ │ │ └── widget/ │ │ │ │ │ │ │ └── tree/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── form/ │ │ │ │ │ │ │ └── renderer/ │ │ │ │ │ │ │ └── fieldset/ │ │ │ │ │ │ │ └── element/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ └── grid/ │ │ │ │ │ │ └── 010_content │ │ │ │ │ └── frontend/ │ │ │ │ │ ├── layout/ │ │ │ │ │ │ └── namespace_module/ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ ├── 020_comment │ │ │ │ │ │ ├── 060_list │ │ │ │ │ │ ├── 070_view │ │ │ │ │ │ ├── 080_entity_rss │ │ │ │ │ │ ├── 090_rss_top │ │ │ │ │ │ ├── 100_rss │ │ │ │ │ │ ├── 110_rss_footer │ │ │ │ │ │ ├── 120_relation_product │ │ │ │ │ │ ├── 130_relation_category │ │ │ │ │ │ ├── 135_entity_comment │ │ │ │ │ │ └── 140_footer │ │ │ │ │ └── template/ │ │ │ │ │ └── namespace_module/ │ │ │ │ │ ├── catalog/ │ │ │ │ │ │ ├── category/ │ │ │ │ │ │ │ └── list/ │ │ │ │ │ │ │ └── entity/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ └── product/ │ │ │ │ │ │ └── list/ │ │ │ │ │ │ └── entity/ │ │ │ │ │ │ └── 010_content │ │ │ │ │ ├── entity/ │ │ │ │ │ │ ├── catalog/ │ │ │ │ │ │ │ ├── category/ │ │ │ │ │ │ │ │ └── list/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── product/ │ │ │ │ │ │ │ └── list/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── child/ │ │ │ │ │ │ │ └── list/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── children/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── comment/ │ │ │ │ │ │ │ ├── form/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── list/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── customer/ │ │ │ │ │ │ │ └── comment/ │ │ │ │ │ │ │ ├── list/ │ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ │ └── view/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── list/ │ │ │ │ │ │ │ ├── 010_top │ │ │ │ │ │ │ ├── 020_rss_link │ │ │ │ │ │ │ ├── 030_footer │ │ │ │ │ │ │ └── 040_footer_is_tree │ │ │ │ │ │ ├── sibling/ │ │ │ │ │ │ │ └── list/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── view/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ └── widget/ │ │ │ │ │ │ ├── link/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ ├── subtree/ │ │ │ │ │ │ │ └── 010_content │ │ │ │ │ │ └── view/ │ │ │ │ │ │ └── 010_content │ │ │ │ │ └── rss/ │ │ │ │ │ └── 010_content │ │ │ │ ├── etc/ │ │ │ │ │ └── modules/ │ │ │ │ │ └── Namespace_Module/ │ │ │ │ │ └── 010_content │ │ │ │ └── locale/ │ │ │ │ ├── 010_global │ │ │ │ ├── 020_entity │ │ │ │ ├── 030_attribute │ │ │ │ ├── 040_rss │ │ │ │ ├── 050_seo │ │ │ │ ├── 060_attribute_yesno │ │ │ │ ├── 070_file │ │ │ │ ├── 080_product_relation │ │ │ │ ├── 090_category_relation │ │ │ │ ├── 100_relations │ │ │ │ ├── 110_tree │ │ │ │ ├── 120_tree_entity │ │ │ │ ├── 130_url_rewrite │ │ │ │ ├── 140_api │ │ │ │ ├── 150_api_entity │ │ │ │ ├── 160_api_product_related │ │ │ │ ├── 170_api_category_related │ │ │ │ ├── 180_api_tree │ │ │ │ ├── 190_api_sibling │ │ │ │ ├── 200_entity_eav │ │ │ │ ├── 210_eav │ │ │ │ ├── 220_entity_comment │ │ │ │ ├── 230_comment │ │ │ │ ├── 240_comment_store │ │ │ │ ├── 250_api_comment │ │ │ │ ├── 260_eav_api │ │ │ │ ├── 270_frontend │ │ │ │ ├── 280_entity_seo │ │ │ │ ├── 290_rest │ │ │ │ ├── 300_rest_entity │ │ │ │ └── 310_parent │ │ │ └── skin/ │ │ │ ├── css/ │ │ │ │ └── namespace_module/ │ │ │ │ └── tree/ │ │ │ │ └── 010_content │ │ │ ├── images/ │ │ │ │ └── placeholder/ │ │ │ │ └── entity/ │ │ │ │ └── 010_content │ │ │ └── js/ │ │ │ └── namespace_module/ │ │ │ └── tree/ │ │ │ └── 010_content │ │ ├── system.xml │ │ ├── umc.xml │ │ └── umc_source.xml │ ├── design/ │ │ └── adminhtml/ │ │ └── default/ │ │ └── default/ │ │ ├── layout/ │ │ │ └── ultimate_modulecreator.xml │ │ └── template/ │ │ └── ultimate_modulecreator/ │ │ ├── edit/ │ │ │ └── tab/ │ │ │ ├── entities/ │ │ │ │ ├── entity/ │ │ │ │ │ └── attribute.phtml │ │ │ │ └── entity.phtml │ │ │ ├── entities.phtml │ │ │ ├── help/ │ │ │ │ └── fieldset.phtml │ │ │ ├── help.phtml │ │ │ └── relation.phtml │ │ ├── edit.phtml │ │ └── tooltip.phtml │ ├── etc/ │ │ └── modules/ │ │ └── Ultimate_ModuleCreator.xml │ └── locale/ │ └── en_US/ │ └── Ultimate_ModuleCreator.csv ├── composer.json ├── js/ │ └── ultimate_modulecreator.js ├── modman ├── skin/ │ └── adminhtml/ │ └── default/ │ └── default/ │ └── ultimate_modulecreator.css └── wagner.cson
SYMBOL INDEX (639 symbols across 58 files)
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator (line 24) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator extends Mage_...
method __construct (line 32) | public function __construct()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit (line 25) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit extends ...
method __construct (line 38) | public function __construct()
method getModule (line 53) | public function getModule()
method getHeaderText (line 65) | public function getHeaderText()
method _prepareLayout (line 81) | protected function _prepareLayout()
method getBackButtonHtml (line 172) | public function getBackButtonHtml()
method getCancelButtonHtml (line 184) | public function getCancelButtonHtml()
method getSaveButtonHtml (line 196) | public function getSaveButtonHtml()
method getSaveAndEditButtonHtml (line 208) | public function getSaveAndEditButtonHtml()
method getAddEntityButtonHtml (line 220) | public function getAddEntityButtonHtml()
method getSaveAndContinueUrl (line 232) | public function getSaveAndContinueUrl()
method getValidationUrl (line 252) | public function getValidationUrl()
method isReadonly (line 264) | public function isReadonly()
method getRelationSelectTemplate (line 292) | public function getRelationSelectTemplate()
method getShowFieldsetsCollapsed (line 312) | public function getShowFieldsetsCollapsed()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Form.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Form (line 24) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Form ext...
method _prepareForm (line 33) | protected function _prepareForm()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Entities.php
class Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Entities (line 25) | class Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Enti...
method _construct (line 35) | public function _construct()
method getTabLabel (line 48) | public function getTabLabel()
method getTabTitle (line 60) | public function getTabTitle()
method canShowTab (line 72) | public function canShowTab()
method isHidden (line 84) | public function isHidden()
method getEntities (line 96) | public function getEntities()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Entities/Entity.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity (line 31) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Enti...
method _prepareForm (line 40) | protected function _prepareForm()
method setDefaultEntity (line 59) | public function setDefaultEntity()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Entities/Entity/Attribute.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Entities_Entity_Attribute (line 33) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Enti...
method _prepareForm (line 42) | protected function _prepareForm()
method setDefaultAttributeInstance (line 61) | public function setDefaultAttributeInstance()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Help.php
class Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Help (line 24) | class Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Help...
method _construct (line 34) | public function _construct()
method getTabLabel (line 47) | public function getTabLabel()
method getTabTitle (line 59) | public function getTabTitle()
method canShowTab (line 71) | public function canShowTab()
method isHidden (line 83) | public function isHidden()
method getVersion (line 94) | public function getVersion()
method _prepareLayout (line 110) | protected function _prepareLayout()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Help/Fieldset.php
class Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Help_Fieldset (line 30) | class Ultimate_ModuleCreator_Block_Adminhtml_ModuleCreator_Edit_Tab_Help...
method __construct (line 43) | public function __construct()
method getFormatedValue (line 57) | public function getFormatedValue($field, $column)
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Relation.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Relation (line 27) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Rela...
method _construct (line 37) | public function _construct()
method getTabLabel (line 50) | public function getTabLabel()
method getTabTitle (line 62) | public function getTabTitle()
method canShowTab (line 74) | public function canShowTab()
method isHidden (line 86) | public function isHidden()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Settings.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Settings (line 25) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tab_Sett...
method getTabLabel (line 35) | public function getTabLabel()
method getTabTitle (line 47) | public function getTabTitle()
method canShowTab (line 59) | public function canShowTab()
method isHidden (line 71) | public function isHidden()
method _prepareForm (line 83) | protected function _prepareForm()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tabs.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tabs (line 28) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Edit_Tabs ext...
method _construct (line 37) | public function _construct()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Grid.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Grid (line 27) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Grid extends ...
method __construct (line 41) | public function __construct()
method getCollection (line 56) | public function getCollection()
method _prepareCollection (line 71) | protected function _prepareCollection()
method _prepareColumns (line 84) | protected function _prepareColumns()
method getCurrentUrl (line 176) | public function getCurrentUrl($params = array())
method getRowUrl (line 192) | public function getRowUrl($row)
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Grid/Column/Renderer/Download.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Grid_Column_Renderer_Download (line 25) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Grid_Column_R...
method render (line 35) | public function render(Varien_Object $row)
method _getLabel (line 76) | protected function _getLabel()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Menu.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Menu (line 25) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Menu extends ...
method getCacheLifetime (line 34) | public function getCacheLifetime()
method renderUmcMenu (line 49) | public function renderUmcMenu($menu, $parentId = '', $level = 0)
method _renderSelector (line 86) | protected function _renderSelector($parentId, $sortOrder)
method _toHtml (line 104) | protected function _toHtml()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Abstract.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Abstract (line 25) | abstract class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_Syst...
method getFormName (line 47) | public abstract function getFormName();
method render (line 57) | public function render(Varien_Data_Form_Element_Abstract $element)
method _getFieldRenderer (line 97) | protected function _getFieldRenderer()
method _getFieldHtml (line 115) | protected function _getFieldHtml($fieldset, $key, $field)
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Attribute.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Attribute (line 25) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config...
method getFormName (line 34) | public function getFormName()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Entity.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Entity (line 25) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config...
method getFormName (line 34) | public function getFormName()
FILE: app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Settings.php
class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config_Form_Fieldset_Settings (line 25) | class Ultimate_ModuleCreator_Block_Adminhtml_Modulecreator_System_Config...
method getFormName (line 34) | public function getFormName()
FILE: app/code/community/Ultimate/ModuleCreator/Exception.php
class Ultimate_ModuleCreator_Exception (line 18) | class Ultimate_ModuleCreator_Exception extends Mage_Core_Exception
FILE: app/code/community/Ultimate/ModuleCreator/Helper/Data.php
class Ultimate_ModuleCreator_Helper_Data (line 25) | class Ultimate_ModuleCreator_Helper_Data extends Mage_Core_Helper_Abstract
method getTooltipHtml (line 120) | public function getTooltipHtml($title, $text)
method getTooltipBlock (line 132) | public function getTooltipBlock()
method getLocalPackagesPath (line 149) | public function getLocalPackagesPath()
method getLocalModulesDir (line 161) | public function getLocalModulesDir()
method getConfig (line 173) | public function getConfig()
method getXmlForm (line 189) | public function getXmlForm($formName)
method getFieldsetXmlData (line 265) | public function getFieldsetXmlData($formName, $fieldset = null)
method getEntityTypes (line 305) | public function getEntityTypes()
method getRelationTypes (line 322) | public function getRelationTypes()
method getAttributeTypes (line 339) | public function getAttributeTypes($asArray = true)
method getNameAttributeTypes (line 359) | public function getNameAttributeTypes($onlyLabels = false)
method getAttributeTypeGroups (line 382) | public function getAttributeTypeGroups()
method loadModule (line 396) | public function loadModule($xml)
method getPadding (line 454) | public function getPadding($count = 1)
method getEol (line 466) | public function getEol()
method getReleaseNotes (line 478) | public function getReleaseNotes()
method getDropdownSubtypes (line 503) | public function getDropdownSubtypes($asArray = true)
method getQwertyuiop (line 524) | public function getQwertyuiop()
method getQwertyuiopp (line 541) | public function getQwertyuiopp()
method getThanks (line 557) | public function getThanks()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Abstract.php
class Ultimate_ModuleCreator_Model_Abstract (line 18) | class Ultimate_ModuleCreator_Model_Abstract extends Varien_Object
method toArray (line 56) | public function toArray(array $arrAttributes = array())
method getXmlAttributes (line 75) | public function getXmlAttributes()
method getHelper (line 89) | public function getHelper()
method getPadding (line 105) | public function getPadding($length = 1)
method getEol (line 120) | public function getEol()
method escapeText (line 135) | public function escapeText($text)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute.php
method setEntity (line 98) | public function setEntity(Ultimate_ModuleCreator_Model_Entity $entity)
method getEntity (line 111) | public function getEntity()
function getTypeInstance (line 144) | function getTypeInstance()
function getAdminGrid (line 169) | function getAdminGrid()
function getEditor (line 184) | function getEditor()
function getRequired (line 196) | function getRequired()
function getIsAllowedAsName (line 211) | function getIsAllowedAsName()
function getNotIsName (line 223) | function getNotIsName()
function getPlaceholders (line 236) | function getPlaceholders($key = null)
function getAdminColumnOptions (line 279) | function getAdminColumnOptions()
function getOptions (line 298) | function getOptions($asArray = false)
function getFormType (line 313) | function getFormType()
function getRssText (line 325) | function getRssText()
function getDdlSqlColumn (line 337) | function getDdlSqlColumn()
function getTypeDdl (line 372) | function getTypeDdl()
function getSizeDdl (line 384) | function getSizeDdl()
function getFrontendHtml (line 396) | function getFrontendHtml()
function getWsdlFormat (line 409) | function getWsdlFormat($wsi = false)
function getSetupContent (line 424) | function getSetupContent()
function getSetupType (line 462) | function getSetupType()
function getSetupBackend (line 477) | function getSetupBackend()
function getSetupInput (line 492) | function getSetupInput()
function getSetupSource (line 504) | function getSetupSource()
function getSetupIsGlobal (line 519) | function getSetupIsGlobal()
function getCodeForFileName (line 545) | function getCodeForFileName($uppercase = false)
function getVisible (line 561) | function getVisible()
function getGenerateSource (line 576) | function getGenerateSource()
function getAdditionalSetup (line 588) | function getAdditionalSetup()
function getIsYesNo (line 600) | function getIsYesNo()
function getAttributeOptions (line 612) | function getAttributeOptions()
function getIsUserDefined (line 625) | function getIsUserDefined($asText = true)
function getFormOptions (line 646) | function getFormOptions()
function getIsMultipleSelect (line 658) | function getIsMultipleSelect()
function getEntityEav (line 670) | function getEntityEav()
function getNotEntityEav (line 682) | function getNotEntityEav()
function getMassUpdate (line 694) | function getMassUpdate()
function getMassActionValues (line 706) | function getMassActionValues()
function getModule (line 718) | function getModule()
function getNamespace (line 731) | function getNamespace($lower = false)
function getDefaultValueProcessed (line 743) | function getDefaultValueProcessed()
function getDefaultValueSetup (line 755) | function getDefaultValueSetup()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Abstract.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Abstract (line 28) | class Ultimate_ModuleCreator_Model_Attribute_Type_Abstract extends Ultim...
method setAttribute (line 93) | public function setAttribute(Ultimate_ModuleCreator_Model_Attribute $a...
method getAttribute (line 106) | public function getAttribute()
method getEntity (line 118) | public function getEntity()
method getModule (line 130) | public function getModule()
method getNamespace (line 143) | public function getNamespace($lower = false)
method getAdminGrid (line 155) | public function getAdminGrid()
method getAdminColumnOptions (line 167) | public function getAdminColumnOptions()
method getRssText (line 179) | public function getRssText()
method getFormType (line 203) | public function getFormType()
method getTypeDdl (line 215) | public function getTypeDdl()
method getSizeDdl (line 227) | public function getSizeDdl()
method getFrontendHtml (line 239) | public function getFrontendHtml()
method getSetupType (line 259) | public function getSetupType()
method getSetupBackend (line 271) | public function getSetupBackend()
method getSetupInput (line 283) | public function getSetupInput()
method getSetupSource (line 295) | public function getSetupSource()
method getVisible (line 307) | public function getVisible()
method getGenerateSource (line 319) | public function getGenerateSource()
method getAdditionalSetup (line 331) | public function getAdditionalSetup()
method getRequired (line 343) | public function getRequired()
method getIsYesNo (line 355) | public function getIsYesNo()
method getEditor (line 367) | public function getEditor()
method getAttributeOptions (line 379) | public function getAttributeOptions()
method getFormOptions (line 391) | public function getFormOptions()
method getType (line 414) | public function getType()
method getTypeConfigPath (line 426) | public function getTypeConfigPath()
method getConfig (line 439) | public function getConfig($path = null)
method getIsAllowedAsName (line 458) | public function getIsAllowedAsName()
method getMassUpdate (line 470) | public function getMassUpdate()
method getMassActionValues (line 482) | public function getMassActionValues()
method getDefaultValueProcessed (line 494) | public function getDefaultValueProcessed()
method getDefaultValueSetup (line 506) | public function getDefaultValueSetup()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Country.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Country (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Country extends Ultima...
method getAdminColumnOptions (line 55) | public function getAdminColumnOptions()
method getFormType (line 70) | public function getFormType()
method getRssText (line 82) | public function getRssText()
method getFrontendHtml (line 109) | public function getFrontendHtml()
method getSetupSource (line 146) | public function getSetupSource()
method getFormOptions (line 160) | public function getFormOptions()
method getMassActionValues (line 176) | public function getMassActionValues()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Decimal.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Decimal (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Decimal extends Ultima...
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown extends Ultim...
method getSetupSource (line 83) | public function getSetupSource()
method getAdminColumnOptions (line 100) | public function getAdminColumnOptions()
method getFormType (line 132) | public function getFormType()
method getRssText (line 144) | public function getRssText()
method getGenerateSource (line 175) | public function getGenerateSource()
method getSubTypeInstance (line 188) | public function getSubTypeInstance()
method getAdditionalSetup (line 215) | public function getAdditionalSetup()
method getFrontendHtml (line 227) | public function getFrontendHtml()
method getAttributeOptions (line 257) | public function getAttributeOptions()
method getFormOptions (line 269) | public function getFormOptions()
method getOptionsFlag (line 290) | public function getOptionsFlag()
method getSetupType (line 302) | public function getSetupType()
method getTypeDdl (line 318) | public function getTypeDdl()
method getSizeDdl (line 334) | public function getSizeDdl()
method getMassActionValues (line 350) | public function getMassActionValues()
method getDefaultValueProcessed (line 375) | public function getDefaultValueProcessed()
method getDefaultValueSetup (line 387) | public function getDefaultValueSetup()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Abstract.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Abstract (line 31) | class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Abstract exte...
method getGenerateSource (line 47) | public function getGenerateSource()
method setTypeAttribute (line 60) | public function setTypeAttribute(Ultimate_ModuleCreator_Model_Attribut...
method getTypeAttribute (line 73) | public function getTypeAttribute()
method getAdditionalSetup (line 85) | public function getAdditionalSetup()
method getDefaultValueProcessed (line 97) | public function getDefaultValueProcessed()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Category.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Category (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Category exte...
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Custom.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Custom (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Custom extend...
method getGenerateSource (line 34) | public function getGenerateSource()
method getAdditionalSetup (line 46) | public function getAdditionalSetup()
method getAttributeOptions (line 75) | public function getAttributeOptions()
method getDefaultValueProcessed (line 110) | public function getDefaultValueProcessed()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Customer.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Customer (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Customer exte...
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Product.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Product (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Dropdown_Product exten...
method getAttributeOptions (line 47) | public function getAttributeOptions()
method getEntityCode (line 66) | public function getEntityCode()
method getSetupType (line 78) | public function getSetupType()
method getTypeDdl (line 101) | public function getTypeDdl()
method getTypeSize (line 132) | public function getTypeSize()
method _getEntityAttribute (line 164) | protected function _getEntityAttribute()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/File.php
class Ultimate_ModuleCreator_Model_Attribute_Type_File (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_File extends Ultimate_...
method getAdminGrid (line 48) | public function getAdminGrid()
method getRequired (line 60) | public function getRequired()
method getFormType (line 72) | public function getFormType()
method getRssText (line 84) | public function getRssText()
method getFrontendHtml (line 114) | public function getFrontendHtml()
method getSetupBackend (line 140) | public function getSetupBackend()
method getDefaultValueProcessed (line 157) | public function getDefaultValueProcessed()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Image.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Image (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Image extends Ultimate...
method getAdminGrid (line 47) | public function getAdminGrid()
method getRequired (line 59) | public function getRequired()
method getFormType (line 71) | public function getFormType()
method getRssText (line 83) | public function getRssText()
method getFrontendHtml (line 110) | public function getFrontendHtml()
method getSetupBackend (line 134) | public function getSetupBackend()
method getDefaultValueProcessed (line 151) | public function getDefaultValueProcessed()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Int.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Int (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Int extends Ultimate_M...
method getAdminColumnOptions (line 62) | public function getAdminColumnOptions()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Multiselect.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Multiselect (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Multiselect extends Ul...
method getAdminGrid (line 76) | public function getAdminGrid()
method getFormType (line 88) | public function getFormType()
method getIsMultipleSelect (line 100) | public function getIsMultipleSelect()
method getSetupType (line 112) | public function getSetupType()
method getTypeDdl (line 124) | public function getTypeDdl()
method getOptionsFlag (line 136) | public function getOptionsFlag()
method getMassActionValues (line 148) | public function getMassActionValues()
method getDefaultValueSetup (line 160) | public function getDefaultValueSetup()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Signedint.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Signedint (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Signedint extends Ulti...
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Text.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Text (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Text extends Ultimate_...
method getAdminColumnOptions (line 41) | public function getAdminColumnOptions()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Textarea.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Textarea (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Textarea extends Ultim...
method getAdminGrid (line 69) | public function getAdminGrid()
method getFormType (line 81) | public function getFormType()
method getEditor (line 96) | public function getEditor()
method getFormOptions (line 108) | public function getFormOptions()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Timestamp.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Timestamp (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Timestamp extends Ulti...
method getAdminColumnOptions (line 69) | public function getAdminColumnOptions()
method getFormType (line 84) | public function getFormType()
method getFrontendHtml (line 96) | public function getFrontendHtml()
method getFormOptions (line 115) | public function getFormOptions()
method getRssText (line 133) | public function getRssText()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Yesno.php
class Ultimate_ModuleCreator_Model_Attribute_Type_Yesno (line 25) | class Ultimate_ModuleCreator_Model_Attribute_Type_Yesno extends Ultimate...
method getAdminColumnOptions (line 72) | public function getAdminColumnOptions()
method getFormType (line 92) | public function getFormType()
method getRssText (line 104) | public function getRssText()
method getFrontendHtml (line 125) | public function getFrontendHtml()
method getIsYesNo (line 147) | public function getIsYesNo()
method getFormOptions (line 159) | public function getFormOptions()
method getMassActionValues (line 187) | public function getMassActionValues()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Config.php
class Ultimate_ModuleCreator_Model_Config (line 18) | class Ultimate_ModuleCreator_Model_Config extends Varien_Simplexml_Config
method getDom (line 32) | public function getDom()
method _getDefaultTranslateModule (line 48) | protected function _getDefaultTranslateModule()
method _translateNode (line 61) | protected function _translateNode(&$node)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Entity.php
class Ultimate_ModuleCreator_Model_Entity (line 62) | class Ultimate_ModuleCreator_Model_Entity extends Ultimate_ModuleCreator...
method setModule (line 135) | public function setModule(Ultimate_ModuleCreator_Model_Module $module)
method getModule (line 148) | public function getModule()
method addAttribute (line 162) | public function addAttribute(Ultimate_ModuleCreator_Model_Attribute $a...
method _prepareAttributes (line 224) | protected function _prepareAttributes()
method getAttributes (line 254) | public function getAttributes()
method toXml (line 273) | public function toXml(array $arrAttributes = array(), $rootName = 'ent...
method getNameAttributeMagicCode (line 301) | public function getNameAttributeMagicCode()
method getNameAttribute (line 319) | public function getNameAttribute()
method getNameAttributeCode (line 331) | public function getNameAttributeCode()
method getNameAttributeLabel (line 343) | public function getNameAttributeLabel()
method getHasFile (line 355) | public function getHasFile()
method getHasImage (line 367) | public function getHasImage()
method getHasUpload (line 377) | public function getHasUpload()
method getFirstImageField (line 389) | public function getFirstImageField()
method getNamePlural (line 407) | public function getNamePlural($lower = false)
method getCreateList (line 429) | public function getCreateList()
method getListTemplate (line 441) | public function getListTemplate()
method getCreateView (line 456) | public function getCreateView()
method getViewTemplate (line 468) | public function getViewTemplate()
method getWidget (line 483) | public function getWidget()
method getAddSeo (line 495) | public function getAddSeo()
method getRss (line 507) | public function getRss()
method getUrlRewrite (line 519) | public function getUrlRewrite()
method getUrlPrefix (line 531) | public function getUrlPrefix()
method getUrlSuffix (line 546) | public function getUrlSuffix()
method getShowProducts (line 561) | public function getShowProducts()
method getShowOnProduct (line 575) | public function getShowOnProduct()
method getShowOnCategory (line 587) | public function getShowOnCategory()
method addRelatedEntity (line 601) | public function addRelatedEntity($type, $entity)
method getRelatedEntities (line 615) | public function getRelatedEntities($type = null)
method getNotIsTree (line 633) | public function getNotIsTree()
method getNotUrlRewrite (line 645) | public function getNotUrlRewrite()
method getIsEav (line 657) | public function getIsEav()
method getIsFlat (line 669) | public function getIsFlat()
method getTypeInstance (line 682) | public function getTypeInstance()
method getHasConfigDefaults (line 710) | public function getHasConfigDefaults()
method getLinkCore (line 722) | public function getLinkCore()
method getPlaceholders (line 735) | public function getPlaceholders($param = null)
method getPlaceholdersAsSibling (line 851) | public function getPlaceholdersAsSibling($param = null)
method getDefaultConfig (line 914) | public function getDefaultConfig()
method getAddBlockToProductEvent (line 960) | public function getAddBlockToProductEvent()
method getProductSaveAfterEvent (line 986) | public function getProductSaveAfterEvent()
method getCanLoadExtJsEvent (line 1012) | public function getCanLoadExtJsEvent()
method getMenu (line 1038) | public function getMenu($padding)
method getMenuAcl (line 1074) | public function getMenuAcl($padding)
method getCollectionAttributes (line 1105) | public function getCollectionAttributes()
method getAdminJoin (line 1117) | public function getAdminJoin()
method getPrepareColumnsHeader (line 1129) | public function getPrepareColumnsHeader()
method getNameAttributeGridEav (line 1141) | public function getNameAttributeGridEav()
method getCanCreateListBlock (line 1153) | public function getCanCreateListBlock()
method getAttributesDdlSql (line 1192) | public function getAttributesDdlSql()
method getParentEntitiesFkAttributes (line 1224) | public function getParentEntitiesFkAttributes($padding)
method getSimulatedAttributes (line 1254) | public function getSimulatedAttributes($type = null, $ignoreSettings =...
method getReferenceHeadLayout (line 1403) | public function getReferenceHeadLayout()
method getRelationLayoutXml (line 1428) | public function getRelationLayoutXml()
method getHtmlLink (line 1490) | public function getHtmlLink()
method getViewAttributesHtml (line 1517) | public function getViewAttributesHtml()
method getAllowCommentByStore (line 1539) | public function getAllowCommentByStore()
method getViewWidgetAttributesHtml (line 1551) | public function getViewWidgetAttributesHtml()
method getSystemAttributes (line 1573) | public function getSystemAttributes()
method getApiAdditional (line 1732) | public function getApiAdditional()
method getApiTree (line 1747) | public function getApiTree()
method getApiRelationsSection (line 1780) | public function getApiRelationsSection($relatedCode, $relatedLabel)
method getApiRelations (line 1811) | public function getApiRelations()
method getApiFaultsSection (line 1840) | public function getApiFaultsSection($relatedCode, $relatedLabel, $code)
method getApiFaults (line 1861) | public function getApiFaults()
method getAdditionalApiAcl (line 1908) | public function getAdditionalApiAcl()
method getWsdlAttributes (line 1933) | public function getWsdlAttributes($wsi = false, $forAdd = false)
method getWsiAttributes (line 1971) | public function getWsiAttributes($forAdd = false)
method getWsdlRelationTypesSection (line 1984) | public function getWsdlRelationTypesSection($relatedCode, $relatedId, ...
method getWsdlRelationTypes (line 2028) | public function getWsdlRelationTypes($wsi = false)
method getWsiRelationTypes (line 2078) | public function getWsiRelationTypes()
method getWsdlPortTypeRelationSection (line 2093) | public function getWsdlPortTypeRelationSection($relatedLabel, $related...
method getWsdlPortTypeRelation (line 2132) | public function getWsdlPortTypeRelation($wsi = false)
method getWsiPortTypeRelation (line 2184) | public function getWsiPortTypeRelation()
method getWsdlRelationBindingSection (line 2197) | public function getWsdlRelationBindingSection($sectionName)
method getWsdlRelationBinding (line 2233) | public function getWsdlRelationBinding()
method getWsiRelationBindingSection (line 2269) | public function getWsiRelationBindingSection($sectionName)
method getWsiRelationBinding (line 2299) | public function getWsiRelationBinding()
method getWsiRelationParamTypesSection (line 2337) | public function getWsiRelationParamTypesSection($sectionName, $section...
method getWsiRelationParamTypes (line 2402) | public function getWsiRelationParamTypes()
method getWsiRelationMessagesSection (line 2465) | public function getWsiRelationMessagesSection($sectionName)
method getWsiRelationMessages (line 2494) | public function getWsiRelationMessages()
method getWsdlMessagesSection (line 2529) | public function getWsdlMessagesSection($sectionName, $sectionParam)
method getWsdlMessages (line 2567) | public function getWsdlMessages()
method getParentEntitiesFksDdl (line 2616) | public function getParentEntitiesFksDdl()
method getSelectedMenuPath (line 2644) | public function getSelectedMenuPath($suffix = '')
method getAttributesSetup (line 2663) | public function getAttributesSetup()
method getResourceModelParent (line 2675) | public function getResourceModelParent()
method getResourceCollectionModelParent (line 2687) | public function getResourceCollectionModelParent()
method getResourceRelationsTables (line 2699) | public function getResourceRelationsTables()
method getResourceRelationsTablesDeclare (line 2711) | public function getResourceRelationsTablesDeclare()
method getAdminIndexLayoutContent (line 2723) | public function getAdminIndexLayoutContent()
method getEntityParentModel (line 2735) | public function getEntityParentModel()
method getEntityTableAlias (line 2747) | public function getEntityTableAlias()
method getAdditionalPrepareCollection (line 2759) | public function getAdditionalPrepareCollection()
method getEditLayoutLeft (line 2771) | public function getEditLayoutLeft()
method getEditLayoutAdditional (line 2783) | public function getEditLayoutAdditional()
method getProductAttributeScopeLabel (line 2795) | public function getProductAttributeScopeLabel()
method getCategoryAttributeScopeLabel (line 2807) | public function getCategoryAttributeScopeLabel()
method _getScopeLabel (line 2819) | protected function _getScopeLabel($value)
method getIsAttribute (line 2842) | public function getIsAttribute()
method getCanCreateSourceModel (line 2854) | public function getCanCreateSourceModel()
method getIsParent (line 2866) | public function getIsParent()
method getProductAttributeGroupLabel (line 2879) | public function getProductAttributeGroupLabel()
method getCategoryAttributeGroupLabel (line 2894) | public function getCategoryAttributeGroupLabel()
method getBeforeSaveParam (line 2910) | public function getBeforeSaveParam()
method getEntityAttributeSetId (line 2922) | public function getEntityAttributeSetId()
method getFilterMethod (line 2934) | public function getFilterMethod()
method getMultipleSelectConvert (line 2946) | public function getMultipleSelectConvert()
method getCanCreateEntityHelper (line 2958) | public function getCanCreateEntityHelper()
method getToOptionAddition (line 2979) | public function getToOptionAddition()
method getShowInCategoryMenu (line 2991) | public function getShowInCategoryMenu()
method getMultiselectMethods (line 3004) | public function getMultiselectMethods()
method getNameHtml (line 3040) | public function getNameHtml()
method getNoStore (line 3061) | public function getNoStore()
method getCommentFilterIndexPrefix (line 3073) | public function getCommentFilterIndexPrefix()
method getApiAdditionalSettings (line 3085) | public function getApiAdditionalSettings()
method getSubEntitiesAcl (line 3135) | public function getSubEntitiesAcl()
method getApiResourcesAlias (line 3170) | public function getApiResourcesAlias()
method getApiResourcesAliasV2 (line 3192) | public function getApiResourcesAliasV2()
method getDefaultApiAttributes (line 3214) | public function getDefaultApiAttributes()
method getNamespace (line 3227) | public function getNamespace($lower = false)
method getNameSingular (line 3240) | public function getNameSingular($lower = false)
method getFilterDates (line 3257) | public function getFilterDates($padding = 4)
method getAllAttributesToCollection (line 3280) | public function getAllAttributesToCollection()
method getLoadStoreId (line 3292) | public function getLoadStoreId()
method getRestResourceGroup (line 3304) | public function getRestResourceGroup($padding)
method getRestResource (line 3328) | public function getRestResource($padding)
method getRestAttributes (line 3403) | public function getRestAttributes($codeOnly = false, $asString = false)
method getRestCollectionCleanup (line 3429) | public function getRestCollectionCleanup()
method getRestCollectionStoreId (line 3440) | public function getRestCollectionStoreId()
method getDefaultAttributeValues (line 3452) | public function getDefaultAttributeValues()
method getHasParentRelation (line 3464) | public function getHasParentRelation()
method getToOptionArraySelect (line 3476) | public function getToOptionArraySelect()
method getParentStaticParams (line 3488) | public function getParentStaticParams()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Entity/Type/Abstract.php
class Ultimate_ModuleCreator_Model_Entity_Type_Abstract (line 25) | abstract class Ultimate_ModuleCreator_Model_Entity_Type_Abstract extends...
method setEntity (line 52) | public function setEntity(Ultimate_ModuleCreator_Model_Entity $entity)
method getEntity (line 65) | public function getEntity()
method getModule (line 77) | public function getModule()
method getNamespace (line 90) | public function getNamespace($lower = false)
method getLowerModuleName (line 102) | public function getLowerModuleName()
method getCollectionAttributes (line 114) | public function getCollectionAttributes()
method getAdminJoin (line 126) | public function getAdminJoin()
method getPrepareColumnsHeader (line 138) | public function getPrepareColumnsHeader()
method getNameAttributeGridEav (line 150) | public function getNameAttributeGridEav()
method getHasImage (line 162) | public function getHasImage()
method getHasFile (line 174) | public function getHasFile()
method getHasSubmenu (line 186) | public function getHasSubmenu()
method getAdditionalMenu (line 199) | public function getAdditionalMenu($padding)
method getAdditionalMenuAcl (line 212) | public function getAdditionalMenuAcl($padding)
method getAllowCommentByStore (line 224) | public function getAllowCommentByStore()
method getAttributesSetup (line 236) | public function getAttributesSetup()
method getResourceModelParent (line 248) | public function getResourceModelParent()
method getResourceCollectionModelParent (line 260) | public function getResourceCollectionModelParent()
method getResourceRelationsTables (line 272) | public function getResourceRelationsTables()
method getResourceRelationsTablesDeclare (line 284) | public function getResourceRelationsTablesDeclare()
method getAdminIndexLayoutContent (line 296) | public function getAdminIndexLayoutContent()
method getEntityParentModel (line 312) | public function getEntityParentModel()
method getEntityTableAlias (line 324) | public function getEntityTableAlias()
method getAdditionalPrepareCollection (line 336) | public function getAdditionalPrepareCollection()
method getEditLayoutLeft (line 348) | public function getEditLayoutLeft()
method getEditLayoutAdditional (line 360) | public function getEditLayoutAdditional()
method getBeforeSaveParam (line 372) | public function getBeforeSaveParam()
method getEntityAttributeSetId (line 384) | public function getEntityAttributeSetId()
method getFilterMethod (line 396) | public function getFilterMethod()
method getMultipleSelectConvert (line 408) | public function getMultipleSelectConvert()
method getCanCreateEntityHelper (line 434) | public function getCanCreateEntityHelper()
method getToOptionAddition (line 446) | public function getToOptionAddition()
method getCommentFilterIndexPrefix (line 458) | public function getCommentFilterIndexPrefix()
method getApiAdditional (line 470) | public function getApiAdditional()
method getApiFaults (line 482) | public function getApiFaults()
method getApiAdditionalSettings (line 494) | public function getApiAdditionalSettings()
method getSubEntitiesAcl (line 506) | public function getSubEntitiesAcl()
method getApiResourcesAlias (line 518) | public function getApiResourcesAlias()
method getApiResourcesAliasV2 (line 530) | public function getApiResourcesAliasV2()
method getWsdlAttributes (line 543) | public function getWsdlAttributes($wsi = false)
method getDefaultApiAttributes (line 555) | public function getDefaultApiAttributes()
method getAllAttributesToCollection (line 567) | public function getAllAttributesToCollection()
method getLoadStoreId (line 579) | public function getLoadStoreId()
method getRestCollectionCleanup (line 591) | public function getRestCollectionCleanup()
method getRestCollectionStoreId (line 605) | public function getRestCollectionStoreId()
method getDefaultAttributeValues (line 617) | public function getDefaultAttributeValues()
method getToOptionArraySelect (line 640) | public function getToOptionArraySelect()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Entity/Type/Eav.php
class Ultimate_ModuleCreator_Model_Entity_Type_Eav (line 18) | class Ultimate_ModuleCreator_Model_Entity_Type_Eav extends Ultimate_Modu...
method getCollectionAttributes (line 34) | public function getCollectionAttributes()
method getAdminJoin (line 73) | public function getAdminJoin()
method getPrepareColumnsHeader (line 116) | public function getPrepareColumnsHeader()
method getNameAttributeGridEav (line 128) | public function getNameAttributeGridEav()
method getHasImage (line 158) | public function getHasImage()
method getHasFile (line 170) | public function getHasFile()
method getHasSubmenu (line 182) | public function getHasSubmenu()
method getAdditionalMenu (line 195) | public function getAdditionalMenu($padding)
method getAdditionalMenuAcl (line 221) | public function getAdditionalMenuAcl($padding)
method getAllowCommentByStore (line 243) | public function getAllowCommentByStore()
method _getParentAttributes (line 255) | protected function _getParentAttributes()
method getAttributesSetup (line 289) | public function getAttributesSetup()
method getResourceModelParent (line 324) | public function getResourceModelParent()
method getResourceCollectionModelParent (line 336) | public function getResourceCollectionModelParent()
method getResourceRelationsTables (line 348) | public function getResourceRelationsTables()
method getResourceRelationsTablesDeclare (line 384) | public function getResourceRelationsTablesDeclare()
method getAdminIndexLayoutContent (line 411) | public function getAdminIndexLayoutContent()
method getEntityParentModel (line 435) | public function getEntityParentModel()
method getEntityTableAlias (line 447) | public function getEntityTableAlias()
method getAdditionalPrepareCollection (line 459) | public function getAdditionalPrepareCollection()
method getEditLayoutLeft (line 471) | public function getEditLayoutLeft()
method getEditLayoutAdditional (line 484) | public function getEditLayoutAdditional()
method getBeforeSaveParam (line 506) | public function getBeforeSaveParam()
method getEntityAttributeSetId (line 518) | public function getEntityAttributeSetId()
method getFilterMethod (line 535) | public function getFilterMethod()
method getMultipleSelectConvert (line 547) | public function getMultipleSelectConvert()
method getCanCreateEntityHelper (line 559) | public function getCanCreateEntityHelper()
method getToOptionAddition (line 571) | public function getToOptionAddition()
method getCommentFilterIndexPrefix (line 584) | public function getCommentFilterIndexPrefix()
method getApiAdditional (line 596) | public function getApiAdditional()
method getApiFaults (line 620) | public function getApiFaults()
method getApiAdditionalSettings (line 640) | public function getApiAdditionalSettings()
method getSubEntitiesAcl (line 755) | public function getSubEntitiesAcl()
method getApiResourcesAlias (line 810) | public function getApiResourcesAlias()
method getApiResourcesAliasV2 (line 829) | public function getApiResourcesAliasV2()
method getWsdlAttributes (line 849) | public function getWsdlAttributes($wsi = false)
method getDefaultApiAttributes (line 876) | public function getDefaultApiAttributes()
method getAllAttributesToCollection (line 907) | public function getAllAttributesToCollection()
method getLoadStoreId (line 919) | public function getLoadStoreId()
method getRestCollectionCleanup (line 931) | public function getRestCollectionCleanup()
method getRestCollectionStoreId (line 943) | public function getRestCollectionStoreId()
method getDefaultAttributeValues (line 955) | public function getDefaultAttributeValues()
method getToOptionArraySelect (line 967) | public function getToOptionArraySelect()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Entity/Type/Flat.php
class Ultimate_ModuleCreator_Model_Entity_Type_Flat (line 25) | class Ultimate_ModuleCreator_Model_Entity_Type_Flat extends Ultimate_Mod...
FILE: app/code/community/Ultimate/ModuleCreator/Model/Module.php
class Ultimate_ModuleCreator_Model_Module (line 65) | class Ultimate_ModuleCreator_Model_Module extends Ultimate_ModuleCreator...
method addEntity (line 167) | public function addEntity(Ultimate_ModuleCreator_Model_Entity $entity)
method getEntity (line 288) | public function getEntity($code)
method toXml (line 307) | public function toXml(array $arrAttributes = array(), $rootName = 'mod...
method getEntities (line 341) | public function getEntities()
method _prepareEntities (line 354) | protected function _prepareEntities()
method addRelation (line 368) | public function addRelation(Ultimate_ModuleCreator_Model_Relation $rel...
method getRelations (line 390) | public function getRelations($type = null)
method getXmlPath (line 412) | public function getXmlPath()
method save (line 425) | public function save()
method validate (line 440) | public function validate()
method _addError (line 578) | protected function _addError($message, $attribute = null, $separator =...
method _writeFile (line 603) | protected function _writeFile($destinationFile, $contents)
method getEffinVersion (line 631) | public function getEffinVersion()
method getIo (line 646) | public function getIo()
method getRelationsAsJson (line 662) | public function getRelationsAsJson()
method getExtensionName (line 681) | public function getExtensionName($lower = false)
method getRestrictedEntityNames (line 697) | public function getRestrictedEntityNames()
method getRestrictedAttributeCodes (line 714) | public function getRestrictedAttributeCodes()
method getMethodAttributeCodes (line 729) | public function getMethodAttributeCodes()
method buildModule (line 753) | public function buildModule()
method _writeFiles (line 797) | protected function _writeFiles()
method _writeLog (line 818) | protected function _writeLog()
method _writeUninstall (line 835) | protected function _writeUninstall()
method _writeModman (line 912) | protected function _writeModman()
method getModmanPath (line 953) | public function getModmanPath()
method _checkExistingFiles (line 965) | protected function _checkExistingFiles()
method getLogPath (line 985) | public function getLogPath()
method getUninstallPath (line 997) | public function getUninstallPath()
method getBasePath (line 1009) | public function getBasePath()
method getRelativeBasePath (line 1024) | public function getRelativeBasePath()
method getConfig (line 1039) | public function getConfig()
method getFileContents (line 1055) | public function getFileContents($file)
method _createFile (line 1068) | protected function _createFile($config)
method _validateDepend (line 1101) | protected function _validateDepend(
method _buildGlobalFile (line 1128) | public function _buildGlobalFile($config)
method _buildEntityFile (line 1276) | public function _buildEntityFile($config)
method _buildSiblingFile (line 1396) | protected function _buildSiblingFile($config)
method _buildChildrenFile (line 1442) | protected function _buildChildrenFile($config)
method _buildAttributeFile (line 1494) | protected function _buildAttributeFile($config)
method getSourceFolder (line 1529) | public function getSourceFolder()
method _filterString (line 1549) | protected function _filterString(
method _addFile (line 1579) | protected function _addFile($destinationFile, $content)
method getLicenseText (line 1595) | public function getLicenseText($fileType)
method getPlaceholder (line 1643) | public function getPlaceholder($param = null)
method getEntityDefaultConfig (line 1696) | public function getEntityDefaultConfig()
method getHasCatalogRelation (line 1719) | public function getHasCatalogRelation()
method getEntityMenu (line 1732) | public function getEntityMenu($padding)
method getEntityMenuAcl (line 1749) | public function getEntityMenuAcl($padding)
method _sortCodeFiles (line 1767) | protected function _sortCodeFiles($files, $sortField = 'sort_order')
method getLowerModuleName (line 1790) | public function getLowerModuleName()
method getMenuItemsXml (line 1802) | public function getMenuItemsXml()
method getMenuAcl (line 1840) | public function getMenuAcl()
method getResourceSetupModel (line 1878) | public function getResourceSetupModel()
method _sortTranslationFile (line 1894) | protected function _sortTranslationFile($content)
method getQwertyuiop (line 1921) | public function getQwertyuiop()
method getQwertyuiopp (line 1934) | public function getQwertyuiopp()
method getDepends (line 1946) | public function getDepends()
method getProductViewLayout (line 1971) | public function getProductViewLayout()
method getCategoryViewLayout (line 2005) | public function getCategoryViewLayout()
method getFrontendDefaultLayoutHandle (line 2033) | public function getFrontendDefaultLayoutHandle()
method getCategoryMenuEvent (line 2121) | public function getCategoryMenuEvent()
method getCustomerCommentLinks (line 2153) | public function getCustomerCommentLinks()
method getNamespace (line 2181) | public function getNamespace($lower = false)
method getFrontKey (line 2197) | public function getFrontKey()
method getSystemTabName (line 2216) | public function getSystemTabName()
method getSystemTabPosition (line 2231) | public function getSystemTabPosition()
method getRestResourceGroupsChildren (line 2242) | public function getRestResourceGroupsChildren()
method getRestResources (line 2258) | public function getRestResources()
method getEavOptionsDefaults (line 2274) | public function getEavOptionsDefaults()
method getHasRelationColumnRenderer (line 2294) | public function getHasRelationColumnRenderer()
method getHasParentRelation (line 2314) | public function getHasParentRelation()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Module/Collection.php
class Ultimate_ModuleCreator_Model_Module_Collection (line 25) | class Ultimate_ModuleCreator_Model_Module_Collection extends Varien_Data...
method __construct (line 48) | public function __construct()
method _generateRow (line 65) | protected function _generateRow($filename)
method collectFolders (line 87) | public function collectFolders()
FILE: app/code/community/Ultimate/ModuleCreator/Model/Relation.php
class Ultimate_ModuleCreator_Model_Relation (line 18) | class Ultimate_ModuleCreator_Model_Relation extends Ultimate_ModuleCreat...
method setEntities (line 55) | public function setEntities(
method getType (line 91) | public function getType()
method getEntities (line 103) | public function getEntities()
method toXml (line 119) | public function toXml(array $arrAttributes = array(), $rootName = 'rel...
method getShowFrontendRelationSiblings (line 144) | public function getShowFrontendRelationSiblings($index)
method getShowFrontendRelationChildren (line 162) | public function getShowFrontendRelationChildren()
method getHasTree (line 183) | public function getHasTree()
method getNotHasTree (line 195) | public function getNotHasTree()
method getEntityIsTree (line 208) | public function getEntityIsTree($index)
method getSiblingIsTree (line 222) | public function getSiblingIsTree($index)
method getSiblingIsNotTree (line 235) | public function getSiblingIsNotTree($index)
method getEntityHasApi (line 248) | public function getEntityHasApi($index)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Source/Attribute/Scope.php
class Ultimate_ModuleCreator_Model_Source_Attribute_Scope (line 25) | class Ultimate_ModuleCreator_Model_Source_Attribute_Scope
method toArray (line 41) | public function toArray($withEmpty = false)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Source/Attribute/Type.php
class Ultimate_ModuleCreator_Model_Source_Attribute_Type (line 25) | class Ultimate_ModuleCreator_Model_Source_Attribute_Type
method toArray (line 41) | public function toArray($withEmpty = false)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Source/Attribute/Value/Source.php
class Ultimate_ModuleCreator_Model_Source_Attribute_Value_Source (line 25) | class Ultimate_ModuleCreator_Model_Source_Attribute_Value_Source
method toArray (line 42) | public function toArray($withEmpty = false)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Source/Codepool.php
class Ultimate_ModuleCreator_Model_Source_Codepool (line 24) | class Ultimate_ModuleCreator_Model_Source_Codepool
method toOptionArray (line 34) | public function toOptionArray($withEmpty = false)
method getAllOptions (line 56) | public function getAllOptions($withEmpty = true)
method toArray (line 72) | public function toArray($withEmpty = true)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Source/Entity/Layout.php
class Ultimate_ModuleCreator_Model_Source_Entity_Layout (line 25) | class Ultimate_ModuleCreator_Model_Source_Entity_Layout
method toArray (line 41) | public function toArray($withEmpty = false)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Source/Entity/Menu.php
class Ultimate_ModuleCreator_Model_Source_Entity_Menu (line 25) | class Ultimate_ModuleCreator_Model_Source_Entity_Menu
method toArray (line 47) | public function toArray($withEmpty = false)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Source/Entity/Type.php
class Ultimate_ModuleCreator_Model_Source_Entity_Type (line 25) | class Ultimate_ModuleCreator_Model_Source_Entity_Type
method toArray (line 42) | public function toArray($withEmpty = false)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Source/Install.php
class Ultimate_ModuleCreator_Model_Source_Install (line 25) | class Ultimate_ModuleCreator_Model_Source_Install
method toOptionArray (line 35) | public function toOptionArray($withEmpty = false)
method getAllOptions (line 63) | public function getAllOptions($withEmpty = true)
method toArray (line 79) | public function toArray($withEmpty = true)
FILE: app/code/community/Ultimate/ModuleCreator/Model/Writer.php
class Ultimate_ModuleCreator_Model_Writer (line 24) | class Ultimate_ModuleCreator_Model_Writer extends Mage_Connect_Package_W...
method setPathPrefix (line 40) | public function setPathPrefix($pathPrefix)
method composePackage (line 54) | public function composePackage()
method setNamePackage (line 86) | public function setNamePackage($name)
FILE: app/code/community/Ultimate/ModuleCreator/controllers/Adminhtml/ModulecreatorController.php
class Ultimate_ModuleCreator_Adminhtml_ModulecreatorController (line 25) | class Ultimate_ModuleCreator_Adminhtml_ModulecreatorController extends M...
method indexAction (line 34) | public function indexAction()
method gridAction (line 57) | public function gridAction()
method newAction (line 70) | public function newAction()
method editAction (line 82) | public function editAction()
method _initModule (line 109) | protected function _initModule()
method _initModuleFromData (line 142) | protected function _initModuleFromData($data)
method validateAction (line 201) | public function validateAction()
method saveAction (line 234) | public function saveAction()
method downloadAction (line 261) | public function downloadAction()
Condensed preview — 775 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (2,101K chars).
[
{
"path": ".gitignore",
"chars": 23,
"preview": "/vendor/\ncomposer.lock\n"
},
{
"path": "LICENSE_UMC",
"chars": 1073,
"preview": "The MIT License (MIT)\n\nCopyright (c) 2014 Marius\n\nPermission is hereby granted, free of charge, to any person obtaining "
},
{
"path": "README.md",
"chars": 1237,
"preview": "Ultimate Module Creator 1.9.6.0\r\n======\r\n## Notice\r\n\r\n<strong>Because of lack of time, motivation and because Magento2 i"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Form.php",
"chars": 1529,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Entities/Entity/Attribute.php",
"chars": 2730,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Entities/Entity.php",
"chars": 2401,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Entities.php",
"chars": 2626,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Help/Fieldset.php",
"chars": 2490,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Help.php",
"chars": 14265,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Relation.php",
"chars": 2215,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tab/Settings.php",
"chars": 2821,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit/Tabs.php",
"chars": 1333,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Edit.php",
"chars": 9966,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Grid/Column/Renderer/Download.php",
"chars": 2707,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Grid.php",
"chars": 6488,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/Menu.php",
"chars": 3385,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Abstract.php",
"chars": 4567,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Attribute.php",
"chars": 1207,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Entity.php",
"chars": 1198,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator/System/Config/Form/Fieldset/Settings.php",
"chars": 1211,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Block/Adminhtml/Modulecreator.php",
"chars": 1289,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Exception.php",
"chars": 641,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Helper/Data.php",
"chars": 16832,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Abstract.php",
"chars": 3347,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Abstract.php",
"chars": 12143,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Country.php",
"chars": 5720,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Decimal.php",
"chars": 1287,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Abstract.php",
"chars": 2620,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Category.php",
"chars": 1008,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Custom.php",
"chars": 5477,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Customer.php",
"chars": 1000,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown/Product.php",
"chars": 5137,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Dropdown.php",
"chars": 14300,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/File.php",
"chars": 5213,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Image.php",
"chars": 4936,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Int.php",
"chars": 1658,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Multiselect.php",
"chars": 5261,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Signedint.php",
"chars": 955,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Text.php",
"chars": 1326,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Textarea.php",
"chars": 2709,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Timestamp.php",
"chars": 4077,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute/Type/Yesno.php",
"chars": 6299,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Attribute.php",
"chars": 22600,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Config.php",
"chars": 2374,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Entity/Type/Abstract.php",
"chars": 15197,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Entity/Type/Eav.php",
"chars": 38816,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Entity/Type/Flat.php",
"chars": 845,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Entity.php",
"chars": 138601,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Module/Collection.php",
"chars": 3147,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Module.php",
"chars": 87841,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Relation.php",
"chars": 7127,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Source/Attribute/Scope.php",
"chars": 2019,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Source/Attribute/Type.php",
"chars": 2247,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Source/Attribute/Value/Source.php",
"chars": 1696,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Source/Codepool.php",
"chars": 2131,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Source/Entity/Layout.php",
"chars": 1668,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Source/Entity/Menu.php",
"chars": 1958,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Source/Entity/Type.php",
"chars": 1674,
"preview": "<?php\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Licen"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Source/Install.php",
"chars": 2381,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/Model/Writer.php",
"chars": 2682,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/controllers/Adminhtml/ModulecreatorController.php",
"chars": 10880,
"preview": "<?php \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is subject to the MIT Lice"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/adminhtml.xml",
"chars": 1964,
"preview": "<?xml version=\"1.0\"?>\n<!-- \n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is su"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/config.xml",
"chars": 5079,
"preview": "<?xml version=\"1.0\"?>\n<!--\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is sub"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/jstranslator.xml",
"chars": 814,
"preview": "<?xml version=\"1.0\"?>\n<!--\n/**\n * Ultimate_ModuleCreator extension\n *\n * NOTICE OF LICENSE\n *\n * This source file is sub"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Catalog/Category/Tab/Entity/010_tree",
"chars": 8310,
"preview": "<?php\n{{License}}\n/**\n * categories - {{entity}} relation edit block\n *\n * @category {{Namespace}}\n * @package {{"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Catalog/Category/Tab/Entity/020_not_tree",
"chars": 6586,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} tab on category edit form\n *\n * @category {{Namespace}}\n * @package {{Na"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Catalog/Product/Edit/Tab/Entity/010_top",
"chars": 163,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} tab on product edit form\n *\n * @category {{Namespace}}\n * @package {{Nam"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Catalog/Product/Edit/Tab/Entity/020_not_tree",
"chars": 6398,
"preview": "class {{Namespace}}_{{Module}}_Block_Adminhtml_Catalog_Product_Edit_Tab_{{Entity}} extends Mage_Adminhtml_Block_Widget_G"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Catalog/Product/Edit/Tab/Entity/030_tree",
"chars": 7605,
"preview": "class {{Namespace}}_{{Module}}_Block_Adminhtml_Catalog_Product_Edit_Tab_{{Entity}} extends {{Namespace}}_{{Module}}_Bloc"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Catalog/Product/Edit/Tab/Entity/040_footer",
"chars": 2,
"preview": "}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/010_top",
"chars": 782,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} admin block\n *\n * @category {{Namespace}}\n * @package {{Namespace}}_{{Mo"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/020_eav",
"chars": 67,
"preview": " $this->setTemplate('{{namespace}}_{{module}}/grid.phtml');\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/030_footer",
"chars": 8,
"preview": " }\n}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Abstract/010_content",
"chars": 6681,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} admin block abstract\n *\n * @category {{Namespace}}\n * @package {{Namespa"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Attribute/010_content",
"chars": 853,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} admin attribute block\n *\n * @category {{Namespace}}\n * @package {{Namesp"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Attribute/Edit/010_content",
"chars": 2725,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} attribute edit block\n *\n * @category {{Namespace}}\n * @package {{Namespa"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Attribute/Edit/Form/010_content",
"chars": 868,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} attribute add/edit block\n *\n * @category {{Namespace}}\n * @package {{Nam"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Attribute/Edit/Tab/Main/010_content",
"chars": 5040,
"preview": "<?php\n{{License}}\n/**\n * Adminhtml {{entityLabel}} attribute edit page main tab\n *\n * @category {{Namespace}}\n * @pac"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Attribute/Edit/Tab/Options/010_content",
"chars": 339,
"preview": "<?php\n{{License}}\n/**\n * Adminhtml {{entityLabel}} attribute add/edit form options tab\n *\n * @category {{Namespace}}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Attribute/Edit/Tabs/010_content",
"chars": 1928,
"preview": "<?php\n{{License}}\n/**\n * Adminhtml {{entityLabel}} attribute edit page tabs\n *\n * @category {{Namespace}}\n * @package"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Attribute/Grid/010_content",
"chars": 2015,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} attributes grid\n *\n * @category {{Namespace}}\n * @package {{Namespace}}_"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/010_content",
"chars": 721,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} comments admin block\n *\n * @category {{Namespace}}\n * @package {{Namespa"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Edit/010_content",
"chars": 1932,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} comment admin edit form\n *\n * @category {{Namespace}}\n * @package {{Name"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Edit/Form/010_content",
"chars": 942,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} comment edit form\n *\n * @category {{Namespace}}\n * @package {{Namespace}"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Edit/Tab/Form/010_top",
"chars": 4646,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} comment edit form tab\n *\n * @category {{Namespace}}\n * @package {{Namesp"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Edit/Tab/Form/020_stores",
"chars": 417,
"preview": " if (Mage::app()->isSingleStoreMode()) {\n $fieldset->addField(\n 'store_id',\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Edit/Tab/Form/030_footer",
"chars": 342,
"preview": " $form->addValues($this->getComment()->getData());\n return parent::_prepareForm();\n }\n\n /**\n * g"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Edit/Tab/Stores/010_content",
"chars": 1566,
"preview": "<?php\n{{License}}\n/**\n * store selection tab\n *\n * @category {{Namespace}}\n * @package {{Namespace}}_{{Module}}\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Edit/Tabs/010_top",
"chars": 1368,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} comment admin edit tabs\n *\n * @category {{Namespace}}\n * @package {{Name"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Edit/Tabs/020_stores",
"chars": 595,
"preview": " if (!Mage::app()->isSingleStoreMode()) {\n $this->addTab(\n 'form_store_{{entity}}_comme"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Edit/Tabs/030_footer",
"chars": 300,
"preview": " return parent::_beforeToHtml();\n }\n\n /**\n * Retrieve comment\n *\n * @access public\n * @retu"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Grid/010_top",
"chars": 998,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} comments admin grid block\n *\n * @category {{Namespace}}\n * @package {{Na"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Grid/013_store_data",
"chars": 38,
"preview": " $collection->addStoreData();\r\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Grid/016_prepare",
"chars": 3553,
"preview": " $this->setCollection($collection);\n return parent::_prepareCollection();\n }\n\n /**\n * prepare gr"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Grid/020_stores",
"chars": 597,
"preview": " if (!Mage::app()->isSingleStoreMode() && !$this->_isExport) {\n $this->addColumn(\n 'sto"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Grid/030_content",
"chars": 3740,
"preview": " $this->addColumn(\n 'action',\n array(\n 'header' => Mage::helper('{{namespac"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Grid/040_store_filter",
"chars": 570,
"preview": "\n /**\n * filter store column\n *\n * @access protected\n * @param {{Namespace}}_{{Module}}_Model_Resourc"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Comment/Grid/050_footer",
"chars": 2,
"preview": "}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/010_top",
"chars": 376,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} admin edit form\n *\n * @category {{Namespace}}\n * @package {{Namespace}}_"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/020_tree",
"chars": 351,
"preview": " public function __construct()\n {\n $this->_objectId = 'entity_id';\n $this->_blockGroup = '{{name"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/030_not_tree",
"chars": 1617,
"preview": " public function __construct()\n {\n parent::__construct();\n $this->_blockGroup = '{{namespace}}_{{mod"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Form/010_top",
"chars": 148,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} edit form\n *\n * @category {{Namespace}}\n * @package {{Namespace}}_{{Modu"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Form/020_prepare_form",
"chars": 872,
"preview": "class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Form extends Mage_Adminhtml_Block_Widget_Form\n{\n /**\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Form/025_prepare_form_eav",
"chars": 947,
"preview": "class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Form extends Mage_Adminhtml_Block_Widget_Form\n{\n /**\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Form/030_tree_top",
"chars": 6712,
"preview": "class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Form extends {{Namespace}}_{{Module}}_Block_Adminhtml_{{E"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Form/040_product_relation",
"chars": 528,
"preview": "\n /**\n * get products json\n *\n * @access public\n * @return string\n * {{qwertyuiop}}\n */\n p"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Form/050_entity_relation",
"chars": 579,
"preview": "\n /**\n * get {{siblingsLabel}} in json format\n *\n * @access public\n * @return string\n * {{qwertyu"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Form/060_footer",
"chars": 2,
"preview": "}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Attributes/010_top",
"chars": 1082,
"preview": "<?php\n {{License}}\n/**\n * {{Entity}} admin edit tab attributes block\n * @category {{Namespace}}\n * @package {{Nam"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Attributes/020_tree",
"chars": 1402,
"preview": " if ($this->getAddHiddenFields()) {\n if (!$this->get{{Entity}}()->getId()) {\n // path\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Attributes/021_default_values",
"chars": 459,
"preview": " $this->_setFieldset($attributes, $fieldset, array());\n $formValues = Mage::registry('current_{{entity}}')"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Attributes/022_default_values_tree",
"chars": 80,
"preview": " //do not set default value for path\n unset($formValues['path']);\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Attributes/023_layout",
"chars": 1840,
"preview": " $form->addValues($formValues);\n $form->setFieldNameSuffix('{{entity}}');\n $this->setForm($form);\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Attributes/025_after_html_top",
"chars": 245,
"preview": "\n /**\n * get after element html\n *\n * @access protected\n * @param Varien_Data_Form_Element_Abstract $"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Attributes/026_after_html",
"chars": 1191,
"preview": " if ($element->getName() == '{{sibling}}_id') {\n $html = '<a href=\"{#url}\" id=\"{{sibling}}_id_link\" ta"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Attributes/027_after_html_footer",
"chars": 25,
"preview": " return '';\n }\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Attributes/030_footer",
"chars": 2,
"preview": "}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Categories/010_content",
"chars": 7998,
"preview": "<?php\n{{License}}\n/**\n * {{entity}} - categories relation edit block\n *\n * @category {{Namespace}}\n * @package {{"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/010_top",
"chars": 830,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} edit form tab\n *\n * @category {{Namespace}}\n * @package {{Namespace}}_{{"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/020_image",
"chars": 171,
"preview": " $fieldset->addType(\n 'image',\n Mage::getConfig()->getBlockClassName('{{namespace}}_{{modul"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/030_file",
"chars": 169,
"preview": " $fieldset->addType(\n 'file',\n Mage::getConfig()->getBlockClassName('{{namespace}}_{{module"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/040_wysiwyg",
"chars": 80,
"preview": " $wysiwygConfig = Mage::getSingleton('cms/wysiwyg_config')->getConfig();\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/050_wysiwyg_is_tree",
"chars": 163,
"preview": " $fieldset->addType(\n 'editor',\n Mage::getConfig()->getBlockClassName('{{namespace}}_{{modu"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/060_path_tree",
"chars": 987,
"preview": " if (!$this->get{{Entity}}()->getId()) {\n $parentId = $this->getRequest()->getParam('parent');\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/070_parents",
"chars": 1821,
"preview": " $values = Mage::getResourceModel('{{namespace}}_{{module}}/{{sibling}}_collection')\n {{siblingToOptio"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/080_attributes",
"chars": 337,
"preview": "{{attributePreElementText}}\n $fieldset->addField(\n '{{attributeCode}}',\n '{{attributeFormTy"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/090_url_rewrite",
"chars": 342,
"preview": " $fieldset->addField(\n 'url_key',\n 'text',\n array(\n 'label' => Ma"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/100_status",
"chars": 654,
"preview": " $fieldset->addField(\n 'status',\n 'select',\n array(\n 'label' => "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/110_rss",
"chars": 649,
"preview": " $fieldset->addField(\n 'in_rss',\n 'select',\n array(\n 'label' => "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/120_stores",
"chars": 420,
"preview": " if (Mage::app()->isSingleStoreMode()) {\n $fieldset->addField(\n 'store_id',\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/130_allow_comment",
"chars": 376,
"preview": " $fieldset->addField(\n 'allow_comment',\n 'select',\n array(\n 'labe"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/140_add_values_not_tree",
"chars": 697,
"preview": " $formValues = Mage::registry('current_{{entity}}')->getDefaultValues();\r\n if (!is_array($formValues)) {\r\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/150_add_values_tree",
"chars": 106,
"preview": " $form->addValues($this->get{{Entity}}()->getData());\n return parent::_prepareForm();\n }\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/160_get_entity_tree",
"chars": 235,
"preview": "\n /**\n * get the current {{entityLabel}}\n *\n * @access public\n * @return {{Namespace}}_{{Module}}_Mod"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Form/170_footer",
"chars": 2,
"preview": "}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Meta/010_content",
"chars": 1696,
"preview": "<?php\n{{License}}\n/**\n * meta information tab\n *\n * @category {{Namespace}}\n * @package {{Namespace}}_{{Module}}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Product/010_content",
"chars": 7103,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} - product relation edit block\n *\n * @category {{Namespace}}\n * @package "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Sibling/010_top",
"chars": 167,
"preview": "<?php\n{{License}}\n/**\n * {{entity}} - {{sibling}} relation edit block\n *\n * @category {{Namespace}}\n * @package {"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Sibling/020_not_tree",
"chars": 6371,
"preview": "class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Tab_{{Sibling}} extends Mage_Adminhtml_Block_Widget_Grid\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Sibling/030_tree",
"chars": 8229,
"preview": "class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Edit_Tab_{{Sibling}} extends {{Namespace}}_{{Module}}_Block_Ad"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Sibling/040_footer",
"chars": 2,
"preview": "}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tab/Stores/010_content",
"chars": 1559,
"preview": "<?php\n{{License}}\n/**\n * store selection tab\n *\n * @category {{Namespace}}\n * @package {{Namespace}}_{{Module}}\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/010_top",
"chars": 395,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} admin edit tabs\n *\n * @category {{Namespace}}\n * @package {{Namespace}}_"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/020_flat_not_tree_prepare",
"chars": 909,
"preview": " parent::__construct();\n $this->setId('{{entity}}_tabs');\n $this->setDestElementId('edit_form');\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/030_flat_tree_prepare",
"chars": 930,
"preview": " $this->setId('{{entity}}_info_tabs');\n $this->setDestElementId('{{entity}}_tab_content');\n $this->"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/040_eav_prepare_top",
"chars": 775,
"preview": " parent::__construct();\n $this->setId('{{entity}}_info_tabs');\n $this->setDestElementId('edit_form'"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/042_eav_tree_prepare_top",
"chars": 842,
"preview": " parent::__construct();\n $this->setId('{{entity}}_info_tabs');\n $this->setDestElementId('{{entity}}"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/043_eav_seo_prepare",
"chars": 195,
"preview": " $attributes->addFieldToFilter(\n 'attribute_code',\n array(\n 'nin' => array('"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/047_eav_prepare_bottom",
"chars": 459,
"preview": " $attributes->getSelect()->order('additional_table.position', 'ASC');\n\n $this->addTab(\n 'info',"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/048_eav_prepare_bottom_tree",
"chars": 43,
"preview": " ->setAddHiddenFields(true)\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/049_eav_prepare_real_bottom",
"chars": 53,
"preview": " ->toHtml(),\n )\n );\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/050_seo",
"chars": 459,
"preview": " $this->addTab(\n 'form_meta_{{entity}}',\n array(\n 'label' => Mage::helper("
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/055_seo_eav",
"chars": 930,
"preview": " $seoAttributes = Mage::getResourceModel('eav/entity_attribute_collection')\n ->setEntityTypeFilter($en"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/060_stores",
"chars": 579,
"preview": " if (!Mage::app()->isSingleStoreMode()) {\n $this->addTab(\n 'form_store_{{entity}}',\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/070_relation_not_tree",
"chars": 312,
"preview": " $this->addTab(\n '{{siblings}}',\n array(\n 'label' => Mage::helper('{{namespa"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/080_relation_tree",
"chars": 439,
"preview": " $this->addTab(\n '{{siblings}}',\n array(\n 'label' => Mage::helper('{{names"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/090_product_relation_not_tree",
"chars": 306,
"preview": " $this->addTab(\n 'products',\n array(\n 'label' => Mage::helper('{{namespace}}"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/100_product_relation_tree",
"chars": 429,
"preview": " $this->addTab(\n 'products',\n array(\n 'label' => Mage::helper('{{namespace"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/110_category_relation_not_tree",
"chars": 312,
"preview": " $this->addTab(\n 'categories',\n array(\n 'label' => Mage::helper('{{namespace"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/120_category_relation_tree",
"chars": 437,
"preview": " $this->addTab(\n 'categories',\n array(\n 'label' => Mage::helper('{{namespa"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/130_end_prepare_not_tree",
"chars": 48,
"preview": " return parent::_beforeToHtml();\r\n }\r\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/140_end_prepare_tree",
"chars": 48,
"preview": " return parent::_beforeToHtml();\r\n }\r\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Edit/Tabs/150_footer",
"chars": 267,
"preview": "\n /**\n * Retrieve {{entityLabel}} entity\n *\n * @access public\n * @return {{Namespace}}_{{Module}}_Mod"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/010_top",
"chars": 1579,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} admin grid block\n *\n * @category {{Namespace}}\n * @package {{Namespace}}"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/020_parents",
"chars": 767,
"preview": " $this->addColumn(\n '{{sibling}}_id',\n array(\n 'header' => Mage::helper('"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/030_name_attribute",
"chars": 817,
"preview": " $this->addColumn(\n '{{nameAttributeCode}}',\n array(\n 'header' => Mage::h"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/040_grid_attributes",
"chars": 274,
"preview": " $this->addColumn(\n '{{attributeCode}}',\n array(\n 'header' => Mage::helper('"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/050_url_rewrite",
"chars": 217,
"preview": " $this->addColumn(\n 'url_key',\n array(\n 'header' => Mage::helper('{{namespac"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/060_stores",
"chars": 600,
"preview": " if (!Mage::app()->isSingleStoreMode() && !$this->_isExport) {\n $this->addColumn(\n 'sto"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/070_created_at",
"chars": 303,
"preview": " $this->addColumn(\n 'created_at',\n array(\n 'header' => Mage::helper('{{names"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/080_updated_at",
"chars": 315,
"preview": " $this->addColumn(\n 'updated_at',\n array(\n 'header' => Mage::helper('{{na"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/090_columns_footer",
"chars": 1058,
"preview": " $this->addColumn(\n 'action',\n array(\n 'header' => Mage::helper('{{namespa"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/100_eav_functions",
"chars": 301,
"preview": "\n /**\n * get the selected store\n *\n * @access protected\n * @return Mage_Core_Model_Store\n * {{qwe"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/110_mass_action_top",
"chars": 1591,
"preview": "\n /**\n * prepare mass action\n *\n * @access protected\n * @return {{Namespace}}_{{Module}}_Block_Adminh"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/120_mass_action_flags",
"chars": 793,
"preview": " $this->getMassactionBlock()->addItem(\n '{{attributeCode}}',\n array(\n 'label"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/130_mass_action_parents",
"chars": 989,
"preview": " $values = Mage::getResourceModel('{{namespace}}_{{module}}/{{sibling}}_collection')->toOptionHash();\n $va"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/140_collection_end",
"chars": 543,
"preview": " return $this;\n }\n\n /**\n * get the row url\n *\n * @access public\n * @param {{Namespace}}_{{M"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/145_collection_walk",
"chars": 321,
"preview": "\n /**\n * after collection load\n *\n * @access protected\n * @return {{Namespace}}_{{Module}}_Block_Admi"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/150_store_filter",
"chars": 554,
"preview": "\n /**\n * filter store column\n *\n * @access protected\n * @param {{Namespace}}_{{Module}}_Model_Resourc"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Grid/160_footer",
"chars": 2,
"preview": "}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Helper/File/010_content",
"chars": 2731,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} file field renderer helper\n *\n * @category {{Namespace}}\n * @package {{N"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Helper/Image/010_content",
"chars": 667,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} image field renderer helper\n *\n * @category {{Namespace}}\n * @package {{"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Tree/010_top",
"chars": 2164,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} admin tree block\n *\n * @category {{Namespace}}\n * @package {{Namespace}}"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Tree/020_store_switcher",
"chars": 532,
"preview": " $this->setChild(\n 'store_switcher',\n $this->getLayout()->createBlock('adminhtml/store_swit"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Tree/030_content",
"chars": 483,
"preview": " return parent::_prepareLayout();\n }\n\n /**\n * get the {{entityLabel}} collection\n *\n * @access "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Tree/040_eav",
"chars": 105,
"preview": " $collection->addAttributeToSelect('{{nameAttributeCode}}')->addAttributeToSelect('status');\r\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Tree/050_methods",
"chars": 7477,
"preview": " $this->setData('{{entity}}_collection', $collection);\n }\n return $collection;\n }\n\n /**\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Tree/060_store_switcher_block",
"chars": 940,
"preview": "\n /**\n * get store switcher html\n *\n * @access public\n * @return string\n * {{qwertyuiop}}\n */"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Tree/070_footer",
"chars": 2,
"preview": "}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Widget/Chooser/010_top",
"chars": 160,
"preview": "<?php\n{{License}}\n/**\n * {{EntityLabel}} admin widget chooser\n *\n * @category {{Namespace}}\n * @package {{Namespa"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Widget/Chooser/020_not_tree",
"chars": 2913,
"preview": "class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Widget_Chooser extends Mage_Adminhtml_Block_Widget_Grid\n{\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Widget/Chooser/030_not_tree_eav",
"chars": 123,
"preview": " $collection->addAttributeToSelect('{{nameAttributeCode}}');\r\n $collection->addAttributeToSelect('status')"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Widget/Chooser/040_not_tree_content",
"chars": 960,
"preview": " $this->setCollection($collection);\n return parent::_prepareCollection();\n }\n\n /**\n * Prepare co"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Widget/Chooser/050_not_tree_store",
"chars": 490,
"preview": " if (!Mage::app()->isSingleStoreMode()) {\n $this->addColumn(\n 'store_id',\n "
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Widget/Chooser/060_not_tree_footer",
"chars": 831,
"preview": " $this->addColumn(\n 'chooser_status',\n array(\n 'header' => Mage::helper('{{"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Widget/Chooser/070_not_tree_flat",
"chars": 331,
"preview": "\n /**\n * after collection load\n *\n * @access protected\n * @return {{Namespace}}_{{Module}}_Block_Admi"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Widget/Chooser/080_tree",
"chars": 4366,
"preview": "class {{Namespace}}_{{Module}}_Block_Adminhtml_{{Entity}}_Widget_Chooser extends {{Namespace}}_{{Module}}_Block_Adminhtm"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Entity/Widget/Chooser/090_footer",
"chars": 2,
"preview": "}\n"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Helper/Column/Renderer/Parent/010_content",
"chars": 2627,
"preview": "<?php\n{{License}}\n/**\n * parent entities column renderer\n * @category {{Namespace}}\n * @package {{Namespace}}_{{Mod"
},
{
"path": "app/code/community/Ultimate/ModuleCreator/etc/source/app/code/Block/Adminhtml/Helper/Column/Renderer/Relation/010_content",
"chars": 1319,
"preview": "<?php\n{{License}}\n/**\n * related entities column renderer\n * @category {{Namespace}}\n * @package {{Namespace}}_{{Mo"
}
]
// ... and 575 more files (download for full content)
About this extraction
This page contains the full source code of the tzyganu/UMC1.9 GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 775 files (1.8 MB), approximately 482.2k tokens, and a symbol index with 639 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.