Guest User

Untitled

a guest
Jun 14th, 2016
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.50 KB | None | 0 0
  1. var express = require('express');
  2. var bodyParser = require('body-parser');
  3. var sessions = require('client-sessions');
  4. var app = express();
  5. var calcVal;
  6.  
  7. app.use(express.static(__dirname + '/www/views'));
  8.  
  9. app.set('views', __dirname + '/www/views');
  10. app.engine('html', require('ejs').renderFile);
  11. app.set('view engine', 'html');
  12.  
  13. app.use(bodyParser.urlencoded({ extended: true}));
  14. app.use(sessions({
  15. cookieName: 'session',
  16. path : '/',
  17. secret: 'sadsadcdmasmkvmdsa',
  18. duration: 30*60*1000,
  19. activeDuration: 5*60*1000
  20. }));
  21.  
  22. app.get('/', function(req, res){
  23. res.render('index.html');
  24. });
  25.  
  26. app.post('/', function(req, res){
  27. if(req.body.user === 'admin' && req.body.pass === 'admin'){
  28. req.session.user = req.body.user;
  29. req.session.pass = req.body.pass;
  30. } else {
  31. req.session.reset();
  32. calcVal = null;
  33. }
  34. res.render('index.html');
  35. });
  36.  
  37. app.get('/isLogedIn', function(req, res){
  38. if(req.session && req.session.user === 'admin' && req.session.pass === 'admin'){
  39. res.send('logedIn');
  40. }
  41. });
  42.  
  43. app.get('/calculator', function(req, res){
  44. res.send(calcVal);
  45. });
  46.  
  47. app.post('/calculator', function(req, res) {
  48. calcVal = req.body.display;
  49. });
  50.  
  51. app.listen(8080, function(){
  52. console.log('Server running on 8080...');
  53. });
  54.  
  55. <!DOCTYPE html>
  56. <html ng-app="scotchApp">
  57.  
  58. <head>
  59. <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" />
  60. <link rel="stylesheet" href="//netdna.bootstrapcdn.com/font- awesome/4.0.0/css/font-awesome.css" />
  61. <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"> </script>
  62. <script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
  63. <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.10/angular.min.js"> </script>
  64. <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.10/angular- route.min.js"></script>
  65.  
  66. </head>
  67.  
  68. <body ng-controller="profileController">
  69.  
  70. <nav class="navbar navbar-default">
  71. <div class="container">
  72. <ul class="nav navbar-nav navbar-center-left">
  73. <li><a href="#"><i class="fa fa-home"></i> Profile</a></li>
  74. <li><a href="#calculator"><i class="fa fa-shield"></i> Calculator</a></li>
  75. <li><a href="#readme"><i class="fa fa-comment"></i> Readme</a> </li>
  76. </ul>
  77. <ul class="nav navbar-nav navbar-right">
  78. <form method="post" action="/" id="loginForm">
  79. <label for="user">Username: </label>
  80. <input type="text" name="user"/>
  81. <label for="pass">Password: </label>
  82. <input type="pass" name="pass"/>
  83. <input type="submit" id="loginButton" value="Login"/>
  84. </form>
  85. </ul>
  86. </div>
  87. </nav>
  88.  
  89. <div id="main">
  90. <div ng-view></div>
  91. </div>
  92.  
  93. <script>
  94. var scotchApp = angular.module('scotchApp', ['ngRoute']);
  95. scotchApp.config(function($routeProvider) {
  96. $.get('/isLogedIn', function(res) {
  97. if(res === 'logedIn'){
  98. $('#loginForm').replaceWith('<form method="post" action="/" id="logoutForm"><input type="submit" id="logoutButton" value="logout"/> </form>');
  99. $routeProvider.when('/', {
  100. templateUrl : 'pages/profile.html',
  101. controller : 'profileController'
  102. })
  103. .when('/calculator', {
  104. templateUrl : 'pages/calculator.html',
  105. controller : 'calculatorController'
  106. })
  107. .when('/readme', {
  108. templateUrl : 'pages/readme.html',
  109. controller : 'readmeController'
  110. });
  111. } else {
  112. $routeProvider.when('/', {
  113. templateUrl : 'pages/profile.html',
  114. controller : 'profileController'
  115. })
  116. .when('/calculator', {
  117. templateUrl : 'pages/profile.html',
  118. controller : 'calculatorController'
  119. })
  120. .when('/readme', {
  121. templateUrl : 'pages/readme.html',
  122. controller : 'readmeController'
  123. });
  124. }
  125. });
  126. });
  127. scotchApp.controller('profileController', function($scope) {});
  128. scotchApp.controller('calculatorController', function($scope) {});
  129. scotchApp.controller('readmeController', function($scope) {});
  130. </script>
  131. </body>
  132. </html>
Add Comment
Please, Sign In to add comment