// Popup
function openImage(sImageType, sImageName, sPathVirtuel)
{
	window.open(sPathVirtuel + "/include/view_image.php?type=" + sImageType + "&name=" + sImageName, "visio", "width=200,height=100, status=yes, resizable=yes, scrollbars=yes");
} 

function getHTTPObject()
{
  var xmlhttp = false;

  /* Compilation conditionnelle d'IE */
  /*@cc_on
  @if (@_jscript_version >= 5)
     try
     {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
     }
     catch (e)
     {
        try
        {
           xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (E)
        {
           xmlhttp = false;
        }
     }
  @else
     xmlhttp = false;
  @end @*/

  /* on essaie de créer l'objet si ce n'est pas déjà fait */
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
  {
     try
     {
        xmlhttp = new XMLHttpRequest();
     }
     catch (e)
     {
        xmlhttp = false;
     }
  }

  return xmlhttp;
}


//Ajout des pages au panier
function addPage(sPathVirtuel, iProduitIdx, iMaxPages)
{
	var iPage = 1;
	var aiPageList = new Array();
	var j = 0;
	for(i = iPage; i <= iMaxPages; i++)	
	{
		var oCheckBox = (typeof(document.getElementById(iProduitIdx + "_" + i)) == "undefined")?false:document.getElementById(iProduitIdx + "_" + i);
		if(oCheckBox)
		{
			if(oCheckBox.checked)
			{
				aiPageList[j] = oCheckBox.value;
				j++;
				oCheckBox.disabled = "disabled";
			}
		}
	}
	var sPageToAdd = "";
	if(aiPageList.length > 0)
	{
		for(i = 0; i < aiPageList.length; i++)
		{
			if(i == (aiPageList.length - 1))
			{
				sPageToAdd += aiPageList[i];
			}
			else
			{
				sPageToAdd += aiPageList[i] + "-";
			}
		}
		var oHttpReq = getHTTPObject();
		oHttpReq.open("GET", sPathVirtuel + "include/addPagesToBasket.php?pageList=" + sPageToAdd, true);
		oHttpReq.onreadystatechange = function() 
								  { 
									if(oHttpReq.readyState == 4 )
									{
										var sResultat = oHttpReq.responseText;
										if(sResultat != "OK")
										{
											alert("Un problème est survenu lors de l'ajout de la page à la commande\nMerci de recommencer ultérieurement.");
										}
										else
										{
											document.location.href='./panier1.php';											
										}
									}
								}
		oHttpReq.send(null); 
	}

}


// Onload des fonctions
function addLoadEvent(func)
{
	var oldonload = window.onload;
	
	if (typeof window.onload != 'function')
	{
		window.onload = func;
	}
	else 
	{
		window.onload = function()
		{
			oldonload();
			func();
		}
	}
}

// Ajoute une classe à un élément
function addClassName(elm, className)
{
    var currentClass = elm.className;
    
	if(!new RegExp(("(^|\\s)" + className + "(\\s|$)"), "i").test(currentClass))
	{
        elm.className = currentClass + ((currentClass.length > 0)? " " : "") + className;
    }
    
	return elm.className;
}

// Supprime une classe à un élément
function removeClassName(elm, className)
{
    var classToRemove = new RegExp(("(^|\\s)" + className + "(\\s|$)"), "i");
    
	elm.className = elm.className.replace(classToRemove, "").replace(/^\s+|\s+$/g, "");
   
	return elm.className;
}

// Récupération d'éléments par nom de classe
document.getElementsByClassName = function(className)
{
	var children = (document.all) ? document.all : document.getElementsByTagName('*');
	var elements = new Array();
	var counter = 0;
	  
	for (var i = 0; i < children.length; i++)
	{
		var child = children[i];
		var classNames = child.className.split(' ');
		for (var j = 0; j < classNames.length; j++)
		{
			if (classNames[j] == className) 
			{
				elements[counter] = child;
				counter++;
				break;
			}
		}
	}
	
	return elements;
}

// Popup centrée
function popup(target, w ,h)
{	
	try
	{
		var winPosY = ((screen.height - w) / 2);
		var winPosX = ((screen.width - h) / 2);
		var preview = window.open(target, "", "resizable=yes, toolbar=no, scrollbars=no, menubar=no, status=no, directories=no, width="+ w +", height="+ h +", left="+ winPosX +", top="+ winPosY +"");
		
		preview.resizeTo(w, h);
		preview.moveTo(winPosX, winPosY);
		preview.focus();
	} catch(e)
	{
	
	}
}


// Ouverture d'un onglet pour la page de détail d'un instrument
function openTab(contentTarget)
{
	var aLink = ["ficheTechnique", "commentContent"];
	var oDivTarget;
	var oLinkTarget;
			
	for(var i = 0; i < aLink.length; i++)
	{
		if(document.getElementById(aLink[i]))
		{
			oDivTarget = document.getElementById(aLink[i]);
			oLinkTarget = document.getElementById("link_tab_" + aLink[i]);
			if(aLink[i] == contentTarget)
			{
				oLinkTarget.className = "on";
				oDivTarget.style.display = "block";
			} else
			{
				oLinkTarget.className = "off";
				oDivTarget.style.display = "none";
			}
		}
	}
}

function changeScrAndHref(p_sImgId, p_sImagePath, p_sLinkId, p_sLinkPath, p_sLinkImageId)
{
	changeSrc(p_sImgId, p_sImagePath);
	changeHref(p_sLinkId, p_sLinkPath, p_sLinkImageId);
}


function changeSrc(p_sImgId, p_sImagePath)
{
	var oImg = document.getElementById(p_sImgId);
	if(oImg)
	{
		oImg.src = p_sImagePath;
	}
	
}

function changeHref(p_sLinkId, p_sImagePath, p_sLinkImageId)
{
	var oLink = document.getElementById(p_sLinkId);
	var oLinkImage = document.getElementById(p_sLinkImageId);
	if(oLink)
	{
		oLink.href = p_sImagePath;
	}
	if(oLinkImage)
	{
		oLinkImage.href = p_sImagePath;
	}
	
}

function ratingValue(oElementA, n)
{
	
	var oInputRatingValue = this.document.getElementById("inputRatingValue");
	var iPreviousValue = oInputRatingValue.value;
	
	oInputRatingValue.value = n;
	
	var iNote = -1;
	if(iPreviousValue == oInputRatingValue.value)
	{
		iNote = iPreviousValue - 1;
	}
	else
	{
		iNote = n;
	}
	oInputRatingValue.value = iNote;
	
	turnStarsOn(iNote);
}

function turnStarsOn(p_iNote)
{
	var aRatingClassName = ["oneStar", "twoStar", "threeStar", "fourStar", "fiveStar"];
	for(var i = 0; i < aRatingClassName.length; i++)
	{
		var oRatingElementA = this.document.getElementById(aRatingClassName[i]);
		if(i > p_iNote -1)
		{
			oRatingElementA.className = "star";
		} 
		else
		{
			oRatingElementA.className = "starOn";
		}
	}
}

function validCommentForm()
{
	var oCommentField = document.getElementById('Comment');
	var bOut = true;
	if(typeof(oCommentField) != 'undefined')
	{
		if(oCommentField.value == '')
		{
			bOut = false;
			alert(g_asLang['pleaseFillComment']);
		}
	}
	
	return bOut;
}

