var emailchr = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-_@.";
var date = ' /-:dDjlzFmMnYyaAgGhHisU';
function res(t,v){
	var w = "";
	for (i=0; i < t.value.length; i++) {
	x = t.value.charAt(i);
	if (v.indexOf(x,0) != -1)
	w += x;
	}
	t.value = w;
}
function getObj(name) {
	return document.getElementById(name);
}
var request = false;
try {
	request = new XMLHttpRequest();
} catch (trymicrosoft) {
	try {
		request = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (othermicrosoft) {
		try {
			request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (failed) {
			request = false;
		}
	}
}

if (!request) {
	alert("Error initializing XMLHttpRequest, Please return to non-Ajax mode!");
}
function refreshImages() {
	var url = "ajaxobject.php?action=refreshGallery";
	request.open("GET", url, true);
	request.onreadystatechange = finishUpdateGall;
	request.send(null);
}
function updatePage(action) {
	var url = "ajaxobject.php?action="+action;
	updatePageHeader(action);
	getObj('pagetracker').href = "index.php?page="+action+"&toggleMode=true";
	request.open("GET", url, true);
	request.onreadystatechange = finishUpdatePage;
	request.send(null);
}
function updateComPage(var1) {
	var url = "ajaxobject.php?action=main&n-page=full&story="+var1;
	getObj('pagetracker').href = "index.php?action=main&n-page=full&story="+var1+"&toggleMode=true";
	request.open("GET", url, true);
	request.onreadystatechange = finishUpdatePage;
	request.send(null);
}
function updateGallPage(action,pnum) {
	var url = "ajaxobject.php?action="+action+"&pnum=" + pnum;
	updatePageHeader(action);
	getObj('pagetracker').href = "index.php?page="+ action + "&pnum="+pnum+"&toggleMode=true";
	request.open("GET", url, true);
	request.onreadystatechange = finishUpdatePage;
	request.send(null);
}
function updateAsciiPage(action,pnum) {
	var url = "ajaxobject.php?action="+action+"&art=" + pnum;
	updatePageHeader(action);
	getObj('pagetracker').href = "index.php?page="+ action + "&pnum="+pnum+"&toggleMode=true";
	request.open("GET", url, true);
	request.onreadystatechange = finishUpdatePage;
	request.send(null);
}
function updatePicPage(action,pic) {
	var url = "ajaxobject.php?action="+action+"&pic=" + pic;
	updatePageHeader(action);
	getObj('pagetracker').href = "index.php?page="+ action + "&pic="+pic+"&toggleMode=true";
	request.open("GET", url, true);
	request.onreadystatechange = finishUpdatePage;
	request.send(null);
}
function updateListPage(action,country) {
	var url = "ajaxobject.php?action="+action+"&country=" + country;
	updatePageHeader(action);
	getObj('pagetracker').href = "index.php?page="+ action + "&country="+country+"&toggleMode=true";
	request.open("GET", url, true);
	request.onreadystatechange = finishUpdatePage;
	request.send(null);
}
function updatePageHeader(action) {
	document.title = "KipiFan - ["+page_array[action]+"]";
	getObj('page_title').text = "KipiFan - ["+page_array[action]+"]";
	getObj('content-head').innerHTML = page_array[action];
}
function finishUpdatePage() {
	if(request.readyState == 1) {
		getObj('content').innerHTML='<div style="margin:10%;text-align:center;"><img src="images/ajax.gif" alt="Loading..." /></div>';
	}
	if (request.readyState == 4) {
		if (request.status == 200) {
			var response = request.responseText;
			getObj('content').innerHTML= response;
		} else {
			alert("status is " + request.status);
		}
	}
}

function finishUpdateGall() {
	if(request.readyState == 1) {
		getObj('gal_rand_wrapper').innerHTML='<div style="text-align:center;"><img src="images/ajax.gif" alt="Loading..." /></div>';
	}
	if (request.readyState == 4) {
		if (request.status == 200) {
			var response = request.responseText;
			getObj('gal_rand_wrapper').innerHTML= response;
		} else {
			alert("status is " + request.status);
		}
	}
}


function SetCookie(cookieName,cookieValue,nDays) {
	var today = new Date();
	var expire = new Date();
	if (nDays==null || nDays==0)
		nDays=1;
	expire.setTime(today.getTime() + 3600000*24*nDays);
	document.cookie = cookieName+"="+escape(cookieValue) + ";expires="+expire.toGMTString();
}

function changeLink2Input( obj ) {
	var objParent = obj.parentNode;
	objParent.removeChild( obj );
	obj = null;
	
	var newForm = document.createElement('form');
	newForm.setAttribute('method','post');
	newForm.setAttribute('action','index.php?page=search');
	
	var newObj = document.createElement('input');
	newObj.setAttribute('type','text');
	newObj.setAttribute('name','search');
	newObj.setAttribute('autocomplete','off');
	newObj.onblur = new Function("changeInput2Link(this)");
	newObj.setAttribute('id','searchInputBox');
	
	newForm.appendChild(newObj);
	objParent.appendChild(newForm);
	setTimeout(function(){newObj.focus();newObj.select();},10)
	objParent.style.width = "155px";
}

function changeInput2Link( obj ) {
	var objForm = obj.parentNode;
	objForm.removeChild( obj );
	objParent = objForm.parentNode;
	objParent.removeChild( objForm );
	obj = null;
	objForm = null;
		
	var newObj = document.createElement('div');
	newObj.onclick = new Function("changeLink2Input(this)");
	newObj.setAttribute('id','searchbox');
	
	var newSpan = document.createElement('span');
	newSpan.setAttribute('style',"background-color:#0067A5;-moz-border-radius:5px;");
	newSpan.innerHTML = "Search Forum";
	
	newObj.appendChild(newSpan);
	objParent.appendChild(newObj);
	objParent.style.width = "150px";
}
function datehelp() {
	var help = getObj('date_help_div');
	if(help.style.display!="block")
	{
		help.style.display="block";
	} else {
		help.style.display="none";
	}
}

function writeInDateCode(letter) {
	var obj = getObj("date_field");
	var obj2 = getObj("backup_date_field");
	if((letter != "clear")&&(letter != "reset"))
	{
		obj.value += letter;
	} 
	else if(letter=="clear")
	{
		obj.value = "";
	} else {
		obj.value = obj2.value;
	}
}

function check_all_settings(bool) {
	var toggleall = getObj('toggleall');
	var gallcount = getObj('gallcount');
	var chatbar = getObj('chatbar');
	if(bool==1) {
		if(toggleall.checked) {
			gallcount.checked = true;
			chatbar.checked = true;
		} else {
			gallcount.checked = false;
			chatbar.checked = false;
		}
	} else {
		if( gallcount.checked && chatbar.checked ) {
			toggleall.checked = true;
		} else if( !gallcount.checked && !chatbar.checked ) {
			toggleall.checked = false;
		}
	}
}