
/* - javascript/rssticker.js - */
// http://www.pharmacareers.co.uk/portal_javascripts/javascript/rssticker.js?original=1
var lastrssbridgeurl="/portlets/latest_jobs_xml"
function createAjaxObj(){if(typeof XMLHttpRequest!='undefined'){httprequest=new XMLHttpRequest();if(httprequest.overrideMimeType) httprequest.overrideMimeType('text/xml');return httprequest}
else if(window.ActiveXObject){var avers=["Microsoft.XmlHttp","MSXML2.XmlHttp","MSXML2.XmlHttp.3.0","MSXML2.XmlHttp.4.0","MSXML2.XmlHttp.5.0"];for(var i=avers.length-1;i>=0;i--){try{httpObj=new ActiveXObject(avers[i]);return httpObj} catch(e){}}}
throw new Error('XMLHttp (AJAX) not supported')}
function rssticker_ajax(RSS_id,cachetime,divId,divClass,delay,logicswitch){this.RSS_id=RSS_id
this.cachetime=cachetime
this.tickerid=divId
this.delay=delay
this.logicswitch=(typeof logicswitch!="undefined")?logicswitch:""
this.mouseoverBol=0
this.pointer=0
this.opacitysetting=0.2
this.title=[],this.link=[],this.description=[],this.region=[],this.category=[]
this.ajaxobj=createAjaxObj()
document.write('<div id="'+divId+'" class="'+divClass+'" >Initializing ticker...</div>')
if(window.getComputedStyle)
this.mozopacityisdefined=(window.getComputedStyle(document.getElementById(this.tickerid),"").getPropertyValue("-moz-opacity")==1)?0:1
this.getAjaxcontent()}
rssticker_ajax.prototype.getAjaxcontent=function(){if(this.ajaxobj){var instanceOfTicker=this
var parameters="id="+encodeURIComponent(this.RSS_id)+"&cachetime="+this.cachetime+"&bustcache="+new Date().getTime()
this.ajaxobj.onreadystatechange=function(){instanceOfTicker.initialize()}
this.ajaxobj.open('GET',lastrssbridgeurl+"?"+parameters,true)
this.ajaxobj.send(null)}}
rssticker_ajax.prototype.initialize=function(){if(this.ajaxobj.readyState==4){if(this.ajaxobj.status==200){var xmldata=this.ajaxobj.responseXML
if(xmldata.getElementsByTagName("item").length==0){document.getElementById(this.tickerid).innerHTML="No current jobs!!<br /><!--"+this.ajaxobj.responseText+"-->"
return}
var instanceOfTicker=this
this.feeditems=xmldata.getElementsByTagName("item")
for(var i=0;i<this.feeditems.length;i++){this.title[i]=this.feeditems[i].getElementsByTagName("title")[0].firstChild.nodeValue
this.link[i]=this.feeditems[i].getElementsByTagName("link")[0].firstChild.nodeValue
this.description[i]=this.feeditems[i].getElementsByTagName("description")[0].firstChild.nodeValue
this.region[i]=this.feeditems[i].getElementsByTagName("region")[0].firstChild.nodeValue
this.category[i]=this.feeditems[i].getElementsByTagName("category")[0].firstChild.nodeValue}
document.getElementById(this.tickerid).onmouseover=function(){instanceOfTicker.mouseoverBol=1}
document.getElementById(this.tickerid).onmouseout=function(){instanceOfTicker.mouseoverBol=0}
this.rotatemsg()}}}
rssticker_ajax.prototype.rotatemsg=function(){var instanceOfTicker=this
if(this.mouseoverBol==1)
setTimeout(function(){instanceOfTicker.rotatemsg()},100)
else{var tickerDiv=document.getElementById(this.tickerid)
var linktitle='<div class="rsstitle"><a href="'+this.link[this.pointer]+'">'+this.title[this.pointer]+'</a></div>'
var description='<div class="rssdescription">'+this.description[this.pointer]+'</div>'
var region='<div class="rssregion">'+this.region[this.pointer]+'</div>'
var category='<div class="rsscategory">'+this.category[this.pointer]+'</div>'
if(this.logicswitch.indexOf("description")==-1) description=""
var tickercontent=region+linktitle+description+category
this.fadetransition("reset")
tickerDiv.innerHTML=tickercontent
this.fadetimer1=setInterval(function(){instanceOfTicker.fadetransition('up','fadetimer1')},100)
this.pointer=(this.pointer<this.feeditems.length-1)?this.pointer+1:0
setTimeout(function(){instanceOfTicker.rotatemsg()},this.delay)}}
rssticker_ajax.prototype.fadetransition=function(fadetype,timerid){var tickerDiv=document.getElementById(this.tickerid)
if(fadetype=="reset")
this.opacitysetting=0.2
if(tickerDiv.filters&&tickerDiv.filters[0]){if(typeof tickerDiv.filters[0].opacity=="number")
tickerDiv.filters[0].opacity=this.opacitysetting*100
else
tickerDiv.style.filter="alpha(opacity="+this.opacitysetting*100+")"}
else if(typeof tickerDiv.style.MozOpacity!="undefined"&&this.mozopacityisdefined){tickerDiv.style.MozOpacity=this.opacitysetting}
if(fadetype=="up")
this.opacitysetting+=0.2
if(fadetype=="up"&&this.opacitysetting>=1)
clearInterval(this[timerid])}


