@@ -3,6 +3,8 @@ import { Link } from 'react-router-dom';
3
3
import axios from 'axios' ;
4
4
import Navbar from '../common/Navbar' ;
5
5
import '../../styles/OPD.css' ;
6
+ // import pincodes from 'indian-pincodes';
7
+ import { pininfo } from 'indian_address' ;
6
8
7
9
function OPDRegistrationForm ( ) {
8
10
const [ formData , setFormData ] = useState ( {
@@ -46,13 +48,17 @@ function OPDRegistrationForm() {
46
48
newErrors . address = 'Address must be at least 5 characters long' ;
47
49
}
48
50
if ( ! formData . department ) newErrors . department = 'Department is required' ;
49
- if ( ! formData . pincode . trim ( ) ) {
50
- newErrors . pincode = 'Pincode is required' ;
51
- } else if ( ! / ^ \d { 6 } $ / . test ( formData . pincode . trim ( ) ) ) {
52
- newErrors . pincode = 'Pincode must be 6 digits' ;
53
- }
54
- if ( ! formData . reason . trim ( ) ) newErrors . reason = 'Reason is required' ;
55
- if ( ! formData . date ) newErrors . date = 'Date is required' ;
51
+
52
+ if ( ! formData . pincode . trim ( ) ) {
53
+ newErrors . pincode = 'Pincode is required' ;
54
+ } else if ( ! pininfo [ formData . pincode ] ) {
55
+ newErrors . pincode = 'Invalid pincode' ; // Handle invalid pincode
56
+ } else {
57
+ console . log ( "Pincode details:" , pininfo [ formData . pincode ] ) ;
58
+ }
59
+ if ( ! formData . reason . trim ( ) ) newErrors . reason = 'Reason is required' ; // Validation for reason
60
+ if ( ! formData . date ) newErrors . date = 'Date is required' ; // Validation for date
61
+
56
62
57
63
if ( formData . report . length > 0 ) {
58
64
const allowedTypes = [ 'application/pdf' , 'image/jpeg' , 'image/png' ] ;
@@ -68,6 +74,7 @@ function OPDRegistrationForm() {
68
74
} ) ;
69
75
}
70
76
77
+
71
78
return newErrors ;
72
79
} ;
73
80
0 commit comments