function getCookie(Name) {
  var search = Name + "="
  var returnvalue = "";
  if (document.cookie.length > 0) {
    offset = document.cookie.indexOf(search)
    // if cookie exists
    if (offset != -1) {
      offset += search.length
      // set index of beginning of value
      end = document.cookie.indexOf(";", offset);
      // set index of end of cookie value
      if (end == -1) end = document.cookie.length;
      returnvalue=unescape(document.cookie.substring(offset, end))
      }
   }
  return returnvalue;
}

function swapText(org, text1, text2)
{
        var result = text1;
        if (org==text1) result = text2;
        return result;
}

function yPos(what){
    var picY = getY(document.images[what]);
    return picY;
}

function xPos(what){
    var picX = getX(document.images[what]);
    return picX;
}

function getY(obj) {
    if (obj == document.body) {
        return obj.offsetTop
    }
    else {
        return obj.offsetTop + getY(obj.offsetParent);
    }
}
function getX(obj) {
    if (obj == document.body) {
        return obj.offsetLeft
    }
    else {
        return obj.offsetLeft + getX(obj.offsetParent);
    }
}

ns4 = (document.layers)? true:false
ie4 = (document.all && !document.getElementById)? true:false
ie5 =(document.getElementById)? true:false
ns6 = (document.getElementById && !document.all)?true:false;
clicked = false;

function ud(id){
var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
styleObj.visibility = "hidden";
}

function ConfirmDeleteBesked(url) {
        if (confirm('Er du sikker på at du \nvil slette denne besked')) {
                location.href=url
        }
}

function ConfirmVote(url,value) {
        if (confirm('Vil du stemme '+value)) {
                location.href=url
        }
}

function ConfirmThis(url,msg) {
        if (confirm(msg)) {
                document.location.href=url
        }
}

function jumppage(sel) {
  var i = sel.selectedIndex
  if (i!=0) { top.location.href = sel.options[i].value }
}

self.name =  'TbMain';







var dom = document.getElementById;
var iex = document.all;
var ns4 = document.layers;

function addEvent(event,method){
        this[event] = method;
        if(ns4) this.captureEvents(Event[event.substr(2,event.length).toUpperCase()]);
}
function removeEvent(event){
        this[event] = null;
        if(ns4) this.releaseEvents(Event[event.substr(2,event.length).toUpperCase()]);
}

function getElement2(name){
        var el = dom ? document.getElementById(name) : iex ? document.all[name] : ns4 ? eval(nest+"document."+name) : false;
        el.css = ns4 ? el : el.style;
        return el;
}

function getElement(name,nest){
        nest = nest ? "document."+nest+"." : "";
        var el = dom ? document.getElementById(name) : iex ? document.all[name] : ns4 ? eval(nest+"document."+name) : false;
        el.css = ns4 ? el : el.style;
        el.hideVis = function(){el.css.visibility="hidden"};
        el.showVis = function(){el.css.visibility="visible"};
        el.getTop = function(){return parseInt(el.css.top) || 0};
        el.setTop = function(y){el.css.top = ns4 ? y: y+"px"};
        el.getHeight = function(){return ns4 ? el.document.height : el.offsetHeight};
        el.getClipHeight = function(){return ns4 ? el.clip.height : el.offsetHeight};
        el.addEvent = addEvent;
        el.removeEvent = removeEvent;
        return el;
}
function getMouse(e){
        return iex ? event.clientY : e.pageY;
}

document.addEvent = addEvent;
document.removeEvent = removeEvent;


luk = false;
aaben = true;

function showSel(billedet,selIt,selIt2) {
    thisSel = getElement(selIt);
    if (thisSel.style.visibility == "hidden") {
        selL = xPos(billedet);
        selT = yPos(billedet);
        thisSel.style.left = selL + 0;
        thisSel.style.top = selT + 21;
        thisSel.style.visibility = "visible";
        getElement(selIt2).style.visibility = "visible";
    } else {
        thisSel.style.visibility = "hidden";
    }
}

// ||||||||||||||||||||||||||||||||||||||||||||||||||
// ImageSwap Functions

function newImage(src){
        img = new Image();
        img.src = src;
        return img;
}
function imageSwap(img,obj,div){
        obj = eval(obj);
        if(document.layers && div != null){
                document.layers[div].document.images[img].src = obj.src;
        }else{
                document.images[img].src = obj.src;
        }
}




var dom = document.getElementById;
var iex = document.all;
var ns4 = document.layers;

function addEvent(event,method){
        this[event] = method;
        if(ns4) this.captureEvents(Event[event.substr(2,event.length).toUpperCase()]);
}
function removeEvent(event){
        this[event] = null;
        if(ns4) this.releaseEvents(Event[event.substr(2,event.length).toUpperCase()]);
}
function getElement(name,nest){
        nest = nest ? "document."+nest+"." : "";
        var el = dom ? document.getElementById(name) : iex ? document.all[name] : ns4 ? eval(nest+"document."+name) : false;
        el.css = ns4 ? el : el.style;
        el.getTop = function(){return parseInt(el.css.top) || 0};
        el.setTop = function(y){el.css.top = ns4 ? y: y+"px"};
        el.getHeight = function(){return ns4 ? el.document.height : el.offsetHeight};
        el.getClipHeight = function(){return ns4 ? el.clip.height : el.offsetHeight};
        el.hideVis = function(){el.css.visibility="hidden"};
        el.addEvent = addEvent;
        el.removeEvent = removeEvent;
        return el;
}
function getYMouse(e){
        return iex ? event.clientY : e.pageY;
}

document.addEvent = addEvent;
document.removeEvent = removeEvent;







// ||||||||||||||||||||||||||||||||||||||||||||||||||
// Scroller Class

ScrollObj = function(speed, dragHeight, trackHeight, trackObj, upObj, downObj, dragObj, contentMaskObj, contentObj){
        this.speed = speed;
        this.dragHeight = dragHeight;
        this.trackHeight = trackHeight;
        //this.trackObj = getElement(trackObj);
        //this.upObj = getElement(upObj);
        //this.downObj = getElement(downObj);
        this.dragObj = getElement(dragObj);
        this.contentMaskObj = getElement(contentMaskObj);
        this.contentObj = getElement(contentObj,contentMaskObj);
        this.obj = contentObj+"Object";
        eval(this.obj+"=this");

        this.trackTop = this.dragObj.getTop();
        this.trackLength = this.trackHeight-this.dragHeight;
        this.trackBottom = this.trackTop+this.trackLength;
        this.contentMaskHeight = this.contentMaskObj.getClipHeight();
        this.contentHeight = this.contentObj.getHeight();
        this.contentLength = this.contentHeight-this.contentMaskHeight;
        this.scrollLength = this.trackLength/this.contentLength;
        this.scrollTimer = null;

        if(this.contentHeight <= this.contentMaskHeight){
                this.dragObj.hideVis();
        }else{
                var self = this;
                //this.trackObj.addEvent("onmousedown", function(e){self.scrollJump(e);return false});
                //this.upObj.addEvent("onmousedown", function(){self.scroll(self.speed);return false});
                //this.upObj.addEvent("onmouseup", function(){self.stopScroll()});
                //this.upObj.addEvent("onmouseout", function(){self.stopScroll()});
                //this.downObj.addEvent("onmousedown", function(){self.scroll(-self.speed);return false});
                //this.downObj.addEvent("onmouseup", function(){self.stopScroll()});
                //this.downObj.addEvent("onmouseout", function(){self.stopScroll()});
                this.dragObj.addEvent("onmousedown", function(e){self.startDrag(e);return false});
                if(iex) this.dragObj.addEvent("ondragstart", function(){return false});
        }
}
ScrollObj.prototype.startDrag = function(e){
        this.dragStartMouse = getYMouse(e);
        this.dragStartOffset = this.dragObj.getTop();
        var self = this;
        document.addEvent("onmousemove", function(e){self.drag(e)});
        document.addEvent("onmouseup", function(){self.stopDrag()});
}
ScrollObj.prototype.stopDrag = function(){
        document.removeEvent("onmousemove");
        document.removeEvent("onmouseup");
}
ScrollObj.prototype.drag = function(e){
        var currentMouse = getYMouse(e);
        var mouseDifference = currentMouse-this.dragStartMouse;
        var dragDistance = this.dragStartOffset+mouseDifference;
        var dragMovement = (dragDistance<this.trackTop) ? this.trackTop : (dragDistance>this.trackBottom) ? this.trackBottom : dragDistance;
        this.dragObj.setTop(dragMovement);
        var contentMovement = -(dragMovement-this.trackTop)*(1/this.scrollLength);
        this.contentObj.setTop(contentMovement);
}
ScrollObj.prototype.scroll = function(speed){
        var contentMovement = this.contentObj.getTop()+speed;
        var dragMovement = this.trackTop-Math.round(this.contentObj.getTop()*(this.trackLength/this.contentLength));
        if(contentMovement > 0){
                contentMovement = 0;
        }else if(contentMovement < -this.contentLength){
                contentMovement = -this.contentLength;
        }
        if(dragMovement < this.trackTop){
                dragMovement = this.trackTop;
        }else if(dragMovement > this.trackBottom){
                dragMovement = this.trackBottom;
        }
        this.contentObj.setTop(contentMovement);
        this.dragObj.setTop(dragMovement);
        this.scrollTimer = window.setTimeout(this.obj+".scroll("+speed+")",25);
}
ScrollObj.prototype.stopScroll = function(){
        if(this.scrollTimer){
                window.clearTimeout(this.scrollTimer);
                this.scrollTimer = null;
        }
}
ScrollObj.prototype.scrollJump = function(e){
        var currentMouse = getYMouse(e);
        var dragDistance = currentMouse-(this.dragHeight/2);
        var dragMovement = (dragDistance<this.trackTop) ? this.trackTop : (dragDistance>this.trackBottom) ? this.trackBottom : dragDistance;
        this.dragObj.setTop(dragMovement);
        var contentMovement = -(dragMovement-this.trackTop)*(1/this.scrollLength);
        this.contentObj.setTop(contentMovement);
}



// ||||||||||||||||||||||||||||||||||||||||||||||||||
// Misc Functions

function fixNetscape4(){
        if(ns4origWidth != window.innerWidth || ns4origHeight != window.innerHeight){
                window.location.reload();
        }
}
if(document.layers){
        ns4origWidth = window.innerWidth;
        ns4origHeight = window.innerHeight;
        window.onresize = fixNetscape4;
}

// ||||||||||||||||||||||||||||||||||||||||||||||||||

function addKeyHandler(element) {

        element._keyObject = new Array();
        element._keyObject["keydown"] = new Array();
        element._keyObject["keyup"] = new Array();
        element._keyObject["keypress"] = new Array();

        element.addKeyDown = function (keyCode, action) {
                element._keyObject["keydown"][keyCode] = action;
        }

        element.removeKeyDown = function (keyCode) {
                element._keyObject["keydown"][keyCode] = null;
        }

        element.addKeyUp = function (keyCode, action) {
                element._keyObject["keyup"][keyCode] = action;
        }

        element.removeKeyUp = function (keyCode) {
                element._keyObject["keyup"][keyCode] = null;
        }

        element.addKeyPress = function (keyCode, action) {
                element._keyObject["keypress"][keyCode] = action;
        }

        element.removeKeyPress = function (keyCode) {
                element._keyObject["keypress"][keyCode] = null;
        }

        function handleEvent() {
                var type = window.event.type;
                var code = window.event.keyCode;

                if (element._keyObject[type][code] != null)
                        element._keyObject[type][code]();
        }

        element.onkeypress = handleEvent;
        element.onkeydown = handleEvent;
        element.onkeyup = handleEvent;
}

// FOLD UD IND

var dom = document.getElementById;
var iex = document.all;
var ns4 = document.layers;

function getElement3(name){
        var el = dom ? document.getElementById(name) : iex ? document.all[name] : ns4 ? eval(nest+"document."+name) : false;
        el.css = ns4 ? el : el.style;
        return el;
}

function foldudind(id) {

        obj = getElement3(id);

        if (obj.css.display=="none") {
         document.cookie=id+"=Unfold";
           obj.css.display="";
  } else {
         document.cookie=id+"=Fold";
    obj.css.display="none";
  }

}

/*************************************************************************

  dw_viewport.js
  version date Nov 2003

  This code is from Dynamic Web Coding
  at http://www.dyn-web.com/
  Copyright 2003 by Sharon Paine
  See Terms of Use at http://www.dyn-web.com/bus/terms.html
  Permission granted to use this code
  as long as this entire notice is included.

*************************************************************************/

viewport = {
  getWinWidth: function () {
    this.width = 0;
    if (window.innerWidth) this.width = window.innerWidth - 18;
    else if (document.documentElement && document.documentElement.clientWidth)
                  this.width = document.documentElement.clientWidth;
    else if (document.body && document.body.clientWidth)
                  this.width = document.body.clientWidth;
  },

  getWinHeight: function () {
    this.height = 0;
    if (window.innerHeight) this.height = window.innerHeight - 18;
          else if (document.documentElement && document.documentElement.clientHeight)
                  this.height = document.documentElement.clientHeight;
          else if (document.body && document.body.clientHeight)
                  this.height = document.body.clientHeight;
  },

  getScrollX: function () {
    this.scrollX = 0;
          if (typeof window.pageXOffset == "number") this.scrollX = window.pageXOffset;
          else if (document.documentElement && document.documentElement.scrollLeft)
                  this.scrollX = document.documentElement.scrollLeft;
          else if (document.body && document.body.scrollLeft)
                  this.scrollX = document.body.scrollLeft;
          else if (window.scrollX) this.scrollX = window.scrollX;
  },

  getScrollY: function () {
    this.scrollY = 0;
    if (typeof window.pageYOffset == "number") this.scrollY = window.pageYOffset;
    else if (document.documentElement && document.documentElement.scrollTop)
                  this.scrollY = document.documentElement.scrollTop;
          else if (document.body && document.body.scrollTop)
                  this.scrollY = document.body.scrollTop;
          else if (window.scrollY) this.scrollY = window.scrollY;
  },

  getAll: function () {
    this.getWinWidth(); this.getWinHeight();
    this.getScrollX();  this.getScrollY();
  }

}

var menuLayers = {
  timer: null,
  activeMenuID: null,
  offX: 4,   // horizontal offset
  offY: 6,   // vertical offset
  show: function(id, e) {
    var mnu = document.getElementById? document.getElementById(id): null;
    if (!mnu) return;
    this.activeMenuID = id;
    if ( mnu.onmouseout == null ) mnu.onmouseout = this.mouseoutCheck;
    if ( mnu.onmouseover == null ) mnu.onmouseover = this.clearTimer;
    viewport.getAll();
    this.position(mnu,e);
  },

  hide: function() {
    this.clearTimer();
    if (this.activeMenuID && document.getElementById)
      this.timer = setTimeout("document.getElementById('"+menuLayers.activeMenuID+"').style.visibility = 'hidden'", 200);
  },

  position: function(mnu, e) {
    var x = e.pageX? e.pageX: e.clientX + viewport.scrollX;
    var y = e.pageY? e.pageY: e.clientY + viewport.scrollY;

    if ( x + mnu.offsetWidth + this.offX > viewport.width + viewport.scrollX )
      x = x - mnu.offsetWidth - this.offX;
    else x = x + this.offX;

    if ( y + mnu.offsetHeight + this.offY > viewport.height + viewport.scrollY )
      y = ( y - mnu.offsetHeight - this.offY > viewport.scrollY )? y - mnu.offsetHeight - this.offY : viewport.height + viewport.scrollY - mnu.offsetHeight;
    else y = y + this.offY;

    mnu.style.left = x + "px"; mnu.style.top = y + "px";
    this.timer = setTimeout("document.getElementById('" + menuLayers.activeMenuID + "').style.visibility = 'visible'", 200);
  },

  mouseoutCheck: function(e) {
    e = e? e: window.event;
    // is element moused into contained by menu? or is it menu (ul or li or a to menu div)?
    var mnu = document.getElementById(menuLayers.activeMenuID);
    var toEl = e.relatedTarget? e.relatedTarget: e.toElement;
    if ( mnu != toEl && !menuLayers.contained(toEl, mnu) ) menuLayers.hide();
  },

  // returns true of oNode is contained by oCont (container)
  contained: function(oNode, oCont) {
    if (!oNode) return; // in case alt-tab away while hovering (prevent error)
    while ( oNode = oNode.parentNode )
      if ( oNode == oCont ) return true;
    return false;
  },

  clearTimer: function() {
    if (menuLayers.timer) clearTimeout(menuLayers.timer);
  }

}

