$(function () {
$("#monto_otro").blur(function () {
if ($(this).val() < 3000) {
alert("El monto debe ser superior a $3.000");
$(this).val("");
}
});
$("#MedioPago").change(function () {
if ($(this).val() == "Enel") {
if (confirm("Usted será redireccionado al medio de pago enel, ¿Desea continuar? ")) {
location.href = "https://" + $("#url_enel").val() + "?q=" + Base64.encode($("#msform").serialize());
return false;
}
$(this).val("");
return false;
}
$("#textp_tipo_pago").unbind().removeClass("numeric")
if ($(this).val() == "Tarjetas de Crédito" || $(this).val() == "Tarjetas de Casas Comerciales") {
$("#textp_tipo_pago").keydown(function (event) {
return NumericField($(this).val(), event, true);
});
$("#textp_tipo_pago").addClass("numeric")
if ($(this).val() == "Tarjetas de Crédito") {
$("#textp_tipo_pago").blur(function () {
if ($(this).val() == "") {
return false;
}
if ($("#tipo_pago").val() == "Diners") {
if ($(this).val().length != 14 && $(this).val() != "") {
alert("El número de tarjeta ingresado debe tener 14 digitos");
$(this).val("");
return false;
}
}
if ($("#tipo_pago").val() == "Visa" || $("#tipo_pago").val() == "Mastercard" || $("#tipo_pago").val() == "Magna") {
if ($(this).val().length != 16 && $(this).val() != "") {
alert("El número de tarjeta ingresado debe tener 16 digitos");
$(this).val("");
return false;
}
if ($("#tipo_pago").val() == "Visa") {
var str = $(this).val();
var res = str.substring(0, 1);
if (res != 4) {
alert("Número de tarjeta invalido.");
$(this).val("");
return false;
}
}
if ($("#tipo_pago").val() == "Mastercard") {
var str = $(this).val();
var res = str.substring(0, 1);
if (res != 5) {
alert("Número de tarjeta invalido.");
$(this).val("");
return false;
}
}
}
if ($("#tipo_pago").val() == "American Express") {
if ($(this).val().length != 15 && $(this).val() != "") {
alert("El número de tarjeta ingresado debe tener 15 digitos");
$(this).val("");
return false;
}
}
if ($("#tipo_pago").val() != "") {
$.post("./", {
"_ajax_": "vlidarNumeroTarjeta",
"numero_tarjeta": $(this).val()
}, function (data) {
if (data != 1) {
alert("Número de tarjeta invalido.");
$("#textp_tipo_pago").val("");
return false;
}
})
}
});
}
}
});
//GRACIAS
alertify.genericDialog || alertify.dialog('genericDialog', function () {
return {
main: function (content) {
this.setContent(content);
},
setup: function () {
return {
focus: {
element: function () {
return this.elements.body.querySelector(this.get('selector'));
},
select: true
},
options: {
basic: true,
maximizable: false,
resizable: false,
padding: false
}
};
},
settings: {
selector: undefined
}
};
});
//FIN GRACIAS
/*PASOS FORM*/
var current_fs, next_fs, previous_fs; //fieldsets
var left, opacity, scale; //fieldset properties which we will animate
var animating; //flag to prevent quick multi-click glitches
$(".next").click(function () {
if (animating) return false;
animating = true;
var obliga = Array();
var valid = true;
$("#paso_1_fieldset").find(".required").each(function () {
if ($(this).val() == "") {
animating = "";
valid = false;
obliga.push($(this).attr("placeholder"));
}
});
obliga = obliga.join(", ");
if (valid == false) {
alert("Los siguientes campos son obligatoros : " + obliga);
return false;
}
if ($("input[name='consulta_id']").val() == "") {
$.post("https://santiago.ayudabomberos.cl/?paso=10", $("#msform").serializeArray(), function (e) {
//alert(e);
$("input[name='consulta_id']").val(e);
$("#consulta_id").val(e);
}, "jsonp");
}
current_fs = $(this).parent();
next_fs = $(this).parent().next();
//activate next step on progressbar using the index of next_fs
$("#progressbar li").eq($("fieldset").index(next_fs)).addClass("active");
//show the next fieldset
next_fs.show();
//hide the current fieldset with style
current_fs.animate({
opacity: 0
}, {
step: function (now, mx) {
//as the opacity of current_fs reduces to 0 - stored in "now"
//1. scale current_fs down to 80%
scale = 1 - (1 - now) * 0.2;
//2. bring next_fs from the right(50%)
left = (now * 50) + "%";
//3. increase opacity of next_fs to 1 as it moves in
opacity = 1 - now;
current_fs.css({
'transform': 'scale(' + scale + ')',
'position': 'absolute'
});
next_fs.css({
'left': left,
'opacity': opacity
});
},
duration: 800,
complete: function () {
current_fs.hide();
animating = false;
},
//this comes from the custom easing plugin
easing: 'easeInOutBack'
});
});
$(".previous").click(function () {
if (animating) return false;
animating = true;
current_fs = $(this).parent();
previous_fs = $(this).parent().prev();
//de-activate current step on progressbar
$("#progressbar li").eq($("fieldset").index(current_fs)).removeClass("active");
//show the previous fieldset
previous_fs.show();
//hide the current fieldset with style
current_fs.animate({
opacity: 0
}, {
step: function (now, mx) {
//as the opacity of current_fs reduces to 0 - stored in "now"
//1. scale previous_fs from 80% to 100%
scale = 0.8 + (1 - now) * 0.2;
//2. take current_fs to the right(50%) - from 0%
left = ((1 - now) * 50) + "%";
//3. increase opacity of previous_fs to 1 as it moves in
opacity = 1 - now;
current_fs.css({
'left': left
});
previous_fs.css({
'transform': 'scale(' + scale + ')',
'opacity': opacity
});
},
duration: 800,
complete: function () {
current_fs.hide();
animating = false;
},
//this comes from the custom easing plugin
easing: 'easeInOutBack'
});
});
/*FIN*/
$("#telefono").keyup(function (e) { //the "phoneNumber" can be any other input field ID
if (e.keyCode == 8) { //trap the backspace key so that when deleting value, "checkPhoneNumber" will not be called.
//do nothing
} else {
checkPhoneNumber("telefono"); //call checkPhoneNumber function and put "phoneNumber" field ID as parameter
}
});
function checkPhoneNumber(id) {
var phoneValue = $("#" + id).val(); //get current field value
var phoneLength = $("#" + id).val().length; //get current field value length
if (phoneLength == 1) { //if current length is 3, then insert a hyphen
phoneValue += "-";
} else if (phoneLength == 6) { //if current length is 7, then insert a hyphen
phoneValue += "-";
}
//check is_digit for new character; if not, then use substr to get rid of it
var tempValue = phoneValue.replace(/-/g, ""); //assign tempValue with phoneValue, which performs global string replacement (replace "-" with nothing)
if (is_digit(tempValue) == false) { //check if all input characters are digits
phoneValue = (phoneValue.substr(0, phoneLength - 1)); //if not, then use substr to get rid of the last entered character
}
//limit the phone value to 12 character
if (phoneLength > 11) {
phoneValue = (phoneValue.substr(0, 11)); //if field value length is greater than 12, then use substr to get rid of last character
}
$("#" + id).val(phoneValue);
}
function is_digit(input) {
if (isNaN(input)) {
return false;
} else {
return true;
}
}
$("#msform").submit(function (e) {
e.preventDefault();
var obliga = Array();
var valid = true;
$("#paso_2_fieldset").find(".required").each(function () {
if ($(this).val() == "") {
animating = "";
valid = false;
obliga.push($(this).attr("placeholder"));
}
});
obliga = obliga.join(", ");
if (valid == false) {
alert("Los siguientes campos son obligatoros : " + obliga);
return false;
}
$.post("./", $(this).serializeArray(), function () {
$('#loginForm').removeClass("hide");
// alertify.genericDialog ( $('#loginForm')[0]).set({onshow:null, onclose:function(){ location.href=$("#url_cliente").html();}});
alertify.genericDialog($('#loginForm')[0]).set({
onshow: null,
onclose: function () {}
});
}, "jsonp");
return false;
});
$("#MedioPago").change(function () {
//Número Cuenta/Tarjeta/Movistar:
$("#textp_tipo_pago").val("");
$("#tipo_pago_label").html("");
$titulo = "Seleccione Medio de Pago";
$("#datos_pago_delefono").addClass("hide")
$("#rut_titular_telefono").removeClass("required")
$("#titular_telefono").removeClass("required")
$("#tipo_pago").removeClass("required")
$("#textp_tipo_pago").removeClass("required")
$("#fecha_vencimiento").addClass("hide")
$("#fecha_vencimiento_mes").removeClass("required")
$("#fecha_vencimiento_anno").removeClass("required")
var option = '';
if ($(this).val() == "Tarjetas de Crédito") {
$("#tipo_pago_label").html("Tarjeta");
$("#tipo_pago").attr("placeholder", "Tarjeta");
$titulo = "Número de Tarjeta";
$("#fecha_vencimiento").removeClass("hide")
$("#fecha_vencimiento_mes").addClass("required")
$("#textp_tipo_pago").addClass("required")
$("#fecha_vencimiento_anno").addClass("required")
option = '';
} else if ($(this).val() == "Cta. Cte. Bancaria") {
$("#tipo_pago_label").html("Banco");
$("#tipo_pago").attr("placeholder", "Banco");
$("#tipo_pago").addClass("required")
$("#textp_tipo_pago").addClass("required")
$titulo = "Número de Cuenta";
option = '';
} else if ($(this).val() == "Cuenta Rut") {
$("#tipo_pago_label").html("Banco");
$("#tipo_pago").attr("placeholder", "Banco");
$("#tipo_pago").addClass("required")
$("#textp_tipo_pago").addClass("required")
$titulo = "Número de Cuenta";
option = '';
} else if ($(this).val() == "Cuenta Vista") {
$("#tipo_pago_label").html("Banco");
$("#tipo_pago").attr("placeholder", "Banco");
$("#tipo_pago").addClass("required")
$("#textp_tipo_pago").addClass("required")
$titulo = "Número de Cuenta";
option = '';
} else if ($(this).val() == "Tarjetas de Casas Comerciales") {
$("#tipo_pago_label").html("Casa Comercial");
$("#tipo_pago").attr("placeholder", "Casa Comercial");
$("#tipo_pago").addClass("required")
$("#textp_tipo_pago").addClass("required")
$titulo = "Número de Tarjeta";
option = '';
} else if ($(this).val() == "Número Cliente Enel") {
//$("#tipo_pago").removeClass("required")
$("#tipo_pago_label").html("Compañia");
$("#tipo_pago").attr("placeholder", "Compañia");
$("#tipo_pago").addClass("required")
//$("#textp_tipo_pago").addClass("required")
$("#rut_titular_telefono").addClass("required")
$("#titular_telefono").addClass("required")
$titulo = "Número de Cliente ENEL";
$("#datos_pago_delefono").removeClass("hide")
option = '';
}
$("#textp_tipo_pago").attr("placeholder", $titulo);
$("#tipo_pago").html(option);
if ($(this).val() == "") {
$("#tipo_pago").addClass("hide");
$("#textp_tipo_pago").addClass("hide");
$("#label_tipo_pago").addClass("hide");
} else {
$("#tipo_pago").removeClass("hide");
$("#textp_tipo_pago").removeClass("hide");
$("#label_tipo_pago").removeClass("hide");
}
});
$(".rut").Rut({
on_error: function () {
alert("Rut no valido");
}
});
$(".numero").keydown(function (event) {
return NumericField($(this).val(), event, true);
});
$("#monto_seleccionado").change(function () {
if ($(this).val() == "Otro") {
$("#monto_otro").removeClass("hide");
$("#monto_otro").addClass("required")
} else {
$("#monto_otro").removeClass("required")
$("#monto_otro").addClass("hide");
}
$("#monto_otro").val("")
});
})
var strUserAgent = navigator.userAgent.toLowerCase();
var isIE = strUserAgent.indexOf('msie') > -1;
var reKeyboardChars = /[\x03\x08\x09\x0D\x16\x18\x1A\x2E\x23\x24\x25\x26\x27\x28\x2D]/;
var reNumber = /^((\d{1,3}\.)*\d{3}|\d*,{0,1}\d+|(\d{1,3}\.)*\d{3},{0,1}\d+|\d*)$/;
function NumericField(str, objEvent, isFloat) {
oldValue = str;
strKey = GetChar(objEvent);
if (((objEvent.which) ? objEvent.which : event.keyCode) == 13
|| (((objEvent.which) ? objEvent.which : event.keyCode) == 190 && isFloat))
return true;
if (!KeyNumber(objEvent)
&& !reKeyboardChars.test(strKey)
&& !(objEvent.ctrlKey
&& reClipboard.test(strKey)))
return false;
return true;
}
function KeyNumber(objEvent) {
return reNumber.test(GetChar(objEvent));
}
function GetChar(objEvent) {
var arrKeys = new Array();
arrKeys[96] = '0';
arrKeys[97] = '1';
arrKeys[98] = '2';
arrKeys[99] = '3';
arrKeys[100] = '4';
arrKeys[101] = '5';
arrKeys[102] = '6';
arrKeys[103] = '7';
arrKeys[104] = '8';
arrKeys[105] = '9';
arrKeys[111] = '/';
arrKeys[193] = '/';
iKeyCode = GetKeyCode(objEvent);
if (arrKeys[iKeyCode] != null)
return arrKeys[iKeyCode];
return String.fromCharCode(iKeyCode);
}
function GetKeyCode(objEvent) {
if (isIE)
return objEvent.keyCode;
return objEvent.which;
}
$("body").on("blur", ".email", function () {
if (!/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test($(this).val())) {
$(this).val("");
alert("Email inválido");
}
});
var Base64 = {
_keyStr: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
encode: function (e) {
var t = "";
var n, r, i, s, o, u, a;
var f = 0;
e = Base64._utf8_encode(e);
while (f < e.length) {
n = e.charCodeAt(f++);
r = e.charCodeAt(f++);
i = e.charCodeAt(f++);
s = n >> 2;
o = (n & 3) << 4 | r >> 4;
u = (r & 15) << 2 | i >> 6;
a = i & 63;
if (isNaN(r)) {
u = a = 64
} else if (isNaN(i)) {
a = 64
}
t = t + this._keyStr.charAt(s) + this._keyStr.charAt(o)
+ this._keyStr.charAt(u) + this._keyStr.charAt(a)
}
return t
},
decode: function (e) {
var t = "";
var n, r, i;
var s, o, u, a;
var f = 0;
e = e.replace(/[^A-Za-z0-9\+\/\=]/g, "");
while (f < e.length) {
s = this._keyStr.indexOf(e.charAt(f++));
o = this._keyStr.indexOf(e.charAt(f++));
u = this._keyStr.indexOf(e.charAt(f++));
a = this._keyStr.indexOf(e.charAt(f++));
n = s << 2 | o >> 4;
r = (o & 15) << 4 | u >> 2;
i = (u & 3) << 6 | a;
t = t + String.fromCharCode(n);
if (u != 64) {
t = t + String.fromCharCode(r)
}
if (a != 64) {
t = t + String.fromCharCode(i)
}
}
t = Base64._utf8_decode(t);
return t
},
_utf8_encode: function (e) {
e = e.replace(/\r\n/g, "\n");
var t = "";
for (var n = 0; n < e.length; n++) {
var r = e.charCodeAt(n);
if (r < 128) {
t += String.fromCharCode(r)
} else if (r > 127 && r < 2048) {
t += String.fromCharCode(r >> 6 | 192);
t += String.fromCharCode(r & 63 | 128)
} else {
t += String.fromCharCode(r >> 12 | 224);
t += String.fromCharCode(r >> 6 & 63 | 128);
t += String.fromCharCode(r & 63 | 128)
}
}
return t
},
_utf8_decode: function (e) {
var t = "";
var n = 0;
var r = c1 = c2 = 0;
while (n < e.length) {
r = e.charCodeAt(n);
if (r < 128) {
t += String.fromCharCode(r);
n++
} else if (r > 191 && r < 224) {
c2 = e.charCodeAt(n + 1);
t += String.fromCharCode((r & 31) << 6 | c2 & 63);
n += 2
} else {
c2 = e.charCodeAt(n + 1);
c3 = e.charCodeAt(n + 2);
t += String.fromCharCode((r & 15) << 12 | (c2 & 63)
<< 6 | c3 & 63);
n += 3
}
}
return t
}
}