Skip to content

Commit

Permalink
Added default statement selection for advanced search.
Browse files Browse the repository at this point in the history
  • Loading branch information
cheesegrits committed Jul 14, 2015
1 parent 87a3229 commit db64c2b
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 2 deletions.
Expand Up @@ -230,6 +230,8 @@ COM_FABRIK_FIELD_ADVANCED_SEARCH_ALL_MODE_DESC="If set to yes then an additional
COM_FABRIK_FIELD_ADVANCED_SEARCH_ALL_MODE_LABEL="Extended search all"
COM_FABRIK_FIELD_ADVANCED_SEARCH_DESC="If selected a link will appear on your view, which when clicked on will open a popup window allowing for complex filtering on your views data"
COM_FABRIK_FIELD_ADVANCED_SEARCH_LABEL="Advanced search"
COM_FABRIK_FIELD_ADVANCED_SEARCH_DEFAULT_STATEMENT_LABEL="Default statement"
COM_FABRIK_FIELD_ADVANCED_SEARCH_DEFAULT_STATEMENT_DESC="Default advanced search statement (=, <>, etc) to display for new expressions"
COM_FABRIK_FIELD_AJAX_VALIDATIONS_DESC="When the focus is removed from an element, validate it using AJAX."
COM_FABRIK_FIELD_AJAX_VALIDATIONS_LABEL="Ajax validation"
COM_FABRIK_FIELD_ALLOW_ORDERING_DESC="If selected then the element's view heading will be a hyperlink allowing you to order the records in ascending /descending order"
Expand Down
16 changes: 16 additions & 0 deletions administrator/components/com_fabrik/models/forms/list.xml
Expand Up @@ -347,6 +347,22 @@
<option value="1">JYES</option>
</field>

<field name="advanced-filter-default-statement"
type="list"
default="1"
label="COM_FABRIK_FIELD_ADVANCED_SEARCH_DEFAULT_STATEMENT_LABEL"
description="COM_FABRIK_FIELD_ADVANCED_SEARCH_DEFAULT_STATEMENT_DESC"
>
<option value="=">COM_FABRIK_EQUALS</option>
<option value="&lt;&gt;">COM_FABRIK_NOT_EQUALS</option>
<option value="BEGINS WITH">COM_FABRIK_BEGINS_WITH</option>
<option value="CONTAINS">COM_FABRIK_CONTAINS</option>
<option value="ENDS WITH">COM_FABRIK_ENDS_WITH</option>
<option value="&gt;">COM_FABRIK_GREATER_THAN</option>
<option value="&lt;">COM_FABRIK_LESS_THAN</option>
<option value="EMPTY">COM_FABRIK_IS_EMPTY</option>
</field>

<field name="search-mode"
type="radio"
class="btn-group"
Expand Down
8 changes: 6 additions & 2 deletions components/com_fabrik/models/list.php
Expand Up @@ -6343,6 +6343,8 @@ public function getAdvancedSearchOpts()
{
return $opts;
}

$defaultStatement = $params->get('advanced-filter-default-statement', '<>');

$list = $this->getTable();
$listRef = $this->getRenderContext();
Expand All @@ -6352,7 +6354,7 @@ public function getAdvancedSearchOpts()
$opts->elementList = JHTML::_('select.genericlist', $fieldNames, 'fabrik___filter[list_' . $listRef . '][key][]',
'class="inputbox key" size="1" ', 'value', 'text');
$opts->statementList = JHTML::_('select.genericlist', $statements, 'fabrik___filter[list_' . $listRef . '][condition][]',
'class="inputbox" size="1" ', 'value', 'text');
'class="inputbox" size="1" ', 'value', 'text', $defaultStatement);
$opts->listid = $list->id;
$opts->listref = $listRef;
$opts->ajax = $this->isAjax();
Expand Down Expand Up @@ -6580,9 +6582,11 @@ public function getAdvancedSearchRows()

if ($counter == 0)
{
$params = $this->getParams();
$join = FText::_('COM_FABRIK_WHERE') . '<input type="hidden" name="' . $prefix . 'join][]" value="WHERE" />';
$key = JHTML::_('select.genericlist', $fieldNames, $prefix . 'key][]', 'class="inputbox key" size="1" ', 'value', 'text', '');
$jsSel = JHTML::_('select.genericlist', $statements, $prefix . 'condition][]', 'class="inputbox" size="1" ', 'value', 'text', '');
$defaultStatement = $params->get('advanced-filter-default-statement', '<>');
$jsSel = JHTML::_('select.genericlist', $statements, $prefix . 'condition][]', 'class="inputbox" size="1" ', 'value', 'text', $defaultStatement);
$rows[] = array('join' => $join, 'element' => $key, 'condition' => $jsSel, 'filter' => $firstFilter, 'type' => $type,
'grouped' => $grouped);
}
Expand Down

0 comments on commit db64c2b

Please sign in to comment.