summaryrefslogtreecommitdiffstats
path: root/samples/TestAzureAD/Scripts/WebForms/Menu.js
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2013-05-05 16:18:01 -0700
committerAndrew Arnott <andrewarnott@gmail.com>2013-05-05 16:18:01 -0700
commit03abe2a0b4057598bee897e3e42babedc99be5ff (patch)
treee3f2a37b0215ad98075c112835d0f95182863704 /samples/TestAzureAD/Scripts/WebForms/Menu.js
parent49d654965b6cf0ee6aa171dec50b1d0b8fb86e0c (diff)
downloadDotNetOpenAuth-03abe2a0b4057598bee897e3e42babedc99be5ff.zip
DotNetOpenAuth-03abe2a0b4057598bee897e3e42babedc99be5ff.tar.gz
DotNetOpenAuth-03abe2a0b4057598bee897e3e42babedc99be5ff.tar.bz2
Removes samples\TestAzureAD
it has a build break, and I'm not sure it was ever meant to be checked in.
Diffstat (limited to 'samples/TestAzureAD/Scripts/WebForms/Menu.js')
-rw-r--r--samples/TestAzureAD/Scripts/WebForms/Menu.js898
1 files changed, 0 insertions, 898 deletions
diff --git a/samples/TestAzureAD/Scripts/WebForms/Menu.js b/samples/TestAzureAD/Scripts/WebForms/Menu.js
deleted file mode 100644
index 27a78fa..0000000
--- a/samples/TestAzureAD/Scripts/WebForms/Menu.js
+++ /dev/null
@@ -1,898 +0,0 @@
-//CdnPath=http://ajax.aspnetcdn.com/ajax/4.5/6/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 (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 = 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);
- }
-}