-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvalidation_util.js
More file actions
executable file
·96 lines (80 loc) · 2.01 KB
/
validation_util.js
File metadata and controls
executable file
·96 lines (80 loc) · 2.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
var validatejs = require("validate.js");
export const DEFAULT_REQUIRED_ERR_MSG = '^This is a required field';
const REGEX = {
EMAIL: /^[A-Z0-9._+-]+@[A-Z0-9.-]+\.[A-Z0-9.-]+$/i,
SG_PHONE_NUMBER: /^(\+65)?[89]\d{7}$/i,
PH_PHONE_NUMBER: /^(\+63)?[9]\d{9}$/i
};
var validation = {
required: {
presence: {
message: DEFAULT_REQUIRED_ERR_MSG
}
},
email: {
presence: {
message: DEFAULT_REQUIRED_ERR_MSG
},
format: {
pattern: REGEX.EMAIL,
message: '^Please enter a valid email address'
}
},
password: {
presence: {
message: DEFAULT_REQUIRED_ERR_MSG
},
length: {
minimum: 8,
maximum: 16,
message: '^Your password must be at least 8 characters and not more than 16 characters'
}
},
confirmPassword: {
presence: {
message: DEFAULT_REQUIRED_ERR_MSG
},
equality: {
attribute: 'password',
message: '^Password not match'
}
},
phoneNumber: {
presence: {
message: DEFAULT_REQUIRED_ERR_MSG
},
format: {
pattern: REGEX.PH_PHONE_NUMBER,
message: '^Please enter a valid phone number'
}
}
}
export const ValidationType = {
REQUIRED: 'required',
EMAIL: 'email',
PASSWORD: 'password',
CONFIRM_PASSWORD: 'confirmPassword',
PHONE_NUMBER: 'phoneNumber'
};
export const validate = (validationType, value) => {
var values = {};
values[validationType] = value;
var constraints = {};
constraints[validationType] = validation[validationType];
const result = validatejs(values, constraints);
if (result) {
return result[validationType][0];
}
return null;
}
export const validateWithObjects = (validationType, objects) => {
var values = {};
values = objects;
var constraints = {};
constraints[validationType] = validation[validationType];
const result = validatejs(values, constraints);
if (result) {
return result[validationType][0];
}
return null;
}