mirror of
https://github.com/Combodo/iTop.git
synced 2026-02-26 21:54:13 +01:00
Customers portal : BrowseBrick : Extra field columns can be hidden in list mode while remaining filterable. (Use case example : Hide a "keywords" attribute to enable filtering on it)
SVN:trunk[4257]
This commit is contained in:
@@ -360,11 +360,12 @@ class BrowseBrickController extends BrickController
|
||||
{
|
||||
$aLevelsProperties[$sCurrentLevelAlias]['fields'] = array();
|
||||
|
||||
foreach ($aLevel['fields'] as $sFieldAttCode)
|
||||
foreach ($aLevel['fields'] as $sFieldAttCode => $aFieldProperties)
|
||||
{
|
||||
$aLevelsProperties[$sCurrentLevelAlias]['fields'][] = array(
|
||||
'code' => $sFieldAttCode,
|
||||
'label' => MetaModel::GetAttributeDef($oSearch->GetClass(), $sFieldAttCode)->GetLabel()
|
||||
'label' => MetaModel::GetAttributeDef($oSearch->GetClass(), $sFieldAttCode)->GetLabel(),
|
||||
'hidden' => $aFieldProperties['hidden']
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -349,12 +349,18 @@ class BrowseBrick extends PortalBrick
|
||||
{
|
||||
if ($oFieldNode->hasAttribute('id') && $oFieldNode->getAttribute('id') !== '')
|
||||
{
|
||||
$aLevel[$sTagName][] = $oFieldNode->getAttribute('id');
|
||||
$aLevel[$sTagName][$oFieldNode->getAttribute('id')] = array('hidden' => false);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new DOMFormatException('BrowseBrick : ' . $sTagName . '/* tag must have an "id" attribute and it must not be empty', null, null, $oFieldNode);
|
||||
}
|
||||
|
||||
$oFieldSubNode = $oFieldNode->GetOptionalElement('hidden');
|
||||
if ($oFieldSubNode !== null)
|
||||
{
|
||||
$aLevel[$sTagName][$oFieldNode->getAttribute('id')]['hidden'] = ($oFieldSubNode->GetText() === 'true') ? true : false;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -195,11 +195,13 @@
|
||||
"width": "auto",
|
||||
"searchable": true,
|
||||
"sortable": false,
|
||||
"visible": !oLevelsProperties[sKey].fields[i].hidden,
|
||||
"title": oLevelsProperties[sKey].fields[i].label,
|
||||
"defaultContent": "",
|
||||
"type": "html",
|
||||
"data": oLevelsProperties[sKey].alias+".fields."+oLevelsProperties[sKey].fields[i].code
|
||||
});
|
||||
console.log(oLevelsProperties[sKey].fields[i].visible);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user