////////////////////////////////
//       Globals             //
//////////////////////////////

var gSTxt = ''; // global placeholder for hitcount on tree...
var gIndex = 0; 
var gTgtId = 0;
var gSC = ''; // SearchCode
var gPortal = 0;

////////////////////////////////
//        Navigation          //
//////////////////////////////

function datFocus(thId,lId,aLeaf,lLanguage) { 
	// alert(aLeaf);
  var n = t1.getNode(lId), flag = false; //get node from tree 
  if (n && n.type) 
    flag = n.state;
  // if (ua.moz || ua.ie7) { // var ie7 added in codethatsdk.js
  if (!ua.nn7up && ua.ie7) { // var ie7 added in codethatsdk.js
    flag = !flag; //reverse state, because action called before state changes
  } 
  // if (n && n.type && n.state){ //if node defined and it is opened type=1=folder 
  t1.nodes[t1.getNodeIdx(lId)].action = ''; // set action blank so is just run once.
  // prompt('Debug','../background/AjaxTree.php?F=OpenNode&thId='+thId+'&Node='+aLeaf+'&Id='+lId+'&Lan='+lLanguage);
  jQuery.getJSON('../background/AjaxTree.php?F=OpenNode&thId='+thId+'&Node='+aLeaf+'&Id='+lId+'&Lan='+lLanguage, function(json) {
  	for (var x in json) {
       // alert(json[x].Label);
       if (json[x].Text != undefined) {
	 if (thId == 3)
           t1.addNode(lId,1,{text:json[x].Text+' ('+json[x].Patron+')',action:{url:"javascript:cShowNodeEntity('blog','"+json[x].Query+"')"}});
         else if (thId == 4)
           t1.addNode(lId,1,{text:json[x].Text,action:{url:"javascript:cShowNodeEntity('archive','"+json[x].MtaId+"')"}});
      }
     }
  })	
  // ASyncTree('cbDOMTerms','DOMTerms',gthesId,"1",lId,gIDoc,lLanguage);
}

function cShowNodeEntity(lMode,q) {
  if (lMode == 'blog') {
    // alert('background/AjaxTree.php?F=ExQuery&Q='+q);
    jQuery.getJSON('../background/AjaxTree.php?F=ExQuery&Q='+q, function(json) {
    // alert(json.toSource());
      JT_Tree('../background/AjaxTree.php?F=TreeTip&Context=BlogEntry&BlogId='+json.BlogId+'&Id='+json.Id+'&Mess='+encodeURIComponent(json.Entry)+'&Count='+json.Count,json.Label,400,100);
    });
  }
  if (lMode == 'archive') {
    var lHeight = 800;
    var lWidth = 900;
    var dialogWindow = window.open('../main/Hits.php?MtaId='+q,'Hitlist',"height="+lHeight+",width="+lWidth+",scrollbars=yes,resizable=yes,dialog=yes");
  }
}

function cFocus(lId,lLeaf,lLanguage) { 
  var n = t1.getNode(lId), flag = false; //get node from tree 
  // for (var x in ua) {
  	// alert(x);
  //  alert(x+':'+ua[x]);
  // }	
  if (n && n.type) 
    flag = n.state;
  // if (ua.moz || ua.ie7) { // var ie7 added in codethatsdk.js
  if (!ua.nn7up && ua.ie7) { // var ie7 added in codethatsdk.js
    flag = !flag; //reverse state, because action called before state changes
  } 
  // if (n && n.type && n.state){ //if node defined and it is opened type=1=folder 
  if (gIDoc) { // includeDoc ; but uses DOM..
    // alert('IncludeDoc : '+gIDoc);	
    // t1.addNode(null,1,{text:'My child', style:{color:'red'}}); 
    // return true;
    t1.nodes[t1.getNodeIdx(lId)].action = ''; // set action blank so is just run once.
    ASyncTree('cbDOMTerms','DOMTerms',gthesId,"1",lId,gIDoc,"");
    // alert(lId.substr(2));
  }  
  else if (gAlfLevelOne && lId.substr(0,2) == 'a1') {
  	t1.nodes[t1.getNodeIdx(lId)].action = ''; // set action blank so is just run once.
    ASyncTree('cbDOMTerms','DOMTerms',gthesId,"1",lId,gIDoc,lLanguage);
  }	
  else if (gPortal) {
  	t1.nodes[t1.getNodeIdx(lId)].action = ''; // set action blank so is just run once.
    ASyncTree('cbDOMTerms','DOMTerms',gthesId,"1",lId,gIDoc,lLanguage);
  }	  
  else { 
    if (n && n.type && flag){ //if node defined and it is opened type=1=folder 
      document.fLeaf.Leaf.value = lLeaf; // js-style array handled by Thesaurus::mtGetCurrentLeaf
      document.fLeaf.Lang.value = lLanguage;
      try {
       document.fLeaf.submit();
      }
      catch(e){
        alert(e);
      }
    }
  } // else    
}

function tOpenURI(lLink) {
  // alert(lLink);
  MakeFullWindow(lLink,'Link',0,0,1,'center');
}	

function cbDOMTerms(lJSON) {
  var a = eval("("+lJSON+")");
  // alert(a.toSource());
  // alert(a['TermId']);
  var n = t1.getNode(a['TermId']);
  for (var x in a) {
    // z = x.toString();
    // alert(t1.getNode('l2'+a[x]['rTermId']));
    // if (a[x]['rText'] != undefined && t1.getNode('l2'+a[x]['rTermId']) == null) {
    if (a[x]['rText'] != undefined) {
     // alert(a[x]['rText']);
      // alert('l2'+a[x]['rTermId']);
      // setTimeout("t1.addNode('"+a['TermId']+"',1,{text:'"+a[x]['rText']+"',id:'l2"+a[x]['rTermId']+"', style:{color:'red'}})",iurl);
      if (a[x]['rLink']) {
        a[x]['rText'] = '<a href="javascript:tOpenURI('+a[x]['rLink']+')">'+a[x]['rText']+'</a>';
        t1.addNode(a['TermId'],1,{text:a[x]['rText'],id:'l'+a[x]['rLevel']+a[x]['rTermId'],action:{url:"javascript:tOpenURI('"+a[x]['rLink']+"')"}, style:{color:'red'}});
      }
      else if (a[x]['rCount'] == 0) {
      	// cClasSearch(".$this->thDef['thBiblTgt'].",\'".$this->thDef['thSearchCode']."\',\'".$lTerm."\')
        // t1.addNode(a['TermId'],1,{text:a[x]['rText'],id:'l'+a[x]['rLevel']+a[x]['rTermId'],action:{url:"javascript:cClasSearch(gBiblTgt,gSC,'"+encodeURIComponent(a[x]['rST'])+"')"}});
        t1.addNode(a['TermId'],1,{text:a[x]['rText'],id:'l'+a[x]['rLevel']+a[x]['rTermId'],action:{url:"javascript:cClasSearch(gBiblTgt,gSC,'"+a[x]['rST']+"')"}});
      }	
      else {
      	if (a['rLastAct'] == 3) {
      	  if (a[x]['rCount'] == 1) { // no children..
      	  	t1.addNode(a['TermId'],1,{text:a[x]['rText'],id:'l'+a[x]['rLevel']+a[x]['rTermId'],action:{url:"javascript:cTooltip("+a[x]['rTermId']+",'"+a[x]['rText']+"')"}});
      	  }	
      	  else {
      	  	t1.addNode(a['TermId'],1,{text:a[x]['rText'],id:'l'+a[x]['rLevel']+a[x]['rTermId'],action:{url:"javascript:cFocus('l"+a[x]['rLevel']+a[x]['rTermId']+"','[l"+a[x]['rLevel']+a[x]['rTermId']+"]',gLanguage)"}});
      	    var m = t1.getNode('l'+a[x]['rLevel']+a[x]['rTermId']);
      	    m.type = 1;
      	    t1.paint();
      	  }	 	
        }
        
        else  {	
      	  t1.addNode(a['TermId'],1,{text:a[x]['rText'],id:'l'+a[x]['rLevel']+a[x]['rTermId'],action:{url:"javascript:cFocus('l"+a[x]['rLevel']+a[x]['rTermId']+"','[l"+a[x]['rLevel']+a[x]['rTermId']+"]',gLanguage)"}});
      	  if (a[x]['rCount'] > 0) { // children..
      	    var m = t1.getNode('l'+a[x]['rLevel']+a[x]['rTermId']);
      	    m.type = 1;
      	    t1.paint();
      	  }  
        }  
      }	
      	// cFocus('l".$lLevel.$x['Id']."',".$this->mtMakeJSParents($seq).",'".$Lang."')
    }   
  }   
}

function tAlf(lLetter,lThesId,lIncludeDoc,lLastLevelAct) {
  ASyncTree('cbDOMAlf','DOMAlf',lThesId,"1",lLetter,lIncludeDoc,lLastLevelAct);
}	  

function cbDOMAlf(lJSON) {
  var a = eval("("+lJSON+")");
  removeElement('dALink','dMesCont');	
  var Ebody = document.getElementById('dALink');
  EDiv = createElm('div','dMesCont','');
  Etable = createElm('table','x','pTB');
  Etablebody = document.createElement("tbody");
  for (var x in a) {
  	if (isInteger(x)) {
      if (x % 2 == 0) 
        Erow = createElm('tr','','pTR0');
      else  
        Erow = createElm('tr','','pTR1');
      Ecell = createElm('td','','pTD');
      createTextLink(0,0,Ecell,a[x]['rLink'],a[x]['rText'],a['viewtopic']+' '+a[x]['rText'],'axPortal','',''); 	
      Erow.appendChild(Ecell);
      Etablebody.appendChild(Erow); 
    }  
  }
  Etable.appendChild(Etablebody);  
  EDiv.appendChild(Etable);  
  Ebody.appendChild(EDiv);
  
}      

function cNode(lId,lLanguage) {
  document.fOpenNode.Node.value = lId;	
  document.fOpenNode.Lang.value = lLanguage;
  document.fOpenNode.submit();
}	

function cLanguage(lLanguage) {
  document.fLeaf.Lang.value = lLanguage;
  document.fLeaf.submit();
}	

function cAction(lAction) {
  document.fLeaf.Act.value = lAction;
  document.fLeaf.submit();
}  	

function cEdit(lLevel,lId) {
  document.fEdit.Id.value = lId;
  document.fEdit.Level.value = lLevel;
  document.fEdit.submit();
}	
function cThesaurus(lFocus) {	
  document.fFocus.Focus.value = lFocus;
  document.fFocus.submit();
} 

function cXML(tgtId,lThesId,lId) {	
  makeHiddenIFRAME('../background/bgFunctions.php?FuncName=thGetZThes&tgtId='+tgtId+'&ThesId='+lThesId+'&Id='+lId);
}	

function bgZThes(lXML) { // callback from bgFunctions...	
  document.getElementById('pPanel').innerHTML = decodeURIComponent(lXML);
}	

function tNewWindow(lLink) {
  MakeUserWindow(lLink,'pHitList',750,400,'yes','default');
}	
function fNewWindow(lLink) {
  MakeFullWindow(lLink,'pHitList',750,800,'yes','default');
}

function cClasSearch(tgtId,lSearchCode,lClas) {
  lLink = '../main/Hits.php?tgtId='+tgtId+'&qe='+lSearchCode+'='+encodeURIComponent(lClas);
  MakeFullWindow(lLink,'pHitList',750,800,'yes','default');
}

function ModalUnfoldNode(lMode,lFocus,lNodeId,lLang) {
  var lLink ='../main/ThTree.php?Modal=1&Mode='+lMode+'&Focus='+lFocus+'&Node='+lNodeId+'&Lang='+lLang;
  document.fAddTerm.ReplaceTerm.value = lNodeId;
  var lHeight = 800;
  var lWidth = 600;
  var dialogWindow = window.open(lLink,'Tree',"height="+lHeight+",width="+lWidth+",scrollbars=yes,resizable=yes,dialog=yes,modal=yes");
}	

function cModal(thId,lLevel,lFieldName,lId,lMode,lNode) {
	// alert(opener.window.location);
  opener.window.TreeModalReturn(thId,lLevel,lFieldName,lId,lMode,lNode);
  window.close(); 
}	
function pModal(thId,lLevel,lFieldName,lId,lMode,lNode) {
  opener.window.TreeModalReturnPortal(thId,lLevel,lFieldName,lId,lMode,lNode);
  window.close();
}

function SaveRelationRow(lStage,lId,lRelationType) {	 
    document.fEditRelation.Stage.value = lStage;
    document.fEditRelation.RelId.value = lId;
    document.fEditRelation.RelationType.value = lRelationType;
    document.fEditRelation.submit();	  
}	

function RelGotoTop(lLevel,lId) {
  document.fTop.Level.value = lLevel;	
  document.fTop.Id.value = lId;
  document.fTop.submit();	

}	


function TreeModalReturn(thId,lLevel,lType,lTermId,lMode,lNode) { // 194 :: Sister in Portal.php return from ThTree.php as modal
  // alert('Mode : '+lMode+' :: '+lTermId+' Type : '+lType+' Replace : '+document.fAddTerm.ReplaceTerm.value);	
  if (lMode == 1) { // add term
    document.fAddTerm.Term.value = lNode;
    document.fAddTerm.TermId.value = lTermId;
    setTimeout("ASyncTree('cbPreInsertTerm','PreInsertTerm',"+thId+","+lLevel+","+lTermId+",'"+lType+"',"+document.fAddTerm.MtaId.value+")",500);	
  }
  if (lMode == 2) { // update term.
    document.fAddTerm.Term.value = lNode;
    document.fAddTerm.TermId.value = lTermId;
    setTimeout("ASyncTree('cbPreInsertTerm','UpdateTerm',"+thId+","+lLevel+","+lTermId+",'"+document.fAddTerm.ReplaceTerm.value+"',"+document.fAddTerm.MtaId.value+")",500);	
  }  	  
}  
   
function cbPreInsertTerm(lJSON) {
  var a = eval("("+lJSON+")");	
  // alert(a['ReplaceTerm']);
  document.fReload.thId.value = a['thId'];
  document.fReload.Reload.value = document.fReload.Reload.value+1; // must have different value to reload.	
  document.fReload.submit();
}
   
////////////////////////////////
//           AJAX            //
//////////////////////////////


function runDOMSearch(TermId,Level) {
  // 	alert(document.fVar.Id.value+' :: '+TermId+' :: '+Level);
  ASyncTree('cbTreeSearch','TreeSearch',document.fVar.Id.value,Level,TermId,'',0);
}

function cbTreeSearch(lJSON) { 
	// alert('hebheb');
  var a = eval("("+lJSON+")");
  /*
  document.getElementById('pPanel').style.position = 'absolute';
  document.getElementById('pPanel').style.left='800px'; 
  document.getElementById('pPanel').style.top=mousePos.y+'px';
  document.getElementById('pPanel').style.width='350px';
  */
  document.getElementById('pPanel').style.position = 'relative';
  document.getElementById('pPanel').style.left='5%'; 
  document.getElementById('pPanel').style.top=(mousePos.y-200)+'px';
  document.getElementById('pPanel').style.width='350px';  
  removeElement('pPanel','pTable');
  // alert(a['hits']);
  if (a['hits']) { 
    makeHitGrid2(a['list'],a['tgtId'],a['hits'],a['SearchCode']+'='+a['term'],document.fVar.view_all_items.value);  	
  }  
}


function BgSearchDBResponse(tgtId,lHits,lqe) { // RPC from bgSearch.php - in IFRAME... 	
  // if (lHits && t1.nodes[gIndex].text.slice(-8) != 'en..</a>') {	
  if (lHits) { // make research possible..	
    // t1.nodes[gIndex].text = gSTxt+'.&nbsp;&nbsp;<a href="../main/Hits.php?qe='+lqe+'" target="_blank">Se '+lHits+' Hits i basen..</a>';
    if (t1.nodes[gIndex].text.slice(-8) != 'en..</a>') {
      // var gSTxt set in ThTree.yOver		
      t1.nodes[gIndex].text = gSTxt+'.&nbsp;&nbsp;<a href="../main/Hits.php?qe='+lqe+'" target="_blank"><img src="\/pics\/SSearch.gif" /> '+lHits+' Hits i basen..</a>';
      // 175 :: hebheb t1.nodes[gIndex].text = gSTxt+'.&nbsp;&nbsp;<div><a href="javascript:alert('+lHits+')"><img src="/pics/SSearch.gif"/> '+lHits+' Hits i basen..</a></div>';
      t1.paint();	
    }  
    var lLink = '../background/bgSearch.php?Mode=HitList&tgtId='+tgtId+'&qe='+encodeURI(lqe);
    setTimeout('makeHiddenIFRAME("'+lLink+'")',500);  
    // not this version :: t1.nodes[i].paint(); 
  }  
}

function BgHitListResponse(tgtId,lHits,laHit,lqe,lFooter) {
  var  aHit = new Array();
  aHit = eval(laHit);
  // alert(aHit);
  // document.getElementById('pPanel').style.backgroundColor = '#AAAAAA';
  document.getElementById('pPanel').style.position = 'absolute';
  document.getElementById('pPanel').style.left='700px'; 
  document.getElementById('pPanel').style.top=mousePos.y+'px';
  document.getElementById('pPanel').style.width='350px';
  // var lHitList = lqe+' = '+lHits+' hits<br />';
  removeElement('pPanel','pTable');
  makeHitGrid(aHit,tgtId,lHits,lqe,lFooter);
}


function RunbgSearchHint(lThTgt,lBiblTgt,lqe) {
  makeHiddenIFRAME('../background/bgSearch.php?Mode=Tree&tgtId='+lBiblTgt+'&qe='+encodeURI(lqe));
}

function CartAction(tgtId,tgtPos,lqe,lId,lState) { // Mark selected records.
  // if (!browser.isIE)	
  setTimeout("document.getElementById('"+lId+"').checked = "+lState,500);	
  // document.getElementById(lId).checked = lState
  ASyncAjax('cbTreeCartResponse','TreeCart',tgtId,tgtPos,lqe,lState); 
}

function cbTreeCartResponse(a) {
  swapCart(a['rCart']); // mox.js   
} 

////////////////////////////////
//           DOM            //
//////////////////////////////
function makeHitGrid2(a,tgtId,lHits,lqe,lFooter) {  	
  // get the reference for the body
  var mybody = document.getElementById('pPanel');
     
  // creates <table> and <tbody> elements
  mytable     = document.createElement("table");
  mytable.setAttribute('id','pTable');

  
  mytablebody = document.createElement("tbody");

  // header
  mycurrent_row = document.createElement("tr");	
  mycurrent_cell = document.createElement("td");
  currenttext = document.createTextNode('');
  mycurrent_cell.appendChild(currenttext);	  
  mycurrent_row.appendChild(mycurrent_cell);
  mycurrent_cell = document.createElement("td");
  currenttext = document.createTextNode(lqe+' : '+lHits+' hits');
  mycurrent_cell.appendChild(currenttext);
  mycurrent_cell.style.textAlign="center";
  mycurrent_cell.style.fontSize="12px";
  mycurrent_cell.style.color="#404040";
  mycurrent_cell.style.fontWeight="bold";
  mycurrent_row.appendChild(mycurrent_cell);
  mytablebody.appendChild(mycurrent_row);  

  // creating all cells
  var gi = 1; // tgtPos counter..
  for (var x in a) {
    if (a[x]) {
    	
      // creates a <tr> element
      mycurrent_row = document.createElement("tr");	
      for(var i = 0; i < 2; i++) {
        // creates a <td> element
        mycurrent_cell = document.createElement("td");
        // creates a Text Node
      
        if (i % 2 == 0) { 
          // checkbox..	
          var IPT = document.createElement('input');	
          var attrIPT = document.createAttribute('type');
          attrIPT.nodeValue = "checkbox";
          IPT.setAttributeNode(attrIPT);
          IPT.checked = IPT.defaultChecked = false; 

          var attrId = document.createAttribute('id');
          attrId.nodeValue = "i"+x;
          IPT.setAttributeNode(attrId);          
          mycurrent_cell.appendChild(IPT);
          setEvent(IPT, "onclick", 'CartAction('+tgtId+',"'+gi+'","'+encodeURI(lqe)+'",this.id,this.checked)');  
        }  
        else {
          var tagA = document.createElement('a');
          var attrHREF = document.createAttribute('href');
          var nodeLinkText = document.createTextNode(a[x]);
          mycurrent_cell.appendChild(tagA);
          attrHREF.nodeValue = "#";
          tagA.appendChild(nodeLinkText);
          tagA.setAttributeNode(attrHREF);
          mycurrent_cell.appendChild(tagA);
          var lNode = '../main/Hits.php?tgtId='+tgtId+'&tgtPos='+gi+'&full=1&qe='+encodeURI(lqe);
          setEvent( tagA, "onclick", 'tNewWindow("'+lNode+'")');  
        }  
        // appends the Text Node we created into the cell <td>
        // mycurrent_cell.appendChild(currenttext);
        // appends the cell <td> into the row <tr>
        if (gi % 2 == 0)
          mycurrent_cell.bgColor="#bbc2a9";
        mycurrent_cell.style.border = "1px solid #95A8C4";
        mycurrent_row.appendChild(mycurrent_cell);
      }
      // appends the row <tr> into <tbody>
      mytablebody.appendChild(mycurrent_row);
    }
    gi++;
  }  
  
  // footer
  mycurrent_row = document.createElement("tr");	
  mycurrent_cell = document.createElement("td");
  var oImg = document.createElement('img');
  var oAttr = document.createAttribute('src');
  oAttr.nodeValue = "\/pics\/SSearch.gif";
  oImg.setAttributeNode(oAttr);
  mycurrent_cell.appendChild(oImg);
  var lNode = '../main/Hits.php?tgtId='+tgtId+'&qe='+encodeURI(lqe);
  setEvent(oImg, "onclick", 'fNewWindow("'+lNode+'")');    
  mycurrent_cell.style.textAlign="center";
  mycurrent_row.appendChild(mycurrent_cell);
  mycurrent_cell = document.createElement("td");
  var oA = document.createElement('a');
  var oAttr = document.createAttribute('href');
  var nodeLinkText = document.createTextNode(lFooter);
  mycurrent_cell.appendChild(oA);
  oAttr.nodeValue = "#";
  oA.appendChild(nodeLinkText);
  oA.setAttributeNode(oAttr);
  mycurrent_cell.appendChild(oA);
  var lNode = '../main/Hits.php?tgtId='+tgtId+'&qe='+encodeURI(lqe);
  setEvent(oA, "onclick", 'fNewWindow("'+lNode+'")');    
  // mycurrent_cell.style.textAlign="center";
  mycurrent_cell.style.fontSize="12px";
  mycurrent_cell.style.color="#404040";
  mycurrent_cell.style.textDecoration="underline";
  mycurrent_row.appendChild(mycurrent_cell);
  mytablebody.appendChild(mycurrent_row);  


   // appends <tbody> into <table>
   mytable.appendChild(mytablebody);
   // appends <table> into <body>
   mybody.appendChild(mytable);
   // sets the border attribute of mytable to 1;
   mytable.setAttribute("border","0");
}

function makeHitGrid(aHit,tgtId,lHits,lqe,lFooter) {  	
  // get the reference for the body
  var mybody = document.getElementById('pPanel');
     
  // creates <table> and <tbody> elements
  mytable     = document.createElement("table");
  mytable.setAttribute('id','pTable');

  
  mytablebody = document.createElement("tbody");

  // header
  mycurrent_row = document.createElement("tr");	
  mycurrent_cell = document.createElement("td");
  currenttext = document.createTextNode('');
  mycurrent_cell.appendChild(currenttext);	  
  mycurrent_row.appendChild(mycurrent_cell);
  mycurrent_cell = document.createElement("td");
  currenttext = document.createTextNode(lqe+' : '+lHits+' hits');
  mycurrent_cell.appendChild(currenttext);
  mycurrent_cell.style.textAlign="center";
  mycurrent_cell.style.fontSize="12px";
  mycurrent_cell.style.color="#404040";
  mycurrent_cell.style.fontWeight="bold";
  mycurrent_row.appendChild(mycurrent_cell);
  mytablebody.appendChild(mycurrent_row);  

  // creating all cells
  var gi = 1; // tgtPos counter..
  for (var x=0; x < aHit.length; x++) {
    if (aHit[x]) {
      // creates a <tr> element
      mycurrent_row = document.createElement("tr");	
      for(var i = 0; i < 2; i++) {
        // creates a <td> element
        mycurrent_cell = document.createElement("td");
        // creates a Text Node
      
        if (i % 2 == 0) { 
          // checkbox..	
          var IPT = document.createElement('input');	
          var attrIPT = document.createAttribute('type');
          attrIPT.nodeValue = "checkbox";
          IPT.setAttributeNode(attrIPT);
          IPT.checked = IPT.defaultChecked = false; 

          var attrId = document.createAttribute('id');
          attrId.nodeValue = "i"+x;
          IPT.setAttributeNode(attrId);          
          mycurrent_cell.appendChild(IPT);
          setEvent(IPT, "onclick", 'CartAction('+tgtId+',"'+gi+'","'+encodeURI(lqe)+'",this.id,this.checked)');  
        }  
        else {
          var tagA = document.createElement('a');
          var attrHREF = document.createAttribute('href');
          var nodeLinkText = document.createTextNode(aHit[x]);
          mycurrent_cell.appendChild(tagA);
          attrHREF.nodeValue = "#";
          tagA.appendChild(nodeLinkText);
          tagA.setAttributeNode(attrHREF);
          mycurrent_cell.appendChild(tagA);
          var lNode = '../main/Hits.php?tgtId='+tgtId+'&tgtPos='+gi+'&full=1&qe='+encodeURI(lqe);
          setEvent( tagA, "onclick", 'tNewWindow("'+lNode+'")');  
        }  
        // appends the Text Node we created into the cell <td>
        // mycurrent_cell.appendChild(currenttext);
        // appends the cell <td> into the row <tr>
        if (gi % 2 == 0)
          mycurrent_cell.bgColor="#bbc2a9";
        mycurrent_cell.style.border = "1px solid #95A8C4";
        mycurrent_row.appendChild(mycurrent_cell);
      }
      // appends the row <tr> into <tbody>
      mytablebody.appendChild(mycurrent_row);
    }
    gi++;
  }  
  
  // footer
  mycurrent_row = document.createElement("tr");	
  mycurrent_cell = document.createElement("td");
  var oImg = document.createElement('img');
  var oAttr = document.createAttribute('src');
  oAttr.nodeValue = "\/pics\/SSearch.gif";
  oImg.setAttributeNode(oAttr);
  mycurrent_cell.appendChild(oImg);
  var lNode = '../main/Hits.php?tgtId='+tgtId+'&qe='+encodeURI(lqe);
  setEvent(oImg, "onclick", 'fNewWindow("'+lNode+'")');    
  mycurrent_cell.style.textAlign="center";
  mycurrent_row.appendChild(mycurrent_cell);
  mycurrent_cell = document.createElement("td");
  var oA = document.createElement('a');
  var oAttr = document.createAttribute('href');
  var nodeLinkText = document.createTextNode(lFooter);
  mycurrent_cell.appendChild(oA);
  oAttr.nodeValue = "#";
  oA.appendChild(nodeLinkText);
  oA.setAttributeNode(oAttr);
  mycurrent_cell.appendChild(oA);
  var lNode = '../main/Hits.php?tgtId='+tgtId+'&qe='+encodeURI(lqe);
  setEvent(oA, "onclick", 'fNewWindow("'+lNode+'")');    
  // mycurrent_cell.style.textAlign="center";
  mycurrent_cell.style.fontSize="12px";
  mycurrent_cell.style.color="#404040";
  mycurrent_cell.style.textDecoration="underline";
  mycurrent_row.appendChild(mycurrent_cell);
  mytablebody.appendChild(mycurrent_row);  


   // appends <tbody> into <table>
   mytable.appendChild(mytablebody);
   // appends <table> into <body>
   mybody.appendChild(mytable);
   // sets the border attribute of mytable to 1;
   mytable.setAttribute("border","0");
}	

////////////////////////////////
//         JQUERY            //
//////////////////////////////	
function cTooltip(lTermId,lHeader) {
	prompt('debug','../background/AjaxTree.php?F=TreeTip&TermId='+lTermId);
  JT_Tree('../background/AjaxTree.php?F=TreeTip&TermId='+lTermId,lHeader,0,220);
}	
function ccTooltip(NodeId,Header) {
   NodeId = NodeId.substr(NodeId.lastIndexOf('_') + 1);
   // prompt('debug','../background/AjaxFunctions.php?F=TreeTip&NodeId='+NodeId);
  JT_Tree('../background/AjaxFunctions.php?F=TreeTip&TermId='+NodeId,Header,600,300);
}

////////////////////////////////
//    JQUERY :: JSTREE       //
//////////////////////////////
function switchTree(Focus) {
  FrmRed(lAction,0,'Lang#'+lLang);
  document.fFocus.Focus.value = lFocus;
  document.fFocus.submit();
}

function bgTree (Method,tgtId,nodeId,lValue) {
  // prompt('debug','../background/ATree.php?F='+Method+'&Id='+nodeId);
  jQuery.getJSON('../background/ATree.php?F='+Method+'&Id='+nodeId, function(json) {
     var lLink = '';
     switch (Method) {
       case 'mtClassSearch' :
         lLink = '../main/Hits.php?tgtId='+tgtId+'&qe='+json.SearchCode+'='+encodeURIComponent(json.SearchTerm);
         if (json.Navigation == 0 || json.isParent == 0)
           MakeFullWindow(lLink,'pHitList',750,800,'yes','default');
       break;
       case 'mtTermSearch' :
         lLink = '../main/Hits.php?tgtId='+tgtId+'&qe='+json.SearchCode+'='+encodeURIComponent(json.Term);
         if (json.Navigation == 0 || json.isParent == 0)
           MakeFullWindow(lLink,'pHitList',750,800,'yes','default');
       break;
       case 'mtPickTerm' :
         if (json.isParent == 0) {
           // alert(json.Term);
	   opener.window.TreeModalReturnPortal(1,lValue,json.Term); // Portal.js
	   window.close();
	 }
       break;
       case 'mtMtaPick' :
	   opener.window.document.fAddTerm.Term.value=json.Term;
	   opener.window.document.fAddTerm.TermId.value=json.TermId;
	   // alert('http://localhost/RCT/background/ATree.php?F=mtMtaTerm&Mode=0&Id=0&TermId='+json.TermId+'&tgtId='+tgtId+'&MtaId='+opener.window.document.fAddTerm.MtaId.value);
           jQuery.getJSON('../background/ATree.php?F=mtMtaTerm&Mode=0&Id=0&Tree='+opener.window.document.fAddTerm.Focus.value+'&TermId='+json.TermId+'&tgtId='+tgtId+'&MtaId='+opener.window.document.fAddTerm.MtaId.value, function(json2) {
	    opener.window.document.fReload.thId.value = json2.Tree;
            opener.window.document.fReload.Reload.value = opener.window.document.fReload.Reload.value+1; // must have different value to reload.
            opener.window.document.fReload.submit();
	    window.close();
           });
      break;
       case 'mtMtaDelete' :
	  // alert('http://localhost/RCT/background/ATree.php?F=mtMtaTerm&Mode=6&Id='+nodeId+'&Tree='+document.fAddTerm.Focus.value+'&tgtId='+tgtId+'&MtaId='+document.fAddTerm.MtaId.value);
           jQuery.getJSON('../background/ATree.php?F=mtMtaTerm&Mode=6&Id='+nodeId+'&Tree='+document.fAddTerm.Focus.value+'&tgtId='+tgtId+'&MtaId='+document.fAddTerm.MtaId.value, function(json2) {
	    document.fReload.thId.value = json2.Tree;
            document.fReload.Reload.value = document.fReload.Reload.value+1; // must have different value to reload.
            document.fReload.submit();
           });
      break;
       case 'mtMtaUpdate' :
	   // alert('http://localhost/RCT/background/ATree.php?F=mtMtaTerm&Mode=10&&Id='+lValue+'&TermId='+nodeId+'&Tree='+opener.window.document.fAddTerm.Focus.value+'&tgtId='+tgtId+'&MtaId='+opener.window.document.fAddTerm.MtaId.value+'&TreeId='+opener.window.document.fAddTerm.MtaId.value);
           jQuery.getJSON('../background/ATree.php?F=mtMtaTerm&Mode=10&Id='+lValue+'&TermId='+nodeId+'&Tree='+opener.window.document.fAddTerm.Focus.value+'&tgtId='+tgtId+'&MtaId='+opener.window.document.fAddTerm.MtaId.value, function(json2) {
	    opener.window.document.fReload.thId.value = json2.Tree;
            opener.window.document.fReload.Reload.value =  opener.window.document.fReload.Reload.value+1; // must have different value to reload.
            opener.window.document.fReload.submit();
	    window.close();
           });
      break;
     }
 });
}

function bgDataSource (tgtId,Tree,Method,lId,Level,Rel) {
  // alert('F='+Method+'&Id='+lId+'&tgtId='+tgtId+'&Tree='+Tree+'&Level='+(Level+1));
  Level=(Level+1);
  if (Rel == 'document') // last level
    Level = 'last';
  tRadio = CheckRadioSelects(document.fTree,'rAction');
  // alert(document.fTree.rAction0.checked+' :: '+document.fTree.rAction1.checked);
  // prompt('debug','http://deshut/NNLAW/background/ATree.php?F='+Method+'&Id='+lId+'&tgtId='+tgtId+'&Tree='+Tree+'&Level='+Level);
  jQuery.getJSON('../background/ATree.php?F='+Method+'&Id='+lId+'&tgtId='+tgtId+'&Tree='+Tree+'&Level='+Level, function(json) {
    // alert(json.DBQuery);
    if (json.DBQuery) // blog
      cShowNodeEntity('blog',json.DBQuery);
    else if (tRadio == 0 && json.Query && json.SearchCode) // Volumerecords SEARCH
      cClasSearch(tgtId,json.SearchCode,json.Query);
    else if (tRadio == 1 && json.Query && json.SearchCode) { // Volumerecords EDIT
      lLink = '../main/Ed.php?tgtId='+tgtId+'&ID='+json.Query
      MakeFullWindow(lLink,'pEdit',750,800,'yes','default');
    }
 });
}

 function bgTest(a,level) {
    alert('Id : '+a+' Level : '+level);
 }

function getModalTree(lMode,lTree,lId) {
  var lLink ='../main/ThTree.php?Modal=1&Mode='+lMode+'&Tree='+lTree+'&Id='+lId;
  var lHeight = 800;
  var lWidth = 600;
  var dialogWindow = window.open(lLink,'Tree',"height="+lHeight+",width="+lWidth+",scrollbars=yes,resizable=yes,dialog=yes,modal=yes");
}

function ZebraTermSave(tgtId,MtaId) {
  jQuery.getJSON('../background/ATree.php?F=ZebraTermSave&tgtId='+tgtId+'&MtaId='+MtaId, function(json) {
  // alert(json.toSource());
  if (json.err == '00000') {
    var aDiv = document.getElementsByTagName('div');
    for (var i=0; i<aDiv.length; i++) {
      if (aDiv[i].id.substring(0,1) == 'i')
        aDiv[i].innerHTML = json.Message;
    }
  }
  });
}


