﻿var booking = (function(){
    
    function _getTableHtml(data){
        var output = "", bookable = null;
        for (var i = 0; i < data.length; i++) {
            bookable = data[i];
            if (bookable.IsAvailable) {
                output += "<tr class=\"available\"><td class=\"weeknumber\">Uke " + bookable.Week + "</td><td class=\"link\"><a onclick=\"booking.navigate(this.href);return false\" href=\"" + bookable.Url + "\">" + bookable.Price + "</a></td></tr>";
            }
            else {
                output += "<tr class=\"taken\"><td class=\"weeknumber\">Uke " + bookable.Week + "</td><td class=\"link\">" + bookable.Price + "</td></tr>";
            }
        }
        return "<table class=\"weekendtable\">" + output + "</table>";
    }
	
    function _GetDataCallback(bookingData){
        if (bookingData) {
            $("div.bookingtables").html("");
            var pst = Math.floor(100 / bookingData.length);
            for (var i = 0, len = bookingData.length; i < len; i++) {
                var period = bookingData[i];
                var _weekend = $('<div style="float:left;width:' + pst + '%;"></div>');
                _weekend.appendTo("div.bookingtables").html('<div class="header">' + period.Name + '</div>' +
                _getTableHtml(period.Bookable));
            }
        }
        else {
            $("div.bookingtables").html("error");
        }
    }
	
    function _init(){
        var _scripts = document.getElementsByTagName("script");
        var pools = _scripts[_scripts.length - 1].src;
        pools = pools.substring(pools.indexOf("?") + 1);
        document.write('<div class="bookingtables">Henter data..<br/><img src="/Script/ajax-loader.gif" alt="Henter data.."/></div>');
        $(document).ready(function(){
            Booking.GetData(pools, _GetDataCallback);
        });
    }
    return {
        init: _init,
        navigate: function(url){
            window.open(url, "restech", "location=1,status=1,scrollbars=1,width=980,height=600");
        }
    };
})();
booking.init();



