/***********************************************
* IFrame SSI script II- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com)
* Visit DynamicDrive.com for hundreds of original DHTML scripts
* This notice must stay intact for legal use
***********************************************/
//debugger;

//Input the IDs of the IFRAMES you wish to dynamically resize to match its content height:
//Separate each ID with a comma.
var iframeids=["solucionesabajo"];
var nestedFramesids = ["contratoarriba", "contratoabajo"];

var esIE=0;
if (window.navigator.appName == "Microsoft Internet Explorer")
		esIE=1;
		
//Should script hide iframe from browsers that don't support this script (non IE5+/NS6+ browsers. Recommended):
var iframehide="yes";

function resizeCaller() {	
	var dyniframe=new Array();
	for (i=0; i<iframeids.length; i++){
		if (document.getElementById) {
		  resizeIframe(iframeids[i]);
	  }
		//reveal iframe for lower end browsers? (see var above):
		if ((document.all || document.getElementById) && iframehide=="no"){
			var tempobj=document.all? document.all[iframeids[i]] : document.getElementById(iframeids[i])
			tempobj.style.display="block";
		}
	}
}

var timeOut='';
var frameId='';
function resizeIframe(frameid ){
	try {
		var currentfr=document.getElementById(frameid);
		if( currentfr=="" || currentfr==undefined ) {
			return;
		}

		if (currentfr && !window.opera) {
			currentfr.style.display="block";

			if (esIE==0 && currentfr.contentDocument && currentfr.contentDocument.body.offsetHeight) { //ns6 syntax			 	
				if (currentfr.contentWindow.frames != null && currentfr.contentWindow.frames.length>0 ){ // && currentfr.contentDocument.body.frames.length>0  ) {
					//Aniadido para cuando hay frames. El caso no normal ...
					var iH=0;
					for (var i=0;i<currentfr.contentWindow.frames.length;i++){
						iH += currentfr.contentWindow.frames[i].document.body.offsetHeight;
					}
					currentfr.height = iH+25;
				} else { //El caso normal (No hay frames dentro del iframe).Lo que habia en la funcion original
					  var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1];
            var FFextraHeight=parseFloat(getFFVersion)>=0.1? 16 : 0 ;//extra height in px to add to iframe in FireFox 1.0+ browsers

						currentfr.height = currentfr.contentDocument.body.offsetHeight+FFextraHeight+25;
				}
			//** FIN DE FIREFOX ** //
			} else if (currentfr.document && currentfr.document.body && currentfr.document.body.scrollHeight) {//ie5+ syntax
				var iFrames = currentfr.contentWindow.frames.length;
				var bHayMasFrames = iFrames > 0;

  			// Para las pantallas con resoluciones bajas hay que restar esto al
  			// tamaño del iframe para que entren las barras de scroll
  			// (altura de la ventana - altura de la pantalla) + cabecera + pie
  			var tamElemFijos = 0; //(document.body.clientHeight - screen.availHeight) + 130 + 30;
  			var sumaCabeceraPie = 130 + 40;
  			var difVentanaPantalla = 0;
  			if (document.body.clientHeight > screen.availHeight)
  			  difVentanaPantalla = document.body.clientHeight - screen.availHeight;

 				tamElemFijos = sumaCabeceraPie + difVentanaPantalla;

				if (!bHayMasFrames && currentfr.document.frames.length >= 1) {
					//Aniadido para cuando hay frames
					var iH=0;
					for (var i=0;i<currentfr.document.frames.length;i++){
						try {
							if (currentfr.document.frames[i].document.body != null)
							  iH += currentfr.document.frames[i].document.body.scrollHeight;
							
					    // Para que no sume lo del frame de abajo a las pestañas
					    if (frameid != "solucionesarriba" || iH <= 80) {
					      currentfr.height = iH;
					    }
						} catch ( e ) {
							//alert ( 'we got it ' + e.message + " " + frameid + "=" +  currentfr.height);  //Si no nos deja, pasamos del Frame Borde
							currentfr.height = currentfr.document.body.scrollHeight;
							if (currentfr.height + sumaCabeceraPie > screen.availHeight) { // - sumaCabeceraPie) {
							  currentfr.height = screen.availHeight - tamElemFijos;
							}
							return;
						}
					} // fin del for
				} else if (bHayMasFrames){
					//Aniadido para cuando hay iframes dentro del iframe ...
					var nestedFrame;
					var iAlturaNestedFrame = 0;
					for (i=0; i<nestedFramesids.length; i++){
						nestedFrame = currentfr.contentWindow.frames[nestedFramesids[i]];
						iAlturaNestedFrame += nestedFrame.document.body.scrollHeight;
					}
					currentfr.height=iAlturaNestedFrame;
				} else { //Caso Normal no hay frames
						currentfr.height = currentfr.document.body.scrollHeight+55;
				}
			}
			
			var iAlturaCurrentFr = currentfr.height;
			//* hacemos que la capa de relleno del menu se ajuste al iframe * /
			if (document.getElementById("relleno") != null && frameid == "solucionesabajo") {
				var mydiv = document.getElementById("navegacion");
        var tamNav = mydiv.clientHeight;
				
				document.getElementById("relleno").style.height = 1;
				if (currentfr.height > tamNav -100) {
				  tamNav = currentfr.height - tamNav;
				  document.getElementById("relleno").style.height = tamNav + 100;
				} 
			}

			if (currentfr.addEventListener) {
				//Esto es mozilla
				currentfr.addEventListener("load", readjustIframe, false);
			} else if (currentfr.attachEvent){
				//Esto es ie
				currentfr.detachEvent("onload", readjustIframe); // Bug fix line
				currentfr.attachEvent("onload", readjustIframe);
			} else {
				currentfr.onload = readjustIframe;
			}
		} // fin if (currentfr && !window.opera)

	} catch( e ){
		  tamElemFijos = 230;
		  currentfr.height = screen.height - tamElemFijos; // - 100;
		//alert('iframe.js: Excepcion ' + e  );
	}
} // fin resizeIframe

function readjustIframe(loadevt) {
	var crossevt=(window.event)? event : loadevt;
	var iframeroot=(crossevt.currentTarget)? crossevt.currentTarget : crossevt.srcElement;
	if (iframeroot){
		resizeIframe(iframeroot.id);
	}
} // fin readjustIframe

function loadintoIframe(iframeid, laUrl){
	if (document.getElementById) {
		document.getElementById(iframeid).src=laUrl;
	}
} // fin loadintoIframe

if (window.addEventListener) {
	window.addEventListener("load", resizeCaller, false);
} else if (window.attachEvent) {
	window.detachEvent("onload", resizeCaller); // Bug fix line
	window.attachEvent("onload", resizeCaller);
} else {
	window.onload=resizeCaller;	
}

