﻿(function ($) {

    var options = {
        ajax: false
    };

    $.fn.oAuthLink = function (opts) {

        $.extend(options, opts);

        return this.each(function () {

            var link = $(this);
            var href = link.attr("href");
            var model = link.attr("name");
            link = link.unbind("click")
                        .click(function (event) {
                            event.preventDefault();
                            window.open(href, model + "_Authentication", "width=660,height=450");
                        });

            if (!options.ajax) {
                var requestToken = $("<input type='hidden' />");
                requestToken.attr("name", model + ".RequestToken");

                var verifier = $("<input type='hidden' />");
                verifier.attr("name", model + ".Verifier");

                var displayName = $("<input type='hidden' />");
                displayName.attr("name", model + ".DisplayName");

                var userId = $("<input type='hidden' />");
                userId.attr("name", model + ".UserId");

                link.parent().append(requestToken)
                             .append(displayName)
                             .append(verifier)
                             .append(userId);
            }
        });
    };

})(jQuery);
