﻿// Evitar conflictos con Prototype y otros frameworks
jQuery.noConflict();

function requestObject() {
    var http_request = false;
    if (window.XMLHttpRequest) { // Mozilla, Safari,...
        http_request = new XMLHttpRequest();
        if (http_request.overrideMimeType) { http_request.overrideMimeType('text/html'); }
    }
    else if (window.ActiveXObject) { // IE
        try { http_request = new ActiveXObject("Msxml2.XMLHTTP"); }
        catch (e) {
            try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); }
            catch (e) {}
        }
    }

    return http_request;
}

function makeRequest(url, parameters, divName) {
    var http_request = false;
    http_request = requestObject();

    if (!http_request) {
        alert('Cannot create XMLHTTP instance');
        return false;
    }

    http_request.onreadystatechange = function() { alertContents(http_request, divName, url, ''); };
    http_request.open('GET', url + parameters, true);
    http_request.send(null);
}

function makePostRequest(url, parameters, divName) {
    var http_request = false;
    http_request = requestObject();
    http_request.open("POST", url + '?post=1', true);

    //Send the proper header information along with the request
    http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http_request.setRequestHeader("Content-length", parameters.length);
    http_request.setRequestHeader("Connection", "close");

    http_request.onreadystatechange = function() { alertContents(http_request, divName, url, false); };
    http_request.send(parameters);
}

function alertContents(_http_request, divName, url, action) {
    if (_http_request.readyState == 4) {
        if (_http_request.status == 200) {
            if (_http_request.responseText == '-1') {
                gotoError(divName + '\nStatus = ' + _http_request.status + '\nreadyState = ' + _http_request.readyState);
            }
            else {
                document.getElementById(divName).innerHTML=_http_request.responseText;
                if (action == '') {}
            }
        }
        else {
            alert('There was a problem with the request. Status:' + _http_request.status + ' - ' + url);
        }
    }
}

function gotoError(divName) {
    alert('Error en div ' + divName);
}

//jQuery(".sortby .sortby_select .bar").click(
//function(event){
//jQuery(this).siblings().filter("ul").show();
//}
//);

function getEscaparate(_paginaActual, _nave, _wmigas, _FeSort, _FeTall, _FeColo, _wB1, _wen, _orig, _test, idConfig) {

	var locHref=location.href.toLowerCase();
	var pos=locHref.indexOf("resultprod")
  //alert(locHref);
	if (pos>=0)
	{
	  //found
	  ajaxRequestEscaparate("/NET/VencaWebServicesBase.ashx", "?action=resultProd&npag=" + _paginaActual + "&nave=" + _nave + "&wmigas=" + _wmigas + "&FeSort=" + _FeSort + "&FeTall=" + _FeTall + "&FeColo=" + _FeColo + "&wB1=" + codifica(_wB1) + "&wen=" + _wen + "&orig=" + _orig + "&test=" + _test + "&idConfig=" + idConfig, "NETEscaparate");
	} 
	else 
	{
	  //not found
	  ajaxRequestEscaparate("/NET/VencaWebServicesBase.ashx", "?action=escaparate&npag=" + _paginaActual + "&nave=" + _nave + "&wmigas=" + _wmigas + "&FeSort=" + _FeSort + "&FeTall=" + _FeTall + "&FeColo=" + _FeColo + "&tituArti=" + codifica(_wB1) + "&orig=" + _orig + "&test=" + _test + "&idConfig=" + idConfig, "NETEscaparate");
	}


}

//function getFichaProducto(_wProd, _catap, _wcata, _FeSort, _PrConj, _secc, _grup, _FeColo, _orig, idConfig) {
//    //alert('a');
//    ajaxRequestFichaProducto("/NET/VencaWebServicesBase.ashx", "?action=fichaproducto&wProd=" + _wProd + "&catap=" + _catap + "&wcata=" + _wcata + "&FeSort=" + _FeSort + "&PrConj=" + _PrConj + "&FeColo=" + _FeColo+ "&secc=" + _secc + "&grup=" + _grup  + "&orig=" + _orig + "&idConfig=" + idConfig, "NETFichaProducto");
//}

function getProd(_wProd, _catap, _wcata, _imgLogo, _PrConj, _secc, _grup, _DeCatR, _Manual,_woferta,_wfrom,_nave,_wcacata, _test, idConfig) {
    //alert('a');
//FichaProducto
    ajaxRequestProd("/NET/VencaWebServicesBase.ashx", "?action=prod&wProd=" + _wProd + "&catap=" + _catap + "&wcata=" + _wcata + "&imgLogo=" + _imgLogo + "&PrConj=" + _PrConj + "&DeCatR=" + _DeCatR + "&secc=" + _secc + "&grup=" + _grup  + "&Manual=" + _Manual + "&woferta=" + _woferta +  "&wfrom=" + _wfrom +  "&nave=" + _nave + "&wcacata=" + _wcacata  + "&test=" + _test + "&idConfig=" + idConfig, "NETFichaProducto");
}

function getModuleRegalos(_wRecode, _orig, idConfig) {
    //alert('ModuleRegalos');
    //ModuleRegalos - Der
    ajaxRequestModuleRegalos("/NET/VencaWebServicesBase.ashx", "?action=moduleRegalos&wrecode=" + _wRecode + "&orig=" + _orig + "&idConfig=" + idConfig, "NETModuleRegalos");
}


function getVerCarrito(_edit, _wverreg, _whp, _codtos,_query_wvalidar,_wref,_query_wref,_query_wcode,_query_wtall,_query_wtalc,_query_widPI,_query_wvaldto,_query_wcodto,_query_PdImpd,_query_wimpo,_query_PdCode,_query_wDescdto,_query_PdDesc,_session_pvult,_session_pv_pvult_Famm, _session_pv_pvult_Prefe,_session_pv_pvult_Cata, _session_pv_pvult_Nave,_SiteDtos, _idcp,_wCode,_wGden,_wcant,_wtall,_Pddesc,_PdImpD,_catpal, _wcod, _wvalreg, _wadic, _SiteFechaLlegada,_SiteMostrarFechaLlegada, _nave, _orig, idConfig) {
    //alert('VerCarrito');
    //VerCarrito
    ajaxRequestVerCarrito("/NET/VencaWebServicesBase.ashx", "?action=verCarrito&edit=" + _edit + "&wverreg=" + _wverreg + "&whp=" + _whp + "&codtos=" + _codtos + "&query_wvalidar=" + _query_wvalidar + "&wref=" + _wref + "&query_wref=" + _query_wref + "&query_wcode=" + _query_wcode + "&query_wtall=" + _query_wtall + "&query_wtalc=" + _query_wtalc + "&query_widPI=" + _query_widPI + "&query_wvaldto=" + _query_wvaldto + "&query_wcodto=" + _query_wcodto + "&query_PdImpd=" + _query_PdImpd + "&query_wimpo=" + _query_wimpo + "&query_PdCode=" + _query_PdCode + "&query_wDescdto=" + _query_wDescdto + "&query_PdDesc=" + _query_PdDesc + "&session_pvult=" + _session_pvult + "&session_pv_pvult_Famm=" + _session_pv_pvult_Famm + "&session_pv_pvult_Prefe=" + _session_pv_pvult_Prefe + "&session_pv_pvult_Cata=" + _session_pv_pvult_Cata + "&session_pv_pvult_Nave=" + _session_pv_pvult_Nave + "&SiteDtos=" + _SiteDtos + "&idcp=" + _idcp + "&wCode=" + _wCode + "&wGden=" + _wGden + "&wcant=" + _wcant + "&wtall=" + _wtall + "&Pddesc=" + _Pddesc + "&PdImpD=" + _PdImpD + "&catpal=" + _catpal + "&wcod=" + _wcod + "&wvalreg=" + _wvalreg + "&wadic=" + _wadic + "&SiteFechaLlegada=" + _SiteFechaLlegada + "&SiteMostrarFechaLlegada=" + _SiteMostrarFechaLlegada +"&nave=" + _nave + "&orig=" + _orig + "&idConfig=" + idConfig, "NETVerCarrito");
}


function ajaxRequest(URL, Params, Div) {
    jQuery.ajax({
        type: "POST" // use method POST
        , url: URL + Params
        , data: "{ }"
        , dataType: "html"
        , success: function(data) { document.getElementById(Div).innerHTML = data; }
        //, error: function() { alert("The was an error processing your request"); }
    });
}

function ajaxRequestAlert(URL, Params, Div) {
    jQuery.ajax({
        type: "POST" // use method POST
        , url: URL + Params
        , data: "{ }"
        , dataType: "html"
        , success: function(data) {  alert(data); document.getElementById(Div).innerHTML = data; alert(data); }
        //, error: function() { alert("The was an error processing your request"); }
    });
}

function ajaxRequestEscaparate(URL, Params, Div) {
    var width = jQuery("#NETEscaparate").width();
    var height = jQuery("#NETEscaparate").height();

    jQuery("#loadingPanel").css({
		//marginTop: ((height / 2) - 25),
		//marginLeft: ((width / 2) - 50)
		marginTop: 100,
		marginLeft: ((width / 2) - 50)
    }).fadeIn(200);
    jQuery("#loadingPanel").fadeIn(200);
    //jQuery(".resultados").fadeTo(100, 0.3);
    jQuery(".resultados").css("opacity", "0.35").css("filter", "alpha(opacity=35)");
    //jQuery(".resultados").fadeOut(10);

    jQuery.ajax({
        type: "POST" // use method POST
        , url: URL + Params
        , data: "{ }"
        , dataType: "html"
        , success: function(data) {
            document.getElementById(Div).innerHTML = data;
            reInitJQuery();
            onMouseOverElementosEscaparate();
            jQuery("#loadingPanel").fadeOut(1000);
            jQuery(".resultados").fadeTo(1000, 1);
            //jQuery(".resultados").css("opacity", "1").css("filter", "alpha(opacity=100)");
        }
        //, error: function() { alert("The was an error processing your request"); }
    });
}


//Ficha de Producto
function ajaxRequestProd(URL, Params, Div) {
    var width = jQuery("#NETFichaProducto").width();
    var height = jQuery("#NETFichaProducto").height();

    jQuery("#loadingPanel").css({
		//marginTop: ((height / 2) - 25),
		//marginLeft: ((width / 2) - 50)
		marginTop: 100,
		marginLeft: ((width / 2) - 50)
    }).fadeIn(200);
    jQuery("#loadingPanel").fadeIn(200);
    //jQuery(".resultados").fadeTo(100, 0.3);
    jQuery(".resultados").css("opacity", "0.35").css("filter", "alpha(opacity=35)");
    //jQuery(".resultados").fadeOut(10);

    jQuery.ajax({
        type: "POST" // use method POST
        , url: URL + Params
        , data: "{ }"
        , dataType: "html"
        , success: function(data) {
            document.getElementById(Div).innerHTML = data;
            reInitJQuery();
            
            
            //iniTablas();
            //setProdRefe();
    
            setInitialProductImages(true);
            refrescColorsTalles();
            activarDisponible();
            //recargarZoom();
            
            jQuery("#loadingPanel").fadeOut(1000);
        }
        //, error: function() { alert("The was an error processing your request"); }
    });
}

//NETModuleRegalos
function ajaxRequestModuleRegalos(URL, Params, Div) {
    var width = jQuery("#NETModuleRegalos").width();
    var height = jQuery("#NETModuleRegalos").height();

    jQuery("#loadingPanel").css({
		marginTop: 100,
		marginLeft: ((width / 2) - 50)
    }).fadeIn(200);
    jQuery("#loadingPanel").fadeIn(200);
    jQuery(".resultados").css("opacity", "0.35").css("filter", "alpha(opacity=35)");

    jQuery.ajax({
        type: "POST" // use method POST
        , url: URL + Params
        , data: "{ }"
        , dataType: "html"
        , success: function(data) {
            document.getElementById(Div).innerHTML = data;
            reInitJQuery();
	    iniTabReg();

            jQuery("#loadingPanel").fadeOut(1000);

        }
        //, error: function() { alert("The was an error processing your request"); }
    });
}



//NETVerCarrito
function ajaxRequestVerCarrito(URL, Params, Div) {
    var width = jQuery("#NETVerCarrito").width();
    var height = jQuery("#NETVerCarrito").height();

    jQuery("#loadingPanel").css({
		marginTop: 100,
		marginLeft: ((width / 2) - 50)
    }).fadeIn(200);
    jQuery("#loadingPanel").fadeIn(200);
    jQuery(".resultados").css("opacity", "0.35").css("filter", "alpha(opacity=35)");

    jQuery.ajax({
        type: "POST" // use method POST
        , url: URL + Params
        , data: "{ }"
        , dataType: "html"
        , success: function(data) {
            document.getElementById(Div).innerHTML = data;
            reInitJQuery();
		
	    if ( window.iniTablas ) {iniTablas();}
	    if ( window.iniTabReg ) {iniTabReg();}


	    if((document.frmisreg!=null)&(document.frmisreg!="undefined")){document.frmisreg.submit();}

            jQuery("#loadingPanel").fadeOut(1000);

        }
        //, error: function() { alert("The was an error processing your request"); }
    });
}

function helloWorld() {
    ajaxRequest("/NET/VencaWebServicesBase.ashx", "?action=helloWorld", "NETEscaparate");
}






function onMouseOverElementosEscaparate() {
 jQuery(document).ready(function(){
		
    jQuery(".resultados .resultado").mouseover(function() {
      jQuery(this).css("background-color","#E5E5E5");
      jQuery(this).find(".descuento").css("background-image","url(/css/gfx/bgd-descuento-up02.gif)");
    });
       
    jQuery(".resultados .resultado").mouseout(function() {
      jQuery(this).css("background-color","#F7F7F7");
      jQuery(this).find(".descuento").css("background-image","url(/css/gfx/bgd-descuento02.gif)");
    });

    jQuery(".muestras .muestra").mouseover(function() {
      jQuery(this).css("background-color","#E5E5E5");
      jQuery(this).find(".descuento").css("background-image","url(/css/gfx/bgd-descuento-up02.gif)");
    });
       
    jQuery(".muestras .muestra").mouseout(function() {
      jQuery(this).css("background-color","#FFFFFF");
      jQuery(this).find(".descuento").css("background-image","url(/css/gfx/bgd-descuento.gif)");
    });
    
    jQuery(".resultados .resultadoSP").mouseover(function() {
      jQuery(this).css("background-color","#ec008c");
      jQuery(this).find(".descuento").css("background-image","url(/css/gfx/bgd-descuento-up02.gif)");
    });

    jQuery(".resultados .resultadoSP").mouseout(function() {
      jQuery(this).css("background-color","#ffadde");
      jQuery(this).find(".descuento").css("background-image","url(/css/gfx/bgd-descuento02.gif)");
    });

	});
}

var userAgent = navigator.userAgent.toLowerCase();
 jQuery.browser = {
	    version: (userAgent.match( /.+(?:rv|it|ra|ie|me)[\/: ]([\d.]+)/ ) || [])[1],
	    chrome: /chrome/.test( userAgent ),
	    safari: /webkit/.test( userAgent ) && !/chrome/.test( userAgent ),
	    opera: /opera/.test( userAgent ),
	    msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ),
	    mozilla: /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( userAgent )
};

function codifica(txt) {
  if (jQuery.browser.msie || jQuery.browser.chrome) {
    //alert("ie-chr");
    return Utf8.encode(txt);
  } else {
    //alert("ff");
    return Utf8.encode(encodeURIComponent(txt));
    //return unescape(escape(txt).    replace(/%0A/g, '<br/>').    replace(/%3C/g, '&lt;').    replace(/%3E/g, '&gt;'));
  }
}

var Utf8 = {
 
	// public method for url encoding
	encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	},
 
	// public method for url decoding
	decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
 
		while ( i < utftext.length ) {
 
			c = utftext.charCodeAt(i);
 
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}
 
		}
 
		return string;
	}
 
}
