var active = null;
var onloads= new Array();
var ondomloads = new Array();

Event.observe( window, 'load', function() { InitEvonewsletter() } );
Event.observe( document, 'dom:loaded', function() { InitDomEvonewsletter() } );

function InitEvonewsletter() {
   for (var i=0 ; i<onloads.length ; i++ ) 
                  onloads[i]();  
}

function InitDomEvonewsletter() {
   for (var i=0 ; i<ondomloads.length ; i++ ) 
                  ondomloads[i]();  
}
         


function InitFormFieldHighlighting() {
  // hier wird das formular-element gekennzeichnet
  if ( 0 ) {
     $$( 'input','select' ).each( 
         function( el ) { 
            Event.observe( $(el), 'focus', 
               function() { 
                  el.style.border = '1px solid rgb( 239, 219, 0)';
                  el.style.backgroundColor='rgb(255, 247, 159)' ;
               }
            ); 
            Event.observe( $(el), 'blur', 
               function() { 
                  el.style.border = '';
                  el.style.backgroundColor = '' ;
               }
            );         
         } 
      ); 
  } 
  // hier wird das li - element gekennzeichnet
  if ( 1 ) {
      $$( 'input','select' ).each( 
         function( el ) { 
            Event.observe( $(el), 'focus', 
               function() { 
                  //el.up( 'li' ).style.borderBottom = '1px solid rgb( 239, 219, 0)';
                  el.up( 'li' ).style.borderTop = '1px solid rgb( 239, 219, 0)';                  
                  el.up( 'li' ).style.backgroundColor='rgb(255, 247, 159)' 
               }
            ); 
            Event.observe( $(el), 'blur', 
               function() { 
                  //el.up( 'li' ).style.borderBottom = '';
                  el.up( 'li' ).style.borderTop = '';    
                  el.up( 'li' ).style.backgroundColor = '' 
               }
            );         
         } 
      );
 }      

}

function InitToggleContainers() {

   
   $$( 'div.toggleOpen h3' ).each(   function( el, index ) { 
                                    if ( parent.nlmPages.get( parent.actNlmContentPage ).openToggles.get( index ) == 1 )
                                       new Insertion.Bottom( $(el), "<div>&nbsp;</div>" )
                                    else {
                                       new Insertion.Bottom( $(el), "<div class=open>&nbsp;</div>" );
                                       el.next('.pnlBody').style.display='none';
                                    }
                                     }    
   );
   
   $$( 'div.toggleClosed h3' ).each( function( el, index ) { 
                                     if ( parent.nlmPages.get( parent.actNlmContentPage ).openToggles.get( index ) == 1 ) {
                                       new Insertion.Bottom( $(el), "<div>&nbsp;</div>" );
                                       el.next('.pnlBody').style.display='block';
                                    }
                                    else
                                       new Insertion.Bottom( $(el), "<div class=open>&nbsp;</div>" );
                               } 
   );
   
   $$( '.pnlContainer h3 div' ).each(
         function( el, index ) {  $(el).observe( 'click', function() { $(el).toggleClassName( 'open' ); 
                                                        var pnlBody = el.up().next('.pnlBody');
                                                        if ( pnlBody.style.display == 'block') {                                                                                                                          
                                                            pnlBody.style.display = 'none';
                                                            
                                                            parent.nlmPages.get( parent.actNlmContentPage ).openToggles.unset( index );
                                                            //alert(parent.nlmPages.get( parent.actNlmContentPage ).openToggles.inspect());
                                                                                                                  }     
                                                        else {
                                                            pnlBody.style.display = 'block';
                                                            //alert(parent.actNlmContentPage+","+index);
                                                            parent.nlmPages.get( parent.actNlmContentPage ).openToggles.set( index ,1);
                                                            //alert(parent.nlmPages.get( parent.actNlmContentPage ).openToggles.inspect());
                                                        } 
                                             } 
           );
         }
   ); 

}



var last=null;
var lastcolor="";


function formError( err, form ) {
   //alert( err[0].toString() );
   if ( last ) 
      last.style.backgroundColor = lastcolor;
   last = form[err[0].name];
   if (last) {
      lastcolor=last.style.backgroundColor
      last.style.backgroundColor="#FFC0C0"
   }
   alert("Eingabefehler: "+err[0].message)
   if (last) {
      last.focus;
      last.select()
   }

}

function formErrorhandler( errors, form ) {
   $$( '.formError').invoke('removeClassName','formError');
   $$( 'li.errorMessage' ).invoke('remove');
   if ( $('cntErrorMessage') ) 
      $( 'cntErrorMessage' ).remove();
   //popup.popOpen('3367',{center:'yes',callback:'highlightErrors', err: errors, elform : form })
   $( form ).insert( {before: '<div id="cntErrorMessage">Beim Verarbeiten des Formulars sind Fehler erkannt worden</div>' } );
   highlightErrors( { err: errors, elform: form });

}

function highlightErrors( props ) {
   var errors = props.err;
   var form = props.elform;
   var el= null;
   for ( var i=0; i<errors.length; i++ ) {
      el = $( form[ errors[i].name ] );
      el.addClassName('formError');
      Event.observe( $(el),  'change', function(evt) { var elm = Event.element(evt); if (elm.hasClassName('formError')) { elm.removeClassName('formError');if (elm.up('li').previous('li.errorMessage'))  elm.up('li').previous('li.errorMessage').remove();}} );
      el.up('li').insert({before:'<li class="errorMessage"><label>&nbsp;</label><span>'+errors[i].message+'</span></li>'});
   }
}



function nlmLoadingIndicator( msg ) {
   if ( msg.indexOf("load") >= 0 )
      $( 'dtLoadingIndicator' ).style.display='block'
   else
      $( 'dtLoadingIndicator' ).style.display='none';
   
   if ( $('dtLoadingStatus') )
      $('dtLoadingStatus').innerHTML = msg;   

}
         
         

            

