var pausecontent=new Array()
pausecontent[0]='<img src="/files/images/corporate_express_logo.gif" border="0" align="left"><strong>Corporate Express (Disaster Recovery)</strong><br>Office products and business supplier Corporate Express, have recently committed to Callstream to further enhance the telecom solutions currently provided, with the introduction of a full network disaster recovery solution.<br><br>Corporate Express who already use Callstream’s non geographic numbering service and network based call recording solution, were looking for a disaster recovery solution that means that their operation will be in safe hands in the event of an emergency...&nbsp;<a href="/experienced/corporate-express-disaster-recovery/"><strong>more >></strong></a><br><br>'
pausecontent[1]='<img src="/files/images/united_vacations_logo.gif" border="0" align="left"><strong>Funway Holidays & United Vacations</strong><br>Funway Holidays and United Vacations are delighted to have a telecoms partner such as Callstream, having worked together through many years and various changes both parties are delighted to have a long term agreement in place to continue this positive working relationship.<br><br>When Funway Holidays, who are a multi-brand operation, were having issues with the capacity levels within the existing hardware locally, which was preventing them from having correct brand messaging and using vital switch capacity for playing the messages, Callstream were able to discuss the benefits of network based IVR solutions...&nbsp;<a href="/experienced/funway-holidays-and-united-vacations/"><strong>more >></strong></a><br><br>'
pausecontent[2]='<img src="/files/images/maplin_logo.gif" border="0" align="left"><strong>Maplin Electronics (NGN Flexibility)</strong><br>Maplin Electronics have been a client of Callstream for several years, and recently went through a head office move that meant relocating the whole operation to a new location. As a user of non-geographic numbering and network based IVR solutions, this move from a call centre telecom point of view could not have gone smoother.<br><br>When Maplin Electronics first mentioned the office move they were planning, they discussed what they would need to do to make the transition in telecoms...&nbsp;<a href="/experienced/maplin-electronics-ngn-flexibility/"><strong>more >></strong></a><br><br>'
pausecontent[3]='<img src="/files/images/connect_distribution_logo.jpg" border="0" align="left"><strong>Connect Distribution (Inbound/SMS)</strong><br>Connect Distribution, one of the UKs largest distributors in the domestic appliance market, have expanded their call centre division by moving to new premises in Birmingham, with Callstream handling the large scale site telecoms move and providing state of the art network based call solutions.<br><br>The expansion was necessary, because over the past four years, Connect have grown from a 20 person to 140 person call centre operation handling more than 1.4 million calls a year...&nbsp;<a href="/experienced/connect-distribution-inbound-sms/"><strong>more >></strong></a><br><br>'
pausecontent[4]='<img src="/files/images/fresh_insurance_logo.gif" border="0" align="left"><strong>Fresh Insurance (SMS)</strong><br>Fresh Insurance have been a long standing client of Callstream for several years, and have been making use of the benefits of Non-Geographic numbers and network based IVR solutions throughout this period.<br><br>When Fresh Insurance first enquired about the possibility of introducing SMS to their client base, Callstream were able to offer Fresh Insurance an SMS portal to be able to facilitate the requirement...&nbsp;<a href="/experienced/fresh-insurance-sms/"><strong>more >></strong></a><br><br>'

function pausescroller(content, divId, divClass, delay){
this.content=content //message array content
this.tickerid=divId //ID of ticker div to display information
this.delay=delay //Delay between msg change, in miliseconds.
this.mouseoverBol=0 //Boolean to indicate whether mouse is currently over scroller (and pause it if it is)
this.hiddendivpointer=1 //index of message array for hidden div
document.write('<div id="'+divId+'" class="'+divClass+'" style="position: relative; overflow: hidden"><div class="innerDiv" style="position: absolute; width: 100%" id="'+divId+'1">'+content[0]+'</div><div class="innerDiv" style="position: absolute; width: 100%; visibility: hidden" id="'+divId+'2">'+content[1]+'</div></div>')
var scrollerinstance=this
if (window.addEventListener) //run onload in DOM2 browsers
window.addEventListener("load", function(){scrollerinstance.initialize()}, false)
else if (window.attachEvent) //run onload in IE5.5+
window.attachEvent("onload", function(){scrollerinstance.initialize()})
else if (document.getElementById) //if legacy DOM browsers, just start scroller after 0.5 sec
setTimeout(function(){scrollerinstance.initialize()}, 500)
}

// -------------------------------------------------------------------
// initialize()- Initialize scroller method.
// -Get div objects, set initial positions, start up down animation
// -------------------------------------------------------------------

pausescroller.prototype.initialize=function(){
this.tickerdiv=document.getElementById(this.tickerid)
this.visiblediv=document.getElementById(this.tickerid+"1")
this.hiddendiv=document.getElementById(this.tickerid+"2")
this.visibledivtop=parseInt(pausescroller.getCSSpadding(this.tickerdiv))
//set width of inner DIVs to outer DIV's width minus padding (padding assumed to be top padding x 2)
this.visiblediv.style.width=this.hiddendiv.style.width=this.tickerdiv.offsetWidth-(this.visibledivtop*2)+"px"
this.getinline(this.visiblediv, this.hiddendiv)
this.hiddendiv.style.visibility="visible"
var scrollerinstance=this
document.getElementById(this.tickerid).onmouseover=function(){scrollerinstance.mouseoverBol=1}
document.getElementById(this.tickerid).onmouseout=function(){scrollerinstance.mouseoverBol=0}
if (window.attachEvent) //Clean up loose references in IE
window.attachEvent("onunload", function(){scrollerinstance.tickerdiv.onmouseover=scrollerinstance.tickerdiv.onmouseout=null})
setTimeout(function(){scrollerinstance.animateup()}, this.delay)
}


// -------------------------------------------------------------------
// animateup()- Move the two inner divs of the scroller up and in sync
// -------------------------------------------------------------------

pausescroller.prototype.animateup=function(){
var scrollerinstance=this
if (parseInt(this.hiddendiv.style.top)>(this.visibledivtop+5)){
this.visiblediv.style.top=parseInt(this.visiblediv.style.top)-5+"px"
this.hiddendiv.style.top=parseInt(this.hiddendiv.style.top)-5+"px"
setTimeout(function(){scrollerinstance.animateup()}, 50)
}
else{
this.getinline(this.hiddendiv, this.visiblediv)
this.swapdivs()
setTimeout(function(){scrollerinstance.setmessage()}, this.delay)
}
}

// -------------------------------------------------------------------
// swapdivs()- Swap between which is the visible and which is the hidden div
// -------------------------------------------------------------------

pausescroller.prototype.swapdivs=function(){
var tempcontainer=this.visiblediv
this.visiblediv=this.hiddendiv
this.hiddendiv=tempcontainer
}

pausescroller.prototype.getinline=function(div1, div2){
div1.style.top=this.visibledivtop+"px"
div2.style.top=Math.max(div1.parentNode.offsetHeight, div1.offsetHeight)+"px"
}

// -------------------------------------------------------------------
// setmessage()- Populate the hidden div with the next message before it's visible
// -------------------------------------------------------------------

pausescroller.prototype.setmessage=function(){
var scrollerinstance=this
if (this.mouseoverBol==1) //if mouse is currently over scoller, do nothing (pause it)
setTimeout(function(){scrollerinstance.setmessage()}, 100)
else{
var i=this.hiddendivpointer
var ceiling=this.content.length
this.hiddendivpointer=(i+1>ceiling-1)? 0 : i+1
this.hiddendiv.innerHTML=this.content[this.hiddendivpointer]
this.animateup()
}
}

pausescroller.getCSSpadding=function(tickerobj){ //get CSS padding value, if any
if (tickerobj.currentStyle)
return tickerobj.currentStyle["paddingTop"]
else if (window.getComputedStyle) //if DOM2
return window.getComputedStyle(tickerobj, "").getPropertyValue("padding-top")
else
return 0
}