function test_phone(phone, min_number, max_number){
	source = phone.replace(/[^0-9]/g, '');
	if ((source.length < min_number) || (source.length > max_number))
	{
		return false;
	}
	return true;
}

function testEmail(email)
{
    if (email == ''){
        return false;
    }

    var idx = email.indexOf('@');

    if (idx > 0){

        var point = false;
        var st = 0;
        var ed = idx;
        var ch = 0;

        for(j = 0; j < 2; j++){
            next = false;
            error = false;

            for(i = st; i < ed; i++){

                ch = email.charCodeAt(i);

                if ((ch == 46)||(ch == 45)||(ch == 95)){
                    if (!next){
                        error = true;
                        break;
                    }
                    next = false;
                    if ((j == 1)&&(ch == 46)){
                        point = true;
                    } else {
                        point = false;
                    }
                } else {
                    if (((ch >= 48)&&(ch <= 57))||
                        ((ch >= 97)&&(ch <= 122))||
                        ((ch >= 65)&&(ch <= 90))){
                        next = true;
                    } else {
                        error = true;
                        break;
                    }
                }
            }

            if ((!error)&&(!next)){
                error = true;
            }

            if (error){
                break;
            }

            st = idx + 1;
            ed = email.length;
        }

        if ((error)||(!point)){
            return false;
        } else {
            return true;
        }

    } else {
        return false;
    }

}

jQuery(document).ready(function(){

	jQuery("#c_phone").keypress(function(b){
		var C = /[0-9\x25\x27\x24\x23\(\)-]/;
		if ( !test_phone( this.value, 0, 10 ) ) C = /[\x25\x27\x24\x23\(\)-]/;
		var a = b.which;
		var c = String.fromCharCode(a);
		//if ( a==37||a==36||a==35 ) return false;
		return !!(a==0||a==8||a==9||a==13||c.match(C));
	});

	jQuery("#conf_close").click(function(){
		jQuery("#veil").fadeOut();
		return false;
	});
});

var sending = false;

function subm()
{
	var error = false, fn;

	fn = jQuery("#c_flname");
	if ( fn.val().length == 0 ) {
		jQuery(".c_flname_error").show();
		if ( !fn[0].handler ) {
			fn.focus(function(){
				jQuery(".c_flname_error").hide();
			});
			fn[0].handler = true;
		}
		error = true;
	}

	fn = jQuery("#c_phone");
	if ( fn.val().length > 0 && !test_phone( fn.val(), 7, 11 )) {
		jQuery(".c_phone_error2").show();
		if ( !fn[0].handler ) {
			fn.focus(function(){
				jQuery(".c_phone_error").hide();
				jQuery(".c_phone_error2").hide();
			});
			fn[0].handler = true;
		}
		error = true;
	}

	fn = jQuery("#c_mail");
	if ( fn.val().length == 0 || !testEmail( fn.val() )) {
		if ( fn.val().length == 0 ) {
			jQuery(".c_mail_error").show();
		} else {
			jQuery(".c_mail_error2").show();
		}
		if ( !fn[0].handler ) {
			fn.focus(function(){
				jQuery(".c_mail_error").hide();
				jQuery(".c_mail_error2").hide();
			});
			fn[0].handler = true;
		}
		error = true;
	}

	fn = jQuery("#c_subject");
	if ( fn.val() == "NoSelected" ) {
		jQuery(".c_subject_error").show();
		if ( !fn[0].handler ) {
			fn.focus(function(){
				jQuery(".c_subject_error").hide();
			});
			fn[0].handler = true;
		}
		error = true;
	}

	fn = jQuery("#c_msg");
	if ( fn.val().length == 0 ) {
		jQuery(".c_msg_error").show();
		if ( !fn[0].handler ) {
			fn.focus(function(){
				jQuery(".c_msg_error").hide();
			});
			fn[0].handler = true;
		}
		error = true;
	}

	if ( !error && !sending ) {
		sending = true;
		jQuery.ajax({
			url: "/index.php",
			data: ({
				"msg": document.getElementById('c_msg').value,
				"flname": document.getElementById('c_flname').value,
				"phone": document.getElementById('c_phone').value,
				"mail": document.getElementById('c_mail').value,
				"subject": document.getElementById('c_subject').value,
				"deliver": "1"
			}),
			type: 'post',
			dataType: 'json',
			success: function( data ) {
				if ( data.error == 0 ) {
					jQuery('#heh').fadeOut();
					jQuery("#veil").fadeIn();

					document.getElementById('c_msg').value = "";
					document.getElementById('c_flname').value = "";
					document.getElementById('c_phone').value = "";
					document.getElementById('c_mail').value = "";
				}
			},
			complete: function(xhr){
				sending = false;
				//alert(xhr.responseText);
			},
			error: function(xhr, status){
				//alert(status);
			}
		});
	}

	return false;
}


