ScriptResource(1).axd
资源名称:a.rar [点击查看]
上传用户:aa118c
上传日期:2021-05-13
资源大小:4785k
文件大小:64k
源码类别:

WEB源码(ASP,PHP,...)

开发平台:

HTML/CSS

  1. //-----------------------------------------------------------------------
  2. // Copyright (C) Microsoft Corporation. All rights reserved.
  3. //-----------------------------------------------------------------------
  4. // MicrosoftAjaxWebForms.js
  5. // Microsoft AJAX ASP.NET WebForms Framework.
  6. Type.registerNamespace('Sys.WebForms');
  7. Sys.WebForms.BeginRequestEventArgs = function Sys$WebForms$BeginRequestEventArgs(request, postBackElement) {
  8.     /// <param name="request" type="Sys.Net.WebRequest"></param>
  9.     /// <param name="postBackElement" domElement="true"></param>
  10.     var e = Function._validateParams(arguments, [
  11.         {name: "request", type: Sys.Net.WebRequest},
  12.         {name: "postBackElement", domElement: true}
  13.     ]);
  14.     if (e) throw e;
  15.     Sys.WebForms.BeginRequestEventArgs.initializeBase(this);
  16.     this._request = request;
  17.     this._postBackElement = postBackElement;
  18. }
  19.     function Sys$WebForms$BeginRequestEventArgs$get_postBackElement() {
  20.         /// <value domElement="true"></value>
  21.         if (arguments.length !== 0) throw Error.parameterCount();
  22.         return this._postBackElement;
  23.     }
  24.     function Sys$WebForms$BeginRequestEventArgs$get_request() {
  25.         /// <value type="Sys.Net.WebRequest"></value>
  26.         if (arguments.length !== 0) throw Error.parameterCount();
  27.         return this._request;
  28.     }
  29. Sys.WebForms.BeginRequestEventArgs.prototype = {
  30.     get_postBackElement: Sys$WebForms$BeginRequestEventArgs$get_postBackElement,
  31.     get_request: Sys$WebForms$BeginRequestEventArgs$get_request
  32. }
  33. Sys.WebForms.BeginRequestEventArgs.registerClass('Sys.WebForms.BeginRequestEventArgs', Sys.EventArgs);
  34. Sys.WebForms.EndRequestEventArgs = function Sys$WebForms$EndRequestEventArgs(error, dataItems, response) {
  35.     /// <param name="error" type="Error" mayBeNull="true"></param>
  36.     /// <param name="dataItems" type="Object" mayBeNull="true"></param>
  37.     /// <param name="response" type="Sys.Net.WebRequestExecutor"></param>
  38.     var e = Function._validateParams(arguments, [
  39.         {name: "error", type: Error, mayBeNull: true},
  40.         {name: "dataItems", type: Object, mayBeNull: true},
  41.         {name: "response", type: Sys.Net.WebRequestExecutor}
  42.     ]);
  43.     if (e) throw e;
  44.     Sys.WebForms.EndRequestEventArgs.initializeBase(this);
  45.     this._errorHandled = false;
  46.     this._error = error;
  47.         this._dataItems = dataItems || new Object();
  48.     this._response = response;
  49. }
  50.     function Sys$WebForms$EndRequestEventArgs$get_dataItems() {
  51.         /// <value type="Object"></value>
  52.         if (arguments.length !== 0) throw Error.parameterCount();
  53.         return this._dataItems;
  54.     }
  55.     function Sys$WebForms$EndRequestEventArgs$get_error() {
  56.         /// <value type="Error"></value>
  57.         if (arguments.length !== 0) throw Error.parameterCount();
  58.         return this._error;
  59.     }
  60.     function Sys$WebForms$EndRequestEventArgs$get_errorHandled() {
  61.         /// <value type="Boolean"></value>
  62.         if (arguments.length !== 0) throw Error.parameterCount();
  63.         return this._errorHandled;
  64.     }
  65.     function Sys$WebForms$EndRequestEventArgs$set_errorHandled(value) {
  66.         var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
  67.         if (e) throw e;
  68.         this._errorHandled = value;
  69.     }
  70.     function Sys$WebForms$EndRequestEventArgs$get_response() {
  71.         /// <value type="Sys.Net.WebRequestExecutor"></value>
  72.         if (arguments.length !== 0) throw Error.parameterCount();
  73.         return this._response;
  74.     }
  75. Sys.WebForms.EndRequestEventArgs.prototype = {
  76.     get_dataItems: Sys$WebForms$EndRequestEventArgs$get_dataItems,
  77.     get_error: Sys$WebForms$EndRequestEventArgs$get_error,
  78.     get_errorHandled: Sys$WebForms$EndRequestEventArgs$get_errorHandled,
  79.     set_errorHandled: Sys$WebForms$EndRequestEventArgs$set_errorHandled,
  80.     get_response: Sys$WebForms$EndRequestEventArgs$get_response
  81. }
  82. Sys.WebForms.EndRequestEventArgs.registerClass('Sys.WebForms.EndRequestEventArgs', Sys.EventArgs);
  83. Sys.WebForms.InitializeRequestEventArgs = function Sys$WebForms$InitializeRequestEventArgs(request, postBackElement) {
  84.     /// <param name="request" type="Sys.Net.WebRequest"></param>
  85.     /// <param name="postBackElement" domElement="true"></param>
  86.     var e = Function._validateParams(arguments, [
  87.         {name: "request", type: Sys.Net.WebRequest},
  88.         {name: "postBackElement", domElement: true}
  89.     ]);
  90.     if (e) throw e;
  91.     Sys.WebForms.InitializeRequestEventArgs.initializeBase(this);
  92.     this._request = request;
  93.     this._postBackElement = postBackElement;
  94. }
  95.     function Sys$WebForms$InitializeRequestEventArgs$get_postBackElement() {
  96.         /// <value domElement="true"></value>
  97.         if (arguments.length !== 0) throw Error.parameterCount();
  98.         return this._postBackElement;
  99.     }
  100.     function Sys$WebForms$InitializeRequestEventArgs$get_request() {
  101.         /// <value type="Sys.Net.WebRequest"></value>
  102.         if (arguments.length !== 0) throw Error.parameterCount();
  103.         return this._request;
  104.     }
  105. Sys.WebForms.InitializeRequestEventArgs.prototype = {
  106.     get_postBackElement: Sys$WebForms$InitializeRequestEventArgs$get_postBackElement,
  107.     get_request: Sys$WebForms$InitializeRequestEventArgs$get_request
  108. }
  109. Sys.WebForms.InitializeRequestEventArgs.registerClass('Sys.WebForms.InitializeRequestEventArgs', Sys.CancelEventArgs);
  110. Sys.WebForms.PageLoadedEventArgs = function Sys$WebForms$PageLoadedEventArgs(panelsUpdated, panelsCreated, dataItems) {
  111.     /// <param name="panelsUpdated" type="Array"></param>
  112.     /// <param name="panelsCreated" type="Array"></param>
  113.     /// <param name="dataItems" type="Object" mayBeNull="true"></param>
  114.     var e = Function._validateParams(arguments, [
  115.         {name: "panelsUpdated", type: Array},
  116.         {name: "panelsCreated", type: Array},
  117.         {name: "dataItems", type: Object, mayBeNull: true}
  118.     ]);
  119.     if (e) throw e;
  120.     Sys.WebForms.PageLoadedEventArgs.initializeBase(this);
  121.     this._panelsUpdated = panelsUpdated;
  122.     this._panelsCreated = panelsCreated;
  123.         this._dataItems = dataItems || new Object();
  124. }
  125.     function Sys$WebForms$PageLoadedEventArgs$get_dataItems() {
  126.         /// <value type="Object"></value>
  127.         if (arguments.length !== 0) throw Error.parameterCount();
  128.         return this._dataItems;
  129.     }
  130.     function Sys$WebForms$PageLoadedEventArgs$get_panelsCreated() {
  131.         /// <value type="Array"></value>
  132.         if (arguments.length !== 0) throw Error.parameterCount();
  133.         return this._panelsCreated;
  134.     }
  135.     function Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated() {
  136.         /// <value type="Array"></value>
  137.         if (arguments.length !== 0) throw Error.parameterCount();
  138.         return this._panelsUpdated;
  139.     }
  140. Sys.WebForms.PageLoadedEventArgs.prototype = {
  141.     get_dataItems: Sys$WebForms$PageLoadedEventArgs$get_dataItems,
  142.     get_panelsCreated: Sys$WebForms$PageLoadedEventArgs$get_panelsCreated,
  143.     get_panelsUpdated: Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated
  144. }
  145. Sys.WebForms.PageLoadedEventArgs.registerClass('Sys.WebForms.PageLoadedEventArgs', Sys.EventArgs);
  146. Sys.WebForms.PageLoadingEventArgs = function Sys$WebForms$PageLoadingEventArgs(panelsUpdating, panelsDeleting, dataItems) {
  147.     /// <param name="panelsUpdating" type="Array"></param>
  148.     /// <param name="panelsDeleting" type="Array"></param>
  149.     /// <param name="dataItems" type="Object" mayBeNull="true"></param>
  150.     var e = Function._validateParams(arguments, [
  151.         {name: "panelsUpdating", type: Array},
  152.         {name: "panelsDeleting", type: Array},
  153.         {name: "dataItems", type: Object, mayBeNull: true}
  154.     ]);
  155.     if (e) throw e;
  156.     Sys.WebForms.PageLoadingEventArgs.initializeBase(this);
  157.     this._panelsUpdating = panelsUpdating;
  158.     this._panelsDeleting = panelsDeleting;
  159.         this._dataItems = dataItems || new Object();
  160. }
  161.     function Sys$WebForms$PageLoadingEventArgs$get_dataItems() {
  162.         /// <value type="Object"></value>
  163.         if (arguments.length !== 0) throw Error.parameterCount();
  164.         return this._dataItems;
  165.     }
  166.     function Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting() {
  167.         /// <value type="Array"></value>
  168.         if (arguments.length !== 0) throw Error.parameterCount();
  169.         return this._panelsDeleting;
  170.     }
  171.     function Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating() {
  172.         /// <value type="Array"></value>
  173.         if (arguments.length !== 0) throw Error.parameterCount();
  174.         return this._panelsUpdating;
  175.     }
  176. Sys.WebForms.PageLoadingEventArgs.prototype = {
  177.     get_dataItems: Sys$WebForms$PageLoadingEventArgs$get_dataItems,
  178.     get_panelsDeleting: Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting,
  179.     get_panelsUpdating: Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating
  180. }
  181. Sys.WebForms.PageLoadingEventArgs.registerClass('Sys.WebForms.PageLoadingEventArgs', Sys.EventArgs);
  182. Sys.WebForms.PageRequestManager = function Sys$WebForms$PageRequestManager() {
  183.     this._form = null;
  184.     this._updatePanelIDs = null;
  185.     this._updatePanelClientIDs = null;
  186.     this._oldUpdatePanelIDs = null;
  187.     this._childUpdatePanelIDs = null;
  188.     this._panelsToRefreshIDs = null;
  189.     this._updatePanelHasChildrenAsTriggers = null;
  190.     this._asyncPostBackControlIDs = null;
  191.     this._asyncPostBackControlClientIDs = null;
  192.     this._postBackControlIDs = null;
  193.     this._postBackControlClientIDs = null;
  194.     this._scriptManagerID = null;
  195.     this._pageLoadedHandler = null;
  196.     this._additionalInput = null;
  197.     this._onsubmit = null;
  198.     this._onSubmitStatements = [];
  199.     this._originalDoPostBack = null;
  200.     this._postBackSettings = null;
  201.     this._request = null;
  202.     this._onFormSubmitHandler = null;
  203.     this._onFormElementClickHandler = null;
  204.     this._onWindowUnloadHandler = null;
  205.     this._asyncPostBackTimeout = null;
  206.     this._controlIDToFocus = null;
  207.     this._scrollPosition = null;
  208.     this._dataItems = null;
  209.     this._response = null;
  210.     this._processingRequest = false;
  211.     this._scriptDisposes = {};
  212. }
  213.     function Sys$WebForms$PageRequestManager$_get_eventHandlerList() {
  214.         if (!this._events) {
  215.             this._events = new Sys.EventHandlerList();
  216.         }
  217.         return this._events;
  218.     }
  219.     function Sys$WebForms$PageRequestManager$get_isInAsyncPostBack() {
  220.         /// <value type="Boolean"></value>
  221.         if (arguments.length !== 0) throw Error.parameterCount();
  222.         return this._request !== null;
  223.     }
  224.     function Sys$WebForms$PageRequestManager$add_beginRequest(handler) {
  225.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  226.         if (e) throw e;
  227.         this._get_eventHandlerList().addHandler("beginRequest", handler);
  228.     }
  229.     function Sys$WebForms$PageRequestManager$remove_beginRequest(handler) {
  230.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  231.         if (e) throw e;
  232.         this._get_eventHandlerList().removeHandler("beginRequest", handler);
  233.     }
  234.     function Sys$WebForms$PageRequestManager$add_endRequest(handler) {
  235.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  236.         if (e) throw e;
  237.         this._get_eventHandlerList().addHandler("endRequest", handler);
  238.     }
  239.     function Sys$WebForms$PageRequestManager$remove_endRequest(handler) {
  240.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  241.         if (e) throw e;
  242.         this._get_eventHandlerList().removeHandler("endRequest", handler);
  243.     }
  244.     function Sys$WebForms$PageRequestManager$add_initializeRequest(handler) {
  245.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  246.         if (e) throw e;
  247.         this._get_eventHandlerList().addHandler("initializeRequest", handler);
  248.     }
  249.     function Sys$WebForms$PageRequestManager$remove_initializeRequest(handler) {
  250.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  251.         if (e) throw e;
  252.         this._get_eventHandlerList().removeHandler("initializeRequest", handler);
  253.     }
  254.     function Sys$WebForms$PageRequestManager$add_pageLoaded(handler) {
  255.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  256.         if (e) throw e;
  257.         this._get_eventHandlerList().addHandler("pageLoaded", handler);
  258.     }
  259.     function Sys$WebForms$PageRequestManager$remove_pageLoaded(handler) {
  260.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  261.         if (e) throw e;
  262.         this._get_eventHandlerList().removeHandler("pageLoaded", handler);
  263.     }
  264.     function Sys$WebForms$PageRequestManager$add_pageLoading(handler) {
  265.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  266.         if (e) throw e;
  267.         this._get_eventHandlerList().addHandler("pageLoading", handler);
  268.     }
  269.     function Sys$WebForms$PageRequestManager$remove_pageLoading(handler) {
  270.         var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
  271.         if (e) throw e;
  272.         this._get_eventHandlerList().removeHandler("pageLoading", handler);
  273.     }
  274.     function Sys$WebForms$PageRequestManager$abortPostBack() {
  275.         if (!this._processingRequest && this._request) {
  276.             this._request.get_executor().abort();
  277.             this._request = null;
  278.         }
  279.     }
  280.     function Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError() {
  281.                 var displayMessage = "Sys.WebForms.PageRequestManagerTimeoutException: " + Sys.WebForms.Res.PRM_TimeoutError;
  282.         var e = Error.create(displayMessage, {name: 'Sys.WebForms.PageRequestManagerTimeoutException'});
  283.         e.popStackFrame();
  284.         return e;
  285.     }
  286.     function Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError(httpStatusCode, message) {
  287.                 var displayMessage = message || ("Sys.WebForms.PageRequestManagerServerErrorException: " + String.format(Sys.WebForms.Res.PRM_ServerError, httpStatusCode));
  288.         var e = Error.create(displayMessage, {
  289.             name: 'Sys.WebForms.PageRequestManagerServerErrorException',
  290.             httpStatusCode: httpStatusCode
  291.         });
  292.         e.popStackFrame();
  293.         return e;
  294.     }
  295.     function Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError(parserErrorMessage) {
  296.                 var displayMessage = "Sys.WebForms.PageRequestManagerParserErrorException: " + String.format(Sys.WebForms.Res.PRM_ParserError, parserErrorMessage);
  297.         var e = Error.create(displayMessage, {name: 'Sys.WebForms.PageRequestManagerParserErrorException'});
  298.         e.popStackFrame();
  299.         return e;
  300.     }
  301.     function Sys$WebForms$PageRequestManager$_createPostBackSettings(async, panelID, sourceElement) {
  302.         return { async:async, panelID:panelID, sourceElement:sourceElement };
  303.     }
  304.     function Sys$WebForms$PageRequestManager$_convertToClientIDs(source, destinationIDs, destinationClientIDs) {
  305.         if (source) {
  306.             for (var i = 0; i < source.length; i++) {
  307.                 Array.add(destinationIDs, source[i]);
  308.                 Array.add(destinationClientIDs, this._uniqueIDToClientID(source[i]));
  309.             }
  310.         }
  311.     }
  312.     function Sys$WebForms$PageRequestManager$_decodeString(encodedValue) {
  313.         return encodedValue.replace(/\u00FF\/g, "u0000").replace(/u00FFu00FF/g, "u00FF");
  314.     }
  315.     function Sys$WebForms$PageRequestManager$_destroyTree(element) {
  316.                 if (element.nodeType === 1) {
  317.                                     var childNodes = element.childNodes;
  318.             for (var i = childNodes.length - 1; i >= 0; i--) {
  319.                 var node = childNodes[i];
  320.                 if (node.nodeType === 1) {
  321.                     if (node.dispose && typeof(node.dispose) === "function") {
  322.                         node.dispose();
  323.                     }
  324.                     else if (node.control && typeof(node.control.dispose) === "function") {
  325.                         node.control.dispose();
  326.                     }
  327.                     var behaviors = Sys.UI.Behavior.getBehaviors(node);
  328.                     for (var j = behaviors.length - 1; j >= 0; j--) {
  329.                         behaviors[j].dispose();
  330.                     }
  331.                     this._destroyTree(node);
  332.                 }
  333.             }
  334.         }
  335.     }
  336.     function Sys$WebForms$PageRequestManager$dispose() {
  337.         if (this._form) {
  338.             Sys.UI.DomEvent.removeHandler(this._form, 'submit', this._onFormSubmitHandler);
  339.             Sys.UI.DomEvent.removeHandler(this._form, 'click', this._onFormElementClickHandler);
  340.             Sys.UI.DomEvent.removeHandler(window, 'unload', this._onWindowUnloadHandler);
  341.             Sys.UI.DomEvent.removeHandler(window, 'load', this._pageLoadedHandler);
  342.         }
  343.         if (this._originalDoPostBack) {
  344.             window.__doPostBack = this._originalDoPostBack;
  345.             this._originalDoPostBack = null;
  346.         }
  347.         this._form = null;
  348.         this._updatePanelIDs = null;
  349.         this._oldUpdatePanelIDs = null;
  350.         this._childUpdatePanelIDs = null;
  351.         this._updatePanelClientIDs = null;
  352.         this._asyncPostBackControlIDs = null;
  353.         this._asyncPostBackControlClientIDs = null;
  354.         this._postBackControlIDs = null;
  355.         this._postBackControlClientIDs = null;
  356.         this._asyncPostBackTimeout = null;
  357.         this._scrollPosition = null;
  358.         this._dataItems = null;
  359.     }
  360.     function Sys$WebForms$PageRequestManager$_doPostBack(eventTarget, eventArgument) {
  361.         this._additionalInput = null;
  362.         var form = this._form;
  363.         if (form.action !== form._initialAction) {
  364.                                     this._postBackSettings = this._createPostBackSettings(false, null, null);
  365.         }
  366.         else {
  367.                         var clientID = this._uniqueIDToClientID(eventTarget);
  368.             var postBackElement = document.getElementById(clientID);
  369.             if (!postBackElement) {
  370.                                                                                 if (Array.contains(this._asyncPostBackControlIDs, eventTarget)) {
  371.                                         this._postBackSettings = this._createPostBackSettings(true, this._scriptManagerID + '|' + eventTarget, null);
  372.                 }
  373.                 else {
  374.                     if (Array.contains(this._postBackControlIDs, eventTarget)) {
  375.                                                 this._postBackSettings = this._createPostBackSettings(false, null, null);
  376.                     }
  377.                     else {
  378.                                                                                                 var nearestUniqueIDMatch = this._findNearestElement(eventTarget);
  379.                         if (nearestUniqueIDMatch) {
  380.                                                                                     this._postBackSettings = this._getPostBackSettings(nearestUniqueIDMatch, eventTarget);
  381.                         }
  382.                         else {
  383.                                                                                     this._postBackSettings = this._createPostBackSettings(false, null, null);
  384.                         }
  385.                     }
  386.                 }
  387.             }
  388.             else {
  389.                                                 this._postBackSettings = this._getPostBackSettings(postBackElement, eventTarget);
  390.             }
  391.         }
  392.         if (!this._postBackSettings.async) {
  393.                                     form.onsubmit = this._onsubmit;
  394.             this._originalDoPostBack(eventTarget, eventArgument);
  395.             form.onsubmit = null;
  396.             return;
  397.         }
  398.         form.__EVENTTARGET.value = eventTarget;
  399.         form.__EVENTARGUMENT.value = eventArgument;
  400.         this._onFormSubmit();
  401.     }
  402.     function Sys$WebForms$PageRequestManager$_elementContains(container, element) {
  403.         while (element) {
  404.             if (element === container) {
  405.                 return true;
  406.             }
  407.             element = element.parentNode;
  408.         }
  409.         return false;
  410.     }
  411.     function Sys$WebForms$PageRequestManager$_endPostBack(error, response) {
  412.         this._processingRequest = false;
  413.         this._request = null;
  414.         this._additionalInput = null;
  415.         var handler = this._get_eventHandlerList().getHandler("endRequest");
  416.         var errorHandled = false;
  417.         if (handler) {
  418.             var eventArgs = new Sys.WebForms.EndRequestEventArgs(error, this._dataItems, response);
  419.             handler(this, eventArgs);
  420.             errorHandled = eventArgs.get_errorHandled();
  421.         }
  422.         this._dataItems = null;
  423.         if (error && !errorHandled) {
  424.             alert(error.message);
  425.         }
  426.     }
  427.     function Sys$WebForms$PageRequestManager$_findNearestElement(uniqueID) {
  428.         while (uniqueID.length > 0) {
  429.             var clientID = this._uniqueIDToClientID(uniqueID);
  430.             var element = document.getElementById(clientID);
  431.             if (element) {
  432.                 return element;
  433.             }
  434.             var indexOfLastDollar = uniqueID.lastIndexOf('$');
  435.             if (indexOfLastDollar === -1) {
  436.                 return null;
  437.             }
  438.             uniqueID = uniqueID.substring(0, indexOfLastDollar);
  439.         }
  440.         return null;
  441.     }
  442.     function Sys$WebForms$PageRequestManager$_findText(text, location) {
  443.         var startIndex = Math.max(0, location - 20);
  444.         var endIndex = Math.min(text.length, location + 20);
  445.         return text.substring(startIndex, endIndex);
  446.     }
  447.     function Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs(initialLoad) {
  448.                                                                                                                                         
  449.         var updated = [];
  450.         var created = [];
  451.                 var oldIDs = this._oldUpdatePanelIDs || [];         var newIDs = this._updatePanelIDs;         var childIDs = this._childUpdatePanelIDs || [];         var refreshedIDs = this._panelsToRefreshIDs || []; 
  452.                 for (var i = 0; i < refreshedIDs.length; i++) {
  453.             Array.add(updated, document.getElementById(this._uniqueIDToClientID(refreshedIDs[i])));
  454.         }
  455.                         for (var i = 0; i < newIDs.length; i++) {
  456.             if (initialLoad || Array.indexOf(childIDs, newIDs[i]) !== -1) {
  457.                 Array.add(created, document.getElementById(this._uniqueIDToClientID(newIDs[i])));
  458.             }
  459.         }
  460.         return new Sys.WebForms.PageLoadedEventArgs(updated, created, this._dataItems);
  461.     }
  462.     function Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs() {
  463.                                                                                                                                         
  464.         var updated = [];
  465.         var deleted = [];
  466.         var oldIDs = this._oldUpdatePanelIDs;
  467.         var newIDs = this._updatePanelIDs;
  468.         var childIDs = this._childUpdatePanelIDs;
  469.         var refreshedIDs = this._panelsToRefreshIDs;
  470.                 for (var i = 0; i < refreshedIDs.length; i++) {
  471.             Array.add(updated, document.getElementById(this._uniqueIDToClientID(refreshedIDs[i])));
  472.         }
  473.                 for (var i = 0; i < oldIDs.length; i++) {
  474.             if (Array.indexOf(refreshedIDs, oldIDs[i]) === -1 &&
  475.                 (Array.indexOf(newIDs, oldIDs[i]) === -1 || Array.indexOf(childIDs, oldIDs[i]) > -1)) {
  476.                 Array.add(deleted, document.getElementById(this._uniqueIDToClientID(oldIDs[i])));
  477.             }
  478.         }
  479.         return new Sys.WebForms.PageLoadingEventArgs(updated, deleted, this._dataItems);
  480.     }
  481.     function Sys$WebForms$PageRequestManager$_getPostBackSettings(element, elementUniqueID) {
  482.         var originalElement = element;
  483.                         var proposedSettings = null;
  484.                         while (element) {
  485.             if (element.id) {
  486.                                 if (!proposedSettings && Array.contains(this._asyncPostBackControlClientIDs, element.id)) {
  487.                                         proposedSettings = this._createPostBackSettings(true, this._scriptManagerID + '|' + elementUniqueID, originalElement);
  488.                 }
  489.                 else {
  490.                     if (!proposedSettings && Array.contains(this._postBackControlClientIDs, element.id)) {
  491.                                                 return this._createPostBackSettings(false, null, null);
  492.                     }
  493.                     else {
  494.                         var indexOfPanel = Array.indexOf(this._updatePanelClientIDs, element.id);
  495.                         if (indexOfPanel !== -1) {
  496.                                                         if (this._updatePanelHasChildrenAsTriggers[indexOfPanel]) {
  497.                                                                 
  498.                                                                                                                                 return this._createPostBackSettings(true, this._updatePanelIDs[indexOfPanel] + '|' + elementUniqueID, originalElement);
  499.                             }
  500.                             else {
  501.                                                                                                 return this._createPostBackSettings(true, this._scriptManagerID + '|' + elementUniqueID, originalElement);
  502.                             }
  503.                         }
  504.                     }
  505.                 }
  506.                                 if (!proposedSettings && this._matchesParentIDInList(element.id, this._asyncPostBackControlClientIDs)) {
  507.                                         proposedSettings = this._createPostBackSettings(true, this._scriptManagerID + '|' + elementUniqueID, originalElement);
  508.                 }
  509.                 else {
  510.                     if (!proposedSettings && this._matchesParentIDInList(element.id, this._postBackControlClientIDs)) {
  511.                                                 return this._createPostBackSettings(false, null, null);
  512.                     }
  513.                 }
  514.             }
  515.             element = element.parentNode;
  516.         }
  517.                                                 if (!proposedSettings) {
  518.                         return this._createPostBackSettings(false, null, null);
  519.         }
  520.         else {
  521.             return proposedSettings;
  522.         }
  523.     }
  524.     function Sys$WebForms$PageRequestManager$_getScrollPosition() {
  525.         var d = document.documentElement;
  526.         if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))) {
  527.             return {
  528.                 x: d.scrollLeft,
  529.                 y: d.scrollTop
  530.             };
  531.         }
  532.         else {
  533.             d = document.body;
  534.             if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))) {
  535.                 return {
  536.                     x: d.scrollLeft,
  537.                     y: d.scrollTop
  538.                 };
  539.             }
  540.             else {
  541.                 if (this._validPosition(window.pageXOffset) || this._validPosition(window.pageYOffset)) {
  542.                     return {
  543.                         x: window.pageXOffset,
  544.                         y: window.pageYOffset
  545.                     };
  546.                 }
  547.                 else {
  548.                     return {
  549.                         x: 0,
  550.                         y: 0
  551.                     };
  552.                 }
  553.             }
  554.         }
  555.     }
  556.     function Sys$WebForms$PageRequestManager$_initializeInternal(scriptManagerID, formElement) {
  557.         this._scriptManagerID = scriptManagerID;
  558.         this._form = formElement;
  559.         
  560.                 this._form._initialAction = this._form.action;
  561.         this._onsubmit = this._form.onsubmit;
  562.         this._form.onsubmit = null;
  563.         this._onFormSubmitHandler = Function.createDelegate(this, this._onFormSubmit);
  564.         this._onFormElementClickHandler = Function.createDelegate(this, this._onFormElementClick);
  565.         this._onWindowUnloadHandler = Function.createDelegate(this, this._onWindowUnload);
  566.         Sys.UI.DomEvent.addHandler(this._form, 'submit', this._onFormSubmitHandler);
  567.         Sys.UI.DomEvent.addHandler(this._form, 'click', this._onFormElementClickHandler);
  568.         Sys.UI.DomEvent.addHandler(window, 'unload', this._onWindowUnloadHandler);
  569.         this._originalDoPostBack = window.__doPostBack;
  570.                 if (this._originalDoPostBack) {
  571.             window.__doPostBack = Function.createDelegate(this, this._doPostBack);
  572.         }
  573.         this._pageLoadedHandler = Function.createDelegate(this, this._pageLoadedInitialLoad);
  574.         Sys.UI.DomEvent.addHandler(window, 'load', this._pageLoadedHandler);
  575.     }
  576.     function Sys$WebForms$PageRequestManager$_matchesParentIDInList(clientID, parentIDList) {
  577.         for (var i = 0; i < parentIDList.length; i++) {
  578.             if (clientID.startsWith(parentIDList[i] + "_")) {
  579.                 return true;
  580.             }
  581.         }
  582.         return false;
  583.     }
  584.     function Sys$WebForms$PageRequestManager$_onFormElementClick(evt) {
  585.         var element = evt.target;
  586.         if (element.disabled) {
  587.             return;
  588.         }
  589.                 this._postBackSettings = this._getPostBackSettings(element, element.name);
  590.         if (element.name) {
  591.             if (element.tagName === 'INPUT') {
  592.                 var type = element.type;
  593.                 if (type === 'submit') {
  594.                     this._additionalInput = element.name + '=' + encodeURIComponent(element.value);
  595.                 }
  596.                 else if (type === 'image') {
  597.                     var x = evt.offsetX;
  598.                     var y = evt.offsetY;
  599.                     this._additionalInput = element.name + '.x=' + x + '&' + element.name + '.y=' + y;
  600.                 }
  601.             }
  602.             else if ((element.tagName === 'BUTTON') && (element.name.length !== 0) && (element.type === 'submit')) {
  603.                 this._additionalInput = element.name + '=' + encodeURIComponent(element.value);
  604.             }
  605.         }
  606.     }
  607.     function Sys$WebForms$PageRequestManager$_onFormSubmit(evt) {
  608.         var continueSubmit = true;
  609.                 if (this._onsubmit) {
  610.             continueSubmit = this._onsubmit();
  611.         }
  612.                 if (continueSubmit) {
  613.             for (var i = 0; i < this._onSubmitStatements.length; i++) {
  614.                 if (!this._onSubmitStatements[i]()) {
  615.                     continueSubmit = false;
  616.                     break;
  617.                 }
  618.             }
  619.         }
  620.         if (!continueSubmit) {
  621.             if (evt) {
  622.                 evt.preventDefault();
  623.             }
  624.             return;
  625.         }
  626.         var form = this._form;
  627.         if (form.action !== form._initialAction) {
  628.                                     return;
  629.         }
  630.                         if (!this._postBackSettings.async) {
  631.             return;
  632.         }
  633.                 var formBody = new Sys.StringBuilder();
  634.         formBody.append(this._scriptManagerID + '=' + this._postBackSettings.panelID + '&');
  635.         var count = form.elements.length;
  636.         for (var i = 0; i < count; i++) {
  637.             var element = form.elements[i];
  638.             var name = element.name;
  639.             if (typeof(name) === "undefined" || (name === null) || (name.length === 0)) {
  640.                 continue;
  641.             }
  642.             var tagName = element.tagName;
  643.             if (tagName === 'INPUT') {
  644.                 var type = element.type;
  645.                 if ((type === 'text') ||
  646.                     (type === 'password') ||
  647.                     (type === 'hidden') ||
  648.                     (((type === 'checkbox') || (type === 'radio')) && element.checked)) {
  649.                     formBody.append(name);
  650.                     formBody.append('=');
  651.                     formBody.append(encodeURIComponent(element.value));
  652.                     formBody.append('&');
  653.                 }
  654.             }
  655.             else if (tagName === 'SELECT') {
  656.                 var optionCount = element.options.length;
  657.                 for (var j = 0; j < optionCount; j++) {
  658.                     var option = element.options[j];
  659.                     if (option.selected) {
  660.                         formBody.append(name);
  661.                         formBody.append('=');
  662.                         formBody.append(encodeURIComponent(option.value));
  663.                         formBody.append('&');
  664.                     }
  665.                 }
  666.             }
  667.             else if (tagName === 'TEXTAREA') {
  668.                 formBody.append(name);
  669.                 formBody.append('=');
  670.                 formBody.append(encodeURIComponent(element.value));
  671.                 formBody.append('&');
  672.             }
  673.         }
  674.         if (this._additionalInput) {
  675.             formBody.append(this._additionalInput);
  676.             this._additionalInput = null;
  677.         }
  678.         var request = new Sys.Net.WebRequest();
  679.         request.set_url(form.action);
  680.         request.get_headers()['X-MicrosoftAjax'] = 'Delta=true';
  681.         request.get_headers()['Cache-Control'] = 'no-cache';
  682.         request.set_timeout(this._asyncPostBackTimeout);
  683.         request.add_completed(Function.createDelegate(this, this._onFormSubmitCompleted));
  684.         request.set_body(formBody.toString());
  685.         var handler = this._get_eventHandlerList().getHandler("initializeRequest");
  686.         if (handler) {
  687.             var eventArgs = new Sys.WebForms.InitializeRequestEventArgs(request, this._postBackSettings.sourceElement);
  688.             handler(this, eventArgs);
  689.             continueSubmit = !eventArgs.get_cancel();
  690.         }
  691.         if (!continueSubmit) {
  692.             if (evt) {
  693.                 evt.preventDefault();
  694.             }
  695.             return;
  696.         }
  697.                 this._scrollPosition = this._getScrollPosition();
  698.                                 this.abortPostBack();
  699.         handler = this._get_eventHandlerList().getHandler("beginRequest");
  700.         if (handler) {
  701.             var eventArgs = new Sys.WebForms.BeginRequestEventArgs(request, this._postBackSettings.sourceElement);
  702.             handler(this, eventArgs);
  703.         }
  704.         this._request = request;
  705.         request.invoke();
  706.                 if (evt) {
  707.             evt.preventDefault();
  708.         }
  709.     }
  710.     function Sys$WebForms$PageRequestManager$_onFormSubmitCompleted(sender, eventArgs) {
  711.         this._processingRequest = true;
  712.         var delimitByLengthDelimiter = '|';
  713.         
  714.         if (sender.get_timedOut()) {
  715.             this._endPostBack(this._createPageRequestManagerTimeoutError(), sender);
  716.             return;
  717.         }
  718.         if (sender.get_aborted()) {
  719.             this._endPostBack(null, sender);
  720.             return;
  721.         }
  722.                 if (!this._request || sender.get_webRequest() !== this._request) {
  723.             return;
  724.         }
  725.         var errorMessage;
  726.         var delta = [];
  727.                 if (sender.get_statusCode() !== 200) {
  728.             this._endPostBack(this._createPageRequestManagerServerError(sender.get_statusCode()), sender);
  729.             return;
  730.         }
  731.                         var reply = sender.get_responseData();
  732.         var delimiterIndex, len, type, id, content;
  733.         var replyIndex = 0;
  734.         var parserErrorDetails = null;
  735.         while (replyIndex < reply.length) {
  736.                         delimiterIndex = reply.indexOf(delimitByLengthDelimiter, replyIndex);
  737.             if (delimiterIndex === -1) {
  738.                 parserErrorDetails = this._findText(reply, replyIndex);
  739.                 break;
  740.             }
  741.             len = parseInt(reply.substring(replyIndex, delimiterIndex), 10);
  742.             if ((len % 1) !== 0) {
  743.                 parserErrorDetails = this._findText(reply, replyIndex);
  744.                 break;
  745.             }
  746.             replyIndex = delimiterIndex + 1;
  747.                         delimiterIndex = reply.indexOf(delimitByLengthDelimiter, replyIndex);
  748.             if (delimiterIndex === -1) {
  749.                 parserErrorDetails = this._findText(reply, replyIndex);
  750.                 break;
  751.             }
  752.             type = reply.substring(replyIndex, delimiterIndex);
  753.             replyIndex = delimiterIndex + 1;
  754.                         delimiterIndex = reply.indexOf(delimitByLengthDelimiter, replyIndex);
  755.             if (delimiterIndex === -1) {
  756.                 parserErrorDetails = this._findText(reply, replyIndex);
  757.                 break;
  758.             }
  759.             id = reply.substring(replyIndex, delimiterIndex);
  760.             replyIndex = delimiterIndex + 1;
  761.                         if ((replyIndex + len) >= reply.length) {
  762.                 parserErrorDetails = this._findText(reply, reply.length);
  763.                 break;
  764.             }
  765.             content = this._decodeString(reply.substr(replyIndex, len));
  766.             replyIndex += len;
  767.                         if (reply.charAt(replyIndex) !== delimitByLengthDelimiter) {
  768.                 parserErrorDetails = this._findText(reply, replyIndex);
  769.                 break;
  770.             }
  771.             replyIndex++;
  772.             Array.add(delta, {type: type, id: id, content: content});
  773.         }
  774.                 if (parserErrorDetails) {
  775.             this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_ParserErrorDetails, parserErrorDetails)), sender);
  776.             return;
  777.         }
  778.         var updatePanelNodes = [];
  779.         var hiddenFieldNodes = [];
  780.         var arrayDeclarationNodes = [];
  781.         var scriptBlockNodes = [];
  782.         var expandoNodes = [];
  783.         var onSubmitNodes = [];
  784.         var dataItemNodes = [];
  785.         var dataItemJsonNodes = [];
  786.         var scriptDisposeNodes = [];
  787.         var asyncPostBackControlIDsNode, postBackControlIDsNode,
  788.             updatePanelIDsNode, asyncPostBackTimeoutNode,
  789.             childUpdatePanelIDsNode, panelsToRefreshNode, formActionNode;
  790.                 for (var i = 0; i < delta.length; i++) {
  791.             var deltaNode = delta[i];
  792.             switch (deltaNode.type) {
  793.                 case "updatePanel":
  794.                     Array.add(updatePanelNodes, deltaNode);
  795.                     break;
  796.                 case "hiddenField":
  797.                     Array.add(hiddenFieldNodes, deltaNode);
  798.                     break;
  799.                 case "arrayDeclaration":
  800.                     Array.add(arrayDeclarationNodes, deltaNode);
  801.                     break;
  802.                 case "scriptBlock":
  803.                     Array.add(scriptBlockNodes, deltaNode);
  804.                     break;
  805.                 case "expando":
  806.                     Array.add(expandoNodes, deltaNode);
  807.                     break;
  808.                 case "onSubmit":
  809.                     Array.add(onSubmitNodes, deltaNode);
  810.                     break;
  811.                 case "asyncPostBackControlIDs":
  812.                     asyncPostBackControlIDsNode = deltaNode;
  813.                     break;
  814.                 case "postBackControlIDs":
  815.                     postBackControlIDsNode = deltaNode;
  816.                     break;
  817.                 case "updatePanelIDs":
  818.                     updatePanelIDsNode = deltaNode;
  819.                     break;
  820.                 case "asyncPostBackTimeout":
  821.                     asyncPostBackTimeoutNode = deltaNode;
  822.                     break;
  823.                 case "childUpdatePanelIDs":
  824.                     childUpdatePanelIDsNode = deltaNode;
  825.                     break;
  826.                 case "panelsToRefreshIDs":
  827.                     panelsToRefreshNode = deltaNode;
  828.                     break;
  829.                 case "formAction":
  830.                     formActionNode = deltaNode;
  831.                     break;
  832.                 case "dataItem":
  833.                     Array.add(dataItemNodes, deltaNode);
  834.                     break;
  835.                 case "dataItemJson":
  836.                     Array.add(dataItemJsonNodes, deltaNode);
  837.                     break;
  838.                 case "scriptDispose":
  839.                     Array.add(scriptDisposeNodes, deltaNode);
  840.                     break;
  841.                 case "pageRedirect":
  842.                     window.location.href = deltaNode.content;
  843.                     return;
  844.                 case "error":
  845.                                         this._endPostBack(this._createPageRequestManagerServerError(Number.parseInvariant(deltaNode.id), deltaNode.content), sender);
  846.                     return;
  847.                 case "pageTitle":
  848.                     document.title = deltaNode.content;
  849.                     break;
  850.                 case "focus":
  851.                     this._controlIDToFocus = deltaNode.content;
  852.                     break;
  853.                 default:
  854.                                         this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_UnknownToken, deltaNode.type)), sender);
  855.                     return;
  856.             }
  857.         }
  858.         var i;
  859.                 if (asyncPostBackControlIDsNode && postBackControlIDsNode &&
  860.             updatePanelIDsNode && panelsToRefreshNode &&
  861.             asyncPostBackTimeoutNode && childUpdatePanelIDsNode) {
  862.             this._oldUpdatePanelIDs = this._updatePanelIDs;
  863.             var childUpdatePanelIDsString = childUpdatePanelIDsNode.content;
  864.             this._childUpdatePanelIDs = childUpdatePanelIDsString.length ? childUpdatePanelIDsString.split(',') : [];
  865.             var asyncPostBackControlIDsArray = this._splitNodeIntoArray(asyncPostBackControlIDsNode);
  866.             var postBackControlIDsArray = this._splitNodeIntoArray(postBackControlIDsNode);
  867.             var updatePanelIDsArray = this._splitNodeIntoArray(updatePanelIDsNode);
  868.             this._panelsToRefreshIDs = this._splitNodeIntoArray(panelsToRefreshNode);
  869.                                                 for (i = 0; i < this._panelsToRefreshIDs.length; i++) {
  870.                 var panelClientID = this._uniqueIDToClientID(this._panelsToRefreshIDs[i]);
  871.                 if (!document.getElementById(panelClientID)) {
  872.                     this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel, panelClientID)), sender);
  873.                     return;
  874.                 }
  875.             }
  876.             var asyncPostBackTimeout = asyncPostBackTimeoutNode.content;
  877.             this._updateControls(updatePanelIDsArray, asyncPostBackControlIDsArray, postBackControlIDsArray, asyncPostBackTimeout);
  878.         }
  879.                 this._dataItems = {};
  880.         for (i = 0; i < dataItemNodes.length; i++) {
  881.             var dataItemNode = dataItemNodes[i];
  882.             this._dataItems[dataItemNode.id] = dataItemNode.content;
  883.         }
  884.         for (i = 0; i < dataItemJsonNodes.length; i++) {
  885.             var dataItemJsonNode = dataItemJsonNodes[i];
  886.             this._dataItems[dataItemJsonNode.id] = eval(dataItemJsonNode.content);
  887.         }
  888.         var handler = this._get_eventHandlerList().getHandler("pageLoading");
  889.         if (handler) {
  890.             handler(this, this._getPageLoadingEventArgs());
  891.         }
  892.                 if (formActionNode) {
  893.             this._form.action = formActionNode.content;
  894.                                                 this._form._initialAction = this._form.action;
  895.         }
  896.                                 for (i = 0; i < updatePanelNodes.length; i++) {
  897.             var deltaUpdatePanel = updatePanelNodes[i];
  898.             var deltaPanelID = deltaUpdatePanel.id;
  899.             var deltaPanelRendering = deltaUpdatePanel.content;
  900.             var updatePanelElement = document.getElementById(deltaPanelID);
  901.             if (!updatePanelElement) {
  902.                 this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel, deltaPanelID)), sender);
  903.                 return;
  904.             }
  905.             this._updatePanel(updatePanelElement, deltaPanelRendering);
  906.         }
  907.                                 for (i = 0; i < scriptDisposeNodes.length; i++) {
  908.             var disposePanelId = scriptDisposeNodes[i].id;
  909.             var disposeScript = scriptDisposeNodes[i].content;
  910.             this._registerDisposeScript(disposePanelId, disposeScript);
  911.         }
  912.                 for (i = 0; i < hiddenFieldNodes.length; i++) {
  913.             var id = hiddenFieldNodes[i].id;
  914.             var value = hiddenFieldNodes[i].content;
  915.             var hiddenFieldElement = document.getElementById(id);
  916.             if (!hiddenFieldElement) {
  917.                                 hiddenFieldElement = document.createElement('input');
  918.                 hiddenFieldElement.id = id;
  919.                 hiddenFieldElement.name = id;
  920.                 hiddenFieldElement.type = 'hidden';
  921.                 this._form.appendChild(hiddenFieldElement);
  922.             }
  923.             hiddenFieldElement.value = value;
  924.         }
  925.                 var arrayScript = '';
  926.         for (i = 0; i < arrayDeclarationNodes.length; i++) {
  927.             arrayScript += "Sys.WebForms.PageRequestManager._addArrayElement('" + arrayDeclarationNodes[i].id + "', " + arrayDeclarationNodes[i].content + ");rn";
  928.         }
  929.                 var expandoScript = '';
  930.         for (i = 0; i < expandoNodes.length; i++) {
  931.             var propertyReference = expandoNodes[i].id;
  932.             var propertyValue = expandoNodes[i].content;
  933.             expandoScript += propertyReference + " = " + propertyValue + "rn";
  934.         }
  935.                         Sys._ScriptLoader.readLoadedScripts();
  936.                                 Sys.Application.beginCreateComponents();
  937.         var scriptLoader = Sys._ScriptLoader.getInstance();
  938.                                         if (arrayScript.length) {
  939.             scriptLoader.queueScriptBlock(arrayScript);
  940.         }
  941.         if (expandoScript.length) {
  942.             scriptLoader.queueScriptBlock(expandoScript);
  943.         }
  944.         for (i = 0; i < scriptBlockNodes.length; i++) {
  945.             var scriptBlockType = scriptBlockNodes[i].id;
  946.             switch (scriptBlockType) {
  947.                 case "ScriptContentNoTags":
  948.                                         scriptLoader.queueScriptBlock(scriptBlockNodes[i].content);
  949.                     break;
  950.                 case "ScriptContentWithTags":
  951.                                         var scriptTagAttributes;
  952.                     eval("scriptTagAttributes = " + scriptBlockNodes[i].content);
  953.                                         if (scriptTagAttributes.src && Sys._ScriptLoader.isScriptLoaded(scriptTagAttributes.src)) {
  954.                         continue;
  955.                     }
  956.                     scriptLoader.queueCustomScriptTag(scriptTagAttributes);
  957.                     break;
  958.                 case "ScriptPath":
  959.                                         if (Sys._ScriptLoader.isScriptLoaded(scriptBlockNodes[i].content)) {
  960.                         continue;
  961.                     }
  962.                                         scriptLoader.queueScriptReference(scriptBlockNodes[i].content);
  963.                     break;
  964.             }
  965.         }
  966.                         var onSubmitStatementScript = '';
  967.         for (var i = 0; i < onSubmitNodes.length; i++) {
  968.             if (i === 0) {
  969.                 onSubmitStatementScript = 'Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, function() {rn';
  970.             }
  971.             onSubmitStatementScript += onSubmitNodes[i].content + "rn";
  972.         }
  973.         if (onSubmitStatementScript.length) {
  974.             onSubmitStatementScript += "rnreturn true;rn});rn";
  975.             scriptLoader.queueScriptBlock(onSubmitStatementScript);
  976.         }
  977.                 this._response = sender;
  978.                         scriptLoader.loadScripts(0, Function.createDelegate(this, this._scriptsLoadComplete), null, null);
  979.                     }
  980.     function Sys$WebForms$PageRequestManager$_onWindowUnload(evt) {
  981.         this.dispose();
  982.     }
  983.     function Sys$WebForms$PageRequestManager$_pageLoaded(initialLoad) {
  984.         var handler = this._get_eventHandlerList().getHandler("pageLoaded");
  985.         if (handler) {
  986.             handler(this, this._getPageLoadedEventArgs(initialLoad));
  987.         }
  988.         if (!initialLoad) {
  989.                                     Sys.Application.raiseLoad();
  990.         }
  991.     }
  992.     function Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad(evt) {
  993.         this._pageLoaded(true);
  994.     }
  995.     function Sys$WebForms$PageRequestManager$_registerDisposeScript(panelID, disposeScript) {
  996.         if (!this._scriptDisposes[panelID]) {
  997.             this._scriptDisposes[panelID] = [disposeScript];
  998.         }
  999.         else {
  1000.             Array.add(this._scriptDisposes[panelID], disposeScript);
  1001.         }
  1002.     }
  1003.     function Sys$WebForms$PageRequestManager$_scriptsLoadComplete() {
  1004.                         
  1005.                                                 if (window.__theFormPostData) {
  1006.             window.__theFormPostData = "";
  1007.         }
  1008.         if (window.__theFormPostCollection) {
  1009.             window.__theFormPostCollection = [];
  1010.         }
  1011.         if (window.WebForm_InitCallback) {
  1012.             window.WebForm_InitCallback();
  1013.         }
  1014.                 if (this._scrollPosition) {
  1015.                         if (window.scrollTo) {
  1016.                 window.scrollTo(this._scrollPosition.x, this._scrollPosition.y);
  1017.             }
  1018.             this._scrollPosition = null;
  1019.         }
  1020.         Sys.Application.endCreateComponents();
  1021.                 this._pageLoaded(false);
  1022.         this._endPostBack(null, this._response);
  1023.         this._response = null;
  1024.                 if (this._controlIDToFocus) {
  1025.             var focusTarget;
  1026.             var oldContentEditableSetting;
  1027.             if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
  1028.                                                                                 var targetControl = $get(this._controlIDToFocus);
  1029.                 var focusTarget = targetControl;
  1030.                                 if (targetControl && (!WebForm_CanFocus(targetControl))) {
  1031.                     focusTarget = WebForm_FindFirstFocusableChild(targetControl);
  1032.                 }
  1033.                                                 if (focusTarget && (typeof(focusTarget.contentEditable) !== "undefined")) {
  1034.                     oldContentEditableSetting = focusTarget.contentEditable;
  1035.                     focusTarget.contentEditable = false;
  1036.                 }
  1037.                 else {
  1038.                     focusTarget = null;
  1039.                 }
  1040.             }
  1041.             WebForm_AutoFocus(this._controlIDToFocus);
  1042.             if (focusTarget) {
  1043.                                 focusTarget.contentEditable = oldContentEditableSetting;
  1044.             }
  1045.             this._controlIDToFocus = null;
  1046.         }
  1047.     }
  1048.     function Sys$WebForms$PageRequestManager$_splitNodeIntoArray(node) {
  1049.         var str = node.content;
  1050.         var arr = str.length ? str.split(',') : [];
  1051.         return arr;
  1052.     }
  1053.     function Sys$WebForms$PageRequestManager$_uniqueIDToClientID(uniqueID) {
  1054.                 return uniqueID.replace(/$/g, '_');
  1055.     }
  1056.     function Sys$WebForms$PageRequestManager$_updateControls(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, asyncPostBackTimeout) {
  1057.         if (updatePanelIDs) {
  1058.                                                 this._updatePanelIDs = new Array(updatePanelIDs.length);
  1059.             this._updatePanelClientIDs = new Array(updatePanelIDs.length);
  1060.             this._updatePanelHasChildrenAsTriggers = new Array(updatePanelIDs.length);
  1061.             for (var i = 0; i < updatePanelIDs.length; i++) {
  1062.                 var realPanelID = updatePanelIDs[i].substr(1);
  1063.                 var childrenAsTriggers = (updatePanelIDs[i].charAt(0) === 't');
  1064.                                 this._updatePanelHasChildrenAsTriggers[i] = childrenAsTriggers;
  1065.                 this._updatePanelIDs[i] = realPanelID;
  1066.                 this._updatePanelClientIDs[i] = this._uniqueIDToClientID(realPanelID);
  1067.             }
  1068.             this._asyncPostBackTimeout = asyncPostBackTimeout * 1000;
  1069.         }
  1070.         else {
  1071.             this._updatePanelIDs = [];
  1072.             this._updatePanelClientIDs = [];
  1073.             this._updatePanelHasChildrenAsTriggers = [];
  1074.             this._asyncPostBackTimeout = 0;
  1075.         }
  1076.         this._asyncPostBackControlIDs = [];
  1077.         this._asyncPostBackControlClientIDs = [];
  1078.         this._convertToClientIDs(asyncPostBackControlIDs, this._asyncPostBackControlIDs, this._asyncPostBackControlClientIDs);
  1079.         this._postBackControlIDs = [];
  1080.         this._postBackControlClientIDs = [];
  1081.         this._convertToClientIDs(postBackControlIDs, this._postBackControlIDs, this._postBackControlClientIDs);
  1082.     }
  1083.     function Sys$WebForms$PageRequestManager$_updatePanel(updatePanelElement, rendering) {
  1084.         for (var updatePanelID in this._scriptDisposes) {
  1085.             if (this._elementContains(updatePanelElement, document.getElementById(updatePanelID))) {
  1086.                                 var disposeScripts = this._scriptDisposes[updatePanelID];
  1087.                 for (var i = 0; i < disposeScripts.length; i++) {
  1088.                     eval(disposeScripts[i]);
  1089.                 }
  1090.                                 delete this._scriptDisposes[updatePanelID];
  1091.             }
  1092.         }
  1093.         this._destroyTree(updatePanelElement);
  1094.                 updatePanelElement.innerHTML = rendering;
  1095.     }
  1096.     function Sys$WebForms$PageRequestManager$_validPosition(position) {
  1097.         return (typeof(position) !== "undefined") && (position !== null) && (position !== 0);
  1098.     }
  1099. Sys.WebForms.PageRequestManager.prototype = {
  1100.     _get_eventHandlerList: Sys$WebForms$PageRequestManager$_get_eventHandlerList,
  1101.     get_isInAsyncPostBack: Sys$WebForms$PageRequestManager$get_isInAsyncPostBack,
  1102.         add_beginRequest: Sys$WebForms$PageRequestManager$add_beginRequest,
  1103.     remove_beginRequest: Sys$WebForms$PageRequestManager$remove_beginRequest,
  1104.     add_endRequest: Sys$WebForms$PageRequestManager$add_endRequest,
  1105.     remove_endRequest: Sys$WebForms$PageRequestManager$remove_endRequest,
  1106.     add_initializeRequest: Sys$WebForms$PageRequestManager$add_initializeRequest,
  1107.     remove_initializeRequest: Sys$WebForms$PageRequestManager$remove_initializeRequest,
  1108.     add_pageLoaded: Sys$WebForms$PageRequestManager$add_pageLoaded,
  1109.     remove_pageLoaded: Sys$WebForms$PageRequestManager$remove_pageLoaded,
  1110.     add_pageLoading: Sys$WebForms$PageRequestManager$add_pageLoading,
  1111.     remove_pageLoading: Sys$WebForms$PageRequestManager$remove_pageLoading,
  1112.     abortPostBack: Sys$WebForms$PageRequestManager$abortPostBack,
  1113.     _createPageRequestManagerTimeoutError: Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError,
  1114.     _createPageRequestManagerServerError: Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError,
  1115.     _createPageRequestManagerParserError: Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError,
  1116.     _createPostBackSettings: Sys$WebForms$PageRequestManager$_createPostBackSettings,
  1117.     _convertToClientIDs: Sys$WebForms$PageRequestManager$_convertToClientIDs,
  1118.     _decodeString: Sys$WebForms$PageRequestManager$_decodeString,
  1119.     _destroyTree: Sys$WebForms$PageRequestManager$_destroyTree,
  1120.     dispose: Sys$WebForms$PageRequestManager$dispose,
  1121.         _doPostBack: Sys$WebForms$PageRequestManager$_doPostBack,
  1122.     _elementContains: Sys$WebForms$PageRequestManager$_elementContains,
  1123.     _endPostBack: Sys$WebForms$PageRequestManager$_endPostBack,
  1124.             _findNearestElement: Sys$WebForms$PageRequestManager$_findNearestElement,
  1125.     _findText: Sys$WebForms$PageRequestManager$_findText,
  1126.     _getPageLoadedEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs,
  1127.     _getPageLoadingEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs,
  1128.     _getPostBackSettings: Sys$WebForms$PageRequestManager$_getPostBackSettings,
  1129.     _getScrollPosition: Sys$WebForms$PageRequestManager$_getScrollPosition,
  1130.     _initializeInternal: Sys$WebForms$PageRequestManager$_initializeInternal,
  1131.     _matchesParentIDInList: Sys$WebForms$PageRequestManager$_matchesParentIDInList,
  1132.     _onFormElementClick: Sys$WebForms$PageRequestManager$_onFormElementClick,
  1133.     _onFormSubmit: Sys$WebForms$PageRequestManager$_onFormSubmit,
  1134.     _onFormSubmitCompleted: Sys$WebForms$PageRequestManager$_onFormSubmitCompleted,
  1135.     _onWindowUnload: Sys$WebForms$PageRequestManager$_onWindowUnload,
  1136.     _pageLoaded: Sys$WebForms$PageRequestManager$_pageLoaded,
  1137.     _pageLoadedInitialLoad: Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad,
  1138.     _registerDisposeScript: Sys$WebForms$PageRequestManager$_registerDisposeScript,
  1139.     _scriptsLoadComplete: Sys$WebForms$PageRequestManager$_scriptsLoadComplete,
  1140.     _splitNodeIntoArray: Sys$WebForms$PageRequestManager$_splitNodeIntoArray,
  1141.     _uniqueIDToClientID: Sys$WebForms$PageRequestManager$_uniqueIDToClientID,
  1142.     _updateControls: Sys$WebForms$PageRequestManager$_updateControls,
  1143.     _updatePanel: Sys$WebForms$PageRequestManager$_updatePanel,
  1144.     _validPosition: Sys$WebForms$PageRequestManager$_validPosition
  1145. }
  1146. Sys.WebForms.PageRequestManager.getInstance = function Sys$WebForms$PageRequestManager$getInstance() {
  1147.     /// <returns type="Sys.WebForms.PageRequestManager"></returns>
  1148.     if (arguments.length !== 0) throw Error.parameterCount();
  1149.     return Sys.WebForms.PageRequestManager._instance || null;
  1150. }
  1151. Sys.WebForms.PageRequestManager._addArrayElement = function Sys$WebForms$PageRequestManager$_addArrayElement(arrayName, arrayValue) {
  1152.     if (typeof(window[arrayName]) === "undefined") {
  1153.                 window[arrayName] = [ arrayValue ];
  1154.     }
  1155.     else {
  1156.                 Array.add(window[arrayName], arrayValue);
  1157.     }
  1158. }
  1159. Sys.WebForms.PageRequestManager._initialize = function Sys$WebForms$PageRequestManager$_initialize(scriptManagerID, formElement) {
  1160.     if (Sys.WebForms.PageRequestManager.getInstance()) {
  1161.         throw Error.invalidOperation(Sys.WebForms.Res.PRM_CannotRegisterTwice);
  1162.     }
  1163.     Sys.WebForms.PageRequestManager._instance = new Sys.WebForms.PageRequestManager();
  1164.     Sys.WebForms.PageRequestManager.getInstance()._initializeInternal(scriptManagerID, formElement);
  1165. }
  1166. Sys.WebForms.PageRequestManager.registerClass('Sys.WebForms.PageRequestManager');
  1167. Sys.UI._UpdateProgress = function Sys$UI$_UpdateProgress(element) {
  1168.     Sys.UI._UpdateProgress.initializeBase(this,[element]);
  1169.     this._displayAfter = 500;
  1170.     this._dynamicLayout = true;
  1171.     this._associatedUpdatePanelId = null;
  1172.     this._beginRequestHandlerDelegate = null;
  1173.     this._startDelegate = null;
  1174.     this._endRequestHandlerDelegate = null;
  1175.     this._pageRequestManager = null;
  1176.     this._timerCookie = null;
  1177. }
  1178.     function Sys$UI$_UpdateProgress$get_displayAfter() {
  1179.         /// <value type="Number"></value>
  1180.         if (arguments.length !== 0) throw Error.parameterCount();
  1181.         return this._displayAfter;
  1182.     }
  1183.     function Sys$UI$_UpdateProgress$set_displayAfter(value) {
  1184.         var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
  1185.         if (e) throw e;
  1186.         this._displayAfter = value;
  1187.     }
  1188.     function Sys$UI$_UpdateProgress$get_dynamicLayout() {
  1189.         /// <value type="Boolean"></value>
  1190.         if (arguments.length !== 0) throw Error.parameterCount();
  1191.         return this._dynamicLayout;
  1192.     }
  1193.     function Sys$UI$_UpdateProgress$set_dynamicLayout(value) {
  1194.         var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
  1195.         if (e) throw e;
  1196.         this._dynamicLayout = value;
  1197.     }
  1198.     function Sys$UI$_UpdateProgress$get_associatedUpdatePanelId() {
  1199.         /// <value type="String" mayBeNull="true"></value>
  1200.         if (arguments.length !== 0) throw Error.parameterCount();
  1201.         return this._associatedUpdatePanelId;
  1202.     }
  1203.     function Sys$UI$_UpdateProgress$set_associatedUpdatePanelId(value) {
  1204.         var e = Function._validateParams(arguments, [{name: "value", type: String, mayBeNull: true}]);
  1205.         if (e) throw e;
  1206.         this._associatedUpdatePanelId = value;
  1207.     }
  1208.     function Sys$UI$_UpdateProgress$_handleBeginRequest(sender, arg) {
  1209.         var curElem = arg.get_postBackElement();
  1210.         var showProgress = !this._associatedUpdatePanelId; 
  1211.         while (!showProgress && curElem) {
  1212.             if (curElem.id && this._associatedUpdatePanelId === curElem.id) {
  1213.                 showProgress = true; 
  1214.             }
  1215.             curElem = curElem.parentNode; 
  1216.         } 
  1217.         if (showProgress) {
  1218.             this._timerCookie = window.setTimeout(this._startDelegate, this._displayAfter);
  1219.         }
  1220.     }
  1221.     function Sys$UI$_UpdateProgress$_startRequest() {
  1222.         if (this._pageRequestManager.get_isInAsyncPostBack()) {
  1223.             if (this._dynamicLayout) this.get_element().style.display = 'block';
  1224.             else this.get_element().style.visibility = 'visible';
  1225.         }
  1226.         this._timerCookie = null;
  1227.     }
  1228.     function Sys$UI$_UpdateProgress$_handleEndRequest(sender, arg) {
  1229.         if (this._dynamicLayout) this.get_element().style.display = 'none';
  1230.         else this.get_element().style.visibility = 'hidden';
  1231.         if (this._timerCookie) {
  1232.             window.clearTimeout(this._timerCookie);
  1233.             this._timerCookie = null;
  1234.         }
  1235.     }
  1236.     function Sys$UI$_UpdateProgress$dispose() {
  1237.        if (this._pageRequestManager !== null) {
  1238.            this._pageRequestManager.remove_beginRequest(this._beginRequestHandlerDelegate);
  1239.            this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);
  1240.        }
  1241.        Sys.UI._UpdateProgress.callBaseMethod(this,"dispose");
  1242.     }
  1243.     function Sys$UI$_UpdateProgress$initialize() {
  1244.         Sys.UI._UpdateProgress.callBaseMethod(this, 'initialize');
  1245.      this._beginRequestHandlerDelegate = Function.createDelegate(this, this._handleBeginRequest);
  1246.      this._endRequestHandlerDelegate = Function.createDelegate(this, this._handleEndRequest);
  1247.      this._startDelegate = Function.createDelegate(this, this._startRequest);
  1248.      if (Sys.WebForms && Sys.WebForms.PageRequestManager) {
  1249.            this._pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();
  1250.      }
  1251.      if (this._pageRequestManager !== null ) {
  1252.                     this._pageRequestManager.add_beginRequest(this._beginRequestHandlerDelegate);
  1253.          this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);
  1254.      }
  1255.     }
  1256. Sys.UI._UpdateProgress.prototype = {
  1257.     get_displayAfter: Sys$UI$_UpdateProgress$get_displayAfter,
  1258.     set_displayAfter: Sys$UI$_UpdateProgress$set_displayAfter,
  1259.     get_dynamicLayout: Sys$UI$_UpdateProgress$get_dynamicLayout,
  1260.     set_dynamicLayout: Sys$UI$_UpdateProgress$set_dynamicLayout,
  1261.     get_associatedUpdatePanelId: Sys$UI$_UpdateProgress$get_associatedUpdatePanelId,
  1262.     set_associatedUpdatePanelId: Sys$UI$_UpdateProgress$set_associatedUpdatePanelId,
  1263.     _handleBeginRequest: Sys$UI$_UpdateProgress$_handleBeginRequest,
  1264.     _startRequest: Sys$UI$_UpdateProgress$_startRequest,
  1265.     _handleEndRequest: Sys$UI$_UpdateProgress$_handleEndRequest,
  1266.     dispose: Sys$UI$_UpdateProgress$dispose,
  1267.     initialize: Sys$UI$_UpdateProgress$initialize
  1268. }
  1269. Sys.UI._UpdateProgress.registerClass('Sys.UI._UpdateProgress', Sys.UI.Control);
  1270. Type.registerNamespace('Sys.WebForms');
  1271. Sys.WebForms.Res={
  1272. "PRM_MissingPanel":"Could not find UpdatePanel with ID u0027{0}u0027. If it is being updated dynamically then it must be inside another UpdatePanel.",
  1273. "PRM_ServerError":"An unknown error occurred while processing the request on the server. The status code returned from the server was: {0}",
  1274. "PRM_ParserError":"The message received from the server could not be parsed.",
  1275. "PRM_TimeoutError":"The server request timed out.",
  1276. "PRM_CannotRegisterTwice":"The PageRequestManager cannot be initialized more than once.",
  1277. "PRM_UnknownToken":"Unknown token: u0027{0}u0027.",
  1278. "PRM_MissingPanel":"Could not find UpdatePanel with ID u0027{0}u0027. If it is being updated dynamically then it must be inside another UpdatePanel.",
  1279. "PRM_ServerError":"An unknown error occurred while processing the request on the server. The status code returned from the server was: {0}",
  1280. "PRM_ParserError":"The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), response filters, HttpModules, or server trace is enabled.rnDetails: {0}",
  1281. "PRM_TimeoutError":"The server request timed out.",
  1282. "PRM_ParserErrorDetails":"Error parsing near u0027{0}u0027.",
  1283. "PRM_CannotRegisterTwice":"The PageRequestManager cannot be initialized more than once."
  1284. };
  1285. if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();