/* www.pecaso.com*/

/* DHTML-Bibliothek */

var DHTML = 0, DOM = 0, MS = 0, NS = 0, OP = 0;

function DHTML_init() {

 if (window.opera) {
     OP = 1;
 }
 if(document.getElementById) {
   DHTML = 1;
   DOM = 1;
 }
 if(document.all && !OP) {
   DHTML = 1;
   MS = 1;
 }
if(document.layers && !OP) {
   DHTML = 1;
   NS = 1;
 }
}

function getElem(p1,p2,p3) {
 var Elem;
 if(DOM) {
   if(p1.toLowerCase()=="id") {
     if (typeof document.getElementById(p2) == "object")
     Elem = document.getElementById(p2);
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="name") {
     if (typeof document.getElementsByName(p2) == "object")
     Elem = document.getElementsByName(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="tagname") {
     if (typeof document.getElementsByTagName(p2) == "object" || (OP && typeof document.getElementsByTagName(p2) == "function"))
     Elem = document.getElementsByTagName(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
 else if(MS) {
   if(p1.toLowerCase()=="id") {
     if (typeof document.all[p2] == "object")
     Elem = document.all[p2];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="tagname") {
     if (typeof document.all.tags(p2) == "object")
     Elem = document.all.tags(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="name") {
     if (typeof document[p2] == "object")
     Elem = document[p2];
     else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
 else if(NS) {
   if(p1.toLowerCase()=="id" || p1.toLowerCase()=="name") {
   if (typeof document[p2] == "object")
     Elem = document[p2];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="index") {
    if (typeof document.layers[p2] == "object")
     Elem = document.layers[p2];
    else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
}

function getCont(p1,p2,p3) {
   var Cont;
   if(DOM && getElem(p1,p2,p3) && getElem(p1,p2,p3).firstChild) {
     if(getElem(p1,p2,p3).firstChild.nodeType == 3)
       Cont = getElem(p1,p2,p3).firstChild.nodeValue;
     else
       Cont = "";
     return(Cont);
   }
   else if(MS && getElem(p1,p2,p3)) {
     Cont = getElem(p1,p2,p3).innerText;
     return(Cont);
   }
   else return void(0);
}

function getAttr(p1,p2,p3,p4) {
   var Attr;
   if((DOM || MS) && getElem(p1,p2,p3)) {
     Attr = getElem(p1,p2,p3).getAttribute(p4);
     return(Attr);
   }
   else if (NS && getElem(p1,p2)) {
       if (typeof getElem(p1,p2)[p3] == "object")
        Attr=getElem(p1,p2)[p3][p4]
       else
        Attr=getElem(p1,p2)[p4]
         return Attr;
       }
   else return void(0);
}

function setCont(p1,p2,p3,p4) {
   if(DOM && getElem(p1,p2,p3) && getElem(p1,p2,p3).firstChild)
     getElem(p1,p2,p3).firstChild.nodeValue = p4;
   else if(MS && getElem(p1,p2,p3))
     getElem(p1,p2,p3).innerText = p4;
   else if(NS && getElem(p1,p2,p3)) {
     getElem(p1,p2,p3).document.open();
     getElem(p1,p2,p3).document.write(p4);
     getElem(p1,p2,p3).document.close();
   }
}

DHTML_init();

var bName = navigator.appName;
var bVer  = parseInt(navigator.appVersion);

var bNS4   = ((bName == "Netscape") && (bVer >= 4));
var bIE4   = ((bName == "Microsoft Internet Explorer") && (bVer >= 4));
var bOP	  = navigator.userAgent.indexOf("Opera");
  
function setLanguage() {

	if (bIE4) {
		langDE = (navigator.userLanguage.indexOf("de")>-1);
		langEN = (navigator.userLanguage.indexOf("en")>-1);
	}
	else {
		langDE = (navigator.language.indexOf("de")>-1);
		langEN = (navigator.language.indexOf("en")>-1);
	}
	
	if (langDE) setTimeout("location.href = 'sessiontimeout.php?lang=de'", 0);
	else setTimeout("location.href = 'sessiontimeout.php?lang=en'", 0);

}
  
/* Rechtsklickschutz */
  
function cu(){
  	return false
}

/* document.oncontextmenu = cu; */

 
/* Add to Favorites */

function addToFavorite(favTitle)
{
  if ((navigator.appVersion.indexOf("MSIE") > 0) && (parseInt(navigator.appVersion) >= 4))
 {
    window.external.AddFavorite(location.href, unescape(favTitle));
  }
}

/* Lauftext in Statusleiste */

var text = "Accenture Human Capital Management Solutions       ";
var anzeige = "";
var t = 0;
function textRoll(){
	t=t+1;
	anzeige = text.substring(0,t);
	window.status=anzeige;
	if (t == text.length) t=0;
	scrolltext();
}

function scrolltext(){

	setTimeout('textRoll()',100);
}


  /* Funktionen */ 
     
  function openFile(fileName){
  	var afile = fileName;
  	window.open((afile), 'archiv', 'toolbar=no,status=no,resizable=yes,menubar=no,scrollbars=no,width=600px;');
  }
  
  function openMyPopup(pageURL,pageName,pageFeatures){
      	window.open(pageURL,pageName,pageFeatures);
  }
  
  function openURL(URL,TARGET) {
  	if (TARGET)
  		window.open((URL), 'neu', 'toolbar=yes,status=yes,resizable=yes,menubar=no,scrollbars=yes,width=1000px,height=700px,left=0,top=0');
  	else
  		location.href = URL;
  }



 /* Absprung zu anderen Pecaso Websites */
  
  function MM_jumpMenu(selObj,restore){ //v3.0
    eval("top.location='"+selObj.options[selObj.selectedIndex].value+"'");
    if (restore) selObj.selectedIndex=0;
  }
  
  function subopen(obj) {
    window.open('','results','toolbar=no,menu=no,status=no,scrollbars=yes,width=600px');
    obj.target = 'results';
    obj.submit();
  }
  
 /* Upload Box einblenden */

  function showUploadBox(selObj){ 
    var slctValue = selObj.options[selObj.selectedIndex].value;
    var GECKO = document.getElementById? 1:0 ;
    var NS = document.layers? 1:0 ;
    var IE = document.all? 1:0 ;
    var Layer_Name;
    var showDiv = false;

    if (GECKO) {
    	document.getElementById('ct').style.display = 'none';
    	document.getElementById('op').style.display = 'none';
    	document.getElementById('cm').style.display = 'none';
    }
    else if (NS) {
    	document.layers['ct'].display = 'none';
    	document.layers['op'].display = 'none';
    	document.layers['cm'].display = 'none';
    }
    else if (IE) {
    	document.all['ct'].style.display = 'none';
    	document.all['op'].style.display = 'none';
    	document.all['cm'].style.display = 'none';
    }
   
    
    if (slctValue == "21-HCM Clone&Test! for my SAP HCM") {
    	Layer_Name = "ct";
    	showDiv = true;
    }

    else if (slctValue == "71-0 OrgPublisher - License") {
    	Layer_Name = "op";
    	showDiv = true;
    }

    else if (slctValue == "32 eHR CostManager") {
    	Layer_Name = "cm";
    	showDiv = true;
    }
    
    else {
    	showDiv = false;
    }

    if (showDiv){
    	if (GECKO)
    	     {document.getElementById(Layer_Name).style.display = 'block';}
    	else if (NS)
    	     {document.layers[Layer_Name].display = 'block';}
    	else if (IE)
    	     {document.all[Layer_Name].style.display = 'block';}
    }
    

  }

 
  /* Mouseovers */
  
  function mOver(cell,movcolor) {
         cell.style.cursor = 'default';
         cell.bgColor = movcolor;
  }
  
  function mOut(cell,moucolor) {
         cell.style.cursor = 'default';
         cell.bgColor = moucolor;
  }
  
  function changeStyle(p_button,p_action) {
      if(p_action=='on')
          {
          p_button.className ="rightBarHover";
          }
      else
          {
          p_button.className ="rightBar";
          }
 }
  
  
  function MM_preloadImages() { //v3.0
    var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
  }

  function MM_swapImgRestore() { //v3.0
    var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
  }

  function MM_findObj(n, d) { //v3.0
    var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
  }
  
  function MM_swapImage() { //v3.0
    var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
    if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
  }

function checkPass() {

	var pass2 = document.password.upass2.value;
	var pass3 = document.password.upass3.value;
	
	if (pass2 == pass3) {
	
		return letSubmit('password');
	
	}
	else {
	
		alert("Please check your entries!\nField NEW and CONFIRM are different!");
		return false;
	
	}

}

  /* Formularabfrage neu */

  function IsEmptyf(myField,f) {
    	var documentName = document.getElementsByName(f)[0];
    	var retVal = true;
  	var aField = eval('document.' + f + '.' + myField + '.value');
  	if (aField.length != 0) {
  		for (var i = 0; (i < aField.length) ; i++) {
  			if (aField.charAt(i) != " ") retVal = false;
  		}
  	}
  	return retVal;
  }
  
  function verifyf(f) {
  	var documentName = document.getElementsByName(f)[0];
 	var retVal = true;
  	var aFocus = "";
  	var myAlert = new String(documentName.iqmessage.value);
  	var pRequired = new String(documentName.iqrequired.value);
  	if (pRequired.length > 0) {
  		var pRequiredName = new String(documentName.iqrequiredname.value);
  		var aRequired = pRequired.split(",");
  		var aRequiredName = pRequiredName.split(",");
  		for (i = 0; i < aRequired.length; i++) {
  			if (IsEmptyf(aRequired[i],f)) {
  				myAlert += "\n " + aRequiredName[i];
  				retVal = false;
  				if (aFocus.length == 0) {
  					aFocus = aRequired[i];
  				}
  			}
  		}
  
  	}
  
  	if (!retVal) {
  		alert(myAlert);
  		if (aFocus.length != 0) {
  			eval('document.' + f + '.' + aFocus + '.focus()');
  		}
  	}
  	return retVal;
  }
  
  function letSubmit(form_name) {
  	var documentName = document.getElementsByName(form_name)[0];
  	if (verifyf(form_name)) {
  		return true;
  	}
  	else {
  		return false;
  	}
  }





  
  /* Formularabfrage alt */

  function IsEmpty(myField) {
    	var retVal = true;
  	var aField = eval('document.contact.' + myField + '.value');
  	if (aField.length != 0) {
  		for (var i = 0; (i < aField.length) ; i++) {
  			if (aField.charAt(i) != " ") retVal = false;
  		}
  	}
  	return retVal;
  }
  
  function verify(f) {
 	var retVal = true;
  	var aFocus = "";
  	var myAlert = document.contact.iqmessage.value;
  	var pRequired = new String(document.contact.iqrequired.value);
  	if (pRequired.length > 0) {
  		var pRequiredName = new String(document.contact.iqrequiredname.value);
  		var aRequired = pRequired.split(",");
  		var aRequiredName = pRequiredName.split(",");
  		for (i = 0; i < aRequired.length; i++) {
  			if (IsEmpty(aRequired[i])) {
  				myAlert += "\n " + aRequiredName[i];
  				retVal = false;
  				if (aFocus.length == 0) {
  					aFocus = aRequired[i];
  				}
  			}
  		}
  
  	}
  
  	if (!retVal) {
  		alert(myAlert);
  		if (aFocus.length != 0) {
  			eval("document.contact." + aFocus + ".focus()");
  		}
  	}
  	return retVal;
  }
  
  function letsSubmit() {
  	if (verify(document.contact)) {
  		document.contact.submit();

  	}
  }
  

/* Layer ein/ausblenden */

function openLayer(Layer_Name){
 
  var GECKO = document.getElementById? 1:0 ;
  var NS = document.layers? 1:0 ;
  var IE = document.all? 1:0 ;
 	
 if (GECKO)  {
	document.getElementById(Layer_Name).style.display = 'block'; }
	
  else if (NS)
       {document.layers[Layer_Name].display = 'block'; }
  else if (IE)
       {document.all[Layer_Name].style.display = 'block'; }
}

function closeLayer(Layer_Name){
 
  var GECKO = document.getElementById? 1:0 ;
  var NS = document.layers? 1:0 ;
  var IE = document.all? 1:0 ;

 if (GECKO)  {
	document.getElementById(Layer_Name).style.display = 'none'; }
	
  else if (NS)
       {document.layers[Layer_Name].display = 'none'; }
  else if (IE)
       {document.all[Layer_Name].style.display = 'none'; }
 	
}

function switchlayer(Layer_Name)
{
  var GECKO = document.getElementById? 1:0 ;
  var NS = document.layers? 1:0 ;
  var IE = document.all? 1:0 ;

  if (GECKO)
       {document.getElementById(Layer_Name).style.display=
	   (document.getElementById(Layer_Name).style.display=='block') ? 'none' : 'block';}
  else if (NS)
       {document.layers[Layer_Name].display=(document.layers[Layer_Name].display==
	   'block') ? 'none' : 'block';}
  else if (IE)
       {document.all[Layer_Name].style.display=(document.all[Layer_Name].style.display==
	   'block') ? 'none' : 'block';}
}


function show_calendar2(str_target, str_datetime) {
   var arr_months = ["January", "February", "March", "April", "May", "June",
      "July", "August", "September", "October", "November", "December"];
   var week_days = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"];
   var n_weekstart = 1; // day week starts from (normally 0 or 1)

   var dt_datetime = (str_datetime == null || str_datetime =="" ?  new Date() : str2dt2(str_datetime));
   var dt_prev_month = new Date(dt_datetime);
   dt_prev_month.setMonth(dt_datetime.getMonth()-1);
   var dt_next_month = new Date(dt_datetime);
   dt_next_month.setMonth(dt_datetime.getMonth()+1);
   var dt_firstday = new Date(dt_datetime);
   dt_firstday.setDate(1);
   dt_firstday.setDate(1-(7+dt_firstday.getDay()-n_weekstart)%7);
   var dt_lastday = new Date(dt_next_month);
   dt_lastday.setDate(0);
   
   // html generation (feel free to tune it for your particular application)
   // print calendar header
   var str_buffer = new String (
      "<html>\n"+
      "<head>\n"+
      "   <title>Calendar</title>\n"+
      "</head>\n"+
      "<body bgcolor=\"White\">\n"+
      "<table class=\"clsOTable\" cellspacing=\"0\" border=\"0\" width=\"100%\">\n"+
      "<tr><td bgcolor=\"#4682B4\">\n"+
      "<table cellspacing=\"1\" cellpadding=\"3\" border=\"0\" width=\"100%\">\n"+
      "<tr>\n   <td bgcolor=\"#4682B4\"><a href=\"javascript:window.opener.show_calendar2('"+
      str_target+"', '"+ dt2dtstr2(dt_prev_month)+"');\">"+
      "<img src=\"../../images/prev.gif\" width=\"16\" height=\"16\" border=\"0\""+
      " alt=\"previous month\"></a></td>\n"+
      "   <td bgcolor=\"#4682B4\" colspan=\"5\">"+
      "<font color=\"white\" face=\"tahoma, verdana\" size=\"2\">"
      +arr_months[dt_datetime.getMonth()]+" "+dt_datetime.getFullYear()+"</font></td>\n"+
      "   <td bgcolor=\"#4682B4\" align=\"right\"><a href=\"javascript:window.opener.show_calendar2('"
      +str_target+"', '"+dt2dtstr2(dt_next_month)+"');\">"+
      "<img src=\"../../images/next.gif\" width=\"16\" height=\"16\" border=\"0\""+
      " alt=\"next month\"></a></td>\n</tr>\n"
   );

   var dt_current_day = new Date(dt_firstday);
   // print weekdays titles
   str_buffer += "<tr>\n";
   for (var n=0; n<7; n++)
      str_buffer += "   <td bgcolor=\"#87CEFA\">"+
      "<font color=\"white\" face=\"tahoma, verdana\" size=\"2\">"+
      week_days[(n_weekstart+n)%7]+"</font></td>\n";
   // print calendar table
   str_buffer += "</tr>\n";
   while (dt_current_day.getMonth() == dt_datetime.getMonth() ||
      dt_current_day.getMonth() == dt_firstday.getMonth()) {
      // print row heder
      str_buffer += "<tr>\n";
      for (var n_current_wday=0; n_current_wday<7; n_current_wday++) {
            if (dt_current_day.getDate() == dt_datetime.getDate() &&
               dt_current_day.getMonth() == dt_datetime.getMonth())
               // print current date
               str_buffer += "   <td bgcolor=\"#FFB6C1\" align=\"right\">";
            else if (dt_current_day.getDay() == 0 || dt_current_day.getDay() == 6)
               // weekend days
               str_buffer += "   <td bgcolor=\"#DBEAF5\" align=\"right\">";
            else
               // print working days of current month
               str_buffer += "   <td bgcolor=\"white\" align=\"right\">";

            if (dt_current_day.getMonth() == dt_datetime.getMonth())
               // print days of current month
               str_buffer += "<a href=\"javascript:window.opener."+str_target+
               ".value='"+dt2dtstr2(dt_current_day)+"'; window.close();\">"+
               "<font color=\"black\" face=\"tahoma, verdana\" size=\"2\">";
            else 
               // print days of other months
               str_buffer += "<a href=\"javascript:window.opener."+str_target+
               ".value='"+dt2dtstr2(dt_current_day)+"'; window.close();\">"+
               "<font color=\"gray\" face=\"tahoma, verdana\" size=\"2\">";
            str_buffer += dt_current_day.getDate()+"</font></a></td>\n";
            dt_current_day.setDate(dt_current_day.getDate()+1);
      }
      // print row footer
      str_buffer += "</tr>\n";
   }
   // print calendar footer
   str_buffer +=
      "</table>\n" +
      "</tr>\n</td>\n</table>\n" +
      "</body>\n" +
      "</html>\n";

   var vWinCal = window.open("", "Calendar", 
      "width=200,height=250,status=no,resizable=yes,top=200,left=200");
   vWinCal.opener = self;
   vWinCal.focus();
   var calc_doc = vWinCal.document;
   calc_doc.write (str_buffer);
   calc_doc.close();
}
// datetime parsing and formatting routimes. modify them if you wish other datetime format
function str2dt2 (str_datetime) {
   var re_date = /^(\d+)\.(\d+)\.(\d+)$/;
   if (!re_date.exec(str_datetime))
      return alert("Invalid Datetime format: "+ str_datetime);
   return (new Date (RegExp.$3, RegExp.$2-1, RegExp.$1));
}
function dt2dtstr2 (dt_datetime) {
   return (new String (
         dt_datetime.getDate()+"."+(dt_datetime.getMonth()+1)+"."+dt_datetime.getFullYear()));
}