/* Ajax error */
$(document).ajaxError(function (request,settings,e) {
    alert('Error requesting URL: '+e.url);
});
/* URL router */
var Router = function (route,params) {
    if (typeof(params) == 'object') {
        var p = '';
        $.each(params,function (name,value) {
            if (p != '') {
                p += '&';
            }
            p += escape(name)+'='+escape(value);
        });
        return Router(route)+'?'+p;
    }
    else {
        return '/' + route;
    }
};
Router.route = function (route,params) {
    var url = Router(route,params);
    location.href = url;
}
/* Plugin na input hint */
jQuery.fn.inputHint = function () {
    this.each(function () {
        var self = $(this);
        if (self.is('input[type=text]')) {
            jQuery.inputHintShow(self);
            self.focus(function () {
                jQuery.inputHintHide(this);
            }).blur(function () {
                jQuery.inputHintShow(this);
            }).closest('form').submit(function () {
                jQuery.inputHintHide(self);
                return true;
            });
        }
    });
    return this;
}
jQuery.inputHintShow = function (inpt) {
    inpt = jQuery(inpt);
    if (inpt.val() == inpt.attr('title') || inpt.val() == '') {
        inpt.addClass('hint').val(inpt.attr('title'));
    }
}
jQuery.inputHintHide = function (inpt) {
    inpt = jQuery(inpt);
    inpt.removeClass('hint');
    if (inpt.val() == inpt.attr('title')) {
        inpt.val('');
    }
}

$(function(){
    /* animation */
    var animationImages = $('#sloganAnimationImages').val();
    if (animationImages){
        eval('animationImages = ' + animationImages + ';');
        var ul = $('<ul></ul>').attr('id','sloganAnimation');
        $.each(animationImages,function (idx,imgsrc){
				ul.append('<li><img src="' + imgsrc + '" alt=""></img></li>');
        });
        $('#sloganAnimationImages').after(ul);
        ul.innerfade({
            animationtype: 'fade',
            speed: 'slow',
            timeout: 4000
        });
    }
    
    /* Scrolling info text */
    infoScroll();
});

function infoScroll(curLeft){
    var sliderContainer = $('#infoslider div.container');
    if (typeof(curLeft) == 'undefined') {
        var curLeft = parseInt($(sliderContainer).css('left'));
    }
    var newLeft = curLeft - 1;
    $(sliderContainer).css('left',newLeft + 'px');
    var width = $('#infoslider div.container span:eq(0)').width();
    if (width + newLeft < 0) {
        newLeft += width;
        $(sliderContainer).css('left',newLeft + 'px');
        $('#infoslider div.container span:eq(0)').appendTo($(sliderContainer));
    }
    
    window.setTimeout(function () {
        infoScroll(newLeft);
    },20);
}
