Index: branches/unlabeled/unlabeled-1.79.4/core/kernel/db/db_event_handler.php =================================================================== diff -u -r6914 -r7015 --- branches/unlabeled/unlabeled-1.79.4/core/kernel/db/db_event_handler.php (.../db_event_handler.php) (revision 6914) +++ branches/unlabeled/unlabeled-1.79.4/core/kernel/db/db_event_handler.php (.../db_event_handler.php) (revision 7015) @@ -726,7 +726,7 @@ if (isset($custom_filters[$grid_name])) { foreach ($custom_filters[$grid_name] as $field_name => $field_options) { list ($filter_type, $field_options) = each($field_options); - if ($field_options['value']) { + if (isset($field_options['value']) && $field_options['value']) { $filter_type = ($field_options['sql_filter_type'] == 'having') ? HAVING_FILTER : WHERE_FILTER; $filter_value = str_replace(EDIT_MARK, $edit_mark, $field_options['value']); $object->addFilter($field_name, $filter_value, $filter_type, FLT_CUSTOM); Index: branches/unlabeled/unlabeled-1.31.2/core/units/categories/categories_tag_processor.php =================================================================== diff -u -r7014 -r7015 --- branches/unlabeled/unlabeled-1.31.2/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 7014) +++ branches/unlabeled/unlabeled-1.31.2/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 7015) @@ -30,6 +30,11 @@ function ItemIcon($params) { + // only for categories, not structure + if ($this->Prefix != 'c') { + return parent::ItemIcon($params); + } + $object =& $this->Application->recallObject($this->getPrefixSpecial(), $this->Prefix, $params); $status = $object->GetDBField('Status'); if($status == 1) Index: branches/unlabeled/unlabeled-1.4.2/core/units/general/helpers/search_helper.php =================================================================== diff -u -r6907 -r7015 --- branches/unlabeled/unlabeled-1.4.2/core/units/general/helpers/search_helper.php (.../search_helper.php) (revision 6907) +++ branches/unlabeled/unlabeled-1.4.2/core/units/general/helpers/search_helper.php (.../search_helper.php) (revision 7015) @@ -306,7 +306,7 @@ if ($submit_filters) { foreach ($submit_filters as $field_name => $field_options) { list ($filter_type, $field_value) = each($field_options); - $is_empty = is_array($field_value) ? !implode('', $field_value) : !$field_value; + $is_empty = strlen(is_array($field_value) ? implode('', $field_value) : $field_value) == 0; if ($is_empty) { if (isset($custom_filter[$field_name])) { // use isset, because non-existing key will cause "php notice"! @@ -364,7 +364,7 @@ */ function getRangeValue($value) { - return $value && is_numeric($value) ? $this->Conn->qstr($value) : false; + return strlen($value) && is_numeric($value) ? $this->Conn->qstr($value) : false; } function getCustomFilterSearchClause(&$object, $field_name, $filter_type, $field_options) @@ -437,7 +437,7 @@ case 'equals': case 'options': - $field_value = $field_options['submit_value'] ? $this->Conn->qstr($field_options['submit_value']) : false; + $field_value = strlen($field_options['submit_value']) ? $this->Conn->qstr($field_options['submit_value']) : false; if ($field_value) { $filter_value = $table_name.'`'.$field_name.'` = '.$field_value; } @@ -467,7 +467,7 @@ */ function processRangeField(&$object, $search_field, $value, $type) { - if (!$value[$type]) { + if (strlen($value[$type]) > 0) { return false; }