/*CVS Add-ins*/
/*
$Revision: 1.4 $
$RCSfile: behaviour.js,v $
author: JDE
Copyright (c) A&B FACE2NET GmbH
*/

/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/*
    behaviour.js fuer ESF
    04.02.2008 JDE
*/
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */

/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* general methods*/
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
var agt = navigator.userAgent.toLowerCase();
var ie  = (agt.indexOf("msie") != -1);
var ff  = (agt.indexOf("firefox") != -1);
var op = (agt.indexOf("opera") != -1);
var sf    = ((agt.indexOf('applewebkit') != -1) || (navigator.vendor == "Apple Computer, Inc."));


/**
* executes functions when the page loads.
* @param func_name name of function
*/
function addLoadEvent(func_name) {
  var lastonload = window.onload;

  if (typeof window.onload != 'function') {
    window.onload = func_name;
  } else {
    window.onload = function() {
      lastonload(); func_name();
    }
  }
}

function check(){
  alert("JS eingebunden");
}

/**
* preloading background images
*/

var a = new Array(
    "bg_back.gif", "bg_body.gif", "bg_dot.gif", "bg_header.gif",
    "bg_navMain.gif", "bg_navMain_li.gif", "bg_navMain_ul.gif", "bg_navService_a.gif",
    "bg_pfeil.gif", "bg_pfeil_grau.gif", "bg_pfeilhell.gif", "bg_pfeilhellhell.gif",
    "bg_zitatend.gif", "bg_zitatstart.gif");

var b = new Array();

var i;

for (i = 0; i < a.length; i++) {
  b[i] = new Image();
  b[i].src = '/portal/static/bas08004/css/style_images/' + a[i];
}

/**
* diverse functions for setting special attributes to a node.
* @param elem name of node
* @param attr kind of attribute
* @param value attribute value
*/
function set_attr(elem, attr, value) {      var myNode = elem; myNode.setAttribute(attr, value ); }
function set_href(elem, url) {          var myNode = elem; myNode.setAttribute("href",url );  }
function set_title(elem, title) {       var myNode = elem; myNode.setAttribute("title", title ); }
function set_width(elem, width) {       var myNode = elem; myNode.setAttribute("width", width ); }
function set_height(elem, height) {       var myNode = elem; myNode.setAttribute("height", height ); }

/**
* sets a textnode to a parent node.
* @param par name of parent
* @param text value of title
*/
function set_textNode(par, text) {
  if (!document.createTextNode) {
    return false;
  }

  var myNode = par;

  myNode = document.createTextNode(text);

  return true;
}

/**
* creates a link with title, url, id and onclick event.
* @param txt link text
* @param ltitle link title
* @param url  link destination
* @param id  value of link id
* @param onclick  value of onclick-attribute
* @return link element (a);
*/
function create_link(ltitle, url, id, onclick ) {
  var myNode = document.createElement("a");

  set_title(myNode, ltitle);
  set_href(myNode, url) ;
  set_attr(myNode, "id", id) ;
  set_attr(myNode, "onclick", onclick);

  return myNode;
}

/**
* creates a seperator for links.
*/
function create_separator(sclass, elem, stxt) {
  var myNode = document.createElement(elem);
  var myNode_text = document.createTextNode(stxt);

  set_attr(myNode, "class" ,sclass);

  myNode.appendChild(myNode_text);

  return myNode;
}

/**
* writes a printlink into the document.
*/
function create_printLink() {
  if (!document.getElementById || !document.createElement || !document.createTextNode) {
    return false;
  }

  if (document.getElementById("print_de") || document.getElementById("print_en")) {
    var separator = create_separator("displayOutside", "span", " | ")

    var container;
    var printlink;
    var printtext;

    if (document.getElementById("print_de")) {
      printlink = create_link("Diese Seite drucken", "javascript:window.print();", "printlink", "window.print(); return false;");
      printtext = document.createTextNode("drucken");

      container = document.getElementById("print_de");
    } else if (document.getElementById("print_en")) {
      printlink = create_link("Print this page", "javascript:window.print();", "printlink", "window.print(); return false;");
      printtext = document.createTextNode("print");

      container = document.getElementById("print_en");
    }

    printlink.appendChild(printtext);
    container.appendChild(printlink);
    container.insertBefore(separator, printlink);

    return true;
  } else {
    return false;
  }
}

addLoadEvent(create_printLink);
