/*#####################################
#        SEARCH FUNCTIONS             #
######################################*/

// Auto Complete på "tittel" når du legger til ny tekst
function autoComplete(key,cont){ 
	var script_name = 'ajax/autocomplete';
	var params = { 'q':key.replace(/\s/g,'+') };
	$.get(script_name,params,
		function(obj){ 
			// obj er en array med strings ['hei','pa','deg']
			var res = [];
			for(var i=0;i<obj.length;i++){
				res.push({ id:i , value:obj[i]});
			}
			// will build suggestions list
			cont(res); 
		 },
		 'json');
}

// Denne brukes ikke lenger og er ganske ubrukelig
function capitalFirstLetter(node){
	var sp = node.value.split(" ");
	var ret = "";
	for(var i = 0; i < sp.length; i++){
		var word = sp[i];
		var first = word.charAt(0).toUpperCase();
		word = first + word.substr(1);
		ret += word;
		if(i < sp.length-1) ret += " ";
	}
	node.value = ret;
}


/*#####################################
#    UPLOAD VALIDATION FUNCTIONS      #
######################################*/

function validateUpload(form){
	var tittel = document.getElementById('upload_field').value;
	var release = document.getElementById('upload_release').value;
	var file = document.getElementById('upload_file').value;
	
	var isLegal = true;
	
	if(tittel.length<1 || release.length<1 || file.length<1) {
		document.getElementById('upload_feil').innerHTML = "Alle obligatoriske felter m&aring; fylles ut!<br />";
		isLegal = false;
	}
	if(!hasLegalSigns(tittel) || !hasLegalSigns(release)) {
		var msg = "Noen av feltene inneholder ulovlige tegn!<br />";
		msg += "Lovlige tegn er: [a-z] [A-Z] [0-9] og [ ,.-_['&]()!:]";
		document.getElementById('upload_feil').innerHTML += msg;
		isLegal = false;
	}
	return isLegal;
}

function hasLegalSigns(txt){
	var legal = "abcdefghijklmnopqrstuvwxyz";
	legal += legal.toUpperCase();
	legal += " ,.-_[]0123456789'()&!:";
	
	for(var i = 0; i<txt.length; i++){
		if(legal.indexOf(txt.charAt(i))==-1){
			return false;
		}
	}
	return true;
}


/*#####################################
#    NEW USER VALIDATION FUNCTIONS    #
######################################*/

function validateNewUser(form){
	
	var user = form.user;
	var pw1 = form.pw1;
	var pw2 = form.pw2;
	var mail = form.mail;
	var captcha = form.captcha;
	
	var isValid = true;
	
	if(!validateField(user.value,4))
		isValid = false;	
	if(!validateField(pw1.value,6))
		isValid = false;
	if(!validateField(pw1.value,6) && pw1.value==pw2.value)
		isValid = false;
	if(!validateEmail(mail.value))
		isValid = false;
	if(captcha.value!='c' || !validateField(captcha.value,1))
		isValid = false;
	
	if(!isValid) {
		var msg = "Alle feltene m&aring; v&aelig;re riktig fylt ut!<br />";
		msg += "Lovlige tegn er: [a-z] [A-Z] og [0-9]";
		document.getElementById('nyBruker_feil').innerHTML += msg;
	}
	
	return isValid;
}

// LIVE check
function evalLIVE(){
	var user = document.getElementById('user_form').user;
	var pw1 = document.getElementById('user_form').pw1;
	var pw2 = document.getElementById('user_form').pw2;
	var mail = document.getElementById('user_form').mail;
	var captcha = document.getElementById('user_form').captcha;
	if(validateField(user.value,4))
		user.style.background = "#70DB93";
	else
		user.style.background = "#FFFFFF";	
	if(validateField(pw1.value,6))
		pw1.style.background = "#70DB93";
	else
		pw1.style.background = "#FFFFFF";
	if(validateField(pw1.value,6) && pw1.value==pw2.value)
		pw2.style.background = "#70DB93";
	else
		pw2.style.background = "#FFFFFF";	
	if(validateEmail(mail.value))
		mail.style.background = "#70DB93";
	else
		mail.style.background = "#FFFFFF";	
	if(captcha.value=='c' )
		captcha.style.background = "#70DB93";
	else
		captcha.style.background = "#FFFFFF";				
}

function validateField(txt,minLength){
	if(txt.length<minLength)
		return false;
	if(!legalSign(txt))
		return false;	
	return true;	
}

function validateEmail(mail){
	if(mail.length<6)
		return false;
	if(mail.indexOf("@",1)==-1)
		return false;
	if(mail.indexOf(".",mail.indexOf("@")+2)==-1)
		return false;
	if(mail.length-mail.lastIndexOf(".")<3)
		return false;
	return true;			
}

function legalSign(txt){
	var legal = "abcdefghijklmnopqrstuvwxyz";
	legal += legal.toUpperCase();
	legal += "0123456789";
	
	for(var i = 0; i<txt.length; i++){
		if(legal.indexOf(txt.charAt(i))==-1){
			return false;
		}
	}
	return true;
}

/*#########  jQuery-AJAX #######*/

function updateDLStats(subid,ext){
 	location.href = "http://norsub.com/download/"+subid+"/"+ext;
 	return false;
 }


/*#########   Diverse   #######*/

// Funksjon for å endre tekst i tekstsøket
var first = 1;
function emptyNode(node){
	// Første gang man åpner, blanke ut
	if(first==1){
		node.value = '';
		first = 0;
	}
	// Hvis blank, skriv en melding;)
	else{
		node.value = 'skriv her:)';
		first = 1;
	}
}

function external(link){
	link.target = "_blank";
} 
	
 
 