﻿var ofertaTituloOriginal = "";
var ofertaTextoOriginal = "";
var anuncioTextoOriginal = "";
var disclaimerTextoOriginal = "";

function LimpiarFotos() {
	$('#foto1').val('');
	$('#foto2').val('');
	$('#foto3').val('');

	$('#uploadedPhoto1').val('');
	$('#uploadedPhoto2').val('');
	$('#uploadedPhoto3').val('');
}

function Register(pathCrearPost, pathCrearOferta) {
    anuncioTextoOriginal = $('#anuncioTexto').val();

    $('.deleteIcon').click(function() {
    	var id = $(this).attr("idfoto");
    	$('#' + id).val('');
    });
    
    $('#Anunciar').click(function() {
        var post = $('#anuncioTexto').val();
        if (post != anuncioTextoOriginal && post.length > 0)
        {
			Postear(post, pathCrearPost);
		}
	});

	$('.cancelarFoto').click(function(e) {
		e.preventDefault();
		LimpiarFotos();
	});

	$('#LimpiarFotos').click(function(e) {
		e.preventDefault();
		LimpiarFotos();
	});

    $('#Ofertar').click(function() {
        if (ValidacionOferta() == true) {
            PublicarOferta(pathCrearOferta);
        }
    });

	$("input[name='beneficio']").click(function()
	{
		if (!$("#opcionDescuento").is(":checked"))
		{
			$("#descuento").val("0");
		}
	});
	
	$("#descuento").change(function()
	{
		var value = $(this).val();
		if (value != 0 && value != "")
		{
			$("#opcionDescuento").attr("checked", "checked");
		}
	});

    $('.CancelarPost').each(function(i, elem) {
        $(elem).click(function(e) {
            OcultarPublicar();
            e.preventDefault();
        });
    });
    
    $("#cancelarVideo").click(function()
    {
		$("#video").val("");
    });
    
    $("#cancelarLink").click(function()
    {
		$("#link").val("");
    });
    
    $("#Disclaimer").click(function(e) {
		$("#popDisclaimer").show();
		e.preventDefault();
		
    });

	ofertaTituloOriginal = $('#ofertaTitulo').val();
	ofertaTextoOriginal = $('#ofertaTexto').val();
	disclaimerTextoOriginal = $("#textoDisclaimer").val();

    $('#PublicarOferta').click(function(e) {
        $('.boxForm').removeClass("inFormAnuncio");
        $('.boxForm').addClass("inFormOferta");

        e.preventDefault();
    });

    $('#PublicarAnuncio').click(function(e) {
        $('.boxForm').removeClass("inFormOferta");
        $('.boxForm').addClass("inFormAnuncio");

        e.preventDefault();
    });
}

function ValidacionOferta() {
    var youtubeLike = 'http://www.youtube.com/watch?v=';
    var linkLike = 'http://';

    var youtube = $('#video').val();
    var link = $('#link').val();

    var sub = youtube.substring(0, youtubeLike.length);

    if (sub != youtubeLike && youtube.length > 0) {
        MostrarErrorPopUp('Error en el formato del link a youtube.');
        return false;
    }

    var sub = link.substring(0, linkLike.length);

    if (sub != linkLike && link > 0) {
        MostrarErrorPopUp('Error en el formato del link.');
        return false;
    }

    return true;
}

function OcultarPublicar() {
	$('.boxForm').removeClass("inFormOferta");
	$('.boxForm').removeClass("inFormAnuncio");
	LimpiarOferta();
	$('#anuncioTexto').val('');
}

function SubirFoto() {
    var file1 = $("#foto1");
    var file2 = $("#foto2");
    var file3 = $("#foto3");

    var originalContainer1 = file1.parent();
    var originalContainer2 = file2.parent();
    var originalContainer3 = file3.parent();
    var form = $("#UploadFotoOferta");
    
    if (file1.val() != "")
        form.append(file1);

    if (file2.val() != "")
        form.append(file2);
    
    if (file3.val() != "")
        form.append(file3);

    form.submit();
    file1.remove();
    file2.remove();
    file3.remove();
    
    originalContainer1.append(file1);
    originalContainer2.append(file2);
    originalContainer3.append(file3);
}

function CallBackSubirFoto(fotos, hayError, urlCrearOferta) {
    var foto = fotos.split(',');
    
    if (!hayError) {
        $("#uploadedPhoto1").val(foto[0]);
        $("#uploadedPhoto2").val(foto[1]);
        $("#uploadedPhoto3").val(foto[2]);

        PublicarOferta(urlCrearOferta);
    }
    else {
        MostrarErrorPopUp("La foto debe ser gif, png o jpg y de hasta 500KB");
        $("#uploadedPhoto1").val("");
        $("#uploadedPhoto2").val("");
        $("#uploadedPhoto3").val("");
        HabilitarOfertar();
    }
}

function MostrarErrorPopUp(error) {
    var pop = $('#popAlert');

    $('#mensajeError').text(error);
    
    pop.show();
}

function Postear(post, pathCrearPost) {

	$("#StatusCargando").show();
	$("#Anunciar").attr('disabled', true);
	$("#AccionesStatus").hide();
    
    $.getJSON(
                pathCrearPost,
                { mensaje: post },
                function(res) {
                    if (res.resultado == true) {
                        ActualizarWall();
                        OcultarPublicar();
                    }
                    else {
                        MostrarErrorPopUp('Post Fallo!');
                    }
                    
                    $("#StatusCargando").hide();
					$("#Anunciar").attr('disabled', false);
					$("#AccionesStatus").show();
                }
            );
}

function LimpiarOferta() {
    $('#foto1').val("");
    $('#foto2').val("");
    $('#foto3').val("");
    $('#uploadedPhoto').val("");
    $('#ofertaTitulo').val("");
    $('#ofertaTexto').val("");
    $('#ofertaVencimiento').val("");
    $('#Foto').val("");
    $('.FotoLink').slideUp();
    $("#uploadedPhoto1").val("");
    $("#uploadedPhoto2").val("");
    $("#uploadedPhoto3").val("");
    $("#soloClientes").attr("checked", '');
    $("#textoDisclaimer").val("");
    $('#video').val("");
    $('#link').val('');
    $('#descuento').val('');
}

function HabilitarOfertar()
{
	$("#OfertarCargando").hide();
	$("#Ofertar").attr('disabled', false);
	$("#AccionesOfertar").show();
}

function DeshabilitarOfertar()
{
	$("#OfertarCargando").show();
	$("#Ofertar").attr('disabled', true);
	$("#AccionesOfertar").hide();
}


function PublicarOferta(pathCrearOferta) {
	DeshabilitarOfertar();

    var foto1 = $("#foto1");
    var foto2 = $("#foto2");
    var foto3 = $("#foto3");

    var uploadedFoto1 = "";
    var uploadedFoto2 = "";
    var uploadedFoto3 = "";

    var hiddenFoto1 = $("#uploadedPhoto1");
    var hiddenFoto2 = $("#uploadedPhoto2");
    var hiddenFoto3 = $("#uploadedPhoto3");

    if (hiddenFoto1.val() == ""
	            && hiddenFoto2.val() == ""
	            && hiddenFoto3.val() == "") {

        if (foto1.val() != ""
	                || foto2.val() != ""
	                || foto3.val() != "") {
            SubirFoto();
            return;
        }
    }

    CrearOferta(pathCrearOferta);
}

function CrearOferta(pathCrearOferta) {
	var ofertaTitulo = $('#ofertaTitulo').val();
	var ofertaTexto = $('#ofertaTexto').val();
	
	if (ofertaTextoOriginal != ofertaTexto && 
		ofertaTituloOriginal != ofertaTitulo &&
		ofertaTexto.length > 0 &&
		ofertaTitulo.length > 0)
	{

		var descuento;
		if ($("#opcionDescuento").is(":checked"))
		{
			descuento = $('#descuento').val();
		}
		else
		{
			descuento = '0';
		}
		
		var dosPorUno = $("#opcionDosPorUno").is(":checked");
		var obsequio = $("#opcionObsequio").is(":checked");

		var hiddenFoto1 = $("#uploadedPhoto1").val();
		var hiddenFoto2 = $("#uploadedPhoto2").val();
		var hiddenFoto3 = $("#uploadedPhoto3").val();
	    
		var splittedDate = $("#datepicker").val().split('/');

		var date = splittedDate[2] + "-" + splittedDate[1] + "-" + splittedDate[0];

		var disclaimerTexto = $("#textoDisclaimer").val();
		
		if (disclaimerTexto == disclaimerTextoOriginal)
		{
			disclaimerTexto = "";
		}

		var parametros =
		{ 
			titulo: ofertaTitulo,
			descripcion: ofertaTexto,
			hasta: date,
			foto1: hiddenFoto1,
			foto2: hiddenFoto2,
			foto3: hiddenFoto3,
			descuento: descuento,
			compradores: $('#compradores').val(),
			categoria: $('#ofertaCategoriaCombo').val(),
			link: $('#link').val(),
			video: $('#video').val(),
			soloClientes: $("#soloClientes").is(':checked'),
			disclaimer: disclaimerTexto,
			dosPorUno: dosPorUno,
			obsequio: obsequio,
			eCommerce: $("#codigoECommerce").val()
		};

		$.post(
			pathCrearOferta,
			parametros,
			function(res) {
				if (res.Error) {
					if (res.Mensaje != "") {
						MostrarErrorPopUp(res.Mensaje);
					}
					else {
						MostrarErrorPopUp('Error Publicando Oferta');
					}
				}
				else {
					LimpiarOferta();
					ActualizarWall();
					OcultarPublicar();
				}
				HabilitarOfertar();
			},
			'json'
		);
	}
	else
	{
		HabilitarOfertar();
		MostrarErrorPopUp("Tenés que completar tanto el título como la descripción de la oferta");
	}
}