-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathsignup.html
148 lines (128 loc) · 8.13 KB
/
signup.html
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<!DOCTYPE html>
<html>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1" name="viewport" />
<head>
<title>வரைபடவி - Varaipadavi</title>
<link rel="icon" href="assets/img/favicon.png" type="image/png">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<link type="text/css" rel="stylesheet"
href="https://netdna.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link type="text/css" rel="stylesheet" href="assets/css/common.css">
<link type="text/css" rel="stylesheet" href="assets/css/login.css">
<script src="https://code.jquery.com/jquery-3.4.1.min.js"
integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
crossorigin="anonymous"></script>
<script src="https://www.gstatic.com/firebasejs/7.8.0/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.8.0/firebase-analytics.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.8.0/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.8.0/firebase-firestore.js"></script>
<script type="text/javascript" src="assets/js/firebase.js"></script>
</head>
<body>
<div class="container">
<div class="row justify-content-center pt-5">
<div id="login">
<div class="login-header py-2">
<div id="login-header-text">Sign Up</div>
</div>
<div class="login-body">
<div class="form-group">
<input type="text" class="form-control vp-input" placeholder="Username" id="username-input">
<input type="email" class="form-control vp-input" placeholder="E-mail" id="email-input">
<input type="password" class="form-control vp-input" placeholder="Enter password"
id="password-input">
<input type="password" class="form-control vp-input" placeholder="Confirm password"
id="password-re-input">
</div>
<div class="alert alert-danger" role="alert" id="alert-box"></div>
<button class="vp-btn" onclick="signUp()">Sign Up</button>
<div id="login-link" class="pt-2 text-center">Already Have an Account? <a href="login.html">Login</a></div>
</div>
</div>
</div>
</div>
<script>
function displayAlert(message) {
$('#alert-box').text(message);
$('#alert-box').show();
}
function signUp() {
var username = $("#username-input").val();
var email = $("#email-input").val().toLowerCase();
var password = $("#password-input").val();
var confirmPassword = $("#password-re-input").val();
var confirmPasswordCheck = password == confirmPassword;
userDatabase = firebase.firestore().collection('users');
userDatabase.where('username', '==', username.toLowerCase()).get().then((querySnapshot) => {
var usernameExistCheck = true;
querySnapshot.forEach((doc) => {
usernameExistCheck = false;
});
if (usernameExistCheck) {
if (confirmPasswordCheck) {
firebase.auth().createUserWithEmailAndPassword(email, password).catch(function (error) {
var errorCode = error.code;
var errorMessage = error.message;
userDatabase.where('username', '==', username).get().then((querySnapshot) => {
querySnapshot.forEach((doc) => {
doc.ref.delete();
});
});
if (errorCode == 'auth/weak-password') {
displayAlert('The password is too weak.');
} else {
displayAlert(errorMessage);
}
console.log(error);
});
userDatabase.add({
username: username,
email: email
})
firebase.auth().onAuthStateChanged(function (user) {
user.updateProfile({
displayName: username
}).then(function () {
var displayName = user.displayName;
}, function (error) {
displayAlert(error);
});
});
}
else {
displayAlert('Password doesn\'t match')
}
} else {
displayAlert('username exist')
}
});
}
function mobCheck() {
let check = false;
(function (a) { if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0, 4))) check = true; })(navigator.userAgent || navigator.vendor || window.opera);
return check;
};
function redirect() {
if (mobCheck()) {
window.location = "../mobile/index.html"
}
else {
window.location = "index.html"
}
}
window.onload = function () {
firebase.auth().onAuthStateChanged(function (user) {
if (user) {
if (user.displayName !== "") {
redirect();
}
}
});
};
</script>
</body>
</html>