var jporuke = new Array();
var pporuke = new Array();
var sagosti = new Array();
var gtimer = '';
var mjbroj = 0;
var mpbroj = 0;

var npalert = 0;

// flood
var fts1 = Math.round((new Date().getTime()) / 1000);
var fts2 = fts1;
var fcounter = 0;
var flen = 0;
var ftimer;
var fsec = 0;

function safari () {

	uzmi_data();

	$('c_forma').onsubmit = function () {

		var t = new Date().getTime();
		var poruka = $('c_poruka').value;
		var nadimak = $('c_nadimak').value;
		var lval = $('c_lsel').options[$('c_lsel').selectedIndex].value;

		if (poruka && !poruka.match(/^\s+$/)) {

			if (poruka.match(/^\//)) {
				var posalji = 0;
				var pars = '&komanda=km&poruka=';

				if (poruka.match(/^\/izbaci/)) {

					if (poruka.match(/^\/izbaci\s+\d+\s+\S+\s+\S+/)) {
						posalji = 1;
					} else {
						upozorenje('<font color=red>*** Sintaksa: /izbaci [broj minuta] [nadimak] ![razlog]</font>');
					}

				} else if (poruka.match(/^\/ig/)) {
					posalji = 1;
				} else {
					upozorenje('<font color=red>*** Sintaksa: /izbaci [broj minuta] [nadimak] ![razlog]</font>');
				}

				if (posalji) {
					// alert('komanda= '+'tajmer=' + ( new Date().getTime() ) + pars + encodeURIComponent(poruka));
					var myAjax = new Ajax.Request(
						'/c/', 
						{
							method: 'get', 
							parameters: 'tajmer=' + ( new Date().getTime() ) + pars + encodeURIComponent(poruka),
							onComplete: cmdrecv_proc
						});					
				}

			} else if(fcheck(poruka.length)) {
				;
			} else {

				// poruka = poruka.replace(/\'/g,"\\'");
				// poruka = poruka.replace(/\\/g,"\\");

				var pars = '&poruka=' + encodeURIComponent(poruka) + '&komanda=';

				if(lval == 'Reci svima...') {
					pars = pars + 'ss';
					jporuke.push('[<b>' + nadimak + '</b>] ' + poruka);
					osvjezi();
				} else {
					pars = pars + 'sp&tnadimak=' + lval;
					upozorenje('<font color=gray>-> <b>' + lval + '</b> ' + poruka + '</font>');
				}

				// alert(pars);

				var myAjax = new Ajax.Request(
					'/c/', 
					{
						method: 'get', 
						parameters: 'tajmer=' + ( new Date().getTime() ) + pars
					});

			}
		}
		$('c_poruka').value = '';
		$('c_soba').scrollTop = $('c_soba').scrollHeight;

  	return false;

	}

}


function uradio()
	{
		var myAjax = new Ajax.Updater(
			{success: 'radiop'},
			'/radio.php', 
			{
				method: 'get', 
				parameters: 'tajmer=' + ( new Date().getTime() )
			});
			setTimeout("uradio('0')", 30000);
	}

function fcheck (il) {

	var t = Math.round((new Date().getTime()) / 1000);

	if (flen <= (20 * (t - fts1))) {
		flen = 0;
	} else {
		flen -= (20 * (t - fts1));
	}

	newlen = flen + il;
	fts1 = t;

	if (newlen > 600) {

		fsec = Math.round((newlen - 600) / 20 );
		$('c_poruka').setAttribute('readonly', true);
		$('c_poruka').style.backgroundColor = '#cccccc';
		$('c_poruka').style.fontWeight = 'bold';
		ftimer = setInterval("flood_timer()", 1000);

		return(1);
	} else if ((fcounter - Math.round((t - fts2) / 5)) > 2) {
		upozorenje("*** PAZNJA! Ispisujete poruke prebrzo, ova poruka je ignorisana.");
		return(1);
	} else {
		if(fcounter <= ((t - fts2) / 5)) {
			fcounter = 0;
		} else {
			fcounter -= Math.round((t - fts2) / 5);
		}
		fcounter++;
		fts2 = t;
		flen = newlen;
		return (0);
	}

}

function flood_timer () {
	if (fsec == 0) {
		clearInterval(ftimer);
		$('c_poruka').style.backgroundColor = '#ffffff';
		$('c_poruka').style.fontWeight = 'normal';
		$('c_poruka').removeAttribute('readonly');
		$('c_poruka').value = '';
		$('c_poruka').focus();
	} else {
		$('c_poruka').value = 'UPOZORENJE! Prebrzo šaljete poruke, poruku možete opet poslati za ' + fsec + ' sek.';
		fsec--;
	}
}

function upozorenje (por) {
	$('c_greska').innerHTML = por;
	$('c_greska').style.display = 'block';
	osvjezi();
	if(gtimer) {
		clearTimeout(gtimer);
	}
	gtimer = setTimeout("brisig()", 10000);								
}

function cmdrecv_proc (oreq) {

	if (oreq.status == 200) {

		try {

			var resp = eval(oreq.responseText);

			// alert(resp);

			var update = 0;
			var t = new Date().getTime();

			for (var i = 0; i < resp.length; i++) {
				
				var mnr = resp[i][0];
				var cmd = resp[i][1];
				var msg = resp[i][2];

				if (cmd == 'w') {
					update = 1;
					jporuke.push(msg);
				} else if (cmd == 'x') {
					update = 1;
					upozorenje(msg);
				}

			}

			if (update != 0) {
				osvjezi();
			}

		} catch (e) {
			// alert('error='+e);
			; //ignore errors
		}
	}

	$('c_soba').scrollTop = $('c_soba').scrollHeight;

}

function data_proc (oreq) {

	if (oreq.status == 200) {

		try {
		
			var resp = eval(oreq.responseText);

			// alert(resp);

			var update = 0;
			var t = new Date().getTime();

			for (var i = 0; i < resp.length; i++) {
				
				var mnr = resp[i][0];
				var cmd = resp[i][1];
				var msg = resp[i][2];

				if (cmd == 'j') {
					jporuke.push(msg);
					update = 1;
					mjbroj = mnr;
				} else if (cmd == 'p') {
					pporuke.push([t,msg]);
					update = 1;
					mpbroj = mnr;
				} else if (cmd == 'u') {

					sagosti.push([msg,mnr,resp[i][3]]);
					d_lista(msg);

					osvjezi_glistu();

				} else if (cmd == 'o') {
					var tmpg = new Array();
					b_lista(msg);

					for (var k = 0; k < sagosti.length; k++) {
						if (msg != sagosti[k][0]) {
							tmpg.push(sagosti[k]);
						}
					}
					sagosti = tmpg;
					osvjezi_glistu();

				} else if (cmd == 'w') {
					update = 1;
					jporuke.push(msg);
				} else if (cmd == 'x') {
					update = 1;
					upozorenje(msg);
				}

			}

			if (update != 0) {
				osvjezi();
			}

		} catch (e) {
			// alert('error='+e);
			; //ignore errors
		}
	}
	$('c_soba').scrollTop = $('c_soba').scrollHeight;
	setTimeout("uzmi_data()", 3000);
}

function b_lista (korisnik) {
  var i;
  for (i = $('c_lsel').length - 1; i>=0; i--) {
    if ($('c_lsel').options[i].value == korisnik) {
      $('c_lsel').remove(i);
    }
  }
}

function d_lista (korisnik) {

	var elOptNew = document.createElement('option');
  elOptNew.text = korisnik;
  elOptNew.value = korisnik;

  try {
    $('c_lsel').add(elOptNew, null); // standards compliant; doesn't work in IE
  }
  catch(ex) {
    $('c_lsel').add(elOptNew); // IE only
  }

}

function osvjezi_glistu() {
	var tlist = new Array();
	for (var k = 0; k < sagosti.length; k++) {

		var vip = '';

		if (sagosti[k][2] == 1) {
			vip = ' <img src="/i/svip.gif">';
		}

		if (sagosti[k][1] == 0) {
			tlist.push('<b>' + sagosti[k][0] + '</b>' + vip);
		} else if (sagosti[k][1] == 1) {
			tlist.push('<a href="/korisnik/?k=' +sagosti[k][0]+ '" style="color: blue;font-weight:bold;" target=_blank>' + sagosti[k][0] + '</a>' + vip);
		} else if (sagosti[k][1] == 2) {
			tlist.push('<a href="/korisnik/?k=' +sagosti[k][0]+ '" style="color: green;font-weight:bold;" target=_blank>' + sagosti[k][0] + '</a>' + vip);
		} else if (sagosti[k][1] == 3) {
			tlist.push('<a href="/korisnik/?k=' +sagosti[k][0]+ '" style="color: red;font-weight:bold;" target=_blank>' + sagosti[k][0] + '</a>' + vip);
		}
	}
	$('c_gosti').innerHTML = tlist.join("<br>");
}

function osvjezi() {

	var t = new Date().getTime();

	while (jporuke.length > 100) { jporuke.shift(); }
	while (pporuke.length > 100) { pporuke.shift(); }


	$('c_javni').innerHTML = jporuke.join("<br>");

	// $('c_soba').scrollTop = 10000;
	// alert(jporuke.join("<br>"));

	var pm = new Array();

	for (var p = 0; p < pporuke.length; p++) {
		if(pporuke[p][0] && pporuke[p][0] > (t - 120000)) {
			pm.push(pporuke[p][1]);
		}
	}

	if(pm.length) {
		
		$('c_privat').innerHTML = pm.join("<br>");
		$('c_privat').style.display = 'block';
	} else {
		$('c_privat').innerHTML = '';
		$('c_privat').style.display = 'none';
	}
}

function uzmi_data () {
	var myAjax = new Ajax.Request(
		'/c/', 
		{
			method: 'get', 
			parameters: 'tajmer=' + ( new Date().getTime() ) + '&komanda=g&jbroj=' + mjbroj + '&pbroj=' + mpbroj, 
			onComplete: data_proc
	});
}

function brisig () {
	clearTimeout(gtimer);
	$('c_greska').innerHTML = '';
	$('c_greska').style.display = 'none';	
}

function mdiv (kom,div) {
	if (kom == 'zatvori') {
		$(div).style.display = 'none';
	} else {
		$(div).style.display = 'block';
	}
	return false;
}


function osvjezipp () {
	var myAjax = new Ajax.Request(
		'/np.php', 
		{
		method: 'get', 
		parameters: 'tajmer=' + ( new Date().getTime() ),
		onComplete: osvjezipp_recv
	});
}

function osvjezipp_recv (oreq) {

	if (oreq.status == 200) {

		try {
			var resp = oreq.responseText;
			if (resp == 0) {
				$('ppc').innerHTML = '(nema novih poruka)';
			} else {
				$('ppc').innerHTML = '(<img src="/i/novaporuka.gif" border="0"> <font color=red>novih poruka: <b>' + resp + '</b></font>)';
				if (npalert == 0) {
					$('novaporuka').innerHTML = '<b>DOBILI STE NOVU PRIVATNU PORUKU!</b>';
					$('novaporuka').style.display = 'block';
					// soundManager.play('beep');
					setTimeout("sakrij_pprozor()", 10000);
					npalert = 1;
				}
			}
		} catch (e) {
			 alert('error='+e);
			; //ignore errors
		}
	}
	setTimeout("osvjezipp()", 10000);
}


function sakrij_pprozor () {
	$('novaporuka').style.display = 'none';
}

function pp (pid) {

	if ($('pp_' + pid).style.display == 'none') {
		if (navigator.appName == 'Microsoft Internet Explorer') {
			$('pp_' + pid).style.display = 'block';
		} else {
			$('pp_' + pid).style.display = 'table-cell';
		}
		$('pimg_' + pid).src = '/i/staraporuka.gif';
	} else {
		$('pp_' + pid).style.display = 'none';
	}
}

function odgovor (nadimak) {
	mdiv('otvori','nforma');
	$('pp_korisnik').innerHTML= '» Odgovor: ' + nadimak;
	$('pp_rcp').value= nadimak;
	$('pp_poruka').focus();
}

function is_utf(str) {
	if(str.match(/^[a-zA-Z0-9\xc0-\xff\x80-\xbf]+$/)) {
		return true;
	} else {
		return false;
	}
}

// document.onselectstart=new Function('return false');function ds(e){return false;}function ra(){return true;}document.onmousedown=ds;document.onclick=ra;

function reg (kom,val,val2) {
	if (kom == 'cnadimak') {
		if (c = val.match(/([\@\"\'\>\<\&\=\#\;\|\*\?\+\.])/)) {
			$('wnadimak').innerHTML = '<font color="#ff0000">Znak <b>'+ c[1] +'</b> nije dozvoljen.</font>';
		} else if(!is_utf(val)) {
			$('wnadimak').innerHTML = '<font color="#ff0000">Koristite zabranjen znak.</font>';
		} else {
			$('wnadimak').innerHTML = 'Upišite nadimak od 2 do 8 slova.';
		}
	} else if (kom == 'znadimak') {
		if (val == '' || val.match(/^\s+$/)) {
			$('wnadimak').innerHTML = '<font color="#ff0000">Polje za nadimak ne moze biti prazno!</font>';
		} else if (c = val.match(/([\@\"\'\>\<\&\=\#\;\|\*\?\+\.])/)) {
			$('wnadimak').innerHTML = '<font color="#ff0000">Znak <b>'+ c[1] +'</b> nije dozvoljen.</font>';
		} else {
			var myAjax = new Ajax.Updater(
			'wnadimak', 
			'/nadimak.php', 
			{
				method: 'get', 
				parameters: 'n=' + val
			});
		}
	} else if (kom == 'clozinka1') {
		if (val == '' || val.match(/^\s+$/)) {
			$('wlozinka1').innerHTML = 'Lozinka može biti do 10 znakova duga.';
			$('wlozinka2').innerHTML = '';
		} else if (val != '') {
			$('wlozinka1').innerHTML = 'Vodite računa o velikim slovima.';
			$('wlozinka2').innerHTML = '';
		}
	} else if (kom == 'blozinka1') {
		$('wlozinka1').innerHTML = '';
	} else if (kom == 'clozinka2') {
		$('wlozinka2').innerHTML = 'Ponovite istu lozinku.';
	} else if (kom == 'ulozinke') {
		if (val != '' && val == val2) {
			$('wlozinka2').innerHTML = '<img src="/i/cekiran.gif"> Lozinke se slažu!';
		}
	} else if (kom == 'cemail') {
		if (val == '' || val.match(/^\s+$/)) {
			$('wemail').innerHTML = 'Upišite ispravnu email adresu.';
		} else if (val.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/)) {
			$('wemail').innerHTML = '<img src="/i/cekiran.gif"> Email izgleda ok!';
		}
	}
}

function cetiricifre(broj) {
	return (broj < 1000) ? broj + 1900 : broj;
}

function datum() {
	var sada = new Date();
	var dani = new Array('Nedelja','Ponedeljak','Utorak','Sreda','Četvrtak','Petak','Subota');
	var meseci = new Array('Januar','Februar','Mart','April','Maj','Jun','Jul','Avgust','Septembar','Oktobar','Novembar','Decembar');
	var datum = ((sada.getDate()<10) ? "0" : "")+ sada.getDate();
	danas =  dani[sada.getDay()] + ", " + datum + ". " + meseci[sada.getMonth()] + ", " + (cetiricifre(sada.getYear()));
	document.write(danas);
}

function chatprovera(forma) {
	if (forma.nadimak.value == 'Upišite vaš nadimak') {
		alert('Morate upisati nadimak pod kojim ćete ući na chat!');
		return false;
	}
}

function ocisti(ovde) {
	if (ovde.defaultValue == ovde.value) {
		ovde.value = "";
	}
}


function otvoriprozor(adresa,visina,sirina)
{
	np = window.open('/vslika.php?slika=' + adresa + '&v=' + visina + '&s=' + sirina,'velikaslika','fullscreen=no,toolbar=no,status=no,menubar=no,scrollbars=no,resizable=no,directories=no,location=no,height=' + visina + ',width=' + sirina + ',top=100,left=100');
	if (window.focus) {np.focus()}
	return false;
}

function iskljuci(dform) {
  if (document.getElementById) {
   for (var sch = 0; sch < dform.length; sch++) {
    if (dform.elements[sch].type.toLowerCase() == "submit") dform.elements[sch].disabled = true;
   }
  }
return true;
}
