﻿// JScript File

/**
 * @author K!
 */

newsBar = function () {
   var nBar;
   var tempBox;
   var newsBarName;
   var inBarName;
   var inTempName;
   var popBoxName;
   var onLink;

function LoadNewsBar(newsBarId,options) {
  newsBarName=newsBarId;
  inBarName=newsBarName+'-bar';
  inTempName=newsBarName+'-temp';
  popBoxName=newsBarName+'-pop';	
  var inBar=document.createElement('div');
  inBar.id=inBarName;
  var inTemp=document.createElement('div');
  inTemp.id=inTempName;
  $(newsBarName).appendChild(inBar);
  $(newsBarName).appendChild(inTemp);	
  $(inTempName).setStyle({ display: 'none' });
  options.horizontal=true;
  options.currentResult=document.getElementById(inTempName);
  nBar = new GSnewsBar($(inBarName), options);
  Event.observe(newsBarName,'mouseover',newsControl);
  Event.observe(newsBarName,'mouseout',function() {
	  if (document.getElementById(popBoxName)) 
	    document.body.removeChild($(popBoxName));
  }); 
}

function newsControl(e) {
  if (onLink==1) { 
  if (document.getElementById(popBoxName)) document.body.removeChild($(popBoxName));
  var box=document.createElement('div');
  box.id=popBoxName;
  if (e.clientX) {
    var x=e.clientX;
    var y=e.clientY;
                 } 
  else if (e.pageX) {
    var x=e.pageX;
    var y=e.pageY;
  }
  document.body.appendChild(box);
  $(popBoxName).setStyle({
    	 top: (y+20)+'px',
		 left: (x+15)+'px'
	});  
  $(popBoxName).innerHTML='loading...';  
  var newsTitle=document.createElement('span');
  newsTitle.innerHTML=$$('#'+inTempName+' .gs-title')[1].innerHTML;
  var newsDesc=document.createElement('p');
  newsDesc.innerHTML=$$('#'+inTempName+' .gs-snippet')[0].innerHTML;
  with ($(popBoxName)) {
  	innerHTML="";
	appendChild(newsTitle);
	appendChild(newsDesc);
  }}
  var title=$$('#'+inBarName+' .resultDiv_gsnb a')[0];
  Event.observe(title,'mouseout',function() {
	  if (document.getElementById(popBoxName)) { 
	    document.body.removeChild($(popBoxName));
		onLink=0;
		}
  });
  Event.observe(title,'mouseover',function() {
	    onLink=1;
  });
  Event.observe(title,'mousemove',function(ev){
       if (ev.clientX) {
            var x=ev.clientX;
            var y=ev.clientY;
                 } 
       else if (ev.pageX) {
            var x=ev.pageX;
            var y=ev.pageY;
        }
		if (document.getElementById(popBoxName)) 
		$(popBoxName).setStyle({
 		  top: (y+20)+'px',
		  left: (x+15)+'px'
		});
  }); 
}
  return {
  	  init : function (barId,opt) {
	  	  LoadNewsBar(barId,opt);
	  },
	  execute : function(search) {
	  	  nBar.execute(search);
	  }
  }
}();