﻿var bookingNotification = function($) {

    return {
        getNotifications: function() {
            $.ajax({
                type: "POST",
                url: resources.path_prefix + "/dataProvider/bookingNotificationHandler.ashx",
                data: "",
                success: function(data) {
                    if (jQuery.utils.checkSessionExpire(data))
                        return;
                    if (data != '') {
                        var messages = data.toString().split('|');
                        var bookingId = 0;
                        var className = '';
                        var alertMessage;
                        for (var i = 0; i < messages.length; i++) {
                            if (messages[i] != '') {
                                $('div.remove-before').remove();
                                alertMessage = messages[i].split('~')
                                if (alertMessage.length > 0) {
                                    bookingId = alertMessage[0];
                                    className = alertMessage[1] + ' ';
                                    var alreadyShowedNotification = $("div[id='" + bookingId + "']");
                                    $.jGrowl(alertMessage[2], { sticky: true, typeClass: className, id: bookingId,
                                        close: function(e, m, o) {
                                            bookingNotification.updateBookingNotificationStatus(o.id);
                                        }
                                    });
                                }
                            }
                        }
                    }
                }
            });
        },
        updateBookingNotificationStatus: function(bookingId) {
            $.ajax({
                type: "POST",
                url: resources.path_prefix + "/dataProvider/bookingNotificationHandler.ashx",
                data: "bookingId=" + bookingId,
                success: function(data) {
                    if (jQuery.utils.checkSessionExpire(data))
                        return;
                }
            });
        }
    }
} (jQuery);
