<!--
//  ////////////////////////////////////////////////////////////////////////////////
//  vars ///////////////////////////////////////////////////////////////////////////
  var d         = document;
  var l         = location;
  var n         = navigator;
  var p         = parent;
  var w         = window;

  var ua        = n.userAgent.toLowerCase();
  var dom       = (d.getElementById)? 1:0;
  var ie        = (ua.indexOf("msie")!=-1 &&
                   ua.indexOf("opera")==-1)? 1:0;

//  ////////////////////////////////////////////////////////////////////////////////
//  functions //////////////////////////////////////////////////////////////////////
  var getId = "getElementById", getTag = "getElementsByTagName";
function obj(myObj,prop,val){
  if(!dom)
    return;
  if(!d[getId](myObj) && !d[getTag](myObj)[0])
    return 0;
  if(obj.arguments.length == 3)
    d[getId](myObj)[prop] = d[getId](myObj).style[prop] = val;
  return (d[getTag](myObj)[0])? d[getTag](myObj) : d[getId](myObj);
}

function add_event(myObj,handler,addFunction){  //  add eventhandler onload to keep HTML clean
  addFunction = (ie)? new Function(addFunction) : addFunction;
  if(myObj)
    myObj.setAttribute(handler,addFunction);
}

function setMap(_this, show){
  setMap_(_this, show, obj('navLeft').getElementsByTagName('a'));
  setMap_(_this, show, obj('navRight').getElementsByTagName('a'));
  _this.style.borderBottom	= 'none';

  function setMap_(_this, show, arr_aNav){
    len_aNav  = arr_aNav.length;
    for(var i=0;i<len_aNav;i++){
      aThis  = arr_aNav[i];
      aThis.style.borderBottom	= 'solid 2px #4682B4';
      if(show && !aThis.href){
        add_event(aThis, "onclick", "hideMap(this);this.blur();");
        aThis.href  = "javascript:;"
      }
    }
  }
}

function showMap(_this){
  generator_      = obj('generator');
  form_           = generator_.getElementsByTagName('form')[0];
  if(!obj('map1')){
    formInnerHTML    = form_.innerHTML;
    form_.innerHTML  = "<div id='map1'>" +
                         obj('list').innerHTML + obj('text').innerHTML +
                       "</div>";
    setMap(_this, 1);
  }
}

function hideMap(_this){
  form_.innerHTML  = formInnerHTML;
  setMap(_this, 0);
}

function showBlurb(_this){
		//this is a mess because of hideMap() & showMap().
		//setting style or innerHTML for _this won't work anymore;
		//using obj only works if these two funcs
		//are called afterwards... %&$&!!
  obj('textIntroBlurb').style.display 			= 'block';
  obj('textIntroBlurbLink0').style.display 	= 'none';
  obj('textIntroBlurbLink1').style.display	= 'inline';
  hideMap(_this);showMap(_this);
}

function hideBlurb(_this){
	//see above
  obj('textIntroBlurb').style.display 			= 'none';
  obj('textIntroBlurbLink0').style.display 	= 'inline';
  obj('textIntroBlurbLink1').style.display	= 'none';
  hideMap(_this);showMap(_this);
}

function toggleTxt(_this, str){
	newTxt = eval(str);

	a	= '<a href="javascript:;" onclick="javascript:toggleTxt(this, \'' + str + '\');">';
	b	= '</a>';

	if(_this.innerHTML	== 'more'){
		oldTxt									    = _this.parentNode.innerHTML;
		oldTxt									    = oldTxt.replace(/<a[^>]+>more<.a>$/, '');
	  _this.parentNode.innerHTML	= oldTxt + '<br /><br />' + newTxt + a + 'less' + b;
	}	else {
	  _this.parentNode.innerHTML  = oldTxt + a + 'more' + b;
	}
}

function setSelectOther(this_){
	//triggered onload (id="selectOther") and onclick on obj (this_)
	//mk msg
  	msg = 'Chinese and Japanese may need additional ' +
        	'fonts installated for correct display';
  if(l.href.search(/[\/-]de$/) != -1)
  	msg = 'Chinesisch und Japanisch erfordern u.U. die Installation ' +
          'von zus. Schriften f&uuml;r richtige Anzeige';
  if(l.href.search(/[\/-]es$/) != -1)
    msg =	'Chino y jap&oacute;nes suelen necesitar la installaci&oacute;n ' +
          'de fuentes adicionales para una representaci&oacute;n correcta';
  obj('cjkDisclaimer').innerHTML = msg;
  

  display_  = (this_.selectedIndex >= 16)? 'visible' : 'hidden';
  obj('cjkDisclaimer').style.visibility = display_;
  
  //fixme: insane cludges
//  display_  = (this_.selectedIndex >= 16)? 'none' : 'block';
//  obj('socialMedia').style.display = display_;

	var el	                    = this_.selectedIndex.toString(10);
  obj('marks').disabled 			= (el.match(/^(2|4|5|15)$/))?						1:0;
  obj('Diacritics').disabled	= (el.match(/^(1|2|3|4|5|15|16|17)$/))?	1:0;
  obj('limit').disabled				= (el.match(/^(16|17)$/))? 							1:0;

  obj('marks').title 					= (el.match(/^(2|4|5|15)$/))?						'disabled':'';
  obj('Diacritics').title			= (el.match(/^(1|2|3|4|5|15|16|17)$/))?	'disabled':'';
  obj('limit').title					= (el.match(/^(16|17)$/))? 							'disabled':'';

//  obj('numSelect').checked = (checkDisabled)? true : false;

	//if '-' (= standard Lorem Ipsum) is selected
	//we check its radiobox
	var el	= (this_.selectedIndex == 0)? 'latin' : 'other';
	  obj(el).checked  = 'checked';
}

function setInputOther(){
	obj('other').checked	= 'checked';
}

function setDiacritics(){
	if(obj('divDiacritics')){
//  	obj('divDiacritics').style.display = 'block';
  	obj('Diacritics').disabled = false;
  	obj('limit').disabled = false;
  	obj('marks').disabled = false;
  	obj('numSelect').checked = true;
  	
 	}
  if(obj('selectOther')){
  	obj('selectOther').selectedIndex = 0;	
  }
}

function mkTextAreaIdTxt(loremInit){
	el	= obj('txt');
  // \n is ignored by opera
  if(el.innerText){//IE, Opera
		el.innerText += loremInit;
	} else {
		el.innerHTML += loremInit;
  }
  
  if(obj('formOptionsRight')){
  	obj('formOptionsRight').style.display	= 'block';
	}
}

/////////////////////////////
window.onload=function(){
	setSelectOther(d.getElementById('selectOther'));

	if(n.userAgent.indexOf("mmdev")!=-1){
	}
}
//  -->
