LabelToDisplay)
* @param array $SearchValues Values set for this search
* @param int $TypeMask Bitmask of MetadataSchema::MDFTYPE_ values
* specifying which fields to display
*/
function DisplayLimits($Fields, $SearchParameters, $TypeMask)
{
$NumberOfListItems = 6;
$NumberOfListItemsForFlags = 2;
print "
";
foreach ($Fields as $FieldId => $DisplayName)
{
$Field = new MetadataField($FieldId);
if ($Field->Type() & $TypeMask)
{
$CurrentValues = $SearchParameters->GetSearchStringsForField($FieldId);
$CurrentValues = ConvertValueNamesToIds($Field, $CurrentValues);
$PossibleValues = DeterminePossibleValues($Field);
$DisabledOptions = DetermineDisabledValues($Field, $PossibleValues);
$AllowMultiple =
($Field->SearchGroupLogic() == SearchEngine::LOGIC_OR) ||
($Field->AllowMultiple());
print "
".htmlspecialchars($DisplayName)."
";
$OptionList = new HtmlOptionList(
"F_SearchLimit".$FieldId."[]",
$PossibleValues,
$CurrentValues );
$OptionList->MultipleAllowed( $AllowMultiple );
$OptionList->DisabledOptions( $DisabledOptions );
$OptionList->Size(
($Field->Type() == MetadataSchema::MDFTYPE_FLAG) ?
$NumberOfListItemsForFlags :
$NumberOfListItems );
$OptionList->PrintHtml();
print "
";
}
}
print "
";
}
?>