// JavaScript Document

function nl2br (str, is_xhtml) {
	var breakTag = (is_xhtml || typeof is_xhtml === 'undefined') ? '' : '<br>'; 
	return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1'+ breakTag +'$2');
}

//----

    function makeRequest(url, post_parametri, code, async) {
		// code sluzi da se raspoznaju razliciti Httprequest pozivi... pa prema tome i razlicit response se obavlja na osnovu toga
		// async govori da li je asinhroni poziv ili ne... ako nije asinhroni, onda se ceka sa izvrsavanjem
		
		var async = (async == null) ? true : async;				// defaulr vrednost za asyunc: true
		
		//alert(post_parametri);
		
        var httpRequest;

        if (window.XMLHttpRequest) { // Mozilla, Safari, ...
            httpRequest = new XMLHttpRequest();
            if (httpRequest.overrideMimeType) {
                httpRequest.overrideMimeType('text/xml');
                // See note below about this line
            }
        } 
        else if (window.ActiveXObject) { // IE
            try {
                httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
                } 
                catch (e) {
                           try {
                                httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
                               } 
                             catch (e) {}
                          }
                                       }

        if (!httpRequest) {
            alert('Giving up :( Cannot create an XMLHTTP instance');
            return false;
        }
       
	   
	   httpRequest.onreadystatechange = function() { response(httpRequest, code); };
	  
       httpRequest.open('POST', url, async);
	   httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');		// zbog post requesta
	   //parametri='status='+status+'&id='+id;
       httpRequest.send(post_parametri);

    }

    function response(httpRequest, code) {

        if (httpRequest.readyState == 4) {
            if (httpRequest.status == 200) {
                //alert(httpRequest.responseText);
				
				switch (code) {
					
					case 'updateFilm': 
					
						alert(httpRequest.responseText);
						//document.getElementById("film_div").innerHTML = httpRequest.responseText;
					break;
					
					case 'write_comment': 
					
						//alert(httpRequest.responseText);
						//text=nl2br(httpRequest.responseText, false);
						//alert(text);
						text=httpRequest.responseText;
						
						rez=text.split("||##||");
						
						//alert(rez[0]);	// date
						//alert(rez[1]);	// comment text
						//alert(rez[2]);	// author name
						
						
						if (document.getElementById("new_comment_date")) document.getElementById("new_comment_date").innerHTML = rez[0];
						if (document.getElementById("new_comment_text")) document.getElementById("new_comment_text").innerHTML = rez[1];
						if (document.getElementById("new_comment_author_name")) document.getElementById("new_comment_author_name").innerHTML = rez[2];
						
						//document.getElementById("new_comment").style.display = "block";
						//document.getElementById("add_new_comment").style.display = "none";
						
						$('#add_comment_title').slideUp('slow'); 
						$('#add_new_comment').slideUp('slow'); 
						$('#new_comment').slideDown('slow'); 
						
						
					break;
					case 'like_vote': 
					
						//alert(httpRequest.responseText);
						var delovi=httpRequest.responseText.split(":"); 
						var likes_count=delovi[0];
						var div_id=delovi[1];
						if (likes_count > 0)
							document.getElementById("like_count_"+div_id).innerHTML = likes_count;
					break;
					
					case 'del_comment':
						//alert(httpRequest.responseText);
						document.getElementById("comment_"+httpRequest.responseText).style.display = "none";
					break;
					
					case 'nagradna_prijava':
						//alert(httpRequest.responseText);
						
						var delovi=httpRequest.responseText.split(":"); 
						var rez=delovi[0];
						var nagradna_id=delovi[1];
						
						document.getElementById("nagradna_message_"+nagradna_id).style.borderLeft = "1px dotted white";
						//document.getElementById("nagradna_message_"+nagradna_id).style.color = "#BBBBBB";
					
						switch (rez) {
							case '1':
								document.getElementById("nagradna_message_"+nagradna_id).innerHTML = "✔ <b>Uspešno ste prijavljeni.</b> Dobitnici će biti obavešteni putem e-maila.";
								$("#nagradna_"+nagradna_id).hide('fast');
								document.getElementById("prijava_"+nagradna_id).style.display = "none";
							break;
						
							case '2':
								document.getElementById("nagradna_message_"+nagradna_id).innerHTML = "<b>Već postoji prijava sa ovog naloga.</b> Ne možeš se prijaviti više puta za istu nagradnu igru.";
							break;
							
							case '3':
								document.getElementById("nagradna_message_"+nagradna_id).innerHTML = "<b>Nekompletni podaci.</b> Potrebno je uneti ime i prezime i e-mail adresu. Pokušaj ponovo.";
							break;
							
							case '4':
								document.getElementById("nagradna_message_"+nagradna_id).innerHTML = "<b>Neispravna e-mail adresa.</b> Moraš uneti ispravnu e-mail adresu. Pokušaj ponovo.";
							break;
							
							default:
								document.getElementById("nagradna_message_"+nagradna_id).innerHTML = "<b>Neuspešno prijavljivanje.</b> Desila se tehnička greška prilikom prijave, molim te pokušaj ponovo.";
								
							break;
						}	// local switch
					
					break;
					
				}		// global switch
				
				//update_cost();			// after getting and setting new values, update cost fields
				
				//document.getElementById("status_report").innerHTML = httpRequest.responseText;
            } else {
				
                alert('There was a problem with the request.');
            }
        }

    }

