/* 
 * 
 * This script is based on one originally written by Marco Antonio Gil and distributed
 * through The JavaScript Source.
 * 
 * The original version of the script and many more are available free online at
The JavaScript Source!! http://javascript.internet.com
Created by: Marco Antonio Gil :: marcogil@thyssenkruppelevadores.com.br 

 * This code is copyright PLATOSYS and may be used in accordance
with the terms set out in the file licence.txt distributed in the root folder of this distribution.



 * 
 */



//var selectedGTab;
var gTabLabelsArray = new Array();
var gTabIdsArray = new Array();


function gTabs() {
  //test the arguments for correctness:
  if(arguments.length < 1){
      return false;
  }
  if(((arguments.length-1) % 2)!=0){
      document.write("wrong number of tab args");
      return false;
  }
 var selectedGTab= arguments[0];
 var narguments= new Array();
  for (var i = 1; i<arguments.length; i++){
      narguments[i-1]=arguments[i];
  }


  var numberOfGTabs=(narguments.length/2);
  var gTabIterator;
   for(gTabIterator=0; gTabIterator<numberOfGTabs; gTabIterator++) {
      
      gTabIdsArray[gTabIterator]=narguments[(gTabIterator)*2];
      //document.write('<p>'+gTabIterator+gTabIdsArray[gTabIterator-1]+'</p>');
      gTabLabelsArray[gTabIterator]=narguments[(gTabIterator*2)+1];
  }
  
  
  
  document.write('<table class="gilTab" cellspacing="0"  width="100%">');
  document.write('<thead>');
  document.write('   <tr>');
  //write out the tabs, as the table head: 
  var gTabClass;
  for( gTabIterator=0; gTabIterator<numberOfGTabs;  gTabIterator++) {
     
     if (gTabIterator==selectedGTab){
         gTabClass ="gTabOn";
     }else{
         gTabClass="gTabOff";
     }    
     document.write('<th class="'+gTabClass+'" onmouseover="gTabMouseOver(' + gTabIterator + ')" onmouseout="gTabMouseOut(' + (gTabIterator) + ')"  id="gTabNumber' + (gTabIterator) + '">');
     document.write(gTabLabelsArray[gTabIterator]);
     //document.write('<p>'+selectedGTab+'<p>');
     document.write('</th>')
  }
  document.write('   </tr>');
  document.write('</thead>');
  
  //now create the empty table body, with one cell spanning all the heading tabs.
  document.write('<tbody');
  document.write('   <tr>');
  document.write('      <td  class="gTabContent" colspan="' + numberOfGTabs + '">');
  document.write('         <div id="gTabContent">');
  document.write('            tab\'s content');
  document.write('         </div>');
  document.write('      </td>');
  document.write('   </tr>');
  document.write('</tbody>');
  document.write('</table>');
  //now write the selected tab content to the table body:
  for(gTabIterator=0; gTabIterator<numberOfGTabs; gTabIterator++) {
      
    if((gTabIterator)==selectedGTab) {
        
      try {
        document.getElementById('gTabContent').innerHTML=document.getElementById(gTabIdsArray[gTabIterator]).innerHTML;
        return true;
      }
      catch(vgilTab_err) {
          return false;
      }
    }
   
  }
  return true;
}


function gTabMouseOver(gTabNumber) {
  if(gTabNumber==selectedGTab) {
      return false;
  }
  var gTabOn;
  var gTabOff;
  try {
    if(document.getElementById(gTabIdsArray[gTabNumber])) {
      gTabMouseOut(gTabNumber);
      gTabOn = document.getElementById('gTabNumber'+gTabNumber);
      gTabOff = document.getElementById('gTabNumber'+selectedGTab);
      gTabOn.className = 'gTabOn';
      gTabOff.className = 'gTabOff';
      document.getElementById(gTabIdsArray[selectedGTab]).innerHTML=document.getElementById('gTabContent').innerHTML;
      document.getElementById('gTabContent').innerHTML=document.getElementById(gTabIdsArray[gTabNumber]).innerHTML;
      selectedGTab = gTabNumber;
    }
  }
  catch(gTabError) { }
  return true;
}


function gTabMouseOut(gTabNumber) {
  if(gTabNumber==selectedGTab) {
      return false;
  }
  var gTabMouseout;
  try {
    gTabMouseout = document.getElementById('gTabNumber'+gTabNumber);
    gTabMouseout.style.cursor='auto';
    gTabMouseout.className='gTabOff';
  }
  catch(gTabError) { }
  return true;
}

