/**
* JavaScript
*
* @author	Sebastian Müller <sebastian produktivbuero de>
* @date		04.04.2011 17:58:34
*/

$(window).load( function() {
});
$(document).ready( function() {
  $('div.newsContent').hide();
  $('div.newsItem h2').css('cursor','pointer').click( function() { 
    $('div.newsContent').slideUp('slow');
    $(this).next('div.newsContent').slideDown('slow', function() { $(this).find('iframe').attr('src', $(this).attr('src')) } );
  });
  
  $('div.shopOrder').css({'left':0});
  $('div.shopItem').hover(
    function () {
      $(this).find('div.shopOrder').animate({left:200},500); 
      $(this).find('div.shopDetails').animate({left:400},500); 
    },
    function () {
      $(this).find('div.shopOrder').animate({left:0},500); 
      $(this).find('div.shopDetails').animate({left:200},500); 
    }
  );
});

/** ************************************************************************
* Verabreitung von abgesendeten Formularen
***************************************************************************/
$(document).ready( function() {
  $('form[method=post]').submit( function() {
    var formObject = $(this);
    formObject.find('input[type=submit]').after(' &nbsp; <img src="'+baseURL+'template/images/form-indicator.gif" id="processing" alt="loading" />');
    var formName = $(this).attr('name');
    
    if ($(this).attr('target')=='_blank') {$(this).attr('target',''); return true;}
    
    if ( checkFieldValues(formName) ) {
      var formData = formObject.serialize();
      $.ajax({
        type: 'POST',
        url: baseURL+'.send.php',
        data: formData,
        success: function(msg) { $(formObject).css({'display':'none'}).before(msg); },
        error: function() { $(formObject).after('NO AJAX FILE'); }
      });
    }
    $('img#processing').fadeOut('slow', function () { $(this).remove() });
    return false;
  });
});


/** ************************************************************************
* Überprüft die Angaben in Formularen
* @param	$form  Formular [name]
***************************************************************************/
function checkFieldValues (form) {
  var formObject = $('form[name=' + form + ']');
  var firstLetter = form.substr(0, 1);
  var formName = firstLetter.toUpperCase() + form.substr(1);

  hasError = false;
  $('span.error').remove();
  
  // für jedes Pflichtfeld
  formObject.find('.required').each(function () {
    var value = $(this).val();
    if (value == '') {
      $(this).addClass('emptyfield');
      hasError = true;
      $(this).parent().append('<span class="error">'+$(this).attr('title')+'</span>');
    } else {
      $(this).removeClass('emptyfield');
    }
    
    // E-Mail überprüfen
    if ($(this).hasClass('checkmail') && value != '') {
      var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
      if (!emailReg.test(value)) {
        $(this).addClass('emptyfield');
        hasError = true;
        $(this).parent().append('<span class="error">'+$(this).attr('title')+'</span>');
      } else {
        $(this).removeClass('emptyfield');
      }
    }
    
    // PLZ überprüfen
    if ($(this).hasClass('checkzip') && value != '') {
      var zipReg = /\d{5}/;
      if (!zipReg.test(value)) {
        $(this).addClass('emptyfield');
        hasError = true;
        //alert('Bitte eine 5-stellige Postleitzahl angeben!');
        $(this).parent().append('<span class="error">'+$(this).attr('title')+'</span>');
      } else {
        $(this).removeClass('emptyfield');
      }
    }
  });
  
  if (hasError) return false;
  else return true;
};
