Add customer phone autocomplete and customer "info" AJAX view.
This autocomplete view is a little different than the typical ones used prior, and required some refactoring of the base autocomplete view as well as the autocomplete template.
This commit is contained in:
parent
bfd1b034ee
commit
f9d22f59f2
4 changed files with 125 additions and 32 deletions
|
@ -1,4 +1,6 @@
|
|||
<%def name="autocomplete(field_name, service_url, field_value=None, field_display=None, width='300px', selected=None, cleared=None)">
|
||||
## -*- coding: utf-8 -*-
|
||||
## TODO: This function signature is getting out of hand...
|
||||
<%def name="autocomplete(field_name, service_url, field_value=None, field_display=None, width=u'300px', select=None, selected=None, cleared=None, options={})">
|
||||
<div id="${field_name}-container" class="autocomplete-container">
|
||||
${h.hidden(field_name, id=field_name, value=field_value)}
|
||||
${h.text(field_name+'-textbox', id=field_name+'-textbox', value=field_display,
|
||||
|
@ -13,19 +15,26 @@
|
|||
$('#${field_name}-textbox').autocomplete({
|
||||
source: '${service_url}',
|
||||
autoFocus: true,
|
||||
% for key, value in options.items():
|
||||
${key}: ${value},
|
||||
% endfor
|
||||
focus: function(event, ui) {
|
||||
return false;
|
||||
},
|
||||
select: function(event, ui) {
|
||||
$('#${field_name}').val(ui.item.value);
|
||||
$('#${field_name}-display span:first').text(ui.item.label);
|
||||
$('#${field_name}-textbox').hide();
|
||||
$('#${field_name}-display').show();
|
||||
% if selected:
|
||||
${selected}(ui.item.value, ui.item.label);
|
||||
% endif
|
||||
return false;
|
||||
}
|
||||
% if select:
|
||||
select: ${select}
|
||||
% else:
|
||||
select: function(event, ui) {
|
||||
$('#${field_name}').val(ui.item.value);
|
||||
$('#${field_name}-display span:first').text(ui.item.label);
|
||||
$('#${field_name}-textbox').hide();
|
||||
$('#${field_name}-display').show();
|
||||
% if selected:
|
||||
${selected}(ui.item.value, ui.item.label);
|
||||
% endif
|
||||
return false;
|
||||
}
|
||||
% endif
|
||||
});
|
||||
$('#${field_name}-change').click(function() {
|
||||
$('#${field_name}').val('');
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue