new portfolio link
This commit is contained in:
parent
a02e41f380
commit
723714f398
1 changed files with 154 additions and 106 deletions
260
server.js
260
server.js
|
@ -1,131 +1,179 @@
|
|||
//! Deps
|
||||
const express = require('express');
|
||||
const helmet = require('helmet');
|
||||
const compression = require('compression');
|
||||
const cors = require('cors');
|
||||
const morgan = require('morgan');
|
||||
const chalk = require('chalk');
|
||||
const hbs = require('express-handlebars');
|
||||
const UA = require('ua-parser-js');
|
||||
const exec = require('shell-exec');
|
||||
const simpleIcons = require('simple-icons');
|
||||
const express = require("express");
|
||||
const helmet = require("helmet");
|
||||
const compression = require("compression");
|
||||
const cors = require("cors");
|
||||
const morgan = require("morgan");
|
||||
const chalk = require("chalk");
|
||||
const hbs = require("express-handlebars");
|
||||
const UA = require("ua-parser-js");
|
||||
const exec = require("shell-exec");
|
||||
const simpleIcons = require("simple-icons");
|
||||
|
||||
const con = require('./constants');
|
||||
const con = require("./constants");
|
||||
let { port, hostname } = {
|
||||
port: 3621
|
||||
//hostname: '67.182.206.28'
|
||||
port: 3621
|
||||
//hostname: '67.182.206.28'
|
||||
};
|
||||
|
||||
const app = express();
|
||||
|
||||
app.engine(
|
||||
'hbs',
|
||||
hbs({
|
||||
extname: 'hbs',
|
||||
defaultView: 'default',
|
||||
helpers: {
|
||||
ifeq: function(a, b, options) {
|
||||
if (a === b) {
|
||||
return options.fn(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
"hbs",
|
||||
hbs({
|
||||
extname: "hbs",
|
||||
defaultView: "default",
|
||||
helpers: {
|
||||
ifeq: function(a, b, options) {
|
||||
if (a === b) {
|
||||
return options.fn(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
);
|
||||
|
||||
app.set('view engine', 'hbs');
|
||||
app.set('json spaces', 4);
|
||||
app.use('/assets', express.static('./assets'));
|
||||
app.set('view options', {
|
||||
layout: false
|
||||
app.set("view engine", "hbs");
|
||||
app.set("json spaces", 4);
|
||||
app.use("/assets", express.static("./assets"));
|
||||
app.set("view options", {
|
||||
layout: false
|
||||
});
|
||||
app.use(express.json());
|
||||
app.use(
|
||||
express.urlencoded({
|
||||
extended: true
|
||||
})
|
||||
express.urlencoded({
|
||||
extended: true
|
||||
})
|
||||
);
|
||||
app.use(helmet());
|
||||
app.use(compression());
|
||||
app.use(cors());
|
||||
// Logging
|
||||
app.use(
|
||||
morgan((tokens, req, res) => {
|
||||
return [
|
||||
chalk.hex('#34ace0').bold(`[ ${tokens.method(req, res)} ]`),
|
||||
chalk.hex('#ffb142').bold(tokens.status(req, res)),
|
||||
chalk.hex('#ff5252').bold(req.hostname + tokens.url(req, res)),
|
||||
chalk.hex('#2ed573').bold(tokens['response-time'](req, res) + 'ms'),
|
||||
chalk.hex('#f78fb3').bold('@ ' + tokens.date(req, res))
|
||||
].join(' ');
|
||||
})
|
||||
morgan((tokens, req, res) => {
|
||||
return [
|
||||
chalk.hex("#34ace0").bold(`[ ${tokens.method(req, res)} ]`),
|
||||
chalk.hex("#ffb142").bold(tokens.status(req, res)),
|
||||
chalk.hex("#ff5252").bold(req.hostname + tokens.url(req, res)),
|
||||
chalk.hex("#2ed573").bold(tokens["response-time"](req, res) + "ms"),
|
||||
chalk.hex("#f78fb3").bold("@ " + tokens.date(req, res))
|
||||
].join(" ");
|
||||
})
|
||||
);
|
||||
|
||||
app.use('/portfolio', require('./routes/portfolio'));
|
||||
app.use('/p', require('./routes/p'));
|
||||
app.use('/lore', require('./routes/lore'));
|
||||
app.use('/art', require('./routes/art'));
|
||||
app.use("/portfolio", require("./routes/portfolio"));
|
||||
app.use("/p", require("./routes/p"));
|
||||
app.use("/lore", require("./routes/lore"));
|
||||
app.use("/art", require("./routes/art"));
|
||||
|
||||
module.exports = (client) => {
|
||||
app.get('/', async (req, res) => {
|
||||
/* var ua = UA(req.headers['user-agent']);
|
||||
console.log(ua) */
|
||||
res.render('index', {
|
||||
layout: 'main',
|
||||
name: con.name,
|
||||
host: req.hostname,
|
||||
item: [ { name: 'portfolio', source: 'https://shyzu.link' } ],
|
||||
social: [
|
||||
{ name: 'Twitter', color: '1DA1F2', link: 'twitter.com/codepupper', icon: simpleIcons.Twitter },
|
||||
{
|
||||
name: 'Mastodon',
|
||||
color: '3088d4',
|
||||
link: 'pounced-on.me/@code',
|
||||
icon: simpleIcons.Mastodon,
|
||||
verify: true
|
||||
},
|
||||
{ name: 'Twitter', color: '1DA1F2', link: 'twitter.com/floofydev', icon: simpleIcons.Twitter },
|
||||
{ name: 'Discord', color: '7289da', link: 'thaldr.in/discord', icon: simpleIcons.Discord },
|
||||
{ name: 'Twitch', color: '6441a4', link: 'twitch.tv/codepupper', icon: simpleIcons.Twitch },
|
||||
{ name: 'Keybase', color: '33a0ff', link: 'keybase.io/codepupper', icon: simpleIcons.Keybase },
|
||||
{ name: 'Gitdab', color: 'faacb7', link: 'gitdab.com/y', icon: simpleIcons.Git },
|
||||
{ name: 'Github', color: '333', link: 'github.com/codepupper', icon: simpleIcons.GitHub },
|
||||
{ name: 'Gitlab', color: 'E24329', link: 'gitlab.com/codepupper', icon: simpleIcons.GitLab },
|
||||
{ name: 'Ko-Fi', color: 'f16061', link: 'ko-fi.com/codepupper', icon: simpleIcons['Ko-fi'] },
|
||||
{ name: 'Patreon', color: '6441a4', link: 'patreon.com/ryden', icon: simpleIcons.Patreon }
|
||||
]
|
||||
});
|
||||
});
|
||||
module.exports = client => {
|
||||
app.get("/", async (req, res) => {
|
||||
res.render("index", {
|
||||
layout: "main",
|
||||
name: con.name,
|
||||
host: req.hostname,
|
||||
item: [{ name: "portfolio", source: "https://p.wrwlf.co" }],
|
||||
social: [
|
||||
{
|
||||
name: "Twitter",
|
||||
color: "1DA1F2",
|
||||
link: "twitter.com/codepupper",
|
||||
icon: simpleIcons.Twitter
|
||||
},
|
||||
{
|
||||
name: "Mastodon",
|
||||
color: "3088d4",
|
||||
link: "pounced-on.me/@code",
|
||||
icon: simpleIcons.Mastodon,
|
||||
verify: true
|
||||
},
|
||||
{
|
||||
name: "Twitter",
|
||||
color: "1DA1F2",
|
||||
link: "twitter.com/floofydev",
|
||||
icon: simpleIcons.Twitter
|
||||
},
|
||||
{
|
||||
name: "Discord",
|
||||
color: "7289da",
|
||||
link: "thaldr.in/discord",
|
||||
icon: simpleIcons.Discord
|
||||
},
|
||||
{
|
||||
name: "Twitch",
|
||||
color: "6441a4",
|
||||
link: "twitch.tv/codepupper",
|
||||
icon: simpleIcons.Twitch
|
||||
},
|
||||
{
|
||||
name: "Keybase",
|
||||
color: "33a0ff",
|
||||
link: "keybase.io/codepupper",
|
||||
icon: simpleIcons.Keybase
|
||||
},
|
||||
{
|
||||
name: "Gitdab",
|
||||
color: "faacb7",
|
||||
link: "gitdab.com/y",
|
||||
icon: simpleIcons.Git
|
||||
},
|
||||
{
|
||||
name: "Github",
|
||||
color: "333",
|
||||
link: "github.com/codepupper",
|
||||
icon: simpleIcons.GitHub
|
||||
},
|
||||
{
|
||||
name: "Gitlab",
|
||||
color: "E24329",
|
||||
link: "gitlab.com/codepupper",
|
||||
icon: simpleIcons.GitLab
|
||||
},
|
||||
{
|
||||
name: "Ko-Fi",
|
||||
color: "f16061",
|
||||
link: "ko-fi.com/codepupper",
|
||||
icon: simpleIcons["Ko-fi"]
|
||||
},
|
||||
{
|
||||
name: "Patreon",
|
||||
color: "6441a4",
|
||||
link: "patreon.com/ryden",
|
||||
icon: simpleIcons.Patreon
|
||||
}
|
||||
]
|
||||
});
|
||||
});
|
||||
|
||||
app.get('/update', async (req, res) => {
|
||||
//console.log(req.headers['user-agent']);
|
||||
if (req.headers.authorization === con.updateToken) {
|
||||
await exec('git pull')
|
||||
.then((r) => {
|
||||
console.log('Pulled latest changes');
|
||||
res.status(200).jsonp({
|
||||
success: true,
|
||||
message: 'Successfully pulled latest changes'
|
||||
});
|
||||
process.exit();
|
||||
//trying.edit('```fix\n' + r.stdout + '```');
|
||||
})
|
||||
.catch((error) => {
|
||||
res.status(400).jsonp({
|
||||
success: false,
|
||||
message: error.message
|
||||
});
|
||||
console.error(error);
|
||||
});
|
||||
} else {
|
||||
res.status(400).jsonp({
|
||||
success: false,
|
||||
message: 'You are not authorized to access this Endpoint'
|
||||
});
|
||||
}
|
||||
});
|
||||
app.get("/update", async (req, res) => {
|
||||
//console.log(req.headers['user-agent']);
|
||||
if (req.headers.authorization === con.updateToken) {
|
||||
await exec("git pull")
|
||||
.then(r => {
|
||||
console.log("Pulled latest changes");
|
||||
res.status(200).jsonp({
|
||||
success: true,
|
||||
message: "Successfully pulled latest changes"
|
||||
});
|
||||
process.exit();
|
||||
//trying.edit('```fix\n' + r.stdout + '```');
|
||||
})
|
||||
.catch(error => {
|
||||
res.status(400).jsonp({
|
||||
success: false,
|
||||
message: error.message
|
||||
});
|
||||
console.error(error);
|
||||
});
|
||||
} else {
|
||||
res.status(400).jsonp({
|
||||
success: false,
|
||||
message: "You are not authorized to access this Endpoint"
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
app.listen(port /* , hostname */, () => {
|
||||
console.log(`[ Server ] Listening on ${port}`);
|
||||
});
|
||||
app.listen(port /* , hostname */, () => {
|
||||
console.log(`[ Server ] Listening on ${port}`);
|
||||
});
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue