mirror of
https://gitlab.com/bmcgonag/get_my.git
synced 2026-03-27 00:08:49 +00:00
Added autocomplete to Menu Item entryies
This commit is contained in:
parent
9abb198e82
commit
d8c08578f3
4 changed files with 42 additions and 7 deletions
|
|
@ -5,7 +5,7 @@ import { M } from '../lib/assets/materialize.js';
|
||||||
|
|
||||||
Template.menuItemsForm.onCreated(function() {
|
Template.menuItemsForm.onCreated(function() {
|
||||||
this.subscribe("myMenus");
|
this.subscribe("myMenus");
|
||||||
this.subscribe("myMenuItems", Session.get("menuId"));
|
this.subscribe("allMenuItems", Session.get("menuId"));
|
||||||
});
|
});
|
||||||
|
|
||||||
Template.menuItemsForm.onRendered(function() {
|
Template.menuItemsForm.onRendered(function() {
|
||||||
|
|
@ -13,6 +13,15 @@ Template.menuItemsForm.onRendered(function() {
|
||||||
var instances = M.Datepicker.init(elems, {});
|
var instances = M.Datepicker.init(elems, {});
|
||||||
|
|
||||||
Session.set("menuItemErr", false);
|
Session.set("menuItemErr", false);
|
||||||
|
Session.set("menuListItems", {});
|
||||||
|
|
||||||
|
this.autorun(() => {
|
||||||
|
var elema = document.querySelectorAll('.autocomplete');
|
||||||
|
var instancea = M.Autocomplete.init(elema, {
|
||||||
|
minlength: 0,
|
||||||
|
data: Session.get("menuListItems"),
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
Template.menuItemsForm.helpers({
|
Template.menuItemsForm.helpers({
|
||||||
|
|
@ -65,5 +74,20 @@ Template.menuItemsForm.events({
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
|
'keyup #menuItemInp' (event) {
|
||||||
|
if (event.which != 13) {
|
||||||
|
let findMenuItem = $("#menuItemInp").val();
|
||||||
|
let menuItemInfo = MenuItems.find({ itemName: {$regex: findMenuItem + '.*', $options: 'i' }}).fetch();
|
||||||
|
if (typeof menuItemInfo != 'undefined' && menuItemInfo != '' && menuItemInfo != null) {
|
||||||
|
getMenuItemList(menuItemInfo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
getMenuItemList = function(menuItemInfo) {
|
||||||
|
let menuItemObjArray = [];
|
||||||
|
menuItemObjArray = menuItemInfo.map(info => ({ id: info._id, text: info.itemName }));
|
||||||
|
Session.set("menuListItems", menuItemObjArray);
|
||||||
|
}
|
||||||
|
|
@ -22,7 +22,7 @@ Template.menuItemsTbl.onRendered(function() {
|
||||||
|
|
||||||
Template.menuItemsTbl.helpers({
|
Template.menuItemsTbl.helpers({
|
||||||
thisMenuItems: function() {
|
thisMenuItems: function() {
|
||||||
return MenuItems.find({}, { sort: { serveDateActual: 1 }});
|
return MenuItems.find({ menuId: Session.get("menuId") }, { sort: { serveDateActual: 1 }});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,11 @@
|
||||||
<h5>{{menuName}}</h5>
|
<h5>{{menuName}}</h5>
|
||||||
<form class="menuItemFrm row" style="gap: 1em;" id="menuItemFrm">
|
<form class="menuItemFrm row" style="gap: 1em;" id="menuItemFrm">
|
||||||
<div class="col s12 m6 l9 input-field outlined">
|
<div class="col s12 m6 l9 input-field outlined">
|
||||||
<input type="text" class="menuItemInp" style="{{#if $eq menuItemErr true}}border: 2px solid red{{/if}}" id="menuItemInp" />
|
<input type="text" class="autocomplete" id="menuItemInp" autocomplete="off" />
|
||||||
<label for="menuItemInp">Add Menu Item</label>
|
<label for="menuItemInp">Item</label>
|
||||||
|
|
||||||
|
<!-- <input type="text" class="menuItemInp" style="{{#if $eq menuItemErr true}}border: 2px solid red{{/if}}" id="menuItemInp" />
|
||||||
|
<label for="menuItemInp">Add Menu Item</label> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="col s12 m6 l3 input-field outlined">
|
<div class="col s12 m6 l3 input-field outlined">
|
||||||
<input type="text" class="datepicker" id="dateServed" />
|
<input type="text" class="datepicker" id="dateServed" />
|
||||||
|
|
|
||||||
|
|
@ -83,10 +83,18 @@ Meteor.publish("myMenuItems", function(menuId) {
|
||||||
try {
|
try {
|
||||||
return MenuItems.find({ menuId: menuId });
|
return MenuItems.find({ menuId: menuId });
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log(" ERROR pulling list items for this list: " + error);
|
console.log(" ERROR pulling menu items for this list: " + error);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Meteor.publish("allMenuItems", function() {
|
||||||
|
try {
|
||||||
|
return MenuItems.find({});
|
||||||
|
} catch (error) {
|
||||||
|
console.log(" ERROR pulling all menu items from collection: " + error);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
Meteor.publish("todayMenuItems", function() {
|
Meteor.publish("todayMenuItems", function() {
|
||||||
try {
|
try {
|
||||||
let todayDate = new Date();
|
let todayDate = new Date();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue