35 lines
763 B
JavaScript
35 lines
763 B
JavaScript
/*
|
|
* The número de identidad de extranjero ( NIE )is a code used to identify the non-nationals in Spain
|
|
*/
|
|
$.validator.addMethod( "nieES", function( value ) {
|
|
"use strict";
|
|
|
|
value = value.toUpperCase();
|
|
|
|
// Basic format test
|
|
if ( !value.match( "((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)" ) ) {
|
|
return false;
|
|
}
|
|
|
|
// Test NIE
|
|
//T
|
|
if ( /^[T]{1}/.test( value ) ) {
|
|
return ( value[ 8 ] === /^[T]{1}[A-Z0-9]{8}$/.test( value ) );
|
|
}
|
|
|
|
//XYZ
|
|
if ( /^[XYZ]{1}/.test( value ) ) {
|
|
return (
|
|
value[ 8 ] === "TRWAGMYFPDXBNJZSQVHLCKE".charAt(
|
|
value.replace( "X", "0" )
|
|
.replace( "Y", "1" )
|
|
.replace( "Z", "2" )
|
|
.substring( 0, 8 ) % 23
|
|
)
|
|
);
|
|
}
|
|
|
|
return false;
|
|
|
|
}, "Please specify a valid NIE number." );
|