YAHOO.util.Event.onDOMReady(function() {

  $E = YAHOO.util.Event;
  $D = YAHOO.util.Dom;
  $ = YAHOO.util.Dom.get;
  
  $E.on($D.getElementsByClassName('EventLink', 'a', 'Content'), 'click', function(e) {
    $E.stopEvent(e);
    var Id = this.id.substr(4);
    $D.setStyle('Calendar', 'display', 'none');
    $D.setStyle($D.getElementsByClassName('EventData', 'div', 'Marginal'), 'display', 'none')
    $D.setStyle($D.getElementsByClassName('Form', 'form', 'Marginal'), 'display', 'none')
    $D.setStyle('Data'+Id, 'display', 'block');
  });
  
  if($('World')) {
    var Areas = document.getElementsByTagName('area');
    $E.on(Areas, 'mouseover', function() {
      var id = this.id.substr(0, 2);
      $D.addClass(id, 'hover');
      $D.removeClass(id+'explorer', 'hidden');
      $D.addClass(id+'explorer', 'worlddetail');
    });
    $E.on(Areas, 'mouseout', function() {
      var id = this.id.substr(0, 2);
      $D.removeClass(id, 'hover');
      $D.removeClass(id+'explorer', 'worlddetail');
      $D.addClass(id+'explorer', 'hidden');
    });
  }

  $E.onAvailable('DonationForm', function() {

    this.elements[0].focus();

    $E.on(this.donor, 'focus', function() {
      if(this.value == 'falls bekannt') {
        this.value = '';
      }
    });
    
    if(this.amount && this.interval) {
      
      $E.on(this.amount, 'change', function() {

        var f = 0;
        if($('monthly').checked == true) {
          f = 12;
        } else if($('quarteryear').checked == true) {
          f = 4;
        } else if($('halfyear').checked == true) {
          f = 2;
        } else if($('year').checked == true) {
          f = 1;
        }

        if($('amount').value.length == 0 || f == 0) {
          $('Sum').innerHTML = '';
  		  $D.setStyle($('SumContainer'), 'display', 'none');
         return;
        }

        var v = $('amount').value.replace(/,/, '.');
        $('Sum').innerHTML = ' = ' + Math.round(v * f, 2);
		$D.setStyle($('SumContainer'), 'display', 'inline');

      });
      $E.on(this.interval, 'click', function() {

        var f = 0;
        if($('monthly').checked == true) {
          f = 12;
        } else if($('quarteryear').checked == true) {
          f = 4;
        } else if($('halfyear').checked == true) {
          f = 2;
        } else if($('year').checked == true) {
          f = 1;
        }

        if($('amount').value.length == 0 || f == 0) {
          $('Sum').innerHTML = '';
          return;
        }

        var v = $('amount').value.replace(/,/, '.');
        $('Sum').innerHTML = ' = ' + Math.round(v * f, 2);
		$D.setStyle($('SumContainer'), 'display', 'inline');

      });

    }

  });

  $E.onAvailable('CommentsForm', function() {
    if(!$D.hasClass(this, 'Error')) {
      $D.setStyle(['CommentsForm', 'Comments'], 'display', 'none');
    }
    $E.on('CommentsSummary', 'click', function(e) {
      if($D.getStyle('CommentsForm', 'display') == 'block') {
        $D.setStyle(['CommentsForm', 'Comments'], 'display', 'none');
      } else {
        $D.setStyle(['CommentsForm', 'Comments'], 'display', 'block');
      }
    })
  });

  $E.onAvailable('newsletterform', function() {
    if($D.hasClass(this, 'sidebar')) {
      var children = $D.getChildren(this);
      for(var i = 0; i < children.length; i++) {
        if(!$D.hasClass(children[i], 'placeholder')) {
          $D.addClass(children[i], 'hidden');
        } else {
          $D.addClass(children[i], 'active');
          $E.on(children[i], 'click', function() {
            var children = $D.getChildren(this);
            for(var i = 0; i < children.length; i++) {
              if(!$D.hasClass(children[i], 'placeholder')) {
                $D.removeClass(children[i], 'hidden');
              } else {
                $D.removeClass(children[i], 'active');
              }
            }
          }, this, true);
        }
      }
    }
  });

  if($('Images')) {
    
    $E.on(['Next', 'Back'], 'click', function(e) {

      var currentI = $D.getElementsByClassName('Active', 'li', 'Images')[0];
      var currentC = $D.getElementsByClassName('Active', 'li', 'Captions')[0];
      var currentO = $D.getElementsByClassName('Active', 'li', 'Counters')[0];
      $D.removeClass($('Images').getElementsByTagName('li'), 'Active');
      $D.removeClass($('Captions').getElementsByTagName('li'), 'Active');
      $D.removeClass($('Counters').getElementsByTagName('li'), 'Active');

      if(this.id == 'Next') {
        if($D.getNextSibling(currentI)) {
          $D.addClass($D.getNextSibling(currentI), 'Active');
          $D.addClass($D.getNextSibling(currentC), 'Active');
          $D.addClass($D.getNextSibling(currentO), 'Active');
        } else {
          $D.addClass($('Images').getElementsByTagName('li')[0], 'Active');
          $D.addClass($('Captions').getElementsByTagName('li')[0], 'Active');
          $D.addClass($('Counters').getElementsByTagName('li')[0], 'Active');
        }
      } else {
        if($D.getPreviousSibling(currentI)) {
          $D.addClass($D.getPreviousSibling(currentI), 'Active');
          $D.addClass($D.getPreviousSibling(currentC), 'Active');
          $D.addClass($D.getPreviousSibling(currentO), 'Active');
        } else {
          var Images = $('Images').getElementsByTagName('li');
          $D.addClass(Images[Images.length - 1], 'Active');
          $D.addClass($('Captions').getElementsByTagName('li')[Images.length - 1], 'Active');
          $D.addClass($('Counters').getElementsByTagName('li')[Images.length - 1], 'Active');
        }
      }
    window.scrollBy(0, 0);
    });

  }

  $E.onAvailable('Recommend', function() { $D.setStyle(this, 'display', 'none'); });
  $E.onAvailable('RecommendLink', function() { if(!$('Recommend')) { $D.setStyle(this, 'display', 'none'); } });

  $E.on('RecommendLink', 'click', function(e) {
    $E.stopEvent(e);
    $D.setStyle($('Recommend'), 'display', 'block');
    window.scrollTo($D.getX('Recommend'), $D.getY('Recommend'));
  });
  
  var Links = document.getElementsByTagName('a');
  for(var i = 0; i < Links.length; i++) {
    if(Links[i].getAttribute('rel') 
        && Links[i].getAttribute('rel') == 'popup') {
      $E.on(Links[i], 'click', function(e) {
        $E.stopEvent(e);
        window.open(this.href);
      })
    }
  }

});
