Example #1
0
function GetPropertyValues($resource, $propname, $propvalue)
{
    $SYSLOG = SYSLOG::getInstance();
    $result = new XajaxResponse();
    $values = $SYSLOG->GetResourcePropertyValues($resource, $propname);
    if (empty($values) || count($values) > 19) {
        $result->assign('propertyvaluedata', 'innerHTML', '<input type="text" size="20" name="propertyvalue" id="propertyvalue"' . (strlen($propvalue) ? ' value="' . $propvalue . '"' : '') . '>');
    } else {
        $options = '<SELECT size="1" name="propertyvalue" id="propertyvalue">';
        $options .= '<OPTION value="">' . trans('- all -') . '</OPTION>';
        foreach ($values as $value) {
            $data = array('resource' => $resource, 'name' => $propname, 'value' => $value);
            $SYSLOG->DecodeMessageData($data);
            $options .= '<OPTION value="' . $value . '"' . (strlen($propvalue) && $propvalue == $value ? ' selected' : '') . '>' . (strlen($data['value']) > 50 ? substr($data['value'], 0, 50) . '...' : $data['value']) . '</OPTION>';
        }
        $options .= '</SELECT>';
        $result->assign('propertyvaluedata', 'innerHTML', $options);
    }
    return $result;
}