Update 20260123

This commit is contained in:
Stefan Hutter
2026-01-23 08:09:23 +01:00
parent 49155d898f
commit 2d1525575b
358 changed files with 123777 additions and 73 deletions

Binary file not shown.

View File

@@ -0,0 +1,18 @@
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Routing;
using Microsoft.AspNet.FriendlyUrls;
namespace $rootnamespace$
{
public static class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
var settings = new FriendlyUrlSettings();
settings.AutoRedirectMode = RedirectMode.Permanent;
routes.EnableFriendlyUrls(settings);
}
}
}

View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace $rootnamespace$
{
public partial class Site_Mobile : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}

View File

@@ -0,0 +1,51 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace $rootnamespace$ {
public partial class Site_Mobile {
/// <summary>
/// HeadContent control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder HeadContent;
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// FeaturedContent control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder FeaturedContent;
/// <summary>
/// MainContent control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder MainContent;
}
}

View File

@@ -0,0 +1,23 @@
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.Mobile.master.cs" Inherits="$rootnamespace$.Site_Mobile" %>
<%@ Register Src="~/ViewSwitcher.ascx" TagPrefix="friendlyUrls" TagName="ViewSwitcher" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta name="viewport" content="width=device-width" />
<title></title>
<asp:ContentPlaceHolder runat="server" ID="HeadContent" />
</head>
<body>
<form id="form1" runat="server">
<div>
<h1>Mobile Master Page</h1>
<asp:ContentPlaceHolder runat="server" ID="FeaturedContent" />
<section class="content-wrapper main-content clear-fix">
<asp:ContentPlaceHolder runat="server" ID="MainContent" />
</section>
<friendlyUrls:ViewSwitcher runat="server" />
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,43 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Routing;
using System.Web.UI;
using System.Web.UI.WebControls;
using Microsoft.AspNet.FriendlyUrls.Resolvers;
namespace $rootnamespace$
{
public partial class ViewSwitcher : System.Web.UI.UserControl
{
protected string CurrentView { get; private set; }
protected string AlternateView { get; private set; }
protected string SwitchUrl { get; private set; }
protected void Page_Load(object sender, EventArgs e)
{
// Determine current view
var isMobile = WebFormsFriendlyUrlResolver.IsMobileView(new HttpContextWrapper(Context));
CurrentView = isMobile ? "Mobile" : "Desktop";
// Determine alternate view
AlternateView = isMobile ? "Desktop" : "Mobile";
// Create switch URL from the route, e.g. ~/__FriendlyUrls_SwitchView/Mobile?ReturnUrl=/Page
var switchViewRouteName = "AspNet.FriendlyUrls.SwitchView";
var switchViewRoute = RouteTable.Routes[switchViewRouteName];
if (switchViewRoute == null)
{
// Friendly URLs is not enabled or the name of the switch view route is out of sync
this.Visible = false;
return;
}
var url = GetRouteUrl(switchViewRouteName, new { view = AlternateView, __FriendlyUrls_SwitchViews = true });
url += "?ReturnUrl=" + HttpUtility.UrlEncode(Request.RawUrl);
SwitchUrl = url;
}
}
}

View File

@@ -0,0 +1,15 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace $rootnamespace$ {
public partial class ViewSwitcher {
}
}

View File

@@ -0,0 +1,4 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="ViewSwitcher.ascx.cs" Inherits="$rootnamespace$.ViewSwitcher" %>
<div id="viewSwitcher">
<%: CurrentView %> view | <a href="<%: SwitchUrl %>" data-ajax="false">Switch to <%: AlternateView %></a>
</div>

View File

@@ -0,0 +1,50 @@
==========================================================
ASP.NET Friendly URLs v1.0.1
==========================================================
----------------------------------------------------------
Overview
----------------------------------------------------------
ASP.NET Friendly URLs provides a simple way to remove the
need for file extensions on URLs for registered file
handler types, e.g. .aspx.
For more information see http://go.microsoft.com/fwlink/?LinkID=264514&clcid=0x409
----------------------------------------------------------
Setup
----------------------------------------------------------
If your app didn't have a RouteConfig class before
installing ASP.NET Friendly URLs package:
----------------------------------------------------------
The package includes a RouteConfig class that contains
the call required to enable Friendly URLs. This call must
be made from the Application_Start handler in your app's
Global.asax file.
Add the following to your Global.asax.cs file:
using System.Web.Routing;
...
protected void Application_Start(object sender, EventArgs e)
{
RouteConfig.RegisterRoutes(RouteTable.Routes);
}
If your app had a RouteConfig class before installing
ASP.NET Friendly URLs package:
----------------------------------------------------------
You'll need to update your RouteConfig class to enable
Friendly URLs.
Call EnableFriendlyUrls() in your RegisterRoutes method
*before* any existing route registrations:
public static void RegisterRoutes(RouteCollection routes)
{
routes.EnableFriendlyUrls();
// Put any additional route registrations here.
}

Binary file not shown.

View File

@@ -0,0 +1,187 @@
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly>
<name>Microsoft.AspNet.FriendlyUrls</name>
</assembly>
<members>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrl"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Href(System.String,System.Object[])"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Resolve(System.String)">
<summary> Resolves a file handler virtual path to a friendly URL using the registered resolvers. </summary>
<returns>The friendly URL.</returns>
<param name="virtualPath">The handler virtual path.</param>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Segments">
<summary> The URL segments left over after Friendly URLs mapped this request to a file. </summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings">
<summary>Represents the settings used when enabling Friendly URLs.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.#ctor">
<summary>Creates a new instance of the FriendlyUrlSettings class with the default values.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.AutoRedirectMode">
<summary>The type of redirect to perform on non-friendly URLs to friendly URLs. Defaults to Off.</summary>
<returns>Returns <see cref="T:Microsoft.AspNet.FriendlyUrls.RedirectMode" />.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.ResolverCachingMode">
<summary>The mode of caching to use when resolving friendly Urls. Defaults to ResolverCachingMode.Static.</summary>
<returns>Returns <see cref="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode" />.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewRouteName">
<summary>The name of the route that handles user requests to switch views. Defaults to "AspNet.FriendlyUrls.SwitchView".</summary>
<returns>Returns <see cref="T:System.String" />.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewUrl">
<summary>The URL that view switching request are sent to. Defaults to "__FriendlyUrls_SwitchView/{view}".</summary>
<returns>Returns <see cref="T:System.String" />.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions">
<summary>Provides extension methods for working with Friendly URLs.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequest)">
<summary> Returns the extension of the file Friendly URLs mapped this request to. </summary>
<returns>The file extension, e.g. .aspx.</returns>
<param name="httpRequest">The HttpRequest object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequestBase)">
<summary> Returns the extension of the file Friendly URLs mapped this request to. </summary>
<returns>The file extension, e.g. .aspx.</returns>
<param name="httpRequest">The HttpRequestBase object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequest)">
<summary> Returns the virtual path of the file Friendly URLs mapped this request to. </summary>
<returns>The file virtual path.</returns>
<param name="httpRequest">The HttpRequest object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequestBase)">
<summary> Returns the virtual path of the file Friendly URLs mapped this request to. </summary>
<returns>The file virtual path.</returns>
<param name="httpRequest">The HttpRequestBase object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequest)">
<summary> Returns the URL segments left over after Friendly URLs mapped this request to a file. </summary>
<returns>The URL segments.</returns>
<param name="httpRequest">The HttpRequest object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequestBase)">
<summary> Returns the URL segments left over after Friendly URLs mapped this request to a file. </summary>
<returns>The URL segments.</returns>
<param name="httpRequest">The HttpRequestBase object.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode.Start"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RedirectMode">
<summary>Represents the mode of redirect to use when auto-redirecting to friendly URLs.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Permanent">
<summary>Performs a permanent redirect (301 response code).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Temporary">
<summary>Performs a temporary redirect (302 response code).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Off">
<summary>Performs no auto-redirect (disabled).</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode">
<summary>Represents the mode of caching to use when resolving URLs. This setting affects how quickly extension-less URLs can be mapped back to their corresponding files (such as .aspx).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Static">
<summary>Build a list of files at application startup. This mode of operation is appropriate for sites where files are not added or removed at runtime.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Dynamic">
<summary>Build a list of files as requests come in, and update that list as files in the site change. This mode of operation uses more memory than a static cache, but it is appropriate for sites where files or directories are added or removed at runtime.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Disabled">
<summary>Don't perform any caching. Always query the file system directly every time a request to a friendly URL comes in.</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection)">
<summary> Enables friendly URLs for Web Forms pages. </summary>
<param name="routes">The routes collection.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings)">
<summary>Enables friendly URLs for Web Forms pages.</summary>
<param name="routes">The routes collection.</param>
<param name="settings">The settings to use when enabling Friendly Urls.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Enables friendly URLs using the passed resolvers. </summary>
<param name="routes">The routes collection.</param>
<param name="settings">The settings to use when enabling Friendly Urls.</param>
<param name="resolvers">The friendly URL resolvers to use.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Enables friendly URLs using the specified resolvers. </summary>
<param name="routes">The routes collection.</param>
<param name="resolvers">The friendly URL resolvers to use.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver">
<summary>Resolves a friendly URL to an HTTP handler.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.#ctor(System.String)">
<summary>Creates a FriendlyUrlResolver for the provided extension.</summary>
<param name="fileExtension">The physical file extension understood by this resolver. Must include the leading period, e.g. ".aspx".</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.ConvertToFriendlyUrl(System.String)">
<summary>Converts a URL with a file extension into a friendly extension-less URL.</summary>
<returns>The friendly URL (extension stripped) if this resolver can automatically map extensionless URLs to physical files with the provided extension. Otherwise, null.</returns>
<param name="path">The original path, including the file extension.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<summary>Gets the file extensions to use (such as .aspx, .ashx, or .mobile.aspx) while attempting to resolve an HTTP handler from the friendly URL.</summary>
<returns>The list of extensions.</returns>
<param name="httpContext">The current HttpContext.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver">
<summary>Resolves friendly URLs to generic handlers (such as .ashx).</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver.#ctor"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.ConvertToFriendlyUrl(System.String)">
<summary>Converts a URL with a file extension into a friendly extension-less URL.</summary>
<returns>The friendly URL (extension stripped) if this resolver can automatically map extensionless URLs to physical files with the provided extension. Otherwise, null.</returns>
<param name="path">The original path, including the file extension.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<summary>Returns a list of file extensions that the Friendly URLs system will try to resolve for the current request. For example, if the current request is for "~/example" and the GetExtensions method returns [ ".mobile.aspx", ".aspx", ".en-us.aspx" ], then the Friendly URLs system will attempt to match the current request to the files "~/example.mobile.aspx", "~/example.aspx", and "~/example.en-us.aspx", returning the first match.</summary>
<returns>A list of extensions that the system should try to resolve.</returns>
<param name="httpContext">The current request.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)">
<summary>Provides the ability to inspect or modify the IHttpHandler that was resolved for the current request before the handler's ProcessRequest method is called.</summary>
<param name="httpContext">Information about the current request.</param>
<param name="httpHandler">The handler that will be invoked.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver">
<summary>Resolves friendly URLs to Web Forms pages.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.#ctor"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<returns>Returns <see cref="T:System.Collections.Generic.IList`1" />.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileExtension(System.Web.HttpContextBase,System.String)">
<returns>Returns <see cref="T:System.Boolean" />.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileView(System.Web.HttpContextBase)">
<summary>Determines if the current friendly URL was resolved to a mobile view based on the client browser and/or overrides.</summary>
<returns>Whether the current view is a mobile view.</returns>
<param name="httpContext">The page.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMasterPageFile(System.Web.UI.Page,System.String)">
<summary>Attempts to set the MasterPageFile property for the given page based on whether the master page exists.</summary>
<returns>A boolean value indicating whether the master page was set.</returns>
<param name="page">The page.</param>
<param name="masterPageFile">The master page file virtual path.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMobileMasterPage(System.Web.HttpContextBase,System.Web.UI.Page,System.String)">
<summary>Attempts to set the MasterPageFile property for the given page to a mobile specific master page.</summary>
<returns>A boolean value indicating whether the master page was set.</returns>
<param name="httpContext">The HTTP context.</param>
<param name="page">The page.</param>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.ViewSwitcherCookieName"></member>
</members>
</doc>

View File

@@ -0,0 +1,167 @@
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly>
<name>Microsoft.AspNet.FriendlyUrls</name>
</assembly>
<members>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrl"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Href(System.String,System.Object[])"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Resolve(System.String)">
<summary> Löst den virtuellen Pfad eines Dateihandlers in eine Friendly URL mithilfe der registrierten Konfliktlöser auf. </summary>
<returns>Die Friendly URL.</returns>
<param name="virtualPath">Der virtuelle Pfad des Handlers.</param>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Segments">
<summary> Die URL-Segmente, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings">
<summary>Stellt die Einstellungen dar, die beim Aktivieren von Friendly URLs verwendet werden.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.#ctor">
<summary>Erstellt eine neue Instanz der Klasse FriendlyUrlSettings mit den Standardwerten.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.AutoRedirectMode">
<summary>Der Weiterleitungstyp, der für Nicht-Friendly URLs an Friendly URLs ausgeführt werden soll. Der Standardwert ist Deaktiviert.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.ResolverCachingMode"></member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewRouteName">
<summary>Der Name der Route, die Benutzeranforderungen zum Wechseln der Ansicht verarbeitet. Der Standardwert ist AspNet.FriendlyUrls.SwitchView.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewUrl">
<summary>Die URL, an die Anforderung zum Wechseln der Ansicht gesendet werden. Der Standardwert ist __FriendlyUrls_SwitchView/{Ansicht}.</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions">
<summary>Stellt Erweiterungsmethoden für das Arbeiten mit Friendly URLs bereit.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequest)">
<summary> Gibt die Erweiterung der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Die Dateierweiterung, z. B. ASPX.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequestBase)">
<summary> Gibt die Erweiterung der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Die Dateierweiterung, z. B. ASPX.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequest)">
<summary> Gibt den virtuellen Pfad der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Der virtuelle Dateipfad.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequestBase)">
<summary> Gibt den virtuellen Pfad der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Der virtuelle Dateipfad.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequest)">
<summary> Gibt die URL-Segmente zurück, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
<returns>Die URL-Segmente.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequestBase)">
<summary> Gibt die URL-Segmente zurück, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
<returns>Die URL-Segmente.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode.Start"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RedirectMode">
<summary>Stellt den bei der automatischen Weiterleitung an Friendly URLs zu verwendenden Weiterleitungsmodus dar.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Permanent">
<summary>Führt eine dauerhafte Weiterleitung aus (Antwortcode 301).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Temporary">
<summary>Führt eine vorübergehende Weiterleitung aus (Antwortcode 302).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Off">
<summary>Führt keine automatische Weiterleitung aus (deaktiviert).</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode"></member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Static">
<summary />
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Dynamic">
<summary />
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Disabled">
<summary />
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection)">
<summary> Aktiviert Friendly URLs für Web Forms-Seiten. </summary>
<param name="routes">Die Routenauflistung.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings)">
<summary>Aktiviert Friendly URLs für Web Forms-Seiten.</summary>
<param name="routes">Die Routenauflistung.</param>
<param name="settings">Die Einstellungen, die beim Aktivieren von Friendly URLs verwendet werden sollen.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Aktiviert Friendly URLs mithilfe der übergebenen Konfliktlöser. </summary>
<param name="routes">Die Routenauflistung.</param>
<param name="settings">Die Einstellungen, die beim Aktivieren von Friendly URLs verwendet werden sollen.</param>
<param name="resolvers">Die zu verwendenden Konfliktlöser für Friendly URLs.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Aktiviert Friendly URLs mithilfe der angegebenen Konfliktlöser. </summary>
<param name="routes">Die Routenauflistung.</param>
<param name="resolvers">Die zu verwendenden Konfliktlöser für Friendly URLs.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver">
<summary>Löst eine Friendly URL in einen HTTP-Handler auf.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.#ctor(System.String)">
<summary>Erstellt einen FriendlyUrlResolver für die angegebene Erweiterung.</summary>
<param name="fileExtension">Die physische Dateierweiterung, die dieser Konfliktlöser erkennen kann. Der führende Punkt muss enthalten sein, z. B. .aspx.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.ConvertToFriendlyUrl(System.String)">
<summary>Konvertiert eine typische URL mit Erweiterung in eine Friendly URL ohne Erweiterung.</summary>
<returns>Die Friendly URL (ohne Erweiterung), wenn dieser Konfliktlöser automatisch URLs ohne Erweiterung physischen Dateien mit der bereitgestellten Erweiterung zuordnen kann. Andernfalls null.</returns>
<param name="path">Der ursprüngliche Pfad einschließlich der Dateierweiterung.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<summary>Ruft beim Versuch, einen HTTP-Handler aus der Friendly URL aufzulösen, die zu verwendenden Erweiterungen ab, z. B. .aspx, .ashx, .mobile.aspx.</summary>
<returns>Die Liste der Erweiterungen.</returns>
<param name="httpContext">Der aktuelle HttpContext.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver">
<summary>Löst Friendly URLs in generische Handler auf, z. B. in ASHX.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver.#ctor"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.ConvertToFriendlyUrl(System.String)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver">
<summary>Löst Friendly URLs in Web Forms-Seiten auf.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.#ctor"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<returns>Gibt <see cref="T:System.Collections.Generic.IList`1" /> zurück.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileExtension(System.Web.HttpContextBase,System.String)">
<returns>Gibt <see cref="T:System.Boolean" /> zurück.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileView(System.Web.HttpContextBase)">
<summary>Ermittelt, ob die aktuelle Friendly URL in eine mobile Ansicht basierend auf dem Clientbrowser und/oder Außerkraftsetzungen aufgelöst wurde.</summary>
<returns>Gibt an, ob es sich bei der aktuellen Ansicht um eine mobile Ansicht handelt.</returns>
<param name="httpContext">Die Seite.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMasterPageFile(System.Web.UI.Page,System.String)">
<summary>Versucht, die Eigenschaft MasterPageFile für die angegebene Seite basierend auf dem Vorhandensein der Gestaltungsvorlage festzulegen.</summary>
<returns>Ein boolescher Wert, der angibt, ob die Gestaltungsvorlage festgelegt wurde.</returns>
<param name="page">Die Seite.</param>
<param name="masterPageFile">Der virtuelle Dateipfad der Gestaltungsvorlage.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMobileMasterPage(System.Web.HttpContextBase,System.Web.UI.Page,System.String)">
<summary>Versucht, die Eigenschaft MasterPageFile für die angegebene Seite auf eine bestimmte mobile Gestaltungsvorlage festzulegen.</summary>
<returns>Ein boolescher Wert, der angibt, ob die Gestaltungsvorlage festgelegt wurde.</returns>
<param name="httpContext">Der HTTP-Kontext.</param>
<param name="page">Die Seite.</param>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.ViewSwitcherCookieName"></member>
</members>
</doc>

View File

@@ -0,0 +1,206 @@
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly>
<name>Microsoft.AspNet.FriendlyUrls</name>
</assembly>
<members>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrl"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Href(System.String,System.Object[])"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Resolve(System.String)">
<summary> Resolves a file handler virtual path to a friendly URL using the registered resolvers. </summary>
<returns>The friendly URL.</returns>
<param name="virtualPath">The handler virtual path.</param>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Segments">
<summary> The URL segments left over after Friendly URLs mapped this request to a file. </summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings">
<summary>Represents the settings used when enabling Friendly URLs.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.#ctor">
<summary>Creates a new instance of the FriendlyUrlSettings class with the default values.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.AutoRedirectMode">
<summary>The type of redirect to perform on non-friendly URLs to friendly URLs. Defaults to Off.</summary>
<returns>Returns <see cref="T:Microsoft.AspNet.FriendlyUrls.RedirectMode" />.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.ResolverCachingMode">
<summary>The mode of caching to use when resolving friendly URLs. Defaults to ResolverCachingMode.Static.</summary>
<returns>Returns <see cref="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode" />.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewRouteName">
<summary>The name of the route that handles user requests to switch views. Defaults to "AspNet.FriendlyUrls.SwitchView".</summary>
<returns>Returns <see cref="T:System.String" />.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewUrl">
<summary>The URL that view switching request are sent to. Defaults to "__FriendlyUrls_SwitchView/{view}".</summary>
<returns>Returns <see cref="T:System.String" />.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequest)">
<summary> Returns the extension of the file Friendly URLs mapped this request to. </summary>
<returns>The file extension, e.g. .aspx.</returns>
<param name="httpRequest">The HttpRequest object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequestBase)">
<summary> Returns the extension of the file Friendly URLs mapped this request to. </summary>
<returns>The file extension, e.g. .aspx.</returns>
<param name="httpRequest">The HttpRequestBase object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequest)">
<summary> Returns the virtual path of the file Friendly URLs mapped this request to. </summary>
<returns>The file virtual path</returns>
<param name="httpRequest">The HttpRequest object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequestBase)">
<summary> Returns the virtual path of the file Friendly URLs mapped this request to. </summary>
<returns>The file virtual path.</returns>
<param name="httpRequest">The HttpRequestBase object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequest)">
<summary> Returns the URL segments left over after Friendly URLs mapped this request to a file. </summary>
<returns>The URL segments.</returns>
<param name="httpRequest">The HttpRequest object.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequestBase)">
<summary>Returns the URL segments left over after the current request has been mapped to a file.</summary>
<returns>The URL segments.</returns>
<param name="httpRequest">The HttpRequestBase object.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode.Start"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RedirectMode">
<summary>Represents the mode of redirect to use when auto-redirecting to friendly URLs.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Permanent">
<summary>Performs a permanent redirect (301 response code).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Temporary">
<summary>Performs a temporary redirect (302 response code).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Off">
<summary>Performs no auto-redirect (disabled).</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode">
<summary>Represents the mode of caching to use when resolving URLs. This setting affects how quickly extension-less URLs can be mapped back to their corresponding full URLs.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Static">
<summary>Build a list of files at application startup. This mode of operation is appropriate for sites where files are not added or removed at runtime.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Dynamic">
<summary>Builds a list of files as requests arrive, and updates the file list as files in the site change. This mode of operation uses more memory than a static cache, but is useful for updating the file list for sites where files or directories are added or removed at runtime.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Disabled">
<summary>Don't perform any caching. Always query the file system directly every time a request to a friendly URL comes in.</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection)">
<summary> Enables friendly URLs for Web Forms pages. </summary>
<param name="routes">The routes collection.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings)">
<summary>Enables friendly URLs for Web Forms pages.</summary>
<param name="routes">The routes collection.</param>
<param name="settings">The settings to use when enabling Friendly Urls.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Enables friendly URLs using the passed resolvers. </summary>
<param name="routes">The routes collection.</param>
<param name="settings">The settings to use when enabling Friendly Urls.</param>
<param name="resolvers">The friendly URL resolvers to use.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Enables friendly URLs using the specified resolvers. </summary>
<param name="routes">The routes collection.</param>
<param name="resolvers">The friendly URL resolvers to use.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsAttribute">
<summary>Represents an attribute that specifies that model binding values are provided by a friendly URL segment.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsAttribute.#ctor(System.Int32)">
<summary> Creates an instance of the FriendlyUrlSegmentsAttribute class.</summary>
<param name="index">The index of the URL segment to return.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsAttribute.GetValueProvider(System.Web.ModelBinding.ModelBindingExecutionContext)">
<returns>Returns <see cref="T:System.Web.ModelBinding.IValueProvider" />.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsValueProvider">
<summary> A value provider that retrieves values from the segments of a Friendly URL.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsValueProvider.#ctor(System.Web.ModelBinding.ModelBindingExecutionContext,System.Int32)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsValueProvider.FetchValue(System.String)">
<returns>Returns <see cref="T:System.Object" />.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver">
<summary>Resolves a friendly URL to an HTTP handler.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.#ctor(System.String)">
<summary>Creates a FriendlyUrlResolver for the provided extension.</summary>
<param name="fileExtension">The physical file extension understood by this resolver. Must include the leading period, e.g. ".aspx".</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.ConvertToFriendlyUrl(System.String)">
<summary>Converts a typical URL with a file extension into a friendly extension-less URL.</summary>
<returns>The friendly URL (extension stripped) if this resolver can automatically map extensionless URLs to physical files with the provided extension. Otherwise, null.</returns>
<param name="path">The original path, including the file extension.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<summary>Gets the extensions to use (such as .aspx, .ashx, or .mobile.aspx) while attempting to resolve an HTTP handler from the friendly URL.</summary>
<returns>The list of extensions.</returns>
<param name="httpContext">The current HttpContext.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)">
<summary>Called after a friendly URL is resolved to an HTTP handler but before the handler is executed.</summary>
<param name="httpContext">The current HttpContext.</param>
<param name="httpHandler">The HTTP handler.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver">
<summary>Resolves friendly URLs to generic handlers such as *.ashx.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver.#ctor"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.ConvertToFriendlyUrl(System.String)">
<summary>Converts a typical URL with a file extension into a friendly extension-less URL.</summary>
<returns>The friendly extension-less URL if this resolver can automaticallymap extensionless URLs to physical files with the provided extension. Otherwise, null.</returns>
<param name="path">The original path, including the file extension.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<summary>Returns a list of file extensions that the Friendly URLs system will try to resolve for the current request. For example, if the current request is for "~/example" and the GetExtensions method returns [ ".mobile.aspx", ".aspx", ".en-us.aspx" ], then the Friendly URLs system will attempt to match the current request to thefiles "~/example.mobile.aspx", "~/example.aspx", and "~/example.en-us.aspx", returning the first match.</summary>
<returns>A list of extensions that the system should try to resolve.</returns>
<param name="httpContext">The current request.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)">
<summary>Provides the ability to inspect or modify the IHttpHandler that was resolved for the current request before the handler's ProcessRequest method is called.</summary>
<param name="httpContext">Information about the current request.</param>
<param name="httpHandler">The handler that will be invoked.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver">
<summary>Resolves friendly URLs to Web Forms pages.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.#ctor"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<returns>Returns <see cref="T:System.Collections.Generic.IList`1" />.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileExtension(System.Web.HttpContextBase,System.String)">
<returns>Returns <see cref="T:System.Boolean" />.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileView(System.Web.HttpContextBase)">
<summary>Determines if the current friendly URL was resolved to a mobile view based on the client browser and/or overrides.</summary>
<returns>Whether the current view is a mobile view.</returns>
<param name="httpContext">The page.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMasterPageFile(System.Web.UI.Page,System.String)">
<summary>Attempts to set the MasterPageFile property for the given page based on whether the master page exists.</summary>
<returns>A boolean value indicating whether the master page was set.</returns>
<param name="page">The page.</param>
<param name="masterPageFile">The master page file virtual path.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMobileMasterPage(System.Web.HttpContextBase,System.Web.UI.Page,System.String)">
<summary>Attempts to set the MasterPageFile property for the given page to a mobile specific master page.</summary>
<returns>A boolean value indicating whether the master page was set.</returns>
<param name="httpContext">The HTTP context.</param>
<param name="page">The page.</param>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.ViewSwitcherCookieName"></member>
</members>
</doc>

View File

@@ -0,0 +1,187 @@
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly>
<name>Microsoft.AspNet.FriendlyUrls</name>
</assembly>
<members>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrl"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Href(System.String,System.Object[])"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Resolve(System.String)">
<summary> Löst den virtuellen Pfad eines Dateihandlers in eine Friendly URL mithilfe der registrierten Konfliktlöser auf. </summary>
<returns>Die Friendly URL.</returns>
<param name="virtualPath">Der virtuelle Pfad des Handlers.</param>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Segments">
<summary> Die URL-Segmente, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings">
<summary>Stellt die Einstellungen dar, die beim Aktivieren von Friendly URLs verwendet werden.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.#ctor">
<summary>Erstellt eine neue Instanz der Klasse FriendlyUrlSettings mit den Standardwerten.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.AutoRedirectMode">
<summary>Der Weiterleitungstyp, der für Nicht-Friendly URLs an Friendly URLs ausgeführt werden soll. Der Standardwert ist Deaktiviert.</summary>
<returns>Gibt <see cref="T:Microsoft.AspNet.FriendlyUrls.RedirectMode" /> zurück.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.ResolverCachingMode">
<returns>Gibt <see cref="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode" /> zurück.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewRouteName">
<summary>Der Name der Route, die Benutzeranforderungen zum Wechseln der Ansicht verarbeitet. Der Standardwert ist AspNet.FriendlyUrls.SwitchView.</summary>
<returns>Gibt <see cref="T:System.String" /> zurück.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewUrl">
<summary>Die URL, an die Anforderung zum Wechseln der Ansicht gesendet werden. Der Standardwert ist __FriendlyUrls_SwitchView/{Ansicht}.</summary>
<returns>Gibt <see cref="T:System.String" /> zurück.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequest)">
<summary> Gibt die Erweiterung der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Die Dateierweiterung, z. B. ASPX.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequestBase)">
<summary> Gibt die Erweiterung der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Die Dateierweiterung, z. B. ASPX.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequest)">
<summary> Gibt den virtuellen Pfad der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Der virtuelle Dateipfad.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequestBase)">
<summary> Gibt den virtuellen Pfad der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Der virtuelle Dateipfad.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequest)">
<summary> Gibt die URL-Segmente zurück, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
<returns>Die URL-Segmente.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequestBase)">
<summary> Gibt die URL-Segmente zurück, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
<returns>Die URL-Segmente.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode.Start"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RedirectMode">
<summary>Stellt den bei der automatischen Weiterleitung an Friendly URLs zu verwendenden Weiterleitungsmodus dar.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Permanent">
<summary>Führt eine dauerhafte Weiterleitung aus (Antwortcode 301).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Temporary">
<summary>Führt eine vorübergehende Weiterleitung aus (Antwortcode 302).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Off">
<summary>Führt keine automatische Weiterleitung aus (deaktiviert).</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode"></member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Static">
<summary />
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Dynamic">
<summary />
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Disabled">
<summary />
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection)">
<summary> Aktiviert Friendly URLs für Web Forms-Seiten. </summary>
<param name="routes">Die Routenauflistung.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings)">
<summary>Aktiviert Friendly URLs für Web Forms-Seiten.</summary>
<param name="routes">Die Routenauflistung.</param>
<param name="settings">Die Einstellungen, die beim Aktivieren von Friendly URLs verwendet werden sollen.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Aktiviert Friendly URLs mithilfe der übergebenen Konfliktlöser. </summary>
<param name="routes">Die Routenauflistung.</param>
<param name="settings">Die Einstellungen, die beim Aktivieren von Friendly URLs verwendet werden sollen.</param>
<param name="resolvers">Die zu verwendenden Konfliktlöser für Friendly URLs.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Aktiviert Friendly URLs mithilfe der angegebenen Konfliktlöser. </summary>
<param name="routes">Die Routenauflistung.</param>
<param name="resolvers">Die zu verwendenden Konfliktlöser für Friendly URLs.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsAttribute">
<summary>Represents an attribute that specifies that model binding values are provided by a friendly URL segment.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsAttribute.#ctor(System.Int32)">
<summary> Creates an instance of the FriendlyUrlSegmentsAttribute class.</summary>
<param name="index">The index of the URL segment to return.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsAttribute.GetValueProvider(System.Web.ModelBinding.ModelBindingExecutionContext)">
<returns>Returns <see cref="T:System.Web.ModelBinding.IValueProvider" />.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsValueProvider">
<summary> A value provider that retrieves values from the segments of a Friendly URL.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsValueProvider.#ctor(System.Web.ModelBinding.ModelBindingExecutionContext,System.Int32)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsValueProvider.FetchValue(System.String)">
<returns>Returns <see cref="T:System.Object" />.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver">
<summary>Löst eine Friendly URL in einen HTTP-Handler auf.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.#ctor(System.String)">
<summary>Erstellt einen FriendlyUrlResolver für die angegebene Erweiterung.</summary>
<param name="fileExtension">Die physische Dateierweiterung, die dieser Konfliktlöser erkennen kann. Der führende Punkt muss enthalten sein, z. B. .aspx.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.ConvertToFriendlyUrl(System.String)">
<summary>Konvertiert eine typische URL mit Erweiterung in eine Friendly URL ohne Erweiterung.</summary>
<returns>Die Friendly URL (ohne Erweiterung), wenn dieser Konfliktlöser automatisch URLs ohne Erweiterung physischen Dateien mit der bereitgestellten Erweiterung zuordnen kann. Andernfalls null.</returns>
<param name="path">Der ursprüngliche Pfad einschließlich der Dateierweiterung.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<summary>Ruft beim Versuch, einen HTTP-Handler aus der Friendly URL aufzulösen, die zu verwendenden Erweiterungen ab, z. B. .aspx, .ashx, .mobile.aspx.</summary>
<returns>Die Liste der Erweiterungen.</returns>
<param name="httpContext">Der aktuelle HttpContext.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver">
<summary>Löst Friendly URLs in generische Handler auf, z. B. in ASHX.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver.#ctor"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.ConvertToFriendlyUrl(System.String)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver">
<summary>Löst Friendly URLs in Web Forms-Seiten auf.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.#ctor"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<returns>Gibt <see cref="T:System.Collections.Generic.IList`1" /> zurück.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileExtension(System.Web.HttpContextBase,System.String)">
<returns>Gibt <see cref="T:System.Boolean" /> zurück.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileView(System.Web.HttpContextBase)">
<summary>Ermittelt, ob die aktuelle Friendly URL in eine mobile Ansicht basierend auf dem Clientbrowser und/oder Außerkraftsetzungen aufgelöst wurde.</summary>
<returns>Gibt an, ob es sich bei der aktuellen Ansicht um eine mobile Ansicht handelt.</returns>
<param name="httpContext">Die Seite.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMasterPageFile(System.Web.UI.Page,System.String)">
<summary>Versucht, die Eigenschaft MasterPageFile für die angegebene Seite basierend auf dem Vorhandensein der Gestaltungsvorlage festzulegen.</summary>
<returns>Ein boolescher Wert, der angibt, ob die Gestaltungsvorlage festgelegt wurde.</returns>
<param name="page">Die Seite.</param>
<param name="masterPageFile">Der virtuelle Dateipfad der Gestaltungsvorlage.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMobileMasterPage(System.Web.HttpContextBase,System.Web.UI.Page,System.String)">
<summary>Versucht, die Eigenschaft MasterPageFile für die angegebene Seite auf eine bestimmte mobile Gestaltungsvorlage festzulegen.</summary>
<returns>Ein boolescher Wert, der angibt, ob die Gestaltungsvorlage festgelegt wurde.</returns>
<param name="httpContext">Der HTTP-Kontext.</param>
<param name="page">Die Seite.</param>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.ViewSwitcherCookieName"></member>
</members>
</doc>

Binary file not shown.

View File

@@ -0,0 +1,167 @@
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly>
<name>Microsoft.AspNet.FriendlyUrls</name>
</assembly>
<members>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrl"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Href(System.String,System.Object[])"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Resolve(System.String)">
<summary> Löst den virtuellen Pfad eines Dateihandlers in eine Friendly URL mithilfe der registrierten Konfliktlöser auf. </summary>
<returns>Die Friendly URL.</returns>
<param name="virtualPath">Der virtuelle Pfad des Handlers.</param>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Segments">
<summary> Die URL-Segmente, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings">
<summary>Stellt die Einstellungen dar, die beim Aktivieren von Friendly URLs verwendet werden.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.#ctor">
<summary>Erstellt eine neue Instanz der Klasse FriendlyUrlSettings mit den Standardwerten.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.AutoRedirectMode">
<summary>Der Weiterleitungstyp, der für Nicht-Friendly URLs an Friendly URLs ausgeführt werden soll. Der Standardwert ist Deaktiviert.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.ResolverCachingMode"></member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewRouteName">
<summary>Der Name der Route, die Benutzeranforderungen zum Wechseln der Ansicht verarbeitet. Der Standardwert ist AspNet.FriendlyUrls.SwitchView.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewUrl">
<summary>Die URL, an die Anforderung zum Wechseln der Ansicht gesendet werden. Der Standardwert ist __FriendlyUrls_SwitchView/{Ansicht}.</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions">
<summary>Stellt Erweiterungsmethoden für das Arbeiten mit Friendly URLs bereit.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequest)">
<summary> Gibt die Erweiterung der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Die Dateierweiterung, z. B. ASPX.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequestBase)">
<summary> Gibt die Erweiterung der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Die Dateierweiterung, z. B. ASPX.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequest)">
<summary> Gibt den virtuellen Pfad der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Der virtuelle Dateipfad.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequestBase)">
<summary> Gibt den virtuellen Pfad der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Der virtuelle Dateipfad.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequest)">
<summary> Gibt die URL-Segmente zurück, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
<returns>Die URL-Segmente.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequestBase)">
<summary> Gibt die URL-Segmente zurück, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
<returns>Die URL-Segmente.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode.Start"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RedirectMode">
<summary>Stellt den bei der automatischen Weiterleitung an Friendly URLs zu verwendenden Weiterleitungsmodus dar.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Permanent">
<summary>Führt eine dauerhafte Weiterleitung aus (Antwortcode 301).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Temporary">
<summary>Führt eine vorübergehende Weiterleitung aus (Antwortcode 302).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Off">
<summary>Führt keine automatische Weiterleitung aus (deaktiviert).</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode"></member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Static">
<summary />
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Dynamic">
<summary />
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Disabled">
<summary />
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection)">
<summary> Aktiviert Friendly URLs für Web Forms-Seiten. </summary>
<param name="routes">Die Routenauflistung.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings)">
<summary>Aktiviert Friendly URLs für Web Forms-Seiten.</summary>
<param name="routes">Die Routenauflistung.</param>
<param name="settings">Die Einstellungen, die beim Aktivieren von Friendly URLs verwendet werden sollen.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Aktiviert Friendly URLs mithilfe der übergebenen Konfliktlöser. </summary>
<param name="routes">Die Routenauflistung.</param>
<param name="settings">Die Einstellungen, die beim Aktivieren von Friendly URLs verwendet werden sollen.</param>
<param name="resolvers">Die zu verwendenden Konfliktlöser für Friendly URLs.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Aktiviert Friendly URLs mithilfe der angegebenen Konfliktlöser. </summary>
<param name="routes">Die Routenauflistung.</param>
<param name="resolvers">Die zu verwendenden Konfliktlöser für Friendly URLs.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver">
<summary>Löst eine Friendly URL in einen HTTP-Handler auf.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.#ctor(System.String)">
<summary>Erstellt einen FriendlyUrlResolver für die angegebene Erweiterung.</summary>
<param name="fileExtension">Die physische Dateierweiterung, die dieser Konfliktlöser erkennen kann. Der führende Punkt muss enthalten sein, z. B. .aspx.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.ConvertToFriendlyUrl(System.String)">
<summary>Konvertiert eine typische URL mit Erweiterung in eine Friendly URL ohne Erweiterung.</summary>
<returns>Die Friendly URL (ohne Erweiterung), wenn dieser Konfliktlöser automatisch URLs ohne Erweiterung physischen Dateien mit der bereitgestellten Erweiterung zuordnen kann. Andernfalls null.</returns>
<param name="path">Der ursprüngliche Pfad einschließlich der Dateierweiterung.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<summary>Ruft beim Versuch, einen HTTP-Handler aus der Friendly URL aufzulösen, die zu verwendenden Erweiterungen ab, z. B. .aspx, .ashx, .mobile.aspx.</summary>
<returns>Die Liste der Erweiterungen.</returns>
<param name="httpContext">Der aktuelle HttpContext.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver">
<summary>Löst Friendly URLs in generische Handler auf, z. B. in ASHX.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver.#ctor"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.ConvertToFriendlyUrl(System.String)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver">
<summary>Löst Friendly URLs in Web Forms-Seiten auf.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.#ctor"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<returns>Gibt <see cref="T:System.Collections.Generic.IList`1" /> zurück.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileExtension(System.Web.HttpContextBase,System.String)">
<returns>Gibt <see cref="T:System.Boolean" /> zurück.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileView(System.Web.HttpContextBase)">
<summary>Ermittelt, ob die aktuelle Friendly URL in eine mobile Ansicht basierend auf dem Clientbrowser und/oder Außerkraftsetzungen aufgelöst wurde.</summary>
<returns>Gibt an, ob es sich bei der aktuellen Ansicht um eine mobile Ansicht handelt.</returns>
<param name="httpContext">Die Seite.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMasterPageFile(System.Web.UI.Page,System.String)">
<summary>Versucht, die Eigenschaft MasterPageFile für die angegebene Seite basierend auf dem Vorhandensein der Gestaltungsvorlage festzulegen.</summary>
<returns>Ein boolescher Wert, der angibt, ob die Gestaltungsvorlage festgelegt wurde.</returns>
<param name="page">Die Seite.</param>
<param name="masterPageFile">Der virtuelle Dateipfad der Gestaltungsvorlage.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMobileMasterPage(System.Web.HttpContextBase,System.Web.UI.Page,System.String)">
<summary>Versucht, die Eigenschaft MasterPageFile für die angegebene Seite auf eine bestimmte mobile Gestaltungsvorlage festzulegen.</summary>
<returns>Ein boolescher Wert, der angibt, ob die Gestaltungsvorlage festgelegt wurde.</returns>
<param name="httpContext">Der HTTP-Kontext.</param>
<param name="page">Die Seite.</param>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.ViewSwitcherCookieName"></member>
</members>
</doc>

View File

@@ -0,0 +1,187 @@
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly>
<name>Microsoft.AspNet.FriendlyUrls</name>
</assembly>
<members>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrl"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Href(System.String,System.Object[])"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Resolve(System.String)">
<summary> Löst den virtuellen Pfad eines Dateihandlers in eine Friendly URL mithilfe der registrierten Konfliktlöser auf. </summary>
<returns>Die Friendly URL.</returns>
<param name="virtualPath">Der virtuelle Pfad des Handlers.</param>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrl.Segments">
<summary> Die URL-Segmente, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings">
<summary>Stellt die Einstellungen dar, die beim Aktivieren von Friendly URLs verwendet werden.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.#ctor">
<summary>Erstellt eine neue Instanz der Klasse FriendlyUrlSettings mit den Standardwerten.</summary>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.AutoRedirectMode">
<summary>Der Weiterleitungstyp, der für Nicht-Friendly URLs an Friendly URLs ausgeführt werden soll. Der Standardwert ist Deaktiviert.</summary>
<returns>Gibt <see cref="T:Microsoft.AspNet.FriendlyUrls.RedirectMode" /> zurück.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.ResolverCachingMode">
<returns>Gibt <see cref="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode" /> zurück.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewRouteName">
<summary>Der Name der Route, die Benutzeranforderungen zum Wechseln der Ansicht verarbeitet. Der Standardwert ist AspNet.FriendlyUrls.SwitchView.</summary>
<returns>Gibt <see cref="T:System.String" /> zurück.</returns>
</member>
<member name="P:Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings.SwitchViewUrl">
<summary>Die URL, an die Anforderung zum Wechseln der Ansicht gesendet werden. Der Standardwert ist __FriendlyUrls_SwitchView/{Ansicht}.</summary>
<returns>Gibt <see cref="T:System.String" /> zurück.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequest)">
<summary> Gibt die Erweiterung der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Die Dateierweiterung, z. B. ASPX.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileExtension(System.Web.HttpRequestBase)">
<summary> Gibt die Erweiterung der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Die Dateierweiterung, z. B. ASPX.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequest)">
<summary> Gibt den virtuellen Pfad der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Der virtuelle Dateipfad.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlFileVirtualPath(System.Web.HttpRequestBase)">
<summary> Gibt den virtuellen Pfad der Datei zurück, der Friendly URLs diese Anforderung zugeordnet haben. </summary>
<returns>Der virtuelle Dateipfad.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequest)">
<summary> Gibt die URL-Segmente zurück, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
<returns>Die URL-Segmente.</returns>
<param name="httpRequest">Das HttpRequest-Objekt.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.HttpRequestExtensions.GetFriendlyUrlSegments(System.Web.HttpRequestBase)">
<summary> Gibt die URL-Segmente zurück, die überzählig sind, nachdem Friendly URLs diese Anforderung einer Datei zugeordnet haben. </summary>
<returns>Die URL-Segmente.</returns>
<param name="httpRequest">Das HttpRequestBase-Objekt.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.PreApplicationStartCode.Start"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RedirectMode">
<summary>Stellt den bei der automatischen Weiterleitung an Friendly URLs zu verwendenden Weiterleitungsmodus dar.</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Permanent">
<summary>Führt eine dauerhafte Weiterleitung aus (Antwortcode 301).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Temporary">
<summary>Führt eine vorübergehende Weiterleitung aus (Antwortcode 302).</summary>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.RedirectMode.Off">
<summary>Führt keine automatische Weiterleitung aus (deaktiviert).</summary>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode"></member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Static">
<summary />
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Dynamic">
<summary />
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.ResolverCachingMode.Disabled">
<summary />
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection)">
<summary> Aktiviert Friendly URLs für Web Forms-Seiten. </summary>
<param name="routes">Die Routenauflistung.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings)">
<summary>Aktiviert Friendly URLs für Web Forms-Seiten.</summary>
<param name="routes">Die Routenauflistung.</param>
<param name="settings">Die Einstellungen, die beim Aktivieren von Friendly URLs verwendet werden sollen.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.FriendlyUrlSettings,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Aktiviert Friendly URLs mithilfe der übergebenen Konfliktlöser. </summary>
<param name="routes">Die Routenauflistung.</param>
<param name="settings">Die Einstellungen, die beim Aktivieren von Friendly URLs verwendet werden sollen.</param>
<param name="resolvers">Die zu verwendenden Konfliktlöser für Friendly URLs.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.RouteCollectionExtensions.EnableFriendlyUrls(System.Web.Routing.RouteCollection,Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver[])">
<summary> Aktiviert Friendly URLs mithilfe der angegebenen Konfliktlöser. </summary>
<param name="routes">Die Routenauflistung.</param>
<param name="resolvers">Die zu verwendenden Konfliktlöser für Friendly URLs.</param>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsAttribute">
<summary>Represents an attribute that specifies that model binding values are provided by a friendly URL segment.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsAttribute.#ctor(System.Int32)">
<summary> Creates an instance of the FriendlyUrlSegmentsAttribute class.</summary>
<param name="index">The index of the URL segment to return.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsAttribute.GetValueProvider(System.Web.ModelBinding.ModelBindingExecutionContext)">
<returns>Returns <see cref="T:System.Web.ModelBinding.IValueProvider" />.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsValueProvider">
<summary> A value provider that retrieves values from the segments of a Friendly URL.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsValueProvider.#ctor(System.Web.ModelBinding.ModelBindingExecutionContext,System.Int32)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.ModelBinding.FriendlyUrlSegmentsValueProvider.FetchValue(System.String)">
<returns>Returns <see cref="T:System.Object" />.</returns>
</member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver">
<summary>Löst eine Friendly URL in einen HTTP-Handler auf.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.#ctor(System.String)">
<summary>Erstellt einen FriendlyUrlResolver für die angegebene Erweiterung.</summary>
<param name="fileExtension">Die physische Dateierweiterung, die dieser Konfliktlöser erkennen kann. Der führende Punkt muss enthalten sein, z. B. .aspx.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.ConvertToFriendlyUrl(System.String)">
<summary>Konvertiert eine typische URL mit Erweiterung in eine Friendly URL ohne Erweiterung.</summary>
<returns>Die Friendly URL (ohne Erweiterung), wenn dieser Konfliktlöser automatisch URLs ohne Erweiterung physischen Dateien mit der bereitgestellten Erweiterung zuordnen kann. Andernfalls null.</returns>
<param name="path">Der ursprüngliche Pfad einschließlich der Dateierweiterung.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<summary>Ruft beim Versuch, einen HTTP-Handler aus der Friendly URL aufzulösen, die zu verwendenden Erweiterungen ab, z. B. .aspx, .ashx, .mobile.aspx.</summary>
<returns>Die Liste der Erweiterungen.</returns>
<param name="httpContext">Der aktuelle HttpContext.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.FriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver">
<summary>Löst Friendly URLs in generische Handler auf, z. B. in ASHX.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.GenericHandlerFriendlyUrlResolver.#ctor"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.ConvertToFriendlyUrl(System.String)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.IFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="T:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver">
<summary>Löst Friendly URLs in Web Forms-Seiten auf.</summary>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.#ctor"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.GetExtensions(System.Web.HttpContextBase)">
<returns>Gibt <see cref="T:System.Collections.Generic.IList`1" /> zurück.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileExtension(System.Web.HttpContextBase,System.String)">
<returns>Gibt <see cref="T:System.Boolean" /> zurück.</returns>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.IsMobileView(System.Web.HttpContextBase)">
<summary>Ermittelt, ob die aktuelle Friendly URL in eine mobile Ansicht basierend auf dem Clientbrowser und/oder Außerkraftsetzungen aufgelöst wurde.</summary>
<returns>Gibt an, ob es sich bei der aktuellen Ansicht um eine mobile Ansicht handelt.</returns>
<param name="httpContext">Die Seite.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.PreprocessRequest(System.Web.HttpContextBase,System.Web.IHttpHandler)"></member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMasterPageFile(System.Web.UI.Page,System.String)">
<summary>Versucht, die Eigenschaft MasterPageFile für die angegebene Seite basierend auf dem Vorhandensein der Gestaltungsvorlage festzulegen.</summary>
<returns>Ein boolescher Wert, der angibt, ob die Gestaltungsvorlage festgelegt wurde.</returns>
<param name="page">Die Seite.</param>
<param name="masterPageFile">Der virtuelle Dateipfad der Gestaltungsvorlage.</param>
</member>
<member name="M:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.TrySetMobileMasterPage(System.Web.HttpContextBase,System.Web.UI.Page,System.String)">
<summary>Versucht, die Eigenschaft MasterPageFile für die angegebene Seite auf eine bestimmte mobile Gestaltungsvorlage festzulegen.</summary>
<returns>Ein boolescher Wert, der angibt, ob die Gestaltungsvorlage festgelegt wurde.</returns>
<param name="httpContext">Der HTTP-Kontext.</param>
<param name="page">Die Seite.</param>
</member>
<member name="F:Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver.ViewSwitcherCookieName"></member>
</members>
</doc>

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,6 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/MicrosoftAjaxTimer.js
//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxTimer.js
Type._registerScript("Timer.js",["MicrosoftAjaxComponentModel.js"]);Sys.UI._Timer=function(a){Sys.UI._Timer.initializeBase(this,[a]);this._interval=60000;this._enabled=true;this._postbackPending=false;this._raiseTickDelegate=null;this._endRequestHandlerDelegate=null;this._timer=null;this._pageRequestManager=null;this._uniqueID=null};Sys.UI._Timer.prototype={get_enabled:function(){return this._enabled},set_enabled:function(a){this._enabled=a},get_interval:function(){return this._interval},set_interval:function(a){this._interval=a},get_uniqueID:function(){return this._uniqueID},set_uniqueID:function(a){this._uniqueID=a},dispose:function(){this._stopTimer();if(this._pageRequestManager!==null)this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);Sys.UI._Timer.callBaseMethod(this,"dispose")},_doPostback:function(){__doPostBack(this.get_uniqueID(),"")},_handleEndRequest:function(c,b){var a=b.get_dataItems()[this.get_id()];if(a)this._update(a[0],a[1]);if(this._postbackPending===true&&this._pageRequestManager!==null&&this._pageRequestManager.get_isInAsyncPostBack()===false){this._postbackPending=false;this._doPostback()}},initialize:function(){Sys.UI._Timer.callBaseMethod(this,"initialize");this._raiseTickDelegate=Function.createDelegate(this,this._raiseTick);this._endRequestHandlerDelegate=Function.createDelegate(this,this._handleEndRequest);if(Sys.WebForms&&Sys.WebForms.PageRequestManager)this._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();if(this._pageRequestManager!==null)this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);if(this.get_enabled())this._startTimer()},_raiseTick:function(){this._startTimer();if(this._pageRequestManager===null||!this._pageRequestManager.get_isInAsyncPostBack()){this._doPostback();this._postbackPending=false}else this._postbackPending=true},_startTimer:function(){this._timer=window.setTimeout(Function.createDelegate(this,this._raiseTick),this.get_interval())},_stopTimer:function(){if(this._timer!==null){window.clearTimeout(this._timer);this._timer=null}},_update:function(c,b){var a=!this.get_enabled(),d=this.get_interval()!==b;if(!a&&(!c||d)){this._stopTimer();a=true}this.set_enabled(c);this.set_interval(b);if(this.get_enabled()&&a)this._startTimer()}};Sys.UI._Timer.registerClass("Sys.UI._Timer",Sys.UI.Control);

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,6 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/MicrosoftAjaxWebServices.js
//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxWebServices.js
Type._registerScript("MicrosoftAjaxWebServices.js",["MicrosoftAjaxNetwork.js"]);Type.registerNamespace("Sys.Net");Sys.Net.WebServiceProxy=function(){};Sys.Net.WebServiceProxy.prototype={get_timeout:function(){return this._timeout||0},set_timeout:function(a){if(a<0)throw Error.argumentOutOfRange("value",a,Sys.Res.invalidTimeout);this._timeout=a},get_defaultUserContext:function(){return typeof this._userContext==="undefined"?null:this._userContext},set_defaultUserContext:function(a){this._userContext=a},get_defaultSucceededCallback:function(){return this._succeeded||null},set_defaultSucceededCallback:function(a){this._succeeded=a},get_defaultFailedCallback:function(){return this._failed||null},set_defaultFailedCallback:function(a){this._failed=a},get_enableJsonp:function(){return !!this._jsonp},set_enableJsonp:function(a){this._jsonp=a},get_path:function(){return this._path||null},set_path:function(a){this._path=a},get_jsonpCallbackParameter:function(){return this._callbackParameter||"callback"},set_jsonpCallbackParameter:function(a){this._callbackParameter=a},_invoke:function(d,e,g,f,c,b,a){c=c||this.get_defaultSucceededCallback();b=b||this.get_defaultFailedCallback();if(a===null||typeof a==="undefined")a=this.get_defaultUserContext();return Sys.Net.WebServiceProxy.invoke(d,e,g,f,c,b,a,this.get_timeout(),this.get_enableJsonp(),this.get_jsonpCallbackParameter())}};Sys.Net.WebServiceProxy.registerClass("Sys.Net.WebServiceProxy");Sys.Net.WebServiceProxy.invoke=function(q,a,m,l,j,b,g,e,w,p){var i=w!==false?Sys.Net.WebServiceProxy._xdomain.exec(q):null,c,n=i&&i.length===3&&(i[1]!==location.protocol||i[2]!==location.host);m=n||m;if(n){p=p||"callback";c="_jsonp"+Sys._jsonp++}if(!l)l={};var r=l;if(!m||!r)r={};var s,h,f=null,k,o=null,u=Sys.Net.WebRequest._createUrl(a?q+"/"+encodeURIComponent(a):q,r,n?p+"=Sys."+c:null);if(n){s=document.createElement("script");s.src=u;k=new Sys._ScriptLoaderTask(s,function(d,b){if(!b||c)t({Message:String.format(Sys.Res.webServiceFailedNoMsg,a)},-1)});function v(){if(f===null)return;f=null;h=new Sys.Net.WebServiceError(true,String.format(Sys.Res.webServiceTimedOut,a));k.dispose();delete Sys[c];if(b)b(h,g,a)}function t(d,e){if(f!==null){window.clearTimeout(f);f=null}k.dispose();delete Sys[c];c=null;if(typeof e!=="undefined"&&e!==200){if(b){h=new Sys.Net.WebServiceError(false,d.Message||String.format(Sys.Res.webServiceFailedNoMsg,a),d.StackTrace||null,d.ExceptionType||null,d);h._statusCode=e;b(h,g,a)}}else if(j)j(d,g,a)}Sys[c]=t;e=e||Sys.Net.WebRequestManager.get_defaultTimeout();if(e>0)f=window.setTimeout(v,e);k.execute();return null}var d=new Sys.Net.WebRequest;d.set_url(u);d.get_headers()["Content-Type"]="application/json; charset=utf-8";if(!m){o=Sys.Serialization.JavaScriptSerializer.serialize(l);if(o==="{}")o=""}d.set_body(o);d.add_completed(x);if(e&&e>0)d.set_timeout(e);d.invoke();function x(d){if(d.get_responseAvailable()){var f=d.get_statusCode(),c=null;try{var e=d.getResponseHeader("Content-Type");if(e.startsWith("application/json"))c=d.get_object();else if(e.startsWith("text/xml"))c=d.get_xml();else c=d.get_responseData()}catch(m){}var k=d.getResponseHeader("jsonerror"),h=k==="true";if(h){if(c)c=new Sys.Net.WebServiceError(false,c.Message,c.StackTrace,c.ExceptionType,c)}else if(e.startsWith("application/json"))c=!c||typeof c.d==="undefined"?c:c.d;if(f<200||f>=300||h){if(b){if(!c||!h)c=new Sys.Net.WebServiceError(false,String.format(Sys.Res.webServiceFailedNoMsg,a));c._statusCode=f;b(c,g,a)}}else if(j)j(c,g,a)}else{var i;if(d.get_timedOut())i=String.format(Sys.Res.webServiceTimedOut,a);else i=String.format(Sys.Res.webServiceFailedNoMsg,a);if(b)b(new Sys.Net.WebServiceError(d.get_timedOut(),i,"",""),g,a)}}return d};Sys.Net.WebServiceProxy._generateTypedConstructor=function(a){return function(b){if(b)for(var c in b)this[c]=b[c];this.__type=a}};Sys._jsonp=0;Sys.Net.WebServiceProxy._xdomain=/^\s*([a-zA-Z0-9\+\-\.]+\:)\/\/([^?#\/]+)/;Sys.Net.WebServiceError=function(d,e,c,a,b){this._timedOut=d;this._message=e;this._stackTrace=c;this._exceptionType=a;this._errorObject=b;this._statusCode=-1};Sys.Net.WebServiceError.prototype={get_timedOut:function(){return this._timedOut},get_statusCode:function(){return this._statusCode},get_message:function(){return this._message},get_stackTrace:function(){return this._stackTrace||""},get_exceptionType:function(){return this._exceptionType||""},get_errorObject:function(){return this._errorObject||null}};Sys.Net.WebServiceError.registerClass("Sys.Net.WebServiceError");

View File

@@ -0,0 +1,34 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/DetailsView.js
function DetailsView() {
this.pageIndex = null;
this.dataKeys = null;
this.createPropertyString = DetailsView_createPropertyString;
this.setStateField = DetailsView_setStateValue;
this.getHiddenFieldContents = DetailsView_getHiddenFieldContents;
this.stateField = null;
this.panelElement = null;
this.callback = null;
}
function DetailsView_createPropertyString() {
return createPropertyStringFromValues_DetailsView(this.pageIndex, this.dataKeys);
}
function DetailsView_setStateValue() {
this.stateField.value = this.createPropertyString();
}
function DetailsView_OnCallback (result, context) {
var value = new String(result);
var valsArray = value.split("|");
var innerHtml = valsArray[2];
for (var i = 3; i < valsArray.length; i++) {
innerHtml += "|" + valsArray[i];
}
context.panelElement.innerHTML = innerHtml;
context.stateField.value = createPropertyStringFromValues_DetailsView(valsArray[0], valsArray[1]);
}
function DetailsView_getHiddenFieldContents(arg) {
return arg + "|" + this.stateField.value;
}
function createPropertyStringFromValues_DetailsView(pageIndex, dataKeys) {
var value = new Array(pageIndex, dataKeys);
return value.join("|");
}

View File

@@ -0,0 +1,93 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/WebForms.js
function WebForm_FindFirstFocusableChild(control) {
if (!control || !(control.tagName)) {
return null;
}
var tagName = control.tagName.toLowerCase();
if (tagName == "undefined") {
return null;
}
var children = control.childNodes;
if (children) {
for (var i = 0; i < children.length; i++) {
try {
if (WebForm_CanFocus(children[i])) {
return children[i];
}
else {
var focused = WebForm_FindFirstFocusableChild(children[i]);
if (WebForm_CanFocus(focused)) {
return focused;
}
}
} catch (e) {
}
}
}
return null;
}
function WebForm_AutoFocus(focusId) {
var targetControl;
if (__nonMSDOMBrowser) {
targetControl = document.getElementById(focusId);
}
else {
targetControl = document.all[focusId];
}
var focused = targetControl;
if (targetControl && (!WebForm_CanFocus(targetControl)) ) {
focused = WebForm_FindFirstFocusableChild(targetControl);
}
if (focused) {
try {
focused.focus();
if (__nonMSDOMBrowser) {
focused.scrollIntoView(false);
}
if (window.__smartNav) {
window.__smartNav.ae = focused.id;
}
}
catch (e) {
}
}
}
function WebForm_CanFocus(element) {
if (!element || !(element.tagName)) return false;
var tagName = element.tagName.toLowerCase();
return (!(element.disabled) &&
(!(element.type) || element.type.toLowerCase() != "hidden") &&
WebForm_IsFocusableTag(tagName) &&
WebForm_IsInVisibleContainer(element)
);
}
function WebForm_IsFocusableTag(tagName) {
return (tagName == "input" ||
tagName == "textarea" ||
tagName == "select" ||
tagName == "button" ||
tagName == "a");
}
function WebForm_IsInVisibleContainer(ctrl) {
var current = ctrl;
while((typeof(current) != "undefined") && (current != null)) {
if (current.disabled ||
( typeof(current.style) != "undefined" &&
( ( typeof(current.style.display) != "undefined" &&
current.style.display == "none") ||
( typeof(current.style.visibility) != "undefined" &&
current.style.visibility == "hidden") ) ) ) {
return false;
}
if (typeof(current.parentNode) != "undefined" &&
current.parentNode != null &&
current.parentNode != current &&
current.parentNode.tagName.toLowerCase() != "body") {
current = current.parentNode;
}
else {
return true;
}
}
return true;
}

View File

@@ -0,0 +1,36 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/GridView.js
function GridView() {
this.pageIndex = null;
this.sortExpression = null;
this.sortDirection = null;
this.dataKeys = null;
this.createPropertyString = GridView_createPropertyString;
this.setStateField = GridView_setStateValue;
this.getHiddenFieldContents = GridView_getHiddenFieldContents;
this.stateField = null;
this.panelElement = null;
this.callback = null;
}
function GridView_createPropertyString() {
return createPropertyStringFromValues_GridView(this.pageIndex, this.sortDirection, this.sortExpression, this.dataKeys);
}
function GridView_setStateValue() {
this.stateField.value = this.createPropertyString();
}
function GridView_OnCallback (result, context) {
var value = new String(result);
var valsArray = value.split("|");
var innerHtml = valsArray[4];
for (var i = 5; i < valsArray.length; i++) {
innerHtml += "|" + valsArray[i];
}
context.panelElement.innerHTML = innerHtml;
context.stateField.value = createPropertyStringFromValues_GridView(valsArray[0], valsArray[1], valsArray[2], valsArray[3]);
}
function GridView_getHiddenFieldContents(arg) {
return arg + "|" + this.stateField.value;
}
function createPropertyStringFromValues_GridView(pageIndex, sortDirection, sortExpression, dataKeys) {
var value = new Array(pageIndex, sortDirection, sortExpression, dataKeys);
return value.join("|");
}

View File

@@ -0,0 +1,898 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/Menu.js
var __rootMenuItem;
var __menuInterval;
var __scrollPanel;
var __disappearAfter = 500;
function Menu_ClearInterval() {
if (__menuInterval) {
window.clearInterval(__menuInterval);
}
}
function Menu_Collapse(item) {
Menu_SetRoot(item);
if (__rootMenuItem) {
Menu_ClearInterval();
if (__disappearAfter >= 0) {
__menuInterval = window.setInterval("Menu_HideItems()", __disappearAfter);
}
}
}
function Menu_Expand(item, horizontalOffset, verticalOffset, hideScrollers) {
Menu_ClearInterval();
var tr = item.parentNode.parentNode.parentNode.parentNode.parentNode;
var horizontal = true;
if (!tr.id) {
horizontal = false;
tr = tr.parentNode;
}
var child = Menu_FindSubMenu(item);
if (child) {
var data = Menu_GetData(item);
if (!data) {
return null;
}
child.rel = tr.id;
child.x = horizontalOffset;
child.y = verticalOffset;
if (horizontal) child.pos = "bottom";
PopOut_Show(child.id, hideScrollers, data);
}
Menu_SetRoot(item);
if (child) {
if (!document.body.__oldOnClick && document.body.onclick) {
document.body.__oldOnClick = document.body.onclick;
}
if (__rootMenuItem) {
document.body.onclick = Menu_HideItems;
}
}
Menu_ResetSiblings(tr);
return child;
}
function Menu_FindMenu(item) {
if (item && item.menu) return item.menu;
var tr = item.parentNode.parentNode.parentNode.parentNode.parentNode;
if (!tr.id) {
tr = tr.parentNode;
}
for (var i = tr.id.length - 1; i >= 0; i--) {
if (tr.id.charAt(i) < '0' || tr.id.charAt(i) > '9') {
var menu = WebForm_GetElementById(tr.id.substr(0, i));
if (menu) {
item.menu = menu;
return menu;
}
}
}
return null;
}
function Menu_FindNext(item) {
var a = WebForm_GetElementByTagName(item, "A");
var parent = Menu_FindParentContainer(item);
var first = null;
if (parent) {
var links = WebForm_GetElementsByTagName(parent, "A");
var match = false;
for (var i = 0; i < links.length; i++) {
var link = links[i];
if (Menu_IsSelectable(link)) {
if (Menu_FindParentContainer(link) == parent) {
if (match) {
return link;
}
else if (!first) {
first = link;
}
}
if (!match && link == a) {
match = true;
}
}
}
}
return first;
}
function Menu_FindParentContainer(item) {
if (item.menu_ParentContainerCache) return item.menu_ParentContainerCache;
var a = (item.tagName.toLowerCase() == "a") ? item : WebForm_GetElementByTagName(item, "A");
var menu = Menu_FindMenu(a);
if (menu) {
var parent = item;
while (parent && parent.tagName &&
parent.id != menu.id &&
parent.tagName.toLowerCase() != "div") {
parent = parent.parentNode;
}
item.menu_ParentContainerCache = parent;
return parent;
}
}
function Menu_FindParentItem(item) {
var parentContainer = Menu_FindParentContainer(item);
var parentContainerID = parentContainer.id;
var len = parentContainerID.length;
if (parentContainerID && parentContainerID.substr(len - 5) == "Items") {
var parentItemID = parentContainerID.substr(0, len - 5);
return WebForm_GetElementById(parentItemID);
}
return null;
}
function Menu_FindPrevious(item) {
var a = WebForm_GetElementByTagName(item, "A");
var parent = Menu_FindParentContainer(item);
var last = null;
if (parent) {
var links = WebForm_GetElementsByTagName(parent, "A");
for (var i = 0; i < links.length; i++) {
var link = links[i];
if (Menu_IsSelectable(link)) {
if (link == a && last) {
return last;
}
if (Menu_FindParentContainer(link) == parent) {
last = link;
}
}
}
}
return last;
}
function Menu_FindSubMenu(item) {
var tr = item.parentNode.parentNode.parentNode.parentNode.parentNode;
if (!tr.id) {
tr=tr.parentNode;
}
return WebForm_GetElementById(tr.id + "Items");
}
function Menu_Focus(item) {
if (item && item.focus) {
var pos = WebForm_GetElementPosition(item);
var parentContainer = Menu_FindParentContainer(item);
if (!parentContainer.offset) {
parentContainer.offset = 0;
}
var posParent = WebForm_GetElementPosition(parentContainer);
var delta;
if (pos.y + pos.height > posParent.y + parentContainer.offset + parentContainer.clippedHeight) {
delta = pos.y + pos.height - posParent.y - parentContainer.offset - parentContainer.clippedHeight;
PopOut_Scroll(parentContainer, delta);
}
else if (pos.y < posParent.y + parentContainer.offset) {
delta = posParent.y + parentContainer.offset - pos.y;
PopOut_Scroll(parentContainer, -delta);
}
PopOut_HideScrollers(parentContainer);
item.focus();
}
}
function Menu_GetData(item) {
if (!item.data) {
var a = (item.tagName.toLowerCase() == "a" ? item : WebForm_GetElementByTagName(item, "a"));
var menu = Menu_FindMenu(a);
try {
item.data = eval(menu.id + "_Data");
}
catch(e) {}
}
return item.data;
}
function Menu_HideItems(items) {
if (document.body.__oldOnClick) {
document.body.onclick = document.body.__oldOnClick;
document.body.__oldOnClick = null;
}
Menu_ClearInterval();
if (!items || ((typeof(items.tagName) == "undefined") && (items instanceof Event))) {
items = __rootMenuItem;
}
var table = items;
if ((typeof(table) == "undefined") || (table == null) || !table.tagName || (table.tagName.toLowerCase() != "table")) {
table = WebForm_GetElementByTagName(table, "TABLE");
}
if ((typeof(table) == "undefined") || (table == null) || !table.tagName || (table.tagName.toLowerCase() != "table")) {
return;
}
var rows = table.rows ? table.rows : table.firstChild.rows;
var isVertical = false;
for (var r = 0; r < rows.length; r++) {
if (rows[r].id) {
isVertical = true;
break;
}
}
var i, child, nextLevel;
if (isVertical) {
for(i = 0; i < rows.length; i++) {
if (rows[i].id) {
child = WebForm_GetElementById(rows[i].id + "Items");
if (child) {
Menu_HideItems(child);
}
}
else if (rows[i].cells[0]) {
nextLevel = WebForm_GetElementByTagName(rows[i].cells[0], "TABLE");
if (nextLevel) {
Menu_HideItems(nextLevel);
}
}
}
}
else if (rows[0]) {
for(i = 0; i < rows[0].cells.length; i++) {
if (rows[0].cells[i].id) {
child = WebForm_GetElementById(rows[0].cells[i].id + "Items");
if (child) {
Menu_HideItems(child);
}
}
else {
nextLevel = WebForm_GetElementByTagName(rows[0].cells[i], "TABLE");
if (nextLevel) {
Menu_HideItems(rows[0].cells[i].firstChild);
}
}
}
}
if (items && items.id) {
PopOut_Hide(items.id);
}
}
function Menu_HoverDisabled(item) {
var node = (item.tagName.toLowerCase() == "td") ?
item:
item.cells[0];
var data = Menu_GetData(item);
if (!data) return;
node = WebForm_GetElementByTagName(node, "table").rows[0].cells[0].childNodes[0];
if (data.disappearAfter >= 200) {
__disappearAfter = data.disappearAfter;
}
Menu_Expand(node, data.horizontalOffset, data.verticalOffset);
}
function Menu_HoverDynamic(item) {
var node = (item.tagName.toLowerCase() == "td") ?
item:
item.cells[0];
var data = Menu_GetData(item);
if (!data) return;
var nodeTable = WebForm_GetElementByTagName(node, "table");
if (data.hoverClass) {
nodeTable.hoverClass = data.hoverClass;
WebForm_AppendToClassName(nodeTable, data.hoverClass);
}
node = nodeTable.rows[0].cells[0].childNodes[0];
if (data.hoverHyperLinkClass) {
node.hoverHyperLinkClass = data.hoverHyperLinkClass;
WebForm_AppendToClassName(node, data.hoverHyperLinkClass);
}
if (data.disappearAfter >= 200) {
__disappearAfter = data.disappearAfter;
}
Menu_Expand(node, data.horizontalOffset, data.verticalOffset);
}
function Menu_HoverRoot(item) {
var node = (item.tagName.toLowerCase() == "td") ?
item:
item.cells[0];
var data = Menu_GetData(item);
if (!data) {
return null;
}
var nodeTable = WebForm_GetElementByTagName(node, "table");
if (data.staticHoverClass) {
nodeTable.hoverClass = data.staticHoverClass;
WebForm_AppendToClassName(nodeTable, data.staticHoverClass);
}
node = nodeTable.rows[0].cells[0].childNodes[0];
if (data.staticHoverHyperLinkClass) {
node.hoverHyperLinkClass = data.staticHoverHyperLinkClass;
WebForm_AppendToClassName(node, data.staticHoverHyperLinkClass);
}
return node;
}
function Menu_HoverStatic(item) {
var node = Menu_HoverRoot(item);
var data = Menu_GetData(item);
if (!data) return;
__disappearAfter = data.disappearAfter;
Menu_Expand(node, data.horizontalOffset, data.verticalOffset);
}
function Menu_IsHorizontal(item) {
if (item) {
var a = ((item.tagName && (item.tagName.toLowerCase == "a")) ? item : WebForm_GetElementByTagName(item, "A"));
if (!a) {
return false;
}
var td = a.parentNode.parentNode.parentNode.parentNode.parentNode;
if (td.id) {
return true;
}
}
return false;
}
function Menu_IsSelectable(link) {
return (link && link.href)
}
function Menu_Key(item) {
var event;
if (item.currentTarget) {
event = item;
item = event.currentTarget;
}
else {
event = window.event;
}
var key = (event ? event.keyCode : -1);
var data = Menu_GetData(item);
if (!data) return;
var horizontal = Menu_IsHorizontal(item);
var a = WebForm_GetElementByTagName(item, "A");
var nextItem, parentItem, previousItem;
if ((!horizontal && key == 38) || (horizontal && key == 37)) {
previousItem = Menu_FindPrevious(item);
while (previousItem && previousItem.disabled) {
previousItem = Menu_FindPrevious(previousItem);
}
if (previousItem) {
Menu_Focus(previousItem);
Menu_Expand(previousItem, data.horizontalOffset, data.verticalOffset, true);
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return;
}
}
if ((!horizontal && key == 40) || (horizontal && key == 39)) {
if (horizontal) {
var subMenu = Menu_FindSubMenu(a);
if (subMenu && subMenu.style && subMenu.style.visibility &&
subMenu.style.visibility.toLowerCase() == "hidden") {
Menu_Expand(a, data.horizontalOffset, data.verticalOffset, true);
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return;
}
}
nextItem = Menu_FindNext(item);
while (nextItem && nextItem.disabled) {
nextItem = Menu_FindNext(nextItem);
}
if (nextItem) {
Menu_Focus(nextItem);
Menu_Expand(nextItem, data.horizontalOffset, data.verticalOffset, true);
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return;
}
}
if ((!horizontal && key == 39) || (horizontal && key == 40)) {
var children = Menu_Expand(a, data.horizontalOffset, data.verticalOffset, true);
if (children) {
var firstChild;
children = WebForm_GetElementsByTagName(children, "A");
for (var i = 0; i < children.length; i++) {
if (!children[i].disabled && Menu_IsSelectable(children[i])) {
firstChild = children[i];
break;
}
}
if (firstChild) {
Menu_Focus(firstChild);
Menu_Expand(firstChild, data.horizontalOffset, data.verticalOffset, true);
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return;
}
}
else {
parentItem = Menu_FindParentItem(item);
while (parentItem && !Menu_IsHorizontal(parentItem)) {
parentItem = Menu_FindParentItem(parentItem);
}
if (parentItem) {
nextItem = Menu_FindNext(parentItem);
while (nextItem && nextItem.disabled) {
nextItem = Menu_FindNext(nextItem);
}
if (nextItem) {
Menu_Focus(nextItem);
Menu_Expand(nextItem, data.horizontalOffset, data.verticalOffset, true);
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return;
}
}
}
}
if ((!horizontal && key == 37) || (horizontal && key == 38)) {
parentItem = Menu_FindParentItem(item);
if (parentItem) {
if (Menu_IsHorizontal(parentItem)) {
previousItem = Menu_FindPrevious(parentItem);
while (previousItem && previousItem.disabled) {
previousItem = Menu_FindPrevious(previousItem);
}
if (previousItem) {
Menu_Focus(previousItem);
Menu_Expand(previousItem, data.horizontalOffset, data.verticalOffset, true);
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return;
}
}
var parentA = WebForm_GetElementByTagName(parentItem, "A");
if (parentA) {
Menu_Focus(parentA);
}
Menu_ResetSiblings(parentItem);
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return;
}
}
if (key == 27) {
Menu_HideItems();
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return;
}
}
function Menu_ResetSiblings(item) {
var table = (item.tagName.toLowerCase() == "td") ?
item.parentNode.parentNode.parentNode :
item.parentNode.parentNode;
var isVertical = false;
for (var r = 0; r < table.rows.length; r++) {
if (table.rows[r].id) {
isVertical = true;
break;
}
}
var i, child, childNode;
if (isVertical) {
for(i = 0; i < table.rows.length; i++) {
childNode = table.rows[i];
if (childNode != item) {
child = WebForm_GetElementById(childNode.id + "Items");
if (child) {
Menu_HideItems(child);
}
}
}
}
else {
for(i = 0; i < table.rows[0].cells.length; i++) {
childNode = table.rows[0].cells[i];
if (childNode != item) {
child = WebForm_GetElementById(childNode.id + "Items");
if (child) {
Menu_HideItems(child);
}
}
}
}
Menu_ResetTopMenus(table, table, 0, true);
}
function Menu_ResetTopMenus(table, doNotReset, level, up) {
var i, child, childNode;
if (up && table.id == "") {
var parentTable = table.parentNode.parentNode.parentNode.parentNode;
if (parentTable.tagName.toLowerCase() == "table") {
Menu_ResetTopMenus(parentTable, doNotReset, level + 1, true);
}
}
else {
if (level == 0 && table != doNotReset) {
if (table.rows[0].id) {
for(i = 0; i < table.rows.length; i++) {
childNode = table.rows[i];
child = WebForm_GetElementById(childNode.id + "Items");
if (child) {
Menu_HideItems(child);
}
}
}
else {
for(i = 0; i < table.rows[0].cells.length; i++) {
childNode = table.rows[0].cells[i];
child = WebForm_GetElementById(childNode.id + "Items");
if (child) {
Menu_HideItems(child);
}
}
}
}
else if (level > 0) {
for (i = 0; i < table.rows.length; i++) {
for (var j = 0; j < table.rows[i].cells.length; j++) {
var subTable = table.rows[i].cells[j].firstChild;
if (subTable && subTable.tagName.toLowerCase() == "table") {
Menu_ResetTopMenus(subTable, doNotReset, level - 1, false);
}
}
}
}
}
}
function Menu_RestoreInterval() {
if (__menuInterval && __rootMenuItem) {
Menu_ClearInterval();
__menuInterval = window.setInterval("Menu_HideItems()", __disappearAfter);
}
}
function Menu_SetRoot(item) {
var newRoot = Menu_FindMenu(item);
if (newRoot) {
if (__rootMenuItem && __rootMenuItem != newRoot) {
Menu_HideItems();
}
__rootMenuItem = newRoot;
}
}
function Menu_Unhover(item) {
var node = (item.tagName.toLowerCase() == "td") ?
item:
item.cells[0];
var nodeTable = WebForm_GetElementByTagName(node, "table");
if (nodeTable.hoverClass) {
WebForm_RemoveClassName(nodeTable, nodeTable.hoverClass);
}
node = nodeTable.rows[0].cells[0].childNodes[0];
if (node.hoverHyperLinkClass) {
WebForm_RemoveClassName(node, node.hoverHyperLinkClass);
}
Menu_Collapse(node);
}
function PopOut_Clip(element, y, height) {
if (element && element.style) {
element.style.clip = "rect(" + y + "px auto " + (y + height) + "px auto)";
element.style.overflow = "hidden";
}
}
function PopOut_Down(scroller) {
Menu_ClearInterval();
var panel;
if (scroller) {
panel = scroller.parentNode
}
else {
panel = __scrollPanel;
}
if (panel && ((panel.offset + panel.clippedHeight) < panel.physicalHeight)) {
PopOut_Scroll(panel, 2)
__scrollPanel = panel;
PopOut_ShowScrollers(panel);
PopOut_Stop();
__scrollPanel.interval = window.setInterval("PopOut_Down()", 8);
}
else {
PopOut_ShowScrollers(panel);
}
}
function PopOut_Hide(panelId) {
var panel = WebForm_GetElementById(panelId);
if (panel && panel.tagName.toLowerCase() == "div") {
panel.style.visibility = "hidden";
panel.style.display = "none";
panel.offset = 0;
panel.scrollTop = 0;
var table = WebForm_GetElementByTagName(panel, "TABLE");
if (table) {
WebForm_SetElementY(table, 0);
}
if (window.navigator && window.navigator.appName == "Microsoft Internet Explorer" &&
!window.opera) {
var childFrameId = panel.id + "_MenuIFrame";
var childFrame = WebForm_GetElementById(childFrameId);
if (childFrame) {
childFrame.style.display = "none";
}
}
}
}
function PopOut_HideScrollers(panel) {
if (panel && panel.style) {
var up = WebForm_GetElementById(panel.id + "Up");
var dn = WebForm_GetElementById(panel.id + "Dn");
if (up) {
up.style.visibility = "hidden";
up.style.display = "none";
}
if (dn) {
dn.style.visibility = "hidden";
dn.style.display = "none";
}
}
}
function PopOut_Position(panel, hideScrollers) {
if (window.opera) {
panel.parentNode.removeChild(panel);
document.forms[0].appendChild(panel);
}
var rel = WebForm_GetElementById(panel.rel);
var relTable = WebForm_GetElementByTagName(rel, "TABLE");
var relCoordinates = WebForm_GetElementPosition(relTable ? relTable : rel);
var panelCoordinates = WebForm_GetElementPosition(panel);
var panelHeight = ((typeof(panel.physicalHeight) != "undefined") && (panel.physicalHeight != null)) ?
panel.physicalHeight :
panelCoordinates.height;
panel.physicalHeight = panelHeight;
var panelParentCoordinates;
if (panel.offsetParent) {
panelParentCoordinates = WebForm_GetElementPosition(panel.offsetParent);
}
else {
panelParentCoordinates = new Object();
panelParentCoordinates.x = 0;
panelParentCoordinates.y = 0;
}
var overflowElement = WebForm_GetElementById("__overFlowElement");
if (!overflowElement) {
overflowElement = document.createElement("img");
overflowElement.id="__overFlowElement";
WebForm_SetElementWidth(overflowElement, 1);
document.body.appendChild(overflowElement);
}
WebForm_SetElementHeight(overflowElement, panelHeight + relCoordinates.y + parseInt(panel.y ? panel.y : 0));
overflowElement.style.visibility = "visible";
overflowElement.style.display = "inline";
var clientHeight = 0;
var clientWidth = 0;
if (window.innerHeight) {
clientHeight = window.innerHeight;
clientWidth = window.innerWidth;
}
else if (document.documentElement && document.documentElement.clientHeight) {
clientHeight = document.documentElement.clientHeight;
clientWidth = document.documentElement.clientWidth;
}
else if (document.body && document.body.clientHeight) {
clientHeight = document.body.clientHeight;
clientWidth = document.body.clientWidth;
}
var scrollTop = 0;
var scrollLeft = 0;
if (typeof(window.pageYOffset) != "undefined") {
scrollTop = window.pageYOffset;
scrollLeft = window.pageXOffset;
}
else if (document.documentElement && (typeof(document.documentElement.scrollTop) != "undefined")) {
scrollTop = document.documentElement.scrollTop;
scrollLeft = document.documentElement.scrollLeft;
}
else if (document.body && (typeof(document.body.scrollTop) != "undefined")) {
scrollTop = document.body.scrollTop;
scrollLeft = document.body.scrollLeft;
}
overflowElement.style.visibility = "hidden";
overflowElement.style.display = "none";
var bottomWindowBorder = clientHeight + scrollTop;
var rightWindowBorder = clientWidth + scrollLeft;
var position = panel.pos;
if ((typeof(position) == "undefined") || (position == null) || (position == "")) {
position = (WebForm_GetElementDir(rel) == "rtl" ? "middleleft" : "middleright");
}
position = position.toLowerCase();
var y = relCoordinates.y + parseInt(panel.y ? panel.y : 0) - panelParentCoordinates.y;
var borderParent = (rel && rel.parentNode && rel.parentNode.parentNode && rel.parentNode.parentNode.parentNode
&& rel.parentNode.parentNode.parentNode.tagName.toLowerCase() == "div") ?
rel.parentNode.parentNode.parentNode : null;
WebForm_SetElementY(panel, y);
PopOut_SetPanelHeight(panel, panelHeight, true);
var clip = false;
var overflow;
if (position.indexOf("top") != -1) {
y -= panelHeight;
WebForm_SetElementY(panel, y);
if (y < -panelParentCoordinates.y) {
y = -panelParentCoordinates.y;
WebForm_SetElementY(panel, y);
if (panelHeight > clientHeight - 2) {
clip = true;
PopOut_SetPanelHeight(panel, clientHeight - 2);
}
}
}
else {
if (position.indexOf("bottom") != -1) {
y += relCoordinates.height;
WebForm_SetElementY(panel, y);
}
overflow = y + panelParentCoordinates.y + panelHeight - bottomWindowBorder;
if (overflow > 0) {
y -= overflow;
WebForm_SetElementY(panel, y);
if (y < -panelParentCoordinates.y) {
y = 2 - panelParentCoordinates.y + scrollTop;
WebForm_SetElementY(panel, y);
clip = true;
PopOut_SetPanelHeight(panel, clientHeight - 2);
}
}
}
if (!clip) {
PopOut_SetPanelHeight(panel, panel.clippedHeight, true);
}
var panelParentOffsetY = 0;
if (panel.offsetParent) {
panelParentOffsetY = WebForm_GetElementPosition(panel.offsetParent).y;
}
var panelY = ((typeof(panel.originY) != "undefined") && (panel.originY != null)) ?
panel.originY :
y - panelParentOffsetY;
panel.originY = panelY;
if (!hideScrollers) {
PopOut_ShowScrollers(panel);
}
else {
PopOut_HideScrollers(panel);
}
var x = relCoordinates.x + parseInt(panel.x ? panel.x : 0) - panelParentCoordinates.x;
if (borderParent && borderParent.clientLeft) {
x += 2 * borderParent.clientLeft;
}
WebForm_SetElementX(panel, x);
if (position.indexOf("left") != -1) {
x -= panelCoordinates.width;
WebForm_SetElementX(panel, x);
if (x < -panelParentCoordinates.x) {
WebForm_SetElementX(panel, -panelParentCoordinates.x);
}
}
else {
if (position.indexOf("right") != -1) {
x += relCoordinates.width;
WebForm_SetElementX(panel, x);
}
overflow = x + panelParentCoordinates.x + panelCoordinates.width - rightWindowBorder;
if (overflow > 0) {
if (position.indexOf("bottom") == -1 && relCoordinates.x > panelCoordinates.width) {
x -= relCoordinates.width + panelCoordinates.width;
}
else {
x -= overflow;
}
WebForm_SetElementX(panel, x);
if (x < -panelParentCoordinates.x) {
WebForm_SetElementX(panel, -panelParentCoordinates.x);
}
}
}
}
function PopOut_Scroll(panel, offsetDelta) {
var table = WebForm_GetElementByTagName(panel, "TABLE");
if (!table) return;
table.style.position = "relative";
var tableY = (table.style.top ? parseInt(table.style.top) : 0);
panel.offset += offsetDelta;
WebForm_SetElementY(table, tableY - offsetDelta);
}
function PopOut_SetPanelHeight(element, height, doNotClip) {
if (element && element.style) {
var size = WebForm_GetElementPosition(element);
element.physicalWidth = size.width;
element.clippedHeight = height;
WebForm_SetElementHeight(element, height - (element.clientTop ? (2 * element.clientTop) : 0));
if (doNotClip && element.style) {
element.style.clip = "rect(auto auto auto auto)";
}
else {
PopOut_Clip(element, 0, height);
}
}
}
function PopOut_Show(panelId, hideScrollers, data) {
var panel = WebForm_GetElementById(panelId);
if (panel && panel.tagName.toLowerCase() == "div") {
panel.style.visibility = "visible";
panel.style.display = "inline";
if (!panel.offset || hideScrollers) {
panel.scrollTop = 0;
panel.offset = 0;
var table = WebForm_GetElementByTagName(panel, "TABLE");
if (table) {
WebForm_SetElementY(table, 0);
}
}
PopOut_Position(panel, hideScrollers);
var z = 1;
var isIE = window.navigator && window.navigator.appName == "Microsoft Internet Explorer" && !window.opera;
if (isIE && data) {
var childFrameId = panel.id + "_MenuIFrame";
var childFrame = WebForm_GetElementById(childFrameId);
var parent = panel.offsetParent;
if (!childFrame) {
childFrame = document.createElement("iframe");
childFrame.id = childFrameId;
childFrame.src = (data.iframeUrl ? data.iframeUrl : "about:blank");
childFrame.style.position = "absolute";
childFrame.style.display = "none";
childFrame.scrolling = "no";
childFrame.frameBorder = "0";
if (parent.tagName.toLowerCase() == "html") {
document.body.appendChild(childFrame);
}
else {
parent.appendChild(childFrame);
}
}
var pos = WebForm_GetElementPosition(panel);
var parentPos = WebForm_GetElementPosition(parent);
WebForm_SetElementX(childFrame, pos.x - parentPos.x);
WebForm_SetElementY(childFrame, pos.y - parentPos.y);
WebForm_SetElementWidth(childFrame, pos.width);
WebForm_SetElementHeight(childFrame, pos.height);
childFrame.style.display = "block";
if (panel.currentStyle && panel.currentStyle.zIndex && panel.currentStyle.zIndex != "auto") {
z = panel.currentStyle.zIndex;
}
else if (panel.style.zIndex) {
z = panel.style.zIndex;
}
}
panel.style.zIndex = z;
}
}
function PopOut_ShowScrollers(panel) {
if (panel && panel.style) {
var up = WebForm_GetElementById(panel.id + "Up");
var dn = WebForm_GetElementById(panel.id + "Dn");
var cnt = 0;
if (up && dn) {
if (panel.offset && panel.offset > 0) {
up.style.visibility = "visible";
up.style.display = "inline";
cnt++;
if (panel.clientWidth) {
WebForm_SetElementWidth(up, panel.clientWidth
- (up.clientLeft ? (2 * up.clientLeft) : 0));
}
WebForm_SetElementY(up, 0);
}
else {
up.style.visibility = "hidden";
up.style.display = "none";
}
if (panel.offset + panel.clippedHeight + 2 <= panel.physicalHeight) {
dn.style.visibility = "visible";
dn.style.display = "inline";
cnt++;
if (panel.clientWidth) {
WebForm_SetElementWidth(dn, panel.clientWidth
- (dn.clientLeft ? (2 * dn.clientLeft) : 0));
}
WebForm_SetElementY(dn, panel.clippedHeight - WebForm_GetElementPosition(dn).height
- (panel.clientTop ? (2 * panel.clientTop) : 0));
}
else {
dn.style.visibility = "hidden";
dn.style.display = "none";
}
if (cnt == 0) {
panel.style.clip = "rect(auto auto auto auto)";
}
}
}
}
function PopOut_Stop() {
if (__scrollPanel && __scrollPanel.interval) {
window.clearInterval(__scrollPanel.interval);
}
Menu_RestoreInterval();
}
function PopOut_Up(scroller) {
Menu_ClearInterval();
var panel;
if (scroller) {
panel = scroller.parentNode
}
else {
panel = __scrollPanel;
}
if (panel && panel.offset && panel.offset > 0) {
PopOut_Scroll(panel, -2);
__scrollPanel = panel;
PopOut_ShowScrollers(panel);
PopOut_Stop();
__scrollPanel.interval = window.setInterval("PopOut_Up()", 8);
}
}

View File

@@ -0,0 +1,697 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/MenuStandards.js
if (!window.Sys) { window.Sys = {}; }
if (!Sys.WebForms) { Sys.WebForms = {}; }
Sys.WebForms.Menu = function(options) {
this.items = [];
this.depth = options.depth || 1;
this.parentMenuItem = options.parentMenuItem;
this.element = Sys.WebForms.Menu._domHelper.getElement(options.element);
if (this.element.tagName === 'DIV') {
var containerElement = this.element;
this.element = Sys.WebForms.Menu._domHelper.firstChild(containerElement);
this.element.tabIndex = options.tabIndex || 0;
options.element = containerElement;
options.menu = this;
this.container = new Sys.WebForms._MenuContainer(options);
Sys.WebForms.Menu._domHelper.setFloat(this.element, this.container.rightToLeft ? "right" : "left");
}
else {
this.container = options.container;
this.keyMap = options.keyMap;
}
Sys.WebForms.Menu._elementObjectMapper.map(this.element, this);
if (this.parentMenuItem && this.parentMenuItem.parentMenu) {
this.parentMenu = this.parentMenuItem.parentMenu;
this.rootMenu = this.parentMenu.rootMenu;
if (!this.element.id) {
this.element.id = (this.container.element.id || 'menu') + ':submenu:' + Sys.WebForms.Menu._elementObjectMapper._computedId;
}
if (this.depth > this.container.staticDisplayLevels) {
this.displayMode = "dynamic";
this.element.style.display = "none";
this.element.style.position = "absolute";
if (this.rootMenu && this.container.orientation === 'horizontal' && this.parentMenu.isStatic()) {
this.element.style.top = "100%";
if (this.container.rightToLeft) {
this.element.style.right = "0px";
}
else {
this.element.style.left = "0px";
}
}
else {
this.element.style.top = "0px";
if (this.container.rightToLeft) {
this.element.style.right = "100%";
}
else {
this.element.style.left = "100%";
}
}
if (this.container.rightToLeft) {
this.keyMap = Sys.WebForms.Menu._keyboardMapping.verticalRtl;
}
else {
this.keyMap = Sys.WebForms.Menu._keyboardMapping.vertical;
}
}
else {
this.displayMode = "static";
this.element.style.display = "block";
if (this.container.orientation === 'horizontal') {
Sys.WebForms.Menu._domHelper.setFloat(this.element, this.container.rightToLeft ? "right" : "left");
}
}
}
Sys.WebForms.Menu._domHelper.appendCssClass(this.element, this.displayMode);
var children = this.element.childNodes;
var count = children.length;
for (var i = 0; i < count; i++) {
var node = children[i];
if (node.nodeType !== 1) {
continue;
}
var topLevelMenuItem = null;
if (this.parentMenuItem) {
topLevelMenuItem = this.parentMenuItem.topLevelMenuItem;
}
var menuItem = new Sys.WebForms.MenuItem(this, node, topLevelMenuItem);
var previousMenuItem = this.items[this.items.length - 1];
if (previousMenuItem) {
menuItem.previousSibling = previousMenuItem;
previousMenuItem.nextSibling = menuItem;
}
this.items[this.items.length] = menuItem;
}
};
Sys.WebForms.Menu.prototype = {
blur: function() { if (this.container) this.container.blur(); },
collapse: function() {
this.each(function(menuItem) {
menuItem.hover(false);
menuItem.blur();
var childMenu = menuItem.childMenu;
if (childMenu) {
childMenu.collapse();
}
});
this.hide();
},
doDispose: function() { this.each(function(item) { item.doDispose(); }); },
each: function(fn) {
var count = this.items.length;
for (var i = 0; i < count; i++) {
fn(this.items[i]);
}
},
firstChild: function() { return this.items[0]; },
focus: function() { if (this.container) this.container.focus(); },
get_displayed: function() { return this.element.style.display !== 'none'; },
get_focused: function() {
if (this.container) {
return this.container.focused;
}
return false;
},
handleKeyPress: function(keyCode) {
if (this.keyMap.contains(keyCode)) {
if (this.container.focusedMenuItem) {
this.container.focusedMenuItem.navigate(keyCode);
return;
}
var firstChild = this.firstChild();
if (firstChild) {
this.container.navigateTo(firstChild);
}
}
},
hide: function() {
if (!this.get_displayed()) {
return;
}
this.each(function(item) {
if (item.childMenu) {
item.childMenu.hide();
}
});
if (!this.isRoot()) {
if (this.get_focused()) {
this.container.navigateTo(this.parentMenuItem);
}
this.element.style.display = 'none';
}
},
isRoot: function() { return this.rootMenu === this; },
isStatic: function() { return this.displayMode === 'static'; },
lastChild: function() { return this.items[this.items.length - 1]; },
show: function() { this.element.style.display = 'block'; }
};
if (Sys.WebForms.Menu.registerClass) {
Sys.WebForms.Menu.registerClass('Sys.WebForms.Menu');
}
Sys.WebForms.MenuItem = function(parentMenu, listElement, topLevelMenuItem) {
this.keyMap = parentMenu.keyMap;
this.parentMenu = parentMenu;
this.container = parentMenu.container;
this.element = listElement;
this.topLevelMenuItem = topLevelMenuItem || this;
this._anchor = Sys.WebForms.Menu._domHelper.firstChild(listElement);
while (this._anchor && this._anchor.tagName !== 'A') {
this._anchor = Sys.WebForms.Menu._domHelper.nextSibling(this._anchor);
}
if (this._anchor) {
this._anchor.tabIndex = -1;
var subMenu = this._anchor;
while (subMenu && subMenu.tagName !== 'UL') {
subMenu = Sys.WebForms.Menu._domHelper.nextSibling(subMenu);
}
if (subMenu) {
this.childMenu = new Sys.WebForms.Menu({ element: subMenu, parentMenuItem: this, depth: parentMenu.depth + 1, container: this.container, keyMap: this.keyMap });
if (!this.childMenu.isStatic()) {
Sys.WebForms.Menu._domHelper.appendCssClass(this.element, 'has-popup');
Sys.WebForms.Menu._domHelper.appendAttributeValue(this.element, 'aria-haspopup', this.childMenu.element.id);
}
}
}
Sys.WebForms.Menu._elementObjectMapper.map(listElement, this);
Sys.WebForms.Menu._domHelper.appendAttributeValue(listElement, 'role', 'menuitem');
Sys.WebForms.Menu._domHelper.appendCssClass(listElement, parentMenu.displayMode);
if (this._anchor) {
Sys.WebForms.Menu._domHelper.appendCssClass(this._anchor, parentMenu.displayMode);
}
this.element.style.position = "relative";
if (this.parentMenu.depth == 1 && this.container.orientation == 'horizontal') {
Sys.WebForms.Menu._domHelper.setFloat(this.element, this.container.rightToLeft ? "right" : "left");
}
if (!this.container.disabled) {
Sys.WebForms.Menu._domHelper.addEvent(this.element, 'mouseover', Sys.WebForms.MenuItem._onmouseover);
Sys.WebForms.Menu._domHelper.addEvent(this.element, 'mouseout', Sys.WebForms.MenuItem._onmouseout);
}
};
Sys.WebForms.MenuItem.prototype = {
applyUp: function(fn, condition) {
condition = condition || function(menuItem) { return menuItem; };
var menuItem = this;
var lastMenuItem = null;
while (condition(menuItem)) {
fn(menuItem);
lastMenuItem = menuItem;
menuItem = menuItem.parentMenu.parentMenuItem;
}
return lastMenuItem;
},
blur: function() { this.setTabIndex(-1); },
doDispose: function() {
Sys.WebForms.Menu._domHelper.removeEvent(this.element, 'mouseover', Sys.WebForms.MenuItem._onmouseover);
Sys.WebForms.Menu._domHelper.removeEvent(this.element, 'mouseout', Sys.WebForms.MenuItem._onmouseout);
if (this.childMenu) {
this.childMenu.doDispose();
}
},
focus: function() {
if (!this.parentMenu.get_displayed()) {
this.parentMenu.show();
}
this.setTabIndex(0);
this.container.focused = true;
this._anchor.focus();
},
get_highlighted: function() { return /(^|\s)highlighted(\s|$)/.test(this._anchor.className); },
getTabIndex: function() { return this._anchor.tabIndex; },
highlight: function(highlighting) {
if (highlighting) {
this.applyUp(function(menuItem) {
menuItem.parentMenu.parentMenuItem.highlight(true);
},
function(menuItem) {
return !menuItem.parentMenu.isStatic() && menuItem.parentMenu.parentMenuItem;
}
);
Sys.WebForms.Menu._domHelper.appendCssClass(this._anchor, 'highlighted');
}
else {
Sys.WebForms.Menu._domHelper.removeCssClass(this._anchor, 'highlighted');
this.setTabIndex(-1);
}
},
hover: function(hovering) {
if (hovering) {
var currentHoveredItem = this.container.hoveredMenuItem;
if (currentHoveredItem) {
currentHoveredItem.hover(false);
}
var currentFocusedItem = this.container.focusedMenuItem;
if (currentFocusedItem && currentFocusedItem !== this) {
currentFocusedItem.hover(false);
}
this.applyUp(function(menuItem) {
if (menuItem.childMenu && !menuItem.childMenu.get_displayed()) {
menuItem.childMenu.show();
}
});
this.container.hoveredMenuItem = this;
this.highlight(true);
}
else {
var menuItem = this;
while (menuItem) {
menuItem.highlight(false);
if (menuItem.childMenu) {
if (!menuItem.childMenu.isStatic()) {
menuItem.childMenu.hide();
}
}
menuItem = menuItem.parentMenu.parentMenuItem;
}
}
},
isSiblingOf: function(menuItem) { return menuItem.parentMenu === this.parentMenu; },
mouseout: function() {
var menuItem = this,
id = this.container.pendingMouseoutId,
disappearAfter = this.container.disappearAfter;
if (id) {
window.clearTimeout(id);
}
if (disappearAfter > -1) {
this.container.pendingMouseoutId =
window.setTimeout(function() { menuItem.hover(false); }, disappearAfter);
}
},
mouseover: function() {
var id = this.container.pendingMouseoutId;
if (id) {
window.clearTimeout(id);
this.container.pendingMouseoutId = null;
}
this.hover(true);
if (this.container.menu.get_focused()) {
this.container.navigateTo(this);
}
},
navigate: function(keyCode) {
switch (this.keyMap[keyCode]) {
case this.keyMap.next:
this.navigateNext();
break;
case this.keyMap.previous:
this.navigatePrevious();
break;
case this.keyMap.child:
this.navigateChild();
break;
case this.keyMap.parent:
this.navigateParent();
break;
case this.keyMap.tab:
this.navigateOut();
break;
}
},
navigateChild: function() {
var subMenu = this.childMenu;
if (subMenu) {
var firstChild = subMenu.firstChild();
if (firstChild) {
this.container.navigateTo(firstChild);
}
}
else {
if (this.container.orientation === 'horizontal') {
var nextItem = this.topLevelMenuItem.nextSibling || this.topLevelMenuItem.parentMenu.firstChild();
if (nextItem == this.topLevelMenuItem) {
return;
}
this.topLevelMenuItem.childMenu.hide();
this.container.navigateTo(nextItem);
if (nextItem.childMenu) {
this.container.navigateTo(nextItem.childMenu.firstChild());
}
}
}
},
navigateNext: function() {
if (this.childMenu) {
this.childMenu.hide();
}
var nextMenuItem = this.nextSibling;
if (!nextMenuItem && this.parentMenu.isRoot()) {
nextMenuItem = this.parentMenu.parentMenuItem;
if (nextMenuItem) {
nextMenuItem = nextMenuItem.nextSibling;
}
}
if (!nextMenuItem) {
nextMenuItem = this.parentMenu.firstChild();
}
if (nextMenuItem) {
this.container.navigateTo(nextMenuItem);
}
},
navigateOut: function() {
this.parentMenu.blur();
},
navigateParent: function() {
var parentMenu = this.parentMenu,
horizontal = this.container.orientation === 'horizontal';
if (!parentMenu) return;
if (horizontal && this.childMenu && parentMenu.isRoot()) {
this.navigateChild();
return;
}
if (parentMenu.parentMenuItem && !parentMenu.isRoot()) {
if (horizontal && this.parentMenu.depth === 2) {
var previousItem = this.parentMenu.parentMenuItem.previousSibling;
if (!previousItem) {
previousItem = this.parentMenu.rootMenu.lastChild();
}
this.topLevelMenuItem.childMenu.hide();
this.container.navigateTo(previousItem);
if (previousItem.childMenu) {
this.container.navigateTo(previousItem.childMenu.firstChild());
}
}
else {
this.parentMenu.hide();
}
}
},
navigatePrevious: function() {
if (this.childMenu) {
this.childMenu.hide();
}
var previousMenuItem = this.previousSibling;
if (previousMenuItem) {
var childMenu = previousMenuItem.childMenu;
if (childMenu && childMenu.isRoot()) {
previousMenuItem = childMenu.lastChild();
}
}
if (!previousMenuItem && this.parentMenu.isRoot()) {
previousMenuItem = this.parentMenu.parentMenuItem;
}
if (!previousMenuItem) {
previousMenuItem = this.parentMenu.lastChild();
}
if (previousMenuItem) {
this.container.navigateTo(previousMenuItem);
}
},
setTabIndex: function(index) { if (this._anchor) this._anchor.tabIndex = index; }
};
Sys.WebForms.MenuItem._onmouseout = function(e) {
var menuItem = Sys.WebForms.Menu._elementObjectMapper.getMappedObject(this);
if (!menuItem) {
return;
}
menuItem.mouseout();
Sys.WebForms.Menu._domHelper.cancelEvent(e);
};
Sys.WebForms.MenuItem._onmouseover = function(e) {
var menuItem = Sys.WebForms.Menu._elementObjectMapper.getMappedObject(this);
if (!menuItem) {
return;
}
menuItem.mouseover();
Sys.WebForms.Menu._domHelper.cancelEvent(e);
};
Sys.WebForms.Menu._domHelper = {
addEvent: function(element, eventName, fn, useCapture) {
if (element.addEventListener) {
element.addEventListener(eventName, fn, !!useCapture);
}
else {
element['on' + eventName] = fn;
}
},
appendAttributeValue: function(element, name, value) {
this.updateAttributeValue('append', element, name, value);
},
appendCssClass: function(element, value) {
this.updateClassName('append', element, name, value);
},
appendString: function(getString, setString, value) {
var currentValue = getString();
if (!currentValue) {
setString(value);
return;
}
var regex = this._regexes.getRegex('(^| )' + value + '($| )');
if (regex.test(currentValue)) {
return;
}
setString(currentValue + ' ' + value);
},
cancelEvent: function(e) {
var event = e || window.event;
if (event) {
event.cancelBubble = true;
if (event.stopPropagation) {
event.stopPropagation();
}
}
},
contains: function(ancestor, descendant) {
for (; descendant && (descendant !== ancestor); descendant = descendant.parentNode) { }
return !!descendant;
},
firstChild: function(element) {
var child = element.firstChild;
if (child && child.nodeType !== 1) {
child = this.nextSibling(child);
}
return child;
},
getElement: function(elementOrId) { return typeof elementOrId === 'string' ? document.getElementById(elementOrId) : elementOrId; },
getElementDirection: function(element) {
if (element) {
if (element.dir) {
return element.dir;
}
return this.getElementDirection(element.parentNode);
}
return "ltr";
},
getKeyCode: function(event) { return event.keyCode || event.charCode || 0; },
insertAfter: function(element, elementToInsert) {
var next = element.nextSibling;
if (next) {
element.parentNode.insertBefore(elementToInsert, next);
}
else if (element.parentNode) {
element.parentNode.appendChild(elementToInsert);
}
},
nextSibling: function(element) {
var sibling = element.nextSibling;
while (sibling) {
if (sibling.nodeType === 1) {
return sibling;
}
sibling = sibling.nextSibling;
}
},
removeAttributeValue: function(element, name, value) {
this.updateAttributeValue('remove', element, name, value);
},
removeCssClass: function(element, value) {
this.updateClassName('remove', element, name, value);
},
removeEvent: function(element, eventName, fn, useCapture) {
if (element.removeEventListener) {
element.removeEventListener(eventName, fn, !!useCapture);
}
else if (element.detachEvent) {
element.detachEvent('on' + eventName, fn)
}
element['on' + eventName] = null;
},
removeString: function(getString, setString, valueToRemove) {
var currentValue = getString();
if (currentValue) {
var regex = this._regexes.getRegex('(\\s|\\b)' + valueToRemove + '$|\\b' + valueToRemove + '\\s+');
setString(currentValue.replace(regex, ''));
}
},
setFloat: function(element, direction) {
element.style.styleFloat = direction;
element.style.cssFloat = direction;
},
updateAttributeValue: function(operation, element, name, value) {
this[operation + 'String'](
function() {
return element.getAttribute(name);
},
function(newValue) {
element.setAttribute(name, newValue);
},
value
);
},
updateClassName: function(operation, element, name, value) {
this[operation + 'String'](
function() {
return element.className;
},
function(newValue) {
element.className = newValue;
},
value
);
},
_regexes: {
getRegex: function(pattern) {
var regex = this[pattern];
if (!regex) {
this[pattern] = regex = new RegExp(pattern);
}
return regex;
}
}
};
Sys.WebForms.Menu._elementObjectMapper = {
_computedId: 0,
_mappings: {},
_mappingIdName: 'Sys.WebForms.Menu.Mapping',
getMappedObject: function(element) {
var id = element[this._mappingIdName];
if (id) {
return this._mappings[this._mappingIdName + ':' + id];
}
},
map: function(element, theObject) {
var mappedObject = element[this._mappingIdName];
if (mappedObject === theObject) {
return;
}
var objectId = element[this._mappingIdName] || element.id || '%' + (++this._computedId);
element[this._mappingIdName] = objectId;
this._mappings[this._mappingIdName + ':' + objectId] = theObject;
theObject.mappingId = objectId;
}
};
Sys.WebForms.Menu._keyboardMapping = new (function() {
var LEFT_ARROW = 37;
var UP_ARROW = 38;
var RIGHT_ARROW = 39;
var DOWN_ARROW = 40;
var TAB = 9;
var ESCAPE = 27;
this.vertical = { next: 0, previous: 1, child: 2, parent: 3, tab: 4 };
this.vertical[DOWN_ARROW] = this.vertical.next;
this.vertical[UP_ARROW] = this.vertical.previous;
this.vertical[RIGHT_ARROW] = this.vertical.child;
this.vertical[LEFT_ARROW] = this.vertical.parent;
this.vertical[TAB] = this.vertical[ESCAPE] = this.vertical.tab;
this.verticalRtl = { next: 0, previous: 1, child: 2, parent: 3, tab: 4 };
this.verticalRtl[DOWN_ARROW] = this.verticalRtl.next;
this.verticalRtl[UP_ARROW] = this.verticalRtl.previous;
this.verticalRtl[LEFT_ARROW] = this.verticalRtl.child;
this.verticalRtl[RIGHT_ARROW] = this.verticalRtl.parent;
this.verticalRtl[TAB] = this.verticalRtl[ESCAPE] = this.verticalRtl.tab;
this.horizontal = { next: 0, previous: 1, child: 2, parent: 3, tab: 4 };
this.horizontal[RIGHT_ARROW] = this.horizontal.next;
this.horizontal[LEFT_ARROW] = this.horizontal.previous;
this.horizontal[DOWN_ARROW] = this.horizontal.child;
this.horizontal[UP_ARROW] = this.horizontal.parent;
this.horizontal[TAB] = this.horizontal[ESCAPE] = this.horizontal.tab;
this.horizontalRtl = { next: 0, previous: 1, child: 2, parent: 3, tab: 4 };
this.horizontalRtl[RIGHT_ARROW] = this.horizontalRtl.previous;
this.horizontalRtl[LEFT_ARROW] = this.horizontalRtl.next;
this.horizontalRtl[DOWN_ARROW] = this.horizontalRtl.child;
this.horizontalRtl[UP_ARROW] = this.horizontalRtl.parent;
this.horizontalRtl[TAB] = this.horizontalRtl[ESCAPE] = this.horizontalRtl.tab;
this.horizontal.contains = this.horizontalRtl.contains = this.vertical.contains = this.verticalRtl.contains = function(keycode) {
return this[keycode] != null;
};
})();
Sys.WebForms._MenuContainer = function(options) {
this.focused = false;
this.disabled = options.disabled;
this.staticDisplayLevels = options.staticDisplayLevels || 1;
this.element = options.element;
this.orientation = options.orientation || 'vertical';
this.disappearAfter = options.disappearAfter;
this.rightToLeft = Sys.WebForms.Menu._domHelper.getElementDirection(this.element) === 'rtl';
Sys.WebForms.Menu._elementObjectMapper.map(this.element, this);
this.menu = options.menu;
this.menu.rootMenu = this.menu;
this.menu.displayMode = 'static';
this.menu.element.style.position = 'relative';
this.menu.element.style.width = 'auto';
if (this.orientation === 'vertical') {
Sys.WebForms.Menu._domHelper.appendAttributeValue(this.menu.element, 'role', 'menu');
if (this.rightToLeft) {
this.menu.keyMap = Sys.WebForms.Menu._keyboardMapping.verticalRtl;
}
else {
this.menu.keyMap = Sys.WebForms.Menu._keyboardMapping.vertical;
}
}
else {
Sys.WebForms.Menu._domHelper.appendAttributeValue(this.menu.element, 'role', 'menubar');
if (this.rightToLeft) {
this.menu.keyMap = Sys.WebForms.Menu._keyboardMapping.horizontalRtl;
}
else {
this.menu.keyMap = Sys.WebForms.Menu._keyboardMapping.horizontal;
}
}
var floatBreak = document.createElement('div');
floatBreak.style.clear = this.rightToLeft ? "right" : "left";
this.element.appendChild(floatBreak);
Sys.WebForms.Menu._domHelper.setFloat(this.element, this.rightToLeft ? "right" : "left");
Sys.WebForms.Menu._domHelper.insertAfter(this.element, floatBreak);
if (!this.disabled) {
Sys.WebForms.Menu._domHelper.addEvent(this.menu.element, 'focus', this._onfocus, true);
Sys.WebForms.Menu._domHelper.addEvent(this.menu.element, 'keydown', this._onkeydown);
var menuContainer = this;
this.element.dispose = function() {
if (menuContainer.element.dispose) {
menuContainer.element.dispose = null;
Sys.WebForms.Menu._domHelper.removeEvent(menuContainer.menu.element, 'focus', menuContainer._onfocus, true);
Sys.WebForms.Menu._domHelper.removeEvent(menuContainer.menu.element, 'keydown', menuContainer._onkeydown);
menuContainer.menu.doDispose();
}
};
Sys.WebForms.Menu._domHelper.addEvent(window, 'unload', function() {
if (menuContainer.element.dispose) {
menuContainer.element.dispose();
}
});
}
};
Sys.WebForms._MenuContainer.prototype = {
blur: function() {
this.focused = false;
this.isBlurring = false;
this.menu.collapse();
this.focusedMenuItem = null;
},
focus: function(e) { this.focused = true; },
navigateTo: function(menuItem) {
if (this.focusedMenuItem && this.focusedMenuItem !== this) {
this.focusedMenuItem.highlight(false);
}
menuItem.highlight(true);
menuItem.focus();
this.focusedMenuItem = menuItem;
},
_onfocus: function(e) {
var event = e || window.event;
if (event.srcElement && this) {
if (Sys.WebForms.Menu._domHelper.contains(this.element, event.srcElement)) {
if (!this.focused) {
this.focus();
}
}
}
},
_onkeydown: function(e) {
var thisMenu = Sys.WebForms.Menu._elementObjectMapper.getMappedObject(this);
var keyCode = Sys.WebForms.Menu._domHelper.getKeyCode(e || window.event);
if (thisMenu) {
thisMenu.handleKeyPress(keyCode);
}
}
};

View File

@@ -0,0 +1,280 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/SmartNav.js
var snSrc;
if ((typeof(window.__smartNav) == "undefined") || (window.__smartNav == null))
{
window.__smartNav = new Object();
window.__smartNav.update = function()
{
var sn = window.__smartNav;
var fd;
document.detachEvent("onstop", sn.stopHif);
sn.inPost = false;
try { fd = frames["__hifSmartNav"].document; } catch (e) {return;}
var fdr = fd.getElementsByTagName("asp_smartnav_rdir");
if (fdr.length > 0)
{
if ((typeof(sn.sHif) == "undefined") || (sn.sHif == null))
{
sn.sHif = document.createElement("IFRAME");
sn.sHif.name = "__hifSmartNav";
sn.sHif.style.display = "none";
sn.sHif.src = snSrc;
}
try {window.location = fdr[0].url;} catch (e) {};
return;
}
var fdurl = fd.location.href;
var index = fdurl.indexOf(snSrc);
if ((index != -1 && index == fdurl.length-snSrc.length)
|| fdurl == "about:blank")
return;
var fdurlb = fdurl.split("?")[0];
if (document.location.href.indexOf(fdurlb) < 0)
{
document.location.href=fdurl;
return;
}
sn._savedOnLoad = window.onload;
window.onload = null;
window.__smartNav.updateHelper();
}
window.__smartNav.updateHelper = function()
{
if (document.readyState != "complete")
{
window.setTimeout(window.__smartNav.updateHelper, 25);
return;
}
window.__smartNav.loadNewContent();
}
window.__smartNav.loadNewContent = function()
{
var sn = window.__smartNav;
var fd;
try { fd = frames["__hifSmartNav"].document; } catch (e) {return;}
if ((typeof(sn.sHif) != "undefined") && (sn.sHif != null))
{
sn.sHif.removeNode(true);
sn.sHif = null;
}
var hdm = document.getElementsByTagName("head")[0];
var hk = hdm.childNodes;
var tt = null;
var i;
for (i = hk.length - 1; i>= 0; i--)
{
if (hk[i].tagName == "TITLE")
{
tt = hk[i].outerHTML;
continue;
}
if (hk[i].tagName != "BASEFONT" || hk[i].innerHTML.length == 0)
hdm.removeChild(hdm.childNodes[i]);
}
var kids = fd.getElementsByTagName("head")[0].childNodes;
for (i = 0; i < kids.length; i++)
{
var tn = kids[i].tagName;
var k = document.createElement(tn);
k.id = kids[i].id;
k.mergeAttributes(kids[i]);
switch(tn)
{
case "TITLE":
if (tt == kids[i].outerHTML)
continue;
k.innerText = kids[i].text;
hdm.insertAdjacentElement("afterbegin", k);
continue;
case "BASEFONT" :
if (kids[i].innerHTML.length > 0)
continue;
break;
default:
var o = document.createElement("BODY");
o.innerHTML = "<BODY>" + kids[i].outerHTML + "</BODY>";
k = o.firstChild;
break;
}
if((typeof(k) != "undefined") && (k != null))
hdm.appendChild(k);
}
document.body.clearAttributes();
document.body.id = fd.body.id;
document.body.mergeAttributes(fd.body);
var newBodyLoad = fd.body.onload;
if ((typeof(newBodyLoad) != "undefined") && (newBodyLoad != null))
document.body.onload = newBodyLoad;
else
document.body.onload = sn._savedOnLoad;
var s = "<BODY>" + fd.body.innerHTML + "</BODY>";
if ((typeof(sn.hif) != "undefined") && (sn.hif != null))
{
var hifP = sn.hif.parentElement;
if ((typeof(hifP) != "undefined") && (hifP != null))
sn.sHif=hifP.removeChild(sn.hif);
}
document.body.innerHTML = s;
var sc = document.scripts;
for (i = 0; i < sc.length; i++)
{
sc[i].text = sc[i].text;
}
sn.hif = document.all("__hifSmartNav");
if ((typeof(sn.hif) != "undefined") && (sn.hif != null))
{
var hif = sn.hif;
sn.hifName = "__hifSmartNav" + (new Date()).getTime();
frames["__hifSmartNav"].name = sn.hifName;
sn.hifDoc = hif.contentWindow.document;
if (sn.ie5)
hif.parentElement.removeChild(hif);
window.setTimeout(sn.restoreFocus,0);
}
if (typeof(window.onload) == "string")
{
try { eval(window.onload) } catch (e) {};
}
else if ((typeof(window.onload) != "undefined") && (window.onload != null))
{
try { window.onload() } catch (e) {};
}
sn._savedOnLoad = null;
sn.attachForm();
};
window.__smartNav.restoreFocus = function()
{
if (window.__smartNav.inPost == true) return;
var curAe = document.activeElement;
var sAeId = window.__smartNav.ae;
if (((typeof(sAeId) == "undefined") || (sAeId == null)) ||
(typeof(curAe) != "undefined") && (curAe != null) && (curAe.id == sAeId || curAe.name == sAeId))
return;
var ae = document.all(sAeId);
if ((typeof(ae) == "undefined") || (ae == null)) return;
try { ae.focus(); } catch(e){};
}
window.__smartNav.saveHistory = function()
{
if ((typeof(window.__smartNav.hif) != "undefined") && (window.__smartNav.hif != null))
window.__smartNav.hif.removeNode();
if ((typeof(window.__smartNav.sHif) != "undefined") && (window.__smartNav.sHif != null)
&& (typeof(document.all[window.__smartNav.siHif]) != "undefined")
&& (document.all[window.__smartNav.siHif] != null)) {
document.all[window.__smartNav.siHif].insertAdjacentElement(
"BeforeBegin", window.__smartNav.sHif);
}
}
window.__smartNav.stopHif = function()
{
document.detachEvent("onstop", window.__smartNav.stopHif);
var sn = window.__smartNav;
if (((typeof(sn.hifDoc) == "undefined") || (sn.hifDoc == null)) &&
(typeof(sn.hif) != "undefined") && (sn.hif != null))
{
try {sn.hifDoc = sn.hif.contentWindow.document;}
catch(e){sn.hifDoc=null}
}
if (sn.hifDoc != null)
{
try {sn.hifDoc.execCommand("stop");} catch (e){}
}
}
window.__smartNav.init = function()
{
var sn = window.__smartNav;
window.__smartNav.form.__smartNavPostBack.value = 'true';
document.detachEvent("onstop", sn.stopHif);
document.attachEvent("onstop", sn.stopHif);
try { if (window.event.returnValue == false) return; } catch(e) {}
sn.inPost = true;
if ((typeof(document.activeElement) != "undefined") && (document.activeElement != null))
{
var ae = document.activeElement.id;
if (ae.length == 0)
ae = document.activeElement.name;
sn.ae = ae;
}
else
sn.ae = null;
try {document.selection.empty();} catch (e) {}
if ((typeof(sn.hif) == "undefined") || (sn.hif == null))
{
sn.hif = document.all("__hifSmartNav");
sn.hifDoc = sn.hif.contentWindow.document;
}
if ((typeof(sn.hifDoc) != "undefined") && (sn.hifDoc != null))
try {sn.hifDoc.designMode = "On";} catch(e){};
if ((typeof(sn.hif.parentElement) == "undefined") || (sn.hif.parentElement == null))
document.body.appendChild(sn.hif);
var hif = sn.hif;
hif.detachEvent("onload", sn.update);
hif.attachEvent("onload", sn.update);
window.__smartNav.fInit = true;
};
window.__smartNav.submit = function()
{
window.__smartNav.fInit = false;
try { window.__smartNav.init(); } catch(e) {}
if (window.__smartNav.fInit) {
window.__smartNav.form._submit();
}
};
window.__smartNav.attachForm = function()
{
var cf = document.forms;
for (var i=0; i<cf.length; i++)
{
if ((typeof(cf[i].__smartNavEnabled) != "undefined") && (cf[i].__smartNavEnabled != null))
{
window.__smartNav.form = cf[i];
window.__smartNav.form.insertAdjacentHTML("beforeEnd", "<input type='hidden' name='__smartNavPostBack' value='false' />");
break;
}
}
var snfm = window.__smartNav.form;
if ((typeof(snfm) == "undefined") || (snfm == null)) return false;
var sft = snfm.target;
if (sft.length != 0 && sft.indexOf("__hifSmartNav") != 0) return false;
var sfc = snfm.action.split("?")[0];
var url = window.location.href.split("?")[0];
if (url.charAt(url.length-1) != '/' && url.lastIndexOf(sfc) + sfc.length != url.length) return false;
if (snfm.__formAttached == true) return true;
snfm.__formAttached = true;
snfm.attachEvent("onsubmit", window.__smartNav.init);
snfm._submit = snfm.submit;
snfm.submit = window.__smartNav.submit;
snfm.target = window.__smartNav.hifName;
return true;
};
window.__smartNav.hifName = "__hifSmartNav" + (new Date()).getTime();
window.__smartNav.ie5 = navigator.appVersion.indexOf("MSIE 5") > 0;
var rc = window.__smartNav.attachForm();
var hif = document.all("__hifSmartNav");
if ((typeof(snSrc) == "undefined") || (snSrc == null)) {
if (typeof(window.dialogHeight) != "undefined") {
snSrc = "IEsmartnav1";
hif.src = snSrc;
} else {
snSrc = hif.src;
}
}
if (rc)
{
var fsn = frames["__hifSmartNav"];
fsn.name = window.__smartNav.hifName;
window.__smartNav.siHif = hif.sourceIndex;
try {
if (fsn.document.location != snSrc)
{
fsn.document.designMode = "On";
hif.attachEvent("onload",window.__smartNav.update);
window.__smartNav.hif = hif;
}
}
catch (e) { window.__smartNav.hif = hif; }
window.attachEvent("onbeforeunload", window.__smartNav.saveHistory);
}
else
window.__smartNav = null;
}

View File

@@ -0,0 +1,220 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/TreeView.js
function TreeView_HoverNode(data, node) {
if (!data) {
return;
}
node.hoverClass = data.hoverClass;
WebForm_AppendToClassName(node, data.hoverClass);
if (__nonMSDOMBrowser) {
node = node.childNodes[node.childNodes.length - 1];
}
else {
node = node.children[node.children.length - 1];
}
node.hoverHyperLinkClass = data.hoverHyperLinkClass;
WebForm_AppendToClassName(node, data.hoverHyperLinkClass);
}
function TreeView_GetNodeText(node) {
var trNode = WebForm_GetParentByTagName(node, "TR");
var outerNodes;
if (trNode.childNodes[trNode.childNodes.length - 1].getElementsByTagName) {
outerNodes = trNode.childNodes[trNode.childNodes.length - 1].getElementsByTagName("A");
if (!outerNodes || outerNodes.length == 0) {
outerNodes = trNode.childNodes[trNode.childNodes.length - 1].getElementsByTagName("SPAN");
}
}
var textNode = (outerNodes && outerNodes.length > 0) ?
outerNodes[0].childNodes[0] :
trNode.childNodes[trNode.childNodes.length - 1].childNodes[0];
return (textNode && textNode.nodeValue) ? textNode.nodeValue : "";
}
function TreeView_PopulateNode(data, index, node, selectNode, selectImageNode, lineType, text, path, databound, datapath, parentIsLast) {
if (!data) {
return;
}
var context = new Object();
context.data = data;
context.node = node;
context.selectNode = selectNode;
context.selectImageNode = selectImageNode;
context.lineType = lineType;
context.index = index;
context.isChecked = "f";
var tr = WebForm_GetParentByTagName(node, "TR");
if (tr) {
var checkbox = tr.getElementsByTagName("INPUT");
if (checkbox && (checkbox.length > 0)) {
for (var i = 0; i < checkbox.length; i++) {
if (checkbox[i].type.toLowerCase() == "checkbox") {
if (checkbox[i].checked) {
context.isChecked = "t";
}
break;
}
}
}
}
var param = index + "|" + data.lastIndex + "|" + databound + context.isChecked + parentIsLast + "|" +
text.length + "|" + text + datapath.length + "|" + datapath + path;
TreeView_PopulateNodeDoCallBack(context, param);
}
function TreeView_ProcessNodeData(result, context) {
var treeNode = context.node;
if (result.length > 0) {
var ci = result.indexOf("|", 0);
context.data.lastIndex = result.substring(0, ci);
ci = result.indexOf("|", ci + 1);
var newExpandState = result.substring(context.data.lastIndex.length + 1, ci);
context.data.expandState.value += newExpandState;
var chunk = result.substr(ci + 1);
var newChildren, table;
if (__nonMSDOMBrowser) {
var newDiv = document.createElement("div");
newDiv.innerHTML = chunk;
table = WebForm_GetParentByTagName(treeNode, "TABLE");
newChildren = null;
if ((typeof(table.nextSibling) == "undefined") || (table.nextSibling == null)) {
table.parentNode.insertBefore(newDiv.firstChild, table.nextSibling);
newChildren = table.previousSibling;
}
else {
table = table.nextSibling;
table.parentNode.insertBefore(newDiv.firstChild, table);
newChildren = table.previousSibling;
}
newChildren = document.getElementById(treeNode.id + "Nodes");
}
else {
table = WebForm_GetParentByTagName(treeNode, "TABLE");
table.insertAdjacentHTML("afterEnd", chunk);
newChildren = document.all[treeNode.id + "Nodes"];
}
if ((typeof(newChildren) != "undefined") && (newChildren != null)) {
TreeView_ToggleNode(context.data, context.index, treeNode, context.lineType, newChildren);
treeNode.href = document.getElementById ?
"javascript:TreeView_ToggleNode(" + context.data.name + "," + context.index + ",document.getElementById('" + treeNode.id + "'),'" + context.lineType + "',document.getElementById('" + newChildren.id + "'))" :
"javascript:TreeView_ToggleNode(" + context.data.name + "," + context.index + "," + treeNode.id + ",'" + context.lineType + "'," + newChildren.id + ")";
if ((typeof(context.selectNode) != "undefined") && (context.selectNode != null) && context.selectNode.href &&
(context.selectNode.href.indexOf("javascript:TreeView_PopulateNode", 0) == 0)) {
context.selectNode.href = treeNode.href;
}
if ((typeof(context.selectImageNode) != "undefined") && (context.selectImageNode != null) && context.selectNode.href &&
(context.selectImageNode.href.indexOf("javascript:TreeView_PopulateNode", 0) == 0)) {
context.selectImageNode.href = treeNode.href;
}
}
context.data.populateLog.value += context.index + ",";
}
else {
var img = treeNode.childNodes ? treeNode.childNodes[0] : treeNode.children[0];
if ((typeof(img) != "undefined") && (img != null)) {
var lineType = context.lineType;
if (lineType == "l") {
img.src = context.data.images[13];
}
else if (lineType == "t") {
img.src = context.data.images[10];
}
else if (lineType == "-") {
img.src = context.data.images[16];
}
else {
img.src = context.data.images[3];
}
var pe;
if (__nonMSDOMBrowser) {
pe = treeNode.parentNode;
pe.insertBefore(img, treeNode);
pe.removeChild(treeNode);
}
else {
pe = treeNode.parentElement;
treeNode.style.visibility="hidden";
treeNode.style.display="none";
pe.insertAdjacentElement("afterBegin", img);
}
}
}
}
function TreeView_SelectNode(data, node, nodeId) {
if (!data) {
return;
}
if ((typeof(data.selectedClass) != "undefined") && (data.selectedClass != null)) {
var id = data.selectedNodeID.value;
if (id.length > 0) {
var selectedNode = document.getElementById(id);
if ((typeof(selectedNode) != "undefined") && (selectedNode != null)) {
WebForm_RemoveClassName(selectedNode, data.selectedHyperLinkClass);
selectedNode = WebForm_GetParentByTagName(selectedNode, "TD");
WebForm_RemoveClassName(selectedNode, data.selectedClass);
}
}
WebForm_AppendToClassName(node, data.selectedHyperLinkClass);
node = WebForm_GetParentByTagName(node, "TD");
WebForm_AppendToClassName(node, data.selectedClass)
}
data.selectedNodeID.value = nodeId;
}
function TreeView_ToggleNode(data, index, node, lineType, children) {
if (!data) {
return;
}
var img = node.childNodes[0];
var newExpandState;
try {
if (children.style.display == "none") {
children.style.display = "block";
newExpandState = "e";
if ((typeof(img) != "undefined") && (img != null)) {
if (lineType == "l") {
img.src = data.images[15];
}
else if (lineType == "t") {
img.src = data.images[12];
}
else if (lineType == "-") {
img.src = data.images[18];
}
else {
img.src = data.images[5];
}
img.alt = data.collapseToolTip.replace(/\{0\}/, TreeView_GetNodeText(node));
}
}
else {
children.style.display = "none";
newExpandState = "c";
if ((typeof(img) != "undefined") && (img != null)) {
if (lineType == "l") {
img.src = data.images[14];
}
else if (lineType == "t") {
img.src = data.images[11];
}
else if (lineType == "-") {
img.src = data.images[17];
}
else {
img.src = data.images[4];
}
img.alt = data.expandToolTip.replace(/\{0\}/, TreeView_GetNodeText(node));
}
}
}
catch(e) {}
data.expandState.value = data.expandState.value.substring(0, index) + newExpandState + data.expandState.value.slice(index + 1);
}
function TreeView_UnhoverNode(node) {
if (!node.hoverClass) {
return;
}
WebForm_RemoveClassName(node, node.hoverClass);
if (__nonMSDOMBrowser) {
node = node.childNodes[node.childNodes.length - 1];
}
else {
node = node.children[node.children.length - 1];
}
WebForm_RemoveClassName(node, node.hoverHyperLinkClass);
}

View File

@@ -0,0 +1,567 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/WebForms.js
function WebForm_PostBackOptions(eventTarget, eventArgument, validation, validationGroup, actionUrl, trackFocus, clientSubmit) {
this.eventTarget = eventTarget;
this.eventArgument = eventArgument;
this.validation = validation;
this.validationGroup = validationGroup;
this.actionUrl = actionUrl;
this.trackFocus = trackFocus;
this.clientSubmit = clientSubmit;
}
function WebForm_DoPostBackWithOptions(options) {
var validationResult = true;
if (options.validation) {
if (typeof(Page_ClientValidate) == 'function') {
validationResult = Page_ClientValidate(options.validationGroup);
}
}
if (validationResult) {
if ((typeof(options.actionUrl) != "undefined") && (options.actionUrl != null) && (options.actionUrl.length > 0)) {
theForm.action = options.actionUrl;
}
if (options.trackFocus) {
var lastFocus = theForm.elements["__LASTFOCUS"];
if ((typeof(lastFocus) != "undefined") && (lastFocus != null)) {
if (typeof(document.activeElement) == "undefined") {
lastFocus.value = options.eventTarget;
}
else {
var active = document.activeElement;
if ((typeof(active) != "undefined") && (active != null)) {
if ((typeof(active.id) != "undefined") && (active.id != null) && (active.id.length > 0)) {
lastFocus.value = active.id;
}
else if (typeof(active.name) != "undefined") {
lastFocus.value = active.name;
}
}
}
}
}
}
if (options.clientSubmit) {
__doPostBack(options.eventTarget, options.eventArgument);
}
}
var __pendingCallbacks = new Array();
var __synchronousCallBackIndex = -1;
function WebForm_DoCallback(eventTarget, eventArgument, eventCallback, context, errorCallback, useAsync) {
var postData = __theFormPostData +
"__CALLBACKID=" + WebForm_EncodeCallback(eventTarget) +
"&__CALLBACKPARAM=" + WebForm_EncodeCallback(eventArgument);
if (theForm["__EVENTVALIDATION"]) {
postData += "&__EVENTVALIDATION=" + WebForm_EncodeCallback(theForm["__EVENTVALIDATION"].value);
}
var xmlRequest,e;
try {
xmlRequest = new XMLHttpRequest();
}
catch(e) {
try {
xmlRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e) {
}
}
var setRequestHeaderMethodExists = true;
try {
setRequestHeaderMethodExists = (xmlRequest && xmlRequest.setRequestHeader);
}
catch(e) {}
var callback = new Object();
callback.eventCallback = eventCallback;
callback.context = context;
callback.errorCallback = errorCallback;
callback.async = useAsync;
var callbackIndex = WebForm_FillFirstAvailableSlot(__pendingCallbacks, callback);
if (!useAsync) {
if (__synchronousCallBackIndex != -1) {
__pendingCallbacks[__synchronousCallBackIndex] = null;
}
__synchronousCallBackIndex = callbackIndex;
}
if (setRequestHeaderMethodExists) {
xmlRequest.onreadystatechange = WebForm_CallbackComplete;
callback.xmlRequest = xmlRequest;
// e.g. http:
var action = theForm.action || document.location.pathname, fragmentIndex = action.indexOf('#');
if (fragmentIndex !== -1) {
action = action.substr(0, fragmentIndex);
}
if (!__nonMSDOMBrowser) {
var queryIndex = action.indexOf('?');
if (queryIndex !== -1) {
var path = action.substr(0, queryIndex);
if (path.indexOf("%") === -1) {
action = encodeURI(path) + action.substr(queryIndex);
}
}
else if (action.indexOf("%") === -1) {
action = encodeURI(action);
}
}
xmlRequest.open("POST", action, true);
xmlRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
xmlRequest.send(postData);
return;
}
callback.xmlRequest = new Object();
var callbackFrameID = "__CALLBACKFRAME" + callbackIndex;
var xmlRequestFrame = document.frames[callbackFrameID];
if (!xmlRequestFrame) {
xmlRequestFrame = document.createElement("IFRAME");
xmlRequestFrame.width = "1";
xmlRequestFrame.height = "1";
xmlRequestFrame.frameBorder = "0";
xmlRequestFrame.id = callbackFrameID;
xmlRequestFrame.name = callbackFrameID;
xmlRequestFrame.style.position = "absolute";
xmlRequestFrame.style.top = "-100px"
xmlRequestFrame.style.left = "-100px";
try {
if (callBackFrameUrl) {
xmlRequestFrame.src = callBackFrameUrl;
}
}
catch(e) {}
document.body.appendChild(xmlRequestFrame);
}
var interval = window.setInterval(function() {
xmlRequestFrame = document.frames[callbackFrameID];
if (xmlRequestFrame && xmlRequestFrame.document) {
window.clearInterval(interval);
xmlRequestFrame.document.write("");
xmlRequestFrame.document.close();
xmlRequestFrame.document.write('<html><body><form method="post"><input type="hidden" name="__CALLBACKLOADSCRIPT" value="t"></form></body></html>');
xmlRequestFrame.document.close();
xmlRequestFrame.document.forms[0].action = theForm.action;
var count = __theFormPostCollection.length;
var element;
for (var i = 0; i < count; i++) {
element = __theFormPostCollection[i];
if (element) {
var fieldElement = xmlRequestFrame.document.createElement("INPUT");
fieldElement.type = "hidden";
fieldElement.name = element.name;
fieldElement.value = element.value;
xmlRequestFrame.document.forms[0].appendChild(fieldElement);
}
}
var callbackIdFieldElement = xmlRequestFrame.document.createElement("INPUT");
callbackIdFieldElement.type = "hidden";
callbackIdFieldElement.name = "__CALLBACKID";
callbackIdFieldElement.value = eventTarget;
xmlRequestFrame.document.forms[0].appendChild(callbackIdFieldElement);
var callbackParamFieldElement = xmlRequestFrame.document.createElement("INPUT");
callbackParamFieldElement.type = "hidden";
callbackParamFieldElement.name = "__CALLBACKPARAM";
callbackParamFieldElement.value = eventArgument;
xmlRequestFrame.document.forms[0].appendChild(callbackParamFieldElement);
if (theForm["__EVENTVALIDATION"]) {
var callbackValidationFieldElement = xmlRequestFrame.document.createElement("INPUT");
callbackValidationFieldElement.type = "hidden";
callbackValidationFieldElement.name = "__EVENTVALIDATION";
callbackValidationFieldElement.value = theForm["__EVENTVALIDATION"].value;
xmlRequestFrame.document.forms[0].appendChild(callbackValidationFieldElement);
}
var callbackIndexFieldElement = xmlRequestFrame.document.createElement("INPUT");
callbackIndexFieldElement.type = "hidden";
callbackIndexFieldElement.name = "__CALLBACKINDEX";
callbackIndexFieldElement.value = callbackIndex;
xmlRequestFrame.document.forms[0].appendChild(callbackIndexFieldElement);
xmlRequestFrame.document.forms[0].submit();
}
}, 10);
}
function WebForm_CallbackComplete() {
for (var i = 0; i < __pendingCallbacks.length; i++) {
callbackObject = __pendingCallbacks[i];
if (callbackObject && callbackObject.xmlRequest && (callbackObject.xmlRequest.readyState == 4)) {
if (!__pendingCallbacks[i].async) {
__synchronousCallBackIndex = -1;
}
__pendingCallbacks[i] = null;
var callbackFrameID = "__CALLBACKFRAME" + i;
var xmlRequestFrame = document.getElementById(callbackFrameID);
if (xmlRequestFrame) {
xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);
}
WebForm_ExecuteCallback(callbackObject);
}
}
}
function WebForm_ExecuteCallback(callbackObject) {
var response = callbackObject.xmlRequest.responseText;
if (response.charAt(0) == "s") {
if ((typeof(callbackObject.eventCallback) != "undefined") && (callbackObject.eventCallback != null)) {
callbackObject.eventCallback(response.substring(1), callbackObject.context);
}
}
else if (response.charAt(0) == "e") {
if ((typeof(callbackObject.errorCallback) != "undefined") && (callbackObject.errorCallback != null)) {
callbackObject.errorCallback(response.substring(1), callbackObject.context);
}
}
else {
var separatorIndex = response.indexOf("|");
if (separatorIndex != -1) {
var validationFieldLength = parseInt(response.substring(0, separatorIndex));
if (!isNaN(validationFieldLength)) {
var validationField = response.substring(separatorIndex + 1, separatorIndex + validationFieldLength + 1);
if (validationField != "") {
var validationFieldElement = theForm["__EVENTVALIDATION"];
if (!validationFieldElement) {
validationFieldElement = document.createElement("INPUT");
validationFieldElement.type = "hidden";
validationFieldElement.name = "__EVENTVALIDATION";
theForm.appendChild(validationFieldElement);
}
validationFieldElement.value = validationField;
}
if ((typeof(callbackObject.eventCallback) != "undefined") && (callbackObject.eventCallback != null)) {
callbackObject.eventCallback(response.substring(separatorIndex + validationFieldLength + 1), callbackObject.context);
}
}
}
}
}
function WebForm_FillFirstAvailableSlot(array, element) {
var i;
for (i = 0; i < array.length; i++) {
if (!array[i]) break;
}
array[i] = element;
return i;
}
var __nonMSDOMBrowser = (window.navigator.appName.toLowerCase().indexOf('explorer') == -1);
var __theFormPostData = "";
var __theFormPostCollection = new Array();
var __callbackTextTypes = /^(text|password|hidden|search|tel|url|email|number|range|color|datetime|date|month|week|time|datetime-local)$/i;
function WebForm_InitCallback() {
var formElements = theForm.elements,
count = formElements.length,
element;
for (var i = 0; i < count; i++) {
element = formElements[i];
var tagName = element.tagName.toLowerCase();
if (tagName == "input") {
var type = element.type;
if ((__callbackTextTypes.test(type) || ((type == "checkbox" || type == "radio") && element.checked))
&& (element.id != "__EVENTVALIDATION")) {
WebForm_InitCallbackAddField(element.name, element.value);
}
}
else if (tagName == "select") {
var selectCount = element.options.length;
for (var j = 0; j < selectCount; j++) {
var selectChild = element.options[j];
if (selectChild.selected == true) {
WebForm_InitCallbackAddField(element.name, element.value);
}
}
}
else if (tagName == "textarea") {
WebForm_InitCallbackAddField(element.name, element.value);
}
}
}
function WebForm_InitCallbackAddField(name, value) {
var nameValue = new Object();
nameValue.name = name;
nameValue.value = value;
__theFormPostCollection[__theFormPostCollection.length] = nameValue;
__theFormPostData += WebForm_EncodeCallback(name) + "=" + WebForm_EncodeCallback(value) + "&";
}
function WebForm_EncodeCallback(parameter) {
if (encodeURIComponent) {
return encodeURIComponent(parameter);
}
else {
return escape(parameter);
}
}
var __disabledControlArray = new Array();
function WebForm_ReEnableControls() {
if (typeof(__enabledControlArray) == 'undefined') {
return false;
}
var disabledIndex = 0;
for (var i = 0; i < __enabledControlArray.length; i++) {
var c;
if (__nonMSDOMBrowser) {
c = document.getElementById(__enabledControlArray[i]);
}
else {
c = document.all[__enabledControlArray[i]];
}
if ((typeof(c) != "undefined") && (c != null) && (c.disabled == true)) {
c.disabled = false;
__disabledControlArray[disabledIndex++] = c;
}
}
setTimeout("WebForm_ReDisableControls()", 0);
return true;
}
function WebForm_ReDisableControls() {
for (var i = 0; i < __disabledControlArray.length; i++) {
__disabledControlArray[i].disabled = true;
}
}
function WebForm_SimulateClick(element, event) {
var clickEvent;
if (element) {
if (element.click) {
element.click();
} else {
clickEvent = document.createEvent("MouseEvents");
clickEvent.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
if (!element.dispatchEvent(clickEvent)) {
return true;
}
}
event.cancelBubble = true;
if (event.stopPropagation) {
event.stopPropagation();
}
return false;
}
return true;
}
function WebForm_FireDefaultButton(event, target) {
if (event.keyCode == 13) {
var src = event.srcElement || event.target;
if (src &&
((src.tagName.toLowerCase() == "input") &&
(src.type.toLowerCase() == "submit" || src.type.toLowerCase() == "button")) ||
((src.tagName.toLowerCase() == "a") &&
(src.href != null) && (src.href != "")) ||
(src.tagName.toLowerCase() == "textarea")) {
return true;
}
var defaultButton;
if (__nonMSDOMBrowser) {
defaultButton = document.getElementById(target);
}
else {
defaultButton = document.all[target];
}
if (defaultButton) {
return WebForm_SimulateClick(defaultButton, event);
}
}
return true;
}
function WebForm_GetScrollX() {
if (__nonMSDOMBrowser) {
return window.pageXOffset;
}
else {
if (document.documentElement && document.documentElement.scrollLeft) {
return document.documentElement.scrollLeft;
}
else if (document.body) {
return document.body.scrollLeft;
}
}
return 0;
}
function WebForm_GetScrollY() {
if (__nonMSDOMBrowser) {
return window.pageYOffset;
}
else {
if (document.documentElement && document.documentElement.scrollTop) {
return document.documentElement.scrollTop;
}
else if (document.body) {
return document.body.scrollTop;
}
}
return 0;
}
function WebForm_SaveScrollPositionSubmit() {
if (__nonMSDOMBrowser) {
theForm.elements['__SCROLLPOSITIONY'].value = window.pageYOffset;
theForm.elements['__SCROLLPOSITIONX'].value = window.pageXOffset;
}
else {
theForm.__SCROLLPOSITIONX.value = WebForm_GetScrollX();
theForm.__SCROLLPOSITIONY.value = WebForm_GetScrollY();
}
if ((typeof(this.oldSubmit) != "undefined") && (this.oldSubmit != null)) {
return this.oldSubmit();
}
return true;
}
function WebForm_SaveScrollPositionOnSubmit() {
theForm.__SCROLLPOSITIONX.value = WebForm_GetScrollX();
theForm.__SCROLLPOSITIONY.value = WebForm_GetScrollY();
if ((typeof(this.oldOnSubmit) != "undefined") && (this.oldOnSubmit != null)) {
return this.oldOnSubmit();
}
return true;
}
function WebForm_RestoreScrollPosition() {
if (__nonMSDOMBrowser) {
window.scrollTo(theForm.elements['__SCROLLPOSITIONX'].value, theForm.elements['__SCROLLPOSITIONY'].value);
}
else {
window.scrollTo(theForm.__SCROLLPOSITIONX.value, theForm.__SCROLLPOSITIONY.value);
}
if ((typeof(theForm.oldOnLoad) != "undefined") && (theForm.oldOnLoad != null)) {
return theForm.oldOnLoad();
}
return true;
}
function WebForm_TextBoxKeyHandler(event) {
if (event.keyCode == 13) {
var target;
if (__nonMSDOMBrowser) {
target = event.target;
}
else {
target = event.srcElement;
}
if ((typeof(target) != "undefined") && (target != null)) {
if (typeof(target.onchange) != "undefined") {
target.onchange();
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return false;
}
}
}
return true;
}
function WebForm_TrimString(value) {
return value.replace(/^\s+|\s+$/g, '')
}
function WebForm_AppendToClassName(element, className) {
var currentClassName = ' ' + WebForm_TrimString(element.className) + ' ';
className = WebForm_TrimString(className);
var index = currentClassName.indexOf(' ' + className + ' ');
if (index === -1) {
element.className = (element.className === '') ? className : element.className + ' ' + className;
}
}
function WebForm_RemoveClassName(element, className) {
var currentClassName = ' ' + WebForm_TrimString(element.className) + ' ';
className = WebForm_TrimString(className);
var index = currentClassName.indexOf(' ' + className + ' ');
if (index >= 0) {
element.className = WebForm_TrimString(currentClassName.substring(0, index) + ' ' +
currentClassName.substring(index + className.length + 1, currentClassName.length));
}
}
function WebForm_GetElementById(elementId) {
if (document.getElementById) {
return document.getElementById(elementId);
}
else if (document.all) {
return document.all[elementId];
}
else return null;
}
function WebForm_GetElementByTagName(element, tagName) {
var elements = WebForm_GetElementsByTagName(element, tagName);
if (elements && elements.length > 0) {
return elements[0];
}
else return null;
}
function WebForm_GetElementsByTagName(element, tagName) {
if (element && tagName) {
if (element.getElementsByTagName) {
return element.getElementsByTagName(tagName);
}
if (element.all && element.all.tags) {
return element.all.tags(tagName);
}
}
return null;
}
function WebForm_GetElementDir(element) {
if (element) {
if (element.dir) {
return element.dir;
}
return WebForm_GetElementDir(element.parentNode);
}
return "ltr";
}
function WebForm_GetElementPosition(element) {
var result = new Object();
result.x = 0;
result.y = 0;
result.width = 0;
result.height = 0;
if (element.offsetParent) {
result.x = element.offsetLeft;
result.y = element.offsetTop;
var parent = element.offsetParent;
while (parent) {
result.x += parent.offsetLeft;
result.y += parent.offsetTop;
var parentTagName = parent.tagName.toLowerCase();
if (parentTagName != "table" &&
parentTagName != "body" &&
parentTagName != "html" &&
parentTagName != "div" &&
parent.clientTop &&
parent.clientLeft) {
result.x += parent.clientLeft;
result.y += parent.clientTop;
}
parent = parent.offsetParent;
}
}
else if (element.left && element.top) {
result.x = element.left;
result.y = element.top;
}
else {
if (element.x) {
result.x = element.x;
}
if (element.y) {
result.y = element.y;
}
}
if (element.offsetWidth && element.offsetHeight) {
result.width = element.offsetWidth;
result.height = element.offsetHeight;
}
else if (element.style && element.style.pixelWidth && element.style.pixelHeight) {
result.width = element.style.pixelWidth;
result.height = element.style.pixelHeight;
}
return result;
}
function WebForm_GetParentByTagName(element, tagName) {
var parent = element.parentNode;
var upperTagName = tagName.toUpperCase();
while (parent && (parent.tagName.toUpperCase() != upperTagName)) {
parent = parent.parentNode ? parent.parentNode : parent.parentElement;
}
return parent;
}
function WebForm_SetElementHeight(element, height) {
if (element && element.style) {
element.style.height = height + "px";
}
}
function WebForm_SetElementWidth(element, width) {
if (element && element.style) {
element.style.width = width + "px";
}
}
function WebForm_SetElementX(element, x) {
if (element && element.style) {
element.style.left = x + "px";
}
}
function WebForm_SetElementY(element, y) {
if (element && element.style) {
element.style.top = y + "px";
}
}

View File

@@ -0,0 +1,647 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/WebParts.js
var __wpm = null;
function Point(x, y) {
this.x = x;
this.y = y;
}
function __wpTranslateOffset(x, y, offsetElement, relativeToElement, includeScroll) {
while ((typeof(offsetElement) != "undefined") && (offsetElement != null) && (offsetElement != relativeToElement)) {
x += offsetElement.offsetLeft;
y += offsetElement.offsetTop;
var tagName = offsetElement.tagName;
if ((tagName != "TABLE") && (tagName != "BODY")) {
x += offsetElement.clientLeft;
y += offsetElement.clientTop;
}
if (includeScroll && (tagName != "BODY")) {
x -= offsetElement.scrollLeft;
y -= offsetElement.scrollTop;
}
offsetElement = offsetElement.offsetParent;
}
return new Point(x, y);
}
function __wpGetPageEventLocation(event, includeScroll) {
if ((typeof(event) == "undefined") || (event == null)) {
event = window.event;
}
return __wpTranslateOffset(event.offsetX, event.offsetY, event.srcElement, null, includeScroll);
}
function __wpClearSelection() {
document.selection.empty();
}
function WebPart(webPartElement, webPartTitleElement, zone, zoneIndex, allowZoneChange) {
this.webPartElement = webPartElement;
this.allowZoneChange = allowZoneChange;
this.zone = zone;
this.zoneIndex = zoneIndex;
this.title = ((typeof(webPartTitleElement) != "undefined") && (webPartTitleElement != null)) ?
webPartTitleElement.innerText : "";
webPartElement.__webPart = this;
if ((typeof(webPartTitleElement) != "undefined") && (webPartTitleElement != null)) {
webPartTitleElement.style.cursor = "move";
webPartTitleElement.attachEvent("onmousedown", WebPart_OnMouseDown);
webPartElement.attachEvent("ondragstart", WebPart_OnDragStart);
webPartElement.attachEvent("ondrag", WebPart_OnDrag);
webPartElement.attachEvent("ondragend", WebPart_OnDragEnd);
}
this.UpdatePosition = WebPart_UpdatePosition;
this.Dispose = WebPart_Dispose;
}
function WebPart_Dispose() {
this.webPartElement.__webPart = null
}
function WebPart_OnMouseDown() {
var currentEvent = window.event;
var draggedWebPart = WebPart_GetParentWebPartElement(currentEvent.srcElement);
if ((typeof(draggedWebPart) == "undefined") || (draggedWebPart == null)) {
return;
}
document.selection.empty();
try {
__wpm.draggedWebPart = draggedWebPart;
__wpm.DragDrop();
}
catch (e) {
__wpm.draggedWebPart = draggedWebPart;
window.setTimeout("__wpm.DragDrop()", 0);
}
currentEvent.returnValue = false;
currentEvent.cancelBubble = true;
}
function WebPart_OnDragStart() {
var currentEvent = window.event;
var webPartElement = currentEvent.srcElement;
if ((typeof(webPartElement.__webPart) == "undefined") || (webPartElement.__webPart == null)) {
currentEvent.returnValue = false;
currentEvent.cancelBubble = true;
return;
}
var dataObject = currentEvent.dataTransfer;
dataObject.effectAllowed = __wpm.InitiateWebPartDragDrop(webPartElement);
}
function WebPart_OnDrag() {
__wpm.ContinueWebPartDragDrop();
}
function WebPart_OnDragEnd() {
__wpm.CompleteWebPartDragDrop();
}
function WebPart_GetParentWebPartElement(containedElement) {
var elem = containedElement;
while ((typeof(elem.__webPart) == "undefined") || (elem.__webPart == null)) {
elem = elem.parentElement;
if ((typeof(elem) == "undefined") || (elem == null)) {
break;
}
}
return elem;
}
function WebPart_UpdatePosition() {
var location = __wpTranslateOffset(0, 0, this.webPartElement, null, false);
this.middleX = location.x + this.webPartElement.offsetWidth / 2;
this.middleY = location.y + this.webPartElement.offsetHeight / 2;
}
function Zone(zoneElement, zoneIndex, uniqueID, isVertical, allowLayoutChange, highlightColor) {
var webPartTable = null;
if (zoneElement.rows.length == 1) {
webPartTableContainer = zoneElement.rows[0].cells[0];
}
else {
webPartTableContainer = zoneElement.rows[1].cells[0];
}
var i;
for (i = 0; i < webPartTableContainer.childNodes.length; i++) {
var node = webPartTableContainer.childNodes[i];
if (node.tagName == "TABLE") {
webPartTable = node;
break;
}
}
this.zoneElement = zoneElement;
this.zoneIndex = zoneIndex;
this.webParts = new Array();
this.uniqueID = uniqueID;
this.isVertical = isVertical;
this.allowLayoutChange = allowLayoutChange;
this.allowDrop = false;
this.webPartTable = webPartTable;
this.highlightColor = highlightColor;
this.savedBorderColor = (webPartTable != null) ? webPartTable.style.borderColor : null;
this.dropCueElements = new Array();
if (webPartTable != null) {
if (isVertical) {
for (i = 0; i < webPartTable.rows.length; i += 2) {
this.dropCueElements[i / 2] = webPartTable.rows[i].cells[0].childNodes[0];
}
}
else {
for (i = 0; i < webPartTable.rows[0].cells.length; i += 2) {
this.dropCueElements[i / 2] = webPartTable.rows[0].cells[i].childNodes[0];
}
}
}
this.AddWebPart = Zone_AddWebPart;
this.GetWebPartIndex = Zone_GetWebPartIndex;
this.ToggleDropCues = Zone_ToggleDropCues;
this.UpdatePosition = Zone_UpdatePosition;
this.Dispose = Zone_Dispose;
webPartTable.__zone = this;
webPartTable.attachEvent("ondragenter", Zone_OnDragEnter);
webPartTable.attachEvent("ondrop", Zone_OnDrop);
}
function Zone_Dispose() {
for (var i = 0; i < this.webParts.length; i++) {
this.webParts[i].Dispose();
}
this.webPartTable.__zone = null;
}
function Zone_OnDragEnter() {
var handled = __wpm.ProcessWebPartDragEnter();
var currentEvent = window.event;
if (handled) {
currentEvent.returnValue = false;
currentEvent.cancelBubble = true;
}
}
function Zone_OnDragOver() {
var handled = __wpm.ProcessWebPartDragOver();
var currentEvent = window.event;
if (handled) {
currentEvent.returnValue = false;
currentEvent.cancelBubble = true;
}
}
function Zone_OnDrop() {
var handled = __wpm.ProcessWebPartDrop();
var currentEvent = window.event;
if (handled) {
currentEvent.returnValue = false;
currentEvent.cancelBubble = true;
}
}
function Zone_GetParentZoneElement(containedElement) {
var elem = containedElement;
while ((typeof(elem.__zone) == "undefined") || (elem.__zone == null)) {
elem = elem.parentElement;
if ((typeof(elem) == "undefined") || (elem == null)) {
break;
}
}
return elem;
}
function Zone_AddWebPart(webPartElement, webPartTitleElement, allowZoneChange) {
var webPart = null;
var zoneIndex = this.webParts.length;
if (this.allowLayoutChange && __wpm.IsDragDropEnabled()) {
webPart = new WebPart(webPartElement, webPartTitleElement, this, zoneIndex, allowZoneChange);
}
else {
webPart = new WebPart(webPartElement, null, this, zoneIndex, allowZoneChange);
}
this.webParts[zoneIndex] = webPart;
return webPart;
}
function Zone_ToggleDropCues(show, index, ignoreOutline) {
if (ignoreOutline == false) {
this.webPartTable.style.borderColor = (show ? this.highlightColor : this.savedBorderColor);
}
if (index == -1) {
return;
}
var dropCue = this.dropCueElements[index];
if (dropCue && dropCue.style) {
if (dropCue.style.height == "100%" && !dropCue.webPartZoneHorizontalCueResized) {
var oldParentHeight = dropCue.parentElement.clientHeight;
var realHeight = oldParentHeight - 10;
dropCue.style.height = realHeight + "px";
var dropCueVerticalBar = dropCue.getElementsByTagName("DIV")[0];
if (dropCueVerticalBar && dropCueVerticalBar.style) {
dropCueVerticalBar.style.height = dropCue.style.height;
var heightDiff = (dropCue.parentElement.clientHeight - oldParentHeight);
if (heightDiff) {
dropCue.style.height = (realHeight - heightDiff) + "px";
dropCueVerticalBar.style.height = dropCue.style.height;
}
}
dropCue.webPartZoneHorizontalCueResized = true;
}
dropCue.style.visibility = (show ? "visible" : "hidden");
}
}
function Zone_GetWebPartIndex(location) {
var x = location.x;
var y = location.y;
if ((x < this.webPartTableLeft) || (x > this.webPartTableRight) ||
(y < this.webPartTableTop) || (y > this.webPartTableBottom)) {
return -1;
}
var vertical = this.isVertical;
var webParts = this.webParts;
var webPartsCount = webParts.length;
for (var i = 0; i < webPartsCount; i++) {
var webPart = webParts[i];
if (vertical) {
if (y < webPart.middleY) {
return i;
}
}
else {
if (x < webPart.middleX) {
return i;
}
}
}
return webPartsCount;
}
function Zone_UpdatePosition() {
var topLeft = __wpTranslateOffset(0, 0, this.webPartTable, null, false);
this.webPartTableLeft = topLeft.x;
this.webPartTableTop = topLeft.y;
this.webPartTableRight = (this.webPartTable != null) ? topLeft.x + this.webPartTable.offsetWidth : topLeft.x;
this.webPartTableBottom = (this.webPartTable != null) ? topLeft.y + this.webPartTable.offsetHeight : topLeft.y;
for (var i = 0; i < this.webParts.length; i++) {
this.webParts[i].UpdatePosition();
}
}
function WebPartDragState(webPartElement, effect) {
this.webPartElement = webPartElement;
this.dropZoneElement = null;
this.dropIndex = -1;
this.effect = effect;
this.dropped = false;
}
function WebPartMenu(menuLabelElement, menuDropDownElement, menuElement) {
this.menuLabelElement = menuLabelElement;
this.menuDropDownElement = menuDropDownElement;
this.menuElement = menuElement;
this.menuLabelElement.__menu = this;
this.menuLabelElement.attachEvent('onclick', WebPartMenu_OnClick);
this.menuLabelElement.attachEvent('onkeypress', WebPartMenu_OnKeyPress);
this.menuLabelElement.attachEvent('onmouseenter', WebPartMenu_OnMouseEnter);
this.menuLabelElement.attachEvent('onmouseleave', WebPartMenu_OnMouseLeave);
if ((typeof(this.menuDropDownElement) != "undefined") && (this.menuDropDownElement != null)) {
this.menuDropDownElement.__menu = this;
}
this.menuItemStyle = "";
this.menuItemHoverStyle = "";
this.popup = null;
this.hoverClassName = "";
this.hoverColor = "";
this.oldColor = this.menuLabelElement.style.color;
this.oldTextDecoration = this.menuLabelElement.style.textDecoration;
this.oldClassName = this.menuLabelElement.className;
this.Show = WebPartMenu_Show;
this.Hide = WebPartMenu_Hide;
this.Hover = WebPartMenu_Hover;
this.Unhover = WebPartMenu_Unhover;
this.Dispose = WebPartMenu_Dispose;
var menu = this;
this.disposeDelegate = function() { menu.Dispose(); };
window.attachEvent('onunload', this.disposeDelegate);
}
function WebPartMenu_Dispose() {
this.menuLabelElement.__menu = null;
this.menuDropDownElement.__menu = null;
window.detachEvent('onunload', this.disposeDelegate);
}
function WebPartMenu_Show() {
if ((typeof(__wpm.menu) != "undefined") && (__wpm.menu != null)) {
__wpm.menu.Hide();
}
var menuHTML =
"<html><head><style>" +
"a.menuItem, a.menuItem:Link { display: block; padding: 1px; text-decoration: none; " + this.itemStyle + " }" +
"a.menuItem:Hover { " + this.itemHoverStyle + " }" +
"</style><body scroll=\"no\" style=\"border: none; margin: 0; padding: 0;\" ondragstart=\"window.event.returnValue=false;\" onclick=\"popup.hide()\">" +
this.menuElement.innerHTML +
"</body></html>";
var width = 16;
var height = 16;
this.popup = window.createPopup();
__wpm.menu = this;
var popupDocument = this.popup.document;
popupDocument.write(menuHTML);
this.popup.show(0, 0, width, height);
var popupBody = popupDocument.body;
width = popupBody.scrollWidth;
height = popupBody.scrollHeight;
if (width < this.menuLabelElement.offsetWidth) {
width = this.menuLabelElement.offsetWidth + 16;
}
if (this.menuElement.innerHTML.indexOf("progid:DXImageTransform.Microsoft.Shadow") != -1) {
popupBody.style.paddingRight = "4px";
}
popupBody.__wpm = __wpm;
popupBody.__wpmDeleteWarning = __wpmDeleteWarning;
popupBody.__wpmCloseProviderWarning = __wpmCloseProviderWarning;
popupBody.popup = this.popup;
this.popup.hide();
this.popup.show(0, this.menuLabelElement.offsetHeight, width, height, this.menuLabelElement);
}
function WebPartMenu_Hide() {
if (__wpm.menu == this) {
__wpm.menu = null;
if ((typeof(this.popup) != "undefined") && (this.popup != null)) {
this.popup.hide();
this.popup = null;
}
}
}
function WebPartMenu_Hover() {
if (this.labelHoverClassName != "") {
this.menuLabelElement.className = this.menuLabelElement.className + " " + this.labelHoverClassName;
}
if (this.labelHoverColor != "") {
this.menuLabelElement.style.color = this.labelHoverColor;
}
}
function WebPartMenu_Unhover() {
if (this.labelHoverClassName != "") {
this.menuLabelElement.style.textDecoration = this.oldTextDecoration;
this.menuLabelElement.className = this.oldClassName;
}
if (this.labelHoverColor != "") {
this.menuLabelElement.style.color = this.oldColor;
}
}
function WebPartMenu_OnClick() {
var menu = window.event.srcElement.__menu;
if ((typeof(menu) != "undefined") && (menu != null)) {
window.event.returnValue = false;
window.event.cancelBubble = true;
menu.Show();
}
}
function WebPartMenu_OnKeyPress() {
if (window.event.keyCode == 13) {
var menu = window.event.srcElement.__menu;
if ((typeof(menu) != "undefined") && (menu != null)) {
window.event.returnValue = false;
window.event.cancelBubble = true;
menu.Show();
}
}
}
function WebPartMenu_OnMouseEnter() {
var menu = window.event.srcElement.__menu;
if ((typeof(menu) != "undefined") && (menu != null)) {
menu.Hover();
}
}
function WebPartMenu_OnMouseLeave() {
var menu = window.event.srcElement.__menu;
if ((typeof(menu) != "undefined") && (menu != null)) {
menu.Unhover();
}
}
function WebPartManager() {
this.overlayContainerElement = null;
this.zones = new Array();
this.dragState = null;
this.menu = null;
this.draggedWebPart = null;
this.AddZone = WebPartManager_AddZone;
this.IsDragDropEnabled = WebPartManager_IsDragDropEnabled;
this.DragDrop = WebPartManager_DragDrop;
this.InitiateWebPartDragDrop = WebPartManager_InitiateWebPartDragDrop;
this.CompleteWebPartDragDrop = WebPartManager_CompleteWebPartDragDrop;
this.ContinueWebPartDragDrop = WebPartManager_ContinueWebPartDragDrop;
this.ProcessWebPartDragEnter = WebPartManager_ProcessWebPartDragEnter;
this.ProcessWebPartDragOver = WebPartManager_ProcessWebPartDragOver;
this.ProcessWebPartDrop = WebPartManager_ProcessWebPartDrop;
this.ShowHelp = WebPartManager_ShowHelp;
this.ExportWebPart = WebPartManager_ExportWebPart;
this.Execute = WebPartManager_Execute;
this.SubmitPage = WebPartManager_SubmitPage;
this.UpdatePositions = WebPartManager_UpdatePositions;
window.attachEvent("onunload", WebPartManager_Dispose);
}
function WebPartManager_Dispose() {
for (var i = 0; i < __wpm.zones.length; i++) {
__wpm.zones[i].Dispose();
}
window.detachEvent("onunload", WebPartManager_Dispose);
}
function WebPartManager_AddZone(zoneElement, uniqueID, isVertical, allowLayoutChange, highlightColor) {
var zoneIndex = this.zones.length;
var zone = new Zone(zoneElement, zoneIndex, uniqueID, isVertical, allowLayoutChange, highlightColor);
this.zones[zoneIndex] = zone;
return zone;
}
function WebPartManager_IsDragDropEnabled() {
return ((typeof(this.overlayContainerElement) != "undefined") && (this.overlayContainerElement != null));
}
function WebPartManager_DragDrop() {
if ((typeof(this.draggedWebPart) != "undefined") && (this.draggedWebPart != null)) {
var tempWebPart = this.draggedWebPart;
this.draggedWebPart = null;
tempWebPart.dragDrop();
window.setTimeout("__wpClearSelection()", 0);
}
}
function WebPartManager_InitiateWebPartDragDrop(webPartElement) {
var webPart = webPartElement.__webPart;
this.UpdatePositions();
this.dragState = new WebPartDragState(webPartElement, "move");
var location = __wpGetPageEventLocation(window.event, true);
var overlayContainerElement = this.overlayContainerElement;
overlayContainerElement.style.left = location.x - webPartElement.offsetWidth / 2;
overlayContainerElement.style.top = location.y + 4 + (webPartElement.clientTop ? webPartElement.clientTop : 0);
overlayContainerElement.style.display = "block";
overlayContainerElement.style.width = webPartElement.offsetWidth;
overlayContainerElement.style.height = webPartElement.offsetHeight;
overlayContainerElement.appendChild(webPartElement.cloneNode(true));
if (webPart.allowZoneChange == false) {
webPart.zone.allowDrop = true;
}
else {
for (var i = 0; i < __wpm.zones.length; i++) {
var zone = __wpm.zones[i];
if (zone.allowLayoutChange) {
zone.allowDrop = true;
}
}
}
document.body.attachEvent("ondragover", Zone_OnDragOver);
return "move";
}
function WebPartManager_CompleteWebPartDragDrop() {
var dragState = this.dragState;
this.dragState = null;
if ((typeof(dragState.dropZoneElement) != "undefined") && (dragState.dropZoneElement != null)) {
dragState.dropZoneElement.__zone.ToggleDropCues(false, dragState.dropIndex, false);
}
document.body.detachEvent("ondragover", Zone_OnDragOver);
for (var i = 0; i < __wpm.zones.length; i++) {
__wpm.zones[i].allowDrop = false;
}
this.overlayContainerElement.removeChild(this.overlayContainerElement.firstChild);
this.overlayContainerElement.style.display = "none";
if ((typeof(dragState) != "undefined") && (dragState != null) && (dragState.dropped == true)) {
var currentZone = dragState.webPartElement.__webPart.zone;
var currentZoneIndex = dragState.webPartElement.__webPart.zoneIndex;
if ((currentZone != dragState.dropZoneElement.__zone) ||
((currentZoneIndex != dragState.dropIndex) &&
(currentZoneIndex != (dragState.dropIndex - 1)))) {
var eventTarget = dragState.dropZoneElement.__zone.uniqueID;
var eventArgument = "Drag:" + dragState.webPartElement.id + ":" + dragState.dropIndex;
this.SubmitPage(eventTarget, eventArgument);
}
}
}
function WebPartManager_ContinueWebPartDragDrop() {
var dragState = this.dragState;
if ((typeof(dragState) != "undefined") && (dragState != null)) {
var style = this.overlayContainerElement.style;
var location = __wpGetPageEventLocation(window.event, true);
style.left = location.x - dragState.webPartElement.offsetWidth / 2;
style.top = location.y + 4 + (dragState.webPartElement.clientTop ? dragState.webPartElement.clientTop : 0);
}
}
function WebPartManager_Execute(script) {
if (this.menu) {
this.menu.Hide();
}
var scriptReference = new Function(script);
return (scriptReference() != false);
}
function WebPartManager_ProcessWebPartDragEnter() {
var dragState = __wpm.dragState;
if ((typeof(dragState) != "undefined") && (dragState != null)) {
var currentEvent = window.event;
var newDropZoneElement = Zone_GetParentZoneElement(currentEvent.srcElement);
if ((typeof(newDropZoneElement.__zone) == "undefined") || (newDropZoneElement.__zone == null) ||
(newDropZoneElement.__zone.allowDrop == false)) {
newDropZoneElement = null;
}
var newDropIndex = -1;
if ((typeof(newDropZoneElement) != "undefined") && (newDropZoneElement != null)) {
newDropIndex = newDropZoneElement.__zone.GetWebPartIndex(__wpGetPageEventLocation(currentEvent, false));
if (newDropIndex == -1) {
newDropZoneElement = null;
}
}
if (dragState.dropZoneElement != newDropZoneElement) {
if ((typeof(dragState.dropZoneElement) != "undefined") && (dragState.dropZoneElement != null)) {
dragState.dropZoneElement.__zone.ToggleDropCues(false, dragState.dropIndex, false);
}
dragState.dropZoneElement = newDropZoneElement;
dragState.dropIndex = newDropIndex;
if ((typeof(newDropZoneElement) != "undefined") && (newDropZoneElement != null)) {
newDropZoneElement.__zone.ToggleDropCues(true, newDropIndex, false);
}
}
else if (dragState.dropIndex != newDropIndex) {
if (dragState.dropIndex != -1) {
dragState.dropZoneElement.__zone.ToggleDropCues(false, dragState.dropIndex, false);
}
dragState.dropIndex = newDropIndex;
if ((typeof(newDropZoneElement) != "undefined") && (newDropZoneElement != null)) {
newDropZoneElement.__zone.ToggleDropCues(true, newDropIndex, false);
}
}
if ((typeof(dragState.dropZoneElement) != "undefined") && (dragState.dropZoneElement != null)) {
currentEvent.dataTransfer.effectAllowed = dragState.effect;
}
return true;
}
return false;
}
function WebPartManager_ProcessWebPartDragOver() {
var dragState = __wpm.dragState;
var currentEvent = window.event;
var handled = false;
if ((typeof(dragState) != "undefined") && (dragState != null) &&
(typeof(dragState.dropZoneElement) != "undefined") && (dragState.dropZoneElement != null)) {
var dropZoneElement = Zone_GetParentZoneElement(currentEvent.srcElement);
if ((typeof(dropZoneElement) != "undefined") && (dropZoneElement != null) && (dropZoneElement.__zone.allowDrop == false)) {
dropZoneElement = null;
}
if (((typeof(dropZoneElement) == "undefined") || (dropZoneElement == null)) &&
(typeof(dragState.dropZoneElement) != "undefined") && (dragState.dropZoneElement != null)) {
dragState.dropZoneElement.__zone.ToggleDropCues(false, __wpm.dragState.dropIndex, false);
dragState.dropZoneElement = null;
dragState.dropIndex = -1;
}
else if ((typeof(dropZoneElement) != "undefined") && (dropZoneElement != null)) {
var location = __wpGetPageEventLocation(currentEvent, false);
var newDropIndex = dropZoneElement.__zone.GetWebPartIndex(location);
if (newDropIndex == -1) {
dropZoneElement = null;
}
if (dragState.dropZoneElement != dropZoneElement) {
if ((dragState.dropIndex != -1) || (typeof(dropZoneElement) == "undefined") || (dropZoneElement == null)) {
dragState.dropZoneElement.__zone.ToggleDropCues(false, __wpm.dragState.dropIndex, false);
}
dragState.dropZoneElement = dropZoneElement;
}
else {
dragState.dropZoneElement.__zone.ToggleDropCues(false, dragState.dropIndex, true);
}
dragState.dropIndex = newDropIndex;
if ((typeof(dropZoneElement) != "undefined") && (dropZoneElement != null)) {
dropZoneElement.__zone.ToggleDropCues(true, newDropIndex, false);
}
}
handled = true;
}
if ((typeof(dragState) == "undefined") || (dragState == null) ||
(typeof(dragState.dropZoneElement) == "undefined") || (dragState.dropZoneElement == null)) {
currentEvent.dataTransfer.effectAllowed = "none";
}
return handled;
}
function WebPartManager_ProcessWebPartDrop() {
var dragState = this.dragState;
if ((typeof(dragState) != "undefined") && (dragState != null)) {
var currentEvent = window.event;
var dropZoneElement = Zone_GetParentZoneElement(currentEvent.srcElement);
if ((typeof(dropZoneElement) != "undefined") && (dropZoneElement != null) && (dropZoneElement.__zone.allowDrop == false)) {
dropZoneElement = null;
}
if ((typeof(dropZoneElement) != "undefined") && (dropZoneElement != null) && (dragState.dropZoneElement == dropZoneElement)) {
dragState.dropped = true;
}
return true;
}
return false;
}
function WebPartManager_ShowHelp(helpUrl, helpMode) {
if ((typeof(this.menu) != "undefined") && (this.menu != null)) {
this.menu.Hide();
}
if (helpMode == 0 || helpMode == 1) {
if (helpMode == 0) {
var dialogInfo = "edge: Sunken; center: yes; help: no; resizable: yes; status: no";
window.showModalDialog(helpUrl, null, dialogInfo);
}
else {
window.open(helpUrl, null, "scrollbars=yes,resizable=yes,status=no,toolbar=no,menubar=no,location=no");
}
}
else if (helpMode == 2) {
window.location = helpUrl;
}
}
function WebPartManager_ExportWebPart(exportUrl, warn, confirmOnly) {
if (warn == true && __wpmExportWarning.length > 0 && this.personalizationScopeShared != true) {
if (confirm(__wpmExportWarning) == false) {
return false;
}
}
if (confirmOnly == false) {
window.location = exportUrl;
}
return true;
}
function WebPartManager_UpdatePositions() {
for (var i = 0; i < this.zones.length; i++) {
this.zones[i].UpdatePosition();
}
}
function WebPartManager_SubmitPage(eventTarget, eventArgument) {
if ((typeof(this.menu) != "undefined") && (this.menu != null)) {
this.menu.Hide();
}
__doPostBack(eventTarget, eventArgument);
}

View File

@@ -0,0 +1,684 @@
//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5.1/1/WebUIValidation.js
var Page_ValidationVer = "125";
var Page_IsValid = true;
var Page_BlockSubmit = false;
var Page_InvalidControlToBeFocused = null;
var Page_TextTypes = /^(text|password|file|search|tel|url|email|number|range|color|datetime|date|month|week|time|datetime-local)$/i;
function ValidatorUpdateDisplay(val) {
if (typeof(val.display) == "string") {
if (val.display == "None") {
return;
}
if (val.display == "Dynamic") {
val.style.display = val.isvalid ? "none" : "inline";
return;
}
}
if ((navigator.userAgent.indexOf("Mac") > -1) &&
(navigator.userAgent.indexOf("MSIE") > -1)) {
val.style.display = "inline";
}
val.style.visibility = val.isvalid ? "hidden" : "visible";
}
function ValidatorUpdateIsValid() {
Page_IsValid = AllValidatorsValid(Page_Validators);
}
function AllValidatorsValid(validators) {
if ((typeof(validators) != "undefined") && (validators != null)) {
var i;
for (i = 0; i < validators.length; i++) {
if (!validators[i].isvalid) {
return false;
}
}
}
return true;
}
function ValidatorHookupControlID(controlID, val) {
if (typeof(controlID) != "string") {
return;
}
var ctrl = document.getElementById(controlID);
if ((typeof(ctrl) != "undefined") && (ctrl != null)) {
ValidatorHookupControl(ctrl, val);
}
else {
val.isvalid = true;
val.enabled = false;
}
}
function ValidatorHookupControl(control, val) {
if (typeof(control.tagName) != "string") {
return;
}
if (control.tagName != "INPUT" && control.tagName != "TEXTAREA" && control.tagName != "SELECT") {
var i;
for (i = 0; i < control.childNodes.length; i++) {
ValidatorHookupControl(control.childNodes[i], val);
}
return;
}
else {
if (typeof(control.Validators) == "undefined") {
control.Validators = new Array;
var eventType;
if (control.type == "radio") {
eventType = "onclick";
} else {
eventType = "onchange";
if (typeof(val.focusOnError) == "string" && val.focusOnError == "t") {
ValidatorHookupEvent(control, "onblur", "ValidatedControlOnBlur(event); ");
}
}
ValidatorHookupEvent(control, eventType, "ValidatorOnChange(event); ");
if (Page_TextTypes.test(control.type)) {
ValidatorHookupEvent(control, "onkeypress",
"event = event || window.event; if (!ValidatedTextBoxOnKeyPress(event)) { event.cancelBubble = true; if (event.stopPropagation) event.stopPropagation(); return false; } ");
}
}
control.Validators[control.Validators.length] = val;
}
}
function ValidatorHookupEvent(control, eventType, functionPrefix) {
var ev = control[eventType];
if (typeof(ev) == "function") {
ev = ev.toString();
ev = ev.substring(ev.indexOf("{") + 1, ev.lastIndexOf("}"));
}
else {
ev = "";
}
control[eventType] = new Function("event", functionPrefix + " " + ev);
}
function ValidatorGetValue(id) {
var control;
control = document.getElementById(id);
if (typeof(control.value) == "string") {
return control.value;
}
return ValidatorGetValueRecursive(control);
}
function ValidatorGetValueRecursive(control)
{
if (typeof(control.value) == "string" && (control.type != "radio" || control.checked == true)) {
return control.value;
}
var i, val;
for (i = 0; i<control.childNodes.length; i++) {
val = ValidatorGetValueRecursive(control.childNodes[i]);
if (val != "") return val;
}
return "";
}
function Page_ClientValidate(validationGroup) {
Page_InvalidControlToBeFocused = null;
if (typeof(Page_Validators) == "undefined") {
return true;
}
var i;
for (i = 0; i < Page_Validators.length; i++) {
ValidatorValidate(Page_Validators[i], validationGroup, null);
}
ValidatorUpdateIsValid();
ValidationSummaryOnSubmit(validationGroup);
Page_BlockSubmit = !Page_IsValid;
return Page_IsValid;
}
function ValidatorCommonOnSubmit() {
Page_InvalidControlToBeFocused = null;
var result = !Page_BlockSubmit;
if ((typeof(window.event) != "undefined") && (window.event != null)) {
window.event.returnValue = result;
}
Page_BlockSubmit = false;
return result;
}
function ValidatorEnable(val, enable) {
val.enabled = (enable != false);
ValidatorValidate(val);
ValidatorUpdateIsValid();
}
function ValidatorOnChange(event) {
event = event || window.event;
Page_InvalidControlToBeFocused = null;
var targetedControl;
if ((typeof(event.srcElement) != "undefined") && (event.srcElement != null)) {
targetedControl = event.srcElement;
}
else {
targetedControl = event.target;
}
var vals;
if (typeof(targetedControl.Validators) != "undefined") {
vals = targetedControl.Validators;
}
else {
if (targetedControl.tagName.toLowerCase() == "label") {
targetedControl = document.getElementById(targetedControl.htmlFor);
vals = targetedControl.Validators;
}
}
if (vals) {
for (var i = 0; i < vals.length; i++) {
ValidatorValidate(vals[i], null, event);
}
}
ValidatorUpdateIsValid();
}
function ValidatedTextBoxOnKeyPress(event) {
event = event || window.event;
if (event.keyCode == 13) {
ValidatorOnChange(event);
var vals;
if ((typeof(event.srcElement) != "undefined") && (event.srcElement != null)) {
vals = event.srcElement.Validators;
}
else {
vals = event.target.Validators;
}
return AllValidatorsValid(vals);
}
return true;
}
function ValidatedControlOnBlur(event) {
event = event || window.event;
var control;
if ((typeof(event.srcElement) != "undefined") && (event.srcElement != null)) {
control = event.srcElement;
}
else {
control = event.target;
}
if ((typeof(control) != "undefined") && (control != null) && (Page_InvalidControlToBeFocused == control)) {
control.focus();
Page_InvalidControlToBeFocused = null;
}
}
function ValidatorValidate(val, validationGroup, event) {
val.isvalid = true;
if ((typeof(val.enabled) == "undefined" || val.enabled != false) && IsValidationGroupMatch(val, validationGroup)) {
if (typeof(val.evaluationfunction) == "function") {
val.isvalid = val.evaluationfunction(val);
if (!val.isvalid && Page_InvalidControlToBeFocused == null &&
typeof(val.focusOnError) == "string" && val.focusOnError == "t") {
ValidatorSetFocus(val, event);
}
}
}
ValidatorUpdateDisplay(val);
}
function ValidatorSetFocus(val, event) {
var ctrl;
if (typeof(val.controlhookup) == "string") {
var eventCtrl;
if ((typeof(event) != "undefined") && (event != null)) {
if ((typeof(event.srcElement) != "undefined") && (event.srcElement != null)) {
eventCtrl = event.srcElement;
}
else {
eventCtrl = event.target;
}
}
if ((typeof(eventCtrl) != "undefined") && (eventCtrl != null) &&
(typeof(eventCtrl.id) == "string") &&
(eventCtrl.id == val.controlhookup)) {
ctrl = eventCtrl;
}
}
if ((typeof(ctrl) == "undefined") || (ctrl == null)) {
ctrl = document.getElementById(val.controltovalidate);
}
if ((typeof(ctrl) != "undefined") && (ctrl != null) &&
(ctrl.tagName.toLowerCase() != "table" || (typeof(event) == "undefined") || (event == null)) &&
((ctrl.tagName.toLowerCase() != "input") || (ctrl.type.toLowerCase() != "hidden")) &&
(typeof(ctrl.disabled) == "undefined" || ctrl.disabled == null || ctrl.disabled == false) &&
(typeof(ctrl.visible) == "undefined" || ctrl.visible == null || ctrl.visible != false) &&
(IsInVisibleContainer(ctrl))) {
if ((ctrl.tagName.toLowerCase() == "table" && (typeof(__nonMSDOMBrowser) == "undefined" || __nonMSDOMBrowser)) ||
(ctrl.tagName.toLowerCase() == "span")) {
var inputElements = ctrl.getElementsByTagName("input");
var lastInputElement = inputElements[inputElements.length -1];
if (lastInputElement != null) {
ctrl = lastInputElement;
}
}
if (typeof(ctrl.focus) != "undefined" && ctrl.focus != null) {
ctrl.focus();
Page_InvalidControlToBeFocused = ctrl;
}
}
}
function IsInVisibleContainer(ctrl) {
if (typeof(ctrl.style) != "undefined" &&
( ( typeof(ctrl.style.display) != "undefined" &&
ctrl.style.display == "none") ||
( typeof(ctrl.style.visibility) != "undefined" &&
ctrl.style.visibility == "hidden") ) ) {
return false;
}
else if (typeof(ctrl.parentNode) != "undefined" &&
ctrl.parentNode != null &&
ctrl.parentNode != ctrl) {
return IsInVisibleContainer(ctrl.parentNode);
}
return true;
}
function IsValidationGroupMatch(control, validationGroup) {
if ((typeof(validationGroup) == "undefined") || (validationGroup == null)) {
return true;
}
var controlGroup = "";
if (typeof(control.validationGroup) == "string") {
controlGroup = control.validationGroup;
}
return (controlGroup == validationGroup);
}
function ValidatorOnLoad() {
if (typeof(Page_Validators) == "undefined")
return;
var i, val;
for (i = 0; i < Page_Validators.length; i++) {
val = Page_Validators[i];
if (typeof(val.evaluationfunction) == "string") {
eval("val.evaluationfunction = " + val.evaluationfunction + ";");
}
if (typeof(val.isvalid) == "string") {
if (val.isvalid == "False") {
val.isvalid = false;
Page_IsValid = false;
}
else {
val.isvalid = true;
}
} else {
val.isvalid = true;
}
if (typeof(val.enabled) == "string") {
val.enabled = (val.enabled != "False");
}
if (typeof(val.controltovalidate) == "string") {
ValidatorHookupControlID(val.controltovalidate, val);
}
if (typeof(val.controlhookup) == "string") {
ValidatorHookupControlID(val.controlhookup, val);
}
}
Page_ValidationActive = true;
}
function ValidatorConvert(op, dataType, val) {
function GetFullYear(year) {
var twoDigitCutoffYear = val.cutoffyear % 100;
var cutoffYearCentury = val.cutoffyear - twoDigitCutoffYear;
return ((year > twoDigitCutoffYear) ? (cutoffYearCentury - 100 + year) : (cutoffYearCentury + year));
}
var num, cleanInput, m, exp;
if (dataType == "Integer") {
exp = /^\s*[-\+]?\d+\s*$/;
if (op.match(exp) == null)
return null;
num = parseInt(op, 10);
return (isNaN(num) ? null : num);
}
else if(dataType == "Double") {
exp = new RegExp("^\\s*([-\\+])?(\\d*)\\" + val.decimalchar + "?(\\d*)\\s*$");
m = op.match(exp);
if (m == null)
return null;
if (m[2].length == 0 && m[3].length == 0)
return null;
cleanInput = (m[1] != null ? m[1] : "") + (m[2].length>0 ? m[2] : "0") + (m[3].length>0 ? "." + m[3] : "");
num = parseFloat(cleanInput);
return (isNaN(num) ? null : num);
}
else if (dataType == "Currency") {
var hasDigits = (val.digits > 0);
var beginGroupSize, subsequentGroupSize;
var groupSizeNum = parseInt(val.groupsize, 10);
if (!isNaN(groupSizeNum) && groupSizeNum > 0) {
beginGroupSize = "{1," + groupSizeNum + "}";
subsequentGroupSize = "{" + groupSizeNum + "}";
}
else {
beginGroupSize = subsequentGroupSize = "+";
}
exp = new RegExp("^\\s*([-\\+])?((\\d" + beginGroupSize + "(\\" + val.groupchar + "\\d" + subsequentGroupSize + ")+)|\\d*)"
+ (hasDigits ? "\\" + val.decimalchar + "?(\\d{0," + val.digits + "})" : "")
+ "\\s*$");
m = op.match(exp);
if (m == null)
return null;
if (m[2].length == 0 && hasDigits && m[5].length == 0)
return null;
cleanInput = (m[1] != null ? m[1] : "") + m[2].replace(new RegExp("(\\" + val.groupchar + ")", "g"), "") + ((hasDigits && m[5].length > 0) ? "." + m[5] : "");
num = parseFloat(cleanInput);
return (isNaN(num) ? null : num);
}
else if (dataType == "Date") {
var yearFirstExp = new RegExp("^\\s*((\\d{4})|(\\d{2}))([-/]|\\. ?)(\\d{1,2})\\4(\\d{1,2})\\.?\\s*$");
m = op.match(yearFirstExp);
var day, month, year;
if (m != null && (((typeof(m[2]) != "undefined") && (m[2].length == 4)) || val.dateorder == "ymd")) {
day = m[6];
month = m[5];
year = (m[2].length == 4) ? m[2] : GetFullYear(parseInt(m[3], 10));
}
else {
if (val.dateorder == "ymd"){
return null;
}
var yearLastExp = new RegExp("^\\s*(\\d{1,2})([-/]|\\. ?)(\\d{1,2})(?:\\s|\\2)((\\d{4})|(\\d{2}))(?:\\s\u0433\\.|\\.)?\\s*$");
m = op.match(yearLastExp);
if (m == null) {
return null;
}
if (val.dateorder == "mdy") {
day = m[3];
month = m[1];
}
else {
day = m[1];
month = m[3];
}
year = ((typeof(m[5]) != "undefined") && (m[5].length == 4)) ? m[5] : GetFullYear(parseInt(m[6], 10));
}
month -= 1;
var date = new Date(year, month, day);
if (year < 100) {
date.setFullYear(year);
}
return (typeof(date) == "object" && year == date.getFullYear() && month == date.getMonth() && day == date.getDate()) ? date.valueOf() : null;
}
else {
return op.toString();
}
}
function ValidatorCompare(operand1, operand2, operator, val) {
var dataType = val.type;
var op1, op2;
if ((op1 = ValidatorConvert(operand1, dataType, val)) == null)
return false;
if (operator == "DataTypeCheck")
return true;
if ((op2 = ValidatorConvert(operand2, dataType, val)) == null)
return true;
switch (operator) {
case "NotEqual":
return (op1 != op2);
case "GreaterThan":
return (op1 > op2);
case "GreaterThanEqual":
return (op1 >= op2);
case "LessThan":
return (op1 < op2);
case "LessThanEqual":
return (op1 <= op2);
default:
return (op1 == op2);
}
}
function CompareValidatorEvaluateIsValid(val) {
var value = ValidatorGetValue(val.controltovalidate);
if (ValidatorTrim(value).length == 0)
return true;
var compareTo = "";
if ((typeof(val.controltocompare) != "string") ||
(typeof(document.getElementById(val.controltocompare)) == "undefined") ||
(null == document.getElementById(val.controltocompare))) {
if (typeof(val.valuetocompare) == "string") {
compareTo = val.valuetocompare;
}
}
else {
compareTo = ValidatorGetValue(val.controltocompare);
}
var operator = "Equal";
if (typeof(val.operator) == "string") {
operator = val.operator;
}
return ValidatorCompare(value, compareTo, operator, val);
}
function CustomValidatorEvaluateIsValid(val) {
var value = "";
if (typeof(val.controltovalidate) == "string") {
value = ValidatorGetValue(val.controltovalidate);
if ((ValidatorTrim(value).length == 0) &&
((typeof(val.validateemptytext) != "string") || (val.validateemptytext != "true"))) {
return true;
}
}
var args = { Value:value, IsValid:true };
if (typeof(val.clientvalidationfunction) == "string") {
eval(val.clientvalidationfunction + "(val, args) ;");
}
return args.IsValid;
}
function RegularExpressionValidatorEvaluateIsValid(val) {
var value = ValidatorGetValue(val.controltovalidate);
if (ValidatorTrim(value).length == 0)
return true;
var rx = new RegExp(val.validationexpression);
var matches = rx.exec(value);
return (matches != null && value == matches[0]);
}
function ValidatorTrim(s) {
var m = s.match(/^\s*(\S+(\s+\S+)*)\s*$/);
return (m == null) ? "" : m[1];
}
function RequiredFieldValidatorEvaluateIsValid(val) {
return (ValidatorTrim(ValidatorGetValue(val.controltovalidate)) != ValidatorTrim(val.initialvalue))
}
function RangeValidatorEvaluateIsValid(val) {
var value = ValidatorGetValue(val.controltovalidate);
if (ValidatorTrim(value).length == 0)
return true;
return (ValidatorCompare(value, val.minimumvalue, "GreaterThanEqual", val) &&
ValidatorCompare(value, val.maximumvalue, "LessThanEqual", val));
}
function ValidationSummaryOnSubmit(validationGroup) {
if (typeof(Page_ValidationSummaries) == "undefined")
return;
var summary, sums, s;
var headerSep, first, pre, post, end;
for (sums = 0; sums < Page_ValidationSummaries.length; sums++) {
summary = Page_ValidationSummaries[sums];
if (!summary) continue;
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);
}
}
}
}
if (window.jQuery) {
(function ($) {
var dataValidationAttribute = "data-val",
dataValidationSummaryAttribute = "data-valsummary",
normalizedAttributes = { validationgroup: "validationGroup", focusonerror: "focusOnError" };
function getAttributesWithPrefix(element, prefix) {
var i,
attribute,
list = {},
attributes = element.attributes,
length = attributes.length,
prefixLength = prefix.length;
prefix = prefix.toLowerCase();
for (i = 0; i < length; i++) {
attribute = attributes[i];
if (attribute.specified && attribute.name.substr(0, prefixLength).toLowerCase() === prefix) {
list[attribute.name.substr(prefixLength)] = attribute.value;
}
}
return list;
}
function normalizeKey(key) {
key = key.toLowerCase();
return normalizedAttributes[key] === undefined ? key : normalizedAttributes[key];
}
function addValidationExpando(element) {
var attributes = getAttributesWithPrefix(element, dataValidationAttribute + "-");
$.each(attributes, function (key, value) {
element[normalizeKey(key)] = value;
});
}
function dispose(element) {
var index = $.inArray(element, Page_Validators);
if (index >= 0) {
Page_Validators.splice(index, 1);
}
}
function addNormalizedAttribute(name, normalizedName) {
normalizedAttributes[name.toLowerCase()] = normalizedName;
}
function parseSpecificAttribute(selector, attribute, validatorsArray) {
return $(selector).find("[" + attribute + "='true']").each(function (index, element) {
addValidationExpando(element);
element.dispose = function () { dispose(element); element.dispose = null; };
if ($.inArray(element, validatorsArray) === -1) {
validatorsArray.push(element);
}
}).length;
}
function parse(selector) {
var length = parseSpecificAttribute(selector, dataValidationAttribute, Page_Validators);
length += parseSpecificAttribute(selector, dataValidationSummaryAttribute, Page_ValidationSummaries);
return length;
}
function loadValidators() {
if (typeof (ValidatorOnLoad) === "function") {
ValidatorOnLoad();
}
if (typeof (ValidatorOnSubmit) === "undefined") {
window.ValidatorOnSubmit = function () {
return Page_ValidationActive ? ValidatorCommonOnSubmit() : true;
};
}
}
function registerUpdatePanel() {
if (window.Sys && Sys.WebForms && Sys.WebForms.PageRequestManager) {
var prm = Sys.WebForms.PageRequestManager.getInstance(),
postBackElement, endRequestHandler;
if (prm.get_isInAsyncPostBack()) {
endRequestHandler = function (sender, args) {
if (parse(document)) {
loadValidators();
}
prm.remove_endRequest(endRequestHandler);
endRequestHandler = null;
};
prm.add_endRequest(endRequestHandler);
}
prm.add_beginRequest(function (sender, args) {
postBackElement = args.get_postBackElement();
});
prm.add_pageLoaded(function (sender, args) {
var i, panels, valFound = 0;
if (typeof (postBackElement) === "undefined") {
return;
}
panels = args.get_panelsUpdated();
for (i = 0; i < panels.length; i++) {
valFound += parse(panels[i]);
}
panels = args.get_panelsCreated();
for (i = 0; i < panels.length; i++) {
valFound += parse(panels[i]);
}
if (valFound) {
loadValidators();
}
});
}
}
$(function () {
if (typeof (Page_Validators) === "undefined") {
window.Page_Validators = [];
}
if (typeof (Page_ValidationSummaries) === "undefined") {
window.Page_ValidationSummaries = [];
}
if (typeof (Page_ValidationActive) === "undefined") {
window.Page_ValidationActive = false;
}
$.WebFormValidator = {
addNormalizedAttribute: addNormalizedAttribute,
parse: parse
};
if (parse(document)) {
loadValidators();
}
registerUpdatePanel();
});
} (jQuery));
}

View File

@@ -0,0 +1,11 @@
<configuration>
<system.web>
<pages>
<controls>
<add assembly="Microsoft.AspNet.Web.Optimization.WebForms"
namespace="Microsoft.AspNet.Web.Optimization.WebForms"
tagPrefix="webopt" />
</controls>
</pages>
</system.web>
</configuration>