﻿/// <reference name = "MSAJAX/MicrosoftAjax.js"/>
/// <reference path="jquery-1.2.6.js" />

var odgovoriPoServeru = new Array();
var prethodniTip = 1;
var upozorenjePrikaz = true;
var userNavigated = true;
var loadingMsg = "<div class='textCenter85Bold'>Učitavanje u toku...</div>";

function ServerCheckBoxIzaberi(pregledID)
{
    if (pregledID)
    {
        // Pronađi indeks servera u listi
        var index = Array.indexOf(listaPregledID, pregledID);
        if (index != -1)
        {                        
            var nizOdgovorID = odgovoriPoServeru[index];
            
            // Obeleži svaki odgovor sa zvezdicom ispred
            for (var i=0; i<nizOdgovorID.length; i++)
            {
                var odgovorID = nizOdgovorID[i];
                var elem = $get(listaCheckBoxOuterDivID[odgovorID-1]);
                if (elem)
                    elem.innerHTML = '*';                                                            
            }                                                                  
        }                   
    }             
}

function ServerCheckBoxSkloni()
{
    for (var i=0; i<listaCheckBoxOuterDivID.length; i++) {
        var elem=$get(listaCheckBoxOuterDivID[i]);
        if (elem)
            elem.innerHTML = '';
    }    
}

function PrepareArrays()
{
    Array.clear(odgovoriPoServeru);    
                   
    for (var i=0; i<listaOdgovoriPoServeru.length; i++)
    {
        odgovoriPoServeru[i] = listaOdgovoriPoServeru[i].split(';');                 
    }    
}

function ServerAzuriraj(headerLabel)
{       
    var vidljiviServeri = new Array();        
    var odgovori = PokupiOdgovore();      
    
    if (odgovori) {        
        var length = odgovori.length;
        if (length > 0) {   
            for (var i=0; i<length; i++) 
            {
                var odgovorID = odgovori[i];            
                for (var j=0; j<odgovoriPoServeru.length; j++) 
                {
                    if (Array.contains(odgovoriPoServeru[j], odgovorID)) {                    
                        if (!Array.contains(vidljiviServeri, listaServera[j]))                
                            Array.add(vidljiviServeri, listaServera[j]);       
                    }                    
                }
            }
            
            // Skloni sve servere iz prikaza
            for (var i=0; i<listaSlikeID.length; i++) {
                var myDiv = $get(listaSlikeID[i]);
                if (myDiv)
                    myDiv.style.display = 'none';
            }
                                
            // Prikaži one koji zadovoljavaju kriterijume
            var brojPreporuka = 0;                    
            for (var i=0; i<vidljiviServeri.length; i++) 
            {
                var tekuciServer = vidljiviServeri[i];
                if (Array.contains(listaPregledID, tekuciServer))
                {                    
                    var divIndex = Array.indexOf(listaPregledID, tekuciServer);
                    if (divIndex != -1) {
                        brojPreporuka++;
                        var myDiv = $get(listaSlikeID[divIndex]);
                        if (myDiv)
                            myDiv.style.display = 'block';    
                     }                        
                }                                                  
            }     
            
            // Formiraj i upiši naslov
            var header = $get(headerLabel);
            if (header) {
                if (brojPreporuka > 0)
                    header.innerHTML = "Broj preporuka: " + brojPreporuka;
                else
                    header.innerHTML = "Nema preporuka za zadat kriterijum";
            }                
        }
        // Ni jedan odgovor nije izabran => prikaži sve servere       
        else {        
            for (var i=0; i<listaSlikeID.length; i++) {
                var myDiv = $get(listaSlikeID[i]);
                if (myDiv)
                    myDiv.style.display = 'block';
            }
            
            // Formiraj i upiši naslov
            var header = $get(headerLabel);
            if (header) {            
                header.innerHTML = "Broj preporuka: " + listaSlikeID.length;
            }                
        }                    
    }                     
}        

// Vraća ID odgovora ako je izabran pripadajući checkBox
function PokupiOdgovore()
{
    var odgovori = new Array();
    
    var count = listaCheckBoxID.length;
    for (var i=0; i<count; i++)
    {    
        var cb = $get(listaCheckBoxID[i]);
        if (cb.checked) {       
            Array.add(odgovori, listaOdgovorID[i]);
        }                        
    }
    
    return odgovori;
}

function ComputerAdvisorAzuriraj(cbClientID, ID_Odgovor, lblClientID)
{
    var cbControl = $get(cbClientID);
    var lblControl = $get(lblClientID);
    if (ID_Odgovor && cbControl && lblControl)
        var status = cbControl.checked;
        if (status)
            DeskCMS.WS.ComputerAdvisorDodajOdgovor(ID_Odgovor, lblClientID, updateLabelValue, onFailed);
        else
            DeskCMS.WS.ComputerAdvisorSkloniOdgovor(ID_Odgovor, lblClientID, updateLabelValue, onFailed);
}

function updateLabelValue(result)
{
    if (result) {
        if (result[0] && result[1]) {
            var control = $get(result[0]);
            var text = result[1];
            
            if (control && text) {
                control.innerHTML = text;
            }                                
        }            
    }
}

function WindowClose()
{
    if (window)
        window.close();
}
   
function FilterToDo()
{
    alert("TODO");
}        

function test(tekst)
{
    if(tekst)
        alert(tekst);
}        

function todo()
{
    alert("TODO");
}

function ServerHide(control)
{
    var myDiv = $get(control);
    if(myDiv) {            
        myDiv.style.display = 'none';    
    }           
}

function RacunarHidePreview()
{
    alert("Na sajtu klik na ovaj taster zatvara prozor sa prikazom računara.");
}

function RacunarOpis()
{
    alert("Na sajtu klik na ovaj taster otvara novu stranu sa detaljima o računaru.");
}


function ServerHidePreview()
{
    alert("Na sajtu klik na ovaj taster zatvara prozor sa prikazom servera.");
}

function ServerTehnologijaShowSpecification()
{
    alert("Na sajtu klik na ovaj taster otvara tab sa specifikacijom.");
}

function ServerOpis()
{
    alert("Na sajtu klik na ovaj taster otvara novu stranu sa detaljima o serveru.");
}

function OpenPrintWindow(url) {    
    window.open(url, '_blank', 'width=835, height=700, scrollbars=yes, resizable=yes, menubar=yes');
}

function OpenFileUpload(FileUpload)
{        
    var url = "/FileUpload.aspx" + "?id=" + FileUpload;
    window.open(url, '_blank', 'width=300, height=100, scrollbars=no, resizable=no, menubar=no');
}

function SpecPreview(tinyTB, div)
{
    var textBox = $get(tinyTB);
    if (textBox) {   
       var myHTML = tinyMCE.get(textBox).getContent();  
       var divPreview = $get(div);
       if (myHTML && divPreview) {                        
            divPreview.innerHTML = myHTML;
       }            
    }    
}
function onFailed(error, userContext, methodName)
{
    var error = "Greška: " + error + " " + methodName;
//    alert(error);
}

function KomentarKoristan(ID_Komentar, koristan)
{
    if (ID_Komentar > 0) {
        DeskCMS.WS.KomentarKoristan(ID_Komentar, koristan, onKomentarKoristanSucceeded, onFailed);        
    }
}

function onKomentarKoristanSucceeded(result)
{
    if (result)
        alert("Korisnost komentara je evidentirana");
    else
        alert("Korisnost komentara nije evidentirana");
}

function RacunarOcenjivanje(racunar)
{
    if (racunar)
        alert(racunar);
}        

function Atribut(ID_AtributPromene, ID_Tip, forward)
{        
    if (ID_AtributPromene && ID_Tip) {
        DeskCMS.WS.RenderAtribut(ID_AtributPromene, updateAtributDiv, onFailed);
        AzurirajTip(ID_Tip);        
        
        // Snimi history point
        Sys.Application.addHistoryPoint({ ap: ID_AtributPromene }, "DESK konfigurator");        
    }
}

function PregledKonfiguracije() {
    DeskCMS.WS.RenderPregledKonfiguracije(
                            function(result) {
                                var div_AtributPregled = $get(konfiguratorPregled[0]);
                                if (div_AtributPregled && result) {
                                    div_AtributPregled.innerHTML = result;
                                }
                                CSBfleXcroll('KonfiguratorUserControlsPregledKonfiguracijeascx_divIzabraneVrednosti');
                            }, onFailed);

    // Snimi history point
    //        Sys.Application.addHistoryPoint({ ap: ID_AtributPromene }, "DESK konfigurator");
}

function onNavigateKatalog(sender, e) {
    var ID_AtributPromene = e.get_state().ap;
    if (userNavigated)
        restoreState(ID_AtributPromene);
}   

function onNavigate(sender, e) {
    var ID_AtributPromene = e.get_state().ap;
    if (userNavigated)
        restoreState(ID_AtributPromene);
}       

function restoreState(ID_AtributPromene) {
    if (ID_AtributPromene) {
        DeskCMS.WS.RenderAtribut(ID_AtributPromene, updateAtributDiv, onFailed);

        userNavigated = false;
        Sys.Application.addHistoryPoint({ ap: ID_AtributPromene }, "DESK konfigurator");
        userNavigated = true;
    }                         
}

function UcitajCarousel()
{    
    $('#meniDoleCarousel').jcarousel({
        itemLoadCallback: meniDoleCarousel_itemLoadCallback,
        scroll:4
    });
}

function meniDoleCarousel_itemLoadCallback(carousel, state)
{
    if (state != 'init')
        return;

    DeskCMS.WS.AtributPromenePoRacunaru_Ucitaj(function(result)    
        {     
            if (result) {                       
                 for (i = 0; i < result.length; i++) {                             
                    carousel.add(i+1, meniDoleCarousel_NapraviHTML(result[i]));
                }

                carousel.size(result.length);
            }            
        }, onFailed);    
};


function meniDoleCarousel_NapraviHTML(result)
{
    //    var url = result.SlikaURL;
    var url = String.format("/ShowImage.ashx?id={0}&type=27", result.ID);
    var jsOnClick = String.format("javascript:Atribut({0},{1});", result.ID, result.ID_Tip);    
    var naziv = result.Naziv;    
    var item = String.format('<div><a href="{0}"><img src="{1}" width="50" height="35" border="0"/></a></div><div class="divCarouselAtributNaziv"><a href="{2}" class="linkCarousel">{3}</a></div>', jsOnClick, url, jsOnClick, naziv);
           
    return item;
};

function updateAtributDiv(result)
{
    var div_AtributPregled = $get(konfiguratorPregled[0]);    
    if (div_AtributPregled && result) {
        div_AtributPregled.innerHTML = result;
        AtributPomoc();
        
        // Startuj custom scroll
        CSBfleXcroll('KonfiguratorUserControlsArtikalOpisPregledascx_divOpis');
        CSBfleXcroll('KonfiguratorUserControlsIzabraneVrednostiascx_divIzabraneVrednosti');        
    }                        
}

function AzurirajTip(ID_Tip)
{
    if (ID_Tip)
    {    
        if (ID_Tip == prethodniTip)
            return;          
            
        // Novi tip je sada prethodni tip            
        prethodniTip = ID_Tip;           
                                       
        var elemTip1 = $get(konfiguratorPregled[3]);   
        var elemTip2 = $get(konfiguratorPregled[4]);
        var elemTip3 = $get(konfiguratorPregled[5]);
                                       
        if (elemTip1 && elemTip2 && elemTip3)
        {            
            switch(ID_Tip)
            {
                case 1:                                        
                    Sys.UI.DomElement.removeCssClass(elemTip1, 'divAtributTipNeaktivan');
                    Sys.UI.DomElement.addCssClass(elemTip1, 'divAtributTipAktivan');                    
                    
                    Sys.UI.DomElement.removeCssClass(elemTip2, 'divAtributTipAktivan');
                    Sys.UI.DomElement.addCssClass(elemTip2, 'divAtributTipNeaktivan');
                    
                    Sys.UI.DomElement.removeCssClass(elemTip3, 'divAtributTipAktivan');
                    Sys.UI.DomElement.addCssClass(elemTip3, 'divAtributTipNeaktivan');
                    
                    break;
                    
                case 2:                                        
                    Sys.UI.DomElement.removeCssClass(elemTip1, 'divAtributTipAktivan');
                    Sys.UI.DomElement.addCssClass(elemTip1, 'divAtributTipNeaktivan');                    
                    
                    Sys.UI.DomElement.removeCssClass(elemTip2, 'divAtributTipNeaktivan');
                    Sys.UI.DomElement.addCssClass(elemTip2, 'divAtributTipAktivan');
                    
                    Sys.UI.DomElement.removeCssClass(elemTip3, 'divAtributTipAktivan');
                    Sys.UI.DomElement.addCssClass(elemTip3, 'divAtributTipNeaktivan');
                    
                    break;
                    
                case 3:                                        
                    Sys.UI.DomElement.removeCssClass(elemTip1, 'divAtributTipAktivan');
                    Sys.UI.DomElement.addCssClass(elemTip1, 'divAtributTipNeaktivan');                    
                    
                    Sys.UI.DomElement.removeCssClass(elemTip2, 'divAtributTipAktivan');
                    Sys.UI.DomElement.addCssClass(elemTip2, 'divAtributTipNeaktivan');
                    
                    Sys.UI.DomElement.removeCssClass(elemTip3, 'divAtributTipNeaktivan');
                    Sys.UI.DomElement.addCssClass(elemTip3, 'divAtributTipAktivan');
                    
                    break;
                 
                 default:
                    break;    
            }                                                           
        }
    }          
}

function AtributVrednostPromenaKolicine(ID_AtributVrednost, divClientID, divOpisClientID,  divOgranicenjeClientID, 
                                        slikaClientID, slikaURL, cenaArtikla, ddKolicinaClientID)    
{
    var ddKolicina = $get(ddKolicinaClientID);        
    
    if (ID_AtributVrednost && ddKolicina)     {                       
        var index  = ddKolicina.selectedIndex;
        var kolicina = ddKolicina.options[index].value;     
           
        DeskCMS.WS.RenderAtributVrednostPromenaKolicine(ID_AtributVrednost, divClientID, divOpisClientID, 
                                        divOgranicenjeClientID, slikaClientID, kolicina, cenaArtikla,
                    function(result)
                    {                        
                        if (result) {
                            // Elementi u koje se stavlja rezultujući HTML                     
                            var lblCena = $get(konfiguratorPregled[1]);                                         
                            var divClient = $get(divClientID);         
                            var divOgranicenje = $get(result[1]);                                                                                       
                            var contentCena = result[2];                                
                            var content = result[3];                                                       
                                                                                                                                                                                            
                            lblCena.innerHTML = contentCena;
                            divClient.innerHTML = content;                                                                                                                                                 
                                                                                                                         
                            var postojiUpozorenje = result[4];                                                                                                               
                            if (postojiUpozorenje == "True")  {                       
                                if (upozorenjePrikaz) {
                                    var contentOgranicenje = result[5];
                                    PopuniUpozorenje(contentOgranicenje);
                                }
                            }                            
                            else
                                SkloniUpozorenje();                                                                                   
                        }                               
                    }
                    , onFailed);                         
    }    
}


function AtributVrednostPromena(ID_AtributVrednost, divClientID, divOpisClientID, 
            divOgranicenjeClientID, slikaClientID, slikaURL)
{ 
    if (ID_AtributVrednost && divClientID && divOgranicenjeClientID && slikaClientID)
    {        
        DeskCMS.WS.RenderAtributVrednost(ID_AtributVrednost, divClientID, divOpisClientID, 
                                        divOgranicenjeClientID, slikaClientID, azurirajVrednosti, onFailed);
                                            
        // Ažuriraj sliku                                            
        var elemSlika = $get(slikaClientID);
        if (elemSlika)
            elemSlika.src = slikaURL;                                                                                                                   
    }
}    

function azurirajVrednosti(result)
{
    if (result) {
        // HTML koji je vratio web servis
        var content = result[0];
        var contentOpis = result[1];
        var contentKomponente = result[2];        
        var contentOgranicenje = result[3];
        var contentCena = result[4];                    
        
        // Elementi u koje se stavlja rezultujući HTML
        var divClientID = $get(result[5]);             
        var divOpisClientID = $get(result[6]);
        var divOgranicenjeClientID = $get(result[7]);
        var slikaClientID = $get(result[8]);    
        
        var postojiUpozorenje = result[9];        
             
        var divKomponenteClientID = $get(konfiguratorPregled[2]);
        var lblCena = $get(konfiguratorPregled[1]);
                
        if (content && divClientID && slikaClientID) {
            // Lista predefinisanih atributa vrednosti
            divClientID.innerHTML = content;       
            
            // Opis artikla
            if (contentOpis && divOpisClientID)
                divOpisClientID.innerHTML = contentOpis;  
                                
            // Lista izabranih komponenata
            if (contentKomponente && divKomponenteClientID)
                divKomponenteClientID.innerHTML = contentKomponente;                                                         
                            
            if (postojiUpozorenje == "True")  {                       
                if (upozorenjePrikaz)
                    PopuniUpozorenje(contentOgranicenje);           
            }
            else
                SkloniUpozorenje();
                                
            // Ažuriraj cenu
            if (contentCena && lblCena)
                lblCena.innerHTML = contentCena;

            // Startuj custom scroll
            CSBfleXcroll('KonfiguratorUserControlsArtikalOpisPregledascx_divOpis');
            CSBfleXcroll('KonfiguratorUserControlsIzabraneVrednostiascx_divIzabraneVrednosti');                                   
        }
    }                                    
}

function PopuniUpozorenje(content)
{    
    var divUpozorenjeOuter = $get(konfiguratorPregled[6]);
    var divUpozorenje = $get(konfiguratorPregled[7]);

    if (divUpozorenje && divUpozorenjeOuter && content) {
        divUpozorenje.innerHTML = content;
        var jsDiv = "#" + konfiguratorPregled[6];
        $(jsDiv).show();
        // divUpozorenje.style.removeAttribute("filter");
    }      
}

function SkloniUpozorenje()
{
    var divUpozorenjeOuter = $get(konfiguratorPregled[6]);
    if (divUpozorenjeOuter) {
        var jsDiv = "#" + konfiguratorPregled[6];
        $(jsDiv).hide();      
//        upozorenjePrikaz = false;
    }
}

function PrikaziUpozorenje()
{
    var divUpozorenjeOuter = $get(konfiguratorPregled[6]);
    if (divUpozorenjeOuter)
        divUpozorenjeOuter.style.display = 'block';
}

//function SkloniSnimanje()
//{
//    var apDiv_SnimiZaKasnijeOuter = $get(konfiguratorPregled[8]);
//    if (apDiv_SnimiZaKasnijeOuter) {
//        var jsDiv = "#" + konfiguratorPregled[8];
//        $(jsDiv).hide();
//    }
//}

//function KonfiguratorSnimi()
//{
//    DeskCMS.WS.RenderSnimiZaKasnije(function(result) 
//        {
//            if (result) {
//                var apDiv_SnimiZaKasnijeOuter = $get(konfiguratorPregled[8]);
//                var apDiv_SnimiZaKasnije = $get(konfiguratorPregled[9]);
//                if (apDiv_SnimiZaKasnije && apDiv_SnimiZaKasnijeOuter) {     
//                    apDiv_SnimiZaKasnije.innerHTML = result;
//                    var jsDiv = "#" + konfiguratorPregled[8];
//                    $(jsDiv).show();     
//                }                
//            }                        
//        }
//    
//    , onFailed);  
//}

//function KonfiguratorSnimi(tbMailClientID)
//{
//    var tbMail = $get(tbMailClientID);
//    if (tbMail) {
//        var mail = tbMail.value;
//        DeskCMS.WS.KorpaZaKasnije_Ubaci(mail, function(result)
//        {
//            if (!result) {
//                alert("Greška pri slanju maila...");
//                var jsDiv = "#" + konfiguratorPregled[8];
//                $(jsDiv).hide();                     
//            }                
//            else if (result == -1) {                
//                alert("Neispravno unešena mail adresa...");
//            }                
//            else    {
//                alert("Izabrane opcije su uspešno snimljene i na unešeni e-mail je poslata poruka sa adresom...");
//                                
//                var jsDiv = "#" + konfiguratorPregled[8];
//                $(jsDiv).hide();             
//            }                        
//        }                
//        , onFailed);    
//    }   
//}

function KoniguratorSpisakStampa()
{
    window.open("/konfigurator/PregledStampa.aspx", '_blank', 'width=750, height=640, scrollbars=yes, resizable=yes, menubar=no');
}

function KonfiguratorPreracunavanjeRate() {

}


function AtributSlikaAnimacija()
{
    return;
    
    $('.slikaDole').hover(    
    function() 
    {
        $(this).fadeIn();            
    },
    function()
    {
        $(this).fadeOut();
    });
}

function SpisakMail()
{
    var control = 'divMail';
    var myDiv = $get(control);
    if(myDiv) {            
        myDiv.style.display = 'block';    
    }           
}   

function SpisakOdstampaj()
{
    window.print();
}    

function KonfiguratorPoruci()
{    
    alert("Vodi na poručivanje izabranih artikala");
    
}    

function KonfiguratorChat()
{     
    var c = $get('KonfiguratorUserControlsAtributPregledascx_divContentRadio');
    if (c)
    {
        var control = $get("KonfiguratorUserControlsAtributPregledascx_divContentRadio");
        $(control).animate({left: '-=380px'}, 250);                 
    }
}
   
function DefinisanjeAtributaShowHide(divStr)
{
    $(divStr).toggle();
}    

function DefinisanjeAtributaNovShowHide(divStr)
{
    $(divStr).slideToggle();              
}    

function ArtikalIzbor(ID_AtributPromene)
{        
    var url = String.format("Artikli.aspx?ID_AtributPromene={0}", ID_AtributPromene);
    
    if (window.showModalDialog) {
        window.showModalDialog(url, "ArtikalIzbor", "dialogWidth=760px; dialogHeight:700px; resizable: yes; scroll:no; status:no; center:yes");
    }
}

function BanerVezaCMS(ID_Baner) {
    var url = String.format("BanerVeza.aspx?ID_Baner={0}", ID_Baner);

    if (window.showModalDialog) {
        window.showModalDialog(url, "Baner", "dialogWidth=720px; dialogHeight:700px; resizable: yes; scroll:no; status:no; center:yes");
    }
}

function ArtikalPodkategorija(ID_Podkategorija, ID_AtributPromene, divArtikalClientID, cbAktivanClientID)
{
    var divArtikal = $get(divArtikalClientID);
    var cbAktivan = $get(cbAktivanClientID);    
    
    if (ID_Podkategorija > 1 && divArtikal && cbAktivan)
    {
        var aktivan = cbAktivan.checked;
        DeskCMS.WS.RenderArtikalPodkategorija(ID_Podkategorija, ID_AtributPromene, aktivan,
                    function(result)
                    {                                            
                        if (result)   {                            
                            divArtikal.innerHTML = result;                                                                                                                                                     
                        }                            
                    }, onFailed);
    }                
}

function ArtikalPretraga(tbPretragaClientID, ID_AtributPromene, divArtikalClientID, cbAktivanClientID)
{
    var tbPretraga = $get(tbPretragaClientID);
    var divArtikal = $get(divArtikalClientID);
    var cbAktivan = $get(cbAktivanClientID);        
            
    if (tbPretraga && divArtikal && cbAktivan)
    {                
        var deoNaziva = tbPretraga.value;
        var aktivan = cbAktivan.checked;
        
        DeskCMS.WS.RenderArtikalPretraga(deoNaziva, ID_AtributPromene, aktivan,
                    function(result)
                    {                                            
                        if (result)   {                            
                            divArtikal.innerHTML = result;                                                                                                                                                     
                        }                            
                    }, onFailed);
    } 
}

function ArtikalNijeOpisan()
{
    alert("Trenutno ne postoji opis artikla.");
}

function ArtikalIzaberi(ID_AtributPromene, ID_Artikal)
{   
    DeskCMS.WS.ArtikalNovAtributPromeneVezaUbaci(ID_AtributPromene, ID_Artikal);    
    window.close();
}

function ArtikalNovPokupiNaziv(ID_AtributPromene, tbNazivClientID)
{
    var tbNaziv = $get(tbNazivClientID);
    
    if (tbNaziv)
    {
        DeskCMS.WS.ArtikalNovPokupiNaziv(ID_AtributPromene, 
                    function(result)
                    {                        
                        if (result) {                           
                            tbNaziv.value = result;
                        }                                                    
                    }, onFailed);
    }
}

function CMS_SerijaNova(ID_AtributPromene) {
    var url = "Serija.aspx?ID_AtributPromene=" + ID_AtributPromene;

    if (window.showModalDialog) {
        window.showModalDialog(url, "Serija", "dialogWidth=1200px; dialogHeight:750px; resizable: yes; scroll:no; status:no; center:yes");
    }
    else
        window.open(url, "Serija", "top=200, left=300, screenx=200, screeny=200,width=1200, height=750, resizable=0, toolbar=0, scrollbar=0, menubar=0, location=0, directories=0, modal=1");
}

function CMS_AtributSlika(ID_AtributPromene) {
    var url = String.format("AtributSlika.aspx?ID_AtributPromene={0}", ID_AtributPromene);

    if (window.showModalDialog) {
        window.showModalDialog(url, "Slika atributa", "dialogWidth=400px; dialogHeight:500px; resizable: yes; scroll:no; status:no; center:yes");
    }
    else
        window.open(url, "Slika atributa", "top=200, left=300, screenx=200, screeny=200,width=400, height=500, resizable=0, toolbar=0, scrollbar=0, menubar=0, location=0, directories=0, modal=1");
}  


function selectMenu(url)
{    
    if (url) {
        Sys.Debug.trace(url);    
        window.location=url;    
    }
}

function AtributPomoc() {
    $('a.linkAtributPomoc:eq(0)').cluetip({
        cluetipClass: 'jtip',
        arrows: true,
        dropShadow: true,
        hoverIntent: false,
        sticky: true,
        width: '450px',
        height: '400px',
        mouseOutClose: true,
        closePosition: 'title',
        closeText: '<img src="/assets/konfigurator/cross.png" alt="Zatvori" />'
    });
}

function RacunarDetaljiHover() {        
    $('a.hoverDetalji').cluetip({
        cluetipClass: 'jtip textLeft85',
        arrows: true,
        dropShadow: true,
        hoverIntent: false,
        sticky: true,
        width: '220px',
        mouseOutClose: true,
        closePosition: 'title',
        closeText: '<img src="/assets/images/cross.png" alt="Zatvori" />'    
    });
}

function ArtikalDetaljiHover() {
    $('a.hoverDetalji').cluetip({
        cluetipClass: 'jtip textLeft85',
        arrows: true,
        dropShadow: true,
        hoverIntent: false,
        sticky: true,
        width: '720px',
        mouseOutClose: true,
        closePosition: 'title',
        closeText: '<img src="/assets/images/cross.png" alt="Zatvori" />'
    });
}

function UporedjivanjePoruka() {
    alert('Molimo Vas da prvo izaberite računare za upoređivanje klikom na kućicu iznad slike računara.');
}

function UporedjivanjeArtikalPoruka() {
    alert('Molimo Vas da prvo izaberite proizvode za upoređivanje klikom na kućicu iznad slike proizvoda.');
}

function RacunarUporediID(ID_Racunar) {
    var linkUporedi = $get(listClientID[5]);
    var linkUporedi2 = $get(listClientID[6]);

    DeskCMS.WS.RacunarUporediID(ID_Racunar,
        function(result) {
            if (result) {
                linkUporedi.disabled = false;
                linkUporedi2.disabled = false;
                linkUporedi.href = result;
                linkUporedi2.href = result;
            }
            else {
                linkUporedi.disabled = true;
                linkUporedi2.disabled = true;
            }
        }, onFailed);
}

function ArtikalUporediID(ID_Racunar) {
    var linkUporedi = $get(katalogListClientID[2]);
    var linkUporedi2 = $get(katalogListClientID[3]);

    DeskCMS.WS.ArtikalUporediID(ID_Racunar,
        function(result) {
            if (result) {
                linkUporedi.disabled = false;
                linkUporedi2.disabled = false;
                linkUporedi.href = result;
                linkUporedi2.href = result;
            }
            else {
                linkUporedi.disabled = true;
                linkUporedi2.disabled = true;
            }
        }, onFailed);
}


function PomocPopup(ID_AtributPromene, ID_Racunar) {
    var url = "/Konfigurator/AtributPomoc.aspx?id=" + ID_AtributPromene + "&idr=" + ID_Racunar;
    
    window.open(url, '_blank', 'width=450, height=400, scrollbars=no, resizable=yes, menubar=no');
}

function RacunarPregledDetaljiSlikaPrikazi(ID_Slika, imgClientID, type)
{    
    var img = $get(imgClientID);
    if (img) {
        var url = String.format("/ShowImage.ashx?id={0}&type={1}", ID_Slika, type);
        img.src = url;
    }    
}

function StariKorisnikAktiviraj(tbSifraClientID, tbEmailClientID, status) {
    var tbEmail = $get(tbEmailClientID);
    var tbSifra = $get(tbSifraClientID);
    if (tbSifra && tbEmail) {
        if (status) {
            tbSifra.disabled = false;
            tbSifra.focus();
        }
        else {
            tbSifra.disabled = true;
            tbEmail.focus();
        }            
    }
}

function changeImage(controlID, imageUrl) {
    var control = $get(controlID);
    if (control) {
        control.firstChild.src = imageUrl;
    }
}

function swapHome(num) {    
    var linkPhoto = $get(homePageClientID[6]);
    if (linkPhoto) {
        linkPhoto.firstChild.src = String.format("/ShowImage.ashx?id={0}&type=32", homePagePhotoID[num - 1]);
        linkPhoto.href = homePageLink[num - 1];
    }    
}

function ukljuciAtributCenovnik(cbCenaClientID, buttonArtikalClientID, ddCenovnikTipClientID, tbCenaFaktorClientID, tbCenaClientID) {

    var cbCena = $get(cbCenaClientID);
    var buttonArtikal = $get(buttonArtikalClientID);
    var ddCenovnikTip = $get(ddCenovnikTipClientID);
    var tbCenaFaktor = $get(tbCenaFaktorClientID);
    var tbCena = $get(tbCenaClientID);

    if (cbCena && buttonArtikal && ddCenovnikTip && tbCenaFaktor) {
        var status = cbCena.checked;

        if (status) {
            tbCena.disabled = true;
            buttonArtikal.disabled = false;
            ddCenovnikTip.disabled = false;
            tbCenaFaktor.disabled = false;
            tbCenaFaktor.focus();
        }
        else {
            tbCena.disabled = false;
            buttonArtikal.disabled = true;
            ddCenovnikTip.disabled = true;
            tbCenaFaktor.disabled = true;
            tbCena.focus();
        }
    }
}

function ukljuciAtributOdlaganje(rbOdlaganjeNeClientID, rbOdlaganjeDatumClientID, rbOdlaganjeDanaClientID,
                                tbDatumDolaskaClientID, tbOdlaganjeDanaClientID, buttonDatumDolaskaClientID) {

    var rbOdlaganjeNe = $get(rbOdlaganjeNeClientID);
    var rbOdlaganjeDatum = $get(rbOdlaganjeDatumClientID);
    var rbOdlaganjeDana = $get(rbOdlaganjeDanaClientID);
    var tbDatumDolaska = $get(tbDatumDolaskaClientID);
    var tbOdlaganjeDana = $get(tbOdlaganjeDanaClientID);
    var buttonDatumDolaska = $get(buttonDatumDolaskaClientID);

    if (rbOdlaganjeNe && rbOdlaganjeDatum && rbOdlaganjeDana && tbDatumDolaska && tbOdlaganjeDana && buttonDatumDolaska) {
        if (rbOdlaganjeNe.checked) {
            tbDatumDolaska.disabled = true;
            buttonDatumDolaska.disabled = true;
            tbOdlaganjeDana.disabled = true;            
        }
        else if (rbOdlaganjeDatum.checked) {
            tbDatumDolaska.disabled = false;
            buttonDatumDolaska.disabled = false;
            tbOdlaganjeDana.disabled = true;
            buttonDatumDolaska.focus();
        }
        else if (rbOdlaganjeDana.checked) {
            tbDatumDolaska.disabled = true;
            buttonDatumDolaska.disabled = true;
            tbOdlaganjeDana.disabled = false;
            tbOdlaganjeDana.focus();
        }
    }
}

function ukljuciAtributAkcija(cbAkcijaClientID, tbAkcijaClientID, tbAkcijaDatumClientID, buttonAkcijaClientID) {

    var cbAkcija = $get(cbAkcijaClientID);
    var tbAkcija = $get(tbAkcijaClientID);
    var tbAkcijaDatum = $get(tbAkcijaDatumClientID);
    var buttonAkcija = $get(buttonAkcijaClientID);

    if (cbAkcija && tbAkcija && tbAkcijaDatum && buttonAkcija) {
        var status = cbAkcija.checked;

        if (status) {
            tbAkcija.disabled = false;
            tbAkcijaDatum.disabled = false;
            buttonAkcija.disabled = false;
            tbAkcija.focus();
        }
        else {
            tbAkcija.disabled = true;
            tbAkcijaDatum.disabled = true;
            buttonAkcija.disabled = true;            
        }
    }
}

function kat(ID_Kategorija, strana, resetFilter) {
    var divLeft = $get(katalogListClientID[0]);
    var divRight = $get(katalogListClientID[1]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);
    var lblItemCount = $get(katalogListClientID[7]);

    if (divLeft && divRight) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        Sys.UI.DomElement.addCssClass(divLeft, 'loading');
        divLeft.innerHTML = loadingMsg;

        if (strana == 0)
            if (ddPage)
            strana = ddPage.value;

        DeskCMS.WS.RenderKategorija(ID_Kategorija, strana, brojPoStrani, sort,
                    function(result) {
                        Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                        if (result) {
                            divLeft.innerHTML = result[0];
                            if (result[1] && resetFilter) {
                                if (divRight)
                                    divRight.innerHTML = result[1];
                            }
                        }
                    }, onFailed);

        // Snimi history point
        Sys.Application.addHistoryPoint({ kat: ID_Kategorija, str: strana }, "DESK");
    }
}

function katFilter(ID_Kategorija, ID_Atribut1, ID_Atribut2, ID_Atribut3,
                    VrednostAtribut1, VrednostAtribut2, VrednostAtribut3, resetFilter2, resetFilter3,
                    strana, sort, resetFilter) 
{
    var divLeft = $get(katalogListClientID[0]);
    var divRight = $get(katalogListClientID[1]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);
    var lblItemCount = $get(katalogListClientID[7]);

    if (divLeft && divRight) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        Sys.UI.DomElement.addCssClass(divLeft, 'loading');
        divLeft.innerHTML = loadingMsg;

        if (strana == 0)
            if (ddPage)
            strana = ddPage.value;

        DeskCMS.WS.RenderKategorijaFilter(ID_Kategorija, ID_Atribut1, ID_Atribut2, ID_Atribut3,
                                            VrednostAtribut1, VrednostAtribut2, VrednostAtribut3,
                                            resetFilter2, resetFilter3, strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                if (result[1] && resetFilter) {
                                    if (divRight)
                                        divRight.innerHTML = result[1];
                                }

                                if (result[2])
                                    lblItemCount.innerHTML = result[2];
                                    
                               if (result[3])
                                   popuniPageDropDown(result[3], 1);
                            }
                        }, onFailed);
    }
}

function searchFilter(deoNaziva, ID_Atribut1, ID_Atribut2, ID_Atribut3,
                    VrednostAtribut1, VrednostAtribut2, VrednostAtribut3, resetFilter2, resetFilter3,
                    strana, sort, resetFilter) {
    var divLeft = $get(katalogListClientID[0]);
    var divRight = $get(katalogListClientID[1]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);
    var lblItemCount = $get(katalogListClientID[7]);

    if (divLeft && divRight) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        Sys.UI.DomElement.addCssClass(divLeft, 'loading');
        divLeft.innerHTML = loadingMsg;

        if (strana == 0)
            if (ddPage)
            strana = ddPage.value;

        DeskCMS.WS.RenderSearchFilter(deoNaziva, ID_Atribut1, ID_Atribut2, ID_Atribut3,
                                      VrednostAtribut1, VrednostAtribut2, VrednostAtribut3,
                                      resetFilter2, resetFilter3, strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                if (result[1] && resetFilter) {
                                    if (divRight)
                                        divRight.innerHTML = result[1];
                                }

                                if (result[2])
                                    lblItemCount.innerHTML = result[2];

                                if (result[3])
                                    popuniPageDropDown(result[3], 1);
                            }
                        }, onFailed);
    }
}


function proFilter(proizvodjac, ID_Podkategorija, resetFilter2, resetFilter3, strana, sort, resetFilter)
{
    var divLeft = $get(katalogListClientID[0]);
    var divRight = $get(katalogListClientID[1]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);
    var lblItemCount = $get(katalogListClientID[7]);

    if (divLeft && divRight) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        Sys.UI.DomElement.addCssClass(divLeft, 'loading');
        divLeft.innerHTML = loadingMsg;

        if (strana == 0)
            if (ddPage)
            strana = ddPage.value;

        DeskCMS.WS.RenderProizvodjacFilter(proizvodjac, ID_Podkategorija, resetFilter2, resetFilter3, strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                if (result[1] && resetFilter) {
                                    if (divRight)
                                        divRight.innerHTML = result[1];
                                }

                                if (result[2])
                                    lblItemCount.innerHTML = result[2];

                                if (result[3])
                                    popuniPageDropDown(result[3], 1);                                   
                            }
                        }, onFailed);
    }
}


function atrFilter(proizvodjac, ID_Podkategorija, atrList, vredList, vezaPresek, vezaList, katList, resetFilter2, resetFilter3, strana, sort, resetFilter) 
{
    var divLeft = $get(katalogListClientID[0]);
    var divRight = $get(katalogListClientID[1]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);
    var lblItemCount = $get(katalogListClientID[7]);

    if (divLeft && divRight) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        Sys.UI.DomElement.addCssClass(divLeft, 'loading');
        divLeft.innerHTML = loadingMsg;

        if (strana == 0)
            if (ddPage)
            strana = ddPage.value;

        DeskCMS.WS.RenderAtributFilter(proizvodjac, ID_Podkategorija, atrList, vredList, vezaList, vezaPresek, katList,                                       
                                       resetFilter2, resetFilter3, strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                if (result[1] && resetFilter) {
                                    if (divRight)
                                        divRight.innerHTML = result[1];
                                }

                                if (result[2])
                                    lblItemCount.innerHTML = result[2];

                                if (result[3])
                                    popuniPageDropDown(result[3], 1);  
                            }
                        }, onFailed);
    }
}

function RacunarFilter() {
    var div = $get(listClientID[0]);
    var lblBroj = $get(listClientID[1]);
    var ddSort = $get(listClientID[2]);
    var ddItemsPerPage = $get(listClientID[3]);
    var ddPage = $get(listClientID[4]);
    var linkPrevious = $get(listClientID[7]);
    var linkNext = $get(listClientID[8]);

    var namenaID = new Array();
    for (var i = 0; i < listNamenaID.length; i++) {
        var curCheckBox = $get(listNamenaClientID[i]);
        if (curCheckBox) {
            if (curCheckBox.checked)
                Array.add(namenaID, listNamenaID[i]);
        }
    }

    var serijaID = new Array();
    for (var i = 0; i < listSerijaID.length; i++) {
        var curCheckBox = $get(listSerijaClientID[i]);
        if (curCheckBox) {
            if (curCheckBox.checked)
                Array.add(serijaID, listSerijaID[i]);
        }
    }

    var cenaOpseg = new Array()
    for (var i = 0; i < strListCena.length; i++) {
        var curCheckBox = $get(listCenaClientID[i]);
        if (curCheckBox) {
            if (curCheckBox.checked)
                Array.add(cenaOpseg, strListCena[i]);
        }
    }

    var sortiran = 1;
    if (ddSort) {
        sort = ddSort.value;
    }

    //        if (div) {
    //            Sys.UI.DomElement.addCssClass(div, 'loading');
    //            div.innerHTML = loadingMsg;
    //        }


    var brojPoStrani = 0;
    if (ddPage)
        brojPoStrani = ddItemsPerPage.value;

    var strana = 1;
    var type = listPomocni[0];

    Sys.UI.DomElement.addCssClass(div, 'loading');
    div.innerHTML = loadingMsg;
    
    DeskCMS.WS.RenderRacunarFilter(type, namenaID, serijaID, cenaOpseg, sort, strana, brojPoStrani,
                function(result) {
                    Sys.UI.DomElement.removeCssClass(div, 'loading');
                    if (result) {
                        div.innerHTML = result.TextHtml;
                        if (lblBroj)
                            lblBroj.innerHTML = result.TextLabel;

//                        var dummyDown = $get('divDummyDown');

//                        if (dummyDown) {
//                            if (result.BrojRacunara > 4)
//                                dummyDown.style.display = 'none';
//                            else
//                                dummyDown.style.display = 'block';
//                        }

                        if (result.NamenaUkljucenaID) {
                            for (var i = 0; i < listNamenaID.length; i++) {
                                var curCheckBox = $get(listNamenaClientID[i]);
                                var currentItem = parseInt(listNamenaID[i]);

                                var itemExists = Array.contains(result.NamenaUkljucenaID, currentItem);
                                if (itemExists)
                                    curCheckBox.disabled = false;
                                else
                                    curCheckBox.disabled = true;
                            }
                        }

                        if (result.SerijaUkljucenaID) {
                            for (var i = 0; i < listSerijaID.length; i++) {
                                var curCheckBox = $get(listSerijaClientID[i]);
                                var currentItem = parseInt(listSerijaID[i]);

                                var itemExists = Array.contains(result.SerijaUkljucenaID, currentItem);
                                if (itemExists)
                                    curCheckBox.disabled = false;
                                else
                                    curCheckBox.disabled = true;
                            }
                        }

                        popuniRacunariPageDropDown(result.BrojStrana, result.TekucaStrana);
                        RacunarDetaljiHover();
                    }
                }, onFailed);
}

function RacunarFilterStranaDD() {
    var div = $get(listClientID[0]);
    var lblBroj = $get(listClientID[1]);
    var ddSort = $get(listClientID[2]);
    var ddItemsPerPage = $get(listClientID[3]);
    var ddPage = $get(listClientID[4]);
    var linkPrevious = $get(listClientID[7]);
    var linkNext = $get(listClientID[8]);

    var namenaID = new Array();
    for (var i = 0; i < listNamenaID.length; i++) {
        var curCheckBox = $get(listNamenaClientID[i]);
        if (curCheckBox) {
            if (curCheckBox.checked)
                Array.add(namenaID, listNamenaID[i]);
        }
    }

    var serijaID = new Array();
    for (var i = 0; i < listSerijaID.length; i++) {
        var curCheckBox = $get(listSerijaClientID[i]);
        if (curCheckBox) {
            if (curCheckBox.checked)
                Array.add(serijaID, listSerijaID[i]);
        }
    }

    var sortiran = 1;
    if (ddSort) {
        sort = ddSort.value;
    }

    //        if (div) {
    //            Sys.UI.DomElement.addCssClass(div, 'loading');
    //            div.innerHTML = loadingMsg;
    //        }


    var brojPoStrani = 0;
    if (ddPage)
        brojPoStrani = ddItemsPerPage.value;

    var strana = 1;
    if (ddPage) {
        if (ddPage.value)
            strana = ddPage.value;
    }
    
    var type = listPomocni[0];

    DeskCMS.WS.RenderRacunarFilter(type, namenaID, serijaID, sort, strana, brojPoStrani,
                function(result) {
                    //                            Sys.UI.DomElement.removeCssClass(div, 'loading');
                    if (result) {
                        div.innerHTML = result.TextHtml;
                        if (lblBroj)
                            lblBroj.innerHTML = result.TextLabel;

                        var dummyDown = $get('divDummyDown');

                        if (dummyDown) {
                            if (result.BrojRacunara > 2)
                                dummyDown.style.display = 'none';
                            else
                                dummyDown.style.display = 'block';
                        }

                        popuniRacunariPageDropDown(result.BrojStrana, result.TekucaStrana);
                        RacunarDetaljiHover();
                    }
                }, onFailed);
}

function popuniRacunariPageDropDown(max, current) {
    var ddPage = $get(listClientID[4]);
    var linkPrevious = $get(listClientID[7]);
    var linkNext = $get(listClientID[8]);

    if (ddPage && linkPrevious && linkNext) {
        while (ddPage.length > 0)
            ddPage.remove(0);

        ddPage.length = max;
        for (var i = 1; i <= max; i++) {
            ddPage.options[i - 1].text = i;
            ddPage.options[i - 1].value = i;

            if (i == current)
                ddPage.options[i - 1].selected = true;
            else
                ddPage.options[i - 1].selected = false;
        }

        if (current == 1 && max == 1) {
            // Prva i jedina
            linkPrevious.disabled = true;
            linkNext.disabled = true;
        }
        else if (current == 1) {
            // Prva, ali ne jedina
            linkPrevious.disabled = true;
            linkNext.disabled = false;
        }
        else if (current == max) {
            // Poslednja, ali ne jedina
            linkPrevious.disabled = false;
            linkNext.disabled = true;
        }
        else {
            linkPrevious.disabled = false;
            linkNext.disabled = false;
        }
    }
}

function RacunarFilterOnChangePreviousNext(direction) {
    var divLeft = $get(listClientID[0]);    
    var ddSort = $get(listClientID[2]);
    var ddItemsPerPage = $get(listClientID[3]);
    var ddPage = $get(listClientID[4]);
    var linkPrevious = $get(listClientID[7]);
    var linkNext = $get(listClientID[8]);

    if (divLeft) {                
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var type = listPomocni[0];
        
        var namenaID = new Array();
        for (var i = 0; i < listNamenaID.length; i++) {
            var curCheckBox = $get(listNamenaClientID[i]);
            if (curCheckBox) {
                if (curCheckBox.checked)
                    Array.add(namenaID, listNamenaID[i]);
            }
        }

        var serijaID = new Array();
        for (var i = 0; i < listSerijaID.length; i++) {
            var curCheckBox = $get(listSerijaClientID[i]);
            if (curCheckBox) {
                if (curCheckBox.checked)
                    Array.add(serijaID, listSerijaID[i]);
            }
        }

        var cenaOpseg = new Array()
        for (var i = 0; i < strListCena.length; i++) {
            var curCheckBox = $get(listCenaClientID[i]);
            if (curCheckBox) {
                if (curCheckBox.checked)
                    Array.add(cenaOpseg, strListCena[i]);
            }
        }
        
        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        var strana = 1;
        var indRefresh = true;
        if (ddPage) {
            if (ddPage.value) {
                var max = ddPage.length;
                var tmp = parseInt(ddPage.value);
                if (direction == -1) {
                    if (tmp > 1)
                        strana = tmp - 1;
                    else {
                        strana = tmp
                        indRefresh = false;
                    }
                }
                else if (direction == 1) {
                    if (tmp < max) {
                        strana = tmp + 1;
                    }
                    else {
                        strana = tmp;
                        indRefresh = false;
                    }
                }
            }
        }

        if (indRefresh) {   
            DeskCMS.WS.RenderRacunarFilter(type, namenaID, serijaID, cenaOpseg, sort, strana, brojPoStrani,
                function(result) {
                    //                            Sys.UI.DomElement.removeCssClass(div, 'loading');
                    if (result) {
                        divLeft.innerHTML = result.TextHtml;                    
                        popuniRacunariPageDropDown(result.BrojStrana, result.TekucaStrana);
                        RacunarDetaljiHover();
                    }
                }, onFailed);
        }
    }
}


function katOnChangeDD() {
    var divLeft = $get(katalogListClientID[0]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);
         
    if (divLeft) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        Sys.UI.DomElement.addCssClass(divLeft, 'loading');
        divLeft.innerHTML = loadingMsg;

        var strana = 1;

        DeskCMS.WS.RenderKategorijaChangeDD(strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                popuniPageDropDown(result[1], 1);
                            }
                        }, onFailed);                                                      
    }                            
}

function katOnChangePageDD() {
    var divLeft = $get(katalogListClientID[0]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);

    if (divLeft) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        Sys.UI.DomElement.addCssClass(divLeft, 'loading');
        divLeft.innerHTML = loadingMsg;

        var strana = 1;
        if (ddPage) {
            if (ddPage.value)
                strana = ddPage.value;
        }

        DeskCMS.WS.RenderKategorijaChangeDD(strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                popuniPageDropDown(result[1], result[2]);
                            }
                        }, onFailed);
    }        
}

function katOnChangePreviousNext(direction) {
    var divLeft = $get(katalogListClientID[0]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);

    if (divLeft) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;     

        var strana = 1;
        var indRefresh = true;
        if (ddPage) {
            if (ddPage.value) {
                var max = ddPage.length;
                var tmp = parseInt(ddPage.value);
                if (direction == -1) {
                    if (tmp > 1)
                        strana = tmp - 1;
                    else {
                        strana = tmp
                        indRefresh = false;
                    }
                }
                else if (direction == 1) {                    
                    if (tmp < max) {
                        strana = tmp + 1;
                    }
                    else {
                        strana = tmp;
                        indRefresh = false;
                    }
                }
            }
        }

        if (indRefresh) {
            Sys.UI.DomElement.addCssClass(divLeft, 'loading');
            divLeft.innerHTML = loadingMsg;

            DeskCMS.WS.RenderKategorijaChangeDD(strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                popuniPageDropDown(result[1], result[2]);
                            }
                        }, onFailed);
        }
    }
}

function proOnChangePreviousNext(direction) {
    var divLeft = $get(katalogListClientID[0]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);

    if (divLeft) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        var strana = 1;
        var indRefresh = true;
        if (ddPage) {
            if (ddPage.value) {
                var max = ddPage.length;
                var tmp = parseInt(ddPage.value);
                if (direction == -1) {
                    if (tmp > 1)
                        strana = tmp - 1;
                    else {
                        strana = tmp
                        indRefresh = false;
                    }
                }
                else if (direction == 1) {
                    if (tmp < max) {
                        strana = tmp + 1;
                    }
                    else {
                        strana = tmp;
                        indRefresh = false;
                    }
                }
            }
        }

        if (indRefresh) {
            Sys.UI.DomElement.addCssClass(divLeft, 'loading');
            divLeft.innerHTML = loadingMsg;

            DeskCMS.WS.RenderProizvodjacChangeDD(strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                popuniPageDropDown(result[1], result[2]);
                            }
                        }, onFailed);         
        }
    }
}

function searchOnChangePreviousNext(direction) {
    var divLeft = $get(katalogListClientID[0]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);

    if (divLeft) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        var strana = 1;
        var indRefresh = true;
        if (ddPage) {
            if (ddPage.value) {
                var max = ddPage.length;
                var tmp = parseInt(ddPage.value);
                if (direction == -1) {
                    if (tmp > 1)
                        strana = tmp - 1;
                    else {
                        strana = tmp
                        indRefresh = false;
                    }
                }
                else if (direction == 1) {
                    if (tmp < max) {
                        strana = tmp + 1;
                    }
                    else {
                        strana = tmp;
                        indRefresh = false;
                    }
                }
            }
        }

        if (indRefresh) {
            Sys.UI.DomElement.addCssClass(divLeft, 'loading');
            divLeft.innerHTML = loadingMsg;

            DeskCMS.WS.RenderSearchChangeDD(strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                popuniPageDropDown(result[1], result[2]);
                            }
                        }, onFailed);
        }
    }
}

function atrOnChangePreviousNext(direction) {
    var divLeft = $get(katalogListClientID[0]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);

    if (divLeft) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        var strana = 1;
        var indRefresh = true;
        if (ddPage) {
            if (ddPage.value) {
                var max = ddPage.length;
                var tmp = parseInt(ddPage.value);
                if (direction == -1) {
                    if (tmp > 1)
                        strana = tmp - 1;
                    else {
                        strana = tmp
                        indRefresh = false;
                    }
                }
                else if (direction == 1) {
                    if (tmp < max) {
                        strana = tmp + 1;
                    }
                    else {
                        strana = tmp;
                        indRefresh = false;
                    }
                }
            }
        }

        if (indRefresh) {
            Sys.UI.DomElement.addCssClass(divLeft, 'loading');
            divLeft.innerHTML = loadingMsg;

            DeskCMS.WS.RenderAtributFilterChangeDD(strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                popuniPageDropDown(result[1], result[2]);
                            }
                        }, onFailed);
        }
    }
}

function proOnChangePageDD() {
    var divLeft = $get(katalogListClientID[0]);
    var ddPage = $get(katalogListClientID[4]);
    var ddItemsPerPage = $get(katalogListClientID[5]);
    var ddSort = $get(katalogListClientID[6]);

    if (divLeft) {
        var brojPoStrani = -1;
        if (ddItemsPerPage)
            brojPoStrani = ddItemsPerPage.value;

        var sort = 1;
        if (ddSort)
            sort = ddSort.value;

        Sys.UI.DomElement.addCssClass(divLeft, 'loading');
        divLeft.innerHTML = loadingMsg;

        var strana = 1;
        if (ddPage) {
            if (ddPage.value)
                strana = ddPage.value;
        }

        DeskCMS.WS.RenderProizvodjacChangeDD(strana, brojPoStrani, sort,
                        function(result) {
                            Sys.UI.DomElement.removeCssClass(divLeft, 'loading');
                            if (result) {
                                divLeft.innerHTML = result[0];
                                popuniPageDropDown(result[1], result[2]);
                            }
                        }, onFailed);
    }
}

function KonfiguratorKorpa() {
    DeskCMS.WS.KonfiguratorKorpa(function result() {
                                if (result)
                                    window.location = "/Narucivanje/Korpa.aspx";
                            },
                            onFailed);   
}

function popuniPageDropDown(max, current) {
    var ddPage = $get(katalogListClientID[4]);
    var linkPrevious = $get(katalogListClientID[8]);
    var linkNext = $get(katalogListClientID[9]);

    if (ddPage && linkPrevious && linkNext) {                                
        while (ddPage.length > 0)
            ddPage.remove(0);
            
        ddPage.length = max;        
        for (var i = 1; i <= max; i++) {            
            ddPage.options[i - 1].text = i;
            ddPage.options[i - 1].value = i;

            if (i == current)
                ddPage.options[i - 1].selected = true;
            else
                ddPage.options[i - 1].selected = false;
        }

        if (current == 1 && max == 1) {
            // Prva i jedina
            linkPrevious.disabled = true;
            linkNext.disabled = true;
        }
        else if (current == 1) {
            // Prva, ali ne jedina
            linkPrevious.disabled = true;
            linkNext.disabled = false;
        }
        else if (current == max) {
            // Poslednja, ali ne jedina
            linkPrevious.disabled = false;
            linkNext.disabled = true;
        }
        else {
            linkPrevious.disabled = false;
            linkNext.disabled = false;
        }
    }
}

function ModelAtributSerijaIzmena(ID_RacunarModel, ID_AtributPromene) {
    var url = String.format("ModelAtributSerijaIzmena.aspx?ID_RacunarModel={0}&ID_AtributPromene={1}", ID_RacunarModel, ID_AtributPromene);

    if (window.showModalDialog) {
        window.showModalDialog(url, "Veza", "dialogWidth=720px; dialogHeight:700px; resizable: yes; scroll:no; status:no; center:yes");
    }
}

function hideElement(elementID) {
    var element = $get(elementID);
    if (element) {
        $(element).fadeOut('slow');
    }
}
