// btdata.js

//	alert('test')
var browserNam = navigator.appName
var browserVer = parseInt(navigator.appVersion)
var userAgent = navigator.userAgent
//	alert(userAgent)

var grabberCursor = 'hand'
if (browserNam == 'Netscape') grabberCursor = 'pointer'
function cursorGrabber(obj) {
	obj.style.cursor=grabberCursor
}

var nn6X = 0
var nn6Y = 0
function getCoords(evt) {
	if (browserNam == 'Netscape') {
		if ( evt.target.id == 'chng' ) {
			nn6X = evt.layerX
			nn6Y = evt.layerY

		}
	}
}



function getWorkFrame() {
	frame = null;
	if ( parent.workframe ) frame = parent.workframe
	return frame
}

function getLayer(layer) {
	var myBox = null;
	if (getWorkFrame()) {
		var vf = getWorkFrame()
		if (document.layers) {
			///  Proprietary Navigator 4.x
			if (document.layers[layer]) myBox=vf.document.layers[layer];
		} else if (document.all && !document.getElementById) {
			/// Proprietary IE4
			if (layer) myBox=vf.layer;
		} else if (document.getElementById && document.body.style) {
			///  The Standards Compliant Way .. recommended.
			if (vf.document.getElementById(layer)) myBox=vf.document.getElementById(layer);
		}
	} else {
		if (document.layers) {
			if (document.layers[layer]) myBox=document.layers[layer];
		} else if (document.all && !document.getElementById) {
			if (layer) myBox=layer;
		} else if (document.getElementById && document.body.style) {
			if (document.getElementById(layer)) myBox=document.getElementById(layer);
		}
	}
	return myBox
}

function setStyleProp( id, prop, val) {
 retur = true
 if(id) {
  if(prop) {
    var LAYER= getLayer(id)
    if(prop=='top') LAYER.style.top=val
    if(prop=='left') LAYER.style.left=val
    if(prop=='width') LAYER.style.width=val
    if(prop=='height') LAYER.style.height=val
    if(prop=='visibility')
     if(val) {
      if(val=='true') LAYER.style.visibility='visible'
      if(val=='false') LAYER.style.visibility='hidden'
      if(val=='visible') LAYER.style.visibility='visible'
      if(val=='hidden') LAYER.style.visibility='hidden'
      retur=LAYER.style.visibility=='visible'

     } else {
      if (LAYER.style.visibility=='visible') LAYER.style.visibility='hidden'
      else  LAYER.style.visibility='visible'
      retur=LAYER.style.visibility=='visible'

     }
  }
 }
 return retur
}

function setPos(id, obj) {
 if(id) {
  if(id.id) id=id.id
  if(obj) {
   setStyleProp(id, 'left', obj.x)
   setStyleProp(id, 'top', obj.y)
  }
 }
}


function setSize(id, obj, offsett) {
 var xOff = 0
 var yOff = 0
 if (offsett) {
  xOff=offsett.x
  yOff=offsett.y
 }
 if(id) {
  if(id.id) id=id.id
  if(obj) {
   if(obj.x-xOff==-1) setStyleProp(id, 'width', null)
   if(obj.y-yOff==-1) setStyleProp(id, 'height', null)
   if(obj.x-xOff>1) setStyleProp(id, 'width', obj.x-xOff)
   if(obj.y-yOff>1) setStyleProp(id, 'height', obj.y-yOff)
  }
 }
}


function getStyleProp( id ) {
 if(id) {
  var LAYER= getLayer(id)
  this.width=LAYER.style.width
  this.height=LAYER.style.height
  this.top=LAYER.style.top
  this.left=LAYER.style.left

  this.w=parseInt(LAYER.style.width.replace('px','').replace('%',''))
  this.h=parseInt(LAYER.style.height.replace('px','').replace('%',''))
  this.y=parseInt(LAYER.style.top.replace('px','').replace('%',''))
  this.x=parseInt(LAYER.style.left.replace('px','').replace('%',''))

  this.visibility=LAYER.style.visibility
 }
}

function getPresent( num ) {
 var r=0.0
	if (num)
	 if (num != '0') {
	  r = parseInt(num)/100
  }
 return r
}

function viewXY(evt, layer) {
	var refX = 0 , refY = 0
	if (navigator.appName == 'Netscape') {
		refX = evt.layerX
		refY = evt.layerY
	} else {
		if ( event ) {
			refX = event.offsetX
			refY = event.offsetY
		 }
	}
	this.x=refX
	this.y=refY
}


function windowSize() {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else {
    if( document.documentElement &&
        ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
      //IE 6+ in 'standards compliant mode'
      myWidth = document.documentElement.clientWidth;
      myHeight = document.documentElement.clientHeight;
    } else {
      if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
        //IE 4 compatible
        myWidth = document.body.clientWidth;
        myHeight = document.body.clientHeight;
      }
    }
  }
  this.w=myWidth
  this.h=myHeight
}




function animateAll(obj, status){
 var d = 0
 var delay = 0
 var prev = -1
 if (!status) status=''
 for(var i=0;i<obj.length;i++){
  if (obj[i][0]=="true") {
   var objId = "bt_"+status+obj[i][1]
   delay+= parseInt(obj[i][6])
   if (prev!=-1) {
    d= animate("bt_"+status+obj[prev][1], 'hide', delay)
    if (d!=0)delay+=d/1000
   }
   d=animate(objId, obj[i][4], delay)
   if (d!=0)delay+=d/1000
   if (obj[i][8]=='close') prev=i; else prev=-1
   if (obj[i][7]=='closeCloseable') {
    for (var y=i; y>=0; y--) {
     if (obj[y][8]=='closeable') {
      d=animate("bt_"+status+obj[y][1], 'hide', delay)
      if (d!=0)delay+=d/1000
     }
    }
   }
  }
 }
 return delay
}

function animate(objId, type, sek){
 var d=0
 var milli=0
 if (sek) milli+=sek*1000
 if (milli>0) setTimeout("animate('"+objId+"', '"+type+"')", milli)
 else
  switch (type) {
   case 'hide' : if (getLayer(objId)) getLayer(objId).style.visibility='hidden'
    break
   case 'intop' : d=animateFromTop(objId)
    break
   case 'inbottom' : d=animateFromBottom(objId)
    break
   case 'inleft' : d=animateFromLeft(objId)
    break
   case 'inright' : d=animateFromRight(objId)
    break
   default : if (getLayer(objId)) getLayer(objId).style.visibility='visible'
  }
 return d
}

function animateFromLeft(objId){
 var d=0
 if(getLayer(objId)) {
  var prop=new getStyleProp(objId)
  var xTarget=prop.x
  var inc=10
  d=inc
  var pw=new windowSize().w
  if( prop.w) pw=prop.w
  setTimeout("setStyleProp('"+objId+"', 'left', "+(0-pw)+")", d)
  setTimeout("setStyleProp('"+objId+"', 'visibility', 'visible')", (d+10))
  for (var i=-pw; i<xTarget; i+=5) {
   d+=inc
   setTimeout("setStyleProp('"+objId+"', 'left', "+i+")", d)
  }
  d+=inc
  setTimeout("setStyleProp('"+objId+"', 'left', "+xTarget+")", d)
 }
 return d
}


function animateFromRight(objId){
 var d=0
 if(getLayer(objId)) {
  var prop=new getStyleProp(objId)
  var winW = new windowSize().w+100
  var xTarget=prop.x
  if (winW>xTarget) {
   var inc=10
   d=inc
   setTimeout("setStyleProp('"+objId+"', 'left', "+winW+")", d)
   setTimeout("setStyleProp('"+objId+"', 'visibility', 'visible')", (d+10))
   for (var i=winW; i>xTarget; i-=5) {
    d+=inc
    setTimeout("setStyleProp('"+objId+"', 'left', "+i+")", d)
   }
   d+=inc
   setTimeout("setStyleProp('"+objId+"', 'left', "+xTarget+")", d)
  }
 }
 return d
}



function animateFromBottom(objId){
 var d=0
 if(getLayer(objId)) {
  var prop=new getStyleProp(objId)
  var winH = new windowSize().h+100
  var yTarget=prop.y
  if (winH>yTarget) {
   var inc=10
   d=inc
   setTimeout("setStyleProp('"+objId+"', 'top', "+winH+")", d)
   setTimeout("setStyleProp('"+objId+"', 'visibility', 'visible')", (d+10))
   for (var i=winH; i>yTarget; i-=5) {
    d+=inc
    setTimeout("setStyleProp('"+objId+"', 'top', "+i+")", d)
   }
   d+=inc
   setTimeout("setStyleProp('"+objId+"', 'top', "+yTarget+")", d)
  }
 }
 return d
}

function animateFromTop(objId){
 var d=0
 if(getLayer(objId)) {
  var prop=new getStyleProp(objId)
  var yTarget=prop.y
  var inc=10
  d=inc
  var ph=new windowSize().h
  if( prop.h) ph=prop.h
  setTimeout("setStyleProp('"+objId+"', 'top', "+(0-ph)+")", d)
  setTimeout("setStyleProp('"+objId+"', 'visibility', 'visible')", (d+10))
  for (var i=-ph; i<yTarget; i+=5) {
   d+=inc
   setTimeout("setStyleProp('"+objId+"', 'top', "+i+")", d)
  }
  d+=inc
  setTimeout("setStyleProp('"+objId+"', 'top', "+yTarget+")", d)
 }
 return d
}



function allHidden(objList, status){
 if (!status) status=''
 for(var i=0;i<objList.length;i++){
  if (objList[i][0]=="true") {
   if(getLayer("bt_"+status+objList[i][1])) getLayer("bt_"+status+objList[i][1]).style.visibility="hidden"
  }
 }
}

function setObjList(selectObj, objList){
	var aList = getLayer(selectObj)
	aList.length=0
	for(var i=0;i<objList.length;i++){
		if (objList[i][0]=="true") {
			aList.options[aList.length]=new Option(+objList[i][1]+"|"+objList[i][3], i)
		}
	}
}





function chkEmailAdr(em) {
	this.ok=true
	if (em=="") this.ok=false
	if (em.indexOf(" ")>-1)this.ok=false
	var alpha=em.indexOf("@")
	if (alpha<1) this.ok=false
	var dot=em.lastIndexOf(".")
	if (dot==-1) this.ok=false
	if(alpha>=dot-1) this.ok=false
	if(em.length<=dot+1) this.ok=false
}

var mailForm
function sendMailFromWeb(obj) {
	var errorColor = "#FEFEDE"
	if (obj.mailTo) {
		obj.mailTo.style.background=""
		mailTo=new chkEmailAdr(obj.mailTo.value)
		if (!mailTo.ok) {
			var currentValue = ''
			if (obj.mailTo.value) currentValue=obj.mailTo.value
			obj.mailTo.value=" * "+currentValue
			obj.mailTo.style.background=errorColor
			return false
		}
	}
	obj.mailFrom.style.background=""
	mailFrom=new chkEmailAdr(obj.mailFrom.value)
	if (!mailFrom.ok) {
		var currentValue = ''
		if (obj.mailFrom.value) currentValue=obj.mailFrom.value
		obj.mailFrom.value=" * "+currentValue
		obj.mailFrom.style.background=errorColor
		return false
	}
	var action=obj.action
	action+="?noHelp=true";
	if (obj.mailFrom) this.mailFrom=obj.mailFrom.value
	if (obj.mailTo) this.mailTo=obj.mailTo.value
	if (obj.mailCopy) this.mailCopy=obj.mailCopy.value
	if (obj.mailBlindCopy) this.mailBlindCopy=obj.mailBlindCopy.value
	if (obj.mailSubj) this.mailSubj=obj.mailSubj.value
	if (obj.mailContent) this.mailContent=obj.mailContent.value
	if (obj.mailContent2) this.mailContent2=obj.mailContent2.value
	if (obj.mailRegard) this.mailRegard=obj.mailRegard.value
	if (obj.mailSendtMsg) this.mailSendtMsg=obj.mailSendtMsg.value
	mailForm=this


	newPopUpWindow=window.open(action ,"newPopUpWindow","scrollbars=false, resizable=false,width=200px,height=200px,screenX=100,screenY=100")
	newPopUpWindow.focus()


	if (obj.mailSendtMsg) {
		obj.mailSendtMsg.style.visibility="visible"
		// obj.mailSendtMsg.onclick='alert("test")' // 'this.style.visibility='hidden';obj.style.visibility="visible"'
		obj.style.visibility="hidden"
//		obj.mailSendtMsg.value="test"
	}
	return false
	newPopUpWindow=window.open(action ,"newPopUpWindow","scrollbars=true, resizable=true,width=800px,height=900px,screenX=0,screenY=0")
	newPopUpWindow.focus()

}

function longUrl(field, inText) {
	amp=String.fromCharCode(38)
	var ret = "";
	var i=0
	while (inText.length > 80 ) {
		var temp=inText.substring(0, 80)
		inText=inText.substring(80)
		ret+=amp+field+"_"+i+"="+escape(temp)
		i++
	}
	ret+=amp+field+"="+escape(inText)
	return ret
}


var newPopUpWindow = null
function popUpWindow(linkRef, w, h, scroll, sizable) {
	if ( !scroll) scroll="no"
	if ( !sizable) sizable="no"
	if (!newPopUpWindow || newPopUpWindow.closed) {
		newPopUpWindow=window.open(linkRef ,"newPopUpWindow","scrollbars="+scroll+", resizable="+sizable+",width="+w+",height="+h+",screenX=0,screenY=0")
	} else {
		newPopUpWindow.close()
		newPopUpWindow=window.open(linkRef ,"newPopUpWindow","scrollbars="+scroll+", resizable="+sizable+",width="+w+",height="+h+",screenX=0,screenY=0")
	}
	newPopUpWindow.focus()
}

function chkFormInput(form) {
	if ( form.uploadFilebrowserName ) {
		if (form.uploadFilebrowserName.value.lastIndexOf(".") > -1 ) {
			if ( form.itemText.value != "" ) form.submit()
			else alert("Beskrivelse mangler")
		}else alert("Mangler data")
	}  // form.uploadFilebrowserName
	if ( form.ref ) {
		if ( form.ref.value == "" || form.ref.value == "http://") {
			alert( "Mangler en internett referanse lenke\n    Eksempler:\n    http://www.fastbrowserName.no\n    http://www.bt-datatjenester.com" )
		} else form.submit()
	}  // form.ref
	if ( form.txtRef ) {
		if ( form.txtRef.value == "" || form.txt.value == "") {
			alert( "Overskrift og brødtekst må fylles ut" )
		} else form.submit()
	}  // form.ref
}

function htmlSetArchiveURL() {
	var winContent = ""
	winContent += "<form browserName='htmlSetArchiveURL'"
	winContent += "      action='/archive/uploadArchive.jsp'"
	winContent += "      method='get'"
	winContent += "      enctype='text/plain'"
	winContent += ">"
	winContent += "<p>"
	winContent += "<b style='color:#0000FF;font-size:18px;font-weight:bolder;'>Legg til en referanselenke : </b>"
	winContent += "<input type='button' value='Sett Lenke' onclick='chkFormInput(document.htmlSetArchiveURL)' />"
	winContent += "<br />"
	winContent += "<br />"
	winContent += "<b>Lenke (<i>/Link/url</i> ) :</b>"
	winContent += "<br />"
	winContent += " <input type='text' browserName='ref' value='http://' size='50' />"
	winContent += "</p>"
	winContent += "</form>"
	return winContent
}

function htmlCreateArchText() {
	var winContent = ""
	winContent += "<form browserName='htmlCreateArchText'"
	winContent += "      action='/archive/uploadArchive.jsp'"
	winContent += "      method='get'"
	winContent += "      enctype='text/plain'"
	winContent += ">"
	winContent += "<p>"
	winContent += "<b style='color:#0000FF;font-size:18px;font-weight:bolder;'>Opprett en tekst i arkivet : </b>"
	winContent += "<input type='button' value='Lag Tekst' onclick='chkFormInput(document.htmlCreateArchText)' />"
	winContent += "<br />"
	winContent += "<br />"
	winContent += "<b>Overskrift:</b>"
	winContent += "<br />"
	winContent += "<input type='text' browserName='txtRef' value='' size='50' />"
	winContent += "<br />"
	winContent += "<b>Brødtekst:</b><br />"
	winContent += "<br />"
	winContent += "<textarea browserName='txt' rows='15' cols='50'></textarea>"
	winContent += "</p>"
	winContent += "</form>"
	return winContent
}

function htmlUploadFile() {
	var winContent = ""
	winContent += "<form browserName='send'"
	winContent += "      action='/archive/uploadArchive.jsp'"
	winContent += "      method='post'"
	winContent += "      enctype='multipart/form-data'"
	winContent += ">"
	winContent += "<p>"
	winContent += "<b style='color:#0000FF;font-size:18px;font-weight:bolder;'>Hent en fil fra egen PC : </b>"
	winContent += "<input type='button' value='Send file' onclick='chkFormInput(document.send)' />"
	winContent += "<br />"
	winContent += "<br />"
	winContent += "<b>Arkivbeskrivelse/Tittel/Kommentar :</b>"
	winContent += "<br />"
	winContent += "<input type='text' browserName='itemText' value='' size='50' />"
	winContent += "<br />"
	winContent += "<b>Velg fil egen datamaskin :</b>"
	winContent += "<br />"
	winContent += "<input type='file' browserName='uploadFilebrowserName' value='' size='50' />"
	winContent += "</p>"
	winContent += "</form>"
	return winContent
}

function delArchive() {
	alert("Slett i arkivet. \nForutsetter at objektet ikke er brukt!!")
}

function htmlChngImg(Id, tag, linkRef, title) {
	var winContent = ""
	winContent += "<form browserName='chng' action='/archive/chngArchive.jsp' method='get' enctype='text/plain' >"
	winContent += " <input type='hidden' browserName='itemId' value='"+Id+"' />"
	winContent += "<p>"
	winContent += "<b style='color:#0000FF;font-size:18px;font-weight:bolder;'>Redigere Fil/Objekt : </b>"
	winContent += "<input type='submit' value='Oppdater' />"
	winContent += "<input type='button' value='slett' onclick='delArchive()' />"
	winContent += "<br />"
	winContent += "<br />"
	winContent += "<b>Kommentar/Tittel :</b>"
	winContent += "<br />"
	winContent += " <input type='text' browserName='itemText' value='"+title+"' size='50' />"
	winContent += "<br />"
	winContent += "<img src="+linkRef+" border='2' />"
	winContent += "</p>"
	winContent += "</form>"
	return winContent
}

function htmlChngLink(Id, tag, linkRef, title) {
	var winContent = ""
	winContent += "<form browserName='chng' action='/archive/chngArchive.jsp' method='get' enctype='text/plain' >"
	winContent += "<input type='hidden' browserName='itemId' value='"+Id+"' />"
	winContent += "<p>"
	winContent += "<b style='color:#0000FF;font-size:18px;font-weight:bolder;'>Redigere Lenke : </b>"
	winContent += "<input type='submit' value='Oppdater' />"
	winContent += "<input type='button' value='slett' onclick='delArchive()' />"
	winContent += "<br />"
	winContent += "<br />"
	winContent += "<b>Kommentar/Tittel :</b>"
	winContent += "<br />"
	winContent += "<input type='text' browserName='itemText' value='"+title+"' size='50' />"
	winContent += "<br />"
	winContent += "<b>Lenke :</b>"
	winContent += "<br />"
	winContent += " <input type='text' browserName='linkRef' value='"+linkRef+"' size='50' />"
	if ( tag == "img" ) winContent += "<br /><img src="+linkRef+" border='2' />"
	else  winContent += "&nbsp;-&nbsp;<a href='"+linkRef+"' target='_blanck' />"+title+"</a>"
	winContent += "</p>"
	winContent += "</form>"
	return winContent
}

function htmlChngTxt(Id, tag, linkRef, title) {
	var winContent = ""
	winContent += "<form browserName='chng' action='/archive/chngArchive.jsp' method='get'"
	winContent += " enctype='text/plain'"
	winContent += " >"
	winContent += " <input type='hidden' browserName='itemId' value='"+Id+"' />"
	winContent += "<p>"
	winContent += "<b style='color:#0000FF;font-size:18px;font-weight:bolder;'>Redigere tekst : </b>"
	winContent += "<input type='submit' value='Oppdater' />"
	winContent += "<input type='button' value='slett' onclick='delArchive()' />"
	winContent += "<br />"
	winContent += "<br />"
	winContent += "<b>Overskrift :</b>"
	winContent += "<br />"
	winContent += "<input type='text' browserName='itemText' value='"+title+"' size='50' /><br />"
	winContent += "<b>Brødtekst :</b>"
	winContent += "<br />"
	winContent += "<textarea browserName='txtObj' rows='15' cols='50'>"+unescape(linkRef)+"</textarea><br />"
	winContent += "</p>"
	winContent += "</form>"
	return winContent
}


