/* --- common functions*/
var debugmsg='';
function sbmt(){
  if(document.getElementById('scrolltop')) document.getElementById('scrolltop').value=document.body.scrollTop;
  document.mainform.submit();
}
function sbmtv(fieldname,fieldvalue){
  el=document.getElementsByName(fieldname)[0];
  if(el) el.value=fieldvalue;
  //alert(document.mainform.hdfirstname.value);
  sbmt();
}
function repeatstr(nr,fillstr){
  var resultstr='';
  while (nr>0){
    if(nr&1==1)
      resultstr+=fillstr;
    fillstr+=fillstr;
    nr=nr >> 1;
  }
  return resultstr;
}
function str_replace(needle,newstr,haystack){
  arr=haystack.split(needle);
  return arr.join(newstr);
}
function gofortest(){
  var obj = new Object();
  obj['test']='hallo';
  alert(obj['test']);
  delete obj['test'];
  alert(obj['test']);


}

function correctdivy(obj){
  var addplus=0;
  if(navigator.appName=='Netscape') addplus=window.innerHeight-document.body.clientHeight;
  obj.style.bottom=-document.body.scrollTop+addplus;
}
var helptimer='';
function helpref(hlpname){
/*  alert('helpref'+hlpname);*/
  return hlpname==""?"":" onmouseover=jhlpshow('help"+hlpname+"') onmouseout=jhlphide('help"+hlpname+"')";
}
function jhlpshow(name){
//  document.getElementById('surveytargeted').innerHTML=ishelp+' - '+name+' - '+face[name];
  if(name!="") if(face[name])
    if((face[name]!='') && (ishelp==1)){
      window.clearInterval(helptimer);
      document.getElementById('helpjs').innerHTML=face[name];
      correctdivy(document.getElementById('helpjs'));
      document.getElementById('helpjs').style.display='inline';
    }
}
function jhlphide(name){
 /* document.getElementById('helpjs').style.display='none';*/
 document.getElementById('helpjs').style.display='none';
 // helptimer = window.setInterval("window.clearInterval(helptimer);document.getElementById('helpjs').style.display='none';",120);
/* document.getElementById('helpjs').style.display='none';*/
}

ishelp=99;
function helpshow(name){
  if(ishelp==1) {
    document.getElementById(name).style.display='inline';
    correctdivy(document.getElementById(name));
  }
}
function helphide(name){
  document.getElementById(name).style.display='none';
}
function showhide(name,isshow,showmode){
  document.getElementById(name).style.display=isshow?showmode:'none';
}


function echo(stri){
  document.write(stri);
/*  stri=stri.replace(/ /g,"&nbsp;");
  stri=stri.replace(/</g,"&lt;");
  stri=stri.replace(/>/g,"&gt;");
  debugcode=debugcode+stri+'<BR>'; */
}


function moneyval(instri){
  instri=instri.replace(/,/,'.');
  instri='0'+instri+'.00';
  parts=instri.split('.');
  parts[0]=parts[0].replace(/\D/g,'');
  /*alert(parts[0]);
  alert(parts[0].substr(0,1));*/
  while(parts[0].substr(0,1)=='0')
    parts[0]=parts[0].substr(1,parts[0].length-1);
  if(parts[0]=='')
    parts[0]='0';

  parts[1]=parts[1].replace(/\D/g,'')+'00';
/*  alert(parts[1]); */
  parts[1]=parts[1].substr(0,2);

  return parts[0]+','+parts[1];
}
function ageval(instri){
  instri='0'+instri.replace(/\D/g,'');
  while(instri.substr(0,1)=='0')
    instri=instri.substr(1,instri.length-1);
  if(instri=='')
    instri='0';

  return instri;
}
function dwordval(instri){
  instri=instri.replace(/\D/g,'');
  return instri;
}
function gety(obj){
  var yvalue=0;
  var parent=obj;
  while (parent) {
    yvalue+=parent.offsetTop;
    parent=parent.offsetParent;
  }
  return yvalue;
}
function getx(obj){
  var xvalue=0;
  var parent=obj;
  while (parent) {
    xvalue+=parent.offsetLeft;
    parent=parent.offsetParent;
  }
  return xvalue;
}
var ybase=new Array();
function scroll2item(id,obj){

  if(!ybase[id]){
    ybase[id]=gety(obj);
  }
 /* alert(document.body.offsetHeight+' - '+document.offsetHeight);*/
  var itemy1=obj.offsetTop+ybase[id];
  var itemy2=itemy1+obj.offsetHeight;
  if((itemy1<document.body.scrollTop) || (itemy2>document.body.scrollTop+document.body.clientHeight) || (itemy1+document.body.clientHeight>obj.offsetParent.offsetHeight+ybase[id])){
    if(obj.offsetHeight>=document.body.offsetHeight)
      var scrolly=itemy1;
    else
      var scrolly=itemy1-Math.round((document.body.offsetHeight-obj.offsetHeight)/2);
    /* alert((scrolly+' - '+document.body.clientHeight+' - '+obj.offsetParent.offsetHeight+' - '+ybase[id]));*/
    if(scrolly+document.body.clientHeight>obj.offsetParent.offsetHeight+ybase[id])
      scrolly=obj.offsetParent.offsetHeight+ybase[id]-document.body.clientHeight;
    window.scrollTo(1,scrolly);
  }
}
/* --- end of common functions */




/* --- calendar functions */
function selyear(id,year,direct){
  /*alert(document.getElementById('experiencesince'+id).value);*/
  /* alert(document.getElementById('year2006'+id).innerText);*/
  var elname='year'+id+'_';
  var nowdate= new Date();
  var maxyear =nowdate.getYear().toString().substr(0,4);
  var experiencesince=document.getElementsByName('experiencesince'+id)[0].value;
  if(experiencesince==''){
    var selquarter=(Math.floor(nowdate.getMonth()/4)+1).toString();
    var selyear=maxyear;
    var oldselyear='';
    document.getElementById('quarter'+id+'_'+selquarter).className='selqmark';
    document.getElementById('no'+id).className='selbutton';
  } else {
    var selquarter=experiencesince.substr(5,1);
    var selyear=experiencesince.substr(0,4);
    var oldselyear=selyear;
    document.getElementById(elname+selyear.substr(3,1)).className="selyear";
  }

  var yearstr=year.toString();
  if(yearstr!='')
    selyear=yearstr;

  var startyear=selyear.substr(0,3);
  if(direct!=0) {
    var chgyear=(parseInt(startyear)+direct).toString();
    if(maxyear.substr(0,3)>=chgyear){
      startyear=chgyear;
      var sellast=selyear.substr(3,1);
      selyear=((startyear+sellast)>=maxyear)?maxyear:(startyear+sellast);
    }
  }

  if (oldselyear!=selyear){
    for(count=0;count<=9;count++){
      var strc=count.toString();
      var yearc=startyear+strc;
      document.getElementById(elname+strc).innerText=(yearc<=maxyear)?yearc:'';
    }
  }
  document.getElementsByName('experiencesince'+id)[0].value=selyear+"Q"+selquarter;
  document.getElementsByName(elname+selyear.substr(3,1))[0].className="selyearmark";
}


function selquarter(id,quarter){
  /*alert(document.getElementById('experiencesince'+id).value);*/
  /* alert(document.getElementById('year2006'+id).innerText);*/
  var elname='quarter'+id+'_';
  var experiencesince=document.getElementsByName('experiencesince'+id)[0].value;
  if(experiencesince==''){
    var nowdate= new Date();
    var selquarter=(Math.floor(nowdate.getMonth()/4)+1).toString();
    var selyear=nowdate.getYear().toString().substr(0,4);
    document.getElementById('year'+id+'_'+selyear.substr(3,1)).className='selyearmark';
    document.getElementById('no'+id).className='selbutton';
  } else {
    var selquarter=experiencesince.substr(5,1);
    var selyear=experiencesince.substr(0,4);
    document.getElementById(elname+selquarter).className='selq';
  }

  if(quarter!=0)
    selquarter=quarter.toString();
  document.getElementById(elname+selquarter).className='selqmark';
  document.getElementsByName('experiencesince'+id)[0].value=selyear+"Q"+selquarter;
}

function cleanyq(id){
  /*alert(document.getElementById('experiencesince'+id).value);*/
  /* alert(document.getElementById('year2006'+id).innerText);*/
  var elname='quarter'+id+'_';
  var nowdate= new Date();
  var maxyear = nowdate.getYear().toString().substr(0,4);
  var experiencesince=document.getElementsByName('experiencesince'+id)[0].value;
  var selquarter=(experiencesince=='')?(Math.floor(nowdate.getMonth()/4)+1).toString():experiencesince.substr(5,1);
  var selyear=(experiencesince=='')?maxyear:experiencesince.substr(0,4);
  document.getElementById('year'+id+'_'+selyear.substr(3,1)).className="selyear";
  document.getElementById('quarter'+id+'_'+selquarter).className='selq';
  document.getElementById('no'+id).className='selbuttonmark';
  document.getElementsByName('experiencesince'+id)[0].value='';
}
/* --- end of calendar functions */




/* survey functions common ##################################################### */
// var surveyplan=new Object();
var ctflags={isroot:32,iscomment:64,islinebreak:128,isdeleted:256};
//alert('start');
function init_survey(divname,questval){
 // alert('start');
  var panel=document.getElementById(divname);
  if(!panel) {
    panel=document.createElement("div");
    panel.setAttribute("id",divname);
  }
  panel.actitem=1;
  panel.items=new Array();
  panel.questval=questval;
  panel.innerHTML="<input type=hidden name='questval' value='"+questval+"'>";
  panel.setq=survey_setitem;
  if(item_valueset) panel.valueset=item_valueset;
  if(survey_paneldraw) panel.draw=survey_paneldraw;
  return panel;
/*
  surveyplan[sid]=new Array();
  surveyplan[sid][0]=new Object();
  surveyplan[sid][0].isnode=new Object();  // for surveyrun
  surveyplan[sid][0].attrlist=new Array();
  surveyplan[sid][0].apointerselect="<input type=hidden name='apointer' value='0'>"+
                                         "<div id=answ0 style={display:none}>";
  surveyplan[sid][0].treelevel=-1;
  surveyplan[sid][0].leveldrawback=new Array();
  surveyplan[sid][0].targetedcount=1;
  surveyplan[sid][0].level=0; // DELETE??? dummy to simplify loop in issurveypagenext()/ show and hide section
  surveyplan[sid][0].flags=128; // DELETE??? dummy to simplify loop in issurveypagenext()/ show and hide section
*/
}
function survey_setitem(qid,question,qname,comment,ref_type,target,flags,level,answers,defaultval,min,max,cols_rows,styleid){
// first 8 Bits of ref_type mark the type, next bits define types from the applicatio
 // pointer -> ref_type  (type wurde vorher in Flags gespeichert)

  pmin=parseInt(min);
  pmax=parseInt(max);
//alert('test');
  if(!this.items[qid]) {
//document.write("created:"+qid+' - '+"<BR>");
    var item=document.createElement("div");
    item.setAttribute("id",qid);

//document.write("created:"+qid+' - '+item.innerHTML+"<BR>");


    this.appendChild(item);
    this.items[qid]=item;
  }
  //item.innerHTML='test'+qid;
  item.question      =question;
  item.qname         =qname;
  item.comment       =comment;
  item.ref_type      =ref_type;
  for(flag in ctflags) item[flag]=flags & ctflags[flag];
  item.level         =level;
  item.min           =((pmin>pmax) && (pmax!=-1))?pmax:pmin;
  item.max           =pmax;
  item.cols_rows     =cols_rows;

  item.valueset      =item_valueset;
  item.getsavedatafldHTML=item_getsavedatafldHTML;
  item.updatesavedatafld=item_updatesavedatafld;
  item.draw          =item_draw;

  var answer=answers.split('\n');
  var maxanswers=((answers=='')?0:answer.length);
  item.answers=new Array(); item.answers.push('');
  item.targets=new Array(); item.targets.push(target);
  item.preset=new Array();  item.preset.push(''); // -> wird zu default value
  for(var count=1;count<=maxanswers;count++){
    var linestr=answer[count-1].split('~');
    item.answers[count]=linestr[0]?linestr[0]:'';
    item.targets[count]=linestr[1]?linestr[1]:0;
    item.preset[count] =linestr[2]?'~':'';
  }
  item.defaultval=0;

  item.styleid       =styleid;
  //if(!item.targetedcount)
  item.targetedcount=1;
  if(!item.answerscrolltop) item.answerscrolltop=0;
  if(!item.answeridfocus) item.answeridfocus=0;
  
  if(item_consoledraw) item.consoledraw=item_consoledraw;
}

// edit webirarchie ####################################################
function setmarking(tname,id,val){
  //alert(document.getElementsByName(tname+id)[0].value+' - '+val);
  if(document.getElementsByName(tname+id)[0].value==val)
    document.getElementsByName(tname+id)[0].style.backgroundColor='#FFFFFF';
  else
    document.getElementsByName(tname+id)[0].style.backgroundColor='#FFEAEA';
}
function ewch(idnr){
  //alert(idnr);
  id=idnr.toString();
  //alert(id);
  valarr=document.getElementsByName('eworig'+id)[0].value.split(';');
//  alert(valarr[0]);
  setmarking('ewcat',id,valarr[0]);
  setmarking('ewname',id,valarr[1]);
  setmarking('ewurl',id,valarr[2]);
  setmarking('ewdesc',id,valarr[3]);
}




function endbasics(){
}

