This commit is contained in:
parent
6b4c6bb447
commit
acbdd113d4
@ -17,7 +17,7 @@ steps:
|
||||
from_secret: docker_password
|
||||
repo: dutchellie/proper-website-2
|
||||
build_args:
|
||||
- APIURL=https://api.nicecock.eu/api/testingcomment
|
||||
- APIURL=https://api.nicecock.eu/api/testing
|
||||
tags:
|
||||
- dev
|
||||
- ${DRONE_COMMIT_SHA:0:8}
|
||||
@ -65,7 +65,7 @@ steps:
|
||||
from_secret: docker_password
|
||||
repo: dutchellie/proper-website-2
|
||||
build_args:
|
||||
- APIURL=https://api.nicecock.eu/api/comment
|
||||
- APIURL=https://api.nicecock.eu/api
|
||||
tags:
|
||||
- latest
|
||||
- ${DRONE_COMMIT_SHA:0:8}
|
||||
|
0
src/bloglinks.go
Normal file
0
src/bloglinks.go
Normal file
28
src/blogpage.go
Normal file
28
src/blogpage.go
Normal file
@ -0,0 +1,28 @@
|
||||
package main
|
||||
|
||||
import "github.com/maxence-charriere/go-app/v9/pkg/app"
|
||||
|
||||
type BlogPage struct {
|
||||
app.Compo
|
||||
}
|
||||
|
||||
// TODO: write the backend API for this
|
||||
// TODO: Find a proper way of rendering blog posts in markdown
|
||||
// Backend ideas: In the DB, create an entry for each post and a link to where the html file is located!
|
||||
// That way, I don't have to parse and render markdown!!
|
||||
|
||||
// Layout, the leftbar contains the blogpost links and the mainbar contains the post itself!
|
||||
// Function: After pressing a link for a blog post, that blog post ID gets put in the state instead of the URL
|
||||
|
||||
func NewBlogPage() *BlogPage {
|
||||
return &BlogPage{}
|
||||
}
|
||||
|
||||
func (b *BlogPage) Render() app.UI {
|
||||
return newPage().
|
||||
Title("Blog").
|
||||
LeftBar(
|
||||
newHTMLBlock().
|
||||
Class("left leftbarblock"),
|
||||
)
|
||||
}
|
@ -162,7 +162,7 @@ func (g guestbook) Render() app.UI {
|
||||
|
||||
func (g *guestbook) LoadComments(ctx app.Context) {
|
||||
// TODO: maybe you can put this in a localbrowser storage?
|
||||
url := ApiURL
|
||||
url := ApiURL + "/comment"
|
||||
ctx.Async(func() {
|
||||
res, err := http.Get(url)
|
||||
if err != nil {
|
||||
|
@ -53,7 +53,7 @@ func (p *Homepage) Render() app.UI {
|
||||
fmt.Printf("err: %v\n", err)
|
||||
return
|
||||
}
|
||||
url := ApiURL
|
||||
url := ApiURL + "/comment"
|
||||
|
||||
ctx.Async(func() {
|
||||
req, err := http.Post(url, "application/json", bytes.NewBuffer(jsondata))
|
||||
|
@ -20,11 +20,9 @@ func (n *navbar) Render() app.UI {
|
||||
app.Li().Body(
|
||||
app.A().Href("/galaxies").Text("Galaxies"),
|
||||
),
|
||||
app.Li().
|
||||
Style("display", "none").
|
||||
Body(
|
||||
app.A().Href("/undertale").Text("Undertale"),
|
||||
),
|
||||
app.Li().Body(
|
||||
app.A().Href("/blog").Text("Blog"),
|
||||
),
|
||||
),
|
||||
).Class("navbar")
|
||||
}
|
||||
|
56
src/page.go
56
src/page.go
@ -11,8 +11,10 @@ type page struct {
|
||||
Blah blah
|
||||
etc*/
|
||||
|
||||
IleftBar []app.UI
|
||||
Imain []app.UI
|
||||
IbackgroundClass string
|
||||
Ibackground []app.UI
|
||||
IleftBar []app.UI
|
||||
Imain []app.UI
|
||||
|
||||
// TODO: Possibly add "updateavailable" here, so it shows up on every page
|
||||
}
|
||||
@ -21,6 +23,16 @@ func newPage() *page {
|
||||
return &page{}
|
||||
}
|
||||
|
||||
func (p *page) Background(v ...app.UI) *page {
|
||||
p.Ibackground = app.FilterUIElems(v...)
|
||||
return p
|
||||
}
|
||||
|
||||
func (p *page) BackgroundClass(t string) *page {
|
||||
p.IbackgroundClass = app.AppendClass(p.IbackgroundClass, t)
|
||||
return p
|
||||
}
|
||||
|
||||
func (p *page) Title(t string) *page {
|
||||
p.Ititle = t
|
||||
return p
|
||||
@ -37,25 +49,35 @@ func (p *page) Main(v ...app.UI) *page {
|
||||
}
|
||||
|
||||
func (p *page) Render() app.UI {
|
||||
if p.IbackgroundClass == "" {
|
||||
p.IbackgroundClass = app.AppendClass(p.IbackgroundClass, "background")
|
||||
}
|
||||
return app.Div().
|
||||
Class("main").
|
||||
Class(p.IbackgroundClass).
|
||||
Body(
|
||||
// Header and navbar
|
||||
&header{},
|
||||
app.Range(p.Ibackground).Slice(func(i int) app.UI {
|
||||
return p.Ibackground[i]
|
||||
}),
|
||||
app.Div().
|
||||
Class("left").
|
||||
Class("main").
|
||||
Body(
|
||||
&navbar{},
|
||||
app.Range(p.IleftBar).Slice(func(i int) app.UI {
|
||||
return p.IleftBar[i]
|
||||
}),
|
||||
),
|
||||
app.Div().
|
||||
Class("right").
|
||||
Body(
|
||||
app.Range(p.Imain).Slice(func(i int) app.UI {
|
||||
return p.Imain[i]
|
||||
}),
|
||||
// Header and navbar
|
||||
&header{},
|
||||
app.Div().
|
||||
Class("left").
|
||||
Body(
|
||||
&navbar{},
|
||||
app.Range(p.IleftBar).Slice(func(i int) app.UI {
|
||||
return p.IleftBar[i]
|
||||
}),
|
||||
),
|
||||
app.Div().
|
||||
Class("right").
|
||||
Body(
|
||||
app.Range(p.Imain).Slice(func(i int) app.UI {
|
||||
return p.Imain[i]
|
||||
}),
|
||||
),
|
||||
),
|
||||
)
|
||||
}
|
||||
|
@ -15,6 +15,8 @@ func NewUndertalePage() *UndertalePage {
|
||||
func (u *UndertalePage) Render() app.UI {
|
||||
return newPage().
|
||||
Title("Undertale").
|
||||
BackgroundClass("undertale-bg").
|
||||
Background().
|
||||
LeftBar(
|
||||
newHTMLBlock().
|
||||
Class("left").
|
||||
|
0
web/blocks/snippets/test.html
Normal file
0
web/blocks/snippets/test.html
Normal file
BIN
web/static/images/ut-bg.webp
Normal file
BIN
web/static/images/ut-bg.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 45 KiB |
@ -1,16 +1,24 @@
|
||||
html {
|
||||
background-image: url(images/background_star.gif);
|
||||
overflow-y: scroll;
|
||||
margin: 0px;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body {
|
||||
width: 900px;
|
||||
position: relative;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
color:aliceblue;
|
||||
font-family: havakana;
|
||||
font-size: 1.1em;
|
||||
margin: 0px;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.background {
|
||||
background-image: url(images/background_star.gif);
|
||||
width: 100%;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
.undertale-bg {
|
||||
background-image: url(images/ut-bg.webp);
|
||||
width: 100%;
|
||||
position: sticky;
|
||||
}
|
||||
|
||||
.header {
|
||||
@ -35,6 +43,13 @@ body {
|
||||
|
||||
.main {
|
||||
margin-top: 5px;
|
||||
width: 900px;
|
||||
position: relative;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
color:aliceblue;
|
||||
font-family: havakana;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
.navbar {
|
||||
@ -109,6 +124,10 @@ body {
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.no-border {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.content-text {
|
||||
max-width: 75%;
|
||||
width: auto;
|
||||
|
Loading…
Reference in New Issue
Block a user