//
// Newsletter dhtml
//
var NewsLetter = 
{
  // available fields
  fields: $H(),
  // available validators
  validators: $A(),
  
  // toggle selected action (subscribe/unsubscribe)
  toggleAction: function(input)
  {
    // Show form
    Element.show('newsletterForm_data');
    if(input.value == 'subscribe') // If subscribing
    {
      // Showing each fields
      this.fields.each(function(de)
      {
        Element.show(de.value.field);
      });
      // Activating each validators
      this.validators.each(function(v)
      {
        FormValidate.Validators.register(v);
      });
      // Update submit label
      $('submitButton').value = 'subscribe';
    }
    else // If unsubscribing
    {
      // Hiding each non-mail field
      this.fields.each(function(de)
      {
        if(de.value.fieldType != 'mail')
        {
          Element.hide(de.value.field);
        }
      });
      // Unregistering non-mail validators
      var lthis = this;
      this.validators.each(function(v)
      {
        if(lthis.fields[v.element.id].fieldType != 'mail')
          FormValidate.Validators.unregister(v);
      });
      // Update submit label
      $('submitButton').value = 'unsubscribe';
    }
  }
  
}