At backend, the fields of Category form are render by class Mage_Adminhtml_Block_Catalog_Category_Tab_Attributes
.
You need to rewrite that block class because of prepareForm()
are responsible for render the fields.
At this function using removeField()
,we can remove brand field as per as ,your business
<?php
class Devamitbera_Customcategory_Block_Adminhtml_Catalog_Category_Tab_Attributes extends Mage_Adminhtml_Block_Catalog_Category_Tab_Attributes
protected $_MobileCat=15;
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)');
}
}
/* Remove at */
if ($this->getCategory()->getParentId() == $_MobileCat) {
$fieldset->removeField('brand');
}
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 Mage_Adminhtml_Block_Catalog_Form::_prepareForm();
}
?>