$(document).ready(function() {
    //load numeric module
    $.getScript('http://www.diss.si/js/jquery.numeric.js', function() {
        //allow only numeric values
        $(".numeric").numeric();
    });

    //load jcarousel module
    $.getScript('http://www.diss.si/js/jquery.jcarousel.js', function() {
        //sale carousel in right bar
        $('#salecarousel').jcarousel({
            auto: 3,
            vertical: true,
            scroll: 3, //number of items to scroll
            initCallback: carousel_initCallback,
            wrap: 'last'
        });
    });

    //ajax setup
    $.ajaxSetup({ cache: false, dataType: "html" });

    //when ESC key is pressed close popup
    $(document).keypress(function(e) { if (e.keyCode == 27 && popupStatus == 1) { closePopup(); } });

    //when arrow key is pressed for gallery popup
    $(document).keydown(function(e) {
        if (popupStatus == 1) {
            var keyCode = e.keyCode || e.which;
            var arrow = { left: 37, right: 39 };

            switch (keyCode) {
                case arrow.left:
                    $('.goleft').click();
                    break;
                case arrow.right:
                    $('.goright').click();
                    break;
            }
        }
    });

    //close event on popup background
    $('#modalwindowbackground').click(function() { closePopup(); });

    //click on logo goes to root page
    $('#head .logo').click(function() { window.location = 'http://www.diss.si/'; });

    //submit to newsletter
    $('#newsletter .inputimage img').click(function() {
        submitNewsletter($('#email').val());
    });

    //clear text in header input
    $('.inputtextcolor').click(function() {
        if ($(this).val() == $(this).attr('defaultvalue')) {
            $(this).val('');
            $(this).removeClass('inputtextcolor');
            $(this).addClass('input');
            $(this).focus();
        }
    });

    //clear defaultvalue
    $('.inputtextcolor').focus(function() {
        //if value is defaultvalue
        if ($(this).val() == $(this).attr('defaultvalue')) {
            $(this).val('');
            $(this).removeClass('inputtextcolor');
            $(this).addClass('input');
            $(this).focus();
        }
    });

    //advance search - ajax
    if ($('#advancesearchpanel').length > 0) {
        $.ajax({
            url: 'http://www.diss.si/ajaxadvancesearch.aspx',
            success: function(data) { $('#advancesearchpanel').html(data); }
        });
    }

    //ajax suvey
    if ($('#ajaxsurveyholder').length > 0) {
        $.ajax({
            url: 'http://www.diss.si/ajaxsurvey.aspx',
            success: function(data) { $('#ajaxsurveyholder').html(data); }
        });
    }

    //on blur set back font and value - advance search
    $('#aspricewotaxfrom').blur(function() {
        //if value is empty
        if ($(this).val() == '') {
            $(this).removeClass('input');
            $(this).addClass('inputtextcolor');
            //set default value
            var defaultvalue = $(this).attr('defaultvalue');
            $(this).val(defaultvalue);
        }
    });

    //on blur set back font and value - advance search
    $('#aspricewotaxto').blur(function() {
        //if value is empty
        if ($(this).val() == '') {
            $(this).removeClass('input');
            $(this).addClass('inputtextcolor');
            //set default value
            var defaultvalue = $(this).attr('defaultvalue');
            $(this).val(defaultvalue);
        }
    });

    //on blur set back font and value - head
    $('#einformation').blur(function() {
        //if value is empty
        if ($(this).val() == '') {
            $(this).removeClass('input');
            $(this).addClass('inputtextcolor');
            //set default value
            var defaultvalue = $(this).attr('defaultvalue');
            $(this).val(defaultvalue);
        }
    });

    //on blur set back font and value - menu
    $('#searchstringtext').blur(function() {
        //if value is empty
        if ($(this).val() == '') {
            $(this).removeClass('input');
            $(this).addClass('inputtextcolor');
            //set default value
            var defaultvalue = $(this).attr('defaultvalue');
            $(this).val(defaultvalue);
        }
    });

    //open send to friend
    $('#documenttools .sendtofriend img').click(function() {
        //get title
        var sendtofriendtitle = $('.pagetitle h1').text();
        //open popup window to send to friend
        sendToFriend(sendtofriendtitle, window.location);
    });

    //print page
    $('#documenttools .print img').click(function() { window.print(); });

    //global slider status variable
    var slidestatus = false;

    //toggle content - contacts.aspx
    $('#contacts .contactcontainer h2').click(function() {
        if ($(this).next('.contactdata').is(':visible')) {
            //close if slide not active
            if (slidestatus == false) {
                //set slide as active
                slidestatus = true;

                //change icon and animate slide up
                $(this).css('background-image', 'url(http://www.diss.si/images/plus.png)').next('.contactdata').slideUp(function() { checkContactsOpen(); setTimeout(function() { slidestatus = false; }, 500); });
            }
        } else {
            //open if slide not active
            if (slidestatus == false) {
                //set slide as active
                slidestatus = true;

                //change icon and animate slide down
                $(this).css('background-image', 'url(http://www.diss.si/images/minus.png)').next('.contactdata').slideDown(function() { checkContactsOpen(); setTimeout(function() { slidestatus = false; }, 500); });
            }
        }
    });

    //show all contacts - contacts.aspx
    $('.showall').click(function() {
        //count open contacts
        var allopen = $('#contacts .contactdata:visible').size();
        //count all contacts
        var contacts = $('#contacts .contactdata').length;

        //if contacts are all open
        if (contacts == allopen && slidestatus == false) {
            //set slide as active
            slidestatus = true;

            //change text and icon
            $(this).html($(this).attr('close')).css('background-image', 'url(http://www.diss.si/images/minus.png)');
            $('#contacts .contactcontainer h2').css('background-image', 'url(http://www.diss.si/images/plus.png)');

            //hide contacts
            $('#contacts .contactdata').slideUp(600, function() { checkContactsOpen(); setTimeout(function() { slidestatus = false; }, 500); });
        } else {
            if (slidestatus == false) {
                //set slide as active
                slidestatus = true;

                //change text and icon
                $(this).html($(this).attr('open')).css('background-image', 'url(http://www.diss.si/images/plus.png)');
                $('#contacts .contactcontainer h2').css('background-image', 'url(http://www.diss.si/images/minus.png)');

                //show contacts
                $('#contacts .contactdata').slideDown(600, function() { checkContactsOpen(); setTimeout(function() { slidestatus = false; }, 500); });
            }
        }
    });

    //tool tips
    $('.bimages').mouseover(function() {
        $(this).children('.bcontacts').show().css('top', -$(this).children('.bcontacts').height() + 15);
    }).mouseout(function() {
        $(this).children('.bcontacts').hide();
    });

    //article tool tip
    $('.articlelisttitle').hover(function() {
        var element = $(this);
        var t = setTimeout(function() {
            //check if IE, because transparent opacity
            if ($.browser.msie) {
                $(element).children('.articlelistimage').show(10);
            }
            else { $(element).children('.articlelistimage').fadeIn(50); }
        }, 500);
        $(this).data('timeout', t);
    }, function() {
        //check if IE, because transparent opacity
        if ($.browser.msie) {
            $(this).children('.articlelistimage').css('display', 'none');
        } else {
            $(this).children('.articlelistimage').fadeOut(100);
        }
        clearTimeout($(this).data('timeout'));
    });

    //change search results to content
    $('#searchtypecontent').click(function() { $('#searchtype').val(1); $('#filterform').submit(); });

    //change search results to article
    $('#searchtypearticle').click(function() { $('#searchtype').val(2); $('#filterform').submit(); });

    //image popoup
    $('.fotoholder img').click(function() {
        //get image position
        var pos = $(this).attr('pos');
        //open image popup window
        imagePopup(pos);
    });

    //firstimagefrom content
    $('#contentfirstimage').click(function() {
        //get image position
        var pos = $(this).attr('pos');
        //open image popup window
        imagePopup(pos);
    });

    //clear contact form inputs
    $('.imageclear').click(function() {
        $('.formholder .field').val('');
        $('.formholder .formtextarea').val('');
    });

    //toggle year newsleftbar - news.aspx and newslist.aspx
    $('.year').click(function() {
        if ($(this).next('ul').is(':visible')) {
            //close
            $(this).next('ul').slideUp();
            $(this).children('.newsnews').removeClass('newsnews nwesnewsarchiv newsnewsborder yearselected').addClass('newsnews nwesnewsarchiv newsnewsborder');
            $(this).next('ul').children('li').removeClass('newsmonth showmonts').addClass('newsmonth');
        } else {
            //open
            $(this).next('ul').slideDown();
            $(this).children('.newsnews').removeClass('newsnews nwesnewsarchiv newsnewsborder').addClass('newsnews nwesnewsarchiv newsnewsborder yearselected');
            $(this).next('ul').children('li').removeClass('newsmonth').addClass('newsmonth showmonts');

        }
    });
    //toggle month news newsleftbar - news.aspx and newslist.aspx
    $('.newsmonth').click(function() {
        if ($(this).children('ul').is(':visible')) {
            //close
            $(this).children('ul').slideUp();
            $(this).children('ul').children('li').removeClass('newsinselectedmonth').addClass('newsmonth');
            $(this).css('font-weight', 'normal');
        } else {
            //open
            $(this).children('.newsmonth ul').slideDown();
            $(this).children('.newsmonth ul').children('li.').removeClass('newsmonth').addClass('newsinselectedmonth');
            $(this).css('font-weight', 'bold');
        }
    });
});

//carousel init callback
function carousel_initCallback(carousel) {
    //disable autoscrolling if the user clicks the prev or next button.
    carousel.buttonNext.bind('click', function() {
        carousel.startAuto(0);
    });
    carousel.buttonPrev.bind('click', function() {
        carousel.startAuto(0);
    });

    //pause autoscrolling if the user moves with the cursor over the clip.
    carousel.clip.hover(function() {
        carousel.stopAuto();
    }, function() {
        carousel.startAuto();
    });
};

//article navigation submit
function submitPagination(page) {
    $('#page').val(page);
    $('#filterform').submit();
}

//article view type submit
function submitViewType(viewtype) {
    $('#page').val(1);
    $('#viewtype').val(viewtype);
    $('#filterform').submit();
}

//check if all contacts are open
function checkContactsOpen() {
    //count open contacts
    var allopen = $('.contactdata:visible').size();
    //count all contacts
    var contacts = $('.contactdata').length;

    //if the number of open contacts is same as contacst count
    if (contacts == allopen) {
        var text = $('.showall').attr('close');
        $('.showall').html(text);
        $('.showall').css('background-image', 'url(http://www.diss.si/images/minus.png)');
    } else {
        var text = $('.showall').attr('open');
        $('.showall').html(text);
        $('.showall').css('background-image', 'url(http://www.diss.si/images/plus.png)');
    }
}

//send advance search
function sendAdvanceSearch(brandnodeids, nodeids, groupnodeids, articlecode, pricewotaxfrom, pricewotaxto, onsale, onstock, searchstring) {
    $.ajax({
        url: 'http://www.diss.si/ajaxadvancesearch.aspx',
        data: ({ brandnodeids: brandnodeids, nodeids: nodeids, groupnodeids: groupnodeids, articlecode: articlecode, pricewotaxfrom: pricewotaxfrom, pricewotaxto: pricewotaxto, onsale: onsale, onstock: onstock, searchstring: searchstring }),
        success: function(data) {
            $('#advancesearchpanel').html(data);
        }
    });
}

//clear input texts if default value and submit form
function checkAdvanceSearchSubmit() {

    //clear default values
    if ($('#aspricewotaxfrom').val() == $('#aspricewotaxfrom').attr('defaultvalue')) {
        $('#aspricewotaxfrom').val('');
    }
    if ($('#aspricewotaxto').val() == $('#aspricewotaxto').attr('defaultvalue')) {
        $('#aspricewotaxto').val('');
    }
}

//refresh advance search
function submitNewsletter(email) {
    $.post('http://www.diss.si/ajaxnewsletter.aspx?email=' + email, function(data) { $('#mailing').html(data); });
}

//open send to friend window
function sendToFriend(title, link) {
    $.ajax({
        url: 'http://www.diss.si/ajaxsendtofriend.aspx',
        data: ({ title: title, link: escape(link) }),
        success: function(data) {
            $('#modalwindowcontent').html(data);
            //popup - load
            openPopup();
        }
    });
}

//send to friend email
function sendSendToFriend() {
    //get parameters
    var sLink = $('#hiddenarticleid').val();
    var sTitle = $('#articletitle').val();
    var sSenderName = $('#sendername').val();
    var sSenderEmail = $('#senderemail').val();
    var sRecipientEmail = $('#sendtoemail').val();
    var sRecipientName = $('#recipientname').val();
    var sMessage = $('#sendtofriendtextarea').val();

    $.ajax({
        url: 'http://www.diss.si/ajaxsendtofriend.aspx?link=' + escape(sLink) + '&title=' + escape(sTitle) + '&sendername=' + escape(sSenderName) + '&senderemail=' + escape(sSenderEmail) + '&recipientemail=' + escape(sRecipientEmail) + '&message=' + escape(sMessage) + '&recipientname=' + sRecipientName + '&validate=1',
        success: function(data) {
            $('#modalwindowcontent').html(data);
        }
    });
}

//send/get survey
function sendSurvey(nDocId, nValidate) {
    var nNodePos = 0;
    var sTarget = $('#surveycontent');

    //show survey
    if (nValidate == 0) {
        sTarget = $('#survey');
    }
    //vote
    else if (nValidate == 1) {
        //get radio buttons
        nNodePos = $('#surveycontent input[type=radio]:checked').val();

        if ($('#surveycontent input[type=radio]:checked').length == 0) {
            nNodePos = 0;
            sTarget = $('#survey');
        }
    }

    //show hide buttons
    if (!$('#surveybackbutton').is(':visible')) {
        //hide survey button
        $('#surveysubmitbutton').hide();
        $('#surveyresultbutton').hide();
        $('#surveybackbutton').css('display', 'inline');
    }
    else {
        $('#surveysubmitbutton').css('display', 'inline');
        $('#surveyresultbutton').css('display', 'inline');
        $('#surveybackbutton').hide();
    }

    //send ajax
    $.post("http://www.diss.si/ajaxsurvey.aspx?docid=" + nDocId + "&nodepos=" + nNodePos + "&validate=" + nValidate, function(data) { sTarget.html(data); });
}

//content image popup
function imagePopup(pos) {
    //get array of images with class contentimage on page
    var imgs = $('.contentimage').get();

    //set position of next image
    var posprev = parseInt(pos) - 1;
    //set position of previous image
    var posnext = parseInt(pos) + 1;
    //get fileid
    var fileid = $('.contentimage[pos=' + pos + ']').attr('fileid');
    //get title
    var title = $('.contentimage[pos=' + pos + ']').attr('title');

    //creating pager next previous and image position
    var htmlcontent = '<table width="100%"><tr>';

    //previous image
    if (posprev > 0) {
        htmlcontent = htmlcontent + '<td class="goleft" onclick="imagePopup(' + posprev + ');" ><img src="http://www.diss.si/images/sl-SI/buttons/goleft.png" /></td>';
    } else {
    htmlcontent = htmlcontent + '<td class="goleft" ><img src="http://www.diss.si/images/sl-SI/buttons/goempty.png" /></td>';
    }

    //count image na position
    htmlcontent = htmlcontent + '<td class="imagecounter">Slika ' + pos + ' od ' + imgs.length + ' </td>';

    //next image
    if (posnext <= imgs.length) {
        htmlcontent = htmlcontent + '<td class="goright" onclick="imagePopup(' + posnext + ');" ><img src="http://www.diss.si/images/sl-SI/buttons/goright.png" /></td>';
    } else {
    htmlcontent = htmlcontent + '<td class="goright" ><img src="http://www.diss.si/images/sl-SI/buttons/goempty.png" /></td>';
    }

    //end of htmlcontent creating
    htmlcontent = htmlcontent + '</tr></table><br />'

    //set popup image
    $('#modalwindowcontent').html(htmlcontent + '<div class="image-container"><img id="imagepopup" src="http://www.diss.si/contentimage.aspx?fileid=' + fileid + '&width=500&height=340" alt="' + title + '" title="' + title + '" /></div><div id="imagepopuptitle">' + title + '<img onclick="closePopup()" src="http://www.diss.si/images/sl-SI/buttons/closebox.png" class="closebox" /></div>');

    //hide image and animate fadein
    $('#imagepopup').css({ display: 'none' });
    $('#imagepopup').fadeIn(500);

    //popup - load
    openPopup();

}


//POPUP ###############
//0 = disabled; 1 = enabled;  
var popupStatus = 0;

//show popup
function openPopup() {
    if (popupStatus == 0) {
        //check for IE
        if ($.browser.msie) {
            $('#modalwindowbackground').css({ 'opacity': '0.0' });
            $('#modalwindowbackground').css('display', 'block');
            $('#modalwindow').css('display', 'block');
        }
        else {
            $('#modalwindowbackground').css({ 'opacity': '0.0' });
            $('#modalwindowbackground').fadeIn('fast');
            $('#modalwindow').fadeIn('fast');
        }

        //popup - center
        centerPopup();

        //set that popup is open
        popupStatus = 1;
    }
}

//position popup in center of window
function centerPopup() {
    //request data for centering
    var windowWidth = $(window).width();
    var windowHeight = $(window).height();

    var popupWidth = $("#modalwindow").width();
    var popupHeight = $("#modalwindow").height();

    var newWidth = windowHeight / 2 - popupHeight / 2;
    var newHeight = windowWidth / 2 - popupWidth / 2;
    //centering
    $('#modalwindow').animate({ top: newWidth, left: newHeight }, 200);
}

//dispose popup
function disposePopup() {
    //disables popup only if it is enabled
    if (popupStatus == 1) {
        //mozilla
        if ($.browser == "mozilla" && $.browser.version.substr(0, 3) == "1.9") {
            $('#modalwindowbackground').fadeOut('fast');
            $('#modalwindow').fadeOut('fast', function() { $('#modalwindowcontent').html(''); });
        } else {
            $('#modalwindowbackground').css('display', 'none');
            $('#modalwindow').css('display', 'none', function() { $('#modalwindowcontent').html(''); });
        }

        //set that popup is closed
        popupStatus = 0;
    }
}

//close popup window
function closePopup() {
    //popup - dispose
    disposePopup();
}

//open service popup
function openService(docid) {
    $.ajax({
        url: 'http://www.diss.si/ajaxservicecontent.aspx',
        data: ({ docid: docid }),
        success: function(data) {
            $('#modalwindowcontent').html(data);
            //popup - load
            openPopup();
        }

    });
}

//set sort for articles
function setSort(sortfield, sortorder) {
    $('#sortfield').val(sortfield);
    $('#sortorder').val(sortorder);
    $('#filterform').submit();
}
