/*Example message arrays for the two demo scrollers*/

var pausecontent=new Array()

pausecontent[0]='1. To comply with current compliance laws, UNVA must file 1098T Qualified Tuition Expense by March 1, 2010. Students who wish to receive their 1098T for Tuition Tax Credit must file a request to the business office by the end of Friday 2/26/10. For all request and inquiries, please contact the business office at 703 941 0949 Ext 117 or email <a href="mailto:hai.nguyen@unva.edu">hai.nguyen@unva.edu</a>.'
pausecontent[1]='2. University of Northern Virginia recently had a site visit from the US Department of Veteran Affairs (VA).  Our programs have been approved by the VA for tuition assistance offered to those who served in the US Armed Forces, their spouses, and children.  For those who are unfamiliar with the program, military personnel and their immediate family are eligible for tuition assistance paid for by the US government.  Schools who wish to participate must undergo regular inspections by the VA.  Contact the University for more information or visit <a href="http://www.gibill.va.gov/" target="_new">http://www.gibill.va.gov/</a>.'
pausecontent[2]='3. UNVA Career Advisors are available to discuss students\' concerns regarding career planning, job hunting and placement, resume reviews and mock interviewing. Advising hours are Tuesday 9am-1pm, Wednesday-Friday 9am-6pm and Saturday 9am-2pm. Students are encouraged to call ahead for an appointment at 703-941-0949 Ext. 130 or email <a href="mailto:mabbasi@unva.edu">mabbasi@unva.edu</a>.  We look forward to seeing you! '

//pausecontent[0]='1. <font color="red">The June 27 Graduation has been moved to Oakton High School</font>. Click <a href="forms/GraduationCeremonyInformation2009.pdf">here</a> for the details."'
//pausecontent[1]='2. Attention Faculty, Students & Staff<br>The University of Northern Virginia has updated its Inclement Weather Policy for winter 2009. Inclement or severe weather conditions include heavy snow or icy conditions, as well as torrential wind and rain associated with hurricanes. Should UNVA close for inclement weather, the following television and radio stations will post the closing:<br>WTOP Radio Network 103.5 FM, 103.9 FM, 107.7 FM and online at WTOP.com, NBC 4, <a href="http://www.myfoxdc.com/" target="_new">FOX 5 WTTG</a>, <a href="http://www.wjla.com/" target="_new">ABC 7 & News Channel 8</a>, W*USA 9'


/***********************************************
* Pausing up-down scroller- ?Dynamic Drive (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s more.
***********************************************/

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
}
