boilerplate more
This commit is contained in:
parent
bf77320bc7
commit
ae511a3871
8 changed files with 301 additions and 74 deletions
19
index.js
19
index.js
|
@ -1,28 +1,15 @@
|
||||||
import express from "express";
|
import express from "express";
|
||||||
|
import { doInit } from "./init.js";
|
||||||
|
|
||||||
const app = express()
|
const app = express()
|
||||||
const port = 3000;
|
const port = 3000;
|
||||||
|
|
||||||
app.use(express.static('public'));
|
app.use(express.static('public'));
|
||||||
app.set('view engine', 'ejs');
|
app.set('view engine', 'ejs');
|
||||||
|
app.enable('view cache');
|
||||||
|
|
||||||
app.listen(port, () => {
|
app.listen(port, () => {
|
||||||
console.log(`Example app listening on port ${port}`)
|
console.log(`Example app listening on port ${port}`)
|
||||||
})
|
})
|
||||||
|
|
||||||
app.use((req, res, next) => {
|
doInit(app);
|
||||||
res.ctx = {
|
|
||||||
mainPage: '404.ejs',
|
|
||||||
mainCtx: {},
|
|
||||||
headerCtx: {}
|
|
||||||
};
|
|
||||||
next();
|
|
||||||
})
|
|
||||||
|
|
||||||
app.use('/api', (req, res, next) => {
|
|
||||||
res.send(res.ctx);
|
|
||||||
})
|
|
||||||
|
|
||||||
app.use((req, res, next) => {
|
|
||||||
res.render('root.ejs', res.ctx)
|
|
||||||
})
|
|
38
init.js
Normal file
38
init.js
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
const aliases = {
|
||||||
|
'/': '/walls/get/home'
|
||||||
|
};
|
||||||
|
|
||||||
|
function doAliases(app) {
|
||||||
|
for (let alias in aliases) {
|
||||||
|
app.all(alias, (req,res,next) => {
|
||||||
|
res.redirect(aliases[alias])
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function doInit(app) {
|
||||||
|
app.use((req, res, next) => {
|
||||||
|
res.ctx = {
|
||||||
|
mainPage: '404.ejs',
|
||||||
|
mainCtx: {},
|
||||||
|
headerCtx: [
|
||||||
|
{ link: '/walls/get/home', icon: '/icon.svg', name: 'DervNet' },
|
||||||
|
{ link: '/walls/list', icon: '/walls.svg', name: 'Explore' },
|
||||||
|
{ link: '/you/logout', icon: '/logout.svg', name: 'Leave' } // fix icon
|
||||||
|
]
|
||||||
|
};
|
||||||
|
next();
|
||||||
|
})
|
||||||
|
|
||||||
|
doAliases(app);
|
||||||
|
|
||||||
|
app.use('/api', (req, res, next) => {
|
||||||
|
res.send(res.ctx);
|
||||||
|
})
|
||||||
|
|
||||||
|
app.use((req, res, next) => {
|
||||||
|
res.render('root.ejs', res.ctx)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export { doInit };
|
|
@ -2,20 +2,20 @@
|
||||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
<svg
|
<svg
|
||||||
width="58.538853"
|
width="65.538361"
|
||||||
height="62.269379"
|
height="69.269028"
|
||||||
viewBox="0 0 58.538853 62.269381"
|
viewBox="0 0 65.538361 69.26903"
|
||||||
version="1.1"
|
version="1.1"
|
||||||
id="svg1"
|
id="svg1"
|
||||||
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
||||||
sodipodi:docname="icon.svg"
|
sodipodi:docname="icon.svg"
|
||||||
|
xml:space="preserve"
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
||||||
<sodipodi:namedview
|
|
||||||
id="namedview1"
|
id="namedview1"
|
||||||
pagecolor="#000000"
|
pagecolor="#ffffff"
|
||||||
bordercolor="#000000"
|
bordercolor="#000000"
|
||||||
borderopacity="0.25"
|
borderopacity="0.25"
|
||||||
inkscape:showpageshadow="2"
|
inkscape:showpageshadow="2"
|
||||||
|
@ -23,66 +23,50 @@
|
||||||
inkscape:pagecheckerboard="0"
|
inkscape:pagecheckerboard="0"
|
||||||
inkscape:deskcolor="#d1d1d1"
|
inkscape:deskcolor="#d1d1d1"
|
||||||
inkscape:document-units="px"
|
inkscape:document-units="px"
|
||||||
showguides="true"
|
showguides="false"
|
||||||
inkscape:zoom="6.768"
|
inkscape:zoom="8"
|
||||||
inkscape:cx="28.959811"
|
inkscape:cx="33.25"
|
||||||
inkscape:cy="26.521868"
|
inkscape:cy="37.6875"
|
||||||
inkscape:window-width="1918"
|
inkscape:window-width="1918"
|
||||||
inkscape:window-height="1056"
|
inkscape:window-height="1056"
|
||||||
inkscape:window-x="0"
|
inkscape:window-x="0"
|
||||||
inkscape:window-y="22"
|
inkscape:window-y="22"
|
||||||
inkscape:window-maximized="1"
|
inkscape:window-maximized="1"
|
||||||
inkscape:current-layer="g4"
|
inkscape:current-layer="g4"
|
||||||
showgrid="false" />
|
showgrid="false"
|
||||||
<defs
|
inkscape:lockguides="true" /><defs
|
||||||
id="defs1" />
|
id="defs1" /><g
|
||||||
<g
|
|
||||||
inkscape:label="Layer 1"
|
inkscape:label="Layer 1"
|
||||||
inkscape:groupmode="layer"
|
inkscape:groupmode="layer"
|
||||||
id="layer1"
|
id="layer1"
|
||||||
transform="translate(-52.872929,-52.41062)">
|
transform="translate(-49.373422,-48.91062)"><g
|
||||||
<g
|
id="g4"
|
||||||
id="g4">
|
style="stroke-width:10;stroke-dasharray:none"><path
|
||||||
<path
|
|
||||||
id="path1"
|
id="path1"
|
||||||
style="fill:#350050;fill-opacity:1;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:10;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
d="m 84.835608,53.91062 a 25.074709,25.074709 0 0 0 -25.074219,25.074219 25.074709,25.074709 0 0 0 5.835938,16.035156 l -11.22461,18.160155 25.271485,-9.72851 a 25.074709,25.074709 0 0 0 5.191406,0.60937 A 25.074709,25.074709 0 0 0 109.91178,78.984839 25.074709,25.074709 0 0 0 84.835608,53.91062 Z" />
|
d="m 84.835608,53.91062 a 25.074709,25.074709 0 0 0 -25.074219,25.074219 25.074709,25.074709 0 0 0 5.835938,16.035156 l -11.22461,18.160155 25.271485,-9.72851 a 25.074709,25.074709 0 0 0 5.191406,0.60937 A 25.074709,25.074709 0 0 0 109.91178,78.984839 25.074709,25.074709 0 0 0 84.835608,53.91062 Z" /><circle
|
||||||
<circle
|
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:12.5237;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
style="fill:#7500b1;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
|
||||||
id="circle8"
|
|
||||||
r="19.014986"
|
|
||||||
cy="78.985329"
|
|
||||||
cx="84.836098" />
|
|
||||||
<circle
|
|
||||||
style="fill:#cb65ff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
|
||||||
id="circle3"
|
id="circle3"
|
||||||
r="13.373178"
|
r="16.748178"
|
||||||
cy="78.985329"
|
cy="78.985329"
|
||||||
cx="84.836098" />
|
cx="84.836098" /><circle
|
||||||
<circle
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:11.0203;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
|
||||||
id="path5"
|
id="path5"
|
||||||
cx="85.701805"
|
cx="85.849609"
|
||||||
cy="70.552505"
|
cy="69.51593"
|
||||||
r="2.7164268" />
|
r="2.9935966" /><circle
|
||||||
<circle
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:11.0203;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
|
||||||
id="circle5"
|
id="circle5"
|
||||||
cx="84.836098"
|
cx="84.895569"
|
||||||
cy="78.985329"
|
cy="78.809196"
|
||||||
r="4.8582249" />
|
r="5.3539319" /><circle
|
||||||
<circle
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:11.0203;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
|
||||||
id="circle6"
|
id="circle6"
|
||||||
cx="93.328705"
|
cx="94.254715"
|
||||||
cy="80.164467"
|
cy="80.108643"
|
||||||
r="1.6716473" />
|
r="1.8422132" /><circle
|
||||||
<circle
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:11.0203;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
|
||||||
id="circle7"
|
id="circle7"
|
||||||
cx="76.716713"
|
cx="75.947723"
|
||||||
cy="86.537621"
|
cy="87.13208"
|
||||||
r="1.2537355" />
|
r="1.38166" /></g></g></svg>
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.3 KiB |
50
public/logout.svg
Normal file
50
public/logout.svg
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
width="50.735596"
|
||||||
|
height="50.735592"
|
||||||
|
viewBox="0 0 50.735596 50.735593"
|
||||||
|
version="1.1"
|
||||||
|
id="svg1"
|
||||||
|
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
||||||
|
sodipodi:docname="logout.svg"
|
||||||
|
xml:space="preserve"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1"
|
||||||
|
inkscape:document-units="px"
|
||||||
|
showguides="false"
|
||||||
|
inkscape:zoom="8"
|
||||||
|
inkscape:cx="14.375"
|
||||||
|
inkscape:cy="14.6875"
|
||||||
|
inkscape:window-width="1918"
|
||||||
|
inkscape:window-height="1056"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="22"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="g4"
|
||||||
|
showgrid="false"
|
||||||
|
inkscape:lockguides="true" /><defs
|
||||||
|
id="defs1" /><g
|
||||||
|
inkscape:label="Layer 1"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer1"
|
||||||
|
transform="translate(-59.542179,-61.057033)"><g
|
||||||
|
id="g4"
|
||||||
|
style="stroke-width:10;stroke-dasharray:none"><path
|
||||||
|
style="fill:none;fill-opacity:1;stroke:#0d0c11;stroke-width:4.45824;stroke-dasharray:none;stroke-opacity:1;paint-order:normal"
|
||||||
|
d="M 61.118405,62.633259 108.70155,110.2164"
|
||||||
|
id="path25" /><path
|
||||||
|
style="fill:none;fill-opacity:1;stroke:#0d0c11;stroke-width:4.45824;stroke-dasharray:none;stroke-opacity:1;paint-order:normal"
|
||||||
|
d="M 108.70155,62.633259 61.118405,110.2164"
|
||||||
|
id="path26" /></g></g></svg>
|
After Width: | Height: | Size: 1.8 KiB |
167
public/walls.svg
Normal file
167
public/walls.svg
Normal file
|
@ -0,0 +1,167 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
width="48.672703"
|
||||||
|
height="53.811192"
|
||||||
|
viewBox="0 0 48.672703 53.811193"
|
||||||
|
version="1.1"
|
||||||
|
id="svg1"
|
||||||
|
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
||||||
|
sodipodi:docname="walls.svg"
|
||||||
|
xml:space="preserve"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1"
|
||||||
|
inkscape:document-units="px"
|
||||||
|
showguides="false"
|
||||||
|
inkscape:zoom="8"
|
||||||
|
inkscape:cx="14.875"
|
||||||
|
inkscape:cy="17.0625"
|
||||||
|
inkscape:window-width="1918"
|
||||||
|
inkscape:window-height="1056"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="22"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="g4"
|
||||||
|
showgrid="false"
|
||||||
|
inkscape:lockguides="true" /><defs
|
||||||
|
id="defs1" /><g
|
||||||
|
inkscape:label="Layer 1"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer1"
|
||||||
|
transform="translate(-59.066227,-58.706081)"><g
|
||||||
|
id="g4"
|
||||||
|
style="stroke-width:10;stroke-dasharray:none"><path
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:#0d0c11;stroke-width:3.25;stroke-dasharray:none;stroke-opacity:1;paint-order:normal"
|
||||||
|
d="m 69.997002,71.564705 -9.038422,33.731855 8.989306,5.18997 25.043748,-25.043743"
|
||||||
|
id="path2" /><g
|
||||||
|
id="g11"
|
||||||
|
transform="rotate(30,85.351954,98.307072)"><path
|
||||||
|
id="path1"
|
||||||
|
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:3.56524;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
d="m 81.016571,58.516151 a 8.939758,8.939758 0 0 0 -8.939583,8.93959 8.939758,8.939758 0 0 0 2.080659,5.716912 l -4.001855,6.47455 9.009917,-3.468429 a 8.939758,8.939758 0 0 0 1.850862,0.217242 8.939758,8.939758 0 0 0 8.940282,-8.940275 8.939758,8.939758 0 0 0 -8.940282,-8.93959 z" /><circle
|
||||||
|
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:4.465;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle3"
|
||||||
|
cy="67.455902"
|
||||||
|
cx="81.016754"
|
||||||
|
r="5.9711423" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="path5"
|
||||||
|
cx="81.378105"
|
||||||
|
cy="64.079811"
|
||||||
|
r="1.0672917" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle5"
|
||||||
|
cx="81.037964"
|
||||||
|
cy="67.393112"
|
||||||
|
r="1.90881" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle6"
|
||||||
|
cx="84.374725"
|
||||||
|
cy="67.856392"
|
||||||
|
r="0.65679485" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle7"
|
||||||
|
cx="77.847824"
|
||||||
|
cy="70.36042"
|
||||||
|
r="0.49259618" /></g><g
|
||||||
|
id="g15"
|
||||||
|
transform="matrix(0.4846688,0.27982366,-0.27982366,0.4846688,58.894002,29.396523)"><path
|
||||||
|
id="path11"
|
||||||
|
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:3.56524;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
d="m 81.016571,58.516151 a 8.939758,8.939758 0 0 0 -8.939583,8.93959 8.939758,8.939758 0 0 0 2.080659,5.716912 l -4.001855,6.47455 9.009917,-3.468429 a 8.939758,8.939758 0 0 0 1.850862,0.217242 8.939758,8.939758 0 0 0 8.940282,-8.940275 8.939758,8.939758 0 0 0 -8.940282,-8.93959 z" /><circle
|
||||||
|
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:4.465;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle11"
|
||||||
|
cy="67.455902"
|
||||||
|
cx="81.016754"
|
||||||
|
r="5.9711423" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle12"
|
||||||
|
cx="81.378105"
|
||||||
|
cy="64.079811"
|
||||||
|
r="1.0672917" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle13"
|
||||||
|
cx="81.037964"
|
||||||
|
cy="67.393112"
|
||||||
|
r="1.90881" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle14"
|
||||||
|
cx="84.374725"
|
||||||
|
cy="67.856392"
|
||||||
|
r="0.65679485" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle15"
|
||||||
|
cx="77.847824"
|
||||||
|
cy="70.36042"
|
||||||
|
r="0.49259618" /></g><g
|
||||||
|
id="g20"
|
||||||
|
transform="matrix(0.21728082,0.12544714,-0.12544714,0.21728082,61.483694,69.882052)"><path
|
||||||
|
id="path15"
|
||||||
|
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:3.56524;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
d="m 81.016571,58.516151 a 8.939758,8.939758 0 0 0 -8.939583,8.93959 8.939758,8.939758 0 0 0 2.080659,5.716912 l -4.001855,6.47455 9.009917,-3.468429 a 8.939758,8.939758 0 0 0 1.850862,0.217242 8.939758,8.939758 0 0 0 8.940282,-8.940275 8.939758,8.939758 0 0 0 -8.940282,-8.93959 z" /><circle
|
||||||
|
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:4.465;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle16"
|
||||||
|
cy="67.455902"
|
||||||
|
cx="81.016754"
|
||||||
|
r="5.9711423" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle17"
|
||||||
|
cx="81.378105"
|
||||||
|
cy="64.079811"
|
||||||
|
r="1.0672917" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle18"
|
||||||
|
cx="81.037964"
|
||||||
|
cy="67.393112"
|
||||||
|
r="1.90881" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle19"
|
||||||
|
cx="84.374725"
|
||||||
|
cy="67.856392"
|
||||||
|
r="0.65679485" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle20"
|
||||||
|
cx="77.847824"
|
||||||
|
cy="70.36042"
|
||||||
|
r="0.49259618" /></g><g
|
||||||
|
id="g25"
|
||||||
|
transform="matrix(0.18487168,-0.07196427,0.07196427,0.18487168,49.231001,96.575288)"><path
|
||||||
|
id="path20"
|
||||||
|
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:3.56524;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
d="m 81.016571,58.516151 a 8.939758,8.939758 0 0 0 -8.939583,8.93959 8.939758,8.939758 0 0 0 2.080659,5.716912 l -4.001855,6.47455 9.009917,-3.468429 a 8.939758,8.939758 0 0 0 1.850862,0.217242 8.939758,8.939758 0 0 0 8.940282,-8.940275 8.939758,8.939758 0 0 0 -8.940282,-8.93959 z" /><circle
|
||||||
|
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:4.465;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle21"
|
||||||
|
cy="67.455902"
|
||||||
|
cx="81.016754"
|
||||||
|
r="5.9711423" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle22"
|
||||||
|
cx="81.378105"
|
||||||
|
cy="64.079811"
|
||||||
|
r="1.0672917" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle23"
|
||||||
|
cx="81.037964"
|
||||||
|
cy="67.393112"
|
||||||
|
r="1.90881" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle24"
|
||||||
|
cx="84.374725"
|
||||||
|
cy="67.856392"
|
||||||
|
r="0.65679485" /><circle
|
||||||
|
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||||
|
id="circle25"
|
||||||
|
cx="77.847824"
|
||||||
|
cy="70.36042"
|
||||||
|
r="0.49259618" /></g></g></g></svg>
|
After Width: | Height: | Size: 10 KiB |
|
@ -1,5 +1,5 @@
|
||||||
<div class="nav">
|
<div class="nav">
|
||||||
<a class='header-a' href="/"><img class="header-img" src="/icon.svg">DervNet</a>
|
<% for (let headerEnt of headerCtx) { %>
|
||||||
<a class='header-a' href="/"><img class="header-img" src="/icon.svg">Filler1</a>
|
<%- include ('vblock.ejs', headerEnt) %>
|
||||||
<a class='header-a' href="/"><img class="header-img" src="/icon.svg">Filler2</a>
|
<% } %>
|
||||||
</div>
|
</div>
|
|
@ -3,13 +3,13 @@
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title>DervNet</title>
|
<title>DervNet</title>
|
||||||
<link rel="stylesheet" href="index.css">
|
<link rel="stylesheet" href="/index.css">
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<%- include('header.ejs',headerCtx); %>
|
<%- include('header.ejs',{headerCtx}); %>
|
||||||
<%- include(mainPage, mainCtx); %>
|
<%- include(mainPage, mainCtx); %>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|
1
views/vblock.ejs
Normal file
1
views/vblock.ejs
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<a class='header-a' href="<%= link %>"><img class="header-img" src="<%= icon %>"><%= name %></a>
|
Loading…
Reference in a new issue