function getObj (name) {
    if (typeof name == "object") return name;
    if (jsDOM1) return document.getElementById(name);
    if (jsDOM0) return eval('document.all.'+name);
    else return null;
    }


var Br = new BrCheck()

function BrCheck()
{
	this.VER	= navigator.appVersion;
	this.AGENT	= navigator.userAgent.replace(/[\/]/g,' ');
	this.DOM	= document.getElementById ? true:false;

	this.OP5	= this.AGENT.indexOf("Opera 5")>-1							?true:false;
	this.OP6	= this.AGENT.indexOf("Opera 6")>-1							?true:false;
	this.OP7	= this.AGENT.indexOf("Opera 7")>-1							?true:false;
	this.OP8	= this.AGENT.indexOf("Opera 8")>-1							?true:false;
	this.OP		= (this.OP5 || this.OP6 || this.OP7 || this.OP8);

	this.IE4	= (document.all && !this.DOM && !this.OP)					?true:false;
	this.IE5	= (this.VER.indexOf("MSIE 5")>-1 && this.DOM && !this.OP)	?true:false; 
	this.IE6	= (this.VER.indexOf("MSIE 6")>-1 && this.DOM && !this.OP)	?true:false;
	this.IE7	= (this.VER.indexOf("MSIE 7")>-1 && this.DOM && !this.OP)	?true:false;
	this.IE		= (this.IE4 || this.IE5 || this.IE6 || this.IE7);

	this.NS4	= (document.layers && !this.DOM)							?true:false;
	this.NS7	= (this.DOM && parseInt(this.VER) >= 5 && this.AGENT.lastIndexOf('Netscape')<this.AGENT.lastIndexOf('7'))?true:false;
	this.NS6	= (this.DOM && parseInt(this.VER) >= 5 && !this.NS7)		?true:false;
	this.NS		= (this.NS4 || this.NS6 || this.NS7);

	return this;
}


window.onload = 
function initAddon(){
  
  var addonTbls = initTabformAddon();
  
  for(at=0;at<addonTbls.length;at++)
    {
      if(addonTbls[at].id == null || addonTbls[at].id == '')
        addonTbls[at].id = 'addonTbls_'+at;
      
         addonTbls[at].style.margin ='20px 0 0 0' ;
        //nefunguje v IE
        //addonTbls[at].getElementsByTagName("tbody")[0].innerHTML = addonTbls[at].getElementsByTagName("tbody")[0].innerHTML+'<tr><th colspan="20">&nbsp;</th></tr>';
      
        addonTbls[at].rows[0].cells[0].innerHTML = '<div class="toolcontainer"><!--img src="img/tc_no.gif" alt="Nástroje"/-->'+getToolboxHTML(addonTbls[at].id)+'</div>'+addonTbls[at].rows[0].cells[0].innerHTML;
    }
}

function initTabformAddon()
{
  var addonTbls = new Array();
  
  var tbls = document.getElementsByTagName("TABLE");
  
  for(tt=0;tt<tbls.length;tt++)
    {
      if(tbls[tt] != null && tbls[tt].className!=null)
        {
          // najdutabulky s classem tabform  + addon
          if(tbls[tt].className.toString().indexOf("tabform")>-1 && tbls[tt].className.toString().indexOf("addon")>-1) 
            {
              addonTbls[addonTbls.length] = tbls[tt];
            }
        }
    }
  return addonTbls;
}

function getToolboxHTML(addonTblid)
{   
    var strExpXLS = ''
    var strExpCSV = ''
    if(Br.IE)
      strExpXLS = '<div class="tool" onclick="exportToExcel(document.getElementById(\''+addonTblid+'\'));"><img src="img/to_fav.gif" title="Export do Excel" alt="Export do Excel"/>&nbsp;XLS</div>'
    
     strExpCSV = '<div class="tool" onclick="exportToCSV(document.getElementById(\''+addonTblid+'\'));"><img src="img/to_fav.gif" title="Export do CSV" alt="Export do CSV"/>&nbsp;CSV</div>'

   return '<fieldset class="toolbox"><legend onclick="ViewTools(this);"><!--img src="img/tc_no.gif"/-->&#160;Export</legend><div class="content">'+strExpXLS+''+strExpCSV+'</div></fieldset>';
}


function exportToExcel(addonTable)
{
if (Br.IE)
  {
    var oExcel = new ActiveXObject("Excel.Application");
    var oBook = oExcel.Workbooks.Add;
    var oSheet = oBook.Worksheets(1);
    
    for (var y=0;y<addonTable.rows.length;y++)
    {
      for (var x=0;x<addonTable.rows(y).cells.length;x++)
        {
          oSheet.Cells(y+1,x+1) = addonTable.rows(y).cells(x).innerText;
        }
    }
    oExcel.Visible = true;
    oExcel.UserControl = true;
  }
}

function exportToCSV(addonTable)
{
    var strCSV='';    
    strCSV += tableRowsToCSV(addonTable.rows);

    exportFile('i6webexport.csv',strCSV);
}

function exportFile(exportAs,strContent) {

    var csvText  = strContent
    csvText = "testovaci obsah csv";

if (Br.IE)
  {
    var expIFrame;
    expIFrame = window;
    var doc = expIFrame.document;
    doc.open('text/csv');
    doc.charset = "utf-8";
    doc.write(strContent);
    doc.close();
    var fileName = exportAs;
    doc.execCommand("SaveAs", null,fileName);
    self.history.back();
}
else
  {
    //pro FF nefunguje executaCommand("saveAs")
    //do okna
    var win = window.open(
    'data:text/csv,' + encodeURIComponent([
    ,strContent,
    ].join('\r\n')),
    'I6 data'
    );  
  }
  win.documetn.close();
return;

}

function tableRowsToCSV(theRows) {
var csv = "";
var csvRow = "";
var theCells;
var cellData = "";
for (var r=0;r<theRows.length;r++) {
//alert(theRows.item(r).cells);
theCells = theRows.item(r).cells;
for (var c=0;c<theCells.length;c++) {
cellData = "";
if(Br.IE)
  cellData = theCells.item(c).innerText;
else
  cellData = theCells.item(c).textContent;
if (cellData.indexOf(",") != -1) cellData = "'"+cellData+"'";
if (cellData != "") csvRow += ";"+cellData;
}
if (csvRow != "") csvRow = csvRow.substring(1,csvRow.length);
csv += csvRow+"\r\n";
csvRow = "";
}
return csv;
}

function ViewTools(objLegend) {

var toolboxContent = getNextSibling(objLegend);

if(toolboxContent.style.display == 'block')
  toolboxContent.style.display = 'none';
else
  toolboxContent.style.display = 'block';

}

function getNextSibling(obj){
  var element2 = obj.nextSibling;
  while (element2.nodeType !=1)
  {
    element2 = element2.nextSibling;
  }
return element2; 
}


