Beispiel #1
0
 /**
  * Adding category form elements for editing attribute
  *
  * @return Hackathon_CatalogAttributes_Block_Adminhtml_Catalog_Category_Attribute_Edit_Tab_Main
  */
 protected function _prepareForm()
 {
     parent::_prepareForm();
     $attributeObject = $this->getAttributeObject();
     /* @var $form Varien_Data_Form */
     $form = $this->getForm();
     /* @var $fieldset Varien_Data_Form_Element_Fieldset */
     $fieldset = $form->getElement('base_fieldset');
     $frontendInputElm = $form->getElement('frontend_input');
     $additionalTypes = array(array('value' => 'price', 'label' => Mage::helper('catalog')->__('Price')), array('value' => 'media_image', 'label' => Mage::helper('catalog')->__('Media Image')));
     if ($attributeObject->getFrontendInput() == 'gallery') {
         $additionalTypes[] = array('value' => 'gallery', 'label' => Mage::helper('catalog')->__('Gallery'));
     }
     $response = new Varien_Object();
     $response->setTypes(array());
     Mage::dispatchEvent('adminhtml_category_attribute_types', array('response' => $response));
     $_disabledTypes = array();
     $_hiddenFields = array();
     foreach ($response->getTypes() as $type) {
         $additionalTypes[] = $type;
         if (isset($type['hide_fields'])) {
             $_hiddenFields[$type['value']] = $type['hide_fields'];
         }
         if (isset($type['disabled_types'])) {
             $_disabledTypes[$type['value']] = $type['disabled_types'];
         }
     }
     Mage::register('attribute_type_hidden_fields', $_hiddenFields);
     Mage::register('attribute_type_disabled_types', $_disabledTypes);
     $frontendInputValues = array_merge($frontendInputElm->getValues(), $additionalTypes);
     $frontendInputElm->setValues($frontendInputValues);
     $yesnoSource = Mage::getModel('adminhtml/system_config_source_yesno')->toOptionArray();
     $scopes = array(Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE => Mage::helper('catalog')->__('Store View'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE => Mage::helper('catalog')->__('Website'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL => Mage::helper('catalog')->__('Global'));
     if ($attributeObject->getAttributeCode() == 'status' || $attributeObject->getAttributeCode() == 'tax_class_id') {
         unset($scopes[Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE]);
     }
     $fieldset->addField('is_global', 'select', array('name' => 'is_global', 'label' => Mage::helper('catalog')->__('Scope'), 'title' => Mage::helper('catalog')->__('Scope'), 'note' => Mage::helper('catalog')->__('Declare attribute value saving scope'), 'values' => $scopes), 'attribute_code');
     // frontend properties fieldset
     $fieldset = $form->addFieldset('front_fieldset', array('legend' => Mage::helper('catalog')->__('Frontend Properties')));
     $fieldset->addField('is_wysiwyg_enabled', 'select', array('name' => 'is_wysiwyg_enabled', 'label' => Mage::helper('catalog')->__('Enable WYSIWYG'), 'title' => Mage::helper('catalog')->__('Enable WYSIWYG'), 'values' => $yesnoSource));
     $htmlAllowed = $fieldset->addField('is_html_allowed_on_front', 'select', array('name' => 'is_html_allowed_on_front', 'label' => Mage::helper('catalog')->__('Allow HTML Tags on Frontend'), 'title' => Mage::helper('catalog')->__('Allow HTML Tags on Frontend'), 'values' => $yesnoSource));
     if (!$attributeObject->getId() || $attributeObject->getIsWysiwygEnabled()) {
         $attributeObject->setIsHtmlAllowedOnFront(1);
     }
     // define field dependencies
     $this->setChild('form_after', $this->getLayout()->createBlock('adminhtml/widget_form_element_dependence')->addFieldMap("is_wysiwyg_enabled", 'wysiwyg_enabled')->addFieldMap("is_html_allowed_on_front", 'html_allowed_on_front')->addFieldMap("frontend_input", 'frontend_input_type')->addFieldDependence('wysiwyg_enabled', 'frontend_input_type', 'textarea')->addFieldDependence('html_allowed_on_front', 'wysiwyg_enabled', '0'));
     Mage::dispatchEvent('adminhtml_catalog_category_attribute_edit_prepare_form', array('form' => $form, 'attribute' => $attributeObject));
     return $this;
 }
Beispiel #2
0
 /**
  * Adding product form elements for editing attribute
  *
  * @return Mage_Adminhtml_Block_Catalog_Product_Attribute_Edit_Tab_Main
  */
 protected function _prepareForm()
 {
     parent::_prepareForm();
     $attributeObject = $this->getAttributeObject();
     /* @var $form Varien_Data_Form */
     $form = $this->getForm();
     /* @var $fieldset Varien_Data_Form_Element_Fieldset */
     $fieldset = $form->getElement('base_fieldset');
     $frontendInputElm = $form->getElement('frontend_input');
     $additionalTypes = array();
     $response = new Varien_Object();
     $response->setTypes(array());
     Mage::dispatchEvent('adminhtml_customer_attribute_types', array('response' => $response));
     $_disabledTypes = array();
     $_hiddenFields = array();
     foreach ($response->getTypes() as $type) {
         $additionalTypes[] = $type;
         if (isset($type['hide_fields'])) {
             $_hiddenFields[$type['value']] = $type['hide_fields'];
         }
         if (isset($type['disabled_types'])) {
             $_disabledTypes[$type['value']] = $type['disabled_types'];
         }
     }
     Mage::register('attribute_type_hidden_fields', $_hiddenFields);
     Mage::register('attribute_type_disabled_types', $_disabledTypes);
     $frontendInputValues = array_merge($frontendInputElm->getValues(), $additionalTypes);
     foreach ($frontendInputValues as $key => $_frontendInput) {
         if ($_frontendInput["value"] == 'multiselect') {
             unset($frontendInputValues[$key]);
         }
     }
     $frontendInputElm->setValues($frontendInputValues);
     $frontendInputElm->setLabel(Mage::helper("profile")->__("Input Type for Store Owner"));
     $yesnoSource = Mage::getModel('adminhtml/system_config_source_yesno')->toOptionArray();
     $scopes = array(Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE => Mage::helper('profile')->__('Store View'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE => Mage::helper('profile')->__('Website'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL => Mage::helper('profile')->__('Global'));
     if ($attributeObject->getAttributeCode() == 'status' || $attributeObject->getAttributeCode() == 'tax_class_id') {
         unset($scopes[Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE]);
     }
     $fieldset->addField('is_global', 'select', array('name' => 'is_global', 'label' => Mage::helper('profile')->__('Scope'), 'title' => Mage::helper('profile')->__('Scope'), 'note' => Mage::helper('profile')->__('Declare attribute value saving scope'), 'values' => $scopes), 'attribute_code');
     $fieldset->addField('sort_order', 'text', array('name' => 'sort_order', 'label' => Mage::helper('profile')->__('Sort Order'), 'title' => Mage::helper('profile')->__('Sort Order'), 'note' => Mage::helper('profile')->__('This is the order according to which this field will display.')));
     // frontend properties fieldset
     // define field dependencies
     $this->setChild('form_after', $this->getLayout()->createBlock('adminhtml/widget_form_element_dependence')->addFieldMap("is_wysiwyg_enabled", 'wysiwyg_enabled')->addFieldMap("is_html_allowed_on_front", 'html_allowed_on_front')->addFieldMap("frontend_input", 'frontend_input_type')->addFieldDependence('wysiwyg_enabled', 'frontend_input_type', 'textarea')->addFieldDependence('html_allowed_on_front', 'wysiwyg_enabled', '0'));
     Mage::dispatchEvent('adminhtml_catalog_product_attribute_edit_prepare_form', array('form' => $form, 'attribute' => $attributeObject));
     return $this;
 }
Beispiel #3
0
 /**
  * Preparing form elements for editing Entity Type Attribute
  *
  * @return $this
  */
 protected function _prepareForm()
 {
     parent::_prepareForm();
     /** @var Goodahead_Etm_Model_Entity_Type $entityType */
     $entityType = Mage::registry('etm_entity_type');
     $attributeObject = $this->getAttributeObject();
     /* @var $form Varien_Data_Form */
     $form = $this->getForm();
     /* @var $fieldset Varien_Data_Form_Element_Fieldset */
     $fieldset = $form->getElement('base_fieldset');
     $frontendInputElm = $form->getElement('frontend_input');
     $additionalTypes = array(array('value' => 'price', 'label' => Mage::helper('catalog')->__('Price')), array('value' => 'image', 'label' => Mage::helper('catalog')->__('Media Image')));
     if ($attributeObject->getFrontendInput() == 'gallery') {
         $additionalTypes[] = array('value' => 'gallery', 'label' => Mage::helper('catalog')->__('Gallery'));
     }
     $response = new Varien_Object();
     $response->setTypes(array());
     Mage::dispatchEvent('goodahead_etm_entity_attribute_types', array('response' => $response));
     Mage::dispatchEvent(sprintf('goodahead_etm_%s_entity_attribute_types', $entityType->getEntityTypeCode()), array('response' => $response));
     $_disabledTypes = array();
     $_hiddenFields = array();
     foreach ($response->getTypes() as $type) {
         $additionalTypes[] = $type;
         if (isset($type['hide_fields'])) {
             $_hiddenFields[$type['value']] = $type['hide_fields'];
         }
         if (isset($type['disabled_types'])) {
             $_disabledTypes[$type['value']] = $type['disabled_types'];
         }
     }
     Mage::register('attribute_type_hidden_fields', $_hiddenFields);
     Mage::register('attribute_type_disabled_types', $_disabledTypes);
     $frontendInputValues = array_merge($frontendInputElm->getValues(), $additionalTypes);
     $frontendInputElm->setValues($frontendInputValues);
     $scopes = array(Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE => Mage::helper('catalog')->__('Store View'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE => Mage::helper('catalog')->__('Website'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL => Mage::helper('catalog')->__('Global'));
     $fieldset->addField('is_global', 'select', array('name' => 'is_global', 'label' => Mage::helper('catalog')->__('Scope'), 'title' => Mage::helper('catalog')->__('Scope'), 'note' => Mage::helper('catalog')->__('Declare attribute value saving scope'), 'values' => $scopes), 'attribute_code');
     $fieldset->addField('sort_order', 'text', array('name' => 'sort_order', 'label' => Mage::helper('core')->__('Sort Order'), 'title' => Mage::helper('core')->__('Sort Order')));
     Mage::dispatchEvent('goodahead_etm_entity_attribute_edit_prepare_form', array('form' => $form, 'attribute' => $attributeObject));
     return $this;
 }
Beispiel #4
0
 /**
  * Adding product form elements for editing attribute
  *
  * @access protected
  * @return Lionleap_Temples_Block_Adminhtml_Temple_Attribute_Edit_Tab_Main
  * @author Ultimate Module Creator
  */
 protected function _prepareForm()
 {
     parent::_prepareForm();
     $attributeObject = $this->getAttributeObject();
     $form = $this->getForm();
     $fieldset = $form->getElement('base_fieldset');
     $frontendInputElm = $form->getElement('frontend_input');
     $additionalTypes = array(array('value' => 'image', 'label' => Mage::helper('lionleap_temples')->__('Image')), array('value' => 'file', 'label' => Mage::helper('lionleap_temples')->__('File')));
     $response = new Varien_Object();
     $response->setTypes(array());
     Mage::dispatchEvent('adminhtml_temple_attribute_types', array('response' => $response));
     $_disabledTypes = array();
     $_hiddenFields = array();
     foreach ($response->getTypes() as $type) {
         $additionalTypes[] = $type;
         if (isset($type['hide_fields'])) {
             $_hiddenFields[$type['value']] = $type['hide_fields'];
         }
         if (isset($type['disabled_types'])) {
             $_disabledTypes[$type['value']] = $type['disabled_types'];
         }
     }
     Mage::register('attribute_type_hidden_fields', $_hiddenFields);
     Mage::register('attribute_type_disabled_types', $_disabledTypes);
     $frontendInputValues = array_merge($frontendInputElm->getValues(), $additionalTypes);
     $frontendInputElm->setValues($frontendInputValues);
     $yesnoSource = Mage::getModel('adminhtml/system_config_source_yesno')->toOptionArray();
     $scopes = array(Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE => Mage::helper('lionleap_temples')->__('Store View'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE => Mage::helper('lionleap_temples')->__('Website'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL => Mage::helper('lionleap_temples')->__('Global'));
     $fieldset->addField('is_global', 'select', array('name' => 'is_global', 'label' => Mage::helper('lionleap_temples')->__('Scope'), 'title' => Mage::helper('lionleap_temples')->__('Scope'), 'note' => Mage::helper('lionleap_temples')->__('Declare attribute value saving scope'), 'values' => $scopes), 'attribute_code');
     $fieldset->addField('position', 'text', array('name' => 'position', 'label' => Mage::helper('lionleap_temples')->__('Position'), 'title' => Mage::helper('lionleap_temples')->__('Position'), 'note' => Mage::helper('lionleap_temples')->__('Position in the admin form')), 'is_global');
     $fieldset->addField('note', 'textarea', array('name' => 'note', 'label' => Mage::helper('lionleap_temples')->__('Note'), 'title' => Mage::helper('lionleap_temples')->__('Note'), 'note' => Mage::helper('lionleap_temples')->__('Text to appear below the input.')), 'position');
     $fieldset->removeField('is_unique');
     // frontend properties fieldset
     $fieldset = $form->addFieldset('front_fieldset', array('legend' => Mage::helper('lionleap_temples')->__('Frontend Properties')));
     $fieldset->addField('is_wysiwyg_enabled', 'select', array('name' => 'is_wysiwyg_enabled', 'label' => Mage::helper('lionleap_temples')->__('Enable WYSIWYG'), 'title' => Mage::helper('lionleap_temples')->__('Enable WYSIWYG'), 'values' => $yesnoSource));
     Mage::dispatchEvent('lionleap_temples_adminhtml_temple_attribute_edit_prepare_form', array('form' => $form, 'attribute' => $attributeObject));
     return $this;
 }
Beispiel #5
0
 /**
  * Adding product form elements for editing attribute
  *
  * @return Mage_Adminhtml_Block_Catalog_Product_Attribute_Edit_Tab_Main
  */
 protected function _prepareForm()
 {
     parent::_prepareForm();
     $attributeObject = $this->getAttributeObject();
     /* @var $form Varien_Data_Form */
     $form = $this->getForm();
     /* @var $fieldset Varien_Data_Form_Element_Fieldset */
     $fieldset = $form->getElement('base_fieldset');
     $frontendInputElm = $form->getElement('frontend_input');
     $additionalTypes = array(array('value' => 'price', 'label' => Mage::helper('catalog')->__('Price')), array('value' => 'media_image', 'label' => Mage::helper('catalog')->__('Media Image')));
     if ($attributeObject->getFrontendInput() == 'gallery') {
         $additionalTypes[] = array('value' => 'gallery', 'label' => Mage::helper('catalog')->__('Gallery'));
     }
     $response = new Varien_Object();
     $response->setTypes(array());
     Mage::dispatchEvent('adminhtml_product_attribute_types', array('response' => $response));
     $_disabledTypes = array();
     $_hiddenFields = array();
     foreach ($response->getTypes() as $type) {
         $additionalTypes[] = $type;
         if (isset($type['hide_fields'])) {
             $_hiddenFields[$type['value']] = $type['hide_fields'];
         }
         if (isset($type['disabled_types'])) {
             $_disabledTypes[$type['value']] = $type['disabled_types'];
         }
     }
     Mage::register('attribute_type_hidden_fields', $_hiddenFields);
     Mage::register('attribute_type_disabled_types', $_disabledTypes);
     $frontendInputValues = array_merge($frontendInputElm->getValues(), $additionalTypes);
     $frontendInputElm->setValues($frontendInputValues);
     $yesnoSource = Mage::getModel('adminhtml/system_config_source_yesno')->toOptionArray();
     $scopes = array(Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE => Mage::helper('catalog')->__('Store View'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_WEBSITE => Mage::helper('catalog')->__('Website'), Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL => Mage::helper('catalog')->__('Global'));
     if ($attributeObject->getAttributeCode() == 'status' || $attributeObject->getAttributeCode() == 'tax_class_id') {
         unset($scopes[Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE]);
     }
     $fieldset->addField('is_global', 'select', array('name' => 'is_global', 'label' => Mage::helper('catalog')->__('Scope'), 'title' => Mage::helper('catalog')->__('Scope'), 'note' => Mage::helper('catalog')->__('Declare attribute value saving scope'), 'values' => $scopes), 'attribute_code');
     $fieldset->addField('apply_to', 'apply', array('name' => 'apply_to[]', 'label' => Mage::helper('catalog')->__('Apply To'), 'values' => Mage_Catalog_Model_Product_Type::getOptions(), 'mode_labels' => array('all' => Mage::helper('catalog')->__('All Product Types'), 'custom' => Mage::helper('catalog')->__('Selected Product Types')), 'required' => true), 'frontend_class');
     $fieldset->addField('is_configurable', 'select', array('name' => 'is_configurable', 'label' => Mage::helper('catalog')->__('Use To Create Configurable Product'), 'values' => $yesnoSource), 'apply_to');
     // frontend properties fieldset
     $fieldset = $form->addFieldset('front_fieldset', array('legend' => Mage::helper('catalog')->__('Frontend Properties')));
     $fieldset->addField('is_searchable', 'select', array('name' => 'is_searchable', 'label' => Mage::helper('catalog')->__('Use in Quick Search'), 'title' => Mage::helper('catalog')->__('Use in Quick Search'), 'values' => $yesnoSource));
     $fieldset->addField('is_visible_in_advanced_search', 'select', array('name' => 'is_visible_in_advanced_search', 'label' => Mage::helper('catalog')->__('Use in Advanced Search'), 'title' => Mage::helper('catalog')->__('Use in Advanced Search'), 'values' => $yesnoSource));
     $fieldset->addField('is_comparable', 'select', array('name' => 'is_comparable', 'label' => Mage::helper('catalog')->__('Comparable on Front-end'), 'title' => Mage::helper('catalog')->__('Comparable on Front-end'), 'values' => $yesnoSource));
     $fieldset->addField('is_filterable', 'select', array('name' => 'is_filterable', 'label' => Mage::helper('catalog')->__("Use In Layered Navigation"), 'title' => Mage::helper('catalog')->__('Can be used only with catalog input type Dropdown, Multiple Select and Price'), 'note' => Mage::helper('catalog')->__('Can be used only with catalog input type Dropdown, Multiple Select and Price'), 'values' => array(array('value' => '0', 'label' => Mage::helper('catalog')->__('No')), array('value' => '1', 'label' => Mage::helper('catalog')->__('Filterable (with results)')), array('value' => '2', 'label' => Mage::helper('catalog')->__('Filterable (no results)')))));
     $fieldset->addField('is_filterable_in_search', 'select', array('name' => 'is_filterable_in_search', 'label' => Mage::helper('catalog')->__("Use In Search Results Layered Navigation"), 'title' => Mage::helper('catalog')->__('Can be used only with catalog input type Dropdown, Multiple Select and Price'), 'note' => Mage::helper('catalog')->__('Can be used only with catalog input type Dropdown, Multiple Select and Price'), 'values' => $yesnoSource));
     $fieldset->addField('is_used_for_promo_rules', 'select', array('name' => 'is_used_for_promo_rules', 'label' => Mage::helper('catalog')->__('Use for Promo Rule Conditions'), 'title' => Mage::helper('catalog')->__('Use for Promo Rule Conditions'), 'values' => $yesnoSource));
     $fieldset->addField('position', 'text', array('name' => 'position', 'label' => Mage::helper('catalog')->__('Position'), 'title' => Mage::helper('catalog')->__('Position in Layered Navigation'), 'note' => Mage::helper('catalog')->__('Position of attribute in layered navigation block'), 'class' => 'validate-digits'));
     $fieldset->addField('is_wysiwyg_enabled', 'select', array('name' => 'is_wysiwyg_enabled', 'label' => Mage::helper('catalog')->__('Enable WYSIWYG'), 'title' => Mage::helper('catalog')->__('Enable WYSIWYG'), 'values' => $yesnoSource));
     $htmlAllowed = $fieldset->addField('is_html_allowed_on_front', 'select', array('name' => 'is_html_allowed_on_front', 'label' => Mage::helper('catalog')->__('Allow HTML Tags on Frontend'), 'title' => Mage::helper('catalog')->__('Allow HTML Tags on Frontend'), 'values' => $yesnoSource));
     if (!$attributeObject->getId() || $attributeObject->getIsWysiwygEnabled()) {
         $attributeObject->setIsHtmlAllowedOnFront(1);
     }
     $fieldset->addField('is_visible_on_front', 'select', array('name' => 'is_visible_on_front', 'label' => Mage::helper('catalog')->__('Visible on Product View Page on Front-end'), 'title' => Mage::helper('catalog')->__('Visible on Product View Page on Front-end'), 'values' => $yesnoSource));
     $fieldset->addField('used_in_product_listing', 'select', array('name' => 'used_in_product_listing', 'label' => Mage::helper('catalog')->__('Used in Product Listing'), 'title' => Mage::helper('catalog')->__('Used in Product Listing'), 'note' => Mage::helper('catalog')->__('Depends on design theme'), 'values' => $yesnoSource));
     $fieldset->addField('used_for_sort_by', 'select', array('name' => 'used_for_sort_by', 'label' => Mage::helper('catalog')->__('Used for Sorting in Product Listing'), 'title' => Mage::helper('catalog')->__('Used for Sorting in Product Listing'), 'note' => Mage::helper('catalog')->__('Depends on design theme'), 'values' => $yesnoSource));
     $form->getElement('apply_to')->setSize(5);
     if ($applyTo = $attributeObject->getApplyTo()) {
         $applyTo = is_array($applyTo) ? $applyTo : explode(',', $applyTo);
         $form->getElement('apply_to')->setValue($applyTo);
     } else {
         $form->getElement('apply_to')->addClass('no-display ignore-validate');
     }
     // define field dependencies
     $this->setChild('form_after', $this->getLayout()->createBlock('adminhtml/widget_form_element_dependence')->addFieldMap("is_wysiwyg_enabled", 'wysiwyg_enabled')->addFieldMap("is_html_allowed_on_front", 'html_allowed_on_front')->addFieldMap("frontend_input", 'frontend_input_type')->addFieldDependence('wysiwyg_enabled', 'frontend_input_type', 'textarea')->addFieldDependence('html_allowed_on_front', 'wysiwyg_enabled', '0'));
     Mage::dispatchEvent('adminhtml_catalog_product_attribute_edit_prepare_form', array('form' => $form, 'attribute' => $attributeObject));
     return $this;
 }
Beispiel #6
0
 /**
  * Adding customer form elements for edit form
  *
  * @return Enterprise_Rma_Block_Adminhtml_Rma_Item_Attribute_Edit_Tab_Main
  */
 protected function _prepareForm()
 {
     parent::_prepareForm();
     $attribute = $this->getAttributeObject();
     $form = $this->getForm();
     $fieldset = $form->getElement('base_fieldset');
     /* @var $helper Enterprise_Rma_Helper_Eav */
     $helper = Mage::helper('enterprise_rma/eav');
     $fieldset->removeField('frontend_class');
     $fieldset->removeField('is_unique');
     // update Input Types
     $element = $form->getElement('frontend_input');
     $element->setValues($helper->getFrontendInputOptions());
     $element->setLabel(Mage::helper('enterprise_rma')->__('Input Type'));
     $element->setRequired(true);
     // add limitation to attribute code
     // customer attribute code can have prefix "rma_item_" and its length must be max length minus prefix length
     $element = $form->getElement('attribute_code');
     $element->setNote(Mage::helper('eav')->__('For internal use. Must be unique with no spaces. Maximum length of attribute code must be less then %s symbols', Mage_Eav_Model_Entity_Attribute::ATTRIBUTE_CODE_MAX_LENGTH));
     $fieldset->addField('multiline_count', 'text', array('name' => 'multiline_count', 'label' => Mage::helper('enterprise_rma')->__('Lines Count'), 'title' => Mage::helper('enterprise_rma')->__('Lines Count'), 'required' => true, 'class' => 'validate-digits-range digits-range-2-20', 'note' => Mage::helper('enterprise_rma')->__('Valid range 2-20')), 'frontend_input');
     $fieldset->addField('input_validation', 'select', array('name' => 'input_validation', 'label' => Mage::helper('enterprise_rma')->__('Input Validation'), 'title' => Mage::helper('enterprise_rma')->__('Input Validation'), 'values' => array('' => Mage::helper('enterprise_rma')->__('None'))), 'default_value_textarea');
     $fieldset->addField('min_text_length', 'text', array('name' => 'min_text_length', 'label' => Mage::helper('enterprise_rma')->__('Minimum Text Length'), 'title' => Mage::helper('enterprise_rma')->__('Minimum Text Length'), 'class' => 'validate-digits'), 'input_validation');
     $fieldset->addField('max_text_length', 'text', array('name' => 'max_text_length', 'label' => Mage::helper('enterprise_rma')->__('Maximum Text Length'), 'title' => Mage::helper('enterprise_rma')->__('Maximum Text Length'), 'class' => 'validate-digits'), 'min_text_length');
     $fieldset->addField('max_file_size', 'text', array('name' => 'max_file_size', 'label' => Mage::helper('enterprise_rma')->__('Maximum File Size (bytes)'), 'title' => Mage::helper('enterprise_rma')->__('Maximum File Size (bytes)'), 'class' => 'validate-digits'), 'max_text_length');
     $fieldset->addField('file_extensions', 'text', array('name' => 'file_extensions', 'label' => Mage::helper('enterprise_rma')->__('File Extensions'), 'title' => Mage::helper('enterprise_rma')->__('File Extensions'), 'note' => Mage::helper('enterprise_rma')->__('Comma separated')), 'max_file_size');
     $fieldset->addField('max_image_width', 'text', array('name' => 'max_image_width', 'label' => Mage::helper('enterprise_rma')->__('Maximum Image Width (px)'), 'title' => Mage::helper('enterprise_rma')->__('Maximum Image Width (px)'), 'class' => 'validate-digits'), 'file_extensions');
     $fieldset->addField('max_image_heght', 'text', array('name' => 'max_image_heght', 'label' => Mage::helper('enterprise_rma')->__('Maximum Image Height (px)'), 'title' => Mage::helper('enterprise_rma')->__('Maximum Image Height (px)'), 'class' => 'validate-digits'), 'max_image_width');
     $fieldset->addField('input_filter', 'select', array('name' => 'input_filter', 'label' => Mage::helper('enterprise_rma')->__('Input/Output Filter'), 'title' => Mage::helper('enterprise_rma')->__('Input/Output Filter'), 'values' => array('' => Mage::helper('enterprise_rma')->__('None'))));
     $yesnoSource = Mage::getModel('adminhtml/system_config_source_yesno')->toOptionArray();
     $fieldset = $form->addFieldset('front_fieldset', array('legend' => Mage::helper('enterprise_rma')->__('Frontend Properties')));
     $fieldset->addField('is_visible', 'select', array('name' => 'is_visible', 'label' => Mage::helper('enterprise_rma')->__('Show on Frontend'), 'title' => Mage::helper('enterprise_rma')->__('Show on Frontend'), 'values' => $yesnoSource));
     $fieldset->addField('sort_order', 'text', array('name' => 'sort_order', 'label' => Mage::helper('enterprise_rma')->__('Sort Order'), 'title' => Mage::helper('enterprise_rma')->__('Sort Order'), 'required' => true, 'class' => 'validate-digits'));
     $fieldset->addField('used_in_forms', 'multiselect', array('name' => 'used_in_forms', 'label' => Mage::helper('enterprise_rma')->__('Forms to Use In'), 'title' => Mage::helper('enterprise_rma')->__('Forms to Use In'), 'values' => $helper->getAttributeFormOptions(), 'value' => $attribute->getUsedInForms(), 'can_be_empty' => true))->setSize(5);
     if ($attribute->getId()) {
         $elements = array();
         if ($attribute->getIsSystem()) {
             $elements = array('sort_order', 'is_visible', 'is_required');
         }
         if (!$attribute->getIsUserDefined() && !$attribute->getIsSystem()) {
             $elements = array('sort_order');
         }
         foreach ($elements as $elementId) {
             $form->getElement($elementId)->setDisabled(true);
         }
         $inputTypeProp = $helper->getAttributeInputTypes($attribute->getFrontendInput());
         // input_filter
         if ($inputTypeProp['filter_types']) {
             $filterTypes = $helper->getAttributeFilterTypes();
             $values = $form->getElement('input_filter')->getValues();
             foreach ($inputTypeProp['filter_types'] as $filterTypeCode) {
                 $values[$filterTypeCode] = $filterTypes[$filterTypeCode];
             }
             $form->getElement('input_filter')->setValues($values);
         }
         // input_validation getAttributeValidateFilters
         if ($inputTypeProp['validate_filters']) {
             $filterTypes = $helper->getAttributeValidateFilters();
             $values = $form->getElement('input_validation')->getValues();
             foreach ($inputTypeProp['validate_filters'] as $filterTypeCode) {
                 $values[$filterTypeCode] = $filterTypes[$filterTypeCode];
             }
             $form->getElement('input_validation')->setValues($values);
         }
     }
     // apply scopes
     foreach ($helper->getAttributeElementScopes() as $elementId => $scope) {
         $element = $form->getElement($elementId);
         if ($element) {
             $element->setScope($scope);
             if ($this->getAttributeObject()->getWebsite()->getId()) {
                 $element->setName('scope_' . $element->getName());
             }
         }
     }
     $this->getForm()->setDataObject($this->getAttributeObject());
     return $this;
 }
Beispiel #7
0
 /**
  * Adding customer address attribute form elements for edit form
  *
  * @return Enterprise_Customer_Block_Adminhtml_Customer_Address_Attribute_Edit_Tab_General
  */
 protected function _prepareForm()
 {
     parent::_prepareForm();
     $attribute = $this->getAttributeObject();
     $form = $this->getForm();
     $fieldset = $form->getElement('base_fieldset');
     /* @var $helper Enterprise_Customer_Helper_Data */
     $helper = Mage::helper('enterprise_customer');
     $fieldset->removeField('frontend_class');
     $fieldset->removeField('is_unique');
     // update Input Types
     $values = $helper->getFrontendInputOptions();
     $element = $form->getElement('frontend_input');
     $element->setValues($values);
     $element->setLabel(Mage::helper('enterprise_customer')->__('Input Type'));
     $element->setRequired(true);
     $fieldset->addField('multiline_count', 'text', array('name' => 'multiline_count', 'label' => Mage::helper('enterprise_customer')->__('Lines Count'), 'title' => Mage::helper('enterprise_customer')->__('Lines Count'), 'required' => true, 'class' => 'validate-digits-range digits-range-2-20', 'note' => Mage::helper('enterprise_customer')->__('Valid range 2-20')), 'frontend_input');
     $fieldset->addField('input_validation', 'select', array('name' => 'input_validation', 'label' => Mage::helper('enterprise_customer')->__('Input Validation'), 'title' => Mage::helper('enterprise_customer')->__('Input Validation'), 'values' => array('' => Mage::helper('enterprise_customer')->__('None'))), 'default_value_textarea');
     $fieldset->addField('min_text_length', 'text', array('name' => 'min_text_length', 'label' => Mage::helper('enterprise_customer')->__('Minimum Text Length'), 'title' => Mage::helper('enterprise_customer')->__('Minimum Text Length'), 'class' => 'validate-digits'), 'input_validation');
     $fieldset->addField('max_text_length', 'text', array('name' => 'max_text_length', 'label' => Mage::helper('enterprise_customer')->__('Maximum Text Length'), 'title' => Mage::helper('enterprise_customer')->__('Maximum Text Length'), 'class' => 'validate-digits'), 'min_text_length');
     $fieldset->addField('max_file_size', 'text', array('name' => 'max_file_size', 'label' => Mage::helper('enterprise_customer')->__('Maximum File Size (bytes)'), 'title' => Mage::helper('enterprise_customer')->__('Maximum File Size (bytes)'), 'class' => 'validate-digits'), 'max_text_length');
     $fieldset->addField('file_extensions', 'text', array('name' => 'file_extensions', 'label' => Mage::helper('enterprise_customer')->__('File Extensions'), 'title' => Mage::helper('enterprise_customer')->__('File Extensions'), 'note' => Mage::helper('enterprise_customer')->__('Comma separated')), 'max_file_size');
     $fieldset->addField('max_image_width', 'text', array('name' => 'max_image_width', 'label' => Mage::helper('enterprise_customer')->__('Maximum Image Width (px)'), 'title' => Mage::helper('enterprise_customer')->__('Maximum Image Width (px)'), 'class' => 'validate-digits'), 'max_file_size');
     $fieldset->addField('max_image_heght', 'text', array('name' => 'max_image_heght', 'label' => Mage::helper('enterprise_customer')->__('Maximum Image Height (px)'), 'title' => Mage::helper('enterprise_customer')->__('Maximum Image Height (px)'), 'class' => 'validate-digits'), 'max_image_width');
     $fieldset->addField('input_filter', 'select', array('name' => 'input_filter', 'label' => Mage::helper('enterprise_customer')->__('Input/Output Filter'), 'title' => Mage::helper('enterprise_customer')->__('Input/Output Filter'), 'values' => array('' => Mage::helper('enterprise_customer')->__('None'))));
     $fieldset->addField('date_range_min', 'date', array('name' => 'date_range_min', 'label' => Mage::helper('enterprise_customer')->__('Minimal value'), 'title' => Mage::helper('enterprise_customer')->__('Minimal value'), 'image' => $this->getSkinUrl('images/grid-cal.gif'), 'format' => $helper->getDateFormat()), 'default_value_date');
     $fieldset->addField('date_range_max', 'date', array('name' => 'date_range_max', 'label' => Mage::helper('enterprise_customer')->__('Maximum value'), 'title' => Mage::helper('enterprise_customer')->__('Maximum value'), 'image' => $this->getSkinUrl('images/grid-cal.gif'), 'format' => $helper->getDateFormat()), 'date_range_min');
     $yesnoSource = Mage::getModel('adminhtml/system_config_source_yesno')->toOptionArray();
     $fieldset = $form->addFieldset('front_fieldset', array('legend' => Mage::helper('enterprise_customer')->__('Frontend Properties')));
     $fieldset->addField('is_visible', 'select', array('name' => 'is_visible', 'label' => Mage::helper('enterprise_customer')->__('Show on Frontend'), 'title' => Mage::helper('enterprise_customer')->__('Show on Frontend'), 'values' => $yesnoSource));
     $fieldset->addField('sort_order', 'text', array('name' => 'sort_order', 'label' => Mage::helper('enterprise_customer')->__('Sort Order'), 'title' => Mage::helper('enterprise_customer')->__('Sort Order'), 'required' => true, 'class' => 'validate-digits'));
     $fieldset->addField('used_in_forms', 'multiselect', array('name' => 'used_in_forms', 'label' => Mage::helper('enterprise_customer')->__('Forms to Use In'), 'title' => Mage::helper('enterprise_customer')->__('Forms to Use In'), 'values' => $helper->getCustomerAddressAttributeFormOptions(), 'value' => $attribute->getUsedInForms(), 'can_be_empty' => true))->setSize(5);
     if ($attribute->getId()) {
         $elements = array();
         if ($attribute->getIsSystem()) {
             $elements = array('sort_order', 'is_visible', 'is_required', 'used_in_forms');
         }
         if (!$attribute->getIsUserDefined() && !$attribute->getIsSystem()) {
             $elements = array('sort_order', 'used_in_forms');
         }
         foreach ($elements as $elementId) {
             $form->getElement($elementId)->setDisabled(true);
         }
         $inputTypeProp = $helper->getAttributeInputTypes($attribute->getFrontendInput());
         // input_filter
         if ($inputTypeProp['filter_types']) {
             $filterTypes = $helper->getAttributeFilterTypes();
             $values = $form->getElement('input_filter')->getValues();
             foreach ($inputTypeProp['filter_types'] as $filterTypeCode) {
                 $values[$filterTypeCode] = $filterTypes[$filterTypeCode];
             }
             $form->getElement('input_filter')->setValues($values);
         }
         // input_validation getAttributeValidateFilters
         if ($inputTypeProp['validate_filters']) {
             $filterTypes = $helper->getAttributeValidateFilters();
             $values = $form->getElement('input_validation')->getValues();
             foreach ($inputTypeProp['validate_filters'] as $filterTypeCode) {
                 $values[$filterTypeCode] = $filterTypes[$filterTypeCode];
             }
             $form->getElement('input_validation')->setValues($values);
         }
     }
     // apply scopes
     foreach ($helper->getAttributeElementScopes() as $elementId => $scope) {
         $element = $form->getElement($elementId);
         if ($element->getDisabled()) {
             continue;
         }
         $element->setScope($scope);
         if ($this->getAttributeObject()->getWebsite()->getId()) {
             $element->setName('scope_' . $element->getName());
         }
     }
     $this->getForm()->setDataObject($this->getAttributeObject());
     Mage::dispatchEvent('enterprise_customer_address_attribute_edit_tab_general_prepare_form', array('form' => $form, 'attribute' => $attribute));
     return $this;
 }