// JavaScript Document
var nameid = new Array();
var resid = new Array();
var bulletid = new Array();
var rndarray = new Array();
var sectorlist = new Array();
rndarray[0]='Biotechnology';
rndarray[1]='Electronics and Optronics';
rndarray[2]='ICT non-software';
rndarray[3]='Printing and Packaging';
rndarray[4]='Instruments and Engineering';
rndarray[5]='Software';
rndarray[6]='Energy';
rndarray[7]='Sound and Imaging Systems';
rndarray[8]='Materials';

sectorlist[0]='Biotechnology';
sectorlist[1]='Consultancy and Investment';

sectorlist[2]='Electronics';

sectorlist[3]='Energy';

sectorlist[4]='ICT non-software';

sectorlist[5]='Instruments and Engineering';

sectorlist[6]='Materials';

sectorlist[7]='Printing and Packaging';

sectorlist[8]='Software';
sectorlist[9]='Sound and Imaging Systems';

nameid[0]='';
nameid[1] = document.getElementById('searchname1');
nameid[2] = document.getElementById('searchname2');
nameid[3] = document.getElementById('searchname3');
nameid[4] = document.getElementById('searchname4');
nameid[5] = document.getElementById('searchname5');
nameid[6] = document.getElementById('searchname6');
nameid[7] = document.getElementById('searchname7');
nameid[8] = document.getElementById('searchname8');
nameid[9] = document.getElementById('searchname9');
nameid[10] = document.getElementById('searchname10');
resid[0] = '';
resid[1] = document.getElementById('searchres1');
resid[2] = document.getElementById('searchres2');
resid[3] = document.getElementById('searchres3');
resid[4] = document.getElementById('searchres4');
resid[5] = document.getElementById('searchres5');
resid[6] = document.getElementById('searchres6');
resid[7] = document.getElementById('searchres7');
resid[8] = document.getElementById('searchres8');
resid[9] = document.getElementById('searchres9');
resid[10] = document.getElementById('searchres10');
bulletid[0]='';
bulletid[1] = document.getElementById('bullet1');
bulletid[2] = document.getElementById('bullet2');
bulletid[3] = document.getElementById('bullet3');
bulletid[4] = document.getElementById('bullet4');
bulletid[5] = document.getElementById('bullet5');
bulletid[6] = document.getElementById('bullet6');
bulletid[7] = document.getElementById('bullet7');
bulletid[8] = document.getElementById('bullet8');
bulletid[9] = document.getElementById('bullet9');
bulletid[10] = document.getElementById('bullet10');
var map;
var gmarkers=[];
var searchmarkers=[];
var gsector=[];
var baseIcon = new GIcon();
baseIcon.shadow = null;
baseIcon.image = "mrd.png"
baseIcon.iconSize = new GSize(12, 20);
baseIcon.shadowSize = new GSize(0,0);
baseIcon.iconAnchor = new GPoint(6, 20);
baseIcon.infoWindowAnchor = new GPoint(4, 12);
baseIcon.infoShadowAnchor = new GPoint(-10, 0);
var http_request = false;
function loadmap(){
map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.setCenter(new GLatLng(52.2,0),9);
 }
 function toggleres(num){
bulletid[0]='';
bulletid[1] = document.getElementById('bullet1');
bulletid[2] = document.getElementById('bullet2');
bulletid[3] = document.getElementById('bullet3');
bulletid[4] = document.getElementById('bullet4');
bulletid[5] = document.getElementById('bullet5');
bulletid[6] = document.getElementById('bullet6');
bulletid[7] = document.getElementById('bullet7');
bulletid[8] = document.getElementById('bullet8');
bulletid[9] = document.getElementById('bullet9');
bulletid[10] = document.getElementById('bullet10');
num=parseInt(num.substr(6));
var elem= "searchres"+num;
if(document.getElementById(elem).style.display=='none'){
resid[num].style.display='inline';
bulletid[num].src='http://www.cambridgeinvestmentresearch.com/minus.png';
}else{
document.getElementById(elem).style.display='none';
bulletid[num].src='http://www.cambridgeinvestmentresearch.com/plus.png';
}

}
 function toggleresmarker(num){
bulletid[0]='';
bulletid[1] = document.getElementById('bullet1');
bulletid[2] = document.getElementById('bullet2');
bulletid[3] = document.getElementById('bullet3');
bulletid[4] = document.getElementById('bullet4');
bulletid[5] = document.getElementById('bullet5');
bulletid[6] = document.getElementById('bullet6');
bulletid[7] = document.getElementById('bullet7');
bulletid[8] = document.getElementById('bullet8');
bulletid[9] = document.getElementById('bullet9');
bulletid[10] = document.getElementById('bullet10');

if(resid[num].style.display=='none'){
resid[num].style.display='inline';
bulletid[num].src='http://www.cambridgeinvestmentresearch.com/minus.png';
}else{
resid[num].style.display='none';
bulletid[num].src='http://www.cambridgeinvestmentresearch.com/plus.png';
}

}
            function companysearch(offset) {
                http_request = false;
                if (window.XMLHttpRequest) { // Mozilla, Safari,...
                    http_request = new XMLHttpRequest();
                    if (http_request.overrideMimeType) {
                        http_request.overrideMimeType('text/xml');
                    }
                } else if (window.ActiveXObject) { // IE
                    try {
                        http_request = new ActiveXObject("Msxml2.XMLHTTP");
                    } catch (e) {
                        try {
                        http_request = new ActiveXObject("Microsoft.XMLHTTP");
                        } catch (e) {}
                    }
                }

                if (!http_request) {
                    alert('Your browser is not compatible!');
				//Re-direct to compatibility page?
                    return false;
                }
		                http_request.onreadystatechange = showSearchResults;
                http_request.open('POST', 'search.php', true);
			var str="name="+document.getElementById('searchtext').value+"&offset="+offset;
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
                http_request.send(str);
            }
function showSector(sector) {
               http_request = false;
                if (window.XMLHttpRequest) { // Mozilla, Safari,...
                    http_request = new XMLHttpRequest();
                    if (http_request.overrideMimeType) {
                        http_request.overrideMimeType('text/xml');
                    }
                } else if (window.ActiveXObject) { // IE
                    try {
                        http_request = new ActiveXObject("Msxml2.XMLHTTP");
                    } catch (e) {
                        try {
                        http_request = new ActiveXObject("Microsoft.XMLHTTP");
                        } catch (e) {}
                    }
                }

                if (!http_request) {
                    alert('Your browser is not compatible!');
				//Re-direct to compatibility page?
                    return false;
                }
	                http_request.onreadystatechange = showSectorResults;
                http_request.open('POST', 'sector.php', true);
				if(sector=="R&D"){
					sector="R and D";	
				}
							var str="sector="+sector;
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
                http_request.send(str);
            }
function showSectorRnd(sector) {
               http_request = false;
                if (window.XMLHttpRequest) { // Mozilla, Safari,...
                    http_request = new XMLHttpRequest();
                    if (http_request.overrideMimeType) {
                        http_request.overrideMimeType('text/xml');
                    }
                } else if (window.ActiveXObject) { // IE
                    try {
                        http_request = new ActiveXObject("Msxml2.XMLHTTP");
                    } catch (e) {
                        try {
                        http_request = new ActiveXObject("Microsoft.XMLHTTP");
                        } catch (e) {}
                    }
                }

                if (!http_request) {
                    alert('Your browser is not compatible!');
				//Re-direct to compatibility page?
                    return false;
                }
	                http_request.onreadystatechange = showSectorRndResults;
                http_request.open('POST', 'sector.php', true);
			var str="sector="+sector;
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
                http_request.send(str);
            }
function showCompany(name,arrayloc) {
               http_request = false;
                if (window.XMLHttpRequest) { // Mozilla, Safari,...
                    http_request = new XMLHttpRequest();
                    if (http_request.overrideMimeType) {
                        http_request.overrideMimeType('text/xml');
                    }
                } else if (window.ActiveXObject) { // IE
                    try {
                        http_request = new ActiveXObject("Msxml2.XMLHTTP");
                    } catch (e) {
                        try {
                        http_request = new ActiveXObject("Microsoft.XMLHTTP");
                        } catch (e) {}
                    }
                }

                if (!http_request) {
                    alert('Your browser is not compatible!');
				//Re-direct to compatibility page?
                    return false;
                }
	                http_request.onreadystatechange = showCompanyResults;
                http_request.open('POST', 'company.php', true);
			var str="name="+name+"&aloc="+arrayloc;
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
                http_request.send(str);
            }
var icons=[];
function sectorIcon(sector) {
   var color;
   if ((typeof(sector)=="undefined") || (sector==null)) { 
      color = "red" 
   } else { 
      sector = sector; 
   }
   if (!icons[sector]) {
      var icon = new GIcon(baseIcon);
var c=((sector.replace(' ','')).toLowerCase()).substr(0,6);
if(sector=="R and D"){
	var c='rd';
}
      icon.image = "m"+c+".png";
      icons[sector]=icon;
   } 
   return icons[sector];
}          
function addSectorMarker(lng, lat, title, sector) {
   	var point = new GPoint(lng, lat);
	var icon = sectorIcon(sector);
   	var marker = new GMarker(point,icon);
	marker.type = sector; 
  var arrayloc = gmarkers.length;	
   gmarkers.push(marker);
   GEvent.addListener(marker, "click", function () {  
      showCompany(title,arrayloc);
   });
   map.addOverlay(marker);
}                   
function addMarker(lng, lat, title) {
   var point = new GPoint(lng, lat);
   	var icon = new GIcon(baseIcon);
   	icon.image = "search.png";
   	var marker = new GMarker(point,icon);
   var arrayloc = gmarkers.length;	
   gmarkers.push(marker);
   GEvent.addListener(marker, "click", function () {
            showCompany(title,arrayloc);
   });
   map.addOverlay(marker);
}
function addSearchMarker(lng, lat, title,markernumber,number,sector,video,name) {
	   var point = new GPoint(lng, lat);
   	var icon = new GIcon(baseIcon);
   	var c=((sector.replace(' ','')).toLowerCase()).substr(0,6);
   	     icon.iconSize = new GSize(28, 28);
    icon.shadowSize = new GSize(37, 34);
    icon.infoWindowAnchor = new GPoint(9, 2);
    icon.infoShadowAnchor = new GPoint(18, 25);
	   	icon.image = "images/s"+c+markernumber+".png";
	   	var marker = new GMarker(point,icon);
		var arrayloc=searchmarkers.length;
   searchmarkers.push(marker);
     GEvent.addListener(marker, "click", function () {
            toggleresmarker(number);
   });
   map.addOverlay(marker);
   return arrayloc;
}
function showSearchResults() {
                if (http_request.readyState == 4) {
                    if (http_request.status == 200) {
var response = http_request.responseXML.documentElement;
var markers = response.getElementsByTagName("marker");
var ml=parseInt(markers.length);
var url='';
var nextstart='';
var prevstart='';
if(ml>1){
nameid[0]='';
nameid[1] = document.getElementById('searchname1');
nameid[2] = document.getElementById('searchname2');
nameid[3] = document.getElementById('searchname3');
nameid[4] = document.getElementById('searchname4');
nameid[5] = document.getElementById('searchname5');
nameid[6] = document.getElementById('searchname6');
nameid[7] = document.getElementById('searchname7');
nameid[8] = document.getElementById('searchname8');
nameid[9] = document.getElementById('searchname9');
nameid[10] = document.getElementById('searchname10');
resid[0] = '';
resid[1] = document.getElementById('searchres1');
resid[2] = document.getElementById('searchres2');
resid[3] = document.getElementById('searchres3');
resid[4] = document.getElementById('searchres4');
resid[5] = document.getElementById('searchres5');
resid[6] = document.getElementById('searchres6');
resid[7] = document.getElementById('searchres7');
resid[8] = document.getElementById('searchres8');
resid[9] = document.getElementById('searchres9');
resid[10] = document.getElementById('searchres10');
document.getElementById('noresults').innerHTML='';

var begin=parseFloat(markers[0].getAttribute('lng'));
var finish=parseFloat(markers[0].getAttribute('lat'));
var numresults=parseFloat(markers[0].getAttribute('id'));
document.getElementById('start').innerHTML=begin+1;
document.getElementById('end').innerHTML=finish;

if((begin+10)>numresults){
document.getElementById('end').innerHTML=numresults;
} else{document.getElementById('end').innerHTML=finish;}

document.getElementById('numresults').innerHTML=numresults;

//if there is more than one results page
if(begin>=10){
prevstart=begin-10;
//clearnext();removeSearch();
document.getElementById('prevnext').innerHTML="<a href='#' onClick='clearnext();removeSearch();companysearch(\""+prevstart+"\");'>Prev</a>&nbsp&nbsp&nbsp&nbsp&nbsp";
}
if(numresults>finish){
nextstart=begin+10;
document.getElementById('prevnext').innerHTML+="<a href='#' onClick='clearnext();removeSearch();companysearch(\""+nextstart+"\");'>Next</a>";
}
if(numresults<10){
document.getElementById('prevnext').innerHTML='';}
document.getElementById('text1').style.display='inline';
//shows the number of search results by unhiding the searchdetails div
document.getElementById('searchdetails').style.display='block';
//Clears previous search results

//document.getElementById('searchresults').innerHTML='';
for (var i=1; i < markers.length; i++) {
var sector=markers[i].getAttribute("sector");
var plastic=false;	
	if(markers[i].getAttribute("name")=='Plastic Logic Ltd'){
	plastic=true;
	}
		
//plots the marker on the map;
var markerid = addSearchMarker(parseFloat(markers[i].getAttribute("lng")),parseFloat(markers[i].getAttribute("lat")),markers[i].getAttribute("id"),(i+begin),i,markers[i].getAttribute("sector"),plastic,markers[i].getAttribute("name"));
if(markers[i].getAttribute("url")){
url = "<a href='http://"+markers[i].getAttribute("url")+"' target='_blank'>"+markers[i].getAttribute("name")+"</a><br/>";
} else {
var url ='<br/>';
}
if(i>1){
var bullet='plus';
var bulletclick='';
} else{var bullet='minus';}
nameid[i].innerHTML="<p><img id='bullet"+i+"' src='"+bullet+".png' onclick='toggleres(this.id);'><b> "+(i+begin)+"</b> "+markers[i].getAttribute("name")+'</p>';
resid[i].innerHTML = '<b>Sector: </b>'+sector+'<br/>'+url+markers[i].getAttribute("about");
	if(markers[i].getAttribute("name")=='Plastic Logic Ltd'){
resid[i].innerHTML += '<span id="vidcontain"><br/><a href="#" onclick="showvid('+markerid+');">[Show Video]</a></span>';
}


document.getElementById('searchresults').style.display='inline';
     			} 
  		} else {
			document.getElementById('searchdetails').style.display='none';
			document.getElementById('searchresults').style.display='none';
			document.getElementById('noresults').innerHTML='<br><b>No results found</b>';
	}
}
	}
}
function removeSearch(){
map.closeInfoWindow();
map.clearOverlays();
}



            function showSectorResults() {
                 if (http_request.readyState == 4) {
                    if (http_request.status == 200) {
var response = http_request.responseXML.documentElement;
var markers = response.getElementsByTagName('company');
var ml=markers.length;
if(ml>0){
for (var i=0; i < ml; i++) {
         addSectorMarker(markers[i].getAttribute("lng"),
                   markers[i].getAttribute("lat"),
                   markers[i].getAttribute("id"),markers[i].getAttribute("sector"));
      		}
         
          } else{
          //alert(markers[0].getAttribute("sector"));
          }
           }
	}
}
            function showSectorRndResults() {
                 if (http_request.readyState == 4) {
                    if (http_request.status == 200) {
var response = http_request.responseXML.documentElement;
var markers = response.getElementsByTagName('company');
var ml=markers.length;
if(ml>0){
for (var i=0; i < ml; i++) {
         addSectorMarker(markers[i].getAttribute("lng"),
                   markers[i].getAttribute("lat"),
                   markers[i].getAttribute("id"),markers[i].getAttribute("sector"));
      		}
var ran_unrounded=Math.random()*ml;
var ran_number=Math.floor(ran_unrounded);
showCompany(markers[ran_number].getAttribute("id"),ran_number);
          } else{
          //alert(markers[0].getAttribute("sector"));
          }
           }
	}
}
            function showCompanyResults() {
              if (http_request.readyState == 4) {
                    if (http_request.status == 200) {
var response = http_request.responseXML.documentElement;
markers = response.getElementsByTagName("marker");
if(markers.length==0){
alert('zero length error');
} else{
var sector = markers[0].getAttribute('sector');
var aloc = markers[0].getAttribute('aloc');
var cname = markers[0].getAttribute('name');

if(markers[0].getAttribute("url")){
var url = "<a href='http://"+markers[0].getAttribute("url")+"' target='_blank'>"+markers[0].getAttribute("name")+"</a>";
var cname='';
} else {
var url ='';
}
var about = markers[0].getAttribute("about")
gmarkers[aloc].openInfoWindowHtml("<b>"+url+cname+"</b><br><b>"+sector+"</b><br><div style='width:250px;font-size: 7pt;'>"+about+"</div>");
}
           }
	}
}


function toggleSector(sector){
//if sector has been displayed
	if(document.getElementById(sector).alt=='true'){
		var gl=gsector.length;
		var loaded;
		for (var i=0; i < gl; i++) {
//checks each loaded sector and if the one just requested has already been loaded it sets loaded to true;
			if(gsector[i]==sector){
				loaded=true;
				}
			}

//if loaded is false (the sector hasn't already been loaded) then the database is queried.
		if(!loaded){
			showSector(sector);
			gsector.push(sector);
			} else {
				displaySector(sector);
				}
		} else {
			removeSector(sector);
			}
	}

function clearmarkers(color){
map.closeInfoWindow();
   for (var i=0;i<gmarkers.length;i++) {
               map.removeOverlay(gmarkers[i]);
         }
}

function removeSector(sector){
map.closeInfoWindow();
   for (var i=0;i<gmarkers.length;i++) {
	if (gmarkers[i].type==sector)  {
map.removeOverlay(gmarkers[i]);
}
         }
}
function displaySector(sector){
for (var i=0;i<gmarkers.length;i++) {
         if (gmarkers[i].type==sector)  {
            map.addOverlay(gmarkers[i]);
         }
      }
}
function changeimage(name) {
var b=document.getElementById(name);
var c=((name.replace(' ','')).toLowerCase()).substr(0,6);
if (b.alt =='false') {    
        b.src = c+".png"
        b.alt='true';
        toggleSector(name);
} else {
b.src="untick.png";
b.alt='false';
toggleSector(name);
}
}
  function toggleside(name){
  a = new Array('sectors','search');
  b = new Array('sectorbox','searchbox');
  var elem = document.getElementById(name);
  for (var loop = 0; loop <a.length; loop++)
{
  if(a[loop]!=name){
  document.getElementById(a[loop]).className='unselected';
  document.getElementById(b[loop]).style.display='none';
    } else {document.getElementById(a[loop]).className='selected';
  document.getElementById(b[loop]).style.display='block';  
    }
  }   
  }
    function togglesearch(){ 
document.getElementById('search').className='unselected';
document.getElementById('searchbox').style.display='none';
document.getElementById('searchdetails').style.display='none';
document.getElementById('searchresults').style.display='none';
document.getElementById('sectors').className='selected';
document.getElementById('sectorbox').style.display='block'; 
}
  function togglesector(){

document.getElementById('sectors').className='unselected';
document.getElementById('sectorbox').style.display='none';
document.getElementById('search').className='selected';
document.getElementById('searchbox').style.display='block';
document.getElementById('searchdetails').style.display='block';
document.getElementById('searchresults').style.display='block';
} 
function gourl(page){
if(page!='#'){
var newin = window.open('http://cambridgeinvestmentresearch.com/'+page,'CIR');
}
}
function clearnext(){
document.getElementById('prevnext').innerHTML='';
document.getElementById('searchres1').style.display='inline';
document.getElementById('searchres2').style.display='none';
document.getElementById('searchres3').style.display='none';
document.getElementById('searchres4').style.display='none';
document.getElementById('searchres5').style.display='none';
document.getElementById('searchres6').style.display='none';
document.getElementById('searchres7').style.display='none';
document.getElementById('searchres8').style.display='none';
document.getElementById('searchres9').style.display='none';
document.getElementById('searchres10').style.display='none';
document.getElementById('searchname1').innerHTML='';
document.getElementById('searchname2').innerHTML='';
document.getElementById('searchname3').innerHTML='';
document.getElementById('searchname4').innerHTML='';
document.getElementById('searchname5').innerHTML='';
document.getElementById('searchname6').innerHTML='';
document.getElementById('searchname7').innerHTML='';
document.getElementById('searchname8').innerHTML='';
document.getElementById('searchname9').innerHTML='';
document.getElementById('searchname10').innerHTML='';
}

function randomsector(){
var ran_unrounded=Math.random()*9;
var ran_number=Math.floor(ran_unrounded);
changeimage(rndarray[ran_number]);
showSectorRnd(rndarray[ran_number]);
}
function uncheckimg(){
for (var loop = 0; loop <sectorlist.length; loop++)
{
var b=document.getElementById(sectorlist[loop]);
b.src="untick.png";
b.alt='false';
}
}
function showvid(){
		var htmlcode="<br><a href='#' onclick='hidevid();'>[Hide Video]</a><div><object id='player'><param name='AutoStart' value='true'><param name='URL' value='http://www.cambridgeinvestmentresearch.com/video/epaper_edit_stuart.wmv'><param name='uiMode' value='full'><embed src='http://www.cambridgeinvestmentresearch.com/video/epaper_edit_stuart.wmv'name='player' width='216' height='173' type='video/x-ms-wmv-plugin' pluginurl='http://www.microsoft.com/windows/windowsmedia' allowchangedisplaysize='1' autosize='1' displaysize='1' showcontrols='1'showstatusbar='1' autorewind='1' autostart='1'></embed></object></div>";
document.getElementById("vidcontain").innerHTML=htmlcode;
		
	//searchmarkers[markerid].openInfoWindowHtml(htmlcode);
      //map.addOverlay(searchmarkers[markerid]);
}
function hidevid(){
document.getElementById("vidcontain").innerHTML='<br/><a href="#" onclick="showvid();">[Show Video]</a>';
}