// <script>

var globalAjaxHandlers = {
	onCreate:function() {
		Element.show('loading');
	},
	onComplete:function() {
		if(Ajax.activeRequestCount == 0){
			Element.hide('loading');
		}
	}
};
Ajax.Responders.register(globalAjaxHandlers);

function clearSelect(select) {
	for (var i = (select.options.length-1); i >= 0; i--)
		select.options[i]=null;
}


function loadForums(cID) {
	var params = {cID:cID};
	new Ajax.Request(
		"../ajax/getForums.php", {
			method:"get",
			parameters: $H(params).toQueryString(),
			onSuccess:function(req) {
				var select = $("forums");
				clearSelect(select);

				eval(req.responseText);
				forums.each(function(forum) {
					opt = new Option();
					opt.value = forum[0];
					opt.text = forum[1];
					select.options[select.options.length] = opt;
				});
			},
			onFailure: function() { alert('nix'); },
			onException: function(a, e) { alert(e.description); }
		}
	);
}

function selectForum(elementId, selectAltText){
	var slct=document.getElementById(elementId);
	for (var i=0; i<slct.options.length; i++)
		if (slct[i].value == selectAltText) slct.selectedIndex = i;
}

function loadRegions(cc, cn) {
	var params = {cc:cc};
	new Ajax.Request(
		"../ajax/getregions.php", {
			method:"get",
			parameters: $H(params).toQueryString(),
			onSuccess:function(req) {
				var select = $("region");
				var opt = new Option('');

				clearSelect(select);
				clearSelect($("city"));
				select.options[select.options.length] = opt;

				eval(req.responseText);

				regions.each(function(region) {
					opt = new Option();
					opt.setAttribute("cc", region[0]);
					opt.value = region[1];
					opt.text = region[2];
					select.options[select.options.length] = opt;
				});
			}
		}
	);
}

function loadCities(cc, rc) {
	var params = {cc:cc, rc:rc};
	new Ajax.Request(
		"../ajax/getcities.php", {
			method:"get",
			parameters: $H(params).toQueryString(),
			onSuccess:function(req) {
				var select = $("city");
				clearSelect(select);
				select.parentNode.show();

				var opt = new Option('');
				select.options[select.options.length] = opt;

				eval(req.responseText);
				cities.each(function(city) {
					opt = new Option();
					opt.value = city[0];
					opt.text = city[1];
					opt.setAttribute("longitude", city[2]);
					opt.setAttribute("latitude", city[3]);
					select.options[select.options.length] = opt;
				});
			}
		}
	);
}

function filterSelect(field, search) {
	if (search.value == "") {
		field.options.selectedIndex = -1;
		return;
	}

	var pattern = new RegExp("^" + search.value, "i");
	for(var x=0; x < field.options.length; x++)	{
		if (pattern.test(field.options[x].text)) {
			field.options[x].selected = true;
			break;
		}
	}
}

function checkRegistration() {
	teach = ($("langteach_hidden").value!='')?$("langteach_hidden").value.split("|"):[];
	learn = ($("langlearn_hidden").value!='')?$("langlearn_hidden").value.split("|"):[];
		
		if(learn == "" && teach == "")
			alert("You must select at least one language you want to learn or teach");
		else {	
		consolidatelangs();
		document.regform.submit();
}

}

function addLanguage(what, language) {
	var arr = ($(what+"_hidden").value!='')?$(what+"_hidden").value.split("|"):[];
	if (arr.indexOf(language) > -1) return;
	arr.push(language);
	$(what+"_hidden").value = arr.join("|");
	$(what+"_table").innerHTML += '<div class="language"><table style="width: 307px;"><tr><td><a href="javascript:;" onclick="removeLanguage(this, \''+what+'\', \''+language+'\');"><img src="../images/trash.gif" style="vertical-align: bottom;"></a> '+language+'</td><td align="right" style="text-align: right;"><span class="inline-rating"><ul class="star-rating small-star"><li class="current-rating" id="'+what.replace('lang', '')+language+'" style="width: 20%;"></li><li><a href="javascript:;" onclick="document.getElementById(\''+what.replace('lang', '')+language+'\').style.width=\'20%\';" class="one-star"></a></li><li><a href="javascript:;" onclick="document.getElementById(\''+what.replace('lang', '')+language+'\').style.width=\'40%\';" class="two-stars"></a></li><li><a href="javascript:;" onclick="document.getElementById(\''+what.replace('lang', '')+language+'\').style.width=\'60%\';" class="three-stars"></a></li><li><a href="javascript:;" onclick="document.getElementById(\''+what.replace('lang', '')+language+'\').style.width=\'80%\';" class="four-stars"></a></li><li><a href="javascript:;" onclick="document.getElementById(\''+what.replace('lang', '')+language+'\').style.width=\'100%\';" class="five-stars"></a></li></ul></span></td></tr></table></div>';
}

function addMentorLanguage(what, language, showLevels) {
	var arr = ($(what+"_hidden").value!='')?$(what+"_hidden").value.split("|"):[];
	if (arr.indexOf(language) > -1) return;
	arr.push(language+"1");
	$(what+"_hidden").value = arr.join("|");
	if (showLevels) {
		$(what+"_table").innerHTML += '<div class="language"><table style="width: 307px;"><tr><td><a href="javascript:;" onclick="removeLanguage(this, \''+what+'\', \''+language+'\');"><img src="../images/trash.gif" style="vertical-align: bottom;"></a> '+language+'</td><td align="right" style="text-align: right;"><span class="inline-rating"><select name="'+what.replace('lang', '')+'level'+language+'" id="'+what.replace('lang', '')+'level'+language+'"><option value="1">Elementary</option><option value="2">Pre-intermediate</option><option value="3">Intermediate</option><option value="4">Advanced</option></select></span></td></tr></table></div>';
	} else {
		$(what+"_table").innerHTML += '<div class="language"><table style="width: 307px;"><tr><td><a href="javascript:;" onclick="removeLanguage(this, \''+what+'\', \''+language+'\');"><img src="../images/trash.gif" style="vertical-align: bottom;"></a> '+language+'</td><td></td></tr></table></div>';
	}
	//
}

function removeLanguage(obj, what, language) {
	$(what+"_hidden").value = $(what+"_hidden").value.split("|").without(language).join("|");
	obj.parentNode.parentNode.parentNode.parentNode.parentNode.removeChild(obj.parentNode.parentNode.parentNode.parentNode);
}

function consolidatelangs() {
	teach = ($("langteach_hidden").value!='')?$("langteach_hidden").value.split("|"):[];
	learn = ($("langlearn_hidden").value!='')?$("langlearn_hidden").value.split("|"):[];
	
	for (var i=0; i<teach.length; i++) 
		teach[i] += parseInt($("teach"+teach[i]).style.width)/20;

	$("langteach_hidden").value = teach.join("|");

	for (var i=0; i<learn.length; i++)
		learn[i] += parseInt($("learn"+learn[i]).style.width)/20;
	$("langlearn_hidden").value = learn.join("|");
}

function consolidatelangsmentor() {
	teach = ($("langteach_hidden").value!='')?$("langteach_hidden").value.split("|"):[];
	native = ($("nativelang_hidden").value!='')?$("nativelang_hidden").value.split("|"):[];
	
	for (var i=0; i<teach.length; i++) {
		teach[i] = teach[i].substring(0, teach[i].length-1);
		var index = $("teachlevel"+teach[i]).selectedIndex;
		teach[i] += parseInt($("teachlevel"+teach[i]).options[index].value);
	}
	$("langteach_hidden").value = teach.join("|");
	
	//for (var i=0; i<native.length; i++) {
		//native[i] = native[i].substring(0, native[i].length-1);
		//var index = $("nativelevel"+native[i]).selectedIndex;
		//native[i] += parseInt($("nativelevel"+native[i]).options[index].value);
	//}
	$("nativelang_hidden").value = native.join("|");
}

function imchecked(){

	var str="";
	
	str=str+((document.getElementById('im_msn').checked)?'MSN|':'');
	str=str+((document.getElementById('im_icq').checked)?'ICQ|':'');
	str=str+((document.getElementById('im_skype').checked)?'Skype|':'');
	str=str+((document.getElementById('im_aol').checked)?'AOL|':'');
	str=str+((document.getElementById('im_yahoo').checked)?'Yahoo|':'');
	str=str+((document.getElementById('im_google').checked)?'Google|':'');
	
	document.getElementById('ims').value=str;
	return true;

}

function checkreg(){

}

function showLang(id,text) {
	showtext = document.getElementById(id);
	showtext.innerHTML = text;
}
function hideLang(id) {
	showtext = document.getElementById(id);
	showtext.innerHTML = "&rarr;";
}