Guest User

css

a guest
May 12th, 2016
28
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.66 KB | None | 0 0
  1. var http = require('http');
  2. var fs = require('fs');
  3. var url = require('url');
  4. var express = require('express');
  5. var app = express();
  6. var session = require('express-session');
  7. app.use(session({secret: 'SecurityKeyIDontKnowWhatIsHappening',resave: true,saveUninitialized : false}));
  8. app.use(express.static('statics'));
  9. var bodyParser = require('body-parser')
  10. app.use(bodyParser.json() ); // to support JSON-encoded bodies
  11. app.use(bodyParser.urlencoded({ // to support URL-encoded bodies
  12. extended: true
  13. }));
  14.  
  15.  
  16. function validateEmail(email) {
  17. var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  18. return re.test(email);
  19. };
  20.  
  21. function validatePass(pass){
  22. if(pass.length < 5)
  23. return false;
  24. for(counter = 0; counter < pass.length; counter++){
  25. if(pass[counter] == ' ')
  26. return false;
  27. }
  28. return true;
  29. };
  30.  
  31. function validateName(name){
  32. if(name.length == 0)
  33. return false;
  34. for(counter = 0; counter < name.length; counter++){
  35. if((name[counter] == ' ' && counter == 0) || (name[counter] >= '0' && name[counter] <= '9'))
  36. return false;
  37. }
  38. return true;
  39. };
  40.  
  41. function validatePassword(mail , password){
  42. for (var i = 0; i < users.length; i++) {
  43. if (users[i].email == mail) {
  44. if (users[i].password == password){
  45. return true;
  46. }
  47. }
  48. }
  49. return false;
  50. };
  51. function validateLogin(mail){
  52. for (var i = 0; i < users.length; i++) {
  53. if (users[i].email == mail) {
  54. return true ;
  55. }
  56. }
  57. return false;
  58. };
  59.  
  60. function warn(temp){
  61. temp = "<p style = \"color:red; font-size: 25px\">" + temp + "</p>";
  62. var x = "<!DOCTYPE html>"+"<html>"+"<head>"+"<link rel=\"stylesheet\" href=\"css/bootstrap.min.css\">"+"<link rel=\"stylesheet\" type=\"text/css\" href=\"theme.css\">"+"</head>"+"<body>"+"<form action=\"login\" method = \"POST\" style = \"margin-left:35%; margin-top:15%\">"+"Mail:<br>"+"<input type=\"text\" name=\"mailLog\" ><br>"+"Password:<br>"+"<input type=\"password\" name=\"passwordLog\" ><br><br>"+"<input type=\"submit\" value=\"Log In\" />"+"</form>"+ temp +"</body>" +"</html>";
  63. return x;
  64.  
  65. };
  66.  
  67. function make(temp){
  68. temp = "<p style = \"color:red; font-size: 25px\">" + temp + "</p>";
  69. var x = "<!DOCTYPE html>"+"<html>"+"<head>"+"<link rel=\"stylesheet\" href=\"css/bootstrap.min.css\">"+"<link rel=\"stylesheet\" type=\"text/css\" href=\"theme.css\">"+"</head>"+"<body>"+"<form action=\"register\" method = \"POST\" style = \"margin-left:35%; margin-top:15%\">"+"Name:<br>"+"<input type=\"text\" name=\"nameReg\"><br>"+"Mail:<br>"+"<input type=\"text\" name=\"mailReg\" ><br>"+"Password:<br>"+"<input type=\"password\" name=\"passwordReg\" ><br><br>"+"<input type=\"submit\" value=\"Sign Up\" />"+"</form>"+ temp +"</body>" +"</html>";
  70. return x;
  71. };
  72.  
  73. var file_content = fs.readFileSync(__dirname +'/userDB.json');
  74. var users = JSON.parse(file_content);
  75.  
  76. app.get('/home', function(req,res){
  77. if(!req.session.email)
  78. res.redirect("/register");
  79. else
  80. res.sendFile(__dirname + "/" + "home.html");
  81. });
  82.  
  83. app.get('/login', function(req,res){
  84. if (req.session.email) {
  85. res.redirect("/home");
  86. }
  87. res.sendFile(__dirname + "/" + "log.html");
  88. });
  89.  
  90. app.post('/login', function(req,res){
  91. if (req.session.email) {
  92. res.redirect("/home");
  93. }
  94. var getmail = req.body.mailLog;
  95. var getpass = req.body.passwordLog;
  96. if(validateLogin(getmail) && validatePassword(getmail, getpass)){
  97. req.session.email = getmail ;
  98. res.redirect("/home");
  99. }else{
  100. res.writeHead(200, {"Content-Type": "text/html"});
  101. if(!validateLogin(getmail)){
  102. res.write(warn("Wrong email, Please recheck."));
  103. }else if(!validatePassword(getmail , getpass)){
  104. res.write(warn("Wronge password , please recheck."));
  105. }
  106. res.end();
  107. }
  108. });
  109.  
  110. app.get('/register', function(req,res){
  111. if (req.session.email) {
  112. res.redirect("/home");
  113. }
  114. res.sendFile( __dirname + "/" + "Reg.html" );
  115. });
  116.  
  117. app.post('/register', function (req, res) {
  118. if (req.session.email) {
  119. res.redirect("/home");
  120. }
  121. var sentEmail = req.body.mailReg;
  122. var sentName = req.body.nameReg;
  123. var sentPassword = req.body.passwordReg;
  124. found = false;
  125. console.log(sentEmail + " " + sentName + " " + sentPassword);
  126. if(validateEmail(sentEmail) && validateName(sentName) && validatePass(sentPassword)){
  127. var newuser = {
  128. "email" : sentEmail ,
  129. "name" : sentName ,
  130. "password" : sentPassword
  131. }
  132. console.log(users.length + "ERERE");
  133. for(var counter = 0; counter < users.length; counter++){
  134. console.log(counter + " " + users[counter].email + " " + sentEmail);
  135. if(users[counter] != null && sentEmail == users[counter].email)
  136. {
  137. found = true;
  138. }
  139. }
  140. if(!found){
  141. users.push(newuser);
  142. fs.writeFileSync(__dirname +'/userDB.json', JSON.stringify(users, null, 3));
  143. res.redirect('/login');
  144. }else{
  145. res.writeHead(200, {"Content-Type": "text/html"});
  146. res.write(make("Your email is already taken."));
  147. res.end();
  148. }
  149. }
  150. else{
  151. res.writeHead(200, {"Content-Type": "text/html"});
  152. if(!validateEmail(sentEmail)){
  153. res.write(make("Wrong email format, Please recheck."));
  154. }else if(!validatePass(sentPassword)){
  155. res.write(make("Wronge password format, please recheck."));
  156. }else if(!validateName(sentName)){
  157. res.write(make("Wrong name format, please recheck."));
  158. }res.end();
  159. }
  160. });
  161.  
  162. var server = app.listen(8081, function () {
  163. var host = server.address().address;
  164. var port = server.address().port
  165. console.log("Example app listening at http://%s:%s", host, port)
  166. });
Add Comment
Please, Sign In to add comment