var cmsPreviewPages =               "srcmhv91.debeka.de#srcmhv31.debeka.de#10.5.1.40#srcmhv33.server.debeka.de#srcmhv94.server.debeka.de#srcmhv35.server.debeka.de";
var redactionPortalPreviewPages =   "de.debeka.intranet.redaktion.PreviewPage#de.debeka.intranet.redaktion.EditorPreviewPage#de.debeka.intranet.redaktion.EditorialPage#PreviewServlet";
var testPrefix =                    "http://www9.debeka.de"

/* return true if page is a preview page */
function isCmsPreviewPage(){
	var path = window.location.href;
	var a_cmsPreviewPages = cmsPreviewPages.split("#");
	for(var i =0; i<a_cmsPreviewPages.length; i++ ){
    if (path.indexOf(a_cmsPreviewPages[i])>-1){
      return true;
    } 
  }
	return false;
}


/* return true, if page is a portal preview page */
function isRedactionPortalPreviewPages(){
  var a_redactionPortalPreviewPages = redactionPortalPreviewPages.split("#");
  for(var j =0; j<a_redactionPortalPreviewPages.length; j++ ){
  	if (window.location.pathname.indexOf(a_redactionPortalPreviewPages[j]) >= 0){
  		return true;
 		}
	}
	return false;
}

function beraten(){
  if (document.getElementById("audience").options[0].selected == false) {
  		  document.getElementById("auswahl").submit();
	}
}

/* call relative links as absolute */
function callAbsoluteLink(linkRelativ){
  if (isRedactionPortalPreviewPages()){
     return true;
  }
  absoluteLink=getPreviewContext() + linkRelativ;
  window.location.href = absoluteLink;
  return false;
}
function wait(millis) {
  var date = new Date();
  var curDate = null;
  
  do { curDate = new Date(); }
  while(curDate-date < millis);
}
function waitFor(millis){
    wait(millis);
}

/* return project context */
function getPreviewContext(){
	var path = window.location.href;
	var projectPath = "";
	var isPreviewOnPortal =false;
	
	if (isRedactionPortalPreviewPages()){
		var indexRoot = path.indexOf("link="); 
		indexRoot += 5;
		path = path.substring(indexRoot, path.length);
		isPreviewOnPortal =true;
	}
	
	if ( isCmsPreviewPage() || isPreviewOnPortal ) {			
		var indexRoot = path.indexOf("Debeka-Auftritte/"); //
		indexRoot += 17;
		projectPath = path.substring(indexRoot, path.length);
		indexProjectEnd = projectPath.indexOf('/');
		indexRoot += indexProjectEnd
		projectPath = path.substring(0, indexRoot);
		isPreviewOnPortal =false;
		
	}
	if (path.indexOf("file:///")>-1) {
    	var indexRoot = path.indexOf("Debeka-Prototype/");
    	projectPath = "file:///" + path.substring(8, indexRoot) + "Debeka-Prototype";
  }
	return projectPath;
}
/* replace top link, if page is a preview page */
function setPreviewSeitenanfang(topLink){
  if (isCmsPreviewPage()){
	  var aTopLink = document.getElementById("topLink");
	  if (aTopLink!= null){
	     aTopLink.href=topLink;
	  }
  }
}
/* replace all links, if page is a preview page */
function setHref4Preview(){
	var aNodes = document.getElementsByTagName("a");
	for (var i = 0; i < aNodes.length; i++) {
	  aNodes[i].href = getPreviewContext() + aNodes[i].href;
	}
}	
/* replace all images src, if page is a preview page */
function setImgSrc4Preview(){
  var imgNodes = document.getElementsByName("imgSrc");
  var isPPage = (isPreviewPage() && (imgNodes!=null));
  if (isPPage){
    for (var i = 0; i < imgNodes.length; i++) {
      var imgsrc = imgNodes[i].src;
    	var indexRoot = imgsrc.indexOf("//") +2;
    	imgsrc = imgsrc.substring(indexRoot, imgsrc.length);
    	indexRoot = imgsrc.indexOf("/");
    	imgsrc = imgsrc.substring(indexRoot, imgsrc.length);
    	imgNodes[i].src = getPreviewContext() + imgsrc;
    }
  }
}	
/* */
function getUrefPrefix() {
	var currentHref = window.location.href;
   	var atPosition = currentHref.search(/de.debeka.intranet.portal/);
   	var urefPrefix = "";
   	if (atPosition != -1) {
    		urefPrefix = "";
   	}
   	else {
    		atPosition = currentHref.search(/intranet/);
        if (atPosition != -1){
  	  	   if ((currentHref.charAt(atPosition-1) == "/") && (currentHref.charAt(atPosition-2) != "/")){
			         urefPrefix = currentHref.substring(0, atPosition - 1);
   		     }
        }
        else if (currentHref.indexOf("mastertemplate") >= 0){
            atPosition = currentHref.indexOf("mastertemplate") + 17;
            urefPrefix = currentHref.substring(0, atPosition);
        }
   	}
}

/* replace 'beschreibung' image, if page is a portal preview page */
function setPreviewContextBeschreibung(relativPath){
	var previewContext = getPreviewContext();
	if (previewContext != ""){
		var desc =document.getElementById("beschreibung");
		var styl = "url(" + previewContext + relativPath + ")";
		desc.style.backgroundImage=styl;
	}
}
/*TODO: replace call of FensterOeffnen with openHelp*/
/* open popup window for help */
function FensterOeffnen (Adresse) {
  if (isRedactionPortalPreviewPages()){
     return true;
  }
  var l=0;
  var w=0;
  var h=0;
  if (navigator.appName=='Microsoft Internet Explorer'){
  	w=630;
    h=605;
  }else if (navigator.appName=='Netscape'){
    w=630;
    h=602;
  }
  else {
    w=630;
    h=603;
  }
  l = screen.availWidth-w;
  properties = "width="+ w +",height=" + h + ",left="+l+",top=0,menubar=no,resizable=yes,scrollbars=yes,toolbar=no,status=no";
  Fenster1 = window.open( getPreviewContext() + Adresse, "Hilfe", properties);
  Fenster1.focus();
  /*prepareHelp(Fenster1,w, h);*/
  return false;
}
/* resize window for help */
function resizeHelpWindow(){
  var l=0;
  var w=0;
  var h=0;
  if (navigator.appName=='Microsoft Internet Explorer'){
    w=630;
    h=605;
  }else if (navigator.appName=='Netscape'){
    w=630;
    h=602;
  }
  else {
    w=630;
    h=603;
  }
  prepareHelp(this,w, h);
}
/* open popup window for help */
function openHelp (Adresse) {
  if (isRedactionPortalPreviewPages()){
     return true;
  }
	if (navigator.appName=='Microsoft Internet Explorer'){
		Fenster1 = window.open( getPreviewContext() + Adresse, "Hilfe", "menubar=no,resizable=no,scrollbars=no,toolbar=no,status=no,top=20;width=639,height=635,left=100");
		Fenster1.focus();
		prepareHelp(Fenster1, 639, 635);
	} else if (navigator.appName=='Netscape'){
		Fenster1 = window.open( getPreviewContext() + Adresse, "Hilfe", "menubar=no,resizable=no,scrollbars=no,toolbar=no,status=no,top=20;width=635,height=650,left=100");
		Fenster1.focus();
		prepareHelp(Fenster1, 635, 650);
	}
	else {
		Fenster1 = window.open( getPreviewContext() + Adresse, "Hilfe", "menubar=no,resizable=no,scrollbars=no,toolbar=no,status=no,top=20;width=635,height=650,left=100");
		Fenster1.focus();
		prepareHelp(Fenster1, 635, 650);
	}
	return false;
}
/* resize window for help */
function prepareHelp(win, dimX, dimY){
	win.resizeTo(dimX, dimY);
	var left = screen.availWidth-dimX;
	win.moveTo(left, 0);
}

/* switch color for hover effect */
function switchHover(over, node){
	if (over == 'over'){
		node.style.backgroundColor='#ED1C29';
		node.style.color='#FFFFFF';
	}else {
		node.style.backgroundColor='#98C2DD';
		node.style.color='black';
	}
}

