/**
 * Kontaktformularverarbeitung
 *
 * @author sweber
 */
function validateAndSend() {

	var mandatory = new Array( 'name', 'firma', 'email', 'nachricht' );
	var missing   = false;

	for(var count = 0; count < mandatory.length; count++) {

		var mandatory_field = mandatory[count];

		$(mandatory_field).style.border = '1px solid #C6DFE6';

		var test = $(mandatory_field).value;
		if(!checkValid($(mandatory_field).value, mandatory_field)) {

			missing = true;
			$(mandatory_field).style.border = '1px solid #FF0000';
		}
	}

	if(missing) {

		$('message').innerHTML     = 'Bitte f&uuml;llen Sie alle markierten Felder aus!';
		$('message').style.display = 'block';
	} else {

		new Ajax.Updater('message', '/wp-content/themes/softscience/kontakt.php', { evalScripts: true, asynchronous: true, parameters:Form.serialize('kontakt')});
	}
}

/**
 * Feldvalidierung
 *
 * @author sweber
 * @param string field_value
 * @param string field_name
 * @return boolean is valid
 */
function checkValid(field_value, field_name) {

	switch(field_name) {

		case 'name':
		case 'firma':
		case 'nachricht':

			if(field_value == '') {

				return false;
			}
			return true;
			break;

		case 'email':

      var a   = false;
      var res = false;

			if(field_value.length == 0) {
        return false;

      }

      /*
       * testen, ob regexp korrekt unterstützt werden
       */
      if(typeof(RegExp) == 'function') {

        var b = new RegExp('abc');
        if(b.test('abc') == true){

          a = true;
        }
      }

      if(a == true) {
        reg = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+
                         '(\\@)([a-zA-Z0-9\\-\\.]+)'+
                         '(\\.)([a-zA-Z]{2,4})$');
        res = (reg.test(field_value));

      } else {
        res = (field_value.search('@') >= 1 &&
               field_value.lastIndexOf('.') > field_value.search('@') &&
               field_value.lastIndexOf('.') >= field_value.length-5);

       }
       return(res);
			break;
	}

}