mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-12 04:23:19 +00:00
Add geonames module
This commit is contained in:
@@ -18,16 +18,20 @@ require.config({
|
||||
i18n: "../assets/i18next/release/i18next.amd-1.6.2.min",
|
||||
bootstrap: "../skins/build/bootstrap/js/bootstrap.min",
|
||||
multiselect: "../assets/bootstrap-multiselect/js/bootstrap-multiselect",
|
||||
"jquery.geocompleter": "../assets/geonames-server-jquery-plugin/jquery.geonames"
|
||||
"jquery.geonames": "../assets/geonames-server-jquery-plugin/jquery.geonames",
|
||||
geonames: "../skins/geonames/geonames"
|
||||
},
|
||||
shim: {
|
||||
bootstrap : ["jquery"],
|
||||
jqueryui: {
|
||||
deps: ["jquery"]
|
||||
},
|
||||
"jquery.geocompleter" : {
|
||||
deps: ['jquery'],
|
||||
exports: 'jQuery.fn.geocompleter'
|
||||
"jquery.geonames" : {
|
||||
deps: ['jquery', 'jqueryui'],
|
||||
exports: '$.fn.geocompleter'
|
||||
},
|
||||
geonames: {
|
||||
deps: ["jquery.geonames"]
|
||||
},
|
||||
multiselect: {
|
||||
deps: ["jquery", "bootstrap"]
|
||||
|
@@ -13,9 +13,8 @@ require([
|
||||
"i18n",
|
||||
"apps/login/home/common",
|
||||
"common/forms/views/formType/passwordSetter",
|
||||
"jqueryui",
|
||||
"jquery.geocompleter"
|
||||
], function($, i18n, Common, RegisterForm) {
|
||||
"geonames"
|
||||
], function($, i18n, Common, RegisterForm, geonames) {
|
||||
var fieldsConfiguration = [];
|
||||
|
||||
$.when.apply($, [
|
||||
@@ -89,7 +88,7 @@ require([
|
||||
rules: rules
|
||||
});
|
||||
|
||||
var geocompleter = $("#geonameid").geocompleter({
|
||||
var geocompleter = geonames.init($("#geonameid"), {
|
||||
"server": $form.data("geonames-server-adress"),
|
||||
"limit": 40
|
||||
});
|
||||
@@ -101,38 +100,10 @@ require([
|
||||
"at": "left bottom"
|
||||
});
|
||||
|
||||
// On focus add select-state
|
||||
geocompleter.geocompleter("autocompleter", "on", "autocompletefocus", function(event, ui) {
|
||||
$("li", $(event.originalEvent.target)).closest("li").removeClass("selected");
|
||||
$("a.ui-state-active, a.ui-state-hover, a.ui-state-focus", $(event.originalEvent.target)).closest("li").addClass("selected");
|
||||
});
|
||||
|
||||
// On search request add loading-state
|
||||
geocompleter.geocompleter("autocompleter", "on", "autocompletesearch", function(event, ui) {
|
||||
$(this).addClass('input-loading');
|
||||
$(this).removeClass('input-error');
|
||||
});
|
||||
|
||||
// On open menu calculate max-width
|
||||
geocompleter.geocompleter("autocompleter", "on", "autocompleteopen", function(event, ui) {
|
||||
$(this).autocomplete("widget").css("min-width", geocompleter.closest(".input-table").outerWidth());
|
||||
});
|
||||
|
||||
// On response remove loading-state
|
||||
geocompleter.geocompleter("autocompleter", "on", "autocompleteresponse", function(event, ui) {
|
||||
$(this).removeClass('input-loading');
|
||||
});
|
||||
|
||||
// On close menu remove loading-state
|
||||
geocompleter.geocompleter("autocompleter", "on", "autocompleteclose", function(event, ui) {
|
||||
$(this).removeClass('input-loading');
|
||||
});
|
||||
|
||||
// On request error add error-state
|
||||
geocompleter.geocompleter("autocompleter", "on", "geotocompleter.request.error", function(jqXhr, status, error) {
|
||||
$(this).removeClass('input-loading');
|
||||
$(this).addClass('input-error');
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
Reference in New Issue
Block a user