/* [16/10/2007]*/
/* Grade Web Display Table */

//GradeWD object
function GradeWD(m_id, m_column1, m_column2, m_column3, m_column4){
  this.id=m_id;
  this.column1=m_column1;
  this.column2=m_column2;
  this.column3=m_column3;
  this.column4=m_column4;
}

/*
id : id de l'entrée du cart
Item0:ItemT0:Item1:ItemT1:Item4:ItemT4;
*/
function CartItem(s){
  var tab = s.split('#@#');
  this.id=tab[0];
  this.gradeCategory1ID=tab[1];
  this.gradeCategory2ID=tab[2];
  this.profileCategory1ID=tab[3];
  this.profileCategory2ID=tab[4];
  this.profileCategory3ID=tab[5];
  this.stratixID=tab[6];
  this.dimCategory1ID=tab[7];
  this.web1ID=tab[8];
  this.web1Label=tab[9];
  this.web2ID=tab[10];
  this.web2Label=tab[11];
  this.web3ID=tab[12];
  this.web3Label=tab[13];
  this.web4ID=tab[14];
  this.web4Label=tab[15];
  this.web5ID=tab[16]; //dim
  this.web5Label=tab[17];
  this.backURL=tab[18];
  this.itemQuantity=tab[19];
}

//[18/09/2007]
function getCartHTML(){
  var tmp='';
  for(var i=0; i<cartItems.length; i++){
    var c = cartItems[i];
    tmp+='<item>';
    tmp+='<stratixid>'+c.stratixID+'</stratixid>';
    tmp+='<dimweb>'+c.web5ID+'</dimweb>';
    if(c.profileCategory1ID!=''){
      c1 = categoryT[c.profileCategory1ID+dsm_languagesite];
      tmp+='<profilecategory1id>'+c1.name+'</profilecategory1id>';
    }
    if(c.profileCategory2ID!=''){
      c2 = categoryT[c.profileCategory2ID+dsm_languagesite];
      tmp+='<profilecategory2id>'+c2.name+'</profilecategory2id>';
    }
    if(c.profileCategory3ID!=''){
      c3 = categoryT[c.profileCategory3ID+dsm_languagesite];
      tmp+='<profilecategory3id>'+c3.name+'</profilecategory3id>';
    }
    //tmp+='<url>'+c.backURL+'</url>';
    tmp+='<quantity>'+c.itemQuantity+'</quantity>';
    if(c.dimCategory1ID!=''){
      c4 = categoryT[c.dimCategory1ID+dsm_languagesite];
      tmp+='<unit>'+c4.name+'</unit>';
    }
    tmp+='\r\n';
  }
  tmp+='';
  return tmp;
}
function getCartHTMLOLD(){
  var tmp='<cart>';
  for(var i=0; i<cartItems.length; i++){
    var c = cartItems[i];
    //var u = 'http://'+document.hostname+'/'+dsm_cartdbname+'/GradeByID/'+this.id+'-'+dsm_languagesite+'?OpenDocument&Category='+dsm_viewcurrentcategory;
    
    tmp+='<item>';
    tmp+='<stratixid>'+c.stratixID+'</stratixid>';
    tmp+='<dimweb>'+c.web5ID+'</dimweb>';
    /*
    tmp+=c.id;
    tmp+=c.web1Label;
    tmp+=c.web2Label;
    tmp+=c.web3Label;
    tmp+=c.web4Label;
    tmp+=c.web5Label;*/
    tmp+='<url>'+c.backURL+'</url>';
    tmp+='</item>';
  }
  tmp+='</cart>';
  return tmp;
}


/* retourne un object de type GradeWD */
function getGradeWD(m_GradeCategory1Id){
  var result;
	if(m_GradeCategory1Id in gradeWD_T){
		result = gradeWD_T[m_GradeCategory1Id];
	}
	return result;
}

/* retourne le message web associé à un GradeWD pour une famille donnée */
function getWebColumnMessageForGrade(m_GradeCategory1Id, columnNumber){
  var object = getGradeWD(m_GradeCategory1Id);
  var msgNumber = '20';
  if(object!=null){
    var msgNumber = eval('object.column'+columnNumber);
  }
  return msgNumber;
}


/* affiche un bloc, une image en fond et un message par dessus */
function getBloc1(msg){
  var tmp='<TABLE WIDTH=300px BORDER=0 CELLPADDING=5 CELLSPACING=0 STYLE="background-image:url(/ims_common_img/block1.gif);">';
	tmp+='<TR><TD><B>'+msg+'</B></TD></TR>';
	tmp+='</TABLE>';
	return tmp;
}
function dspBloc1(msg){
  var bloc = getBloc1(msg);
	document.write(bloc);
}

var already = new Array();

function dspdsp1(gradeId){
  if(gradeId in already){
  }else{
    document.write('<tr class="cat2Header"><td colspan=7></td></tr>');
    document.write('<tr class="cat2Header"><td colspan=7>');
    //dspBloc1(categoryT[gradeId+dsm_languagesite].name);
    document.write(categoryT[gradeId+dsm_languagesite].name);
    document.write('</td></tr>');
    var w1=getWebColumnMessageForGrade(gradeId, 1);
    var w2=getWebColumnMessageForGrade(gradeId, 2);
    var w3=getWebColumnMessageForGrade(gradeId, 3);
    var w4=getWebColumnMessageForGrade(gradeId, 4);
    document.write('<tr><td>'+getMsg(w1)+'</td><td>'+getMsg(w2)+'</td><td>'+getMsg(w3)+'</td><td>'+getMsg(w4)+'</td><td></td><td></td><td></td></tr>');
    
    already[gradeId]='true';
  }
}


/* affiche toutes les picto d'une nuance*/
function displayPictos(allForms){
	var forms = allForms.split('#@@#');
	if(forms.length>0){
    var tmp='';
  	for(var i=0; i<forms.length; i++){
      var altText = '';
      try{
        var c = categoryT[forms[i]+dsm_languagesite];
        altText = c.name;
      }catch(ex){
        altText = '-';
      }
      tmp += '<img src="/ims_common_img/'+forms[i]+'.gif" alt="'+altText+'" title="'+altText+'"> ';
  	}
  	document.write(tmp);
	}
}

function displayUnit(k){
	var key = k+dsm_languagesite;
	var c  = categoryT[key];
	if(c!=null && c!='undefined')
    document.write( c.name );
}

var displayLegendForPDF1=false;
var displayLegendForPDF2=false;
/* utilisée dans la navigation par famille et par forme */ 
function displayGradeFiles(id, file1, file2){
  var u = '/'+dsm_cat2dbname+'/GradeByID/'+id+'-'+dsm_languagesite+'/$FILE/';
  var tmp = '';
  if(file1!=''){
    tmp += '<a target="_blank" href="'+u+file1+'"><img border=0 src="/ims_common_img/catalog_fichetech.gif" ALT="'+getMsg(424)+'" Title="'+getMsg(424)+'"></a>';
    tmp+='&nbsp;';
    displayLegendForPDF1=true;
  }else{
    //tmp += '<img border=0 src="/ims_common_img/catalog_fichetech_off.gif" ALT="'+getMsg(424)+'">';
  }
  if(file2!=''){
    tmp += '<a target="_blank" href="'+u+file2+'"><img border=0 src="/ims_common_img/catalog_fichedim.gif" ALT="'+getMsg(423)+'" Title="'+getMsg(423)+'"></a>';
    tmp+='&nbsp;';
    displayLegendForPDF2=true;
  }else{
    //tmp += '<img border=0 src="/ims_common_img/catalog_fichedim_off.gif" ALT="'+getMsg(423)+'">';
  }
    
  //var u = '<img src="/ims_france_img/views.gif">';
  document.write(tmp);
}

function displayLegend(displayPart3){
  var tmp='<TABLE WIDTH=100%>';
  if(displayLegendForPDF1){
    tmp+='<TR><TD WIDTH=15><img border=0 src="/ims_common_img/catalog_fichetech.gif"></TD>';
    tmp+='<TD>'+getMsg(424)+'</TD></TR>';
  }
  if(displayLegendForPDF2){
    tmp+='<TR><TD WIDTH=15><img border=0 src="/ims_common_img/catalog_fichedim.gif"></TD>';
    tmp+='<TD>'+getMsg(423)+'</TD></TR>';
  }
  if(displayPart3 && ShowDimList){
    tmp+='<TR><TD WIDTH=15><img border=0 src="/ims_common_img/catalog_dimlist.gif"></TD>';
    tmp+='<TD>'+getMsg(465)+'</TD></TR>';
  }
  tmp+='</TABLE>';
  document.write(tmp);
}






/* Cart */
function displayForms(p1, p2, p3){
	if(p1!='') document.write( categoryT[Number(p1)+dsm_languagesite].name );
	if(p2!='') document.write( ' > ' + categoryT[Number(p2)+dsm_languagesite].name );
	if(p3!='') document.write( ' > ' + categoryT[Number(p3)+dsm_languagesite].name );
}

/*display the cart image*/
function dspCartItem(itemId){
if(ShowCartInFirstNavigation){
//<IMG SRC=\"/ims_common_img/cart.gif\" border=0/>
	if( isInCart(itemId) ){
		document.write('<img src="/ims_common_img/cart_red.gif" border=0 />');
	}else{
    //add to cart
		document.write('<img src="/ims_common_img/cart.gif" border=0 alt="'+getMsg(462)+'" title="'+getMsg(462)+'"/>');
	}
	}
}

/* 
type : GRADE|DIM
g1 : GradeCategory1ID (family)
g2 : GradeCategory2ID (sub-family)
p1 : ProfileCategory1ID (form)
p2 : ProfileCategory2ID (execution)
p3 : ProfileCategory3ID (finition)
d1 : DimCategory1ID (unit)
allValues : #@# is used as separator
allLabels : #@# is used as separator
*/
function addItemToCart(key, type, language, g1, g2, p1, p2, p3, stratixId, d1, allValues, allLabels){
  //alert(key+'@'+type+'@'+language+'@'+g1+'@'+g2+'@'+p1+'@'+p2+'@'+p3+'@'+stratixId+'@'+allValues);
	if( !isInCart(key) ){
		if (!confirm(getMsg(462))){
			return false;
		}
		var f = document.forms['Item'];
		
		if(f.UserID.value=='')
		  f.UserID.value=getCookie('dsm_id');
		
		var labels = allLabels.split('#@#');
		var values = allValues.split('#@#');
		f.ItemID.value=key;
		f.ItemType.value = type;
		f.ItemLanguage.value = language;
		f.ItemGradeCategory1ID.value= g1;
		f.ItemGradeCategory2ID.value = g2;
		f.ItemProfileCategory1ID.value = p1;
		f.ItemProfileCategory2ID.value = p2;
		f.ItemProfileCategory3ID.value = p3;
		f.ItemStratixID.value = stratixId;
		f.ItemDimCategory1ID.value = d1;
		if(values[0]) f.Item0.value = values[0];
		if(values[1]) f.Item1.value = values[1];
		if(values[2]) f.Item2.value = values[2];
		if(values[3]) f.Item3.value = values[3];
		if(values[4]) f.Item4.value = values[4];
		if(values[5]) f.Item5.value = values[5];
		if(values[6]) f.Item6.value = values[6];
		if(values[7]) f.Item7.value = values[7];
		
		if(labels[0]) f.ItemT0.value = labels[0];
		if(labels[1]) f.ItemT1.value = labels[1];
		if(labels[2]) f.ItemT2.value = labels[2];
		if(labels[3]) f.ItemT3.value = labels[3];
		if(labels[4]) f.ItemT4.value = labels[4];
		if(labels[5]) f.ItemT5.value = labels[5];
		if(labels[6]) f.ItemT6.value = labels[6];
		if(labels[7]) f.ItemT7.value = labels[7];
		
		//var uu = 'http://'+document.hostname+'/'+dsm_cartdbname+'/GradeByID/'+this.id+'-'+dsm_languagesite+'?OpenDocument&Category='+dsm_viewcurrentcategory;
		//var u = String(document.location);
		//var host = document.location.host;
		//f.backURL.value = u.substring(u.indexOf(host)+host.length, u.length);
		f.backURL.value = String(document.location);
		
		f.submit();
	}else{
		alert(getMsg(429));
	}
}

function saveLocation(){
  var u = String(document.location);
  setCookie('dsm_cartbackurl',u, 0)
}




function loadLocation(){
  var u = getCookie('dsm_cartbackurl');
  document.location = u;
}

/* affiche le lien qui permet d'effacer un élément du caddie */
function displayTrashForDeletion(id){
  var u = '/' + dsm_cartdbname + '/0/' + id + '?DeleteDocument&Category=' + dsm_viewcurrentcategory;
  var tmp = '<a href="' + u + '" onClick="return askForDelete();"><img src="/ims_common_img/trash.gif" border=0 alt="'+getMsg(463)+'" title="'+getMsg(463)+'"></a>';
  document.write(tmp);
}

/* used in cart : return true / false*/
function askForDelete(){
  if (!confirm(getMsg(463))){
			return false;
	}
	return true;
}



function selectItemsFromCart(){
	var elems = document.getElementsByTagName('TR');
	for(var i=0; i<elems.length; i++){
		var elem = elems[i].id;
		if(elem.indexOf("item-")>-1){
			var id = elem.substring(5, elem.length);
			if( isInCart(id) ){
				var line = document.getElementById('item-'+id);
				line.className='cat2CartSelectedItem';
			}
		}
	}
}
function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function getLinkToDimList(gradeId, profileId){
  var tmp = '/'+dsm_cat2dbname+'/DimByGradeProfile?OpenForm&RestrictToCategory='+gradeId+'-'+profileId+'&Category='+dsm_viewcurrentcategory+'&Count=1000';
  
  if(gradeId!='' && profileId!='') return tmp;
  else return '';
}
function displayLinkToDimList(label, gradeId, profileId){
  if(ShowDimList){
  var tmp = '<a href="'+getLinkToDimList(gradeId,profileId)+'" class="dimList">'+label+'</a>&nbsp;';
  
  if(gradeId!='' && profileId!=''){
    document.write(tmp);
  }
  }
}
//utilis‚ dans la fiche d‚taill‚e GradeWeb
function displayLinkToDimList2(gradeId, profileId){
  var tmp = '';
  var u = getLinkToDimList(gradeId,profileId);
  tmp+='<a href="'+ u +'">'+getMsg(427)+'</a>';
  document.write(tmp);
}
//<img border="0" src="/ims_common_img/catalog_dimlist.gif">
function getLinkToGrade(id){
  var tmp = '/' + dsm_cat2dbname + '/GradeByID/' + id + '-'+dsm_languagesite+'?OpenDocument&Category='+dsm_viewcurrentcategory;
  return tmp;
}
function displayLinkToGradeOrDimList(label, gradeId, profileId){
  if(ShowDimList){
    var tmp = '<a href="'+getLinkToDimList(gradeId,profileId)+'" class="dimList">'+label+'</a>&nbsp;';
    if(gradeId!='' && profileId!=''){
      document.write(tmp);
    }
  }else{
    var tmp = '<a href='+getLinkToGrade(gradeId)+'>'+label+'</a>&nbsp;';
    document.write(tmp);
  }
}
function displayLinkToGrade(gradeId){
  if(ShowDimList){
    var tmp = '<a href='+getLinkToGrade(gradeId)+'><img border=0 src="/ims_common_img/catalog_dimlist.gif" alt="'+getMsg(465)+'" title="'+getMsg(465)+'"></a>&nbsp;';
    document.write(tmp);
  }
}
function displayLinkToGrade2(id, label){
  var tmp = '<a href='+getLinkToGrade(id)+'>'+label+'</a>';
  document.write(tmp);
}




function refreshPage(type, stage, value){
  var targetPage = '';
  
  if(type=='BYFAMILY'){
    if(stage==1){
      targetPage = '&GradeCategory1ID='+value;
    }
    if(stage==2){
      targetPage = '&GradeCategory1ID='+GradeCategory1ID+'&GradeCategory2ID='+value;
    }
    if(stage==3){
      targetPage = '&GradeCategory1ID='+GradeCategory1ID+'&GradeCategory2ID='+GradeCategory2ID+'&ProfileCategory1ID='+value;
    }
    if(stage==4){
      targetPage = '&GradeCategory1ID='+GradeCategory1ID+'&GradeCategory2ID='+GradeCategory2ID+'&ProfileCategory1ID='+ProfileCategory1ID+'&ProfileCategory2ID='+value;
    }
    if(stage==5){
      targetPage = '&GradeCategory1ID='+GradeCategory1ID+'&GradeCategory2ID='+GradeCategory2ID+'&ProfileCategory1ID='+ProfileCategory1ID+'&ProfileCategory2ID='+ProfileCategory2ID+'&ProfileCategory3ID='+value;
    }
    
    targetPage = '/'+dsm_cat2dbname + '/GradeByFamily?OpenForm' + targetPage + '&Category='+dsm_viewcurrentcategory+'&Count=1000#RESULTS';
  }
  
  if(type=='BYFORM'){
    if(stage==1){
      targetPage = '&ProfileCategory1ID='+value;
    }
    if(stage==2){
      targetPage = '&ProfileCategory1ID='+ProfileCategory1ID+'&ProfileCategory2ID='+value;
    }
    if(stage==3){
      targetPage = '&ProfileCategory1ID='+ProfileCategory1ID+'&ProfileCategory2ID='+ProfileCategory2ID+'&ProfileCategory3ID='+value;
    }
    if(stage==4){
      targetPage = '&ProfileCategory1ID='+ProfileCategory1ID+'&ProfileCategory2ID='+ProfileCategory2ID+'&ProfileCategory3ID='+ProfileCategory3ID+'&GradeCategory1ID='+value;
    }
    if(stage==5){
      targetPage = '&ProfileCategory1ID='+ProfileCategory1ID+'&ProfileCategory2ID='+ProfileCategory2ID+'&ProfileCategory3ID='+ProfileCategory3ID+'&GradeCategory1ID='+GradeCategory1ID+'&GradeCategory2ID='+value;
    }
    
    targetPage = '/'+dsm_cat2dbname + '/GradeByForm?OpenForm' + targetPage + '&Category='+dsm_viewcurrentcategory+'&Count=1000#RESULTS';
  }
	
	document.location = targetPage;
}
function refreshPage2(key, value){
	var targetPage = '';
	if(key=='GradeCategory1ID') {
		targetPage = '&GradeCategory1ID='+value;
	}
	if(key=='GradeCategory2ID') {
		targetPage = '&GradeCategory1ID='+GradeCategory1ID+'&GradeCategory2ID='+value;
	}
	if(key=='ProfileCategory1ID') {
		targetPage = '&GradeCategory1ID='+GradeCategory1ID+'&GradeCategory2ID='+GradeCategory2ID+'&ProfileCategory1ID='+value;
	}
	if(key=='ProfileCategory2ID') {
		targetPage = '&GradeCategory1ID='+GradeCategory1ID+'&GradeCategory2ID='+GradeCategory2ID+'&ProfileCategory1ID='+ProfileCategory1ID+'&ProfileCategory2ID='+value;
	}
	if(key=='ProfileCategory3ID') {
		targetPage = '&GradeCategory1ID='+GradeCategory1ID+'&GradeCategory2ID='+GradeCategory2ID+'&ProfileCategory1ID='+ProfileCategory1ID+'&ProfileCategory2ID='+ProfileCategory2ID+'&ProfileCategory3ID='+value;
	}
	targetPage = '/'+dsm_cat2dbname + '/GradeByFamily?OpenForm' + targetPage + '&Category='+dsm_viewcurrentcategory+'&Count=1000';
	document.location = targetPage;
}

function isInCart(key){
  var i=0;
  while(i<cartItems.length){
    var c = cartItems[i];
    if( c.id == key ) return true;
    i++;
  }
  return false;
}

function getCartSize(){
	return cartItems.length;
}


var displayCol1=false;
var displayCol2=false;
var displayCol3=false;
var displayCol4=false;
var displayCol5=false;

function formatNumber(nb, colNumber){
  //ex : input=1152.000 //outpu=1152,000
  var n = 0;
  if(nb=='') return;
  
  if(nb.length>0){
     n = Number(nb.replaceAll(',',''));
     if(nb<=0) return;
     n = n.toFixed(2);
  }
  
  eval('displayCol'+String(colNumber)+'=true');
  
  var s = String(n);
  s = s.replaceAll('.',',');
  document.write(s);
  return;
}


//[27/08/2007]
function adjustDimTable(){
  var tab = document.getElementById('dimTable');
  for(i=0; i<tab.tBodies[0].rows.length; i++){
    //if(!displayCol5) tab.tBodies[0].rows[i].deleteCell(5);
    if(!displayCol4) tab.tBodies[0].rows[i].deleteCell(4);
    if(!displayCol3) tab.tBodies[0].rows[i].deleteCell(3);
    if(!displayCol2) tab.tBodies[0].rows[i].deleteCell(2);
    if(!displayCol1) tab.tBodies[0].rows[i].deleteCell(1);
  }
}
