[minor] replace autocomplete with awesomplete
This commit is contained in:
parent
e60c2c7b7a
commit
512b85e040
@ -410,33 +410,37 @@ erpnext.pos.PointOfSale = erpnext.taxes_and_totals.extend({
|
||||
this.frm.doc.customer = this.default_customer;
|
||||
}
|
||||
|
||||
this.party_field.$input.autocomplete({
|
||||
autoFocus: true,
|
||||
source: function (request, response) {
|
||||
me.customer_data = me.get_customers(request.term)
|
||||
response($.map(me.customer_data, function(data){
|
||||
this.party_field.awesomeplete = new Awesomplete(this.party_field.$input.get(0), {
|
||||
minChars: 0,
|
||||
maxItems: 99,
|
||||
autoFirst: true,
|
||||
list: [],
|
||||
});
|
||||
|
||||
this.party_field.$input
|
||||
.on('input', function(e) {
|
||||
var customer_data = me.get_customers(e.target.value) || [];
|
||||
me.party_field.awesomeplete.list = customer_data.map(function(data){
|
||||
return {label: data.name, value: data.name,
|
||||
customer_group: data.customer_group, territory: data.territory}
|
||||
}))
|
||||
},
|
||||
change: function(event, ui){
|
||||
if(ui.item){
|
||||
me.frm.doc.customer = ui.item.label;
|
||||
me.frm.doc.customer_name = ui.item.customer_name;
|
||||
me.frm.doc.customer_group = ui.item.customer_group;
|
||||
me.frm.doc.territory = ui.item.territory;
|
||||
}else{
|
||||
});
|
||||
})
|
||||
.on('awesomplete-select', function(e) {
|
||||
var item = me.party_field.awesomeplete.get_item(e.originalEvent.text.value);
|
||||
console.log(item);
|
||||
if(item) {
|
||||
me.frm.doc.customer = item.label;
|
||||
me.frm.doc.customer_name = item.customer_name;
|
||||
me.frm.doc.customer_group = item.customer_group;
|
||||
me.frm.doc.territory = item.territory;
|
||||
} else {
|
||||
me.frm.doc.customer = me.party_field.$input.val();
|
||||
}
|
||||
me.refresh();
|
||||
}
|
||||
}).on("focus", function(){
|
||||
setTimeout(function() {
|
||||
if(!me.party_field.$input.val()) {
|
||||
me.party_field.$input.autocomplete( "search", " " );
|
||||
}
|
||||
}, 500);
|
||||
});
|
||||
})
|
||||
.on('focus', function(e) {
|
||||
$(e.target).val('').trigger('input');
|
||||
});
|
||||
},
|
||||
|
||||
get_customers: function(key){
|
||||
@ -570,7 +574,7 @@ erpnext.pos.PointOfSale = erpnext.taxes_and_totals.extend({
|
||||
me.update_qty(item_code, qty)
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
update_qty: function(item_code, qty) {
|
||||
var me = this;
|
||||
this.items = this.get_items(item_code);
|
||||
@ -1012,13 +1016,13 @@ erpnext.pos.PointOfSale = erpnext.taxes_and_totals.extend({
|
||||
frappe.throw(__("Select items to save the invoice"))
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
validate_mode_of_payments: function(){
|
||||
if (this.frm.doc.payments.length === 0){
|
||||
frappe.throw(__("Payment Mode is not configured. Please check, whether account has been set on Mode of Payments or on POS Profile."))
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
validate_serial_no: function(){
|
||||
var me = this;
|
||||
var item_code = serial_no = '';
|
||||
|
@ -88,13 +88,13 @@ frappe.ui.form.on("Item", {
|
||||
image: function(frm) {
|
||||
refresh_field("image_view");
|
||||
},
|
||||
|
||||
|
||||
is_fixed_asset: function(frm) {
|
||||
if (frm.doc.is_fixed_asset) {
|
||||
frm.set_value("is_stock_item", 0);
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
page_name: frappe.utils.warn_page_name_change,
|
||||
|
||||
item_code: function(frm) {
|
||||
@ -191,15 +191,15 @@ $.extend(erpnext.item, {
|
||||
|
||||
frm.fields_dict.reorder_levels.grid.get_field("warehouse").get_query = function(doc, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
|
||||
|
||||
var filters = {
|
||||
"is_group": 0
|
||||
}
|
||||
|
||||
|
||||
if (d.parent_warehouse) {
|
||||
filters.extend({"parent_warehouse": d.warehouse_group})
|
||||
}
|
||||
|
||||
|
||||
return {
|
||||
filters: filters
|
||||
}
|
||||
@ -313,39 +313,38 @@ $.extend(erpnext.item, {
|
||||
|
||||
$(field.input_area).addClass("ui-front");
|
||||
|
||||
field.$input.autocomplete({
|
||||
minLength: 0,
|
||||
var input = field.$input.get(0);
|
||||
input.awesomplete = new Awesomplete(input, {
|
||||
minChars: 0,
|
||||
autoFocus: true,
|
||||
source: function(request, response) {
|
||||
maxItems: 99,
|
||||
autoFirst: true,
|
||||
list: [],
|
||||
});
|
||||
input.field = field;
|
||||
|
||||
field.$input
|
||||
.on('input', function(e) {
|
||||
var term = e.target.value;
|
||||
frappe.call({
|
||||
method:"frappe.client.get_list",
|
||||
args:{
|
||||
doctype:"Item Attribute Value",
|
||||
filters: [
|
||||
["parent","=", i],
|
||||
["attribute_value", "like", request.term + "%"]
|
||||
["attribute_value", "like", term + "%"]
|
||||
],
|
||||
fields: ["attribute_value"]
|
||||
},
|
||||
callback: function(r) {
|
||||
if (r.message) {
|
||||
response($.map(r.message, function(d) { return d.attribute_value; }));
|
||||
e.target.awesomplete.list = r.message.map(function(d) { return d.attribute_value; });
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
select: function(event, ui) {
|
||||
field.$input.val(ui.item.value);
|
||||
field.$input.trigger("change");
|
||||
},
|
||||
}).on("focus", function(){
|
||||
setTimeout(function() {
|
||||
if(!field.$input.val()) {
|
||||
field.$input.autocomplete("search", "");
|
||||
}
|
||||
}, 500);
|
||||
});
|
||||
})
|
||||
.on('focus', function(e) {
|
||||
$(e.target).val('').trigger('input');
|
||||
})
|
||||
});
|
||||
},
|
||||
toggle_attributes: function(frm) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user