From f97c9d0f5f9f2000140cbe7bd276f3c4b3df2ddb Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 05:58:19 +0000 Subject: [PATCH 01/16] Initial restructuring of files and folders for Express --- README.md | 2 + app.js | 0 index.html | 69 --------------------------- package.json | 0 {images => static/images}/group.jpg | Bin {styles => static/styles}/style.css | 0 forums.html => views/pages/index.ejs | 0 7 files changed, 2 insertions(+), 69 deletions(-) create mode 100644 app.js delete mode 100644 index.html create mode 100644 package.json rename {images => static/images}/group.jpg (100%) rename {styles => static/styles}/style.css (100%) rename forums.html => views/pages/index.ejs (100%) diff --git a/README.md b/README.md index 8a21084..c86ec84 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +# This branch is for converting the site to an Express NodeJS app. + # The glasgow Coder Collective ![image arise Fawlkes](https://upload.wikimedia.org/wikipedia/commons/thumb/a/a1/Mozilla_Phoenix_logo_vector.svg/500px-Mozilla_Phoenix_logo_vector.svg.png) diff --git a/app.js b/app.js new file mode 100644 index 0000000..e69de29 diff --git a/index.html b/index.html deleted file mode 100644 index c5646c8..0000000 --- a/index.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - Glasgow Coders - - - - - - - - - - -
-
-

So what's the collective all about then!?

-

Coffee, chat, code, cake...

-

Amongst the bustling tech scene in Glasgow, lives the glasgowCoderCollective.

-

We aim to build a social community of adult coders at all levels of experience to code, chat, learn, inspire, - collaborate... The list is endless! We want friendships to evolve amidst coffee, cake, chat and coding. Think laptops, drinks, - and laughter!

-

When and where?

-

Weekly meets are on Thurdays evenings at GCU library 6.30pm+. We all live busy lives and the collective try to reflect this, - so drop in when it suits you

-

With the new year, we hope to start monthly excursions to other tech events


-

Um, so I'm still not clear what to do at a meet!

-

Here's a few of the possibilities, just bring your laptop:

-
    -
  • Progress through freeCodeCamp/codeAcademy/Treehouse tutorials
  • -
  • Do some of your own projects
  • -
  • Browse and talk geeky stuff
  • -
  • Ask if anyone has a clue how to solve that thing you're stuck on!
  • -
  • Plug your earphones in for a bit to concentrate!
  • -
-

So come along, beginners and experts alike, and have fun!

- -

If you want to become part of our community, join us!

-
-
- -
-
-

Join our Slack or Facebook

-
-
-

- -

-
-
-
- - -
- - - - - diff --git a/package.json b/package.json new file mode 100644 index 0000000..e69de29 diff --git a/images/group.jpg b/static/images/group.jpg similarity index 100% rename from images/group.jpg rename to static/images/group.jpg diff --git a/styles/style.css b/static/styles/style.css similarity index 100% rename from styles/style.css rename to static/styles/style.css diff --git a/forums.html b/views/pages/index.ejs similarity index 100% rename from forums.html rename to views/pages/index.ejs From 021844e24948232a366fa0c8c7b32e36f967e816 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 06:03:22 +0000 Subject: [PATCH 02/16] Added name, main and dependencies (ejs and express) to package.json --- package-lock.json | 366 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 8 + 2 files changed, 374 insertions(+) create mode 100644 package-lock.json diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..9dd23f0 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,366 @@ +{ + "name": "gcc-thesite", + "requires": true, + "lockfileVersion": 1, + "dependencies": { + "accepts": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", + "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=", + "requires": { + "mime-types": "2.1.17", + "negotiator": "0.6.1" + } + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "body-parser": { + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", + "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "requires": { + "bytes": "3.0.0", + "content-type": "1.0.4", + "debug": "2.6.9", + "depd": "1.1.2", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "on-finished": "2.3.0", + "qs": "6.5.1", + "raw-body": "2.3.2", + "type-is": "1.6.15" + } + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "ejs": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.7.tgz", + "integrity": "sha1-zIcsFoiArjxxiXYv1f/ACJbJUYo=" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "express": { + "version": "4.16.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", + "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=", + "requires": { + "accepts": "1.3.4", + "array-flatten": "1.1.1", + "body-parser": "1.18.2", + "content-disposition": "0.5.2", + "content-type": "1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "1.1.2", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "finalhandler": "1.1.0", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "1.1.2", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "2.0.2", + "qs": "6.5.1", + "range-parser": "1.2.0", + "safe-buffer": "5.1.1", + "send": "0.16.1", + "serve-static": "1.13.1", + "setprototypeof": "1.1.0", + "statuses": "1.3.1", + "type-is": "1.6.15", + "utils-merge": "1.0.1", + "vary": "1.1.2" + } + }, + "finalhandler": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.3.1", + "unpipe": "1.0.0" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "requires": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": "1.3.1" + }, + "dependencies": { + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" + }, + "setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" + } + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ipaddr.js": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.5.2.tgz", + "integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A=" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" + }, + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" + }, + "mime-types": { + "version": "2.1.17", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", + "requires": { + "mime-db": "1.30.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "proxy-addr": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz", + "integrity": "sha1-ZXFQT0e7mI7IGAJT+F3X4UlSvew=", + "requires": { + "forwarded": "0.1.2", + "ipaddr.js": "1.5.2" + } + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" + }, + "raw-body": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", + "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "unpipe": "1.0.0" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "send": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", + "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", + "requires": { + "debug": "2.6.9", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.3.1" + } + }, + "serve-static": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", + "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", + "requires": { + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.2", + "send": "0.16.1" + } + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" + }, + "type-is": { + "version": "1.6.15", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", + "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.17" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + } + } +} diff --git a/package.json b/package.json index e69de29..bc1ac13 100644 --- a/package.json +++ b/package.json @@ -0,0 +1,8 @@ +{ + "name": "gcc-thesite", + "main": "app.js", + "dependencies": { + "ejs": "*", + "express": "*" + } +} From 811698c8b95e74174bfa0dd408b0b323e00be14d Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 06:15:02 +0000 Subject: [PATCH 03/16] Basic app.js functionality --- app.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/app.js b/app.js index e69de29..4789686 100644 --- a/app.js +++ b/app.js @@ -0,0 +1,17 @@ +// app.js +// load the things we need +var express = require('express'); +var app = express(); + +// set the view engine to ejs +app.set('view engine', 'ejs'); + +// use res.render to load up an ejs view file + +// index page +app.get('/', function(req, res) { + res.render('pages/index'); +}); + +app.listen(8080); +console.log('8080 is the magic port'); \ No newline at end of file From fe7f6ddff69a2e4744b722cf9e1d8746a12de3e9 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 07:44:16 +0000 Subject: [PATCH 04/16] Separated head, header and footer views. Added copyright and dedication to Neil. --- views/pages/index.ejs | 73 +++++++++++++++++++++++---------------- views/partials/footer.ejs | 11 ++++++ views/partials/head.ejs | 6 ++++ views/partials/header.ejs | 9 +++++ 4 files changed, 70 insertions(+), 29 deletions(-) create mode 100644 views/partials/footer.ejs create mode 100644 views/partials/head.ejs create mode 100644 views/partials/header.ejs diff --git a/views/pages/index.ejs b/views/pages/index.ejs index 15fcc79..fd72e87 100644 --- a/views/pages/index.ejs +++ b/views/pages/index.ejs @@ -1,38 +1,53 @@ - - Glasgow Coders - - - - - - + + <% include ../partials/head %> - -

Forum

- -
-

General

-
+ +
+ <% include ../partials/header %> +
+ +
+ <% include ../partials/footer %> +
+ + + \ No newline at end of file diff --git a/views/partials/footer.ejs b/views/partials/footer.ejs new file mode 100644 index 0000000..09a88ea --- /dev/null +++ b/views/partials/footer.ejs @@ -0,0 +1,11 @@ + + + +
Dedicated to the memory of handsome Neil Boyd who sadly passed away in December 2017.
\ No newline at end of file diff --git a/views/partials/head.ejs b/views/partials/head.ejs new file mode 100644 index 0000000..1aadd40 --- /dev/null +++ b/views/partials/head.ejs @@ -0,0 +1,6 @@ +Glasgow Coder Collective + + + + + \ No newline at end of file diff --git a/views/partials/header.ejs b/views/partials/header.ejs new file mode 100644 index 0000000..1e1ef73 --- /dev/null +++ b/views/partials/header.ejs @@ -0,0 +1,9 @@ + + + + Glasgow Coders + + + + + \ No newline at end of file From 88fae81d41a63f9a50382040c172cc8f15ce6196 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 08:04:34 +0000 Subject: [PATCH 05/16] Added static route --- app.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app.js b/app.js index 4789686..e006c6a 100644 --- a/app.js +++ b/app.js @@ -1,6 +1,7 @@ // app.js // load the things we need var express = require('express'); +var path = require('path'); var app = express(); // set the view engine to ejs @@ -13,5 +14,8 @@ app.get('/', function(req, res) { res.render('pages/index'); }); +// enable access to static pages +app.use(express.static(path.join(__dirname, 'static'))); + app.listen(8080); console.log('8080 is the magic port'); \ No newline at end of file From c958565667713e768f39f5f4d5441c690c1872f1 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 08:07:26 +0000 Subject: [PATCH 06/16] Commented out content --- views/pages/index.ejs | 1 + 1 file changed, 1 insertion(+) diff --git a/views/pages/index.ejs b/views/pages/index.ejs index fd72e87..1e452da 100644 --- a/views/pages/index.ejs +++ b/views/pages/index.ejs @@ -9,6 +9,7 @@
<% include ../partials/header %>
+ \ No newline at end of file diff --git a/views/partials/header.ejs b/views/partials/header.ejs index e69de29..ec13920 100644 --- a/views/partials/header.ejs +++ b/views/partials/header.ejs @@ -0,0 +1,11 @@ +
+ +
+ +
+ +

Glasgow Coder Collective

+ +
+ +
From 16ea8ee622446d282fd3d965062e7d2664e7bad6 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 09:48:12 +0000 Subject: [PATCH 09/16] Merged layout-design --- README.md | 98 ++--- app.js | 40 +-- package-lock.json | 732 +++++++++++++++++++------------------- package.json | 16 +- static/css/main.css | 50 +-- static/css/main1.css | 164 ++++----- views/partials/footer.ejs | 20 +- views/partials/head.ejs | 10 +- views/partials/header.ejs | 22 +- 9 files changed, 576 insertions(+), 576 deletions(-) diff --git a/README.md b/README.md index c86ec84..2f54014 100644 --- a/README.md +++ b/README.md @@ -1,49 +1,49 @@ -# This branch is for converting the site to an Express NodeJS app. - -# The glasgow Coder Collective - -![image arise Fawlkes](https://upload.wikimedia.org/wikipedia/commons/thumb/a/a1/Mozilla_Phoenix_logo_vector.svg/500px-Mozilla_Phoenix_logo_vector.svg.png) - -## Abous Us - -We are the Coder Collective! A collection of like-minded technology enthusiasts that is open to people of all (and no) experience levels. We believe programming is most productive and fun when done collectively. Come to a meeting for some social coding! - -While we have our origins in web development via FreeCodeCamp we encourage anyone with a project, or even just curiosity about coding, to come see what others are working on. Later if you feel you can contribute, you can. - -Our current project is the relaunch of the group website. However if you have a current computer-related project feel free to ask the group for help. - -In the future we eventually plan on pooling the group’s expertise and offering a local charity to revamp their website which would serve as a learning exercise and team project and would give back to the community. Other project ideas will be considered. - - -### The Site Relaunch - -We have big plans for the site - -[Tracy](https://github.com/verde79) is helming the main page - -[NeilB](https://github.com/conesco3) is maintaining the backend. We may use Django - -[Ed](https://github.com/L3gomancer) is handling the profile pages section - -Stretch Goals include: - -A forum - -User accounts with logins - -Polls - -Integration with Slack - -Some experiments with interactivity and animations - - - -### Ancient History - -Our previous group site was [www.glawebdev.com](www.glawebdev.com) -previously set up by [NeilD](https://github.com/neildocherty) - - - - +# This branch is for converting the site to an Express NodeJS app. + +# The glasgow Coder Collective + +![image arise Fawlkes](https://upload.wikimedia.org/wikipedia/commons/thumb/a/a1/Mozilla_Phoenix_logo_vector.svg/500px-Mozilla_Phoenix_logo_vector.svg.png) + +## Abous Us + +We are the Coder Collective! A collection of like-minded technology enthusiasts that is open to people of all (and no) experience levels. We believe programming is most productive and fun when done collectively. Come to a meeting for some social coding! + +While we have our origins in web development via FreeCodeCamp we encourage anyone with a project, or even just curiosity about coding, to come see what others are working on. Later if you feel you can contribute, you can. + +Our current project is the relaunch of the group website. However if you have a current computer-related project feel free to ask the group for help. + +In the future we eventually plan on pooling the group’s expertise and offering a local charity to revamp their website which would serve as a learning exercise and team project and would give back to the community. Other project ideas will be considered. + + +### The Site Relaunch + +We have big plans for the site + +[Tracy](https://github.com/verde79) is helming the main page + +[NeilB](https://github.com/conesco3) is maintaining the backend. We may use Django + +[Ed](https://github.com/L3gomancer) is handling the profile pages section + +Stretch Goals include: + +A forum + +User accounts with logins + +Polls + +Integration with Slack + +Some experiments with interactivity and animations + + + +### Ancient History + +Our previous group site was [www.glawebdev.com](www.glawebdev.com) +previously set up by [NeilD](https://github.com/neildocherty) + + + + diff --git a/app.js b/app.js index e006c6a..7d29861 100644 --- a/app.js +++ b/app.js @@ -1,21 +1,21 @@ -// app.js -// load the things we need -var express = require('express'); -var path = require('path'); -var app = express(); - -// set the view engine to ejs -app.set('view engine', 'ejs'); - -// use res.render to load up an ejs view file - -// index page -app.get('/', function(req, res) { - res.render('pages/index'); -}); - -// enable access to static pages -app.use(express.static(path.join(__dirname, 'static'))); - -app.listen(8080); +// app.js +// load the things we need +var express = require('express'); +var path = require('path'); +var app = express(); + +// set the view engine to ejs +app.set('view engine', 'ejs'); + +// use res.render to load up an ejs view file + +// index page +app.get('/', function(req, res) { + res.render('pages/index'); +}); + +// enable access to static pages +app.use(express.static(path.join(__dirname, 'static'))); + +app.listen(8080); console.log('8080 is the magic port'); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 9dd23f0..c2c1246 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,366 +1,366 @@ -{ - "name": "gcc-thesite", - "requires": true, - "lockfileVersion": 1, - "dependencies": { - "accepts": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", - "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=", - "requires": { - "mime-types": "2.1.17", - "negotiator": "0.6.1" - } - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "body-parser": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", - "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", - "requires": { - "bytes": "3.0.0", - "content-type": "1.0.4", - "debug": "2.6.9", - "depd": "1.1.2", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", - "on-finished": "2.3.0", - "qs": "6.5.1", - "raw-body": "2.3.2", - "type-is": "1.6.15" - } - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "ejs": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.7.tgz", - "integrity": "sha1-zIcsFoiArjxxiXYv1f/ACJbJUYo=" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" - }, - "express": { - "version": "4.16.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", - "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=", - "requires": { - "accepts": "1.3.4", - "array-flatten": "1.1.1", - "body-parser": "1.18.2", - "content-disposition": "0.5.2", - "content-type": "1.0.4", - "cookie": "0.3.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "1.1.2", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", - "finalhandler": "1.1.0", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "1.1.2", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "path-to-regexp": "0.1.7", - "proxy-addr": "2.0.2", - "qs": "6.5.1", - "range-parser": "1.2.0", - "safe-buffer": "5.1.1", - "send": "0.16.1", - "serve-static": "1.13.1", - "setprototypeof": "1.1.0", - "statuses": "1.3.1", - "type-is": "1.6.15", - "utils-merge": "1.0.1", - "vary": "1.1.2" - } - }, - "finalhandler": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", - "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", - "requires": { - "debug": "2.6.9", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "statuses": "1.3.1", - "unpipe": "1.0.0" - } - }, - "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" - }, - "http-errors": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", - "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "requires": { - "depd": "1.1.1", - "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": "1.3.1" - }, - "dependencies": { - "depd": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" - }, - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" - } - } - }, - "iconv-lite": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ipaddr.js": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.5.2.tgz", - "integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A=" - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" - }, - "mime-db": { - "version": "1.30.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", - "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" - }, - "mime-types": { - "version": "2.1.17", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", - "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", - "requires": { - "mime-db": "1.30.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "proxy-addr": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz", - "integrity": "sha1-ZXFQT0e7mI7IGAJT+F3X4UlSvew=", - "requires": { - "forwarded": "0.1.2", - "ipaddr.js": "1.5.2" - } - }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" - }, - "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" - }, - "raw-body": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", - "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", - "unpipe": "1.0.0" - } - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" - }, - "send": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", - "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", - "requires": { - "debug": "2.6.9", - "depd": "1.1.2", - "destroy": "1.0.4", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", - "fresh": "0.5.2", - "http-errors": "1.6.2", - "mime": "1.4.1", - "ms": "2.0.0", - "on-finished": "2.3.0", - "range-parser": "1.2.0", - "statuses": "1.3.1" - } - }, - "serve-static": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", - "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", - "requires": { - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "parseurl": "1.3.2", - "send": "0.16.1" - } - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" - }, - "statuses": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", - "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" - }, - "type-is": { - "version": "1.6.15", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", - "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", - "requires": { - "media-typer": "0.3.0", - "mime-types": "2.1.17" - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" - } - } -} +{ + "name": "gcc-thesite", + "requires": true, + "lockfileVersion": 1, + "dependencies": { + "accepts": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", + "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=", + "requires": { + "mime-types": "2.1.17", + "negotiator": "0.6.1" + } + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "body-parser": { + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", + "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "requires": { + "bytes": "3.0.0", + "content-type": "1.0.4", + "debug": "2.6.9", + "depd": "1.1.2", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "on-finished": "2.3.0", + "qs": "6.5.1", + "raw-body": "2.3.2", + "type-is": "1.6.15" + } + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "ejs": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.7.tgz", + "integrity": "sha1-zIcsFoiArjxxiXYv1f/ACJbJUYo=" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "express": { + "version": "4.16.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz", + "integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=", + "requires": { + "accepts": "1.3.4", + "array-flatten": "1.1.1", + "body-parser": "1.18.2", + "content-disposition": "0.5.2", + "content-type": "1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "1.1.2", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "finalhandler": "1.1.0", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "1.1.2", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "2.0.2", + "qs": "6.5.1", + "range-parser": "1.2.0", + "safe-buffer": "5.1.1", + "send": "0.16.1", + "serve-static": "1.13.1", + "setprototypeof": "1.1.0", + "statuses": "1.3.1", + "type-is": "1.6.15", + "utils-merge": "1.0.1", + "vary": "1.1.2" + } + }, + "finalhandler": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.3.1", + "unpipe": "1.0.0" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "requires": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": "1.3.1" + }, + "dependencies": { + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" + }, + "setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" + } + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ipaddr.js": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.5.2.tgz", + "integrity": "sha1-1LUFvemUaYfM8PxY2QEP+WB+P6A=" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" + }, + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" + }, + "mime-types": { + "version": "2.1.17", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", + "requires": { + "mime-db": "1.30.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "proxy-addr": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.2.tgz", + "integrity": "sha1-ZXFQT0e7mI7IGAJT+F3X4UlSvew=", + "requires": { + "forwarded": "0.1.2", + "ipaddr.js": "1.5.2" + } + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" + }, + "raw-body": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", + "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "unpipe": "1.0.0" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "send": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz", + "integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==", + "requires": { + "debug": "2.6.9", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.3.1" + } + }, + "serve-static": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.1.tgz", + "integrity": "sha512-hSMUZrsPa/I09VYFJwa627JJkNs0NrfL1Uzuup+GqHfToR2KcsXFymXSV90hoyw3M+msjFuQly+YzIH/q0MGlQ==", + "requires": { + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.2", + "send": "0.16.1" + } + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" + }, + "type-is": { + "version": "1.6.15", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", + "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.17" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + } + } +} diff --git a/package.json b/package.json index bc1ac13..9e47f5e 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ -{ - "name": "gcc-thesite", - "main": "app.js", - "dependencies": { - "ejs": "*", - "express": "*" - } -} +{ + "name": "gcc-thesite", + "main": "app.js", + "dependencies": { + "ejs": "*", + "express": "*" + } +} diff --git a/static/css/main.css b/static/css/main.css index ce7042b..7cb2512 100644 --- a/static/css/main.css +++ b/static/css/main.css @@ -1,25 +1,25 @@ -/*@media (min-width: 1200px) { - .container{ - max-width: 1200px; - } -}*/ - -.jumbotron { - margin: 0 0 0 0; -} - -body { - /* padding:0 10px 0 10px; */ - background-color: #004c4c; - } - - footer { - color: white; - background-color: black; - text-align: center; - margin-bottom: 20px 0 -10px 0; - padding:10px; - } - - - +/*@media (min-width: 1200px) { + .container{ + max-width: 1200px; + } +}*/ + +.jumbotron { + margin: 0 0 0 0; +} + +body { + /* padding:0 10px 0 10px; */ + background-color: #004c4c; + } + + footer { + color: white; + background-color: black; + text-align: center; + margin-bottom: 20px 0 -10px 0; + padding:10px; + } + + + diff --git a/static/css/main1.css b/static/css/main1.css index 63b8ec4..5ef0639 100644 --- a/static/css/main1.css +++ b/static/css/main1.css @@ -1,82 +1,82 @@ -/*.navbar{ - padding:2em; - -webkit-border-radius: 0; - -moz-border-radius: 0; - border-radius: 0 !important; -} - -.main_container{ - background-image:url("group2.jpg"); - background-size: 100% 100%; - background-repeat: no-repeat; - padding: 35px; - margin-top: -20px; -} -*/ -.container{ - padding:0 10px 0 10px; - background-color: #004c4c; - border-radius: none; -} - -.jumbotron { - height: 80px; - vertical-align: middle; -} - -/* -section{ - margin:25px; - padding:20px; - background-color: white; - display:grid; - grid-template-columns: 1fr; -}*/ - -section,iframe{ - border-radius: 5px; - text-align: center; -} - -h1,h2,h3{ - text-align: center; - padding-bottom: 20px; -} - -.about{ - background-color: white; - opacity:0.7; - padding: 30px !important; - border-radius: 5px; - -} - -.join, .calendar{ - grid-column: 1; - text-align: center; - margin:auto; - width:400px; -} - -.g-recaptcha{ - width:70px; -} -.calendar{ - - font-weight: bold; - - height:200px; - border-radius: 5px; -} -iframe{ - display:block; - margin:auto; - width:100%; -} - -footer{ - background-color: black; - text-align: center; - margin-bottom: 20px 0 -10px 0; - padding:10px; -} +/*.navbar{ + padding:2em; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0 !important; +} + +.main_container{ + background-image:url("group2.jpg"); + background-size: 100% 100%; + background-repeat: no-repeat; + padding: 35px; + margin-top: -20px; +} +*/ +.container{ + padding:0 10px 0 10px; + background-color: #004c4c; + border-radius: none; +} + +.jumbotron { + height: 80px; + vertical-align: middle; +} + +/* +section{ + margin:25px; + padding:20px; + background-color: white; + display:grid; + grid-template-columns: 1fr; +}*/ + +section,iframe{ + border-radius: 5px; + text-align: center; +} + +h1,h2,h3{ + text-align: center; + padding-bottom: 20px; +} + +.about{ + background-color: white; + opacity:0.7; + padding: 30px !important; + border-radius: 5px; + +} + +.join, .calendar{ + grid-column: 1; + text-align: center; + margin:auto; + width:400px; +} + +.g-recaptcha{ + width:70px; +} +.calendar{ + + font-weight: bold; + + height:200px; + border-radius: 5px; +} +iframe{ + display:block; + margin:auto; + width:100%; +} + +footer{ + background-color: black; + text-align: center; + margin-bottom: 20px 0 -10px 0; + padding:10px; +} diff --git a/views/partials/footer.ejs b/views/partials/footer.ejs index e49b96b..bb46f3f 100644 --- a/views/partials/footer.ejs +++ b/views/partials/footer.ejs @@ -1,11 +1,11 @@ - - - + + +
Dedicated to the memory of handsome Neil Boyd who sadly passed away in December 2017.
\ No newline at end of file diff --git a/views/partials/head.ejs b/views/partials/head.ejs index 9198f65..bfe16a2 100644 --- a/views/partials/head.ejs +++ b/views/partials/head.ejs @@ -1,6 +1,6 @@ -Glasgow Coder Collective - - - - +Glasgow Coder Collective + + + + \ No newline at end of file diff --git a/views/partials/header.ejs b/views/partials/header.ejs index ec13920..ba7267c 100644 --- a/views/partials/header.ejs +++ b/views/partials/header.ejs @@ -1,11 +1,11 @@ -
- -
- -
- -

Glasgow Coder Collective

- -
- -
+
+ +
+ +
+ +

Glasgow Coder Collective

+ +
+ +
From d5db157a03e4b54449d556a490d6c8b834a2e087 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 09:57:31 +0000 Subject: [PATCH 10/16] Added start script --- package.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/package.json b/package.json index 9e47f5e..03a4436 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,9 @@ { "name": "gcc-thesite", "main": "app.js", + "scripts": { + "start": "node app.js" + }, "dependencies": { "ejs": "*", "express": "*" From 6e3a13692c917158c5bd74f29c94ffdacac42746 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 10:00:58 +0000 Subject: [PATCH 11/16] Removed space in h1 in header --- views/partials/header.ejs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/partials/header.ejs b/views/partials/header.ejs index ba7267c..50fe86b 100644 --- a/views/partials/header.ejs +++ b/views/partials/header.ejs @@ -4,7 +4,7 @@
-

Glasgow Coder Collective

+

Glasgow Coder Collective

From b49916efdcfec0ddf6619b332f24f4954be9be12 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Tue, 23 Jan 2018 11:17:01 +0000 Subject: [PATCH 12/16] Configured port --- app.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/app.js b/app.js index 7d29861..f27933e 100644 --- a/app.js +++ b/app.js @@ -3,7 +3,7 @@ var express = require('express'); var path = require('path'); var app = express(); - +const PORT = process.env.PORT || 5000 // set the view engine to ejs app.set('view engine', 'ejs'); @@ -17,5 +17,4 @@ app.get('/', function(req, res) { // enable access to static pages app.use(express.static(path.join(__dirname, 'static'))); -app.listen(8080); -console.log('8080 is the magic port'); \ No newline at end of file +app.listen(PORT); From c23099000fd4c04a6ae9c357535f7e1ae0f1f6c4 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Thu, 25 Jan 2018 00:53:01 +0000 Subject: [PATCH 13/16] Added forums.ejs view --- app.js | 5 +++++ views/pages/forums.ejs | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 views/pages/forums.ejs diff --git a/app.js b/app.js index f27933e..fd80679 100644 --- a/app.js +++ b/app.js @@ -14,6 +14,11 @@ app.get('/', function(req, res) { res.render('pages/index'); }); +// forums page +app.get('/', function(req, res) { + res.render('pages/forums'); +}); + // enable access to static pages app.use(express.static(path.join(__dirname, 'static'))); diff --git a/views/pages/forums.ejs b/views/pages/forums.ejs new file mode 100644 index 0000000..19a072b --- /dev/null +++ b/views/pages/forums.ejs @@ -0,0 +1,38 @@ + + + + Glasgow Coders + + + + + + + + + + +

Forum

+ +
+

General

+
+ + +
+

Join our Slack

+
+
+ +

+ +

+
+
+
+ +

Calendar

+
+
+
+ From 315838178c71c682db0100fab8f08cef6bdfce5c Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Thu, 25 Jan 2018 00:55:54 +0000 Subject: [PATCH 14/16] Added head and footer partials to forums.ejs --- views/pages/forums.ejs | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/views/pages/forums.ejs b/views/pages/forums.ejs index 19a072b..38d0586 100644 --- a/views/pages/forums.ejs +++ b/views/pages/forums.ejs @@ -1,14 +1,7 @@ - Glasgow Coders - - - - - - - + <% include ../partials/head %> @@ -35,4 +28,8 @@
+ +<% include ../partials/footer %> + + From cb96d11539b63396e131527d96b06b58ddb9e727 Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Thu, 25 Jan 2018 00:56:55 +0000 Subject: [PATCH 15/16] Added listening line to app.js --- app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/app.js b/app.js index fd80679..de6cf87 100644 --- a/app.js +++ b/app.js @@ -23,3 +23,4 @@ app.get('/', function(req, res) { app.use(express.static(path.join(__dirname, 'static'))); app.listen(PORT); +console.log("Listening at localhost:" + PORT); From d13e9fe1b61c44452f931e14a0e1da6f0c7993ce Mon Sep 17 00:00:00 2001 From: Alastair Cooper Date: Thu, 25 Jan 2018 00:58:59 +0000 Subject: [PATCH 16/16] Fixed forums routing --- app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app.js b/app.js index de6cf87..c0153e9 100644 --- a/app.js +++ b/app.js @@ -15,7 +15,7 @@ app.get('/', function(req, res) { }); // forums page -app.get('/', function(req, res) { +app.get('/forums', function(req, res) { res.render('pages/forums'); });