Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var express = require('express'), path = require('path'), fs = require('fs');
- var app = express();
- app.use(express.static(__dirname + '/public'));
- var podatkiSpomin = ["admin/nimda", "gost/gost"];
- /**
- * TODO: Potrebna je implementacija tega dela funkcionalnosti (PU Zunanja avtentikacija)
- */
- app.get('/api/prijava', function(req, res) {
- // ...
- res.send({status: "status", napaka: "Opis napake"});
- // ...
- });
- /**
- * TODO: Potrebna je implementacija tega dela funkcionalnosti (PU Prijava uporabnika v sistem)
- */
- app.get('/prijava', function(req, res) {
- // ...
- res.send("<html><title>Naslov strani</title><body><p>Uporabnik <b>Krneki</b> nima pravice prijave v sistem!</p></body></html>");
- // ...
- });
- var port = process.env.PORT || 3030;
- app.listen(port);
- console.log('Streznik tece na ' + port + ' ...');
- var podatkiSpomin = ["admin/nimda", "gost/gost"];
- /**
- * TODO: Potrebna je implementacija tega dela funkcionalnosti (branje datoteka na strani strežnika)
- */
- var podatkiDatotekaStreznik;
- /**
- * TODO: Potrebna je implementacija tega dela funkcionalnosti
- */
- function preveriSpomin(uporabniskoIme, geslo) {
- // ...
- for (var i = 0; i < podatkiSpomin.length; i++) {
- var split = podatkiSpomin[i].split("/");
- if (uporabniskoIme == split[0] && geslo == split[1]) {
- return true;
- }
- }
- return false;
- // ...
- }
- /**
- * TODO: Potrebna je implementacija tega dela funkcionalnosti
- */
- function preveriDatotekaStreznik(uporabniskoIme, geslo) {
- // ...
- fs.readFileSync("podatki/uporabniki_streznik.json", "utf-8", function(err, data) {
- podatkiDatotekaStreznik = JSON.parse("data");
- })
- for (var i = 0; i < podatkiDatotekaStreznik.length; i++) {
- if (uporabniskoIme == podatkiDatotekaStreznik[i].u && geslo == podatkiDatotekaStreznik[i].p) {
- return true;
- }
- }
- return false;
- // ...
- }
- //.html file
- <html>
- <head>
- <title>Prijava v sistem</title>
- <link rel="stylesheet" href="css/bootstrap.min.css">
- <script src="js/jquery-1.11.2.min.js"></script>
- <script src="js/bootstrap.min.js"></script>
- <style>
- body { padding:10px; }
- #status { color:red }
- </style>
- <script>
- var podatkiSpomin = ["admin/nimda", "gost/gost"];
- var podatkiDatotekaOdjemalec;
- var uporabniskoIme = "", geslo = "";
- /**
- * TODO: Potrebna je implementacija tega dela funkcionalnosti
- */
- function preveriSpomin(uporabniskoIme, geslo) {
- // ...
- for (var i = 0; i < podatkiSpomin.length; i++) {
- var split = podatkiSpomin[i].split("/");
- if (uporabniskoIme == split[0] && geslo == split[1]) {
- return true;
- }
- }
- return false;
- // ...
- }
- /**
- * TODO: Potrebna je implementacija tega dela funkcionalnosti
- */
- function preveriDatotekaOdjemalec(uporabniskoIme, geslo) {
- // ...
- for (var i = 0; i < podatkiDatotekaOdjemalec.length; i++) {
- if (podatkiDatotekaOdjemalec[i].u == uporabniskoIme && podatkiDatotekaOdjemalec[i].p == geslo) {
- return true;
- }
- }
- return false;
- // ...
- }
- /**
- * TODO: Potrebna je implementacija tega dela funkcionalnosti (ta funkcija se kliče ob kliku gumba "Prijava")
- * Če validacija na odjemalcu ni uspešna, naj vrača false, sicer naj vrne true in izvajanje se nadaljuje na strežniku.
- * Zahteva se posreduje na /prijava, kot je zapisano v atributu action="/prijava" v okviru elementa form.
- */
- function preveriPodatke() {
- var user = $("#uporabniskoIme").val();
- var pass = $("#geslo").val();
- // ...
- if (preveriSpomin(user, pass) == true || preveriDatotekaOdjemalec(user, pass) == true) {
- return true;
- }
- return false;
- // ...
- }
- $(document).ready(function() {
- /**
- * TODO: Potrebna je implementacija tega dela funkcionalnosti (branje datotek na odjemalcu)
- */
- // ...
- $.getJSON("podatki/uporabniki_odjemalec.json", function(data) {
- podatkiDatotekaOdjemalec = data;
- });
- // ...
- });
- </script>
- </head>
- <body>
- <form action="/prijava" onsubmit="return preveriPodatke();">
- <div class="row">
- <div class="col-md-2 col-md-offset-5">
- <div class="form-group">
- <label for="uporabniskoIme">Uporabniško ime</label>
- <input type="text" class="form-control" placeholder="Vnesi uporabniško ime" id="uporabniskoIme" name="uporabniskoIme">
- </div>
- <div class="form-group">
- <label for="geslo">Geslo</label>
- <input type="password" class="form-control" placeholder="Vnesi geslo" id="geslo" name="geslo">
- </div>
- <div class="row">
- <div class="col-md-12"><button type="submit" class="btn btn-default btn-sm" id="prijava">Prijava</button></div>
- </div>
- <div class="row"><div class="col-md-12" style="margin-top:20px" id="status"></div></div>
- </div>
- </div>
- </form>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement