function showContest(strLang) {
	var qs = '?lang='+strLang
	if (strLang.toLowerCase() == 'en') qs = ''
	popup("https://www.getreliable.com/sai/contest/imkcontest.aspx"+qs, 660, 720);
}
function showPlans() {
	popup("comparison.aspx", 720, 580);
}
function showEnroll() {
	popup(enrollURL, 920, 630);
}
function popup(varurl, varwidth, varheight) {
	wnd = window.open(varurl, 'wnd', 'width=' + varwidth + ',height=' + varheight + ',resizable=no,scrollbars=no,status');
	if (wnd) wnd.focus();
}
function getDate() {
	var mydate=new Date()
	var year=mydate.getYear()
	if (year < 1000) year+=1900
	var day=mydate.getDay()
	var month=mydate.getMonth()
	var daym=mydate.getDate()
	if (daym<10) daym="0"+daym
	var dayarray=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
	var montharray=new Array("January","February","March","April","May","June","July","August","September","October","November","December")
	return dayarray[day]+", "+montharray[month]+" "+daym+", "+year
}
function getYear() {
	var mydate=new Date();
	var year=mydate.getYear();
	if (year < 1000) year+=1900
	return year;
}

var VisibleDiv;
function ShowDivTag(id) {
	var Div = document.getElementById(id);
	if (Div != undefined) {
		if (VisibleDiv != undefined) VisibleDiv.style.display = "none";
		Div.style.display = "";
		VisibleDiv = Div;
	}
}
function HideDivTags(ids) {
	var i;
	var Div;
	var DivIds = ids.split(',');
	for (i=0; i<DivIds.length; i++)	{
		Div = document.getElementById(DivIds[i]);
		Div.style.display = "none";
	}    
}
function showContent(elementID,minimizeID,maximizeID) {
	if (element(elementID).style.display == 'none') {
		element(elementID).style.display = '';
		element(minimizeID).style.display = '';
		element(maximizeID).style.display = 'none';
	}
	else {
		element(elementID).style.display = 'none';
		element(minimizeID).style.display = 'none';
		element(maximizeID).style.display = '';
	}
}
function showAllContent(elementTag,minimizeTag,maximizeTag,listArray) {
	listArray = listArray.split(",");
	for(i=0;i<listArray.length;i++) {
		showContent(elementTag+listArray[i],minimizeTag+listArray[i],maximizeTag+listArray[i]);
	}
}
function element(id) {
	if (document.getElementById != null) {
		return document.getElementById(id)
	}
	if (document.all != null) {
		return document.all[id]
	}
	if (document.layers != null) {
		return document.layers[id]
	}
	return null;
}
function format_phone(obj) {
	temp_num = ""+obj.value;
	new_num = "";
	for (i=0;i<temp_num.length;i++) {
		test_char = "" + temp_num.substr(i,1);
		if ((isNaN(test_char)) || (test_char == " ")) {
			//nan
		} else {
			new_num = new_num + test_char;
		}
	}
	area_code = new_num.substr(0,3);
	prefix = new_num.substr(3,3);
	suffix = new_num.substr(6,4);
	extension = new_num.substr(10,4)
	if (new_num.length >= 4) {
		area_code = "(" + area_code + ")"
	}
	if (new_num.length >= 4) {
		prefix = " " + prefix
	}
	if (new_num.length >= 7) {
		suffix = "-" + suffix
	}
	if (new_num.length >= 11) {
		extension = " x" + extension
	}
	obj.value = area_code + prefix + suffix + extension;
}







/************************************************************************************************************
(C) www.dhtmlgoodies.com, November 2005

This is a script from www.dhtmlgoodies.com. You will find this and a lot of other scripts at our website.	

Terms of use:
You are free to use this script as long as the copyright message is kept intact. However, you may not
redistribute, sell or repost it without our permission.

Thank you!

www.dhtmlgoodies.com
Alf Magne Kalleland

************************************************************************************************************/

var dhtmlgoodies_slideSpeed = 5;	// Higher value = faster
var dhtmlgoodies_timer = 0;	// Lower value = faster

var objectIdToSlideDown = false;
var dhtmlgoodies_activeId = false;
var dhtmlgoodies_slideInProgress = false;
function showHideContent(e,inputId)
{
	if(dhtmlgoodies_slideInProgress)return;
	dhtmlgoodies_slideInProgress = true;
	if(!inputId)inputId = this.id;
	inputId = inputId + '';
	var numericId = inputId.replace(/[^0-9]/g,'');
	var answerDiv = document.getElementById('dhtmlgoodies_a' + numericId);

	objectIdToSlideDown = false;
	
	if(!answerDiv.style.display || answerDiv.style.display=='none'){		
		if(dhtmlgoodies_activeId && dhtmlgoodies_activeId!=numericId){			
			objectIdToSlideDown = numericId;
			slideContent(dhtmlgoodies_activeId,(dhtmlgoodies_slideSpeed*-1));
		}else{
			answerDiv.style.display='block';
			answerDiv.style.visibility = 'visible';
			slideContent(numericId,dhtmlgoodies_slideSpeed);
		}
	} else {
		slideContent(numericId,(dhtmlgoodies_slideSpeed*-1));
		dhtmlgoodies_activeId = false;
	}	
}

function slideContent(inputId,direction)
{
	
	var obj =document.getElementById('dhtmlgoodies_a' + inputId);
	var contentObj = document.getElementById('dhtmlgoodies_ac' + inputId);
	height = obj.clientHeight;
	if(height==0)height = obj.offsetHeight;
	height = height + direction;
	rerunFunction = true;
	if(height>contentObj.offsetHeight){
		height = contentObj.offsetHeight;
		rerunFunction = false;
	}
	if(height<=1){
		height = 1;
		rerunFunction = false;
	}

	obj.style.height = height + 'px';
	var topPos = height - contentObj.offsetHeight;
	if(topPos>0)topPos=0;
	contentObj.style.top = topPos + 'px';
	if(rerunFunction){
		setTimeout('slideContent(' + inputId + ',' + direction + ')',dhtmlgoodies_timer);
	}else{
		if(height<=1){
			obj.style.display='none'; 
			if(objectIdToSlideDown && objectIdToSlideDown!=inputId){
				document.getElementById('dhtmlgoodies_a' + objectIdToSlideDown).style.display='block';
				document.getElementById('dhtmlgoodies_a' + objectIdToSlideDown).style.visibility='visible';
				slideContent(objectIdToSlideDown,dhtmlgoodies_slideSpeed);				
			}else{
				dhtmlgoodies_slideInProgress = false;
			}
		}else{
			dhtmlgoodies_activeId = inputId;
			dhtmlgoodies_slideInProgress = false;
		}
	}
}

function initShowHideDivs()
{
	var divs = document.getElementsByTagName('DIV');
	var divCounter = 1;
	for(var no=0;no<divs.length;no++){
		if(divs[no].className=='dhtmlgoodies_question'){
			divs[no].onclick = showHideContent;
			divs[no].id = 'dhtmlgoodies_q'+divCounter;
			var answer = divs[no].nextSibling;
			while(answer && answer.tagName!='DIV'){
				answer = answer.nextSibling;
			}
			answer.id = 'dhtmlgoodies_a'+divCounter;	
			contentDiv = answer.getElementsByTagName('DIV')[0];
			contentDiv.style.top = 0 - contentDiv.offsetHeight + 'px'; 	
			contentDiv.className='dhtmlgoodies_answer_content';
			contentDiv.id = 'dhtmlgoodies_ac' + divCounter;
			answer.style.display='none';
			answer.style.height='1px';
			divCounter++;
		}		
	}	
}
window.onload = initShowHideDivs;






/*=:project
parseSelector 2.0
		
=:description
Provides an extensible way of parsing CSS selectors against a DOM in 
JavaScript.

=:file
Copyright: 2006 Mark Wubben.
Author: Mark Wubben, <http://novemberborn.net/>
   		
=:license
This software is licensed and provided under the CC-GNU LGPL. 
See <http://creativecommons.org/licenses/LGPL/2.1/>
		
=:support
parseSelector supports the following user agents:
* Internet Explorer 6 and above
* Firefox 1.0 and above, and equivalent Gecko engine versions
* Safari 2.0 and above
* Opera 8.0 and above
* Konqueror 3.5.5 and above
It might work in other browsers and versions, but there are no guarantees. There is
no verification made when parseSelector is run to ascertain the browser is supported.
	
=:notes
The parsing of CSS selectors as streams has been based on Dean Edwards
excellent work with cssQuery. See <http://dean.edwards.name/my/cssQuery/>
for more info.
*/

var parseSelector = (function() {
	var SEPERATOR = /\s*,\s*/
	var WHITESPACE = /\s*([\s>+~(),]|^|$)\s*/g;
	var IMPLIED_ALL = /([\s>+~,]|[^(]\+|^)([#.:@])/g;
	var STANDARD_SELECT = /^[^\s>+~]/;
	var STREAM = /[\s#.:>+~()@]|[^\s#.:>+~()@]+/g;

	function parseSelector(selector, node) {
		node = node || document.documentElement;
		var argSelectors = selector.split(SEPERATOR), result = [];

		for (var i = 0; i < argSelectors.length; i++) {
			var nodes = [node], stream = toStream(argSelectors[i]);
			for (var j = 0; j < stream.length; ) {
				var token = stream[j++], filter = stream[j++], args = '';
				if (stream[j] == '(') {
					while (stream[j++] != ')' && j < stream.length) args += stream[j];
					args = args.slice(0, -1);
				}
				nodes = select(nodes, token, filter, args);
			}
			result = result.concat(nodes);
		}

		return result;
	}

	function toStream(selector) {
		var stream = selector.replace(WHITESPACE, '$1').replace(IMPLIED_ALL, '$1*$2');
		if (STANDARD_SELECT.test(stream)) stream = ' ' + stream;
		return stream.match(STREAM) || [];
	}

	function select(nodes, token, filter, args) {
		return (selectors[token]) ? selectors[token](nodes, filter, args) : [];
	}

	var util = {
		toArray: function(enumerable) {
			var a = [];
			for (var i = 0; i < enumerable.length; i++) a.push(enumerable[i]);
			return a;
		}
	};

	var dom = {
		isTag: function(node, tag) {
			return (tag == '*') || (tag.toLowerCase() == node.nodeName.toLowerCase());
		},

		previousSiblingElement: function(node) {
			do node = node.previousSibling; while (node && node.nodeType != 1);
			return node;
		},

		nextSiblingElement: function(node) {
			do node = node.nextSibling; while (node && node.nodeType != 1);
			return node;
		},

		hasClass: function(name, node) {
			return (node.className || '').match('(^|\\s)' + name + '(\\s|$)');
		},

		getByTag: function(tag, node) {
			return node.getElementsByTagName(tag);
		}
	};

	var selectors = {
		'#': function(nodes, filter) {
			for (var i = 0; i < nodes.length; i++) {
				if (nodes[i].getAttribute('id') == filter) return [nodes[i]];
			}
			return [];
		},

		' ': function(nodes, filter) {
			var result = [];
			for (var i = 0; i < nodes.length; i++) {
				result = result.concat(util.toArray(dom.getByTag(filter, nodes[i])));
			}
			return result;
		},

		'>': function(nodes, filter) {
			var result = [];
			for (var i = 0, node; i < nodes.length; i++) {
				node = nodes[i];
				for (var j = 0, child; j < node.childNodes.length; j++) {
					child = node.childNodes[j];
					if (child.nodeType == 1 && dom.isTag(child, filter)) result.push(child);
				}
			}
			return result;
		},

		'.': function(nodes, filter) {
			var result = [];
			for (var i = 0, node; i < nodes.length; i++) {
				node = nodes[i];
				if (dom.hasClass([filter], node)) result.push(node);
			}
			return result;
		},

		':': function(nodes, filter, args) {
			return (pseudoClasses[filter]) ? pseudoClasses[filter](nodes, args) : [];
		}

	};

	parseSelector.selectors = selectors;
	parseSelector.pseudoClasses = {};
	parseSelector.util = util;
	parseSelector.dom = dom;

	return parseSelector;
})();
