@@ -23,7 +23,9 @@ angular.module('angular-advanced-searchbox', [])
23
23
searchThrottleTime : '='
24
24
} ,
25
25
replace : true ,
26
- templateUrl : 'angular-advanced-searchbox.html' ,
26
+ templateUrl : function ( element , attr ) {
27
+ return attr . templateUrl || 'angular-advanced-searchbox.html' ;
28
+ } ,
27
29
controller : [
28
30
'$scope' , '$attrs' , '$element' , '$timeout' , '$filter' ,
29
31
function ( $scope , $attrs , $element , $timeout , $filter ) {
@@ -120,15 +122,18 @@ angular.module('angular-advanced-searchbox', [])
120
122
if ( ! $scope . isUnsedParameter ( searchParam ) )
121
123
return ;
122
124
123
- $scope . searchParams . push (
124
- {
125
- key : searchParam . key ,
126
- name : searchParam . name ,
127
- placeholder : searchParam . placeholder ,
128
- value : value || '' ,
129
- editMode : enterEditModel
130
- }
131
- ) ;
125
+ var newIndex =
126
+ $scope . searchParams . push (
127
+ {
128
+ key : searchParam . key ,
129
+ name : searchParam . name ,
130
+ placeholder : searchParam . placeholder ,
131
+ value : value || ''
132
+ }
133
+ ) - 1 ;
134
+
135
+ if ( enterEditModel === true )
136
+ $timeout ( function ( ) { $scope . enterEditMode ( undefined , newIndex ) ; } , 100 ) ;
132
137
133
138
updateModel ( 'add' , searchParam . key , value ) ;
134
139
} ;
@@ -347,7 +352,7 @@ angular.module('angular-advanced-searchbox').run(['$templateCache', function($te
347
352
'use strict' ;
348
353
349
354
$templateCache . put ( 'angular-advanced-searchbox.html' ,
350
- "<div class=advancedSearchBox ng-class={active:focus} ng-init=\"focus = false\" ng-click=\"!focus ? setSearchFocus = true : null\"><span ng-show=\"searchParams.length < 1 && searchQuery.length === 0\" class=\"search-icon glyphicon glyphicon-search\"></span> <a ng-href=\"\" ng-show=\"searchParams.length > 0 || searchQuery.length > 0\" ng-click=removeAll() role=button><span class=\"remove-all-icon glyphicon glyphicon-trash\"></span></a><div><div class=search-parameter ng-repeat=\"searchParam in searchParams\"><a ng-href=\"\" ng-click=removeSearchParam($index) role=button><span class=\"remove glyphicon glyphicon-trash\"></span></a><div class=key ng-click=\"enterEditMode($event, $index)\">{{searchParam.name}}:</div><div class=value><span ng-if=!searchParam.editMode ng-click=\"enterEditMode($event, $index)\">{{searchParam.value}}</span> <input name=value nit-auto-size-input nit-set-focus=searchParam.editMode ng-keydown=\"keydown($event, $index)\" ng-blur=\"leaveEditMode($event, $index)\" ng-if=searchParam.editMode ng-change=searchParamValueChanged(searchParam) ng-model=searchParam.value placeholder=\"{{searchParam.placeholder}}\"></div></div><input name=searchbox class=search-parameter-input nit-auto-size-input nit-set-focus=setSearchFocus ng-keydown=keydown($event) placeholder={{placeholder}} ng-focus=\"focus = true\" ng-blur=\"focus = false\" typeahead-on-select=\"typeaheadOnSelect($item, $model, $label)\" typeahead=\"parameter as parameter.name for parameter in parameters | filter:isUnsedParameter | filter:{name:$viewValue} | limitTo:parametersDisplayLimit\" ng-change=searchQueryChanged(searchQuery) ng-model=\"searchQuery\"></div><div class=search-parameter-suggestions ng-show=\"parameters && focus\"><span class=title>{{parametersLabel}}:</span> <span class=search-parameter ng-repeat=\"param in parameters | filter:isUnsedParameter | limitTo:parametersDisplayLimit\" ng-mousedown=addSearchParam(param)>{{param.name}}</span></div></div>"
355
+ "<div class=advancedSearchBox ng-class={active:focus} ng-init=\"focus = false\" ng-click=\"!focus ? setSearchFocus = true : null\"><span ng-show=\"searchParams.length < 1 && searchQuery.length === 0\" class=\"search-icon glyphicon glyphicon-search\"></span> <a ng-href=\"\" ng-show=\"searchParams.length > 0 || searchQuery.length > 0\" ng-click=removeAll() role=button><span class=\"remove-all-icon glyphicon glyphicon-trash\"></span></a><div><div class=search-parameter ng-repeat=\"searchParam in searchParams\"><a ng-href=\"\" ng-click=removeSearchParam($index) role=button><span class=\"remove glyphicon glyphicon-trash\"></span></a><div class=key ng-click=\"enterEditMode($event, $index)\">{{searchParam.name}}:</div><div class=value><span ng-show=!searchParam.editMode ng-click=\"enterEditMode($event, $index)\">{{searchParam.value}}</span> <input name=value nit-auto-size-input nit-set-focus=searchParam.editMode ng-keydown=\"keydown($event, $index)\" ng-blur=\"leaveEditMode($event, $index)\" ng-show=searchParam.editMode ng-change=searchParamValueChanged(searchParam) ng-model=searchParam.value placeholder=\"{{searchParam.placeholder}}\"></div></div><input name=searchbox class=search-parameter-input nit-auto-size-input nit-set-focus=setSearchFocus ng-keydown=keydown($event) placeholder={{placeholder}} ng-focus=\"focus = true\" ng-blur=\"focus = false\" typeahead-on-select=\"typeaheadOnSelect($item, $model, $label)\" typeahead=\"parameter as parameter.name for parameter in parameters | filter:isUnsedParameter | filter:{name:$viewValue} | limitTo:parametersDisplayLimit\" ng-change=searchQueryChanged(searchQuery) ng-model=\"searchQuery\"></div><div class=search-parameter-suggestions ng-show=\"parameters && focus\"><span class=title>{{parametersLabel}}:</span> <span class=search-parameter ng-repeat=\"param in parameters | filter:isUnsedParameter | limitTo:parametersDisplayLimit\" ng-mousedown=addSearchParam(param)>{{param.name}}</span></div></div>"
351
356
) ;
352
357
353
358
} ] ) ;
0 commit comments