/* adapted by Bobby W from stuff at quirksmode.org */
/* 
	allows users to create cross browser events (for things like onload since they 
	don't have access to the body tag) 

	example: mdcAddEvent(window, "load", testAlert); 

*/
if (window.addEventListener)
{
	mdcAddEvent=function( obj, type, fn ){ obj.addEventListener( type, fn, false ) };
	mdcRemoveEvent=function(obj, type, fn){ obj.removeEventListener( type, fn, false ) };
	mdcPreventDefault=function(e){e.preventDefault()}
} 
else if (window.attachEvent) 
{
	mdcAddEvent = function ( obj, type, fn ) {
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
	}
	
	mdcRemoveEvent = function ( obj, type, fn ) {
		obj.detachEvent( "on"+type, obj[type+fn] );
		obj[type+fn] = null;
		obj["e"+type+fn] = null;
	}

	mdcPreventDefault=function(e){e.returnValue=false}
} 
else 
{ 
	mdcAddEvent = mdcRemoveEvent = mdcPreventDefault = new function(){};
}

/*
	mdcSetCookie - sets a cookie with an escaped value
		 name: required, name of cookie to create
		value: optional, value of cookie (undefined results in 
			   blank cookie
		 days: optional, length in days cookie should last
			   set to undefined for session cookies (default)
		 path: optional, path for cookie, set to / if left blank
	   domain: optional, domain for cookie
*/
function mdcSetCookie(name, value, days, path, domain)
{
	var cookieStr;

	if (undefined == value)
	{
		value = "";
	}
	
	cookieStr = name + '=' + escape(value);

	if(undefined != days && "" != days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days * 24 * 60 * 60 * 1000));
		cookieStr += "; expires=" + date.toGMTString();
	}

	if (undefined != path && "" != path)
	{
		cookieStr += "; path=" + path;
	}
	else
	{
		cookieStr += "; path=/";
	}
	
	if (undefined != domain && "" != domain)
	{
		cookieStr += "; domain=" + domain;
	}

	document.cookie = cookieStr;
}

/*
	mdcGetCookie - reads a cookie, returns the unescaped value
				or undefined if cookie is not found
		 name: required, name of cookie to get value of
*/
function mdcGetCookie(name)
{
	var cookies;
	var i;

	if (document.cookie.length > 0)
	{
		/* split cookie key=value pairs out */
		cookies = document.cookie.split('; ');
		for (i = 0; i < cookies.length; i++)
		{
			/* split key=value pair */
			var parts = cookies[i].split('=');
			if (parts[0] == name)
			{
				return(unescape(parts[1]));
			}
		}
	}

	return(undefined);
}

/*
	mdcSaveAd - given an ad id, append it to a list of saved ad ids
		id: required
*/
function mdcSaveAd(id)
{
	cookieStr = mdcGetCookie('adid');
	if (undefined == cookieStr || "" == cookieStr || "undefined" == cookieStr)
	{
		mdcSetCookie('adid', id);
	}
	else
	{
		mdcSetCookie('adid', cookieStr + ',' + id,30);
	}
	mdcRefreshFrame('clipboard_frame');
}

function mdcRefreshFrame(id)
{
	var f = document.getElementById(id);
	if (f)
	{
		f.contentWindow.location.reload(true);
	}
}

/*
	mdcHideAd - given an ad id, hide each element that composes
		the display (mdc-ad-###, mdc-adfoot-###, mdc-adhead-###)
		  id: required
*/
function mdcHideAd(id)
{
	if(document.getElementById)
	{
		var obj;
		obj = document.getElementById("mdc-adhead-" + id);
		if (obj)
		{
			obj.style.display = "none";
		}
		obj = document.getElementById("mdc-ad-" + id);
		if (obj)
		{
			obj.style.display = "none";
		}
		obj = document.getElementById("mdc-adfoot-" + id);
		if (obj)
		{
			obj.style.display = "none";
		}
	}
}

/*
	mdcRemoveAd - given an ad id, remove it from a list of saved ad ids
		  id: required
*/
function mdcRemoveAd(id)
{
	cookieStr = mdcGetCookie('adid');
	if (undefined == cookieStr || "" == cookieStr)
	{
	}
	else
	{
		var id_list = cookieStr.split(',');
		var i;
		var new_list = '';
		var comma = '';
		for (i = 0; i < id_list.length; i++)
		{
			if (id_list[i] != id)
			{
				new_list += comma + id_list[i];
				comma = ',';
			}
		}
		mdcSetCookie('adid', new_list,30);
	}
	mdcRefreshFrame('clipboard_frame');
}

/* saves (or unsaves) all of the ads on the page */
function mdcSaveAllAds(status)
{
	var boxes = document.getElementsByTagName("input");
	var j;

	if (undefined != boxes)
	{
		for (j = 0; j < boxes.length; j++)
		{
			if(boxes[j].id.indexOf("clip-") != -1)
			{
				if (boxes[j].checked != status)
				{
					boxes[j].click();
				}
			}
		}
	}
}

/* checks the save ad boxes for ads that have already been saved */
function mdcCheckSavedAds()
{
	var boxes = document.getElementsByTagName("input");
	var cookieStr = mdcGetCookie('adid');
	var adList;
	var i;
	var k;

	if (undefined == boxes || undefined == cookieStr)
	{
		return;
	}

	adList = cookieStr.split(',');
	for (i = 0; i < boxes.length; i++)
	{
		if(boxes[i].id.indexOf("clip-") != -1)
		{
			var parts = boxes[i].id.split('-');
			for (k = 0; k < adList.length; k++)
			{
				if (adList[k] == parts[1])
				{
					boxes[i].checked = true;
					k = adList.length;
				}
			}
		}
	}
}




/***********************************************
* IFrame SSI script II- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com)
* Visit DynamicDrive.com for hundreds of original DHTML scripts
* This notice must stay intact for legal use
***********************************************/

//Input the IDs of the IFRAMES you wish to dynamically resize to match its content height:
//Separate each ID with a comma. Examples: ["myframe1", "myframe2"] or ["myframe"] or [] for none:
var iframeids=["clipboard_frame"]

//Should script hide iframe from browsers that don't support this script (non IE5+/NS6+ browsers. Recommended):
var iframehide="yes"

var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
var FFextraHeight=parseFloat(getFFVersion)>=0.1? 16 : 0 //extra height in px to add to iframe in FireFox 1.0+ browsers

function resizeCaller() {
var dyniframe=new Array()
for (i=0; i<iframeids.length; i++){
if (document.getElementById)
resizeIframe(iframeids[i])
//reveal iframe for lower end browsers? (see var above):
if ((document.all || document.getElementById) && iframehide=="no"){
var tempobj=document.all? document.all[iframeids[i]] : document.getElementById(iframeids[i])
tempobj.style.display="block"
}
}
}

function resizeIframe(frameid){
var currentfr=document.getElementById(frameid)
if (currentfr && !window.opera){
currentfr.style.display="block"
if (currentfr.contentDocument && currentfr.contentDocument.body.offsetHeight) //ns6 syntax
currentfr.height = currentfr.contentDocument.body.offsetHeight+FFextraHeight; 
else if (currentfr.Document && currentfr.Document.body.scrollHeight) //ie5+ syntax
currentfr.height = currentfr.Document.body.scrollHeight;
if (currentfr.addEventListener)
currentfr.addEventListener("load", readjustIframe, false)
else if (currentfr.attachEvent){
currentfr.detachEvent("onload", readjustIframe) // Bug fix line
currentfr.attachEvent("onload", readjustIframe)
}
}
}

function readjustIframe(loadevt) {
var crossevt=(window.event)? event : loadevt
var iframeroot=(crossevt.currentTarget)? crossevt.currentTarget : crossevt.srcElement
if (iframeroot)
resizeIframe(iframeroot.id);
}

function loadintoIframe(iframeid, url){
if (document.getElementById)
document.getElementById(iframeid).src=url
}

if (window.addEventListener)
window.addEventListener("load", resizeCaller, false)
else if (window.attachEvent)
window.attachEvent("onload", resizeCaller)
else
window.onload=resizeCaller