 // Norsk - engelsk valg
 
 function MM_goToURL() { //v3.0
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}

// WebShop
function FormatAmount(Amount, Delimiter, NumberOfDigits)
{
  var posOfPeriod = Amount.indexOf('.')
  var posOfComma = Amount.indexOf(',')
  
  var split1;
  var split2;
  var splittedStr;
  var MSG;
   if (posOfPeriod > 0)
  {
    //Alert ("found .")
    //MSG ='found .';
    splittedStr = Amount.split(".");
    split1 = splittedStr[0];
    split2 = splittedStr[1];
    if (split2.length > NumberOfDigits)
    {
      split2 = split2.substr(0,2);
    }
    MSG = split1+Delimiter+split2;
  }
  
  if(posOfComma > 0)
  {
    splittedStr = Amount.split(",");
    split1 = splittedStr[0];
    split2 = splittedStr[1];
    if (split2.length > NumberOfDigits)
    {
      split2 = split2.substr(0,2);
    }
    MSG = split1+Delimiter+split2;
  }
  return MSG;
}
// **************************************************
// **************************************************
// **************************************************
// **************************************************
// **************************************************
// ******************Productsmodel*******************
var PreAttribID = 0;
    
    var browserType;

			if (document.layers)
			{
				browserType = "nn4"
			}
			if (document.all)
			{
				browserType = "ie"
			}
			if (window.navigator.userAgent.toLowerCase().match("gecko"))
			{
				browserType= "gecko"
			}
    //We keep track of previously choices
    var SelectedValue = -1;
    var NrOfAttr;// =  document.forms["Form1"].NrOfAttributes.value ;// Number of attributes
    var strDDLs;// =  document.forms["Form1"].Modells.value; // ProductsModels string, '1_1,3_1|1_2,3_1';
    var NrOfModels//; = document.forms["Form1"].NrOfModells.value; //Number of models
    var myDDLsArray; // = new Array(NrOfModels);
    var KeyValueString;// = document.forms["Form1"].KeyValuePairs.value; // KeyValue string
    var KeyValuePairArr;  // KeyValue Array;
    
        
    function Init(Modells, NrOfAttributes, NrOfModells, KeyValueList)
    //function Init()
    {
      //alert (document.forms["Form1"].Modells.value);
      strDDLs = Modells; //document.forms["Form1"].Modells.value; //Modells; //
      //alert ('models: ' +strDDLs);
      
      NrOfAttr = NrOfAttributes; //document.forms["Form1"].NrOfAttributes.value ; //NrOfAttributes; //
      //alert ('antall attributter: '+document.forms["Form1"].NrOfAttributes.value);
      
      NrOfModels = NrOfModells; //document.forms["Form1"].NrOfModells.value; //NrOfModells; //
      //alert ('Nr models: ' + document.forms["Form1"].NrOfModells.value);
      //alert ('antall modeller: ' + NrOfModels);
      //Models list
      myDDLsArray = new Array(parseInt(NrOfModels));
      //alert ('lengde: ' + myDDLsArray.length);
      //KeyValue list
      KeyValueString = KeyValueList; //document.forms["Form1"].KeyValuePairs.value; //KeyValueList; //
      //alert (KeyValueString);
      KeyValuePairArr = new Array();
      KeyValuePairArr = SplitText(KeyValueString, '|');
      
      // Initiating a 2D array;
      for (i=0; i<myDDLsArray.length; i++)
      {
        myDDLsArray[i] = new Array(parseInt(NrOfAttr));
      }      
      //document.write (Modells + ' ... ' +  NrOfAttr+ ' ... '+ NrOfModels)
      
      var myDDLsArrayTemp = new Array();
      myDDLsArrayTemp = SplitText(strDDLs, '|');
      var arrValue = '';
      for (i=0; i<myDDLsArray.length; i++)
      {
        var myDDlArrayTemp = new Array();
        myDDlArrayTemp = SplitText(myDDLsArrayTemp[i], ',');
        for (j=0; j<myDDLsArray[i].length; j++)
        {
          myDDLsArray[i][j]= myDDlArrayTemp[j];
          arrValue += myDDlArrayTemp[j] + ' ';
          //alert ('value: ' +myDDlArrayTemp[j]);
        } 
        arrValue += '\r';       
      }
      //alert (arrValue);
      //var test = '';
      //We drawing the first AttributesDDL
      //we sending a value for selectedValue for the first time, see last var
      //alert (PreAttribID);
     // alert ('ant attrib: ' + NrOfAttr);
      nasser (myDDLsArray, NrOfAttr, 0, 1, 0);
    }
    
    function ShowNext(next)
		{
      var div = 'div'+next;
      //alert ('divnext: ' + div);
			if (browserType == "gecko" )
			{
				document.poppedLayer = eval('document.getElementById(\''+div+'\')');
			}
			else if (browserType == "ie")
			{
				document.poppedLayer = eval('document.all[\''+div+'\']');
			}	
			else
			{
				document.poppedLayer = eval('document.layers[\''+div+'\']');
			}
			document.poppedLayer.style.visibility = "visible";
		}
		
    /*		
    TheArray: The array which contains modells
    NrOfAttrib: number of attributes whichis the length og column in the array too
    Column: index of the column
    NextColumn index of the next column
    PreviouslyAttribID: the id to the DDL that last value selcted from
    */
    
    function nasser(TheArray,  NrOfAttrib, Column, NextColumn, PreviouslyAttribID)
    {
     //alert ('NrOfAttrib '+ NrOfAttrib)
     // alert  ('Column: ' + Column + '\rNextColumn: ' + NextColumn+ '\r PreviouslyAttribID:' + PreviouslyAttribID);
      if (parseInt(NextColumn) < parseInt(Column))
      {
       // alert('feil');
      }
      if (parseInt(PreviouslyAttribID) > 0)
      {
       // alert ('pre value: ' + PreviouslyAttribID);
        if (eval ('document.forms["Form_models"].Attribute_'+PreviouslyAttribID != null))
        {
          var optionStr = eval('document.forms["Form_models"].Attribute_'+PreviouslyAttribID+'.value');
          //alert ('du har valgt: ' +optionStr );
          
          SelectedValue += eval ('document.forms["Form_models"].Attribute_'+PreviouslyAttribID+'.value') +',';
          //alert (SelectedValue);
        }
        else
        {
			//alert ('no value!');
        }        
      }
      var NextCol;
      var AttribID;
      var strTemp = '';
      /*	alert (parseInt(myDDLsArray[parseInt(Column)][0].length-1));
      if (parseInt(Column) == (parseInt(myDDLsArray[parseInt(Column)][0].length-1)))
      {
        alert ('send  ');
         NextCol = 'send';
      }*/
      if (parseInt(Column) == parseInt(NrOfAttr))
      {
		   // alert ('send  ');
         NextCol = 'send';
      }
      else
      {
        NextCol = parseInt(NextColumn) + 1;
      }

      if (NextCol == 'send')
      {
        ShowNext(NextCol, AttribID);
      }
      else
      {
        //alert ('NrOfAttrib: ' +NrOfAttrib)
        for (i=0;i < parseInt(NrOfModels); i++)
        //for (i=0;i < NrOfModels; i++)
        {
         // alert ('i: '+ i + '\r');
          if(undefined  != myDDLsArray[i][Column])
          {
            if (i == 0)
            {
               var AtttribIDArr = SplitText(myDDLsArray[i][Column], '_');
               AttribID = AtttribIDArr[0];
            }
            
            
            
            if (parseInt(Column) > 0)
            {
              //alert ('neste');
              var StringToBeMatched = SelectedValue.substring(2, SelectedValue.length);
              //We have a match
              if (strDDLs.match(StringToBeMatched+myDDLsArray[i][Column]) != null)
              {
                // We add the first one no matter what
                if (i == 0)
                {
                 //alert ('0');
                 var Key = '';
                 for (l=0; l<KeyValuePairArr.length; l++)
                 {                 
                  if (KeyValuePairArr[l].match(myDDLsArray[i][Column]) != null)
                  {
                    var ThisPair = new Array();
                    ThisPair = SplitText(KeyValuePairArr[l], ',');
                    Key = ThisPair[1];
                  }  
                 }
                 strTemp += '<option value="'+myDDLsArray[i][Column]+'">'+Key+'</option>';
                }
                var exists = '0';
                //We try to get ride of duplicated value
                if (i > 0)
                {
                  //alert ('i: '+ i);
                  for (k=0; k<i; k++)
                  {
                    if (myDDLsArray[i][Column] == myDDLsArray[k][Column])
                    {
                      exists = '1';
                    }
                  }
                  if (exists == '0')
                  {
                     var Key = '';
                     for (l=0; l<KeyValuePairArr.length; l++)
                     {                 
                      if (KeyValuePairArr[l].match(myDDLsArray[i][Column]) != null)
                      {
                        var ThisPair = new Array();
                        ThisPair = SplitText(KeyValuePairArr[l], ',');
                        Key = ThisPair[1];
                        strTemp += '<option value="'+myDDLsArray[i][Column]+'">'+Key+'</option>';
                      }
                    }
                  }
               }
              }
            }
            if(parseInt(Column) == 0 ) //Column == 0)
            {
              //alert ('col: ' + Column );
              if (i == 0)
              {
                //alert ('0');
                 var Key = '';
                 for (l=0; l<KeyValuePairArr.length; l++)
                 {                 
                  if (KeyValuePairArr[l].match(myDDLsArray[i][Column]) != null)
                  {
                    var ThisPair = new Array();
                    ThisPair = SplitText(KeyValuePairArr[l], ',');
                    Key = ThisPair[1];
                  }  
                 }
                 //var resultat = eval(myDDLsArray[i][parseInt(Column)]);
                 //alert (resultat);
                 strTemp += '<option value="'+myDDLsArray[i][Column]+'">'+Key+'</option>';
              }
              var exists = '0';
              //We try to get ride of duplicated value
              if (i > 0)
              {
                //alert ('i: '+ i);
                for (k=0; k<i; k++)
                {
                  if (myDDLsArray[i][Column] == myDDLsArray[k][Column])
                  {
                    exists = '1';
                  }
                }
                if (exists == '0')
                {
                 var Key = '';
                 for (l=0; l<KeyValuePairArr.length; l++)
                 {                 
                  if (KeyValuePairArr[l].match(myDDLsArray[i][Column]) != null)
                  {
                    var ThisPair = new Array();
                    ThisPair = SplitText(KeyValuePairArr[l], ',');
                    Key = ThisPair[1];
                    strTemp += '<option value="'+myDDLsArray[i][Column]+'">'+Key+'</option>';
                  }
                 }
                }
              }
            }
          }    
        }
        strTemp += '</select></td></tr>';
        strTemp = '<td class="dropdown"><select name="Attribute_'+AttribID+'" onChange="nasser(myDDLsArray, NrOfAttr,'+NextColumn+','+NextCol+','+AttribID+')"><option value="0">Velg</option>' + strTemp;
		    //alert (strTemp)
        //alert ("div"+AttribID);
    		var FieldID = document.getElementById("div"+AttribID);
    		var FieldInnerHTML = FieldID.innerHTML;
    		//alert (FieldInnerHTML);
    		//FieldInnerHTML.replace("$select$", strTemp);
    		FieldInnerHTML = '<tr><td align="right"  bgcolor="red"><strong>'+FieldInnerHTML+':</strong>&nbsp;&nbsp;</td>'+ strTemp;
    		//alert (FieldInnerHTML);
        eval('div'+AttribID+'.innerHTML = FieldInnerHTML');
        //ShowNext(NextCol, AttribID);
        ShowNext(AttribID); //, AttribID);
      }
    }

  	function SplitText (text, del)
	{
    return text.split(del);
	}


