$(function(){
  
  var $weiterer_raum_prototyp = $('.raumres_weiterer_raum_prototyp');
  $weiterer_raum_prototyp.detach();
  
  $(document).on('change', '.form_error', function(){
    validateInput($(this));
  });
  
  $('.raumres_add_raum').on('click', function(){
    $(this).parents('div.raumres_container').append($weiterer_raum_prototyp.clone());
  });
  
  $(document).on('click', '.raumres_remove_raum', function(){
    $(this).parents('.raumres_weiterer_raum_prototyp').remove();
  });
  
  $(document).on('change', '.raumres_raum', function(){
    
    var $raumSelectedOptions = $('.raumres_raum :selected');
    
    var aussenstellenAry = [];
    $raumSelectedOptions.each(function(){
      // Nicht die Select mit Default-Value berücksichtigen.
      if($(this).val() != '') {
        aussenstellenAry.push($(this).prop('class'));
      }
    });
    
    var aussAryLength = aussenstellenAry.length;
    var alleWerteSindGleich = true;
    if(aussAryLength > 1) {
      for(var i = 1; i < aussAryLength; i++) {
        if(aussenstellenAry[i] != aussenstellenAry[i-1]) {
          alleWerteSindGleich = false;
          break;
        }
      }
    }
    
    if(alleWerteSindGleich && aussAryLength > 0 && aussenstellenAry[0] != '') {
      var aussenst = aussenstellenAry[0];
      if($('#raumres_empfaenger option').filter('.' + aussenst).length > 0) {
        $('#raumres_empfaenger option').filter(':not(.' + aussenst + ')').filter(':not(.default)').hide();
        if($('#raumres_empfaenger option:selected:hidden').length > 0) {
          $('#raumres_empfaenger').val('');
        }
      } else {
        $('#raumres_empfaenger option').show();
      }
    } else {
      $('#raumres_empfaenger option').show();
    }
  })
  
});