window.addEvent('domready', function() { 

   var myAccordion = new Accordion($('FotoConcept'), 'h4.FotoConceptToggler', 'div.FotoConceptContent', {
      onActive: function(toggler, element){
         toggler.setStyle('color', '#900');
      },
      onBackground: function(toggler, element){
         toggler.setStyle('color', '#666');
      }
   });
});

window.addEvent('domready', function() { 

   var myAccordion = new Accordion($('SmallAccordion'), 'h6.stoggler', 'p.scontent', {
      onActive: function(toggler, element){
         toggler.setStyle('color', '#900');
      },
      onBackground: function(toggler, element){
         toggler.setStyle('color', '#000');
      }
   });
});

window.addEvent('domready', function() { 

   var myAccordion = new Accordion($('Accordion'), 'h4.toggler', 'p.content', {
      onActive: function(toggler, element){
         toggler.setStyle('color', '#900');
      },
      onBackground: function(toggler, element){
         toggler.setStyle('color', '#666');
      }
   });
});

window.addEvent('domready', function() { 

   var myAccordion = new Accordion($('CodingTypes'), 'h4.CodingTypesToggler', 'div.CodingTypesContent', {
      onActive: function(toggler, element){
         toggler.setStyle('color', '#900');
      },
      onBackground: function(toggler, element){
         toggler.setStyle('color', '#666');
      }
   });
});

function BoxScroll(obj, evt, content)
{
   var content = document.getElementById(''+content+'');
   var mouseY = (evt.offsetY) ? evt.offsetY : evt.layerY;
   var pos = mouseY / obj.offsetHeight;
   mouseY = (pos==0) ? mouseY -5 : mouseY +5;
   if(pos>0)
   {
      var marginY = ((content.offsetHeight - obj.offsetHeight+20) * -pos) + 'px';
      content.style.marginTop = marginY;
   }
}

function BoxScrollReset(obj, evt, content)
{
   var content = document.getElementById(''+content+'');
   content.style.marginTop = 0;
}

function ShowSubMenu(id)
{
   tid = 'AMWMainMenuTop'+id;
   sid = 'AMWMainMenuSub'+id;

   for (var i = 0; i<=10; i++)
      if (document.getElementById('AMWMainMenuSub'+i))
          document.getElementById('AMWMainMenuSub'+i).style.display='none';

   if(document.getElementById(sid))
   {
      document.getElementById(sid).style.display='block';
      document.getElementById('AMWMainMenuActive').className='AMWMainMenuActive';
   }
}


function SearchQ(thestatus)
{
	if(thestatus==1)
	{
		document.getElementById('AMWInterfaceSearchQ').style.color='#00C';

		if(document.getElementById('AMWInterfaceSearchQ').value == 'suchen...')
		   document.getElementById('AMWInterfaceSearchQ').value  = '';
	}
	
	if(thestatus==0)
	{
		document.getElementById('AMWInterfaceSearchQ').style.color='#CCC';

		if(document.getElementById('AMWInterfaceSearchQ').value == '')
		   document.getElementById('AMWInterfaceSearchQ').value  = 'suchen...';		
	}
}


/******************************************************************************************************************************************
   Add HR Code to target
*/
function AMJ_hrc_SetCode(InputForm,InputField,Tag,Code)
{
   var StartTag = "["+Tag+"]";
   var EndTag   = "[/"+Tag+"]";
   if(Code=="") var Code = "["+Tag+"][/"+Tag+"] ";
		
   if(document.selection)
   {
      var str = document.selection.createRange().text;
      document.forms[InputForm].elements[InputField].focus();
      var Obj = document.selection.createRange();
      Obj.text = StartTag + str + EndTag;
      return;
   }
   else if ((typeof document.forms[InputForm].elements[InputField].selectionStart) != 'undefined')
   {
      var Obj = document.forms[InputForm].elements[InputField];
      var selLength    = Obj.textLength;
      var selStart     = Obj.selectionStart;
      var selEnd       = Obj.selectionEnd;
      var oldScrollTop = Obj.scrollTop;

      var s1 = (Obj.value).substring(0,selStart);
      var s2 = (Obj.value).substring(selStart, selEnd)
      var s3 = (Obj.value).substring(selEnd, selLength);

      Obj.value = s1 + StartTag + s2 + EndTag + s3;
      Obj.selectionStart = s1.length + s2.length + StartTag.length;
      Obj.selectionEnd   = s1.length + s2.length + StartTag.length;
      Obj.focus();
      return;
   }
   else
   {
      if(document.forms[InputForm].elements[InputField].createTextRange && document.forms[InputForm].elements[InputField].caretPos) 
      {
         var caretPos = document.forms[InputForm].elements[InputField].caretPos;
         caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? Code + ' ' : Code;
      } else {
         document.forms[InputForm].elements[InputField].value+=Code
      }	
      document.forms[InputForm].elements[InputField].focus();
      return;
   }
}


/******************************************************************************************************************************************
   Add HR special Code to target
*/
function AMJ_hrc_SetSpecialCode(InputForm,InputField,OpenTag,CloseTag)
{
   var StartTag = OpenTag;
   var EndTag   = CloseTag;
		
   if(document.selection)
   {
      var str = document.selection.createRange().text;
      document.forms[InputForm].elements[InputField].focus();
      var obj = document.selection.createRange();
      obj.text = StartTag + str + EndTag;
      return;
   }
   else if((typeof document.forms[InputForm].elements[InputField].selectionStart) != 'undefined')
   {
      var Obj = document.forms[InputForm].elements[InputField];
      var selLength    = Obj.textLength;
      var selStart     = Obj.selectionStart;
      var selEnd       = Obj.selectionEnd;
      var oldScrollTop = Obj.scrollTop;

      var s1 = (Obj.value).substring(0,selStart);
      var s2 = (Obj.value).substring(selStart, selEnd)
      var s3 = (Obj.value).substring(selEnd, selLength);

      Obj.value = s1 + StartTag + s2 + EndTag + s3;
      Obj.selectionStart = s1.length + s2.length + StartTag.length;
      Obj.selectionEnd   = s1.length + s2.length + StartTag.length;
      Obj.focus();
      return;
   }
   else
   {
      Code = StartTag+EndTag;
      if(document.forms[InputForm].elements[InputField].createTextRange && document.forms[InputForm].elements[InputField].caretPos) 
      {
         var caretPos = document.forms[InputForm].elements[InputField].caretPos;
         caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? Code + ' ' : Code;
      } else {
         document.forms[InputForm].elements[InputField].value+=Code
      }	
      document.forms[InputForm].elements[InputField].focus();
      return;
   }
}


/******************************************************************************************************************************************
   Add smilie to textarea
*/
function AMJ_SetSmile(InputForm,InputField,Smilie)
{
   if(document.forms[InputForm].elements[InputField].createTextRange) 
   {
      document.forms[InputForm].elements[InputField].focus();
      document.selection.createRange().duplicate().text = Smilie;
   }   
   else if ((typeof document.forms[InputForm].elements[InputField].selectionStart) != 'undefined')
   {
      var Obj          = document.forms[InputForm].elements[InputField];
      var selEnd       = Obj.selectionEnd;
      var ObjLen       = Obj.value.length;
      var txtbefore    = Obj.value.substring(0,selEnd);
      var txtafter     = Obj.value.substring(selEnd, ObjLen);
      var oldScrollTop = Obj.scrollTop;

      Obj.value = txtbefore + Smilie + txtafter;

      Obj.selectionStart = txtbefore.length + Smilie.length;
      Obj.selectionEnd   = txtbefore.length + Smilie.length;
      Obj.scrollTop      = oldScrollTop;

      Obj.focus();
   }
   else
   {
      document.forms[InputForm].elements[InputField].value += Smilie;
      document.forms[InputForm].elements[InputField].focus();
   }
}


/******************************************************************************************************************************************
   write spider secured email links
*/
function AMJ_WriteEmailLink(name, domain, title)
{
   document.write('<a href=\"mailto:' + name + '@' + domain + '\">');
   if(title=="")
   document.write(name + '@' + domain + '</a>');
   else
   document.write( + title + '</a>');
}


/******************************************************************************************************************************************
   form field style change onblur/focus
*/
function AMJ_SetFormStyle(theObject, InputClass)
{
	theObject.className=''+InputClass+'';
}


function AMJ_windowresize()
{
	var width, Height;
	if (self.document.AMPImage.complete == true) 
	{
		width=self.document.AMPImage.width;
		Height=self.document.AMPImage.Height;
		self.resizeTo(width, Height);
		var count=0;
		while (count<600)
		{
			count=count+1;
		}
	} else {
		setTimeout("AMJ_windowresize()",300);
	}
}

function checkPassword(form,field1,field2)
{
    // Gets the elements pointers
    if (the_form.name == 'addUserForm' || the_form.name == 'chgPassword') {
        var pswd_index = 1;
        var pswd1_name = 'pma_pw';
        var pswd2_name = 'pma_pw2';
    } else {
        pswd_index     = 2;
        pswd1_name     = 'new_pw';
        pswd2_name     = 'new_pw2';
    }

    // Validates
    if (the_form.elements['nopass'][pswd_index].checked) {
        if (the_form.elements[pswd1_name].value == '') {
            alert(jsPasswordEmpty);
            the_form.elements[pswd2_name].value = '';
            the_form.elements[pswd1_name].focus();
            return false;
        } else if (the_form.elements[pswd1_name].value != the_form.elements[pswd2_name].value) {
            alert(jsPasswordNotSame);
            the_form.elements[pswd1_name].value  = '';
            the_form.elements[pswd2_name].value = '';
            the_form.elements[pswd1_name].focus();
            return false;
        } // end if...else if
    } // end if

    return true;
}

function AMJ_isEmail(email)
{
   var check = false;
   var result = false;
   if(typeof(RegExp) == 'function')
   {
      var x = new RegExp('abc');
      if(x.test('abc') == true) check = true;
   }

   if(check == true)
   {
      expression = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+
                              '(\\@)([a-zA-Z0-9\\-\\.]+)'+
                              '(\\.)([a-zA-Z]{2,4})$');
      result = (expression.test(email));
   } else {
      result = (email.search('@') >= 1 &&
                email.lastIndexOf('.') > s.search('@') &&
                email.lastIndexOf('.') >= s.length-5)
   }
   return(result);
}

function AMJ_WordLimitCounter(field, countfield, limit) 
{
	WordLimitCounter=0;
	for (x=0;x<field.value.length;x++) 
	{
		if(field.value.charAt(x) == " " && field.value.charAt(x-1) != " ")
		{
		WordLimitCounter++
		}
		if(WordLimitCounter > limit) 
		{
			field.value = field.value.substring(0, x);
		} else {
			countfield.value = limit - WordLimitCounter;
		}
	}
}


function AMJ_CharacterLimitCounter(field, countfield, limit) 
{
	if(field.value.length > limit)
	{
		field.value = field.value.substring(0, limit);
	} else {
		countfield.value = limit - field.value.length;
	}
}
  


function AMJ_settopicimage(Image) 
{
	document.AMG_signin.post_topicicon.value = Image;
	document.post_topicicon.src=Image;
}

var ImageMenu = new Class({
	
	getOptions: function(){
		return {
			onOpen: false,
			onClose: Class.empty,
			openWidth: 200,
			transition: Fx.Transitions.quadOut,
			duration: 400,
			open: null,
			border: 0
		};
	},

	initialize: function(elements, options){
		this.setOptions(this.getOptions(), options);
		
		this.elements = $$(elements);
		
		this.widths = {};
		this.widths.closed = this.elements[0].getStyle('width').toInt();
		this.widths.openSelected = this.options.openWidth;
		this.widths.openOthers = Math.round(((this.widths.closed*this.elements.length) - (this.widths.openSelected+this.options.border)) / (this.elements.length-1))
		
		
		this.fx = new Fx.Elements(this.elements, {wait: false, duration: this.options.duration, transition: this.options.transition});
		
		this.elements.each(function(el,i){
			el.addEvent('mouseenter', function(e){
				new Event(e).stop();
				this.reset(i);
				
			}.bind(this));
			
			el.addEvent('mouseleave', function(e){
				new Event(e).stop();
				this.reset(this.options.open);
				
			}.bind(this));
			
			var obj = this;
			
			el.addEvent('click', function(e){

				if(obj.options.onOpen){
					new Event(e).stop();
					if(obj.options.open == i){
						obj.options.open = null;
						obj.options.onClose(this.href, i);
					}else{
						obj.options.open = i;
						obj.options.onOpen(this.href, i);
					}
					
					
				}
				
			})
			
		}.bind(this));
		
		if(this.options.open){
			if($type(this.options.open) == 'number'){
				this.reset(this.options.open);
			}else{
				this.elements.each(function(el,i){
					if(el.id == this.options.open){
						this.reset(i);
					}
				},this);
			}
		}
		
	},
	
	reset: function(num){
		if($type(num) == 'number'){
			var width = this.widths.openOthers;
			if(num+1 == this.elements.length){
				width += this.options.border;
			}
		}else{
			var width = this.widths.closed;
		}
		
		var obj = {};
		this.elements.each(function(el,i){
			var w = width;
			if(i == this.elements.length-1){
				w = width+5
			}
			obj[i] = {'width': w};
		}.bind(this));
		
		if($type(num) == 'number'){
			obj[num] = {'width': this.widths.openSelected};
		}
				
		this.fx.start(obj);
	}
	
});

ImageMenu.implement(new Options);
ImageMenu.implement(new Events);



   function initTextBlock(textBlockId, activeNode, fadeActive)
   {
      if(textBlockId)
      {
         var theBlockid = textBlockId;
         var activeNode = activeNode-1;
         // a test to avoid some old browser
         if ( browser.isDOM1 
         && !( browser.isMac && browser.isIE ) 
         && !( browser.isOpera && browser.versionMajor < 7 )
         && !( browser.isIE && browser.versionMajor < 5 ) )
         {
            var textBlockElement = document.getElementById(''+textBlockId+'');
            var textBlockItems   = textBlockElement.getElementsByTagName('li');
            textBlockElement.className='textblock';

            for ( var i=0; i<textBlockItems.length; i++ )
            {
               if(textBlockItems.item(i).id=='')
               textBlockItems.item(i).setAttribute( 'id', ""+textBlockId+"li"+i );

               if(i == activeNode)
               {
                  var nodeHeight = textBlockItems.item(i).offsetHeight;
                  var nodeActive = textBlockItems.item(i).id;
               }

               if(browser.isIE)
               {
                  eval("textBlockItems.item(i).onmouseover=TextBlockShow");
               } else {
                  textBlockItems.item(i).addEventListener('mouseover', TextBlockShow, true );
               }

               for(var j=0; j<textBlockItems.item(i).childNodes.length; j++)
               {
                  if(i != activeNode || fadeActive)
                  {
                     if(textBlockItems.item(i).childNodes.item(j).nodeName != 'H3')
                        if(textBlockItems.item(i).childNodes.item(j).style)
                           textBlockItems.item(i).childNodes.item(j).style.display='none';
                  } else {
                  	textBlockItems.item(i).childNodes.item(j).className='active';
                  }
               }
            }
            if(activeNode && fadeActive)
            {
               TextBlockFade(nodeActive, nodeHeight);
            }
         }
      }
   }

   function TextBlockShow()
   {
      var currNode = this;
      var textBlockElement = currNode.parentNode;
      var textBlockItems   = textBlockElement.getElementsByTagName('li');

      for (var i=0; i<textBlockItems.length; i++ )
      {
         var textBlockItem = textBlockItems.item(i);

         textBlockItems.item(i) == currNode ? displayStatus = 'block' : displayStatus = 'none';

         for(var j=0; j<textBlockItem.childNodes.length; j++)
         {
            if(textBlockItem.childNodes.item(j).nodeName != 'H3')
            {
               if(textBlockItem.childNodes.item(j).style)
               {
                  textBlockItem.childNodes.item(j).style.display=''+displayStatus+'';
               } else {
                  textBlockItem.childNodes.item(j).innerText='';
               }
            } else {
               if(textBlockItem.id == currNode.id)
                  textBlockItem.childNodes.item(j).className='active';
               else
                  textBlockItem.childNodes.item(j).className='';
            }
         }
      }
   }

   function TextBlockFade(activeNode, nodeHeight)
   {
      var textBlockItem = document.getElementById(activeNode);
      var currHeight = textBlockItem.offsetHeight;

      textBlockItem.style.height=''+currHeight+'px';
      textBlockItem.style.overflow='hidden';

      for(var j=0; j<textBlockItem.childNodes.length; j++)
      {
         if(textBlockItem.childNodes.item(j).style)
            textBlockItem.childNodes.item(j).style.display='block';

         if(textBlockItem.childNodes.item(j).name='H3')
            textBlockItem.childNodes.item(j).className='active';
      }

      for(i=currHeight; i<=nodeHeight;i++)
      {
      	setTimeout(textBlockItem.style.height=''+i+'px', 500);
      }
   }
