﻿Lightboxes.sharedLightboxModalProvider = function() {
    var that = {};

    that.getContents = function() {
        var contents = $("#SharedLightbox").replaceWith("");
        contents.show();
        return contents;
    };

    var showLink = function(lightboxId) {
        $("#SharedLink").val(Lightboxes.sharedBaseUrl + lightboxId);

        $("#SharedLightbox").show();
        $("#SharedLinkContainer").show();

        $("#SharedLink").focus().select();

        $("#SharedLink").click(function() {
            this.select();
        });
    };

    var showError = function() {
        $("#SharedLightbox").show();
        $("#SharedLightbox #Error").show();
    };

    that.init = function(result) {
        $("#LoadingArea").hide();
        if (result.IsSuccessful) {
            showLink(result.LightboxId);
        }
        else {
            showError();
        }

        $("#CloseSharedLightbox").click(function() {
            $(document).trigger("CloseSharedLightbox");
        });
    };

    that.reset = function() {
        var contents = $("#SharedLightbox").replaceWith("");
        contents.hide();
        $("body").append(contents);
        $("#SharedLightbox #Error").hide();
        $("#SharedLink").val("");
        $("#LoadingArea").show();
        $("#SharedLinkContainer").hide();
    };

    return that;
};
