/* Copyright © Fabasoft R&D Software GmbH & Co KG, A-4020 Linz, 1995-2006. */
var g_isver=0
var g_agent=navigator.userAgent.toLowerCase()
var g_ismoz=g_agent.indexOf("mozilla/5.")>=0
var g_ismoz10=g_ismoz && g_agent.indexOf("firefox/1.0")>=0
var g_isopera=g_agent.indexOf("opera")>=0
var g_iskonqu=g_agent.indexOf("konqueror")>=0
var g_ismac=g_agent.indexOf("macintosh")>=0
var g_islinux=g_agent.indexOf("linux")>=0
var g_isns=navigator.appName=="Netscape" && (g_isver=parseInt(navigator.appVersion))>=4 && g_agent.indexOf("gecko")==-1
var g_isie50=g_agent.indexOf("msie 5.0")>=0 && !g_isopera
var g_isie7=g_agent.indexOf("msie 7")>=0
var g_isieUP=(g_agent.indexOf("msie 5.5")>=0 || g_agent.indexOf("msie 6")>=0 || g_isie7) && !g_isopera
var g_isie6P=g_agent.indexOf("msie 6")>=0 && !g_isopera
var g_isie=g_isie50 || g_isieUP
var g_ismb=g_isie || g_ismoz
var g_moz_plugininstalled
var g_moz_stubinstance=null
var g_toptag
var g_hourglassdelay
var g_focusfieldid=null
var g_mozdragsrc=""
var URL_SELECTION_LIMIT=50
var IMPORT_LIMIT=8192000
window.portable = { }
window.portable.nsPrefix = ""
window.portable.browser = { }
window.portable.browser.ie = (navigator.userAgent.toLowerCase().indexOf("msie") > -1)
&& document.all && window.ActiveXObject
if(g_isie){
window.portable.AxID = new Array()
window.portable.AxID.XMLHttpRequest = [
0,
"Msxml2.XMLHTTP.5.0",
"Msxml2.XMLHTTP.4.0",
"MSXML2.XMLHTTP.3.0",
"MSXML2.XMLHTTP",
"Microsoft.XMLHTTP"
]
window.portable.AxID.XSLTProcessor = [
0,
"Msxml2.XSLTemplate.5.0",
"Msxml2.XSLTemplate.4.0",
"MSXML2.XSLTemplate.3.0"
]
window.portable.AxID.DomDocument = [
0,
"Msxml2.DOMDocument.5.0",
"Msxml2.DOMDocument.4.0",
"Msxml2.DOMDocument.3.0",
"MSXML2.DOMDocument",
"MSXML.DOMDocument",
"Microsoft.XMLDOM"
]
window.portable.AxID.ThreadedDOMDocument = [
0,
"Msxml2.FreeThreadedDOMDocument.5.0",
"MSXML2.FreeThreadedDOMDocument.4.0",
"MSXML2.FreeThreadedDOMDocument.3.0"
]
for(var axidx in window.portable.AxID){
for(var i = 1; i < window.portable.AxID[axidx].length; i++){
try{
var ax_obj = new ActiveXObject(window.portable.AxID[axidx][i])
window.portable.AxID[axidx][0] = i
ax_obj = null
break}
catch(e){}}}
function createActivexObject(name){
try{
if(window.portable.AxID[name][0] != 0){
return new ActiveXObject(window.portable.AxID[name][window.portable.AxID[name][0]])}}
catch(e){}
return null}
if(!g_isie7){
function XMLHttpRequest(){
return createActivexObject("XMLHttpRequest")}}
function XSLTProcessor(){
this.template = createActivexObject("XSLTProcessor")
this.processor = null}
XSLTProcessor.prototype.importStylesheet = function(xslDoc){
var converted = createActivexObject("ThreadedDOMDocument")
converted.loadXML(xslDoc.xml)
this.template.stylesheet = converted
this.processor = this.template.createProcessor()
this.paramsSet = new Array()}
XSLTProcessor.prototype.transformToString = function(sourceDoc, ownerDoc){
this.processor.input = sourceDoc
this.processor.transform()
return this.processor.output}
XSLTProcessor.prototype.transformToDocument = function(sourceDoc){
var outDoc = createActivexObject("DomDocument")
this.processor.input = sourceDoc
this.processor.output = outDoc
this.processor.transform()
return outDoc}
XSLTProcessor.prototype.transformToFragment = function(sourceDoc, ownerDoc){
return this.transformToDocument(sourceDoc)}
XSLTProcessor.prototype.setParameter = function(nsURI, name, value){
if(nsURI){
this.processor.addParameter(name, value, nsURI)}
else{
this.processor.addParameter(name, value)}
if(!this.paramsSet["" + nsURI]){
this.paramsSet["" + nsURI] = new Array()}
this.paramsSet["" + nsURI][name] = value}
portable.createDOMDocument = function(){
return new createActivexObject("DomDocument")}
portable.createElementNS = function(doc, name, nsuri){
return doc.createNode(1, name, nsuri)}}
else if(g_ismoz){
function _Node_serializeToString(){
var serializer = new XMLSerializer
return serializer.serializeToString(this)}
Node.prototype.__defineGetter__("xml", _Node_serializeToString)
Document.prototype.loadXML = function(str){
var parser = new DOMParser()
var doc = parser.parseFromString(str, "text/xml")
while(this.hasChildNodes()){
this.removeChild(this.lastChild)}
for(var i = 0; i < doc.childNodes.length; i++){
var importednode = this.importNode(doc.childNodes[i], true)
this.appendChild(importednode)}}
portable.createDOMDocument = function(){
return document.implementation.createDocument("","", null)}
portable.createElementNS = function(doc, name, nsuri){
return doc.createElementNS(nsuri, name)}
XSLTProcessor.prototype.transformToString = function(sourceDoc, ownerDoc){
var fragment = this.transformToFragment(sourceDoc, ownerDoc)
var serializer = new XMLSerializer
return serializer.serializeToString(fragment)}}
function DOMObject(domobj){
this.m_domobj = domobj ? domobj : null
this.get = function _get(){
return this.m_domobj}
this.getfirstChild = function _getfirstChild(){
try{
var node = this.m_domobj.firstChild
while(node && node.nodeName=="#text"){
node = node.nextSibling}
return node ? new DOMObject(node) : null}
catch(e){}
return null}
this.getlastChild = function _getlastChild(){
try{
var node = this.m_domobj.lastChild
while(node && node.nodeName=="#text"){
node = node.previousSibling}
return node ? new DOMObject(node) : null}
catch(e){}
return null}
this.getnextSibling = function _getnextSibling(){
try{
var node = this.m_domobj.nextSibling
while(node && node.nodeName=="#text"){
node = node.nextSibling}
return node ? new DOMObject(node) : null}
catch(e){}
return null}
this.getpreviousSibling = function _getpreviousSibling(){
try{
var node = this.m_domobj.previousSibling
while(node && node.nodeName=="#text"){
node = node.previousSibling}
return node ? new DOMObject(node) : null}
catch(e){}
return null}
this.getText = function _getText(){
try{
return g_isie ? this.m_domobj.text : this.m_domobj.textContent}
catch(e){
return ""}}}