var $j = jQuery.noConflict();
$j(document).ready(inicializar);

var RegExPattern_email = /[\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{2,}\.)[\w-]{2,4}/;

function inicializar() {
    $j("#ingresar").click(ingresar);
    $j("#enviar_contacto").click(enviar_contacto);
    $j("#cambiar_contrasena").click(cambiar_contrasena);
    $j("#form_pag_ppal").submit(validar_pag_ppal);
    $j("#form_pag_contacto").submit(validar_pag_contacto);
    $j("#form_categoria").submit(validar_categoria);
    $j("#form_subcategoria").submit(validar_subcategoria);
    $j("#form_producto").submit(validar_producto);
    $j("#form_slide").submit(validar_slide);
    $j("#form_newsletter").submit(validar_newsletter);

    if (document.getElementById("subcategoriasInactivas"))
        listarSubcategoriasInactivas();
    if (document.getElementById("productosInactivos"))
        listarProductosInactivos();
    if (document.getElementById("newslettersInactivos"))
        listarNewslettersInactivos();
    if (document.getElementById("slideInicioInactivas"))
        listarSlideInicioInactivas();
    if (document.getElementById("slideCategoriasInactivas"))
        listarSlideCategoriasInactivas();
}

function ingresar() {
    $j("#error_ingresar").html("");
    var pUsuario = $j("#usuario").attr("value");
    var pContrasena = $j("#contrasena").attr("value");

    if (pUsuario == "" || pContrasena == "") {
        $j("#error_ingresar").html("Por favor, complete ambos campos");
    }
    else {
        $j.ajax({
            url:"consulta.php",
            type: "POST",
            data: ({
                usuario: pUsuario,
                contrasena: pContrasena,
                accion: "validarUsuario"
            }),
            success:exito_validar,
            async:true
        });
    }
}

function exito_validar (msg) {
    if (msg=='') {
        $j("#error_ingresar").html("Usuario o contraseña no válido");
    }
    else {
        location.href = "administrador.php";
    }
}

function validar_pag_ppal() {
    $j("#error_pag_ppal").html("");
    var titulo = $j("#titulo").attr("value");
    var texto = tinyMCE.get('texto').getContent();
    var cabezal_1 = $j("#cabezal_1").attr("value");
    var cabezal_2 = $j("#cabezal_2").attr("value");
    var cabezal_3 = $j("#cabezal_3").attr("value");

    var error = "";

    if (titulo == "")
        error += "- ingrese título<br />";

    if (texto == "")
        error += "- ingrese texto<br />";

    if (cabezal_1 == "")
        error += "- ingrese cabezal 1<br />";

    if (cabezal_2 == "")
        error += "- ingrese cabezal 2<br />";

    if (cabezal_3 == "")
        error += "- ingrese cabezal 3<br />";

    if (error == "") {
        return true;
    }
    else {
        $j("#error_pag_ppal").html(error);
        return false;
    }
}

function validar_pag_contacto() {
    $j("#error_pag_contacto").html("");
    var titulo = $j("#titulo").attr("value");
    var texto = tinyMCE.get('texto').getContent();
    var cabezal_1 = $j("#cabezal_1").attr("value");
    var cabezal_2 = $j("#cabezal_2").attr("value");
    var cabezal_3 = $j("#cabezal_3").attr("value");

    var error = "";

    if (titulo == "")
        error += "- ingrese título<br />";

    if (texto == "")
        error += "- ingrese texto<br />";

    if (cabezal_1 == "")
        error += "- ingrese cabezal 1<br />";

    if (cabezal_2 == "")
        error += "- ingrese cabezal 2<br />";

    if (cabezal_3 == "")
        error += "- ingrese cabezal 3<br />";

    if (error == "") {
        return true;
    }
    else {
        $j("#error_pag_contacto").html(error);
        return false;
    }
}

function enviar_contacto() {
    $j("#error_contacto").html("");
    var error = "";
    var pNombre = $j("#nombre").attr("value");
    var pEmail = $j("#email").attr("value");
    var pTelefono = $j("#telefono").attr("value");
    var pConsulta = $j("#consulta").attr("value");

    if (pNombre == "")
        error +=  "- ingrese nombre <br />";
    
    if (pEmail == "") {
        error +=  "- ingrese email <br />";
    }
    else {
        var emailValido = validar_email(pEmail);
        if (emailValido == false){
            error = "- el email ingresado no es válido <br />";
        }
    }
    if (pConsulta == "")
        error +=  "- ingrese consulta <br />";

    if (error != "") {
        $j("#error_contacto").html(error);
    }
    else {
        $j.ajax({
            url:"consulta.php",
            type: "POST",
            data: ({
                frm_contacto_nombre: pNombre,
                frm_contacto_email: pEmail,
                frm_contacto_telefono: pTelefono,
                frm_contacto_consulta: pConsulta,
                accion: "frm_contacto"
            }),
            beforeSend: antes_frm_contacto,
            success:exito_frm_contacto,
            async:true
        });
    }
}

function antes_frm_contacto() {
    $j("#error_contacto").html("Enviando información...");
}

function exito_frm_contacto(msg) {
    if(msg) {
        $j("#nombre").attr("value",  "");
        $j("#email").attr("value",  "");
        $j("#telefono").attr("value",  "");
        $j("#consulta").attr("value",  "");
        $j("#error_contacto").html("Su consulta ha sido enviada. Nos pondremos en contacto a la brevedad.");
    }
    else
        $j("#error_contacto").html("Ocurrió un error durante el envío. Por favor, intente nuevamente.");
}

function validar_categoria() {
    $j("#error_categoria").html("");
    var nombre = $j("#nombre").attr("value");
    var cabezal_1 = $j("#cabezal_1").attr("value");
    var cabezal_2 = $j("#cabezal_2").attr("value");
    var cabezal_3 = $j("#cabezal_3").attr("value");

    var error = "";

    if (nombre == "")
        error += "- ingrese nombre<br />";

    if (cabezal_1 == "")
        error += "- ingrese cabezal 1<br />";

    if (cabezal_2 == "")
        error += "- ingrese cabezal 2<br />";

    if (cabezal_3 == "")
        error += "- ingrese cabezal 3<br />";

    if (error == "") {
        return true;
    }
    else {
        $j("#error_categoria").html(error);
        return false;
    }
}

function listarSubcategoriasInactivas() {
    $j.ajax({
        url:"consulta.php",
        type: "POST",
        dataType: "json",
        data: ({
            accion: "listarSubcategoriasInactivas"
        }),
        success:exito_listar_subcategorias_inactivas,
        async:true
    });
}

function exito_listar_subcategorias_inactivas(msg) {
    if (msg==0) $j("#subcategoriasInactivas").html("<p>No hay subcategorías inactivas</p>");
    else {
        var subcategorias = "";
        for (var i=0; i<msg.length; i++) {
            subcategorias += "<p>" + msg[i].nombre + " | <a href='ADM_activarSubcategoria.php?subcat=" + msg[i].id + "'>Activar</a></p>";
        }
        $j("#subcategoriasInactivas").html(subcategorias);
    }
}

function validar_subcategoria() {
    $j("#error_subcategoria").html("");
    var nombre = $j("#nombre").attr("value");
    var cabezal_1 = $j("#cabezal_1").attr("value");
    var cabezal_2 = $j("#cabezal_2").attr("value");
    var cabezal_3 = $j("#cabezal_3").attr("value");

    var error = "";

    if (nombre == "")
        error += "- ingrese nombre<br />";

    if (cabezal_1 == "")
        error += "- ingrese cabezal 1<br />";

    if (cabezal_2 == "")
        error += "- ingrese cabezal 2<br />";

    if (cabezal_3 == "")
        error += "- ingrese cabezal 3<br />";

    if (error == "") {
        return true;
    }
    else {
        $j("#error_subcategoria").html(error);
        return false;
    }
}

function listarProductosInactivos() {
    $j.ajax({
        url:"consulta.php",
        type: "POST",
        dataType: "json",
        data: ({
            accion: "listarProductosInactivos"
        }),
        success:exito_listar_productos_inactivos,
        async:true
    });
}

function exito_listar_productos_inactivos(msg) {
    if (msg==0) $j("#productosInactivos").html("<p>No hay productos inactivos</p>");
    else {
        var productos = "";
        for (var i=0; i<msg.length; i++) {
            productos += "<div id='producto_inactivo'>";
            productos += "<p>" + msg[i].cliente + " - " + msg[i].ubicacion + " | <a href='ADM_activarProducto.php?producto=" + msg[i].id + "'>Activar</a></p>";
            productos += "<p><img src='imagenes/productos/" + msg[i].imagen + "' alt='" + msg[i].cliente + " - " + msg[i].ubicacion + "' class='producto_inactivo' /></p>";
            productos += "</div>";
        }
        $j("#productosInactivos").html(productos);
    }
}

function listarNewslettersInactivos() {
    $j.ajax({
        url:"consulta.php",
        type: "POST",
        dataType: "json",
        data: ({
            accion: "listarNewslettersInactivos"
        }),
        success:exito_listar_newsletters_inactivos,
        async:true
    });
}

function exito_listar_newsletters_inactivos(msg) {
    if (msg==0) $j("#newslettersInactivos").html("<p>No hay newsletters inactivos</p>");
    else {
        var newsletters = "";
        for (var i=0; i<msg.length; i++) {
            newsletters += "<div id='producto_inactivo'>";
            newsletters += "<p>" + msg[i].nombre + " | <a href='ADM_activarNewsletter.php?newsletter=" + msg[i].id + "'>Activar</a></p>";
            newsletters += "</div>";
        }
        $j("#newslettersInactivos").html(newsletters);
    }
}

function validar_producto() {
    $j("#error_producto").html("");
    var id = document.getElementById("id");
    var email = document.getElementById("email");
    var cliente = $j("#cliente").attr("value");
//    var ubicacion = $j("#ubicacion").attr("value");
    var imagen = $j("#imagen_producto").attr("value");
    var imagen_gde = $j("#imagen_producto_gde").attr("value");
    var detalle = tinyMCE.get('detalle').getContent();

    var error = "";

    if (cliente == "")
        error += "- ingrese cliente<br />";
//    if (ubicacion == "")
//        error += "- ingrese ubicación<br />";

    if (email != null)
    {
        email = $j("#email").attr("value");
        if (email != "") {
            var emailValido = validar_email(email);
            if (emailValido == false)
                error += "- el email ingresado no es válido <br />";
        }
    }

    if (id == null && imagen == "") {
        error += "- seleccione una imagen chica<br />";
    }
    
    if (id == null && imagen_gde == "") {
        error += "- seleccione una imagen grande<br />";
    }

    if (detalle == "")
        error += "- ingrese detalle<br />";

    if (error == "") {
        return true;
    }
    else {
        $j("#error_producto").html(error);
        return false;
    }
}

function validar_slide() {
    $j("#error_slide").html("");
    var id = document.getElementById("id");
    var descripcion = $j("#descripcion").attr("value");
    var imagen = $j("#imagen_slide").attr("value");

    var error = "";

    if (descripcion == "")
        error += "- ingrese descripción<br />";

    if (id == null && imagen == "") {
        error += "- seleccione una imagen<br />";
    }

    if (error == "") {
        return true;
    }
    else {
        $j("#error_slide").html(error);
        return false;
    }
}

function validar_newsletter() {
    $j("#error_newsletter").html("");
    var id = document.getElementById("id");
    var nombre = $j("#nombre").attr("value");
    var comentario = tinyMCE.get('comentario').getContent();
//    var fecha = $j("#fecha").attr("value");
    var imagen_newsletter = $j("#imagen_newsletter").attr("value");
    var archivo = $j("#archivo").attr("value");

    var error = "";

    if (nombre == "")
        error += "- ingrese nombre<br />";
    if (comentario == "")
        error += "- ingrese comentario<br />";

//    if (fecha == "")
//        error += "- ingrese fecha<br />";

    if (id == null && imagen_newsletter == "") {
        error += "- seleccione una imagen<br />";
    }

    if (id == null && archivo == "") {
        error += "- seleccione un archivo pdf<br />";
    }

    if (error == "") {
        return true;
    }
    else {
        $j("#error_newsletter").html(error);
        return false;
    }
}

function validar_email(email) {
    if (email.match(RegExPattern_email))
        return true;
    else
        return false;
}

function cambiar_contrasena() {
    $j("#error_cambiar_contrasena").html("");
    var error = "";
    var contAnterior = $j("#cont_anterior").attr("value");
    var contNueva = $j("#cont_nueva").attr("value");
    var contNuevaConf = $j("#cont_nueva_conf").attr("value");

    if (contAnterior == "")
        error +=  "- ingrese contraseña actual<br />";

    if (contNueva == "") {
        error +=  "- ingrese la nueva contraseña<br />";
    }
    else {
        var largoContNueva = contNueva.length;
        if (largoContNueva < 8)
            error +=  "- la nueva contraseña debe tener al menos 8 caracteres<br />";
    }
    if (contNuevaConf == "") {
        error +=  "- ingrese confirmación de contraseña<br />";
    }
    if (contNueva != "" && contNuevaConf != "" && contNueva != contNuevaConf) {
        error +=  "- la nueva contraseña no coincide con la confirmación<br />";
    }

    if (error != "") {
        $j("#error_cambiar_contrasena").html(error);
    }
    else {
        $j.ajax({
            url:"consulta.php",
            type: "POST",
            data: ({
                contAnterior: contAnterior,
                contNueva: contNueva,
                contNuevaConf: contNuevaConf,
                accion: "cambiar_contrasena"
            }),
            beforeSend: antes_cambiar_contrasena,
            success:exito_cambiar_contrasena,
            async:true
        });
    }
}

function antes_cambiar_contrasena() {
    $j("#error_cambiar_contrasena").html("Enviando información...");
}

function exito_cambiar_contrasena(msg) {
    $j("#cont_anterior").attr("value", "");
    $j("#cont_nueva").attr("value", "");
    $j("#cont_nueva_conf").attr("value", "");
    
    if(msg==0) {
        $j("#error_cambiar_contrasena").html("Su contraseña actual no es válida");
    }
    else
        $j("#error_cambiar_contrasena").html("Su contraseña ha sido actualizada");
}

function listarSlideInicioInactivas() {
    $j.ajax({
        url:"consulta.php",
        type: "POST",
        dataType: "json",
        data: ({
            accion: "listarSlideInicioInactivas"
        }),
        success:exito_listar_slide_inicio_inactivas,
        async:true
    });
}

function exito_listar_slide_inicio_inactivas(msg) {
    if (msg==0) $j("#slideInicioInactivas").html("<p>No hay imágenes inactivas para el slide de la página de inicio</p>");
    else {
        var slideInicio = "";
        for (var i=0; i<msg.length; i++) {
            slideInicio += "<div id='slide_inactivo'>"
            slideInicio += "<p>" + msg[i].descripcion + " | <a href='ADM_activarSlideInicio.php?slide=" + msg[i].id + "'>Activar</a></p>";
            slideInicio += "<p><img src='imagenes/slide_inicio/" + msg[i].imagen + "' alt='" + msg[i].descripcion + "' class='slide_inicio_inactiva' /></p>";
            slideInicio += "</div>";
        }
        $j("#slideInicioInactivas").html(slideInicio);
    }
}

function listarSlideCategoriasInactivas() {
    $j.ajax({
        url:"consulta.php",
        type: "POST",
        dataType: "json",
        data: ({
            accion: "listarSlideCategoriasInactivas"
        }),
        success:exito_listar_slide_categorias_inactivas,
        async:true
    });
}

function exito_listar_slide_categorias_inactivas(msg) {
    if (msg==0) $j("#slideCategoriasInactivas").html("<p>No hay imágenes inactivas para el slide de las categorías</p>");
    else {
        var slideCategorias = "";
        for (var i=0; i<msg.length; i++) {
            slideCategorias += "<div id='slide_inactivo'>"
            slideCategorias += "<p>" + msg[i].descripcion + " | <a href='ADM_activarSlideCategorias.php?slide=" + msg[i].id + "'>Activar</a></p>";
            slideCategorias += "<p><img src='imagenes/slide_categorias/" + msg[i].imagen + "' alt='" + msg[i].descripcion + "' class='slide_categorias_inactiva' /></p>";
            slideCategorias += "</div>";
        }
        $j("#slideCategoriasInactivas").html(slideCategorias);
    }
}

//function Validar(Cadena){
//    var Fecha= new String(Cadena)   ⁄⁄ Crea un string
//
//
//    var Anio= new String(Fecha.substring(Fecha.lastIndexOf("-")+1,Fecha.length))
//
//    var Mes= new String(Fecha.substring(Fecha.indexOf("-")+1,Fecha.lastIndexOf("-")))
//
//    var Dia= new String(Fecha.substring(0,Fecha.indexOf("-")))
//
//
//    if (isNaN(Anio) || Anio.length<4 || parseFloat(Anio)<1900 || parseFloat(Anio)>2050{
//            alert('Año inválido')
//        return false
//    }
//
//    if (isNaN(Mes) || parseFloat(Mes)<1 || parseFloat(Mes)>12){
//        alert('Mes inválido')
//        return false
//    }
//
//    if (isNaN(Dia) || parseInt(Dia, 10)<1 || parseInt(Dia, 10)>31){
//        alert('Día inválido')
//        return false
//    }
//    if (Mes==4 || Mes==6 || Mes==9 || Mes==11 || Mes==2) {
//        if (Mes==2 && Dia > 28 || Dia>30) {
//            alert('Día inválido')
//            return false
//        }
//    }
//
//  ⁄⁄para que envie los datos, quitar las  2 lineas siguientes
//  alert("Fecha correcta.")
//  return false
//}
