$(document).ready(function(){
	$("#myController").jFlow({
		slides: "#slides",
		controller: ".jFlowControl", // must be class, use . sign
		slideWrapper : "#jFlowSlide", // must be id, use # sign
		selectedWrapper: "jFlowSelected",  // just pure text, no sign
		auto: true,		//auto change slide, default true
		width: "750px",
		height: "304px",
		duration: 0,
		prev: ".jFlowPrev", // must be class, use . sign
		next: ".jFlowNext" // must be class, use . sign
	});
        
        $("#usmeniOpenForm").fancybox({
                'scrolling'		: 'no',
                'titleShow'		: true,
                'onClosed'		: function() {
                    
                }
        });
        
        $("#tuo_mesto").change(function(event){
            $("#tuo_lokacija").html(createOptionsSelect( tuo_lokacija_hearselect[$(this).val()] ));
            //prikazi termine za lokaciju, prikazi satnice sa termin
            prikaziTermine(getArrayTermini());
            printMestoVremeUsenogTestiranja();
        });

        $("#tuo_lokacija").change(function(event){
            prikaziTermine(getArrayTermini());
            printMestoVremeUsenogTestiranja();
        });

        $("#tuo_optionId").change(function(event){
            printMestoVremeUsenogTestiranja();
        });
        
        $("#tuo_save").click(function(){

           if(validateFormTerminUsmeniKorisnika()){
               var formData = $("#tuo_odgovor_form").serialize();
               var termin = getTextOptionFromSelect('tuo_optionId');
               var mesto    = getTextOptionFromSelect('tuo_mesto');
               var lokacija = getTextOptionFromSelect('tuo_lokacija');
               
               var mestoTestiranja = mesto+' - '+lokacija;
               formData += '&tuo_optionId='+$('#tuo_optionId').val();
               addTerminUsmeniKorisniku(formData, termin, mestoTestiranja);
           }
        });
        
        prikaziTermine(getArrayTermini());
        printMestoVremeUsenogTestiranja();
});

//add odgovor
var ControllerHome = '?view=home&no_html=1'

function openFormUsmeni(userId, jezikId, name, jezik){
    //onclick="alert(\'Termin za usmeni deo testiranja trenutno nije dostupan preko sajta. Molimo vas kontaktirajte nasu šklolu!\')"
    $('#formUsmeni').show();
    $('#formUsmeniInfo').html('');
    $('#formUsmeniInfo').hide();
    $('#usmeniOpenForm').trigger('click');
    openFormAddOdgovor(userId, jezikId, name, jezik);
}


var terminiOpcije = new Array();
var tuoOptionIdSelected = -1;
//userid, jezikid\
//kada se otvori forma da se ponovo ucitaju termini i napuni niz
function openFormAddOdgovor(userId, jezikId, name, jezikName){
    //reset
    setFormAddOdgovor(userId, jezikId);
    getSpisakTermina(jezikId);
    
}

function setFormAddOdgovor(userId, jezikId){
    
    $("#tuo_userid").val(userId);
    $("#tuo_jezikid").val(jezikId);
    tuoOptionIdSelected = -1;
    $("#tuoDatumTestiranjaStari").html('');
}

function setFormEditTerminOdgovor(userId, jezikId, lokacijaId , mestoId, optionId, stariTermin){
    $("#tuo_userid").val(userId);
    $("#tuo_jezikid").val(jezikId);
    $("#tuo_mesto").val(mestoId);
    $("#tuo_lokacija").html(createOptionsSelect( tuo_lokacija_hearselect[mestoId] ));
    $("#tuo_lokacija").val(lokacijaId);
    tuoOptionIdSelected = optionId;
    $("#tuoDatumTestiranjaStari").html('Stari termin: ' + stariTermin);
}

function getSpisakTermina(jezikId){
    
    $('#tuo_termin').html('');
    
    $.ajax({
        type: "POST",
        url: ControllerHome+'&task=getactivetermin',
        data: "jezikid="+jezikId,
        dataType: 'json',
        success: function(ret) {
            //proveri, ako nema termina onda samo prikazi da nema dostupni termini...
            if(ret.flag) {
                 //napuni niz
                 prikaziTermine(ret.termini);
            } else {
                display_msg('Nastala je greška prilikom učitavanja termina za usmeni! '+ret.info, 'error');
                //upisi -1 u hidden polje
            }
        }
    });
}

function getArrayTermini(){
    return terminiOpcije;
}

function prikaziTermine(termini){
    
    var lokacija = $("#tuo_lokacija").val();
    var flag = false;
    terminiOpcije = termini;
    
    var html = '';//'<select name="tuo_optionId" id="tuo_optionId" style="width:400px;">';
    for (var i in terminiOpcije) {
         if(lokacija == terminiOpcije[i].lokacija){
             flag = true;
             html += '<optgroup class="selectGroup" label="'+terminiOpcije[i].datum+'">';
             var sat = terminiOpcije[i].opcije;
             for(var s in sat){
                 html += '<option value="'+sat[s].id+'">'+terminiOpcije[i].datum+': '+sat[s].vreme+'</option>';
             }
             html += '</optgroup>';
         }
    }
    if(!flag){
        html += '<option value="-1">Nema dostupnih termina!!!</option>';
    }
    //html += '</select>';
    $('#tuo_optionId').html(html);
    if(tuoOptionIdSelected != -1){
        $("#tuo_optionId").val(tuoOptionIdSelected);
    }
    printMestoVremeUsenogTestiranja();
}

function validateFormTerminUsmeniKorisnika(){
    
    if($("#tuo_userid").val() == -1){
        alert(getTextPraznoPolje('Nastala je greška prilikom odabira kandidata!'));
        return false;
    }
    
    if($("#tuo_jezikid").val() == -1){
        alert(getTextPraznoPolje('Nastala je greška prilikom prosledjivanje jezika!'));
        return false;
    }
    
    if($('#tuo_optionId').val() == 0 || $('#tuo_optionId').val() == null || $('#tuo_optionId').val() == -1 ){
        alert('Nema dostupnih termina za usmeno testiranje za izabrani jezik! Molimo Vas kontaktirajte nas na naše kontakt telefone!');
        $('#tuo_optionId').focus();
        return false;
    }
    
    return true;
}

function addTerminUsmeniKorisniku(formData, termin, mestoTestiranja){
    //+'; Mesto testiranja: '+mestoTestiranja
    $('#formUsmeniInfo').html(getTextLoadDataSmall('Snimanje podataka, molimo Vas sačekajte!'));
    $.ajax({
        type: "POST",
        url: ControllerHome+'&task=addodgovor&'+formData,
        contentType: "application/x-www-form-urlencoded;charset=UTF-8",
        dataType: 'json',
        success: function(ret) {
            if (ret.flag) {
                $('#formUsmeni').hide();
                $('#formUsmeniInfo').html('<span style="color:green;">Uspešno ste se prijavili za usmeni deo testiranja!</span><p>Izabrali ste termin za usmeno testiranje:<br/> <b>'+termin+'</b></p> <p>Ukoliko želite da promenite termin, molimo Vas da nas kontaktirate putem telefona!</p>');
                var jezikid = $("#tuo_jezikid").val();
                $('#terminUsmeni'+jezikid).html(termin+'<br/>'+mestoTestiranja);
                $('#formUsmeniInfo').show();
            } else{
                alert(getTextUnosError()+': '+ ret.info);
            }
        }
    });
}

function printMestoVremeUsenogTestiranja(){
    var mesto    = getTextOptionFromSelect('tuo_mesto');
    var lokacija = getTextOptionFromSelect('tuo_lokacija');
    var termin   = getTextOptionFromSelect('tuo_optionId');
    $('#tuoDatumTestiranja').html(mesto + ', ' + lokacija + ' - ' + termin);
}

