)->setName('photoDnd');
$this->post(
- '/suggest/towns',
- function ($request, $response) {
+ '/suggest/towns/{term}',
+ function ($request, $response, string $term) {
$post = $request->getParsedBody();
$ret = [];
try {
$select1 = $this->get('zdb')->select(Adherent::TABLE);
$select1->columns(['ville_adh']);
- $select1->where->like('ville_adh', '%' . html_entity_decode($post['term']) . '%');
+ $select1->where->like('ville_adh', '%' . html_entity_decode($term) . '%');
$select2 = $this->get('zdb')->select(Adherent::TABLE);
$select2->columns(['lieu_naissance']);
- $select2->where->like('lieu_naissance', '%' . html_entity_decode($post['term']) . '%');
+ $select2->where->like('lieu_naissance', '%' . html_entity_decode($term) . '%');
$select1->combine($select2);
$towns = $this->get('zdb')->execute($select);
+ $ret['success'] = true;
+ $ret['results'] = [];
foreach ($towns as $town) {
- $ret[] = [
- 'id' => $town->ville_adh,
- 'label' => $town->ville_adh
+ $ret['results'][] = [
+ 'title' => $town->ville_adh
];
}
} catch (Throwable $e) {
});
{% if autocomplete %}
- console.log('Autocompletion has to be reworked.');
+ $('#ville_adh, #lieu_naissance').search({
+ minCharacters : 2,
+ debug: true,
+ verbose: true,
+ searchFields: [
+ 'title'
+ ],
+ }).api({
+ url: '{{ path_for('suggestTown', {'term': '{value}'}) }}',
+ method: 'post',
+ onFailure: function(response, element, xhr) {
+ console.log(response);
+ }
+ });
{#$('#ville_adh, #lieu_naissance').autocomplete({
source: function (request, response) {
$.post('{{ path_for('suggestTown') }}', request, response);
"permission": "644",
"autoInstall": true,
"rtl": "both",
- "components": ["reset", "site", "button", "container", "divider", "header", "icon", "input", "label", "list", "loader", "segment", "step", "form", "grid", "menu", "message", "table", "card", "item", "accordion", "checkbox", "dimmer", "dropdown", "popup", "sidebar", "tab", "transition", "text", "calendar", "toast", "modal", "api"],
+ "components": ["reset", "site", "button", "container", "divider", "header", "icon", "input", "label", "list", "loader", "segment", "step", "form", "grid", "menu", "message", "table", "card", "item", "accordion", "checkbox", "dimmer", "dropdown", "popup", "sidebar", "tab", "transition", "text", "calendar", "toast", "modal", "api", "search"],
"version": "2.8.8"
}
\ No newline at end of file