var dgMessageIds
var dgSelectedMessage
var dgBasePathName
var dgCanEdit = new Hash( {} )
var dgWatched = new Hash( {} )
var dgNextMessage;
var dgPrevMessage;
var dgInitializing = true;
var dgXmlRequest = null
function dgAction(dga)
{
document.location.pathname = dgBasePathName + dgSelectedMessage + '/dga,' + dga;
}
function dgEdit() 
{
document.location.pathname = dgBasePathName + dgSelectedMessage + '/dga,21/vm,1';
void 1;
}
function dgReply(quote) 
{
document.location.pathname = dgBasePathName + dgSelectedMessage + '/dga,1/quote=' + quote;
void 1;
}
function resizeMessageBoard()
{
var messageList = $('dgMessageList')
var bSize = getBrowserSize();
var visHeight = bSize.height - 180;
if (messageList)
{
var t = messageList.getElementsByTagName("table");
var newHeight = Math.floor(visHeight * 0.4)
if (t[0].clientHeight < newHeight)
newHeight = t[0].clientHeight
messageList.style.height = newHeight + 'px'
}
dgScrollListIntoView(dgSelectedMessage);
void 1;
}
function dgScrollListIntoView(messageId)
{
var msb = $('msb' + messageId);
var messageList = $('dgMessageList');
if (msb && messageList)
{
scrollItemIntoView(messageList,msb);
}
}
function setSelectedMessage(newMessageId)
{
if (document.getElementById)
{
var title = $('mgSelTitle');
var link = $('msb' + newMessageId);
if (title && link && link.nextSibling && title.innerText)
{
link = link.nextSibling;
title.innerText = getLinkText(link);
}
if (dgWatched[newMessageId])
{
$('dgWatchButton').hide()
$('dgUnwatchButton').show()
}
else
{
$('dgUnwatchButton').hide()
$('dgWatchButton').show()
}
if (dgCanEdit[newMessageId])
{
$('dgEditButton').show()
}
else
{
$('dgEditButton').hide()
}
}
if ($("msb" + dgSelectedMessage))
{
$("msb" + dgSelectedMessage).setStyle( { visibility: 'hidden' } )
$("msb" + newMessageId).setStyle( { visibility: 'visible' } )
}
if ($("mse" + dgSelectedMessage))
{
$("mse" + dgSelectedMessage).setStyle( { visibility: 'hidden' } )
$("mse" + newMessageId).setStyle( { visibility: 'visible' } )
}
dgSelectedMessage = newMessageId
if ($("urm" + newMessageId))
$("urm" + newMessageId).hide()
dgScrollListIntoView(dgSelectedMessage)
}
function dgSelect(newMessageId) 
{
setMessageText("<br><br><br><center><big><b>Message Loading...</b></big></center>")
setSelectedMessage(newMessageId);
var notice = $( 'noticemessage' )
if (!dgInitializing && notice)
notice.hide()
if (dgXmlRequest && dgXmlRequest.abort)
dgXmlRequest.abort()
dgXmlRequest = new Ajax.Request(dgBasePathName + newMessageId + '/dga,15',
{
onSuccess: function (transport) {
var navlink = transport.responseXML.getElementsByTagName("navlink");
if (navlink && $('dgNavLink'))
{
$('dgNavLink').innerHTML = navlink[0].firstChild.nodeValue;
}
var navtitle = transport.responseXML.getElementsByTagName("title");
if (navtitle && $('dgNavTitle'))
{
$('dgNavTitle').innerHTML = navtitle[0].firstChild.nodeValue;
}
var css = transport.responseXML.getElementsByTagName("css");
if (css)
{
for (var i = 0; i < css.length; i++)
{
addStyleSheet(css[i].firstChild.nodeValue)
}
}
var js = transport.responseXML.getElementsByTagName("js");
if (js)
{
for (var i = 0; i < js.length; i++)
{
addJavaScript(js[i].firstChild.nodeValue)
}
}
var contents = transport.responseXML.getElementsByTagName("contents");
if (contents.length == 1 && contents[0].firstChild)
{
setMessageText(contents[0].firstChild.nodeValue)
}
else
{
setMessageText("<br><br><br><center><big><b>There was an error loading the message...</b></big></center>");
}
dgXmlRequest = null
}
}
)
void 1;
}
function setMessageText(h)
{
var mw = $('dgMessageWindow')
if (mw) //  && mw.innerHTML)
{
mw.innerHTML = h
}
}
var dgToggles = new Object();
function dgToggle()
{
if (dgToggles[this.id])
{
var l = dgToggles[this.id]
for (var i=0; i< l.length; i++) 
{
var c = document.getElementById( l[i] )
if (c && (c.checked != this.checked))
c.click()
}
}
}
function dgInitToggle(checkId,toggleIds)
{
dgToggles[checkId] = toggleIds
observeId(checkId,'click',dgToggle)
}
function dgNext()
{
if (dgSelectedMessage == dgMessageIds[dgMessageIds.length - 1])
{
if (dgNextMessage != -1)
{
document.location.pathname = dgBasePathName + dgNextMessage + '/dga,2';
}
else
{
document.location.pathname = dgBasePathName + dgNextMessage + '/dga,3';
}
}
else
{
for (var i=0; i< dgMessageIds.length; i++) 
{
if (dgSelectedMessage == dgMessageIds[i] && i+1 < dgMessageIds.length)
{
dgSelect(dgMessageIds[i+1]);
break;
}
}
}
void 1;
}
function dgPrev()
{
if (dgSelectedMessage == dgMessageIds[0])
{
if (dgPrevMessage != -1)
{
document.location.pathname = dgBasePathName + dgPrevMessage + '/dga,2';
}
else
{
document.location.pathname = dgBasePathName + dgPrevMessage + '/dga,3';
}
}
else
{
for (var i=0; i< dgMessageIds.length; i++) 
{
if (dgSelectedMessage == dgMessageIds[i] && i > 0)
{
dgSelect(dgMessageIds[i-1]);
break;
}
}
}
void 1;
}
function dgSetBasePath(idgBasePathName)
{
dgBasePathName = idgBasePathName;
void 1;
}
function dgInitialize(idgMessageIds,
idgCanEdit,
idgBasePathName,
idgNextMessage,
idgPrevMessage,
idgSelectedMessage)
{
dgMessageIds = idgMessageIds;
dgSelectedMessage = idgSelectedMessage;
dgCanEdit = idgCanEdit;
dgBasePathName = idgBasePathName;
dgNextMessage = idgNextMessage;
dgPrevMessage = idgPrevMessage;
resizeMessageBoard();
dgSelect(dgSelectedMessage);
dgInitializing = false;
void 1;
}
