1
+ import React , { useState } from 'react' ;
2
+ import { Link } from 'react-router-dom' ;
3
+ import './Register.css'
4
+
5
+ const Register = ( ) => {
6
+ const [ errorMessage , setErrorMessage ] = useState ( '' ) ;
7
+ const [ successMessage , setSuccessMessage ] = useState ( false ) ;
8
+ const handleRegister = ( event ) => {
9
+ event . preventDefault ( ) ;
10
+ setSuccessMessage ( false ) ;
11
+ const form = event . target ;
12
+ const email = form . faltumail . value ;
13
+ const name = form . name . value ;
14
+ const password = form . secret . value ;
15
+ console . log ( name , email , password ) ;
16
+ if ( ! / (? = .* [ A - Z ] .* [ A - Z ] ) / . test ( password ) ) {
17
+ setErrorMessage ( 'Please provide at least two Capital character' ) ;
18
+ return ;
19
+ }
20
+ if ( ! / (? = .* [ ! @ # $ & * ] ) / . test ( password ) ) {
21
+ setErrorMessage ( 'Please provide at least one Special character' ) ;
22
+ return ; // return na korle firebase problem korbe. akhan theke return korle false hole ar age jabe na
23
+ }
24
+ if ( password . length < 6 ) {
25
+ setErrorMessage ( 'Password must be 6 character' ) ;
26
+ return ;
27
+ }
28
+
29
+ setErrorMessage ( '' ) ;
30
+
31
+ /* createUserWithEmailAndPassword(auth, email, password)
32
+ .then((result) => {
33
+ const user = result.user;
34
+ setSuccessMessage(true);
35
+ console.log(user);
36
+ form.reset();
37
+ EmailVerifications();
38
+ updateUserName(name);
39
+ })
40
+ .catch((error) => {
41
+ console.error('error message : ', error);
42
+ setErrorMessage(error.message);
43
+ });
44
+ };
45
+
46
+ const EmailVerifications = () => {
47
+ sendEmailVerification(auth.currentUser).then(() => {
48
+ alert('Verification Email link sent');
49
+ });
50
+ };
51
+
52
+ const updateUserName = (name) => {
53
+ updateProfile(auth.currentUser,{
54
+ displayName: name
55
+ })
56
+ .then(() => {
57
+ console.log('display name updated')
58
+ })
59
+ .catch(error => {
60
+ console.log(error);
61
+ })
62
+ } */
63
+
64
+ // const handleEmailBlur = (event) => {
65
+ // console.log(event.target.value);
66
+ // };
67
+ // const handlePasswordBlur = (event) => {
68
+ // console.log(event.target.value);
69
+ // };
70
+ }
71
+
72
+ return (
73
+ < div className = "App py-10" >
74
+ < div className = "form-control pb-5 bg-orange-400 rounded-lg w-1/4 mx-auto" >
75
+ < h3 className = "text-2xl text-blue-700 my-3" > Please Register here</ h3 >
76
+ < form onSubmit = { handleRegister } >
77
+ < input
78
+ // onBlur={handleEmailBlur}
79
+ type = "email"
80
+ name = "faltumail"
81
+ required
82
+ placeholder = "Enter Email here"
83
+ className = "input input-bordered input-primary border-2 rounded-lg p-3 w-full max-w-xs"
84
+ />
85
+ < br />
86
+ < br />
87
+ < input
88
+ // onBlur={handleEmailBlur}
89
+ type = "text"
90
+ name = "name"
91
+ required
92
+ placeholder = "Enter Name here"
93
+ className = "input input-bordered input-primary border-2 rounded-lg p-3 w-full max-w-xs"
94
+ />
95
+ < br />
96
+ < br />
97
+ < input
98
+ // onBlur={handlePasswordBlur}
99
+ type = "password"
100
+ name = "secret"
101
+ required
102
+ placeholder = "Enter Password here"
103
+ className = "input border-2 rounded-lg p-3 input-bordered input-primary w-full max-w-xs"
104
+ />
105
+ < br />
106
+ < p className = "text-red-600 text-lg font-bold" > { errorMessage } </ p >
107
+ { successMessage && (
108
+ < p className = "text-indigo-700 text-lg font-bold" > User created successfully</ p >
109
+ ) }
110
+ < button className = "btn btn-primary p-4 mt-4" type = "submit" >
111
+ Register
112
+ </ button >
113
+ </ form >
114
+ < p className = "text-blue-600 text-xl mt-3" >
115
+ If you already have an account,{ ' ' }
116
+ < Link to = "/login" >
117
+ < span className = "text-green-700 underline-offset-2 underline" > Login</ span > { ' ' }
118
+ </ Link > { ' ' }
119
+ now
120
+ </ p >
121
+ </ div >
122
+ </ div >
123
+ ) ;
124
+ } ;
125
+
126
+ export default Register ;
0 commit comments