function proposalPopup(link) {
    var location = $(link).attr('href');
    var initialProposal = window.open(location, 'InitialProposal', 'menubar=no, width=479, height=619, location = no, toolbar=no, scrollbars=yes');
    return false;
}

function contactBoardPopup(link) {
    var location = $(link).attr('href');
    var initialProposal = window.open(location, 'BoardContact', 'menubar=no, width=465, height=378, location = no, toolbar=no, scrollbars=yes');
    return false;
}

function calendarPopup(link) {
    var location = $(link).attr('href');
    var initialProposal = window.open(location, 'Calendar', 'menubar=no, width=619, height=378, location = no, toolbar=no, scrollbars=yes');
    return false;
}

function priPopup(link) {
    // What We Do/PRI pop-up
    var location = $(link).attr('href');
    var pri = window.open(location, 'PRI', 'menubar=no, width=479, height=619, scrollbars=yes, location = no, toolbar = no');
    return false;
}

function swapImg(obj) {
	obj.src = obj.src.replace('off', 'on');
}

function swapImgBk(obj) {
	obj.src = obj.src.replace('on', 'off'); 
}


function scriptInit() {
if (!document.getElementById) {
	return;
	}
}

function rzCC(s) {
   // thanks http://www.ruzee.com/blog/2006/07/\
   // retrieving-css-styles-via-javascript/
   for(var exp=/-([a-z])/; 
       exp.test(s); 
       s=s.replace(exp,RegExp.$1.toUpperCase()));
   return s;
}

 function _setStyle(element, declaration) {
	
	if (declaration.charAt(declaration.length-1)==';')
		declaration = declaration.slice(0, -1);
	
	var k, v;
	var splitted = declaration.split(';');
	
	element.setAttribute('style', declaration);
	for (var i=0, len=splitted.length; i<len; i++) {
		k = rzCC(splitted[i].split(':')[0]);
		v = splitted[i].split(':')[1];
		eval("element.style." + k + "=\"" + v + "\"");
	}
}
 	
function popSouth2() {
	var newwin = window.open('popups/map.html','south','width=376,height=482,scrollbars=no,resizeable=no, top=100, left=300');
}

function popDeadline() {
	var newwin = window.open('popups/deadlines.aspx','test','width=498,height=206,scrollbars=no,resizeable=no, top=100, left=300');
}

var scrollInt;
	var scrTime, scrSt, scrDist, scrDur, scrInt;
	
	
	
	
function replaceAnchorLinks(loc, ref) {
	
	if (loc != ref){
		return;
	}
	
	var anchors, i, targ, targarr;

	if (!document.getElementById)
		return;
	
	// get all anchors
	anchors = document.getElementsByTagName("a");
	
	for (i=0;i<anchors.length;i++)
	{
	
		// check if href links to an anchor on this page
		if ( anchors[i].href.indexOf("#") != -1 && anchors[i].href.indexOf( document.URL ) != -1 )
		{
			// get name of target anchor
			targ = anchors[i].href.substring( anchors[i].href.indexOf("#")+1 );
			
			// find target anchor
			targarr = document.getElementsByName( targ );
			
			if (targarr.length)
			{
				anchors[i].className = (targarr[0].offsetTop < anchors[i].offsetTop) ? "up" : "down";
				anchors[i].id = "__" + targ;	// save target as id with prefix (used in onclick function below)
				anchors[i].onmousedown = function () { scrollToAnchor( this.id.substring( 2 ) ); return false; };
				anchors[i].href = "#nogo";			// rewrite href
			}
		}
	}
}


/*
SCROLL FUNCTIONS
*/




function scrollPage() {
	scrTime += scrInt;
	if (scrTime < scrDur) {
		window.scrollTo( 0, easeInOut(scrTime,scrSt,scrDist,scrDur) );
	}
	else{
		window.scrollTo( 0, scrSt+scrDist );
		clearInterval(scrollInt);
	}
}

function scrollToAnchor(aname) {
	var anchors, i, ele;

	if (!document.getElementById)
		return;
	
	// get anchor
	anchors = document.getElementsByTagName("a");
	for (i=0;i<anchors.length;i++) {
		if (anchors[i].name == aname) {
			ele = anchors[i];
			i = anchors.length;
		}
	}
	
	// set scroll target
	if (window.scrollY)
		scrSt = window.scrollY;
	else if (document.documentElement.scrollTop)
		scrSt = document.documentElement.scrollTop;
	else
		scrSt = document.body.scrollTop;


	scrDist = (ele.offsetTop + 180) - scrSt;
	
	scrDur = 500;
	scrTime = 0;
	scrInt = 10;
	
	
	// set interval
	clearInterval(scrollInt);
	scrollInt = setInterval( scrollPage, scrInt );
}




/*
EASING FUNCTIONS
*/

function easeInOut(t,b,c,d) {
	return c/2 * (1 - Math.cos(Math.PI*t/d)) + b;
}
