Блокировка кнопки добавления точки на время отправки запроса.

This commit is contained in:
Krivchikov Dmitry 2014-05-27 17:39:26 +04:00
parent 1031704f61
commit 3ddd763a7a
1 changed files with 68 additions and 57 deletions

View File

@ -8,6 +8,7 @@ var categories;
var points = Array(); var points = Array();
var search; var search;
var route = false; var route = false;
var addPointInProcess = false;
// -------------------------------- Libs --------------------------------------- // -------------------------------- Libs ---------------------------------------
@ -248,70 +249,80 @@ function activateAddPoint()
function addPoint() function addPoint()
{ {
$('.form-group').removeClass('has-error'); $('.form-group').removeClass('has-error');
$.ajax({ if (!addPointInProcess)
type: "POST", {
url: "/json/addpoint/", addPointInProcess = true;
data: { $.ajax({
name: $('#addPointName').val(), type: "POST",
img: $('#addPointImg').val(), url: "/json/addpoint/",
description: $('#addPointDescription').val(), data: {
categoryId: $('#addPointCategoryId').val(), name: $('#addPointName').val(),
source: $('#addPointSource').val(), img: $('#addPointImg').val(),
lat: $('#addPointLat').val(), description: $('#addPointDescription').val(),
lng: $('#addPointLng').val() categoryId: $('#addPointCategoryId').val(),
}, source: $('#addPointSource').val(),
success: function(data) { lat: $('#addPointLat').val(),
balloon = myMap.balloon.open([$('#addPointLat').val(), $('#addPointLng').val()], {content: 'Точка успешно добавлена!'}, {closeButton: false}); lng: $('#addPointLng').val()
setTimeout(function() { },
balloon.close(); success: function(data) {
}, 3000); balloon = myMap.balloon.open([$('#addPointLat').val(), $('#addPointLng').val()], {content: 'Точка успешно добавлена!'}, {closeButton: false});
setTimeout(function() {
balloon.close();
}, 3000);
obj = {}; obj = {};
obj.id = data; obj.id = data;
obj.name = $('#addPointName').val(); obj.name = $('#addPointName').val();
obj.lat = $('#addPointLat').val(); obj.lat = $('#addPointLat').val();
obj.lng = $('#addPointLng').val(); obj.lng = $('#addPointLng').val();
obj.categoryIcon = categories[$('#addPointCategoryId').val()].icon; obj.categoryIcon = categories[$('#addPointCategoryId').val()].icon;
setTimeout(function() { setTimeout(function() {
myMap.geoObjects.add(constructPoint(obj)); myMap.geoObjects.add(constructPoint(obj));
}, 3000); }, 2000);
$('#addPointModal').modal('hide'); $('#addPointModal').modal('hide');
// Clear form // Clear form
$('#addPointForm input').val(''); $('#addPointForm input').val('');
$('#addPointForm textarea').val(''); $('#addPointForm textarea').val('');
$('.form-group').removeClass('has-error'); $('.form-group').removeClass('has-error');
$('#addPointButton').removeClass('btn-success').addClass('btn-default'); $('#addPointButton').removeClass('btn-success').addClass('btn-default');
myMap.cursors.push('arrow'); myMap.cursors.push('arrow');
return true; addPointInProcess = false;
}, return true;
error: function(data) { },
response = data.responseJSON; error: function(data) {
message = ''; response = data.responseJSON;
for (var k in response) { message = '';
if (typeof response[k] !== 'function') { for (var k in response) {
if (k == 1) if (typeof response[k] !== 'function') {
$('#addPointName').parent().addClass('has-error'); if (k == 1)
else $('#addPointName').parent().addClass('has-error');
if (k == 2) else
$('#addPointImg').parent().addClass('has-error'); if (k == 2)
else $('#addPointImg').parent().addClass('has-error');
if (k == 3) else
$('#addPointDescription').parent().addClass('has-error'); if (k == 3)
else $('#addPointDescription').parent().addClass('has-error');
message += response[k] + '; '; else
} message += response[k] + '; ';
} }
}
if (message != '') if (message != '')
alert(message); alert(message);
return false; addPointInProcess = false;
} return false;
}); }
});
}
else
{
alert ('Точка добавляется, нужно немного подождать.');
}
} }
/** /**