[#154,filtereditor][s]: refactor how we lay out the filters in order to group inputs for a given filter together more.
* Model.Query: use distance_unit for geo_distance filter.
This commit is contained in:
@@ -423,7 +423,8 @@ my.Query = Backbone.Model.extend({
|
|||||||
term: ''
|
term: ''
|
||||||
},
|
},
|
||||||
geo_distance: {
|
geo_distance: {
|
||||||
distance: '10km',
|
distance: 10,
|
||||||
|
distance_unit: 'km',
|
||||||
point: {
|
point: {
|
||||||
lon: 0,
|
lon: 0,
|
||||||
lat: 0
|
lat: 0
|
||||||
|
|||||||
@@ -39,23 +39,30 @@ my.FilterEditor = Backbone.View.extend({
|
|||||||
',
|
',
|
||||||
filterTemplates: {
|
filterTemplates: {
|
||||||
term: ' \
|
term: ' \
|
||||||
<div class="control-group filter-{{type}} filter"> \
|
<div class="filter-{{type}} filter"> \
|
||||||
<label class="control-label" for="">{{field}}</label> \
|
<fieldset> \
|
||||||
<div class="controls"> \
|
<legend> \
|
||||||
<input type="text" value="{{term}}" name="term" data-filter-field="{{field}}" data-filter-id="{{id}}" data-filter-type="{{type}}" /> \
|
{{field}} <small>{{type}}</small> \
|
||||||
<a class="js-remove-filter" href="#">×</a> \
|
<a class="js-remove-filter" href="#" title="Remove this filter">×</a> \
|
||||||
</div> \
|
</legend> \
|
||||||
|
<input type="text" value="{{term}}" name="term" data-filter-field="{{field}}" data-filter-id="{{id}}" data-filter-type="{{type}}" /> \
|
||||||
|
</fieldset> \
|
||||||
</div> \
|
</div> \
|
||||||
',
|
',
|
||||||
geo_distance: ' \
|
geo_distance: ' \
|
||||||
<div class="control-group filter-{{type}} filter"> \
|
<div class="filter-{{type}} filter"> \
|
||||||
<label class="control-label" for="">{{field}}</label> \
|
<fieldset> \
|
||||||
<a class="js-remove-filter" href="#">×</a> \
|
<legend> \
|
||||||
<div class="controls"> \
|
{{field}} <small>{{type}}</small> \
|
||||||
<input type="text" value="{{point.lon}}" name="lon" data-filter-field="{{field}}" data-filter-id="{{id}}" data-filter-type="{{type}}" /> \
|
<a class="js-remove-filter" href="#" title="Remove this filter">×</a> \
|
||||||
<input type="text" value="{{point.lat}}" name="lat" data-filter-field="{{field}}" data-filter-id="{{id}}" data-filter-type="{{type}}" /> \
|
</legend> \
|
||||||
<input type="text" value="{{distance}}" name="distance" data-filter-field="{{field}}" data-filter-id="{{id}}" data-filter-type="{{type}}" /> \
|
<label class="control-label" for="">Longitude</label> \
|
||||||
</div> \
|
<input type="text" value="{{point.lon}}" name="lon" data-filter-field="{{field}}" data-filter-id="{{id}}" data-filter-type="{{type}}" /> \
|
||||||
|
<label class="control-label" for="">Latitude</label> \
|
||||||
|
<input type="text" value="{{point.lat}}" name="lat" data-filter-field="{{field}}" data-filter-id="{{id}}" data-filter-type="{{type}}" /> \
|
||||||
|
<label class="control-label" for="">Distance (km)</label> \
|
||||||
|
<input type="text" value="{{distance}}" name="distance" data-filter-field="{{field}}" data-filter-id="{{id}}" data-filter-type="{{type}}" /> \
|
||||||
|
</fieldset> \
|
||||||
</div> \
|
</div> \
|
||||||
'
|
'
|
||||||
},
|
},
|
||||||
@@ -126,7 +133,7 @@ my.FilterEditor = Backbone.View.extend({
|
|||||||
filters[filterIndex].term = value;
|
filters[filterIndex].term = value;
|
||||||
} else if (filterType === 'geo_distance') {
|
} else if (filterType === 'geo_distance') {
|
||||||
if (name === 'distance') {
|
if (name === 'distance') {
|
||||||
filters[filterIndex].distance = parseInt(value);
|
filters[filterIndex].distance = parseFloat(value);
|
||||||
} else {
|
} else {
|
||||||
filters[filterIndex].point[name] = parseFloat(value);
|
filters[filterIndex].point[name] = parseFloat(value);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user