/* HANDLING FOR INTERACTIVE  IMAGES WITH  IMAGE MAPS */

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) { //v4.01
  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);
  if(!x && d.getElementById) x=d.getElementById(n); 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 MM_goToURL() { //v3.0
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}


var accordionIsAnimated = false;

$(document).ready(function(){
	
	/* ACCORDION ANIMATION*/
	$('.accordion-container-large').mouseenter(function() {
		if($(this).hasClass('xpnd') || accordionIsAnimated == true) {
			return;
		}
		accordionIsAnimated = true;
			
		var expanded = $('.accordion-container-large.xpnd');
		var expandedWidth = expanded.width();
		var current = $(this);
		var currentWidth = current.width();
		
		var expandedSmall = $('.accordion-container-large.xpnd .accordion-container-small');
		var currentSmall = $(this).children('.accordion-container-small');
		
		current.animate({width: "490px"},
			{
				step: function(now, fx) {
		        	if (fx.prop == "width") {
		               	expanded.css("width", 490 + 152 - now);
		        	}
		     	},
				complete: function() {
					current.addClass('xpnd');
					expanded.removeClass('xpnd');
					accordionIsAnimated = false;
				}
			}
		);
		expandedSmall.fadeIn();
		currentSmall.fadeOut();
	});
	
	
	/* TREEVIEW 
	
		tree navigation  of sub navigation
	
	*/
	
	$(".filetree").treeview({animated: true});
	
	
	/* FANCYBOX 
	
		'lightbox' for web forms
		
	*/	
	
	$("a.fancybox-mail-link").fancybox({
		'showCloseButton' : false		,
		'onComplete' : function () {    if (document.getElementById("subject").value=="")
		                                    document.getElementById("subject").focus();
										else
										    document.getElementById("message").focus();  }
	});
	
	$("a.fancybox-mail-link-2").fancybox({
		'showCloseButton' : false		,
		'onComplete' : function () {    if (document.getElementById("subject-2").value=="")
		                                    document.getElementById("subject-2").focus();
										else
										    document.getElementById("message-2").focus();  }
	});

	$("a.fancybox-download-link").fancybox({
		'showCloseButton' : false		,
		'onComplete' : function () { document.getElementById("name-download").focus();  }
	});

	$("#fancybox-mail-form .btn-cancel").click(function(){
		$.fancybox.close();
	});
	
	$("#fancybox-mail-form-2 .btn-cancel").click(function(){
		$.fancybox.close();
	});
	
	$("#fancybox-form-download .btn-cancel").click(function(){
		$.fancybox.close();
	});
	
	$("a#fancybox-thanks-link").fancybox({
	'showCloseButton' : true
	});

	$("#fancybox-thanks-form .btn-cancel").click(function(){
		$.fancybox.close();
	});

	$("a#fancybox-download-thanks-link").fancybox({
	'showCloseButton' : true
	});

	$("#fancybox-download-thanks-form .btn-cancel").click(function(){
		$.fancybox.close();
	});

	element = document.getElementById("status");
    if (element && (element.value=="inputOK" || element.value=="send"))
	{
	   element.value="init";
       $("a#fancybox-thanks-link").click();
	}
	else
	{
	   element = document.getElementById("status-2");
       if (element && (element.value=="inputOK" || element.value=="send"))
	   {
	      element.value="init";
          $("a#fancybox-thanks-link").click();
	   }
	}

	element = document.getElementById("status-download");
    if (element && element.value=="inputOK")
	{
	   element.value="init";
       $("a#fancybox-download-thanks-link").click();
	}

		/* FANCYBOX 
	
		'lightbox' for images
		
	*/
	/* presentation of the caption of the image inside the fancybox */
	function formatTitle(title, currentArray, currentIndex, currentOpts) {
    return '<div class="img_title">' + (title && title.length ? '' + title + '' : '' ) + '</div>';
}

	
	/* This is basic - uses default settings */
	
	$("a.grouped_elements").fancybox({
		'hideOnContentClick': true,
		'titlePosition' : 'inside',
		'titleFormat': formatTitle,
		'speedIn' : 1000,
		'hideOnOverlayClick' : true,
		'showNavArrows' : true
	});

	/* LANGUAGE SELECT 
	
		settings for the width of the language menue
	
		*/
		
		var lang_width = $('#language-select a').width();
		
		$('#aux-nav ul').css('display','block');
		
		var lang_menu_width = $('#language-select li a').width();
		
		$('#aux-nav ul').css('display','none');
		
		if(lang_width >= lang_menu_width) {
		
			$('#language-select li a').css('width', lang_width +10);
		
		} else {
			
			$('#language-select a').css('width', lang_menu_width);
			
		}
	

	
	/* LANGUAGE SELECT FLYOUT 
	
		flyout for language selection
	
	*/
	
	$('#language-select').mouseover(function(){
		
		$('#language-flyout').show();
		
		
	}).mouseleave(function(){
		
		$('#language-flyout').hide();
		
	});
	
	/* SEARCH INPUT
	
		removal of label if focus is set
	
	*/
	var label = $('#searchbar input').val();
	
	$('#searchbar input').focus(function(){
			
			if($(this).val() == label){
					$(this).val("");
				}
			
			
		}).blur(function(){
			
			if($(this).val() == ""){
					$(this).val(label);
				}
		
		});
	
	
});

needed_normal = new Array("subject", "message", "company-name", "name-last", "name-first", "e-mail");
needed_webmaster = new Array("subject", "message", "e-mail");
needed_US = new Array("subject-2", "message-2", "name-last-2", "name-first-2", "e-mail-2", "company-name-2", "company-profile-2", "company-size-2");
needed_IN = new Array("subject-2", "message-2", "name-last-2", "name-first-2", "e-mail-2", "company-name-2");
needed_DE = new Array("subject", "message", "company-name", "name-last", "name-first", "e-mail", "phone");

function getNeededFields()
{
  element = document.getElementById("contact-ID");
  if (element.value == "AF-US")
       return needed_US;
  else if (element.value == "AF-IN")
       return needed_IN;
  else if (element.value == "AF-DE_Training" || element.value == "AF-DE_Support")
       return needed_DE;
  else if (element.value == "AF-Webmaster")
       return needed_webmaster;
  else
      return needed_normal;
}

function chkFormular () {
  var focus = false;
  var returnValue = true;
  var element;

  var needed = getNeededFields();

  for (var i=0; i < needed.length; i++)
  {
    element = document.getElementById(needed[i]);
    arrow = document.getElementById(needed[i] + "-check");

    ok = true;
    if (element.value == "")
       ok = false;
    else if (element.type=='radio')
    {
       var radioButtons = document.getElementsByName(element.name);
       ok = false;
       for (var j = 0; j < radioButtons.length;j++)
       {
          if (radioButtons[j].checked)
             ok = true;
       }
    }
    else if (needed[i] == "e-mail" || needed[i] == "e-mail-2")
    {
       var email = element.value;
       var mailat=email.indexOf("@");
       var maildot=email.lastIndexOf(".");

       if (email == "" || mailat < 1 || maildot < mailat + 2 || maildot > email.length - 2)
          ok = false;
    }

    if (ok != true)
    {
      if (element.className == "textsmall textentry")
        element.className = "textsmall textentry missing-entry";
      else if (element.className == "textlarge textentry")
        element.className = "textlarge textentry missing-entry";
      else if (element.className == "")
        element.className = "missing-entry";

      arrow.className = "missing missing-entry";

      if (!focus)
      {
        element.focus();
        focus = true;
      }
      returnValue  = false;
    }
    else
    {
      if (element.className == "textsmall textentry missing-entry")
        element.className = "textsmall textentry";
      else if (element.className == "textlarge textentry missing-entry")
        element.className = "textlarge textentry";
      else if (element.className == "missing-entry")
        element.className = "";

      arrow.className = "missing";
    }
  }

  if (returnValue)
  {
     var entries;
     var mailtextElement;
      
     var contact = document.getElementById("contact-ID");
     element = document.getElementById("status");

     if (contact.value == "AF-US" || contact.value == "AF-IN")
     {
       element = document.getElementById("status-2");
       entries = new Array("subject-2", "message-2", "name-last-2", "name-first-2", "e-mail-2", "phone-2", "company-name-2", "position-2", "company-profile-2", "company-size-2", "customers-2", "street-2", "postal-code-2", "state-2", "country-2");
       mailtextElement = document.getElementById("mailtext-2");
     }
     else
     {
        entries = new Array("subject", "message", "company-name", "position", "name-last", "name-first", "street", "postal-code", "state", "country", "e-mail", "phone");
        mailtextElement = document.getElementById("mailtext");
     }

     element.value = "inputOK";

     var mailtext = "";
     for (var i = 0; i < entries.length; i++)
     {
        element = document.getElementById(entries[i]);
        var labeltext = document.getElementById(entries[i] + '-label').innerHTML;
        if (labeltext.substr(labeltext.length - 1, 1) == '*')
          labeltext = labeltext.substr(0, labeltext.length - 1);

        var value = "";
        if (element.className == "first_radio_button")
        {
           var radioButtons = document.getElementsByName(element.name);
           for (var j = 0; j < radioButtons.length; j++)
           {
              if (radioButtons[j].checked)
              {
                 var buttonlabel = radioButtons[j].nextSibling;
                 value = buttonlabel.innerHTML;
                 value = value.replace(/&gt;/, ">");
                 break;
              }
           }
        }
        else
            value = element.value;
        if (entries[i].indexOf("message") >=0)
            mailtext += "\n" + labeltext + ":\n" + value + '\n\n';
        else
            mailtext += labeltext + ": " + value + '\n';
     }
     mailtextElement.value = mailtext;
  }
  return returnValue;
}


function resetEmail()
{
    var elementsId;
    var form = document.getElementById("mail-form");
    var element = document.getElementById("contact-ID-2");
    var subjectElement;
    if(element && element.value != "")
    {
        subjectElement = document.getElementById("subject-2");
        elementsId = new Array("message-2", "name-last-2", "name-first-2", "position-2", "e-mail-2", "phone-2", "company-name-2", "customers-2", "street-2", "postal-code-2", "state-2", "country-2");

        var radioButtons = document.getElementsByName("company-profile");
        for (var j = 0; j < radioButtons.length; j++)
        {
           radioButtons[j].checked = false;
        }
        radioButtons = document.getElementsByName("company-size");
        for (var j = 0; j < radioButtons.length; j++)
        {
           radioButtons[j].checked = false;
        }
    }
    else
    {
        elementsId = new Array("message", "company-name", "name-last", "name-first", "position", "street", "postal-code", "state", "country", "e-mail", "phone");
        subjectElement = document.getElementById("subject");
    }

    for (var j = 0; j < elementsId.length; j++)
    {
       element = document.getElementById(elementsId[j]);
       element.value="";
    }

    var all = document.getElementsByTagName("*");
    for (var j = 0; j < all.length; j++)
    {
       element = all[j];
       if (element.className == "textsmall textentry missing-entry")
          element.className = "textsmall textentry";
       else if (element.className == "textlarge textentry missing-entry")
          element.className = "textlarge textentry";
       else if (element.className == "missing-entry")
          element.className = "";
       else if (element.className == "missing missing-entry")
          element.className = "missing";
    }
    subjectElement.value = "";
}


function initEmail(contact, subject)
{
    resetEmail();

    var element = document.getElementById("contact-ID");
    element.value = contact;

    var subjectID = "subject";
    if (contact == "AF-US" || contact == "AF-IN")
    {
        element = document.getElementById("contact-ID-2");
        element.value = contact;
        subjectID = "subject-2";
    }
    element = document.getElementById(subjectID);
    element.value=subject;
    
    var labels = document.getElementsByTagName("Label");
    for(var i=0; i < labels.length; i++)
    {
       text = labels[i].innerHTML;
       if (text.substr(text.length - 1, 1) == '*')
          labels[i].innerHTML = text.substr(0, text.length - 1);
    }

    var needed = getNeededFields();
    for (var i=0; i < needed.length; i++)
    {
      element = document.getElementById(needed[i] + '-label');
      element.innerHTML += '*';
    }
}

