Add street autofill to notes page (#22)

This commit is contained in:
Skylar Ittner 2020-01-08 14:23:12 -07:00
parent 2c59b7d82d
commit af5edd83ec
2 changed files with 29 additions and 15 deletions

View File

@ -133,3 +133,20 @@ function searchAutofillByStreet(q) {
return streets; return streets;
} }
function setupStreetAutofill(streetBox, numberBox) {
app.autocomplete.create({
inputEl: streetBox,
openIn: 'dropdown',
/* If we set valueProperty to "id" then input value on select will be set according to this property */
valueProperty: 'name', //object's "value" property name
textProperty: 'name', //object's "text" property name
limit: 10, //limit to 10 results
typeahead: true,
dropdownPlaceholderText: '',
source: function (query, render) {
var streets = searchAutofill(query, $(numberBox).val());
render(streets);
}
});
}

View File

@ -41,20 +41,7 @@ var routes = [
}, },
on: { on: {
pageAfterIn: function () { pageAfterIn: function () {
app.autocomplete.create({ setupStreetAutofill("#streetInput", "input[name=number]");
inputEl: '#streetInput',
openIn: 'dropdown',
/* If we set valueProperty to "id" then input value on select will be set according to this property */
valueProperty: 'name', //object's "value" property name
textProperty: 'name', //object's "text" property name
limit: 10, //limit to 10 results
typeahead: true,
dropdownPlaceholderText: '',
source: function (query, render) {
var streets = searchAutofill(query, $("input[name=number]").val());
render(streets);
}
});
} }
} }
}, },
@ -126,6 +113,11 @@ var routes = [
routes: [ routes: [
{ {
path: '/addnote', path: '/addnote',
on: {
pageAfterIn: function () {
setupStreetAutofill("input[name=street]", "input[name=number]");
}
},
async: function (routeTo, routeFrom, resolve, reject) { async: function (routeTo, routeFrom, resolve, reject) {
var uuid = uuidv4(); var uuid = uuidv4();
resolve({ resolve({
@ -149,6 +141,11 @@ var routes = [
{ {
path: '/editnote', path: '/editnote',
templateUrl: './pages/myroute/editnote.html', templateUrl: './pages/myroute/editnote.html',
on: {
pageAfterIn: function () {
setupStreetAutofill("input[name=street]", "input[name=number]");
}
},
options: { options: {
context: { context: {
title: "Edit Note", title: "Edit Note",
@ -323,7 +320,7 @@ var routes = [
setting: "login", setting: "login",
title: "Account", title: "Account",
text: "Log in to backup and sync your settings and data.", text: "Log in to backup and sync your settings and data.",
onclick: "router.navigate('/login', {history: false})", onclick: "router.navigate('/login')",
link: true link: true
} }
); );