Rev 1686 |
Rev 1724 |
Go to most recent revision |
Blame |
Compare with Previous |
Last modification |
View Log
| RSS feed
/**
* Created by jorgemachado on 28/12/16.
*/
/**
*
* @param serviceName
* @param form
* @param handlerOk(responseObjJson)
* @param handlerFail(responseObjJson)
*/
function widgetCall(serviceName,form,handlerOk,handlerFail)
{
var data = $(form).serialize().replace(/%0D%0A/g, '%0A').replace(/\r?\n/g, "\r\n");
widgetCallWithActionParameters($(form).attr("action"),serviceName,data,form,handlerOk,handlerFail);
}
/**
* Use parameters instead of serialize form
* @param serviceName
* @param parameters
* @param form
* @param handlerOk
* @param handlerFail
*/
function widgetCallWithParameters(serviceName,parameters,form,handlerOk,handlerFail)
{
widgetCallWithActionParameters($(form).attr("action"),serviceName,parameters,form,handlerOk,handlerFail);
}
/**
* Created by jorgemachado on 28/12/16.
*/
/**
*Use parameters instead of serialize form and the action provided
* @param serviceName
* @param webMessagesContainer
* @param handlerOk(responseObjJson)
* @param handlerFail(responseObjJson)
*/
function widgetCallWithActionParameters(action,serviceName,parameters,webMessagesContainer,handlerOk,handlerFail)
{
$(webMessagesContainer).find(".web-messages").html('<div class="alert alert-info">Enviando ...</div>');
var data = parameters;
$.ajax({
url: action + "?dispatch=executeService&serviceJson=" + serviceName,
type: "POST",
data: data,
dataType: "json",
statusCode: {
401:function() {
$("#modalAuthentication").modal({ show : 'true'});
}
},
success: function(resposta)
{
$(webMessagesContainer).find(".web-messages").html("");
if(resposta.service == "error")
{
$(webMessagesContainer).find(".web-messages").html('<div class="alert alert-danger">' + resposta.exception + '</div>');
if(handlerFail != undefined)
handlerFail(resposta.exception);
}
else if(resposta.service == "fail")
{
for(var msg in resposta.messages)
{
$(webMessagesContainer).find(".web-messages").append('<div class="alert alert-success">' + resposta.messages[msg] + '</div>');
}
for(var error in resposta.errors)
{
$(webMessagesContainer).find(".web-messages").append('<div class="alert alert-warning">' + resposta.errors[error] + '</div>');
}
if(handlerFail != undefined)
handlerFail(resposta.response);
}
else if(resposta.service == "ok")
{
for(var msg in resposta.messages)
{
$(webMessagesContainer).find(".web-messages").append('<div class="alert alert-success">' + resposta.messages[msg] + '</div>');
}
if(handlerOk != undefined)
handlerOk(resposta.response);
}
},
error: function() {
$(webMessagesContainer).find(".web-messages").html('<div class="alert alert-danger">Erro de comunicação, por favor tente novamente</div>');
if(handlerFail != undefined)
handlerFail(resposta.exception);
}
});
}
function widgetSimpleCall(serviceName,form,handlerOk,handlerFail){
var data = $(form).serialize().replace(/%0D%0A/g, '%0A').replace(/\r?\n/g, "\r\n");
widgetSimpleCallWithActionParameters($(form).attr("action"),serviceName,data,form,handlerOk,handlerFail);
}
/**
*
* @param serviceName
* @param form
* @param handlerOk()
* @param handlerFail()
*/
function widgetSimpleCallWithActionParameters(action,serviceName,data,webMessagesContainer,handlerOk,handlerFail)
{
$(webMessagesContainer).find(".web-messages").html('<div class="alert alert-info">Enviando ...</div>');
$.ajax({
url: action + "?dispatch=executeSimpleServiceOkFail&serviceJson=" + serviceName,
type: "POST",
data: data,
dataType: "json",
statusCode: {
401:function() {
$('.modal').modal("hide");
$("#modalAuthentication").modal({ show : 'true'});
}
},
success: function(resposta)
{
$(webMessagesContainer).find(".web-messages").html("");
if(resposta.service == "error")
{
$(webMessagesContainer).find(".web-messages").html('<div class="alert alert-danger">' + resposta.exception + '</div>');
if(handlerFail != undefined)
handlerFail();
}
else if(resposta.service == "fail")
{
for(var msg in resposta.messages)
{
$(webMessagesContainer).find(".web-messages").append('<div class="alert alert-success">' + resposta.messages[msg] + '</div>');
}
for(var error in resposta.errors)
{
$(webMessagesContainer).find(".web-messages").append('<div class="alert alert-warning">' + resposta.errors[error] + '</div>');
}
if(handlerFail != undefined)
handlerFail();
}
else if(resposta.service == "ok")
{
for(var msg in resposta.messages)
{
$(webMessagesContainer).find(".web-messages").append('<div class="alert alert-success">' + resposta.messages[msg] + '</div>');
}
for(var error in resposta.errors)
{
$(webMessagesContainer).find(".web-messages").append('<div class="alert alert-warning">' + resposta.errors[error] + '</div>');
}
if(handlerOk != undefined)
handlerOk();
}
},
error: function(resposta)
{
$(webMessagesContainer).find(".web-messages").html('<div class="alert alert-danger">Erro de comunicação, por favor tente novamente</div>');
if(handlerFail != undefined)
handlerFail();
}
});
}