/*global adjustSpacing, buildEventTitle, dateAdjust, dateIncrement, document, getRelativeTime, getRelativeStartTime, $, window */

function adjustSpacing() {
    $('.clone').each(function () {
        var bottomOff = $(this).offset().top + $(this).height();
        $('#'+$(this).attr('id')).filter(function() {
            return $(this).hasClass('event');
        }).each(function() {
            $(this).css({top: bottomOff - $(this).height()});
        });
    });
}

function buildEventElement(el, e) {
    var elem = $(document.createElement('div'));
    elem.attr('class', 'event');
    elem.addClass('e_'+e.id);
    elem.attr('id', 'e_' + e.id + '_' + getNumberOfInstances(e.id));
    elem.css({
        whiteSpace: 'nowrap',
        overflow: 'hidden',
        textAlign: 'center',
        width: e.container.width(),
        backgroundColor: '#' + e.color
    });
    elem.append(e.title);
    return elem;
}

function findEventContainer(el, startTime) {
    var st = startTime || getRelativeStartTime(el);
    var sd = new Date(st);
    var sid = ('d_' + sd.getUTCFullYear() + '_' + dateAdjust(sd.getUTCMonth() + 1) + '_' + dateAdjust(sd.getUTCDate()));

    return $('#'+sid).length === 1 ? $('#'+sid) : false;
}

isDailyContinuation = function (e) {
    return (e.recurs.period === 'day' && getNumberOfInstances(e.id) > 0 && e.lastContainer.offset().top === e.container.offset().top);
};

$(document).ready(function () {
    $('#throbber').ajaxSend(function (xhr, settings) {
        $(this).append($('<img src="image/loadingAnimation.gif" />'));
    });
    $('#throbber').ajaxComplete(function (xhr, settings) {
        $(this).empty();
    });
    
    $(window).resize(adjustSpacing);

    if (window.webdecalendar.token !== '') {
        if (window.webdecalendar.eventView) {
            $('.calMonth td').click(function() {
                $.simBox({url: buildEventUrl(window.webdecalendar.eventView, 'start=' + this.id.substr(2) + '&'), style: {height: tbd.height, width: tbd.width}});
            });
        } else {
            $('.calMonth td').click(function() {
                $.simBox({url: buildEventUrl(window.webdecalendar.eventView, 'start=' + this.id.substr(2) + '&'), style: {height: tb.height, width: tb.width}});
            });
        }
    }
});


