﻿/// <reference name="MicrosoftAjax.js"/>

Type.registerNamespace("SportsMEDIA.Web.Common.Core.Universal");

SportsMEDIA.Web.Common.Core.Universal.JSONEventArgs = function() {
	SportsMEDIA.Web.Common.Core.Universal.JSONEventArgs.initializeBase(this);
	
	this._typeName = null;
}

SportsMEDIA.Web.Common.Core.Universal.JSONEventArgs.prototype = {
    get_TypeName: function() {
        return this._typeName;
    },
    set_TypeName: function(TypeName) {
        this._typeName = TypeName;
    }
}

SportsMEDIA.Web.Common.Core.Universal.JSONEventArgs.registerClass('SportsMEDIA.Web.Common.Core.Universal.JSONEventArgs', Sys.EventArgs);

function DoPostBack(PostbackTargetID, EventArgs)
{
	__doPostBack(PostbackTargetID, Sys.Serialization.JavaScriptSerializer.serialize(EventArgs));
}

function ValidationSummaryOnSubmit(validationGroup) {
    if (typeof (Page_ValidationSummaries) == "undefined")
        return;
    var summary, sums, s;
    for (sums = 0; sums < Page_ValidationSummaries.length; sums++) {
        summary = Page_ValidationSummaries[sums];
        summary.style.display = "none";
        if (!Page_IsValid && IsValidationGroupMatch(summary, validationGroup)) {
            var i;
            if (summary.showsummary != "False") {
                summary.style.display = "";
                if (typeof (summary.displaymode) != "string") {
                    summary.displaymode = "BulletList";
                }
                switch (summary.displaymode) {
                    case "List":
                        headerSep = "<br>";
                        first = "";
                        pre = "";
                        post = "<br>";
                        end = "";
                        break;
                    case "BulletList":
                    default:
                        headerSep = "";
                        first = "<ul>";
                        pre = "<li>";
                        post = "</li>";
                        end = "</ul>";
                        break;
                    case "SingleParagraph":
                        headerSep = " ";
                        first = "";
                        pre = "";
                        post = " ";
                        end = "<br>";
                        break;
                }
                s = "";
                if (typeof (summary.headertext) == "string") {
                    s += summary.headertext + headerSep;
                }
                s += first;
                for (i = 0; i < Page_Validators.length; i++) {
                    if (!Page_Validators[i].isvalid && typeof (Page_Validators[i].errormessage) == "string") {
                        s += pre + Page_Validators[i].errormessage + post;
                    }
                }
                s += end;
                summary.innerHTML = s;
                window.scrollTo(0, 0);
            }
            if (summary.showmessagebox == "True") {
                s = "";
                if (typeof (summary.headertext) == "string") {
                    s += summary.headertext + "\r\n";
                }
                var lastValIndex = Page_Validators.length - 1;
                for (i = 0; i <= lastValIndex; i++) {
                    if (!Page_Validators[i].isvalid && typeof (Page_Validators[i].errormessage) == "string") {
                        switch (summary.displaymode) {
                            case "List":
                                s += Page_Validators[i].errormessage;
                                if (i < lastValIndex) {
                                    s += "\r\n";
                                }
                                break;
                            case "BulletList":
                            default:
                                s += "- " + Page_Validators[i].errormessage;
                                if (i < lastValIndex) {
                                    s += "\r\n";
                                }
                                break;
                            case "SingleParagraph":
                                s += Page_Validators[i].errormessage + " ";
                                break;
                        }
                    }
                }
                alert(s);
            }

            // HACK/Addition - added this to a summary when it is deemed invalid.  This allows the ValidationDialogBehavior to work.
            // The rest of this method is an exact copy of the MS version
            $(summary).trigger("invalid");
        }
    }
}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();