﻿function fixIEBGFlicker()
{
	try 
	{ 
		document.execCommand("BackgroundImageCache", false, true); 
	} 
	catch(err) {}
}


function selectMouseOver()
{
	this.className = this.className.indexOf("Hover") == -1 ? this.className + " Hover" : this.className;
}
function selectMouseOut()
{
	this.className = this.className.replace("Hover","");
}
function fixIeFlash()
{
	objects = document.getElementsByTagName("object");
	for (var i = 0; i < objects.length; i++)
	{
		objects[i].outerHTML = objects[i].outerHTML;
	}
}

function postBackHiddenField(hiddenFieldID) 
{
    var hiddenField = $get(hiddenFieldID);
    if (hiddenField) 
    {
        hiddenField.value = (new Date()).getTime();
        __doPostBack(hiddenFieldID,'');
	}
}
function resize_elements(items)
{
	var recs = new Array();
	for(i = 0; i < items.length; i++)
	{	
		recs[i] = document.getElementById(items[i]);
	}
	
	var max = 0;
	for(i=0; i<recs.length; i++)
	{
		if(existsDefined(recs[i]))
		{
		
			
			if(recs[i].offsetHeight > max)
			{
				max = recs[i].offsetHeight;
			}
		}
	}
	for(i = 0; i < recs.length; i++)
	{
		
		if(existsDefined(recs[i]))
		{
	
			recs[i].style.height = max + "px";
		}
	}
	//alert(max);
	
}
function makePreWindow( url, window_width, window_height, scrollbars )
{
    var screenPosX,screenPosY;
	var newWindow = null;
	if(!scrollbars)
	{
		scrollbars = 0;
	}
	if(window_width > screen.availWidth || window_height > screen.availHeight)
	{
		scrollbars = 1;
		window_height = window_height + 14;
		window_width = window_width + 14;
	}
			screenPosX = 0;
			screenPosY = 0;
	newWindow = window.open(url, 'Preview','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars='+scrollbars+',resizable=0,copyhistory=0,width='+window_width+',height='+window_height+',screenX='+screenPosX+',screenY='+screenPosY);
	newWindow.focus();
}
function DeselectAssociatedDropDown(txt,dropdown)
{
	var ddl = document.getElementById(findControl(dropdown,'select'));
	
	if(txt.value == "")
		ddl.selectedIndex = 0;
	return false;
}
function findControl(elname,htmlElementType)
{
    var i;
    var foundID = "";
    htmlElementType = typeof htmlElementType == "undefined" ? "" : htmlElementType;
    htmlElementType = htmlElementType.toLowerCase() == 'dropdownlist' ? 'select' : htmlElementType;
    var x = document.getElementsByTagName(htmlElementType);
    if(htmlElementType != "")
    {
		if(x.length > 1)
		{
			var i = 0;
			while(i < x.length)
			{
				var e = x[i];
				if ((e != null) && (foundID == ""))
				{                   
					var cid = new String(e.id); 
					var index = cid.search(elname);
					if ((index >= 0) && (cid.length == (index + elname.length)))
					{                    
						foundID = cid;
						i = x.length;
					}
				}
				i++;
			}
		}
	}
	else
	{
		for(i = 0; i < document.forms[0].elements.length; i ++)
		{
			var e = document.forms[0].elements[i];
			if ((e != null) && (foundID == ""))
			{                   
				var cid = new String(e.id); 
				var index = cid.search(elname);
				if ((index > 0) && (cid.length == (index + elname.length)))
				{                    
					foundID = cid;
				}
			}
		}
	}
	
    return (foundID);
}
function getSelectedDropDownValue(ddl)
{
	if(existsDefined(ddl.length) && !existsDefined(ddl.options))
		ddl = document.getElementById(ddl);
		
	return ddl.options[ddl.selectedIndex].value;
}
function SelectDropDownValue(value, ddl)
{
	if(typeof ddl == "string")
	{
		ddl = document.getElementById(ddl);
	}
	for(var i = 0; i < ddl.options.length; i++)
	{
		if(ddl.options[i].value == value)
			ddl.options[i].selected = true;
	}
}
function clearOptions(ddl)
{

	var i;
	for(i=ddl.options.length-1; i >= 0; i--)
	{
		ddl.remove(i);
	}
}
function EnableRowHighlight(acceptableClasses)
{
	/*var tables = document.getElementsByTagName("table")
	var goahead = false;
	for(var i = 0; i < tables.length; i++)
	{
		goahead = false;
		for(var j = 0; j < acceptableClasses.length; j++)
		{
			if(tables[i].className.indexOf(acceptableClasses[j]) != -1)
				goahead = true;
		}
		
		if(goahead)
		{
			
			var tablebody = tables[i].getElementsByTagName("tbody")
			for(var j = 0; j < tablebody.length; j++)
			{
				var tablerow = tablebody[j].getElementsByTagName("tr");
				for(var k = 0; k < tablerow.length; k++)
				{
					var th = tablerow[k].getElementsByTagName("th");
					if(th.length == 0)
					{
						tablerow[k].onmouseover	= TableRowMouseOver;
						tablerow[k].onmouseout	= TableRowMouseOut;
					}
				}
			}				
		}
	}	*/
}

function TableRowMouseOver()
{
	this.className.indexOf(" HighlightedRow") == -1 ? this.className += " HighlightedRow" : this.className = this.className;
}

function TableRowMouseOut()
{
	this.className = this.className.replace("HighlightedRow","");
}
function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) 
  {
  	//Netscape compliant
	scrOfY = window.pageYOffset;
	scrOfX = window.pageXOffset;
  } 
  else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) 
  {
	//DOM compliant
	scrOfY = document.body.scrollTop;
	scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
	//IE6 standards compliant mode
	scrOfY = document.documentElement.scrollTop;
	scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}
function GenerateRandom(ceiling) //will start at 0 and always be one less than the ceiling
{
	var randomnumber=Math.floor(Math.random()*ceiling)
	return randomnumber;
}
function isDigit(num) {
	if (num.length>1)
	{
		return false;
	}
	var string="1234567890";
	if (string.indexOf(num) != -1)
	{
		return true;
	}
	return false;
}
function isInteger(val){
	if(isNaN(val))
		return false;
	for(var i=0;i<val.length;i++)
	{
		if(!isDigit(val.charAt(i)))
		{
			return false;
		}		
	}
	return true;
}
function isBlank(val)
{
	if(val==null)
	{
		return true;
	}
	for(var i=0;i<val.length;i++) 
	{
		if ((val.charAt(i)!=' ')&&(val.charAt(i)!="\t")&&(val.charAt(i)!="\n")&&(val.charAt(i)!="\r"))
		{
			return false;
		}
	}
	return true;
}

var fixoffsetleft = 0;
var fixoffsettop = 1;
function getposOffset(what, offsettype)
{
	var totaloffset=(offsettype=="left")? (what.offsetLeft - fixoffsetleft) : (what.offsetTop + fixoffsettop);
	var parentEl=what.offsetParent;
	while (parentEl!=null)
	{
		totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
		parentEl=parentEl.offsetParent;
	}
	return totaloffset;
}
function get_query_string(qstr,qs,esc) 
{
	var i, pos, argname, argvalue, queryString, pairs;
	queryString = !existsDefined(qs) ? location.href.substring(location.href.indexOf("?")+1) : qs; 
	if(!existsDefined(esc))
		esc = true;
	pairs = queryString.split("&");
	for (i = 0; i < pairs.length; i++) 
	{
		pos = pairs[i].indexOf('=');
		if (pos == -1) 
		{
			continue;
		}
		argname = pairs[i].substring(0,pos);
		argvalue = pairs[i].substring(pos+1);
		if (argname == qstr) 
		{
			if(!esc)
				return argvalue;
			else
				return unescape(argvalue.replace(/\+/g, " "));
		}
	}
	return "";
}
function focusWindow(linkplace,windowname)
{
	var win = window.open(linkplace,windowname);
	win.focus();
}
function existsDefined(i,de)
{
	if(de == null || de == "")
		de = false;
	if(de)
		alert(typeof i);
	if(typeof i == "undefined" || i == null)
		return false;
	else
		return true;
}
function printArray(arr)
{
	var strAl = "";
	for(var i = 0; i < arr.length; i++)
	{
		strAl += "[" + i + "] = " + arr[i] + "\n";
	}
	return strAl;
}
function toggleVisibility(sender,el)
{
	
	var sendere = null;
	
	sendere = sender;
		
	ele = el;
		
	if(ele.className.indexOf("Hidden") != -1)
		showElement(sendere,ele);
	else
		hideElement(sendere,ele);
	
}
function showElement(sender, el)
{
	if(existsDefined(el))
	{
		el.className = el.className.replace("Hidden","");
		if(existsDefined(sender))		
			sender.className += " Expanded";	
	}
}
function hideElement(sender, el)
{
	if(existsDefined(el))
	{
		if(el.className.indexOf("Hidden") == -1)
		{
			el.className += " Hidden";
			if(existsDefined(sender))		
				sender.className = sender.className.replace("Expanded","");
		}
	
	}
}
function getPageFileName()
{
	return location.href.substring(location.href.lastIndexOf('/')+1);
}
function elementHasScrollbar(elem_id)
{
	elem = existsDefined(elem_id.length) ? document.getElementById(elem_id) : elem_id;
	
	if (elem.clientHeight < elem.scrollHeight)
		return true;
	else
		return false;
}
function resetForm(formid)
{
	var form = document.getElementById(formid);
	
	if(existsDefined(form))
		form.reset();
}
var redirectAllowed = true;
function redirect(url) {
    if (redirectAllowed) {
        if (url != "") {
            setTimeout('window.location = "' + url + '"', 500);
        }
    }
}

function PreventRedirect() {
    redirectAllowed = false;
}
function catchEnter(e,focusel,eltype)
{
	var el = null;
	el = focusel;
	if(existsDefined(focusel.length))
		el = document.getElementById(focusel);
	if(!existsDefined(el) && existsDefined(eltype))
		el = document.getElementById(findControl(focusel,eltype));
		
    var id = !e ? window.event : e;
    if (id['keyCode'] == 13  )
    {

       el.focus()

    }
}
function formatCurrency(num) 
{
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
	num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+','+
	num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + '$' + num + '.' + cents);
}
function stripCharacters(str, chars)
{
	
	filteredValues = chars;
	var i;
	var returnString = "";
	for (i = 0; i < str.length; i++) 
	{  // Search through string and append to unfiltered values to returnString.
		var c = str.charAt(i);
		if (filteredValues.indexOf(c) == -1) 
			returnString += c;
	}
	return returnString;
}

function headerToggleClass(el)
{
	if(el.className.indexOf('Collapsed') != -1)
	{
		el.className = el.className.replace('Collapsed','');
	}
	else
	{
		el.className += ' Collapsed';	
	}
}

var imageClassName;
var imageStaticClassName;
var imageElement;
var imageCountElement;
var imageCount = 0;
var lnkPrev;
var lnkNext;
var timImageChanger = null;

function setupHomePagePhotoCallout(cln, scln, el, iceid, lpid, lnid, dfval)
{
	imageClassName = cln;
	imageStaticClassName = scln;
	imageElement = el;
	imageCountElement = document.getElementById(iceid);
	imageCount = parseInt(imageCountElement.value);
	lnkPrev = document.getElementById(lpid);
	lnkNext = document.getElementById(lnid);
	changeActiveImage(dfval);
	timImageChanger = setTimeout("changeActiveImage()",5000);
}
function changeActiveImage(to)
{
	if(!existsDefined(imageClassName))
		alert("Photo Changer - Can't change, not setup");
	var act = document.getElementById(imageElement);
	
	var hf = document.getElementById("hfPhotoCalloutCurrent");
	
	if(!existsDefined(to))
		to = parseInt(hf.value);
	
	if(existsDefined(act))
	{
		
		var newClass = null;
		if(existsDefined(to))
		{
			newClass = imageClassName + to;	
		}
			
		if(existsDefined(newClass))
		{
			act.className = imageStaticClassName + " " + newClass;
			
			var prev = to <= 1 ? imageCount : to - 1;
			var next = to >= imageCount ? 1 : to + 1;
			
			hf.value = next;
			
			lnkPrev.onclick=function(){ changeActiveImage(prev); return false; }
			lnkNext.onclick=function(){ changeActiveImage(next); return false; }		
		}
	}
	clearTimeout(timImageChanger);
	timImageChanger = setTimeout("changeActiveImage()",5000);
}
function newsRedirect(accid) {
    
	var url = "";
	url = "BCSNews.aspx?NewsID=" + accid;
	redirect(url);
}
function eventsRedirect(accid, linked) {
    if (linked == "True") {
        var url = "";
        url = "BCSEvents.aspx?EventID=" + accid;
        redirect(url);
    }
}

function deselectSelectedDay(sender, eventargs)
{
	eventargs.set_cancel(true);
	//var e = eventargs.get_renderDay();
	//e.IsSelected = false;
}
function PadZero(i)
{
if (i<10)
  {
  i="0" + i;
  }
return i;
}
function deleteImage(imageid, imagegalleryid)
{
	if(confirm('This will permenantly delete this image and it\'s associated images. Continue?'))
		wsUtilities.deleteImage(imageid,imagegalleryid,deleteImageComplete);
}
	
function deleteImageComplete(result)
{
	if(result)
	{
		alert("Image Deleted");
		document.getElementById("btnRefresher").click();
	}
	
}

function setImageMaster(imageid,imagegalleryid)
{
	wsUtilities.setGalleryThumbnail(imageid,imagegalleryid ,setImageMasterFinish);
}
function setImageMasterFinish(result)
{
	if(result)
		alert("Image Gallery Updated");
	else
		alert("There was an error updating the image gallery");
}
function toggleImageHomepage(imageid, isHomepage)
{
	wsUtilities.setHomepageImage(imageid,isHomepage,toggleImageHomepageFinish);
}
function toggleImageHomepageFinish(result)
{
	if(result)
	{
		alert("Image Homepage Status updated");
		document.getElementById("btnRefresher").click();
	}
	else
		alert("There was an error updating the image gallery");
}
function regenerateThumbnail(imageid, imagegalleryid, oldthumbid)
{
	wsUtilities.regenerateThumbnail(imageid,imagegalleryid,oldthumbid,regenerateThumbnailFinish);
}
function regenerateThumbnailFinish(result)
{
	if(result)
	{
		alert("Thumbnail regenerated");
		document.getElementById("btnRefresher").click();
	}
	else
		alert("There was an error regenerating the thumbnail");
}
