home *** CD-ROM | disk | FTP | other *** search
- // DropDown.js
- // alle Java Scripte f∩┐╜ DropDown Funktionalitπ▓_
-
- function zeigeInFormularHilfe(str) {
- if (str != "") {
- var txt = parent.FormularHilfeFrame.document.body.createTextRange();
- var found = txt.findText(str);
- if (found) {
- txt.moveStart("character", -1);
- txt.findText(str);
- txt.select();
- txt.scrollIntoView();
- }
- }
- }
-
- function DoFunktion(Element, Funktion)
- {
- alert("Element: " + Element + " Funktion: " + Funktion);
- }
-
-
- function WriteNodeText(node,Text)
- {
- // alert("WriteNodeText");
- node.text = Text;
- }
-
- function WriteNodeValue(node,Value)
- {
- // alert("WriteNodeValue");
- node.nodeTypedValue = Value;
- }
-
- function GetNodeAttribute(node,Typ)
- {
- Text = "";
- var attr=node.attributes;
- var item=attr.getNamedItem(Typ);
- if ( item != null )
- Text = item.text;
-
- return ( Text );
- }
-
- function WriteNodeAttribute(node,Typ,AttrText)
- {
- var TmpNode;
- var source = document.XMLDocument;
-
- TmpNode=source.createAttribute(Typ);
- attr=node.attributes.setNamedItem(TmpNode);
- attr.text=AttrText;
- }
-
-
- function OpenDropDown(Name)
- {
- // zunΣchst mal alle zumachen -> bis wir die Scrollbar haben sollten wir dies so tun
- CloseAllDropDowns( Name );
-
- if ( IsDropDownOpen(Name) == false )
- DropDown(Name);
- }
-
- function IsDropDownOpen(Name)
- {
- var source = document.XMLDocument;
-
- startnode = source.selectSingleNode("//DEFINITION/NAME");
-
- // suche die Node mit dem Name
- FindNode = SucheNode(startnode,"//NAME",Name);
-
- if ( FindNode != null )
- {
- // in dem nπó¿sten Sibling steht der Name
- SHOWNode = FindNode.nextSibling;
-
- if(SHOWNode.nodeTypedValue==1)
- return( true );
- }
-
- return ( false );
- }
-
- function SucheNode(startnode,typ,name)
- {
- if (startnode!=null)
- {
- var nodes=startnode.selectNodes(typ);
- for (var n=0;n<nodes.length;n++)
- {
- var node=nodes.item(n);
- if (node.text == name)
- return(node);
- }
- }
- return(null);
- }
-
- function SucheDropDownTyp(startnode,typ)
- {
- if (startnode!=null)
- {
- var nodes=startnode.selectNodes("//DROPDOWN");
- for (var n=0;n<nodes.length;n++)
- {
- var node=nodes.item(n);
- strTypDD = GetNodeAttribute(node,"TYPE");
- if ( strTypDD == typ )
- return(node);
- }
- }
- return(null);
- }
-
-
- function UpdateDropDown(NodeName, Text)
- {
- var stylesheet = document.XSLDocument;
- var source = document.XMLDocument;
- var startnode=source.selectSingleNode("//DROPDOWN_LIST");
-
- // suche die Node mit dem Name
- FindNode = SucheNode(startnode,"//ID",NodeName);
-
- if ( FindNode != null )
- {
- // in dem nπó¿sten Sibling steht der Name
- WriteNodeText(FindNode.nextSibling,Text);
-
- // Bildschirm neu aufbauen f� ID="listing"
- listing.innerHTML = source.documentElement.transformNode(stylesheet);
- InvokeDocumentComplete();
- }
- }
-
- // gleiche Fkt. wie UpdateDropDown nur wird kein Refresh gemacht, d.h. die Daten nicht aktualisiert!
- function SetData(NodeName, Text)
- {
- var source = document.XMLDocument;
- var startnode=source.selectSingleNode("//DROPDOWN_LIST");
-
- // suche die Node mit dem Name
- FindNode = SucheNode(startnode,"//ID",NodeName);
-
- if ( FindNode != null )
- {
- // in dem nπó¿sten Sibling steht der Name
- WriteNodeText(FindNode.nextSibling,Text);
- }
- }
-
-
- // gleiche Fkt. wie UpdateDropDown nur wird kein Refresh gemacht, d.h. die Daten nicht aktualisiert!
- function RefreshBildschirm()
- {
- var stylesheet = document.XSLDocument;
- var source = document.XMLDocument;
-
-
- listing.innerHTML = source.documentElement.transformNode(stylesheet);
- InvokeDocumentComplete();
- }
-
-
- function TransformXml(File)
- {
- var stylesheet = document.XSLDocument;
- var source = document.XMLDocument;
-
- source.load(File);
-
- node = source.selectSingleNode("//DEFINITION/NAME");
- // alert( node.text + " wird geladen mit: " + File );
-
- // Bildschirm neu aufbauen f� ID="listing"
- listing.innerHTML = source.documentElement.transformNode(stylesheet);
- InvokeDocumentComplete();
- }
-
- function DropDown(Name)
- {
- ToggleByName( Name );
- }
-
- function CloseAllDropDowns( BisAuf )
- {
- startnode = source.selectSingleNode("//DEFINITION/NAME");
- if (startnode == null )
- return;
-
- var nodes=startnode.selectNodes("//NAME");
- for (var n=0;n<nodes.length;n++)
- {
- var node=nodes.item(n);
-
- Parent = node.parentNode;
-
- if (node.text != BisAuf )
- WriteNodeAttribute(Parent,"OPEN","NEIN");
- else
- WriteNodeAttribute(Parent,"OPEN","JA");
- }
-
- // Bildschirm neu aufbauen f� ID="listing" sprich f� ganze TOPICLIST
- listing.innerHTML = source.documentElement.transformNode(stylesheet);
- InvokeDocumentComplete();
- }
-
- function ChangeValue( DDNode , attributeName )
- {
- strValue = "";
-
- strAttr = GetNodeAttribute(DDNode , attributeName);
- switch( strAttr )
- {
- case "":
- strValue = "JA";
- break;
- case "NEIN":
- strValue = "JA";
- break;
- case "JA":
- strValue = "NEIN";
- break;
- }
-
-
- WriteNodeAttribute(DDNode, attributeName ,strValue);
-
- // Bildschirm neu aufbauen f� ID="listing" sprich f� ganze TOPICLIST
- listing.innerHTML = source.documentElement.transformNode(stylesheet);
- InvokeDocumentComplete();
-
- return( strValue );
- }
-
- function ToggleByTypeAndCallProg(Type)
- {
- // auf und zumachen des DropDowns!
- strOpen = ToggleByType(Type);
-
- // jetzt noch die Applikation informieren
- InfoToggleDropDown( Type, strOpen );
- }
-
- function ToggleByNameAndCallProg(Name,Type)
- {
- // auf und zumachen des DropDowns!
- strOpen = ToggleByName(Name);
-
- // jetzt noch die Applikation informieren
- InfoToggleDropDown( Type, strOpen );
- }
-
- function ToggleByName(Name)
- {
- startnode = source.selectSingleNode("//START");
-
- // suche die Node mit dem Name
- FindNode = SucheNode(startnode,"//NAME",Name);
- if ( FindNode == null )
- return;
-
- // in dem Parent steht das DropDown
- DDNode = FindNode.parentNode;
-
- return ( ChangeValue( DDNode , "OPEN" ) );
- }
-
- function ToggleById(Id)
- {
- startnode = source.selectSingleNode("//START");
-
- // suche die Node mit dem Name
- FindNode = SucheNode(startnode,"//ID",Id);
- if ( FindNode == null )
- return;
-
- // in dem Parent steht das DropDown
- DDNode = FindNode.parentNode;
-
- return ( ChangeValue( DDNode, "OPEN" ) );
- }
-
- function ToggleFAQShowAll()
- {
- try
- {
- startnode = source.selectSingleNode("//START");
- // suche DropDown node mit Typ FAQ (Es gibt davon genau einen!)
- DDNode = SucheDropDownTyp(startnode,"FAQ");
- // Σndere den Wert des Attributs ShowAll
- neuerWert = ChangeValue( DDNode, "SHOWALL" );
- // jetzt noch die Applikation informieren
- InfoToggleFAQShowAll( neuerWert );
- }
- catch (exception)
- {
- alert("Fehler in Funktion 'ToggleFAQShowAll':\n" + exception.message);
- }
- }
-
- function ToggleByType(Typ)
- {
- startnode = source.selectSingleNode("//START");
-
- // suche die Node mit dem Name
- DDNode = SucheDropDownTyp(startnode,Typ);
- if ( DDNode == null )
- return;
-
- return( ChangeValue( DDNode, "OPEN" ) );
- }
-
- function ActivateDropDown(Name)
- {
- var bGefunden = 0;
-
- var stylesheet = document.XSLDocument;
- var source = document.XMLDocument;
-
- startnode = source.selectSingleNode("//DEFINITION/NAME");
-
- // suche die Node mit dem Name
- FindNode = SucheNode(startnode,"//NAME",Name);
-
- if ( FindNode != null )
- {
- // den Parent updaten
- Parent = FindNode.parentNode;
- WriteNodeAttribute(Parent,"AKTIV","JA")
- }
- DropDown(Name);
- }
-
- function DeActivateDropDown(Name)
- {
- var bGefunden = 0;
-
- var stylesheet = document.XSLDocument;
- var source = document.XMLDocument;
-
- startnode = source.selectSingleNode("//DEFINITION/NAME");
-
- // suche die Node mit dem Name
- FindNode = SucheNode(startnode,"//NAME",Name);
-
- if ( FindNode != null )
- {
- // in dem nπó¿sten Sibling steht der Name
- Parent = FindNode.parentNode;
- WriteNodeAttribute(Parent,"AKTIV","NEIN")
- }
-
- DropDown(Name);
- }
-
- function InsertAt(id, Zeile)
- {
- var stylesheet = document.XSLDocument;
- var source = document.XMLDocument;
-
- startnode = source.selectSingleNode("//DROPDOWN_LIST");
- FindNode = SucheNode(startnode,"//ID",id);
- if ( FindNode == null )
- return;
-
- var oInsertAfter = FindNode.parentNode.parentNode;
- for(var i=0;i<Zeile.length; i++)
- {
- var node=source.createElement("ITEM");
- var item = oInsertAfter.appendChild(node);
- WriteNodeAttribute(item,"TYP","TEXT_KLEIN")
-
- node=source.createElement("NAME");
- var item = item.appendChild(node);
- item.text = Zeile[i];
- }
-
- // alert( source.xml );
-
- // Bildschirm neu aufbauen f� ID="listing" sprich f� ganze TOPICLIST
- listing.innerHTML = source.documentElement.transformNode(stylesheet);
- InvokeDocumentComplete();
- }
-
- function ReplaceAt(id, Zeile)
- {
- var stylesheet = document.XSLDocument;
- var source = document.XMLDocument;
-
- startnode = source.selectSingleNode("//DROPDOWN_LIST");
- FindNode = SucheNode(startnode,"//ID",id);
- if ( FindNode == null )
- return;
-
- // wir l÷schen alle Nodes ab der id
- var node = FindNode.parentNode.parentNode;
- var oInsertAfter = FindNode.parentNode.parentNode;
- remove = 0;
- for ( i=0; i<node.childNodes.length; i++)
- {
- var n=node.childNodes.item(i);
- if ( remove == true )
- node.removeChild( n );
-
- // wir prⁿfen ob wir schon bei der entsprechenden ID sind. Denn erst ab da, darf gel÷scht werden!
- if( n.hasChildNodes() == true )
- {
- for ( var f=0; f<n.childNodes.length; f++)
- {
- var c=n.childNodes.item(f);
- if ( c.baseName == "ID" )
- if ( c.text == id )
- remove = true;
- }
- }
- }
-
- //alert(source.xml);
-
- //alert( oInsertAfter.baseName + ": " + oInsertAfter.text);
-
- for(var i=0;i<Zeile.length; i++)
- {
- var node=source.createElement("ITEM");
- var item = oInsertAfter.appendChild(node);
- WriteNodeAttribute(item,"TYP","TEXT_KLEIN")
-
- node=source.createElement("NAME");
- var item = item.appendChild(node);
- item.text = Zeile[i];
- }
-
- //alert(source.xml);
-
- // Bildschirm neu aufbauen f� ID="listing" sprich f� ganze TOPICLIST
- listing.innerHTML = source.documentElement.transformNode(stylesheet);
- InvokeDocumentComplete();
- }
-
- function InvokeDocumentComplete()
- {
- listing.fireEvent("onclick");
- }