From: Argiris K. <be...@us...> - 2005-11-11 06:17:59
|
Update of /cvsroot/magicajax/magicajax/CustomControls/script In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6302/CustomControls/script Added Files: AjaxLinkedPanelListScripts.js Log Message: Put source files to module 'magicajax' divided in directories Core, Examples, and CustomControls. --- NEW FILE: AjaxLinkedPanelListScripts.js --- var prev_AJAXCbo_Complete = AJAXCbo.OnComplete; var prev_AJAXCbo_Error = AJAXCbo.OnError; AJAXCbo.OnComplete = AjaxLinkedPanelList_AJAXCbo_Complete; AJAXCbo.OnError = AjaxLinkedPanelList_AJAXCbo_Error; function AjaxLinkedPanelList_AJAXCbo_Complete(responseText, responseXML) { var result = prev_AJAXCbo_Complete(responseText, responseXML); if (result == false) return false; RemoveLoadingImages(); var selval = document.all.AJAXLINKEDPANELLIST_SELECTION.value; if (selval != "") { var selections = selval.split(";"); for (var i=0; i < selections.length; i++) { var panel = document.getElementById(selections[i]); if (panel != null) { // Xreiazetai giati an mia epilogi ginei abort meta den te8ei to loaded apo ton server panel.setAttribute("loadedstatus", "loaded"); HighlightLinkOfPanel(panel); } } } return true; } function AjaxLinkedPanelList_AJAXCbo_Error(status, statusText, responseText) { RemoveLoadingImages(); prev_AJAXCbo_Error(status, statusText, responseText); } function AjaxLinkedPanelList_Link_Click(linkTarget) { RemoveLoadingImages(); var link = document.getElementById(linkTarget.split(":").join("_")); var panel = document.getElementById(link.getAttribute("panelid")); var loadstatus = panel.getAttribute("loadedstatus"); if (loadstatus != "loaded") { ShowPanelLoadingImage(panel); ShowSelectedPanel(panel); AJAXCbo.DoCallBack(linkTarget, "", "async"); } else { if (panel.style.display == "") { // Einai idi epilegmeno, kripsto panel.style.display = "none"; var parent = panel.getAttribute("parent"); var store = document.getElementById(parent + "$ajaxstore"); var linkClass = store.getAttribute("linkClass"); document.getElementById(panel.getAttribute("linkid")).className = linkClass; } else { ShowSelectedPanel(panel); } } } function ShowSelectedPanel(panel) { var parent = panel.getAttribute("parent"); var store = document.getElementById(parent + "$ajaxstore"); var linkClass = store.getAttribute("linkClass"); var tags = document.getElementsByTagName(panel.tagName); var panels = new Array(); for (var i=0; i < tags.length; i++) if (tags[i].getAttribute("name") == "LPL_AjaxPanel") panels.push(tags[i]); for (var i=0; i < panels.length; i++) if (panels[i].getAttribute("parent") == parent) { panels[i].style.display = "none"; document.getElementById(panels[i].getAttribute("linkid")).className = linkClass; } panel.style.display = ""; HighlightLinkOfPanel(panel); var selections = ""; for (var i=0; i < panels.length; i++) if (panels[i].getAttribute("loadedstatus") == "loaded" && panels[i].style.display == "") { selections += panels[i].id + ";"; } selections += panel.id; document.all.AJAXLINKEDPANELLIST_SELECTION.value = selections; } function HighlightLinkOfPanel(panel) { var parent = panel.getAttribute("parent"); var store = document.getElementById(parent + "$ajaxstore"); var selectedLinkClass = store.getAttribute("selectedLinkClass"); if (selectedLinkClass != "") document.getElementById(panel.getAttribute("linkid")).className = selectedLinkClass; } function ShowPanelLoadingImage(panel) { var store = document.getElementById(panel.getAttribute("parent") + "$ajaxstore"); var imgsrc = store.getAttribute("loadingimg"); if (imgsrc != "") panel.innerHTML = "<img src='" + imgsrc + "' name='AJAX_LOADING_IMAGE'>"; } function RemoveLoadingImages() { for (var i=0; i < document.images.length; i++) { if (document.images[i].name == "AJAX_LOADING_IMAGE") { document.images[i].parentNode.removeChild(document.images[i]); i--; } } } |