//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("|");
}
//Focus.js
function WebForm_FindFirstFocusableChild(control) {
if (control == null || control.tagName == null) {
return null;
}
var tagName = control.tagName.toLowerCase();
if (tagName == "undefined") {
return null;
}
var children = control.childNodes;
if (children != null) {
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 != null && (!WebForm_CanFocus(targetControl)) ) {
focused = WebForm_FindFirstFocusableChild(targetControl);
}
if (focused != null) {
try {
focused.focus();
if (__nonMSDOMBrowser) {
focused.scrollIntoView(false);
}
if (window.__smartNav != null) {
window.__smartNav.ae = focused.id;
}
}
catch (e) {
}
}
}
function WebForm_CanFocus(element) {
if (element == null || element.tagName == null) return false;
var tagName = element.tagName.toLowerCase();
return ((element.disabled == null || element.disabled == false) &&
(element.type == null || 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) {
if (ctrl.disabled == true ||
( 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 WebForm_IsInVisibleContainer(ctrl.parentNode);
}
return true;
}
// 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("|");
}
// Menu.js
var __rootMenuItem;
var __menuInterval;
var __scrollPanel;
var __disappearAfter = 500;
function getElementById(elementId) {
if (document.getElementById) {
return document.getElementById(elementId);
}
else if (document.all) {
return document.all[elementId];
}
else return null;
}
function getElementByTagName(element, tagName) {
var elements = getElementsByTagName(element, tagName);
if (elements && elements.length > 0) {
return elements[0];
}
else return null;
}
function 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 getElementDir(element) {
if (element) {
if (element.dir) {
return element.dir;
}
return getElementDir(element.parentNode);
}
return "ltr";
}
function 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 Menu_AppendToClassName(element, className) {
var current = element.className;
if (current) {
if (current.charAt(current.length - 1) != ' ') {
current += ' ';
}
current += className;
}
else {
current = className;
}
element.className = current;
}
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) {
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 = getElementById(tr.id.substr(0, i));
if (menu) {
item.menu = menu;
return menu;
}
}
}
return null;
}
function Menu_FindNext(item) {
var a = getElementByTagName(item, "A");
var parent = Menu_FindParentContainer(item);
var first = null;
if (parent) {
var links = getElementsByTagName(parent, "A");
var match = false;
for (var i = 0; i < links.length; i++) {
var link = links[i];
if (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 : 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 getElementById(parentItemID);
}
return null;
}
function Menu_FindPrevious(item) {
var a = getElementByTagName(item, "A");
var parent = Menu_FindParentContainer(item);
var last = null;
if (parent) {
var links = getElementsByTagName(parent, "A");
for (var i = 0; i < links.length; i++) {
var link = links[i];
if (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 getElementById(tr.id + "Items");
}
function Menu_Focus(item) {
if (item && item.focus) {
var pos = getElementPosition(item);
var parentContainer = Menu_FindParentContainer(item);
if (!parentContainer.offset) {
parentContainer.offset = 0;
}
var posParent = 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 : 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) {
items = __rootMenuItem;
}
var table = items;
if (!table || !table.tagName || (table.tagName.toLowerCase() != "table")) {
table = getElementByTagName(table, "TABLE");
}
if (!table || !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 = getElementById(rows[i].id + "Items");
if (child) {
Menu_HideItems(child);
}
}
else if (rows[i].cells[0]) {
nextLevel = getElementByTagName(rows[i].cells[0], "TABLE");
if (nextLevel) {
Menu_HideItems(nextLevel);
}
}
}
}
else {
for(i = 0; i < rows[0].cells.length; i++) {
if (rows[0].cells[i].id) {
child = getElementById(rows[0].cells[i].id + "Items");
if (child) {
Menu_HideItems(child);
}
}
else {
nextLevel = 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 = 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 = getElementByTagName(node, "table");
if (data.hoverClass) {
nodeTable.hoverClass = data.hoverClass;
Menu_AppendToClassName(nodeTable, data.hoverClass);
}
node = nodeTable.rows[0].cells[0].childNodes[0];
if (data.hoverHyperLinkClass) {
node.hoverHyperLinkClass = data.hoverHyperLinkClass;
Menu_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 = getElementByTagName(node, "table");
if (data.staticHoverClass) {
nodeTable.hoverClass = data.staticHoverClass;
Menu_AppendToClassName(nodeTable, data.staticHoverClass);
}
node = nodeTable.rows[0].cells[0].childNodes[0];
if (data.staticHoverHyperLinkClass) {
node.hoverHyperLinkClass = data.staticHoverHyperLinkClass;
Menu_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 : getElementByTagName(item, "A"));
if (!a) {
return false;
}
var td = a.parentNode.parentNode.parentNode.parentNode.parentNode;
if (td.id) {
return true;
}
}
return false;
}
function Menu_Key(item) {
var event;
if (window.event) {
event = window.event;
}
else {
event = item;
item = event.currentTarget;
}
var key = (event ? event.keyCode : -1);
var data = Menu_GetData(item);
if (!data) return;
var horizontal = Menu_IsHorizontal(item);
var a = 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;
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;
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;
return;
}
}
if ((!horizontal && key == 39) || (horizontal && key == 40)) {
var children = Menu_Expand(a, data.horizontalOffset, data.verticalOffset, true);
if (children) {
var firstChild;
children = getElementsByTagName(children, "A");
for (var i = 0; i < children.length; i++) {
if (!children[i].disabled) {
firstChild = children[i];
break;
}
}
if (firstChild) {
Menu_Focus(firstChild);
Menu_Expand(firstChild, data.horizontalOffset, data.verticalOffset, true);
event.cancelBubble = true;
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;
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;
return;
}
}
var parentA = getElementByTagName(parentItem, "A");
if (parentA) {
Menu_Focus(parentA);
}
Menu_ResetSiblings(parentItem);
event.cancelBubble = true;
return;
}
}
if (key == 27) {
Menu_HideItems();
event.cancelBubble = true;
return;
}
}
function Menu_RemoveClassName(element, className) {
var current = element.className;
if (current.substring(current.length - className.length - 1, current.length) == ' ' + className) {
element.className = current.substring(0, current.length - className.length - 1);
return;
}
if (current == className) {
element.className = "";
return;
}
var index = current.indexOf(' ' + className + ' ');
if (index != -1) {
element.className = current.substring(0, index) + current.substring(index + className.length + 2, current.length);
return;
}
if (current.substring(0, className.length) == className + ' ') {
element.className = current.substring(className.length + 1, current.length);
}
}
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 = 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 = 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 = 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 = 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 = getElementByTagName(node, "table");
if (nodeTable.hoverClass) {
Menu_RemoveClassName(nodeTable, nodeTable.hoverClass);
}
node = nodeTable.rows[0].cells[0].childNodes[0];
if (node.hoverHyperLinkClass) {
Menu_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 = getElementById(panelId);
if (panel && panel.tagName.toLowerCase() == "div") {
panel.style.visibility = "hidden";
panel.style.display = "none";
panel.offset = 0;
panel.scrollTop = 0;
var table = getElementByTagName(panel, "TABLE");
if (table) {
setElementY(table, 0);
}
if (window.navigator && window.navigator.appName == "Microsoft Internet Explorer" &&
!window.opera) {
var childFrameId = panel.id + "_MenuIFrame";
var childFrame = getElementById(childFrameId);
if (childFrame) {
childFrame.style.display = "none";
}
}
}
}
function PopOut_HideScrollers(panel) {
if (panel && panel.style) {
var up = getElementById(panel.id + "Up");
var dn = 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) {
var rel = getElementById(panel.rel);
var relTable = getElementByTagName(rel, "TABLE");
var relCoordinates = getElementPosition(relTable ? relTable : rel);
var panelCoordinates = getElementPosition(panel);
var panelHeight = (panel.physicalHeight || panel.physicalHeight == 0) ?
panel.physicalHeight :
panelCoordinates.height;
panel.physicalHeight = panelHeight;
var panelParentCoordinates;
if (panel.offsetParent) {
panelParentCoordinates = getElementPosition(panel.offsetParent);
}
else {
panelParentCoordinates = new Object();
panelParentCoordinates.x = 0;
panelParentCoordinates.y = 0;
}
var overflowElement = getElementById("__overFlowElement");
if (!overflowElement) {
overflowElement = document.createElement("img");
overflowElement.id="__overFlowElement";
setElementWidth(overflowElement, 1);
document.body.appendChild(overflowElement);
}
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 (window.pageYOffset) {
scrollTop = window.pageYOffset;
scrollLeft = window.pageXOffset;
}
else if (document.body && document.body.scrollTop) {
scrollTop = document.body.scrollTop;
scrollLeft = document.body.scrollLeft;
}
else if (document.documentElement && document.documentElement.scrollTop) {
scrollTop = document.documentElement.scrollTop;
scrollLeft = document.documentElement.scrollLeft;
}
overflowElement.style.visibility = "hidden";
overflowElement.style.display = "none";
var bottomWindowBorder = clientHeight + scrollTop;
var rightWindowBorder = clientWidth + scrollLeft;
var position = panel.pos;
if (!position || position == "") {
position = (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;
setElementY(panel, y);
PopOut_SetPanelHeight(panel, panelHeight, true);
var clip = false;
var overflow;
if (position.indexOf("top") != -1) {
y -= panelHeight;
setElementY(panel, y);
if (y < -panelParentCoordinates.y) {
y = -panelParentCoordinates.y;
setElementY(panel, y);
if (panelHeight > clientHeight - 2) {
clip = true;
PopOut_SetPanelHeight(panel, clientHeight - 2);
}
}
}
else {
if (position.indexOf("bottom") != -1) {
y += relCoordinates.height;
setElementY(panel, y);
}
overflow = y + panelParentCoordinates.y + panelHeight - bottomWindowBorder;
if (overflow > 0) {
y -= overflow;
setElementY(panel, y);
if (y < -panelParentCoordinates.y) {
y = 2 - panelParentCoordinates.y + scrollTop;
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 = getElementPosition(panel.offsetParent).y;
}
var panelY = (panel.originY || panel.originY == 0) ?
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;
setElementX(panel, x);
if (position.indexOf("left") != -1) {
x -= panelCoordinates.width;
setElementX(panel, x);
if (x < -panelParentCoordinates.x) {
setElementX(panel, -panelParentCoordinates.x);
}
}
else {
if (position.indexOf("right") != -1) {
x += relCoordinates.width;
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;
}
setElementX(panel, x);
if (x < -panelParentCoordinates.x) {
setElementX(panel, -panelParentCoordinates.x);
}
}
}
}
function PopOut_Scroll(panel, offsetDelta) {
var table = getElementByTagName(panel, "TABLE");
if (!table) return;
table.style.position = "relative";
var tableY = (table.style.top ? parseInt(table.style.top) : 0);
panel.offset += offsetDelta;
setElementY(table, tableY - offsetDelta);
}
function PopOut_SetPanelHeight(element, height, doNotClip) {
if (element && element.style) {
var size = getElementPosition(element);
element.physicalWidth = size.width;
element.clippedHeight = height;
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 = 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 = getElementByTagName(panel, "TABLE");
if (table) {
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 = getElementById(childFrameId);
if (!childFrame) {
childFrame = document.createElement("iframe");
childFrame.id = childFrameId;
childFrame.src = "about:blank";
childFrame.style.position = "absolute";
childFrame.style.display = "none";
childFrame.scrolling = "no";
childFrame.frameBorder = "0";
document.body.appendChild(childFrame);
}
var pos = getElementPosition(panel);
setElementX(childFrame, pos.x);
setElementY(childFrame, pos.y);
setElementWidth(childFrame, pos.width);
setElementHeight(childFrame, pos.height);
childFrame.style.display = "block";
if (panel.currentStyle && panel.currentStyle.zIndex) {
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 = getElementById(panel.id + "Up");
var dn = 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) {
setElementWidth(up, panel.clientWidth
- (up.clientLeft ? (2 * up.clientLeft) : 0));
}
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) {
setElementWidth(dn, panel.clientWidth
- (dn.clientLeft ? (2 * dn.clientLeft) : 0));
}
setElementY(dn, panel.clippedHeight - 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);
}
}
function setElementHeight(element, height) {
if (element && element.style) {
element.style.height = height + "px";
}
}
function setElementWidth(element, width) {
if (element && element.style) {
element.style.width = width + "px";
}
}
function setElementX(element, x) {
if (element && element.style) {
element.style.left = x + "px";
}
}
function setElementY(element, y) {
if (element && element.style) {
element.style.top = y + "px";
}
}
//SmartNav.js
var snSrc;
if (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 (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 (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 = "
" + kids[i].outerHTML + "";
k = o.firstChild;
break;
}
if(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 (newBodyLoad != null)
document.body.onload = newBodyLoad;
else
document.body.onload = sn._savedOnLoad;
var s = "" + fd.body.innerHTML + "";
if (sn.hif != null)
{
var hifP = sn.hif.parentElement;
if (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 (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 (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 (sAeId==null || curAe!=null && (curAe.id==sAeId||curAe.name==sAeId))
return;
var ae = document.all(sAeId);
if (ae == null) return;
try { ae.focus(); } catch(e){};
}
window.__smartNav.saveHistory = function()
{
if (window.__smartNav.hif != null)
window.__smartNav.hif.removeNode();
if ( window.__smartNav.sHif != null
&& 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 (sn.hifDoc == null && 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 (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 (sn.hif == null)
{
sn.hif = document.all("__hifSmartNav");
sn.hifDoc = sn.hif.contentWindow.document;
}
if (sn.hifDoc != null)
try {sn.hifDoc.designMode = "On";}catch(e){};
if (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");
break;
}
}
var snfm = window.__smartNav.form;
if (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 (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;
}
//TreeView.js
function TreeView_AppendToClassName(element, className) {
var current = element.className;
if (current) {
if (current.charAt(current.length - 1) != " ") {
current += " ";
}
current += className;
}
else {
current = className;
}
element.className = current;
}
function TreeView_HoverNode(data, node) {
node.hoverClass = data.hoverClass;
TreeView_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;
TreeView_AppendToClassName(node, data.hoverHyperLinkClass);
}
function TreeView_GetNodeText(node) {
var trNode = node.parentNode.parentNode;
var outerNodes;
if (trNode.childNodes[trNode.childNodes.length - 1].getElementsByTagName) {
outerNodes = trNode.childNodes[trNode.childNodes.length - 1].getElementsByTagName("A");
}
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) {
data.node = node;
data.selectNode = selectNode;
data.selectImageNode = selectImageNode;
data.lineType = lineType;
data.index = index;
var param = index + "|" + data.lastIndex + "|" + databound + "|" + parentIsLast + "|" +
text.length + "|" + text + datapath.length + "|" + datapath + path;
TreeView_PopulateNodeDoCallBack(data, param);
}
function TreeView_ProcessNodeData(result, data) {
var treeNode = data.node;
if (result.length > 0) {
var ci = result.indexOf("|", 0);
data.lastIndex = result.substring(0, ci);
ci = result.indexOf("|", ci + 1);
var newExpandState = result.substring(data.lastIndex.length + 1, ci);
data.expandState.value = data.expandState.value + newExpandState;
var chunk = result.substr(ci + 1);
var newChildren, table;
if (__nonMSDOMBrowser) {
var newSpan = document.createElement("span");
newSpan.innerHTML = chunk;
table = treeNode.parentNode.parentNode.parentNode.parentNode;
newChildren = null;
if (table.nextSibling == null) {
table.parentNode.insertBefore(newSpan.firstChild, table.nextSibling);
newChildren = table.previousSibling;
}
else {
table = table.nextSibling;
table.parentNode.insertBefore(newSpan.firstChild, table);
newChildren = table.previousSibling;
}
newChildren = document.getElementById(treeNode.id + "Nodes");
}
else {
table = treeNode.parentElement.parentElement.parentElement.parentElement;
table.insertAdjacentHTML("afterEnd", chunk);
newChildren = document.all[treeNode.id + "Nodes"];
}
if (newChildren != null) {
TreeView_ToggleNode(data, data.index, treeNode, data.lineType, newChildren);
treeNode.href = document.getElementById ?
"javascript:TreeView_ToggleNode(" + data.name + "," + data.index + ",document.getElementById('" + treeNode.id + "'),'" + data.lineType + "',document.getElementById('" + newChildren.id + "'))" :
"javascript:TreeView_ToggleNode(" + data.name + "," + data.index + "," + treeNode.id + ",'" + data.lineType + "'," + newChildren.id + ")";
if ((data.selectNode != null) && data.selectNode.href &&
(data.selectNode.href.indexOf("javascript:TreeView_PopulateNode", 0) == 0)) {
data.selectNode.href = treeNode.href;
}
if ((data.selectImageNode != null) && data.selectNode.href &&
(data.selectImageNode.href.indexOf("javascript:TreeView_PopulateNode", 0) == 0)) {
data.selectImageNode.href = treeNode.href;
}
}
data.populateLog.value = data.populateLog.value + data.index + ",";
}
else {
var img = treeNode.childNodes ? treeNode.childNodes[0] : treeNode.children[0];
if (img != null) {
var lineType = data.lineType;
if (lineType == "l") {
img.src = data.images[13];
}
else if (lineType == "t") {
img.src = data.images[10];
}
else if (lineType == "-") {
img.src = data.images[16];
}
else {
img.src = 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_RemoveClassName(element, className) {
var current = element.className;
if (current.substring(current.length - className.length - 1, current.length) == " " + className) {
element.className = current.substring(0, current.length - className.length - 1);
return;
}
if (current == className) {
element.className = "";
return;
}
var index = current.indexOf(" " + className + " ");
if (index != -1) {
element.className = current.substring(0, index) + current.substring(index + className.length + 2, current.length);
return;
}
if (current.substring(0, className.length) == className + " ") {
element.className = current.substring(className.length + 1, current.length);
}
}
function TreeView_SelectNode(data, node, nodeId) {
if (data.selectedClass != null) {
var id = data.selectedNodeID.value;
if (id.length > 0) {
var selectedNode = document.getElementById(id);
if (selectedNode != null) {
var index = selectedNode.className.indexOf(data.selectedHyperLinkClass);
selectedNode.className = selectedNode.className.substring(0, index) + selectedNode.className.slice(index + data.selectedHyperLinkClass.length);
selectedNode = selectedNode.parentNode;
index = selectedNode.className.indexOf(data.selectedClass);
selectedNode.className = selectedNode.className.substring(0, index) + selectedNode.className.slice(index + data.selectedClass.length);
}
}
node.className = node.className + data.selectedHyperLinkClass;
node = node.parentNode;
node.className = node.className + data.selectedClass;
}
data.selectedNodeID.value = nodeId;
}
function TreeView_ToggleNode(data, index, node, lineType, children) {
var img = node.childNodes[0];
var newExpandState = "e";
if (children.style.display == "none") {
children.style.display = "block";
if (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 {
newExpandState = "c";
children.style.display = "none";
if (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));
}
}
data.expandState.value = data.expandState.value.substring(0, index) + newExpandState + data.expandState.value.slice(index + 1);
}
function TreeView_UnhoverNode(node) {
TreeView_RemoveClassName(node, node.hoverClass);
if (__nonMSDOMBrowser) {
node = node.childNodes[node.childNodes.length - 1];
}
else {
node = node.children[node.children.length - 1];
}
TreeView_RemoveClassName(node, node.hoverHyperLinkClass);
}
// 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.id) != "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 __callbackObject = new Object();
function WebForm_DoCallback(eventTarget, eventArgument, eventCallback, context, errorCallback, useAsync) {
var postData = __theFormPostData +
"__CALLBACKID=" + WebForm_EncodeCallback(eventTarget) +
"&__CALLBACKPARAM=" + WebForm_EncodeCallback(eventArgument);
var xmlRequest;
var usePost = false;
if (__nonMSDOMBrowser) {
// http:
// And: http:
xmlRequest = new XMLHttpRequest();
if (pageUrl.length + postData.length + 1 > 10000) {
usePost = true;
}
if (usePost) {
xmlRequest.open("POST", pageUrl, false);
xmlRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlRequest.send(postData);
}
else {
if (pageUrl.indexOf("?") != -1) {
xmlRequest.open("GET", pageUrl + "&" + postData, false);
}
else {
xmlRequest.open("GET", pageUrl + "?" + postData, false);
}
xmlRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlRequest.send(null);
}
var response = xmlRequest.responseText;
if (response.charAt(0) == "s") {
if ((typeof(eventCallback) != "undefined") && (eventCallback != null)) {
eventCallback(response.substring(1), context);
}
}
else {
if ((typeof(errorCallback) != "undefined") && (errorCallback != null)) {
errorCallback(response.substring(1), context);
}
}
}
else {
xmlRequest = new ActiveXObject("Microsoft.XMLHTTP");
xmlRequest.onreadystatechange = WebForm_CallbackComplete;
__callbackObject.xmlRequest = xmlRequest;
__callbackObject.eventCallback = eventCallback;
__callbackObject.context = context;
__callbackObject.errorCallback = errorCallback;
if (pageUrl.length + postData.length + 1 > 2067) {
usePost = true;
}
if (usePost) {
xmlRequest.open("POST", pageUrl, useAsync);
xmlRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlRequest.send(postData);
}
else {
if (pageUrl.indexOf("?") != -1) {
xmlRequest.open("GET", pageUrl + "&" + postData, useAsync);
}
else {
xmlRequest.open("GET", pageUrl + "?" + postData, useAsync);
}
xmlRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlRequest.send();
}
}
}
function WebForm_CallbackComplete() {
if (__callbackObject.xmlRequest.readyState == 4) {
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 ((typeof(__callbackObject.errorCallback) != "undefined") && (__callbackObject.errorCallback != null)) {
__callbackObject.errorCallback(response.substring(1), __callbackObject.context);
}
}
}
}
var __nonMSDOMBrowser = (window.navigator.appName.toLowerCase().indexOf('explorer') == -1);
var __theFormPostData = "";
function WebForm_InitCallback() {
var count = theForm.elements.length;
var element;
for (var i = 0; i < count; i++) {
element = theForm.elements[i];
var tagName = element.tagName.toLowerCase();
if (tagName == "input") {
var type = element.type;
if (type == "text" || type == "hidden" || type == "password" ||
((type == "checkbox" || type == "radio") && element.checked)) {
__theFormPostData += element.name + "=" + WebForm_EncodeCallback(element.value) + "&";
}
}
else if (tagName == "select") {
var selectCount = element.children.length;
for (var j = 0; j < selectCount; j++) {
var selectChild = element.children[j];
if ((selectChild.tagName.toLowerCase() == "option") && (selectChild.selected == true)) {
__theFormPostData += element.name + "=" + WebForm_EncodeCallback(selectChild.value) + "&";
}
}
}
else if (tagName == "textarea") {
__theFormPostData += element.name + "=" + WebForm_EncodeCallback(element.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;
}
}
var __defaultFired = false;
function WebForm_FireDefaultButton(event, target) {
if (!__defaultFired && event.keyCode == 13) {
var defaultButton;
if (__nonMSDOMBrowser) {
defaultButton = document.getElementById(target);
}
else {
defaultButton = document.all[target];
}
if (defaultButton.click != "undefined") {
__defaultFired = true;
defaultButton.click();
event.cancelBubble = true;
return false;
}
}
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(WebForm_ScrollPositionSubmit) != "undefined") && (WebForm_ScrollPositionSubmit != null)) {
if (WebForm_ScrollPositionSubmit.apply) {
return WebForm_ScrollPositionSubmit.apply(this);
}
else {
return WebForm_ScrollPositionSubmit();
}
}
return true;
}
function WebForm_SaveScrollPositionOnSubmit() {
theForm.__SCROLLPOSITIONX.value = WebForm_GetScrollX();
theForm.__SCROLLPOSITIONY.value = WebForm_GetScrollY();
if ((typeof(WebForm_ScrollPositionOnSubmit) != "undefined") && (WebForm_ScrollPositionOnSubmit != null)) {
if (WebForm_ScrollPositionOnSubmit.apply) {
return WebForm_ScrollPositionOnSubmit.apply(this);
}
else {
return WebForm_ScrollPositionOnSubmit();
}
}
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(WebForm_ScrollPositionLoad) != "undefined") && (WebForm_ScrollPositionLoad != null)) {
if (WebForm_ScrollPositionLoad.apply) {
return WebForm_ScrollPositionLoad.apply(this);
}
else {
return WebForm_ScrollPositionLoad();
}
}
return true;
}
function WebForm_TextBoxKeyHandler() {
if (event.keyCode == 13) {
if ((typeof(event.srcElement) != "undefined") && (event.srcElement != null)) {
if (typeof(event.srcElement.onchange) != "undefined") {
event.srcElement.onchange();
return false;
}
}
}
return true;
}
// WebParts.js
var __wpm = null;
function Point(x, y) {
this.x = x;
this.y = y;
}
function __wpTranslateOffset(x, y, offsetElement, relativeToElement, includeScroll) {
while (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 (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 = (webPartTitleElement != null) ? webPartTitleElement.innerText : "";
var location = __wpTranslateOffset(0, 0, webPartElement, null, false);
this.middleX = location.x + webPartElement.offsetWidth / 2;
this.middleY = location.y + webPartElement.offsetHeight / 2;
webPartElement.__webPart = this;
if (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);
}
}
function WebPart_OnMouseDown() {
var currentEvent = window.event;
var draggedWebPart = WebPart_GetParentWebPartElement(currentEvent.srcElement);
if (draggedWebPart == null) {
return;
}
document.selection.empty();
__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 (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 (elem.__webPart == null) {
elem = elem.parentElement;
if (elem == null) {
break;
}
}
return elem;
}
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;
var topLeft = __wpTranslateOffset(0, 0, webPartTable, null, false);
this.webPartTableLeft = topLeft.x;
this.webPartTableTop = topLeft.y;
this.webPartTableRight = topLeft.x + webPartTable.offsetWidth;
this.webPartTableBottom = topLeft.y + webPartTable.offsetHeight;
this.highlightColor = highlightColor;
this.savedBorderColor = webPartTable.style.borderColor;
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;
webPartTable.__zone = this;
webPartTable.attachEvent("ondragenter", Zone_OnDragEnter);
webPartTable.attachEvent("ondrop", Zone_OnDrop);
}
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 (elem.__zone == null) {
elem = elem.parentElement;
if (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 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 (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;
}
function WebPartMenu_Show() {
if (__wpm.menu != null) {
__wpm.menu.Hide();
}
var menuHTML =
"" +
this.menuElement.innerHTML +
"";
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 (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 (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 (menu != null) {
window.event.returnValue = false;
window.event.cancelBubble = true;
menu.Show();
}
}
}
function WebPartMenu_OnMouseEnter() {
var menu = window.event.srcElement.__menu;
if (menu != null) {
menu.Hover();
}
}
function WebPartMenu_OnMouseLeave() {
var menu = window.event.srcElement.__menu;
if (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;
}
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 (this.overlayContainerElement != null);
}
function WebPartManager_DragDrop() {
if (this.draggedWebPart != null) {
var tempWebPart = this.draggedWebPart;
this.draggedWebPart = null;
tempWebPart.dragDrop();
__wpClearSelection();
}
}
function WebPartManager_InitiateWebPartDragDrop(webPartElement) {
var webPart = webPartElement.__webPart;
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 (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 ((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 (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 (dragState != null) {
var currentEvent = window.event;
var newDropZoneElement = Zone_GetParentZoneElement(currentEvent.srcElement);
if ((newDropZoneElement.__zone == null) || (newDropZoneElement.__zone.allowDrop == false)) {
newDropZoneElement = null;
}
var newDropIndex = -1;
if (newDropZoneElement != null) {
newDropIndex = newDropZoneElement.__zone.GetWebPartIndex(__wpGetPageEventLocation(currentEvent, false));
if (newDropIndex == -1) {
newDropZoneElement = null;
}
}
if (dragState.dropZoneElement != newDropZoneElement) {
if (dragState.dropZoneElement != null) {
dragState.dropZoneElement.__zone.ToggleDropCues(false, dragState.dropIndex, false);
}
dragState.dropZoneElement = newDropZoneElement;
dragState.dropIndex = newDropIndex;
if (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 (newDropZoneElement != null) {
newDropZoneElement.__zone.ToggleDropCues(true, newDropIndex, false);
}
}
if (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 ((dragState != null) && (dragState.dropZoneElement != null)) {
var dropZoneElement = Zone_GetParentZoneElement(currentEvent.srcElement);
if ((dropZoneElement != null) && (dropZoneElement.__zone.allowDrop == false)) {
dropZoneElement = null;
}
if ((dropZoneElement == null) && (dragState.dropZoneElement != null)) {
dragState.dropZoneElement.__zone.ToggleDropCues(false, __wpm.dragState.dropIndex, false);
dragState.dropZoneElement = null;
dragState.dropIndex = -1;
}
else if (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 || 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 (dropZoneElement != null) {
dropZoneElement.__zone.ToggleDropCues(true, newDropIndex, false);
}
}
handled = true;
}
if ((dragState == null) || (dragState.dropZoneElement == null)) {
currentEvent.dataTransfer.effectAllowed = "none";
}
return handled;
}
function WebPartManager_ProcessWebPartDrop() {
var dragState = this.dragState;
if (dragState != null) {
var currentEvent = window.event;
var dropZoneElement = Zone_GetParentZoneElement(currentEvent.srcElement);
if ((dropZoneElement != null) && (dropZoneElement.__zone.allowDrop == false)) {
dropZoneElement = null;
}
if ((dropZoneElement != null) && (dragState.dropZoneElement == dropZoneElement)) {
dragState.dropped = true;
}
return true;
}
return false;
}
function WebPartManager_ShowHelp(helpUrl, helpMode) {
if (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_SubmitPage(eventTarget, eventArgument) {
if (this.menu != null) {
this.menu.Hide();
}
__doPostBack(eventTarget, eventArgument);
}
// WebUIValidation.js
var Page_ValidationVer = "125";
var Page_IsValid = true;
var Page_BlockSubmit = false;
var Page_InvalidControlToBeFocused = null;
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 (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 (ctrl != null) {
ValidatorHookupControl(ctrl, val);
}
else {
val.isvalid = true;
val.enabled = false;
}
}
function ValidatorHookupControl(control, val) {
if (control.tagName != "INPUT" && control.tagName != "TEXTAREA" && control.tagName != "SELECT") {
var i;
for (i = 0; i < control.children.length; i++) {
ValidatorHookupControl(control.children[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 (val.focusOnError == "t") {
ValidatorHookupEvent(control, "onblur", "ValidatedControlOnBlur(event); ");
}
}
ValidatorHookupEvent(control, eventType, "ValidatorOnChange(event); ");
if (control.type == "text" ||
control.type == "password" ||
control.type == "file") {
ValidatorHookupEvent(control, "onkeypress", "if (!ValidatedTextBoxOnKeyPress(event)) return false; ");
}
}
control.Validators[control.Validators.length] = val;
}
}
function ValidatorHookupEvent(control, eventType, functionPrefix) {
var ev;
eval("ev = control." + eventType + ";");
if (typeof(ev) == "function") {
ev = ev.toString();
ev = ev.substring(ev.indexOf("{") + 1, ev.lastIndexOf("}"));
}
else {
ev = "";
}
var func;
if (navigator.appName.toLowerCase().indexOf('explorer') > -1) {
func = new Function(functionPrefix + " " + ev);
}
else {
func = new Function("event", functionPrefix + " " + ev);
}
eval("control." + eventType + " = func;");
}
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.status == true)) {
return control.value;
}
var i, val;
for (i = 0; i0 ? 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 && (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})\\2((\\d{4})|(\\d{2}))\\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 = (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 (null == document.getElementById(val.controltocompare)) {
if (typeof(val.valuetocompare) == "string") {
compareTo = val.valuetocompare;
}
}
else {
compareTo = ValidatorGetValue(val.controltocompare);
}
return ValidatorCompare(value, compareTo, val.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;
for (sums = 0; sums < Page_ValidationSummaries.length; sums++) {
summary = Page_ValidationSummaries[sums];
summary.style.display = "none";
if (!Page_IsValid && IsValidationGroupMatch(summary, validationGroup)) {
var i;
if (summary.showsummary != "False") {
summary.style.display = "";
if (typeof(summary.displaymode) != "string") {
summary.displaymode = "BulletList";
}
switch (summary.displaymode) {
case "List":
headerSep = "
";
first = "";
pre = "";
post = "
";
end = "";
break;
case "BulletList":
default:
headerSep = "";
first = "";
pre = "- ";
post = "
";
end = "
";
break;
case "SingleParagraph":
headerSep = " ";
first = "";
pre = "";
post = " ";
end = "
";
break;
}
s = "";
if (typeof(summary.headertext) == "string") {
s += summary.headertext + headerSep;
}
s += first;
for (i=0; i