function f1setCookie(name, value, expires, path, domain, secure)
{
  var curCookie = name + "=" + escape(value) +
    ((expires) ? "; expires=" + expires.toGMTString() : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");

  document.cookie = curCookie;
}

function f1getCookie(name)
{
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  }
  else {
  begin += 2;
  }
  var end = document.cookie.indexOf(";", begin);
  if (end == -1) {end = dc.length;}
  return unescape(dc.substring(begin + prefix.length, end));
} 

//---------------------------------------

function getkey(e)
{
  if (window.event)
    return window.event.keyCode;
  else
    if (e)
      return e.which;
    else
      return null;
}

function getTRDisplay()
{
  if (navigator.appName=="Microsoft Internet Explorer") return "block";
  return "table-row";
}

var indexPageURL = null;

function getIndexPageURL()
{
  if (indexPageURL)
    return indexPageURL;

  var mainIndexPageURL = getHomeURL();

  if (itemID)
    for (var i = 0; i < menuItems.length; i++)
      if ((menuItems[i]) && (menuItems[i][1] == itemID)) {
        var j = 0;
        var level = getNavLevelIndex(menuItems[i][0]);

        while ((i - j - 1 >= 0) &&
               ((!menuItems[i - j]) || (menuItems[i - j][3] == '#') || (getNavLevelIndex(menuItems[i - j][0]) >= level)))
        {
          if (menuItems[i - j]) {
            var newLevel = getNavLevelIndex(menuItems[i - j][0]);

            if (newLevel < level)
              level = newLevel;
          }

          j++;
        }

        if ((j != 0) && (menuItems[i - j]) && (menuItems[i - j][3] != '#'))
          return menuItems[i - j][3];
        else
          return mainIndexPageURL;
      }

  return mainIndexPageURL;
}

function setIndexPageURL(URL)
{
  indexPageURL = URL;
}

function gotoIndexPage()
{
  window.location = getIndexPageURL();
}

//---------------------------------------

function getHomeURL()
{
  return '/';
}

function gotoHome()
{
  window.location = getHomeURL();
}

//---------------------------------------

function makeSitemapNavigation()
{

  function getLink(id,lclass) {
    var link = "";
    if (menu[id]==undefined) return link;
    var target = menu[id][3]? " target=\"_blank\"" : "";
    var aclass = (lclass!="")?" class=\""+lclass+"\"" : "";
    link = "<a href=\""+menu[id][1]+"\""+target+aclass+">"+menu[id][2]+"</a>";
    return link;
  }

  var classes = new Array("idlvl1","idlvl2","idlvl3");
  var classborder = " bordered";
  var lineclassborder = " bordered";
  
  var lineborder = "";

  var result = "";
  result += "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" width=\"100%\">";
  for (var i in menu)
  {
      
    if (menu[i][0]==0) {
      //1st level
      
      //if (lineborder=="")
        lineborder = lineclassborder;
      //else
        result += "<tr><td colspan=\"2\" class=\""+lineborder+"\"><!-- --></td></tr>";
      
      result += "<tr><td class=\"lvl1\">";
      result += getLink(i,classes[0]);
      result += "</td><td>";
      result += "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" width=\"100%\">";
      var borderbottom = "";
      for (var j in menu) {
        if (menu[j][0]==i) {
          //2nd level
          if (borderbottom=="")
            borderbottom = classborder;
          else
            result += "<tr><td colspan=\"2\" class=\""+borderbottom+"\"><!-- --></td></tr>";
          result += "<tr><td class=\"lvl2\">";          
          result += getLink(j,classes[1]);
          result += "</td><td class=\"lvl3\">";
          var lvl3count = 0;
          for (var k in menu)
          {
            if (menu[k][0]==j) {
              //3rd level
              result += getLink(k,classes[2])+"<br />";
              lvl3count++;
            }
          }
          if (lvl3count==0) {
            result += getLink(j,classes[1]);
          }
          result += "</td></tr>";
          
        }
      }
      
      result += "</table></td></tr>";
      
    }    
  }
  result += "</table>";
  document.writeln(result);
}

function getFlashMarkup(sSrc,nWidth,nHeight)	
{
    var swf_markup = '';
    swf_markup += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="'+nWidth+'" height="'+nHeight+'" id="allianz_f1_videoplayer" align="middle">';
    swf_markup += '<param name="allowScriptAccess" value="sameDomain" />';
    swf_markup += '<param name="allowFullScreen" value="true" />';
    swf_markup += '<param name="scale" value="noscale" />';
    swf_markup += '<param name="movie" value="'+sSrc+'" /><param name="quality" value="high" /><param name="wmode" value="transparent" /><param name="bgcolor" value="#cccccc" />';
    swf_markup += '<embed src="'+sSrc+'" quality="high" wmode="transparent" scale="noscale" bgcolor="#cccccc" width="'+nWidth+'" height="'+nHeight+'" name="allianz_f1_videoplayer" align="middle" allowScriptAccess="sameDomain" allowFullScreen="true" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />';
    swf_markup += '</object>';
    return swf_markup;
}
function writeFlash( sSrc, nWidth, nHeight)
{
    document.write( getFlashMarkup( sSrc, nWidth, nHeight));
}

function popupWindow(url, width, height, scroll, popupName)
{
  var leftScreen=(navigator.appName.indexOf("Microsoft")>=0)?(window.screenLeft+117):(window.screenX+117);
  var topScreen=(navigator.appName.indexOf("Microsoft")>=0)?(window.screenTop-100):(window.screenY-100);
  
  var winStats='toolbar=no,location=no,directories=no,menubar=no,';
  
  if (scroll)
    winStats+='scrollbars=yes,resizable=yes,';
  else
    winStats+='scrollbars=no,resizable=no,';
  
  winStats+=',width='+width+',height='+height;
  winStats+=',left='+leftScreen+',top='+topScreen;
  
  /*if (navigator.appName.indexOf("Microsoft")>=0) {
    winStats+=',left='+leftScreen+',top=0';
  } else {
    winStats+=',screenX='+leftScreen+',screenY=0';
  }*/

  var pn = popupName ? "PopUpWin" : popupName;

  /*PopUpWin=window.open("",pn,winStats);
  PopUpWin.close();*/
  PopUpWin=window.open(url,pn,winStats);
  
  if (!PopUpWin.opener) PopUpWin.opener = self;
  
  if (window.focus) PopUpWin.focus();

}

function showMore3(url, width, height,scroll,popupName) {
  popupWindow(url,width,height,scroll,popupName);
}


function HomepageBoxConfig( image, title, onclick_script, onclick_url)
{
    this.Url = onclick_url;
    this.Script = onclick_script;
    this.Title = title;
    this.Image = image;
    
    this.OnClick = function()
    {
        if ( this.Url)
        {
            window.location.href = this.Url;
        }
        else if ( this.Script)
        {
            eval( this.Script);
        }
    }
}

function HomepageBoxManager()
{
    this.Items = new Array();
    this.Add = function( key, image, title, onclick_script, onclick_url)
    {
        var item = new Array();
        item[0] = key;
        item[1] = new HomepageBoxConfig( image, title, onclick_script, onclick_url);
        this.Items[this.Items.length] = item;
    }
    this.GetItem = function( key)
    {
        for ( var i = 0; i < this.Items.length; i++)
        {
            if ( key == this.Items[i][0])
            {
                return this.Items[i][1];
            }
        }
        return undefined;
    }
    this.GetMarkup = function( key)
    {
        var item = this.GetItem( key);
        if ( "undefined" != typeof( item))
            return this.GetMarkupEx( item, key);
        else
            return '';
    }
    this.GetMarkupEx = function( box, key)
    {
        var clickthru = "javascript:HomepageBoxClick('"+key+"')";
        var swf = 'flash/alphaCover.swf?img='+encodeURIComponent(box.Image)+'&title='+encodeURIComponent(box.Title)+'&clickthru='+encodeURIComponent( clickthru);
        var markup = '';
        markup += '<div class="welcome_nav_box">';
        markup += getFlashMarkup( swf, 118, 66);
        markup += '</div>';
        return markup;
    }
    this.OnClick = function( key)
    {
        var item = this.GetItem( key);
        if ( "undefined" != typeof( item))
        {
            item.OnClick();
        }
    }
}

function HomepageBoxAdd( key, image, title, onclick_script, onclick_url)
{
    if ( "undefined" == typeof( window.gHomepageBoxManager))
    {
        window.gHomepageBoxManager = new HomepageBoxManager();
    }
    window.gHomepageBoxManager.Add( key, image, title, onclick_script, onclick_url);
}
function WriteHomepageBox( key)
{
    document.write( window.gHomepageBoxManager.GetMarkup( key));
}
function HomepageBoxClick( key)
{
    window.gHomepageBoxManager.OnClick( key);
}



//--- field hints

function formHints(frm, activeColor, hintColor) {
	this.frm = frm;
	this.activeColor = activeColor;
	this.hintColor = hintColor;
	this.add = formHints_add;	
	this.init = formHints_show;      
	if (this.frm.onsubmit) {
		frmonsub = this.frm.onsubmit;
		this.frm.onsubmit = function() {frmonsub(); formHints_clear(frm);}
	} else {                
		this.frm.onsubmit = function() {formHints_clear(frm);}
	}
}       

function formHints_add(el, msg, activeColor, hintColor) {
	hcol = hintColor?hintColor:this.hintColor;
	acol = activeColor?activeColor:this.activeColor;
	if (typeof(el)!='object') {               
		var elm = this.frm.elements[el]?this.frm.elements[el]:document.getElementById(el);
		if (elm) {
			elm.onfocus = function() { formHints_clearHint(elm, msg, acol); }
			elm.onblur = function() { formHints_showHint(elm, msg, hcol); }
		}
	} else {
		var elm = el;
		elm.onfocus = function() { formHints_clearHint(elm, msg, acol); }
		elm.onblur = function() { formHints_showHint(elm, msg, hcol); }
	}                  
	formHints_showHint(elm, msg, hcol);
}

function formHints_showHint(h_el, h_val, h_col) {
	if (h_el.value == '') {
		h_el.value = h_val;     
		h_el.style.color = h_col;
	}
}

function formHints_clearHint(h_el, h_val, h_col) {
	if (h_el.value == h_val) {
		h_el.value = '';      
		h_el.style.color = h_col;
	}
}  

function formHints_show(frm) {
	for (i=0; i<frm.elements.length; i++) {
		if (frm.elements[i].onblur) {
			frm.elements[i].onblur();
		}
	}
}

function formHints_clear(frm) {
	for (i=0; i<frm.elements.length; i++) {
		if (frm.elements[i].onfocus) {      
			frm.elements[i].onfocus();
		}
	}
}

