// Ajax Comment Posting
// WordPress plugin
// version 1.2.2
// author: regua
// http://regua.biz

jQuery(document).ready(function(){
						   
	jQuery.noConflict();
	
						   
	jQuery('#commentform').after('<div id="error"></div>');
	jQuery('#submit').after('<img src="wp-content/plugins/ajax-comment-posting/loading.gif" id="loading" alt="Loading..." />');
	jQuery('#loading').hide();
	var form = jQuery('#commentform');
	var err = jQuery('#error');
	
	// WP Ajax Edit Comments hook
	if (window.AjaxEditComments) {
   	AjaxEditComments.init();
	} // end if
	
    form.submit(function() { 
    
  if(form.find('#author')[0]) {
      if(form.find('#author').val() == '') {
		   err.html('<span class="error">Bitte tragen Sie Ihren Namen ein.</span>');
		   return false;
	   } // end if
		if(form.find('#email').val() == '') {
			err.html('<span class="error">Bitte tragen Sie Ihre eMailadresse ein.</span>');
			return false;
		} // end if
		var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		if(!filter.test(form.find('#email').val())) {
			err.html('<span class="error" id="errd">Bitte tragen Sie valide eMailadresse ein.</span>');
			return false;
		} // end if
		if(form.find('#mcspvalue').val() == '') {
      err.html('<span class="error">Bitte tragen Sie die korrekt Summe im Feld Spam protection ein. <br/>Bsp.: 1+1 = 2</span>');
      return false;
    } // end if
    
    
    if(form.find('#comment').val() == '') {
      err.html('<span class="error">Bitte tragen Sie Ihr Kommentar ein.</span>');
      return false;
    } // end if
	} // end if
	
	
    jQuery(this).ajaxSubmit({
						   
		beforeSubmit: function() {
			jQuery('#loading').show();
			jQuery('#submit').attr('disabled','disabled');
		}, // end beforeSubmit

		error: function(request){
				err.empty();
        var data = request.responseText.replace(/\n|\r/g,'');
				if (data.search(/<title>WordPress &rsaquo; Fehler<\/title>/) != -1) {
					data = data.match(/<p>(.*)<\/p>/);
					err.html('<span class="error">'+ data[1] +'</span>');
				} else {
					data = request.responseText;
					
					alert(data.match(/<p>(.*)<\/p>/));
					if(data.match(/<p>(.*)<\/p>/))
					{
					  var data = data.match(/<p>(.*)<\/p>/);
					}
					
					err.html('<span class="error">'+ data[1] +'</span>');
				}
				
				jQuery('#loading').hide();
				jQuery('#submit').removeAttr("disabled");
				return false;
		}, // end error()

        success: function(data) {
            try {
//                response = jQuery("<ol>").html(data);
      
          var form = document.getElementById('commentform');
          for(var i = 0; i < form.elements.length;i++)
          {
            form.elements[i].value = '';
          }
     
          var href = location.href;
          href     = href.replace(/#(\S+)$/,'');
          
          location.href = href+'#comments';
          location.reload();
          return false;
          
//          form.remove()
//              if (response.find('.commentlist')[0]) {
//							if (jQuery(document).find('.commentlist')[0]) {
//								jQuery('.commentlist').empty();
//								jQuery('.commentlist').append(response.find('.commentlist'));
//							} else {
//								jQuery('#respond').before(response.find('.commentlist'));
//							} // end if
//							err.empty();
//						   form.remove(); // REMOVE THIS IF YOU DON'T WANT THE FORM TO DISAPPEAR
//						   jQuery('#respond').hide();
//							err.html('<span class="success">Your comment has been added.</span>');
//							if (jQuery(document).find('#comments')[0]) {
//								jQuery('#comments').html(response.find('#comments'));
//							} else {
//								jQuery('.commentlist').before(response.find('#comments'));
//							} // end if
//							jQuery('#submit').removeAttr("disabled");
//                     jQuery('#loading').hide();	
//				} // end if

            } catch (e) {
                jQuery('#loading').hide();
				    jQuery('#submit').removeAttr("disabled");
                 alert(e);
            } // end try
            
            // WP Ajax Edit Comments hook
				if (window.AjaxEditComments) {
   				AjaxEditComments.init();
				} // end if
						   
			} // end success()
			
		}); // end ajaxSubmit()
		
        return false; 
		
	}); // end form.submit()
}); // end document.ready()
										
