// Messages item struc
function MessageItem( iMessageTypeID, sLinkURL, sGraphicURL, sGraphicAltText, iDisplayTime, sMessageText )
{
this.MessageTypeID = iMessageTypeID;
this.LinkURL = sLinkURL;
this.GraphicURL = sGraphicURL;
this.GraphicAltText = sGraphicAltText;
this.DisplayTime = iDisplayTime;
this.MessageText = sMessageText;
}
// News item struc
function NewsItem( iNewsID, sTitle, sLocation )
{
this.NewsID = iNewsID;
this.Title = sTitle;
this.Location = sLocation;
}
// Array to hold message data
var aMessageArray = new Array( new MessageItem( 3,' ',' ',' ',-1,' '));
// Array to hold news data
var aNewsArray = new Array( new NewsItem( 25170,'Police appeal for witnesses after BT cable theft','Yeovil'),
new NewsItem( 25169,'Residents invited to chat with local police sergeant online','Portishead'),
new NewsItem( 25168,'Drug dealer ordered to pay back ill gotten gains','Hartcliffe'),
new NewsItem( 25167,'Two men jailed for sexual offences','Bristol'),
new NewsItem( 25166,'Appeal to find owner of property','Bleadon'));
// Ticker functions
var iCurrentIndex = 0;
var bGoTicker = true;
var bStopTicker = false;
// References to page objects
var oAnchor;
var oTickerArea;
function GoTicker()
{
if ( !bStopTicker )
{ // If ticker isn't stopped
// alert('GoTicker()');
if ( !bGoTicker ) return false;
// Reference objects in use
if ( oAnchor == null )
{
// Load cookie message array
if ( getCookie('CurrentTickerID') != null )
iCurrentIndex = parseInt( getCookie('CurrentTickerID') );
// Load cookie news array
if ( getCookie('CurrentNewsID') != null )
iCurrentNewsIndex = parseInt( getCookie('CurrentNewsID') );
if ( document.getElementById )
{
oAnchor = document.getElementById('PageTickerAnchor');
oTickerArea = document.getElementById('TickerArea');
}
}
// Safe guard
if ( iCurrentIndex > aMessageArray.length - 1 )
iCurrentIndex = 0;
// Determine message type
switch( aMessageArray[ iCurrentIndex ].MessageTypeID )
{
case 1: // Text message
oAnchor.innerHTML = aMessageArray[iCurrentIndex].MessageText;
oAnchor.href = aMessageArray[iCurrentIndex].LinkURL;
// Display message for X seconds
setTimeout('NextMessage()', parseInt( aMessageArray[iCurrentIndex].DisplayTime ) * 1000 );
break;
case 2: // Graphic message
oAnchor.innerHTML = ' ' + aMessageArray[iCurrentIndex].MessageText;
oAnchor.href = aMessageArray[iCurrentIndex].LinkURL;
// Display message for X seconds
setTimeout('NextMessage()', parseInt( aMessageArray[iCurrentIndex].DisplayTime ) * 1000 );
break;
case 3: // News
// oAnchor.innerHTML = '