/** * Create the form * * @return Smile_VirtualCategories_Block_Adminhtml_Catalog_Category_Tab_Product */ protected function _prepareForm() { $form = new Varien_Data_Form(); $form->setHtmlIdPrefix('virtual_'); $this->_prepareCategoryTypeSelector($form)->_prepareVirtualRuleFieldset($form)->_prepareLegacyProductSelector($form); $form->setFieldNameSuffix('general'); $form->addValues($this->getCategory()->getData()); $this->setForm($form); $this->setTemplate('smile/virtualcategories/category/product_select_form.phtml'); return parent::_prepareForm(); }
/** * Prepare form before rendering HTML * * @return Mage_Adminhtml_Block_Catalog_Category_Tab_Attributes */ protected function _prepareForm() { $form = new Varien_Data_Form(); $form->setHtmlIdPrefix('group_mep'); $form->setDataObject($this->getCategory()); $fieldset = $form->addFieldset('fieldset_group_mep', array('legend' => Mage::helper('mep')->__('MEP Mappings'), 'class' => 'fieldset-wide')); /* @var $collection Flagbit_MEP_Model_Mysql4_Attribute_Mapping_Collection */ $collection = Mage::getModel('mep/attribute_mapping')->getCollection()->addFieldToFilter('source_attribute_code', 'category'); foreach ($collection as $mapping) { $fieldset->addField('mapping_' . $mapping->getId(), 'text', array('label' => $mapping->getName(), 'name' => 'mapping_' . $mapping->getId(), 'note' => $this->getHintByType($mapping->getCategoryType()) . ', ' . Mage::helper('mep')->__('Attribute Code: %s', $mapping->getAttributeCode()))); } $form->addValues($this->_getValuesByMappingCollection($collection, $this->getCategory()->getStoreId())); $form->setFieldNameSuffix('mep'); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form before rendering HTML * * @return Mage_Adminhtml_Block_Catalog_Category_Tab_Attributes */ protected function _prepareForm() { $group = $this->getGroup(); $attributes = $this->getAttributes(); $form = new Varien_Data_Form(); $form->setHtmlIdPrefix('group_' . $group->getId()); $form->setDataObject($this->getCategory()); $fieldset = $form->addFieldset('fieldset_group_' . $group->getId(), array('legend' => Mage::helper('catalog')->__($group->getAttributeGroupName()), 'class' => 'fieldset-wide')); if ($this->getAddHiddenFields()) { if (!$this->getCategory()->getId()) { // path if ($this->getRequest()->getParam('parent')) { $fieldset->addField('path', 'hidden', array('name' => 'path', 'value' => $this->getRequest()->getParam('parent'))); } else { $fieldset->addField('path', 'hidden', array('name' => 'path', 'value' => 1)); } } else { $fieldset->addField('id', 'hidden', array('name' => 'id', 'value' => $this->getCategory()->getId())); $fieldset->addField('path', 'hidden', array('name' => 'path', 'value' => $this->getCategory()->getPath())); } } $this->_setFieldset($attributes, $fieldset); foreach ($attributes as $attribute) { $rootId = Mage_Catalog_Model_Category::TREE_ROOT_ID; /* @var $attribute Mage_Eav_Model_Entity_Attribute */ if ($attribute->getAttributeCode() == 'url_key') { if (!$this->getCategory()->getId() && $this->getRequest()->getParam('parent', $rootId) == $rootId || $this->getCategory()->getParentId() == $rootId) { $fieldset->removeField('url_key'); } else { $form->getElement('url_key')->setRenderer($this->getLayout()->createBlock('adminhtml/catalog_form_renderer_attribute_urlkey')); } } } if ($this->getCategory()->getLevel() == 1) { $fieldset->removeField('custom_use_parent_settings'); } else { if ($this->getCategory()->getCustomUseParentSettings()) { foreach ($this->getCategory()->getDesignAttributes() as $attribute) { if ($element = $form->getElement($attribute->getAttributeCode())) { $element->setDisabled(true); } } } if ($element = $form->getElement('custom_use_parent_settings')) { $element->setData('onchange', 'onCustomUseParentChanged(this)'); } } if ($this->getCategory()->hasLockedAttributes()) { foreach ($this->getCategory()->getLockedAttributes() as $attribute) { if ($element = $form->getElement($attribute)) { $element->setReadonly(true, true); } } } if (!$this->getCategory()->getId()) { $this->getCategory()->setIncludeInMenu(1); } $form->addValues($this->getCategory()->getData()); Mage::dispatchEvent('adminhtml_catalog_category_edit_prepare_form', array('form' => $form)); $form->setFieldNameSuffix('general'); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form before rendering HTML * * @return Mage_Adminhtml_Block_Catalog_Category_Tab_Attributes */ protected function _prepareForm() { $group = $this->getGroup(); $attributes = $this->getAttributes(); $form = new Varien_Data_Form(); $form->setHtmlIdPrefix('group_' . $group->getId()); $form->setDataObject($this->getCategory()); $fieldset = $form->addFieldset('fieldset_group_' . $group->getId(), array('legend' => Mage::helper('catalog')->__($group->getAttributeGroupName()), 'class' => 'fieldset-wide')); if ($this->getAddHiddenFields()) { if (!$this->getCategory()->getId()) { // path if ($this->getRequest()->getParam('parent')) { $fieldset->addField('path', 'hidden', array('name' => 'path', 'value' => $this->getRequest()->getParam('parent'))); } else { $fieldset->addField('path', 'hidden', array('name' => 'path', 'value' => 1)); } } else { $fieldset->addField('id', 'hidden', array('name' => 'id', 'value' => $this->getCategory()->getId())); $fieldset->addField('path', 'hidden', array('name' => 'path', 'value' => $this->getCategory()->getPath())); } } $this->_setFieldset($attributes, $fieldset); foreach ($attributes as $attribute) { /* @var $attribute Mage_Eav_Model_Entity_Attribute */ if ($attribute->getAttributeCode() == 'url_key') { if ($this->getCategory()->getLevel() == 1) { $fieldset->removeField('url_key'); $fieldset->addField('url_key', 'hidden', array('name' => 'url_key', 'value' => $this->getCategory()->getUrlKey())); } } } if ($this->getCategory()->hasLockedAttributes()) { foreach ($this->getCategory()->getLockedAttributes() as $attribute) { if ($element = $form->getElement($attribute)) { $element->setReadonly(true, true); } } } $form->addValues($this->getCategory()->getData()); $form->setFieldNameSuffix('general'); $this->setForm($form); return parent::_prepareForm(); }
protected function _prepareForm() { $form = new Varien_Data_Form(); $fieldset = $form->addFieldset('googleoptimizer_fields', array('legend' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Google Optimizer Scripts'))); if ($this->getProduct()->getStoreId() == '0') { Mage::helper('Mage_GoogleOptimizer_Helper_Data')->setStoreId(Mage::app()->getDefaultStoreView()); } else { Mage::helper('Mage_GoogleOptimizer_Helper_Data')->setStoreId($this->getProduct()->getStoreId()); } $disabledScriptsFields = false; $values = array(); if ($this->getGoogleOptimizer() && $this->getGoogleOptimizer()->getData()) { $disabledScriptsFields = true; $values = $this->getGoogleOptimizer()->getData(); $checkedUseDefault = true; if ($this->getGoogleOptimizer()->getStoreId() == $this->getProduct()->getStoreId()) { $checkedUseDefault = false; $disabledScriptsFields = false; $fieldset->addField('code_id', 'hidden', array('name' => 'code_id')); } // show 'use default' checkbox if store different for default and product has scripts for default store if ($this->getProduct()->getStoreId() != '0') { $fieldset->addField('store_flag', 'checkbox', array('name' => 'store_flag', 'value' => '1', 'label' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Use Default Values'), 'class' => 'checkbox', 'required' => false, 'onchange' => 'googleOptimizerScopeAction()'))->setIsChecked($checkedUseDefault); } } $fieldset->addField('conversion_page', 'select', array('name' => 'conversion_page', 'label' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Conversion Page'), 'values' => Mage::getModel('Mage_GoogleOptimizer_Model_Adminhtml_System_Config_Source_Googleoptimizer_Conversionpages')->toOptionArray(), 'class' => 'select googleoptimizer validate-googleoptimizer', 'required' => false, 'onchange' => 'googleOptimizerConversionPageAction(this)')); if ($this->getProduct()->getStoreId() == '0' && !Mage::app()->hasSingleStore()) { $fieldset->addField('conversion_page_url', 'note', array('name' => 'conversion_page_url', 'label' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Conversion Page URL'), 'text' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Please select store view to see the URL.'))); } else { $fieldset->addField('conversion_page_url', 'text', array('name' => 'conversion_page_url', 'label' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Conversion Page URL'), 'class' => 'input-text', 'readonly' => 'readonly', 'required' => false, 'note' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Please copy and paste this value to experiment edit form.'))); } $fieldset->addField('export_controls', 'text', array('name' => 'export_controls')); $fieldset->addField('control_script', 'textarea', array('name' => 'control_script', 'label' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Control Script'), 'class' => 'textarea googleoptimizer validate-googleoptimizer', 'required' => false)); $fieldset->addField('tracking_script', 'textarea', array('name' => 'tracking_script', 'label' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Tracking Script'), 'class' => 'textarea googleoptimizer validate-googleoptimizer', 'required' => false)); $fieldset->addField('conversion_script', 'textarea', array('name' => 'conversion_script', 'label' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Conversion Script'), 'class' => 'textarea googleoptimizer validate-googleoptimizer', 'required' => false)); $attributes = Mage::helper('Mage_GoogleOptimizer_Helper_Data')->getProductAttributes($this->getProduct()); $fieldset->addField('attributes', 'multiselect', array('name' => 'attributes', 'label' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('Attributes'), 'class' => 'googleoptimizer validate-googleoptimizer validate-googleoptimizer-attributes', 'values' => $attributes, 'required' => false, 'onchange' => 'googleOptimizerAttributesCheckAction(this)', 'note' => Mage::helper('Mage_GoogleOptimizer_Helper_Data')->__('The limit is 8 attributes only.'))); if (Mage::helper('Mage_GoogleOptimizer_Helper_Data')->getConversionPagesUrl() && $this->getGoogleOptimizer() && $this->getGoogleOptimizer()->getConversionPage()) { $form->getElement('conversion_page_url')->setValue(Mage::helper('Mage_GoogleOptimizer_Helper_Data')->getConversionPagesUrl()->getData($this->getGoogleOptimizer()->getConversionPage())); } if ($disabledScriptsFields) { foreach ($fieldset->getElements() as $element) { if ($element->getType() == 'textarea' || $element->getType() == 'select') { $element->setDisabled($disabledScriptsFields); } } $form->getElement('export_controls')->setDisabled($disabledScriptsFields); } $fakeEntityAttribute = Mage::getModel('Mage_Catalog_Model_Resource_Eav_Attribute'); foreach ($fieldset->getElements() as $element) { if ($element->getId() != 'store_flag') { $element->setEntityAttribute($fakeEntityAttribute); } } $form->getElement('export_controls')->setRenderer($this->getLayout()->createBlock('Mage_GoogleOptimizer_Block_Adminhtml_Catalog_Form_Renderer_Import')); $form->addValues($values); $form->setFieldNameSuffix('googleoptimizer'); $this->setForm($form); return parent::_prepareForm(); }
protected function _prepareForm() { $product = $this->getProduct(); if (!($setId = $product->getAttributeSetId())) { $setId = $this->getRequest()->getParam('set', null); } if ($setId) { $attributeGroupId = Mage::getConfig()->getNode(Faett_Package_Helper_Data::FAETT_PACKAGE_LINK_GROUP_ID, 'default', 0); $group = Mage::getModel('eav/entity_attribute_group')->load($attributeGroupId); $attributes = $product->getAttributes($group->getId(), true); // do not add groups without attributes foreach ($attributes as $key => $attribute) { if (!$attribute->getIsVisible()) { unset($attributes[$key]); } } // sort the attributes after their position usort($attributes, array($this, '_cmp')); if (count($attributes) == 0) { return; } $form = new Varien_Data_Form(); // initialize product object as form property for using it in elements generation $form->setDataObject(Mage::registry('product')); $fieldset = $form->addFieldset('group_fields' . $group->getId(), array('legend' => Mage::helper('catalog')->__($group->getAttributeGroupName()))); $this->_setFieldset($attributes, $fieldset, array('gallery')); if (!$form->getElement('media_gallery') && Mage::getSingleton('admin/session')->isAllowed('catalog/attributes/attributes')) { $headerBar = $this->getLayout()->createBlock('adminhtml/catalog_product_edit_tab_attributes_create'); $headerBar->getConfig()->setTabId('group_' . $group->getId())->setGroupId($group->getId())->setStoreId($form->getDataObject()->getStoreId())->setAttributeSetId($form->getDataObject()->getAttributeSetId())->setTypeId($form->getDataObject()->getTypeId())->setProductId($form->getDataObject()->getId()); $fieldset->setHeaderBar($headerBar->toHtml()); } $values = Mage::registry('product')->getData(); if (!Mage::registry('product')->getId()) { foreach ($attributes as $attribute) { if (!isset($values[$attribute->getAttributeCode()])) { $values[$attribute->getAttributeCode()] = $attribute->getDefaultValue(); } } } if (Mage::registry('product')->hasLockedAttributes()) { foreach (Mage::registry('product')->getLockedAttributes() as $attribute) { if ($element = $form->getElement($attribute)) { $element->setReadonly(true, true); } } } $form->addValues($values); $form->setFieldNameSuffix('product'); $this->setForm($form); } return parent::_prepareForm(); }