// JavaScript Document
function regenerateCaptcha(){
	var cptchimg = document.getElementById('captchaimg');
	document.images['captchaimg'].src = "captcha/CaptchaSecurityImages.php?width=120&height=40&characters=5&"+ (new Date()).getTime();
}

function provjeriemail(){
	var mail = document.zaboravljivkorisnik.mail;
	
	if(mail.value.length == 0){
		alert('Upišite e-mail adresu');
		mail.focus();
		return false;
	}
	
	if (!mail.value.match(/^[_+a-z0-9-]+(\.[_+a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]{1,})*\.([a-z]{2,}){1}$/)){
		alert('E-mail je neispravno upisan!');
		mail.focus();
		return false;
	}
	return true;
	
}

function provjeriPopisPotrebnihStvari(){
	
	var kod = document.novikorisnik.security_code;
	var uname = document.novikorisnik.uname;
	var pass = document.novikorisnik.pass;
	var adresa = document.novikorisnik.adress;
	var grad = document.novikorisnik.grad;
	var zip = document.novikorisnik.zip;
	var ime = document.novikorisnik.ime;
	var prezime = document.novikorisnik.prezime;
	var mail = document.novikorisnik.mail;
	
	var tel = document.novikorisnik.tel;
	var fax = document.novikorisnik.fax;
	var mb = document.novikorisnik.mb;
	var tvrtka = document.novikorisnik.tvrtka;
	
	
	var Objekti = new Array(kod, uname, pass, adresa, grad, zip, ime, prezime, mail, tel, fax, mb, tvrtka);
	var Obavjesti = new Array(' sigurnosni kôd', ' korisničko ime', ' zaporku', ' adresu', ' grad', ' poštanski broj', ' ime', ' prezime', ' e-mail', '', '', '', '');
	var metchevi = new Array('', /^[a-zA-Z0-9-]+$/, /^[a-zA-Z0-9-]+$/, /^[a-žA-Ž0-9-\s/./]+$/, /^[a-žA-Ž0-9-\s/.]+$/, /^[0-9]+$/, /^[a-žA-Ž-\s]+$/, /^[a-žA-Ž-\s]+$/, /^[_+a-z0-9-]+(\.[_+a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]{1,})*\.([a-z]{2,}){1}$/, /^[0-9+\s]+$/, /^[0-9+\s]+$/, /^[a-zA-Z0-9-]+$/, /^[a-žA-Ž0-9-\s/.]+$/);
	var ObavjestiMetch = new Array('', 'Korisničko ime je neispravno upisano!', 'Zaporka je neispravno upisana!', 'Adresa je neispravno upisana!', 'Grad je neispravno upisan!', 'Poštanski broj je neispravno upisan!', 'Ime je neispravno upisano!', 'Prezime je neispravno upisano!', 'E-mail je neispravno upisan!', 'Telefonski broj je neispravno upisan!', 'Fax broj je neispravno upisan!', 'Matični broj je neispravno upisan!', 'Tvrtka je neispravno upisana!');
		
	for (x=0; x<9; x++)
	{
		var value = Objekti[x].value;
		if(value.length == 0){
			alert('Upišite'+Obavjesti[x]);
			Objekti[x].focus();
			return false;
			break;
		}
	}
	
	for (x=1; x<Objekti.length; x++)
	{
		var value = Objekti[x].value;
		if (!value.match(metchevi[x]) && value.length != 0){
			alert(ObavjestiMetch[x]);
			Objekti[x].focus();
			return false;
			break;
		}
	}
	
	var provjera = provjeriPostojanjeUsera();
	return false;
}

function createRequestObject(){

	var req;
	
	if (window.XMLHttpRequest){
		// For Firefox, Safari, Opera
		req = new XMLHttpRequest();
	} else if (window.ActiveXObject){
		// For IE 5+
		req = new ActiveXObject("Microsoft.XMLHTTP");
	} else {
		// Error for an old browser
		alert('Your browser is not IE 5 or higher, or Firefox or Safari or Opera');
		return false;
	}
	
	return req;
}

function provjeriPostojanjeUsera(KomunikacijaOBJ){
	// Make the XMLHttpRequest Object
	var http = createRequestObject();
	if(!http){
		return false;
	}
	
	var upit = "provjeripostojanjeusera.php?korisnik=" + document.novikorisnik.uname.value;

	http.open('get',upit,true);
	http.onreadystatechange = handleResponse;
	http.send(null);
	
	function handleResponse(){
		if(http.readyState == 4 && http.status == 200){
			var response = http.responseText;
			if(response){
				if(response == 'ne'){
					// ne
					alert('Korisničko ime več postoji, odaberite drugo');
				} else {
					// ok
					window.document.novikorisnik.submit();
				}
			}
		} 		
	}
}

function provjeriStvariPass(){
	var staripass = document.izmjenapass.staripass;
	var novipass = document.izmjenapass.novipass;
	
	// alert(staripass);
	// alert(novipass);
	if(staripass.value.length == 0){
		alert('Upišite trenutnu zaporku!');
		staripass.focus();
		return false;
	}
	
	if (!staripass.value.match(/^[a-zA-Z0-9-]+$/)){
		alert('Trenutna zaporka je pogrešno upisana!');
		staripass.focus();
		return false;
	}
	
	if(novipass.value.length == 0){
		alert('Upišite novu zaporku!');
		novipass.focus();
		return false;
	}
	
	if (!novipass.value.match(/^[a-zA-Z0-9-]+$/)){
		alert('Nova zaporka je pogrešno upisana!');
		novipass.focus();
		return false;
	}
	//
	var juzer = readCookie('GWBSHUN');
	var provjera = provjeriStariPass(juzer);
	return false;
}

function provjeriStariPass(juzer){
	// Make the XMLHttpRequest Object
	var http = createRequestObject();
	if(!http){
		return false;
	}
	
	// var upit = "provjeripostojanjeusera.php?korisnik=" +
	// document.novikorisnik.uname.value;
	
	var RSAstaripass = genRSA(document.izmjenapass.staripass.value);
	var RSAnovipass = genRSA(document.izmjenapass.novipass.value);
	var upit = "provjeripostojanjeusera.php?user=" + juzer + "&staripass="+RSAstaripass + "&novipass="+RSAnovipass;
	
	http.open('get',upit,true);
	http.onreadystatechange = handleResponse;
	http.send(null);
	
	function handleResponse(){
		if(http.readyState == 4 && http.status == 200){
			var response = http.responseText;
			if(response){
				if(response == 'ne'){
					// ne
					alert('Pogrešna trenutna zaporka!');
				} else {
					// ok
					alert(response);
					location.reload(); 
				}
			}
		} 		
	}
}

function genRSA(polje){

	setMaxDigits(19);

	key = new RSAKeyPair(
			 "dac5010e99da9e1e0d7b3d0dd784ed",
			 "",
			 "6d9a97da5146f430657cf78191e181d"
			);
	// resp = encryptedString(key,document.izmjenapass.staripass.value);
	resp = encryptedString(key,polje);
	return resp;
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function prikaziStanje(kolicina){
	if(kolicina > 0){
		alert('Količina na raspolaganju: ' + kolicina + ' kom');
	} else {
		alert('Proizvod nije na raspolaganju');
	}
	return false;
}

function alertLogin(){
	alert('Da biste stavili proizvod u košaru morate se prvo prijaviti u webshop.');
}

function dodajukosaru(ID){
	var n = prompt("Upišite količinu koju želite naručiti", "");
	n = parseInt(n);
	
	if (isNaN(n)){
		alert("Niste upisali broj");
	} else if (n < 1){
		alert("Upišite broj veči od 0");
	} else {
		dodajukosarupremavan(ID,n,'dodaj');
	}
}

function dodajukosarupremavan(ID, KOLICINA, STO){
		// Make the XMLHttpRequest Object
		var http = createRequestObject();
		if(!http){
			return false;
		}
		
		var upit = "GW_dodajukosaru.php?ID=" + ID + "&kolicina="+KOLICINA+"&stodaradim="+STO;

		http.open('get',upit,true);
		http.onreadystatechange = handleResponse;
		http.send(null);
		
		function handleResponse(){
			if(http.readyState == 4 && http.status == 200){
				var response = http.responseText;
				if(response){
					if(response == 'ne'){
						// ne
						alert(response);
					} else {
						// ok
						// window.document.novikorisnik.submit();
						alert(response);
						window.location.reload();
					}
				}
			} 		
		}
}

function izmjeniKolicinu(ID){
	var n = prompt("Upišite količinu koju želite naručiti", "");
	n = parseInt(n);
	
	if (isNaN(n)){
		alert("Niste upisali broj");
	} else if(n < 1){
		alert("Upišite broj veči od 0");
	} else {
		dodajukosarupremavan(ID,n,'izmjeni');
	}	
}	

function brisiProizvod(ID){
	odgovor = confirm('Da li ste sigurni da želite ukloniti proizvod');
	if(odgovor){
		dodajukosarupremavan(ID,0,'brisi');
	}	
	
}

function clearInput(_koji){
	// alert(_koji);
	switch (_koji) {
	
	case 0:
		if( document.loginuser.uname.value == "Korisničko ime"){
			document.loginuser.uname.value = '';
		}
		break;

	case 1:
		if( document.loginuser.passwd.value == "Lozinka"){
			document.loginuser.passwd.value = '';
		}
		break;
		
	case 2:
		if( document.trazi.pojam.value == "Upišite traženi pojam"){
			document.trazi.pojam.value = '';
		}
		break;
	}
}