Add files via upload
This commit is contained in:
parent
471cb41dfe
commit
04a4ce5b67
15
index.html
15
index.html
|
|
@ -32,17 +32,14 @@
|
|||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<nav class="navbar">
|
||||
<a href="https://www.oblistudios.com">Home</a> |
|
||||
<a href="https://www.oblistudios.com/servermanager.html">Server Manager</a> |
|
||||
<a href="https://www.oblistudios.com/shardwalker.html">Shardwalker</a>
|
||||
<nav class="navbar">
|
||||
<a href="https://www.oblistudios.com">🏠 Home</a> |
|
||||
<a href="https://www.oblistudios.com/servermanager.html">🛠 Server Manager</a> |
|
||||
<a href="https://www.oblistudios.com/shardwalker.html">⚔️ Shardwalker</a>
|
||||
<a href="http://roadmap.oblistudios.com" class="btn-roadmap">🛠 View Roadmap</a>
|
||||
</nav>
|
||||
|
||||
|
||||
<a href="http://roadmap.oblistudios.com" class="btn-roadmap">🛠 View Roadmap</a>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="container">
|
||||
<h1>Welcome to Obli.Studios</h1>
|
||||
<p>Home of Shardwalker and the Obli.ServerManager platform.</p>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,68 @@
|
|||
// server.js (Node.js + Express backend)
|
||||
const express = require('express');
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const bodyParser = require('body-parser');
|
||||
const cookieParser = require('cookie-parser');
|
||||
const jwt = require('jsonwebtoken');
|
||||
const app = express();
|
||||
|
||||
const SECRET_KEY = 'your_super_secret_key';
|
||||
const PASSWORD = 'shardwalker2025'; // set your password here
|
||||
const PORT = 3000;
|
||||
|
||||
app.use(express.static('public'));
|
||||
app.use(bodyParser.json());
|
||||
app.use(cookieParser());
|
||||
|
||||
// Serve login check
|
||||
app.get('/check-auth', (req, res) => {
|
||||
const token = req.cookies.token;
|
||||
if (!token) return res.status(401).json({ authenticated: false });
|
||||
|
||||
try {
|
||||
jwt.verify(token, SECRET_KEY);
|
||||
res.json({ authenticated: true });
|
||||
} catch (err) {
|
||||
res.status(403).json({ authenticated: false });
|
||||
}
|
||||
});
|
||||
|
||||
// Login route
|
||||
app.post('/login', (req, res) => {
|
||||
const { password } = req.body;
|
||||
if (password === PASSWORD) {
|
||||
const token = jwt.sign({ user: 'admin' }, SECRET_KEY, { expiresIn: '1d' });
|
||||
res.cookie('token', token, { httpOnly: true });
|
||||
res.json({ success: true });
|
||||
} else {
|
||||
res.status(403).json({ success: false });
|
||||
}
|
||||
});
|
||||
|
||||
// Get current roadmap
|
||||
app.get('/api/roadmap', (req, res) => {
|
||||
const data = fs.readFileSync(path.join(__dirname, 'roadmap.json'));
|
||||
res.json(JSON.parse(data));
|
||||
});
|
||||
|
||||
// Update roadmap status
|
||||
app.post('/api/roadmap', (req, res) => {
|
||||
const token = req.cookies.token;
|
||||
if (!token || !jwt.verify(token, SECRET_KEY)) {
|
||||
return res.status(403).json({ success: false });
|
||||
}
|
||||
const { id, status } = req.body;
|
||||
const filePath = path.join(__dirname, 'roadmap.json');
|
||||
const roadmap = JSON.parse(fs.readFileSync(filePath));
|
||||
const phase = roadmap.find(p => p.id === id);
|
||||
if (phase) {
|
||||
phase.status = status;
|
||||
fs.writeFileSync(filePath, JSON.stringify(roadmap, null, 2));
|
||||
res.json({ success: true });
|
||||
} else {
|
||||
res.status(404).json({ success: false });
|
||||
}
|
||||
});
|
||||
|
||||
app.listen(PORT, () => console.log(`Server running at http://localhost:${PORT}`));
|
||||
|
|
@ -24,17 +24,14 @@
|
|||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<nav class="navbar">
|
||||
<a href="https://www.oblistudios.com">Home</a> |
|
||||
<a href="https://www.oblistudios.com/servermanager.html">Server Manager</a> |
|
||||
<a href="https://www.oblistudios.com/shardwalker.html">Shardwalker</a>
|
||||
<nav class="navbar">
|
||||
<a href="https://www.oblistudios.com">🏠 Home</a> |
|
||||
<a href="https://www.oblistudios.com/servermanager.html">🛠 Server Manager</a> |
|
||||
<a href="https://www.oblistudios.com/shardwalker.html">⚔️ Shardwalker</a>
|
||||
<a href="http://roadmap.oblistudios.com" class="btn-roadmap">🛠 View Roadmap</a>
|
||||
</nav>
|
||||
|
||||
|
||||
<a href="http://roadmap.oblistudios.com" class="btn-roadmap">🛠 View Roadmap</a>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="container">
|
||||
<h1>Obli.ServerManager</h1>
|
||||
<p>Manage your dedicated game servers with ease.</p>
|
||||
|
|
|
|||
|
|
@ -25,14 +25,13 @@
|
|||
</head>
|
||||
<body>
|
||||
<nav class="navbar">
|
||||
<a href="https://www.oblistudios.com">Home</a> |
|
||||
<a href="https://www.oblistudios.com/servermanager.html">Server Manager</a> |
|
||||
<a href="https://www.oblistudios.com/shardwalker.html">Shardwalker</a>
|
||||
|
||||
|
||||
<a href="https://www.oblistudios.com">🏠 Home</a> |
|
||||
<a href="https://www.oblistudios.com/servermanager.html">🛠 Server Manager</a> |
|
||||
<a href="https://www.oblistudios.com/shardwalker.html">⚔️ Shardwalker</a>
|
||||
<a href="http://roadmap.oblistudios.com" class="btn-roadmap">🛠 View Roadmap</a>
|
||||
</nav>
|
||||
|
||||
|
||||
<div class="container">
|
||||
<header>
|
||||
<h1>Shardwalker: The Mirror's Edge</h1>
|
||||
|
|
|
|||
Loading…
Reference in New Issue