diff --git a/package-lock.json b/package-lock.json index 6f65edc..c973032 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,15 +1,15 @@ { "name": "madisonlinux", - "version": "0.1.0", + "version": "0.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "madisonlinux", - "version": "0.1.0", + "version": "0.2.0", "license": "MIT", "dependencies": { - "body-parser": "^2.2.0", + "body-parser": "^2.2.1", "ejs": "3.1.10", "express": "^5.2.1", "ics": "^3.8.1", @@ -17,8 +17,8 @@ }, "devDependencies": { "@sindresorhus/tsconfig": "8.0.1", - "@types/express": "^5.0.3", - "@types/node": "^24.7.0", + "@types/express": "^5.0.6", + "@types/node": "^24.10.1", "forking-build-shit": "1.0.5", "typescript": "5.9.3" } @@ -368,15 +368,15 @@ } }, "node_modules/@types/express": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@types/express/-/express-5.0.3.tgz", - "integrity": "sha512-wGA0NX93b19/dZC1J18tKWVIYWyyF2ZjT9vin/NRu0qzzvfVzWjs04iq2rQ3H65vCTQYlRqs3YHfY7zjdV+9Kw==", + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/express/-/express-5.0.6.tgz", + "integrity": "sha512-sKYVuV7Sv9fbPIt/442koC7+IIwK5olP1KWeD88e/idgoJqDm3JV/YUiPwkoKK92ylff2MGxSz1CSjsXelx0YA==", "dev": true, "license": "MIT", "dependencies": { "@types/body-parser": "*", "@types/express-serve-static-core": "^5.0.0", - "@types/serve-static": "*" + "@types/serve-static": "^2" } }, "node_modules/@types/express-serve-static-core": { @@ -399,21 +399,14 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/mime": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", - "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/node": { - "version": "24.7.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.7.0.tgz", - "integrity": "sha512-IbKooQVqUBrlzWTi79E8Fw78l8k1RNtlDDNWsFZs7XonuQSJ8oNYfEeclhprUldXISRMLzBpILuKgPlIxm+/Yw==", + "version": "24.10.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz", + "integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~7.14.0" + "undici-types": "~7.16.0" } }, "node_modules/@types/qs": { @@ -441,25 +434,13 @@ } }, "node_modules/@types/serve-static": { - "version": "1.15.9", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.9.tgz", - "integrity": "sha512-dOTIuqpWLyl3BBXU3maNQsS4A3zuuoYRNIvYSxxhebPfXg2mzWQEPne/nlJ37yOse6uGgR386uTpdsx4D0QZWA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-2.2.0.tgz", + "integrity": "sha512-8mam4H1NHLtu7nmtalF7eyBH14QyOASmcxHhSfEoRyr0nP/YdoesEtU+uSRvMe96TW/HPTtkoKqQLl53N7UXMQ==", "dev": true, "license": "MIT", "dependencies": { "@types/http-errors": "*", - "@types/node": "*", - "@types/send": "<1" - } - }, - "node_modules/@types/serve-static/node_modules/@types/send": { - "version": "0.17.5", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.5.tgz", - "integrity": "sha512-z6F2D3cOStZvuk2SaP6YrwkNO65iTZcwA2ZkSABegdkAh/lf+Aa/YQndZVfmEXT5vgAp6zv06VQ3ejSVjAny4w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/mime": "^1", "@types/node": "*" } }, @@ -1692,9 +1673,9 @@ } }, "node_modules/undici-types": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.14.0.tgz", - "integrity": "sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", "dev": true, "license": "MIT" }, diff --git a/package.json b/package.json index 7b6dac7..6a03ac7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "madisonlinux", - "version": "0.1.1", + "version": "0.2.0", "description": "Website for upcoming Linux install party in Madison WI", "keywords": [ "web", @@ -24,7 +24,7 @@ "views" ], "dependencies": { - "body-parser": "^2.2.0", + "body-parser": "^2.2.1", "ejs": "3.1.10", "express": "^5.2.1", "ics": "^3.8.1", @@ -32,8 +32,8 @@ }, "devDependencies": { "@sindresorhus/tsconfig": "8.0.1", - "@types/express": "^5.0.3", - "@types/node": "^24.7.0", + "@types/express": "^5.0.6", + "@types/node": "^24.10.1", "forking-build-shit": "1.0.5", "typescript": "5.9.3" }, diff --git a/src/Web.ts b/src/Web.ts index 89dedca..35da598 100644 --- a/src/Web.ts +++ b/src/Web.ts @@ -83,7 +83,7 @@ class Web { else if(!adminMode){ console.log(req.headers?.['user-agent']); } - res.render('index_after', { + res.render('lug', { page: { title: 'Madison End of 10 Install Party', titlesuffix: 'Get help installing Linux', @@ -129,18 +129,22 @@ class Web { app.get('/event.ics', (_, res) => { createEvent({ - uid: '1@madisonlinux.com', - start: [2025, 11, 1, 19, 30], - duration: { hours: 3, minutes: 0 }, - title: 'Madison Linux Workshop', - description: 'Keep your current PC up-to-date by installing a free OS!', + uid: '2@madisonlinux.com', + sequence: 1, + startInputType: 'local', + startOutputType: 'local', + start: [2026, 1, 15, 19, 0], + duration: { hours: 1, minutes: 0 }, + title: 'Madison Linux User Group', + description: 'A place for Linux users of all skill levels to meet and share knowledge, troubleshoot, and show off', location: '56 Corry St, Madison, WI 53704', url: 'https://madisonlinux.com/', geo: { lat: 43.0982199, lon: -89.3481373 }, status: 'CONFIRMED', busyStatus: 'TENTATIVE', organizer: { name: 'Cory Sanin', email: 'endof10@cory.sanin.dev' }, - method: 'REQUEST' + method: 'REQUEST', + recurrenceRule: 'FREQ=MONTHLY;BYDAY=TH;BYSETPOS=3' }, (err, s) => { if (err) { console.error(err); diff --git a/views/lug.ejs b/views/lug.ejs new file mode 100644 index 0000000..6a6ccdf --- /dev/null +++ b/views/lug.ejs @@ -0,0 +1,51 @@ + + + + + <%- include("head", locals) %> + + + + <%- include("navigation", locals) %> +
+ <% if (adminMode) { %> + <%- include("installform", locals) %> + <% } %> +

Madison Linux

+

+ A Linux user Group (LUG) is coming to your neighborhood... +

+

+ Madison Linux is (will be?) a place for Linux users of all skill levels to meet and share knowledge, troubleshoot, and show off. + Completely open to the pulic, we will meet monthly starting in January 2026. Every 3rd Thursday, at 7PM. + Sector67 is hosting us again, so a big thank you to them! +

+

+ 🗓️ Add to Calendar +

+

+ Agenda for January 15th: +

+

+

+ Hope to see you soon! +

+
+ <% if (installs && installs.length) { %> +
+

We have saved <%= installs.length %> computer<% if (installs.length > 1) { %>s<% } %>!

+
+ <% } %> +

Need help?

+

+ If we set up your Linux installation and you need help or guidance, shoot me an + email at endof10@cory.sanin.dev. +

+
+ +