}
// ################## Start construct_custom_fields ##################
-function construct_custom_fields($bug = array(), $ignore21mask = false, $nodefault = false)
+function construct_custom_fields($bug = array(), $ignore21mask = false, $nodefault = false, $searchMode = false)
{
global $bugsys;
static $fields;
break;
case 'input_checkbox':
- $selected = (($value) ? ' checked="checked"' : '');
+ $selected = ($value ? ' checked="checked"' : '');
eval('$tempfield = "' . $bugsys->template->fetch('bugfield_input_checkbox') . '";');
break;
}
// -------------------------------------------------------------------
- // favoritess
- if (($bugsys->in['favorite'] == 1 OR $bugsys->in['favorite'] == 0) AND $bugsys->userinfo['userid'])
+ // favorites
+ $bugsys->input_clean('favorite', TYPE_INT);
+ if ($bugsys->in['favorite'] != 0 AND $bugsys->userinfo['userid'])
{
$favorites = $db->query("SELECT * FROM " . TABLE_PREFIX . "favorite WHERE userid = " . $bugsys->userinfo['userid']);
while ($favorite = $db->fetch_array($favorites))
{
$ids[] = $favorite['bugid'];
}
- $querybuild['favorites'] = "AND bug.bugid " . ($bugsys->in['favorite'] == 0 ? "NOT IN" : "IN") . " (" . implode(', ', $ids) . ")";
+ $querybuild['favorites'] = "AND bug.bugid " . ($bugsys->in['favorite'] > 0 ? "IN" : "NOT IN") . " (" . implode(', ', $ids) . ")";
}
// -------------------------------------------------------------------
{
if (!empty($bugsys->in["field$field[fieldid]"]) OR ($field['type'] == 'select_single' AND isset($bugsys->in["field$field[fieldid]"])))
{
- if ($field['type'] == 'input_checkbox')
+ if ($field['type'] == 'input_checkbox' AND $bugsys->input_clean("field$field[fieldid]", TYPE_INT) != 0)
{
- $querybuild[] = "AND bugfieldvalue.field$field[fieldid] = " . (($bugsys->in["field$field[fieldid]"] == 1) ? 0 : 1);
+ $querybuild[] = "AND bugfieldvalue.field$field[fieldid] = " . (($bugsys->in["field$field[fieldid]"] > 0) ? 1 : 0);
}
else if ($field['type'] == 'input_text')
{
// -------------------------------------------------------------------
// custom fields
- $fields = construct_custom_fields(null, true);
+ $fields = construct_custom_fields(null, true, false, true);
$i = 0;
foreach ($fields AS $field)
{
<!-- custom field$field[fieldid] -->
<fieldset>
<legend>$field[name] $help[field$field[fieldid]]</legend>
- <div class="field"><input name="<if condition="$show['search']">custom[$field[fieldid]]<else />field$field[fieldid]</if>" type="checkbox" value="1"$selected /></div>
+ <div class="field"><if condition="$searchMode"><select name="<if condition="$show['search']">custom[$field[fieldid]]<else />field$field[fieldid]</if>"><option value="0">{@"Ignore"}</option><option value="1">{@"Yes"}</option><option value="-1">{@"No"}</option></select><else /><input name="<if condition="$show['search']">custom[$field[fieldid]]<else />field$field[fieldid]</if>" type="checkbox" value="1"$selected /></if></div>
</fieldset>
<!-- / custom field$field[fieldid] -->
\ No newline at end of file
<legend>{@"Favorite"}</legend>
<div class="field">
<select name="favorite">
- <option value="-1">{@"Ignore favorite status"}</option>
- <option value="1">{@"Yes, search for favorites only"}</option>
- <option value="0">{@"No, exclude all favorites"}</option>
+ <option value="0">{@"Ignore"}</option>
+ <option value="1">{@"Yes"}</option>
+ <option value="-1">{@"No"}</option>
</select>
</div>
</fieldset>