List of commits:
Subject Hash Author Date (UTC)
Merged www file into app.js ce17c1cf6ed21f5f1ea2357045fcf4f4240ea3d6 Eyad-Syrialover 2019-07-02 22:56:48
Fixed db object require path 09bf0558a2cb193919267da3523ea94445997a04 Eyad-Syrialover 2019-07-02 22:38:21
Has been moved to "general" folder 47515fbb4da109247ad4695cf58143568c74e0af Eyad-Syrialover 2019-07-02 22:36:50
GetNewsByID will now return only one news 79493634fe944994e43cfce1db0ea258693ad159 Eyad-Syrialover 2019-07-02 22:28:12
The router will now send the status code 404 if the supplied news id doesn't exist 27c689c920082b6c97ce098d1774d460e87d220e Eyad-Syrialover 2019-07-02 22:24:09
Created simple news view to display content fa1989d165eba0c2aab34880bbab34e260539999 Eyad-Syrialover 2019-07-02 22:19:12
Fixed some logical errors 1ce43a42499dac183b5c9d61fcafeda49957a788 Eyad-Syrialover 2019-07-02 22:18:41
Changed the callback function syntax into a lambda expression ee9932c054f23ecbff46a4922b5785ee377a5674 Eyad-Syrialover 2019-07-02 22:17:58
Switched all callback functions into a combination of promises and lambda expressions 3bd4a3be48d091e57cdd208dd6a7b42fd7e92fcc Eyad-Syrialover 2019-07-02 22:17:08
Added news router 13729daf161f670069082a3b04e255a572d79ec1 Eyad-Syrialover 2019-07-02 22:06:15
A file that contains a reference to MySQL connection 7ab07ca7c8b71bc7983390c50dfdb4d9be430784 Eyad-Syrialover 2019-06-30 00:11:40
A dedicated file that contains database credentials 4667094accb904263a548b4d8be5e63fa754565a Eyad-Syrialover 2019-06-30 00:10:56
Added SQL to create a database to store information 38ffdd899a0661a74ed3e561a120ad3b4a26f590 Eyad-Syrialover 2019-06-30 00:10:18
Added the layout view which gives all other views consistent look a7f328de8a743d4f797b783c0629d9b23943818a Eyad-Syrialover 2019-06-29 23:30:28
Added the index view 5c42739ac6307469f5359e228f35b8dcf691cc65 Eyad-Syrialover 2019-06-29 23:29:59
Added head view which contains shared metadata between all views 579afb2c9cd36138c0fa83ccd5197f1d9c7031ce Eyad-Syrialover 2019-06-29 23:29:43
Added error view to display error in formatted way bc9cce79be8604c75552c625ab4c6925a5716472 Eyad-Syrialover 2019-06-29 23:29:12
Added the index router b56dae5e53f2b66097097738b22a19daec2525c5 Eyad-Syrialover 2019-06-29 23:28:42
Added environment file 131a260f3d3f5d12325eaabd610e587d06febb31 Eyad-Syrialover 2019-06-29 23:27:50
Added several dependencies 37c6d78ba8dccd2a1283afd1704832107017cfdb Eyad-Syrialover 2019-06-29 23:24:34
Commit ce17c1cf6ed21f5f1ea2357045fcf4f4240ea3d6 - Merged www file into app.js
Author: Eyad-Syrialover
Author date (UTC): 2019-07-02 22:56
Committer name: Eyad-Syrialover
Committer date (UTC): 2019-07-02 22:56
Parent(s): 09bf0558a2cb193919267da3523ea94445997a04
Signing key:
Tree: f08941220ce09b7f88bb23e8ddc35ebf828515f9
File Lines added Lines deleted
app.js 50 0
bin/www 0 90
File app.js changed (mode: 100644) (index dbd1e23..f1a2753)
1 let debug = require('debug')('node.js-mysql-api:server');
2 let http = require('http');
1 3 let createError = require('http-errors'); let createError = require('http-errors');
2 4 let express = require('express'); let express = require('express');
3 5 let path = require('path'); let path = require('path');
 
... ... const NewsRouter = require("./routes/news");
9 11
10 12 let app = express(); let app = express();
11 13
14 // port and server setup
15 let port = normalizePort(process.env.PORT || '8000');
16 app.set('port', port);
17
18 let server = http.createServer(app);
19 server.listen(port);
20 server.on('error', (err) => {
21 if (error.syscall !== 'listen') {
22 throw err;
23 }
24
25 let bind = (typeof port === 'string') ? ('Pipe ' + port) : ('Port ' + port);
26
27 // handle specific listen errors with friendly messages
28 switch (err.code) {
29 case 'EACCES':
30 console.error(bind + ' requires elevated privileges');
31 process.exit(1);
32 break;
33 case 'EADDRINUSE':
34 console.error(bind + ' is already in use');
35 process.exit(1);
36 break;
37 default:
38 throw err;
39 }
40 });
41 server.on('listening', () => {
42 let addr = server.address();
43 let bind = (typeof addr === 'string') ? ('pipe ' + addr) : ('port ' + addr.port);
44 debug('Listening on ' + bind);
45 });
46
47 function normalizePort(val) {
48 let port = parseInt(val, 10);
49
50 if (isNaN(port)) {
51 // named pipe
52 return val;
53 }
54
55 if (port >= 0) {
56 // port number
57 return port;
58 }
59 return false;
60 }
61
12 62 // view engine setup // view engine setup
13 63 app.set('views', path.join(__dirname, 'views')); app.set('views', path.join(__dirname, 'views'));
14 64 app.engine("html", require("ejs").renderFile); app.engine("html", require("ejs").renderFile);
File bin/www deleted (index 6712716..0000000)
1 #!/usr/bin/env node
2
3 /**
4 * Module dependencies.
5 */
6
7 var app = require('../app');
8 var debug = require('debug')('node.js-mysql-api:server');
9 var http = require('http');
10
11 /**
12 * Get port from environment and store in Express.
13 */
14
15 var port = normalizePort(process.env.PORT || '8000');
16 app.set('port', port);
17
18 /**
19 * Create HTTP server.
20 */
21
22 var server = http.createServer(app);
23
24 /**
25 * Listen on provided port, on all network interfaces.
26 */
27
28 server.listen(port);
29 server.on('error', onError);
30 server.on('listening', onListening);
31
32 /**
33 * Normalize a port into a number, string, or false.
34 */
35
36 function normalizePort(val) {
37 var port = parseInt(val, 10);
38
39 if (isNaN(port)) {
40 // named pipe
41 return val;
42 }
43
44 if (port >= 0) {
45 // port number
46 return port;
47 }
48
49 return false;
50 }
51
52 /**
53 * Event listener for HTTP server "error" event.
54 */
55
56 function onError(error) {
57 if (error.syscall !== 'listen') {
58 throw error;
59 }
60
61 var bind = typeof port === 'string'
62 ? 'Pipe ' + port
63 : 'Port ' + port;
64
65 // handle specific listen errors with friendly messages
66 switch (error.code) {
67 case 'EACCES':
68 console.error(bind + ' requires elevated privileges');
69 process.exit(1);
70 break;
71 case 'EADDRINUSE':
72 console.error(bind + ' is already in use');
73 process.exit(1);
74 break;
75 default:
76 throw error;
77 }
78 }
79
80 /**
81 * Event listener for HTTP server "listening" event.
82 */
83
84 function onListening() {
85 var addr = server.address();
86 var bind = typeof addr === 'string'
87 ? 'pipe ' + addr
88 : 'port ' + addr.port;
89 debug('Listening on ' + bind);
90 }
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/EyadMohammedOsama/News-Website

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/EyadMohammedOsama/News-Website

Clone this repository using git:
git clone git://git.rocketgit.com/user/EyadMohammedOsama/News-Website

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main