var $ = jQuery;
var JSON = JSON;

$(document).ready(
	function(){
		$('input:text').setMask();
	}
);

$ajax = new AjaxHandler();

function AjaxHandler() {}

var logged = false;

AjaxHandler.prototype.login = function() {
	if (!logged) {
		var admin = (window.location.href.indexOf("admin") > 0);
		var formObject = $utils.serializeForm("#frm_login");
		if (admin) {
			$(".login_box .error").hide();
			$(".login_box .form").hide();
			$(".login_box .loading").show();
		} else {
			$("#signin_box form").hide();
			$("#signin_box .loading").show();
		}
		$.post("/index.php/admin/login", formObject, $ajax.loginComplete, "json");
	}
	return logged;
}

AjaxHandler.prototype.loginComplete = function(data, textStatus) {
	var admin = (window.location.href.indexOf("admin") > 0);
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			if (admin) {
				$(".login_box .form").show();
				$(".login_box .loading").hide();
				$(".login_box .error").html(data.error);
				$(".login_box .error").show();
			} else {
				alert(data.error);
				$("#signin_box .loading").hide();
				$("#signin_box form").show();
			}
		} else {
			logged = true;
			if (admin) {
				$utils.refresh();
			} else {
				window.location.href = "/index.php/admin/";
			}
		}
	} else {
		$(".login_box .form").show();
		$(".login_box .loading").hide();
		$(".login_box .error").html("Não foi possível efetuar o login.");
		$(".login_box .error").show();
	}
}


AjaxHandler.prototype.addPartner = function() {
	var partner = $utils.serializeForm("#frm_signup");
	
	$("#frm_signup *").removeClass("error");
	
	$(".span_error").html("");
	
	var messages = new Array();
	
	if ($utils.emptyCheck(partner.company_name)) {
		messages.push({message:"Digite a Razão Social",field:"company_name"});
	}
	
	if ($utils.emptyCheck(partner.phone)) {
		messages.push({message:"Informe o telefone para contato",field:"phone"});
	}

	if ($utils.emailCheck(partner.business_mail)) {
		messages.push({message:"Informe um e-mail válido",field:"business_mail"});
	}
	
	if (messages.length == 0) {
		$utils.createMask("#div_signup", 0.5, "#FFF", true);
		$.post("index.php/parceiros/signup", partner, $ajax.addPartnerComplete, "json");
	} else {
		for (i in messages) {
			$("#span_" + messages[i].field).html("(" + messages[i].message + ")");
		}
		$("form *[name='" + messages[0].field + "']").focus();
	}
	return false;
}

AjaxHandler.prototype.addPartnerComplete = function(data, textStatus) {
	$utils.removeMask("#div_signup");
	$("#div_signup").hide();
	$("#div_result h2").html("");
	$("#div_result").show();
	
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			$("#div_result h2").html("Não foi possível realizar o cadastro.<br\>" + data.error);
		} else {
			$("#div_result h2").html("Seu cadastro foi realizado com sucesso.");
		}
	} else {
		$("#div_result h2").html("Não foi possível realizar o cadastro.<br/>0Tente novamente mais tarde");
	}
}

AjaxHandler.prototype.editPartner = function() {
	var partner = $utils.serializeForm("#frm_partner");
	
	$("#frm_partner *").removeClass("error");
	
	var messages = new Array();
	
	if ($utils.emptyCheck(partner.company_name)) {
		messages.push({message:"Digite a Razão Social",field:"company_name"});
	}
	
	if ($utils.emptyCheck(partner.phone)) {
		messages.push({message:"Informe o telefone para contato",field:"phone"});
	}

	if ($utils.emailCheck(partner.business_mail)) {
		messages.push({message:"Informe um e-mail válido",field:"business_mail"});
	}
	
	if (partner.active == "1") {
		if ($utils.emptyCheck(partner.login)) {
			messages.push({message:"Informe um login",field:"login"});
		}
		
		if ($("#chkUpdatePassword").get(0).checked) {
			if (($utils.emptyCheck(partner.password)) || ($utils.trim(partner.password).length < 6)) {
				messages.push({message:"Informe uma senha contendo ao menos 6 caracteres", field:"password"});
			}
		} else {
			delete partner.password;
		}
	} else {
		delete partner.password;
	}

	if (messages.length == 0) {
		$utils.createMask(".form_box", 0.5, "#FFF", true);
		$.post($("#frm_partner").attr("action"), partner, $ajax.editPartnerComplete, "json");
	} else {
		var htmlMessage = "";
		for (i in messages) {
			$(".form *[name='" + messages[i].field + "']").addClass("error");
			htmlMessage += messages[i].message + "<br/>";
		}
		$(".error_info").html(htmlMessage);
	}
	return false;
}

AjaxHandler.prototype.editPartnerComplete = function(data, textStatus) {
	$utils.removeMask(".form_box");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			$(".error_info").html("Não foi possível alterar os dados do parceiro.");
		} else {
			alert("Dados do parceiro alterados com sucesso!");
			window.location = "/index.php/admin/parceiros";
		}
	} else {
		$(".error_info").html("Não foi possível alterar os dados do parceiro.");
	}
}

AjaxHandler.prototype.validateOrder = function(order) {
	var messages = new Array();

	if ($utils.emptyCheck(order.cs_company_name)) {
		messages.push({message:"Digite o nome da empresa cliente.",field:"cs_company_name"});
	}
	
	if ($utils.emptyCheck(order.cs_cnpj)) {
		messages.push({message:"Informe o CNPJ da empresa cliente.",field:"cs_cnpj"});
	}

	if ($utils.emptyCheck(order.cs_address)) {
		messages.push({message:"Informe o endereço da empresa cliente.",field:"cs_address"});
	}
	
	if ($utils.emptyCheck(order.cs_cep)) {
		messages.push({message:"Informe o CEP da empresa cliente.",field:"cs_cep"});
	}
	
	if ($utils.emptyCheck(order.cs_neighborhood)) {
		messages.push({message:"Informe o Bairro da empresa cliente.",field:"cs_neighborhood"});
	}
	
	if ($utils.emptyCheck(order.cs_city)) {
		messages.push({message:"Informe a Cidade da empresa cliente.",field:"cs_city"});
	}
	
	if ($utils.emptyCheck(order.cs_state)) {
		messages.push({message:"Informe o Estado da empresa cliente.",field:"cs_state"});
	}

	if ($utils.emptyCheck(order.cs_phone)) {
		messages.push({message:"Informe o telefone da empresa cliente.",field:"cs_phone"});
	}
	
	if ($utils.emptyCheck(order.cs_phone_contact)) {
		messages.push({message:"Informe o contato telefônico da empresa cliente.",field:"cs_phone_contact"});
	}

	if ($utils.emptyCheck(order.cs_email)) {
		messages.push({message:"Informe o e-mail da empresa cliente.",field:"cs_email"});
	}
	
	if ($utils.emptyCheck(order.in_address)) {
		messages.push({message:"Informe o endereço de instalação.",field:"in_address"});
	}
	
	if ($utils.emptyCheck(order.in_cep)) {
		messages.push({message:"Informe o CEP de instalação.",field:"in_cep"});
	}
	
	if ($utils.emptyCheck(order.in_neighborhood)) {
		messages.push({message:"Informe o Bairro de instalação.",field:"in_neighborhood"});
	}
	
	if ($utils.emptyCheck(order.in_city)) {
		messages.push({message:"Informe a Cidade de instalação.",field:"in_city"});
	}
	
	if ($utils.emptyCheck(order.in_state)) {
		messages.push({message:"Informe o Estado de instalação.",field:"in_state"});
	}

	if ($utils.emptyCheck(order.in_auth_needed)) {
		messages.push({message:"Informe se há necessidade de prévia autorização.",field:"in_auth_needed"});
	}

	if ($utils.emptyCheck(order.in_energy_spot)) {
		messages.push({message:"Informe se há ponto de energia.",field:"in_energy_spot"});
	}
	
	if ($utils.emptyCheck(order.in_connected)) {
		messages.push({message:"Informe se será conectado a switch ou máquina.",field:"in_connected"});
	}
	
	if ($utils.emptyCheck(order.in_lan_ip)) {
		messages.push({message:"Informe o IP.",field:"in_lan_ip"});
	}
	
	if ($utils.emptyCheck(order.in_lan_mask)) {
		messages.push({message:"Informe a máscara LAN.",field:"in_lan_mask"});
	}
	
	if ($utils.emptyCheck(order.in_lan_gateway)) {
		messages.push({message:"Informe o Gateway.",field:"in_lan_gateway"});
	}

	if ($utils.emptyCheck(order.dl_address)) {
		messages.push({message:"Informe o endereço de entrega.",field:"dl_address"});
	}
	
	if ($utils.emptyCheck(order.dl_cep)) {
		messages.push({message:"Informe o CEP de entrega.",field:"dl_cep"});
	}
	
	if ($utils.emptyCheck(order.dl_neighborhood)) {
		messages.push({message:"Informe o Bairro de entrega.",field:"dl_neighborhood"});
	}
	
	if ($utils.emptyCheck(order.dl_city)) {
		messages.push({message:"Informe a Cidade de entrega.",field:"dl_city"});
	}
	
	if ($utils.emptyCheck(order.dl_state)) {
		messages.push({message:"Informe o Estado de entrega.",field:"dl_state"});
	}

	if (order.sl_code != undefined) {
		
		if ($utils.emptyCheck(order.sl_code)) {
			messages.push({message:"Informe o código.",field:"sl_code"});
		}
		
		if ($utils.emptyCheck(order.sl_product_info)) {
			messages.push({message:"Informe o Produto/ Serviço/ Série.",field:"sl_product_info"});
		}
		
		if (($utils.emptyCheck(order.sl_habilitation_fee)) || (parseFloat(order.sl_habilitation_fee) <= 0)) {
			messages.push({message:"Informe o Valor da Habilitação.",field:"sl_habilitation_fee"});
		}
		
		if (($utils.emptyCheck(order.sl_monthly_fee)) || (parseFloat(order.sl_monthly_fee) <= 0)) {
			messages.push({message:"Informe o Valor da Mensalidade.",field:"sl_monthly_fee"});
		}
		
		if (($utils.emptyCheck(order.sl_contract_term)) || (parseInt(order.sl_contract_term) <= 0)) {
			messages.push({message:"Informe o Prazo do Contrato.",field:"sl_contract_term"});
		}

		if ($utils.emptyCheck(order.sl_payment_method)) {
			messages.push({message:"Informe o Tipo Pagamento.",field:"sl_payment_method"});
		}
			
		if (($utils.emptyCheck(order.pn_habilitation_fee)) || (parseFloat(order.pn_habilitation_fee) <= 0)) {
			messages.push({message:"Informe o Valor Habilitação.",field:"pn_habilitation_fee"});
		}
		
		if (($utils.emptyCheck(order.pn_monthly_fee)) || (parseFloat(order.pn_monthly_fee) <= 0)) {
			messages.push({message:"Informe o Valor da Mensalidade.",field:"pn_monthly_fee"});
		}

	}
	
	return messages;
	
}

AjaxHandler.prototype.addOrder = function() {
	var order = $utils.serializeForm("#frm_order");
	
	$("#frm_order *").removeClass("error");

	var messages = $ajax.validateOrder(order);
	
	if (messages.length == 0) {
		$utils.createMask(".form_box", 0.5, "#FFF", true);
		$.post($("#frm_order").attr("action"), order, $ajax.addOrderComplete, "json");
	} else {
		var htmlMessage = "";
		for (i in messages) {
			$(".form *[name='" + messages[i].field + "']").addClass("error");
			htmlMessage += messages[i].message + "<br/>";
		}
		$(".error_info").html(htmlMessage);
	}
	
	return false;
}


AjaxHandler.prototype.addOrderComplete = function(data, textStatus) {
	$utils.removeMask(".form_box");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			$(".error_info").html("Não foi possível cadastrar o pedido.");
		} else {
			alert("Pedido cadastrado com sucesso!\nVocê deve enviar o seu pedido clicando em 'Enviar' na lista de pedidos pendentes.");
			window.location = "/index.php/admin/pedidos";
		}
	} else {
		$(".error_info").html("Não foi possível cadastrar o pedido.");
	}
}

AjaxHandler.prototype.editOrder = function() {
	var order = $utils.serializeForm("#frm_order");
	
	$("#frm_order *").removeClass("error");
	
	var carrier = "";
	
	$("input[id^='chk_carrier']").each(function(){
		if (this.checked) {
			carrier += ", " + this.value;
		}
	})
	
	if (carrier.length > 0) {
		carrier = carrier.substring(1, carrier.length);
	}

	order.sl_carrier = carrier;

	var messages = $ajax.validateOrder(order);
	
	if (messages.length == 0) {
		$utils.createMask(".form_box", 0.5, "#FFF", true);
		$.post($("#frm_order").attr("action"), order, $ajax.editOrderComplete, "json");
	} else {
		var htmlMessage = "";
		for (i in messages) {
			$(".form *[name='" + messages[i].field + "']").addClass("error");
			htmlMessage += messages[i].message + "<br/>";
		}
		$(".error_info").html(htmlMessage);
	}
	
	return false;
}

AjaxHandler.prototype.editOrderComplete = function(data, textStatus) {
	$utils.removeMask(".form_box");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			$(".error_info").html("Não foi possível alterar o pedido.");
		} else {
			alert("Pedido alterado com sucesso!");
			window.location = "/index.php/admin/pedidos";
		}
	} else {
		$(".error_info").html("Não foi possível alterar o pedido.");
	}
}

AjaxHandler.prototype.sendOrder = function(action) {
	var send = confirm("Deseja enviar o pedido para aprovação?");
	if (send) {
		$utils.createMask("table.list", 0.5, "#FFF", true);
		$.post(action, null, $ajax.sendOrderComplete, "json");
	}
}

AjaxHandler.prototype.sendOrderComplete = function(data, textStatus) {
	$utils.removeMask("table.list");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			alert("Não foi possível enviar o pedido.\n" + data.error);
		} else {
			alert("Pedido enviado com sucesso!");
			window.location = "/index.php/admin/pedidos";
		}
	} else {
		alert("Não foi possível enviar o pedido.\n" + data.error);
	}
}

AjaxHandler.prototype.editAccount = function() {
	var partner = $utils.serializeForm("#frm_partner");
	
	$("#frm_partner *").removeClass("error");
	
	var messages = new Array();
	
	if ($utils.emptyCheck(partner.company_name)) {
		messages.push({message:"Digite a Razão Social",field:"company_name"});
	}
	
	if ($utils.emptyCheck(partner.phone)) {
		messages.push({message:"Informe o telefone para contato",field:"phone"});
	}

	if ($utils.emailCheck(partner.business_mail)) {
		messages.push({message:"Informe um e-mail válido",field:"business_mail"});
	}
	

	if ($("#chkUpdatePassword").get(0).checked) {
		if ($utils.emptyCheck(partner.current_password)) {
			messages.push({message:"Informe sua senha atual", field:"current_password"});
		}
		
		if (($utils.emptyCheck(partner.password)) || ($utils.trim(partner.password).length < 6)) {
			messages.push({message:"Informe uma nova senha contendo ao menos 6 caracteres", field:"password"});
		}
		
		if ($utils.emptyCheck(partner.password_match)) {
			messages.push({message:"Informe a confirmação de senha", field:"password_match"});
		}
		
		if (partner.password != partner.password_match) {
			messages.push({message:"Nova senha e confirmação de senha devem ser iguais", field:"password_match"});
		}

	} else {
		delete partner.password;
		delete partner.current_password;
	}

	delete partner.password_match;

	if (messages.length == 0) {
		$utils.createMask(".form_box", 0.5, "#FFF", true);
		$.post($("#frm_partner").attr("action"), partner, $ajax.editAccountComplete, "json");
	} else {
		var htmlMessage = "";
		for (i in messages) {
			$(".form *[name='" + messages[i].field + "']").addClass("error");
			htmlMessage += messages[i].message + "<br/>";
		}
		$(".error_info").html(htmlMessage);
	}
	return false;
}

AjaxHandler.prototype.editAccountComplete = function(data, textStatus) {
	$utils.removeMask(".form_box");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			alert("Não foi possível alterar os dados da conta.");
			$(".error_info").html(data.error);
		} else {
			alert("Dados da conta alterados com sucesso!");
			window.location = "/index.php/admin/minha_conta";
		}
	} else {
		$(".error_info").html("Não foi possível alterar os dados da conta.");
	}
}

AjaxHandler.prototype.approveOrder = function(action) {
	var send = confirm("Deseja aprovar o pedido?");
	if (send) {
		$utils.createMask("table.list", 0.5, "#FFF", true);
		$.post(action, null, $ajax.approveOrderComplete, "json");
	}
}

AjaxHandler.prototype.approveOrderComplete = function(data, textStatus) {
	$utils.removeMask("table.list");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			alert("Não foi possível aprovar o pedido.\n" + data.error);
		} else {
			alert("Pedido aprovado com sucesso!");
			window.location = "/index.php/admin/pedidos";
		}
	} else {
		alert("Não foi possível aprovar o pedido");
	}
}

AjaxHandler.prototype.editUser = function(self) {
	var user = $utils.serializeForm("#frm_user");
	
	$("#frm_user *").removeClass("error");
	$(".error_info").html("");
	
	var messages = new Array();
	
	if ($utils.emailCheck(user.email)) {
		messages.push({message:"E-mail inválido",field:"email"});
	}
	
	if ($utils.emptyCheck(user.name)) {
		messages.push({message:"Informe o nome do usuário",field:"name"});
	}
	
	if ($("#chkUpdatePassword").get(0)) {
		
		if ($("#chkUpdatePassword").get(0).checked) {
			if (user.current_password != undefined) {
				if ($utils.emptyCheck(user.current_password)) {
					messages.push({message:"Informe sua senha atual", field:"current_password"});
				}
			}
			
			if (($utils.emptyCheck(user.password)) || ($utils.trim(user.password).length < 6)) {
				messages.push({message:"Informe uma nova senha contendo ao menos 6 caracteres", field:"password"});
			}
			
			if ($utils.emptyCheck(user.password_match)) {
				messages.push({message:"Informe a confirmação de senha", field:"password_match"});
			}
			
			if (user.password != user.password_match) {
				messages.push({message:"Nova senha e confirmação de senha devem ser iguais", field:"password_match"});
			}
		} else {
			delete user.password;
			delete user.current_password;
		}
	}

	delete user.password_match;

	if (messages.length == 0) {
		$utils.createMask(".form_box", 0.5, "#FFF", true);
		if (self == 1) {
			$.post($("#frm_user").attr("action"), user, $ajax.editUserSelfComplete, "json");
		} else {
			$.post($("#frm_user").attr("action"), user, $ajax.editUserComplete, "json");
		}
		
	} else {
		var htmlMessage = "";
		for (i in messages) {
			$(".form *[name='" + messages[i].field + "']").addClass("error");
			htmlMessage += messages[i].message + "<br/>";
		}
		$(".error_info").html(htmlMessage);
	}

	return false;
}

AjaxHandler.prototype.editUserComplete = function(data, textStatus) {
	$utils.removeMask(".form_box");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			alert("Não foi possível alterar os dados do usuário.");
			$(".error_info").html(data.error);
		} else {
			alert("Dados do usuário alterados com sucesso!");
			window.location = "/index.php/admin/usuarios";
		}
	} else {
		$(".error_info").html("Não foi possível alterar os dados do usuário.");
	}
}

AjaxHandler.prototype.editUserSelfComplete = function(data, textStatus) {
	$utils.removeMask(".form_box");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			alert("Não foi possível alterar os dados da conta.");
			$(".error_info").html(data.error);
		} else {
			alert("Dados da conta alterados com sucesso!");
			window.location = "/index.php/admin/minha_conta";
		}
	} else {
		$(".error_info").html("Não foi possível alterar os dados da conta.");
	}
}

AjaxHandler.prototype.addUser = function() {
	var user = $utils.serializeForm("#frm_user");
	
	$("#frm_user *").removeClass("error");
	$(".error_info").html("");
	
	var messages = new Array();
	
	if ($utils.emailCheck(user.email)) {
		messages.push({message:"E-mail inválido",field:"email"});
	}
	
	if ($utils.emptyCheck(user.name)) {
		messages.push({message:"Informe o nome do usuário",field:"name"});
	}
	
	if (($utils.emptyCheck(user.password)) || ($utils.trim(user.password).length < 6)) {
		messages.push({message:"Informe uma nova senha contendo ao menos 6 caracteres", field:"password"});
	}
			
	if ($utils.emptyCheck(user.password_match)) {
		messages.push({message:"Informe a confirmação de senha", field:"password_match"});
	}
			
	if (user.password != user.password_match) {
		messages.push({message:"Nova senha e confirmação de senha devem ser iguais", field:"password_match"});
	}

	delete user.password_match;

	if (messages.length == 0) {
		$utils.createMask(".form_box", 0.5, "#FFF", true);
		$.post($("#frm_user").attr("action"), user, $ajax.addUserComplete, "json");
	} else {
		var htmlMessage = "";
		for (i in messages) {
			$(".form *[name='" + messages[i].field + "']").addClass("error");
			htmlMessage += messages[i].message + "<br/>";
		}
		$(".error_info").html(htmlMessage);
	}

	return false;
}

AjaxHandler.prototype.addUserComplete = function(data, textStatus) {
	$utils.removeMask(".form_box");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			alert("Não foi possível cadastrar o usuário.");
			$(".error_info").html(data.error);
		} else {
			alert("Usuário cadastrado com sucesso!");
			window.location = "/index.php/admin/usuarios";
		}
	} else {
		$(".error_info").html("Não foi cadastrar o usuário");
	}
}

AjaxHandler.prototype.removeUser = function(action) {
	var send = confirm("Deseja excluir o usuário?");
	if (send) {
		$utils.createMask("table.list", 0.5, "#FFF", true);
		$.post(action, null, $ajax.removeUserComplete, "json");
	}
}

AjaxHandler.prototype.removeUserComplete = function(data, textStatus) {
	$utils.removeMask("table.list");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			alert("Não foi possível remover o usuário.\n" + data.error);
		} else {
			alert("Usuário removido com sucesso!");
			window.location = "/index.php/admin/usuarios";
		}
	} else {
		alert("Não foi possível remover o usuário");
	}
}

AjaxHandler.prototype.removePartner = function(action) {
	var send = confirm("ATENÇÃO: Todos os pedidos deste parceiro também serão removidos.\n\nDeseja excluir o parceiro?");
	if (send) {
		$utils.createMask("table.list", 0.5, "#FFF", true);
		$.post(action, null, $ajax.removePartnerComplete, "json");
	}
}

AjaxHandler.prototype.removePartnerComplete = function(data, textStatus) {
	$utils.removeMask("table.list");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			alert("Não foi possível remover o parceiro.\n" + data.error);
		} else {
			alert("Parceiro removido com sucesso!");
			window.location = "/index.php/admin/parceiros";
		}
	} else {
		alert("Não foi possível remover o parceiro");
	}
}

AjaxHandler.prototype.editConfig = function() {
	var config = $utils.serializeForm("#frm_config");
	
	$("#frm_config *").removeClass("error");
	$(".error_info").html("");
	
	var messages = new Array();
	
	if ($utils.emailCheck(config.email)) {
		messages.push({message:"E-mail inválido",field:"email"});
	}
	
	if (config.report_partner == undefined) {
		config.report_partner = 0;
	} else {
		config.report_partner = 1;
	}
	
	if (messages.length == 0) {
		$utils.createMask(".form_box", 0.5, "#FFF", true);
		$.post($("#frm_config").attr("action"), config, $ajax.editConfigComplete, "json");
	} else {
		var htmlMessage = "";
		for (i in messages) {
			$(".form *[name='" + messages[i].field + "']").addClass("error");
			htmlMessage += messages[i].message + "<br/>";
		}
		$(".error_info").html(htmlMessage);
	}

	return false;
}

AjaxHandler.prototype.editConfigComplete = function(data, textStatus) {
	$utils.removeMask(".form_box");
	if (textStatus == "success") {
		if ((data.error) && (data.result == "NOK")) {
			alert("Não foi possível salvar as configurações.");
			$(".error_info").html(data.error);
		} else {
			alert("Configurações salvas com sucesso!");
			window.location = "/index.php/admin/config";
		}
	} else {
		$(".error_info").html("Não foi possível salvar as configurações");
	}
}
