From 0ca6de59fd15a5fa9585783de7bfd134a7e5cafa Mon Sep 17 00:00:00 2001 From: Muyao CHEN Date: Sat, 29 Jun 2024 21:30:06 +0200 Subject: [PATCH] Converting pages to templates --- about.html | 86 -------- cmd/web/main.go | 2 +- cmd/web/routes.go | 5 + contact.html | 86 -------- generals.html | 99 ---------- index.html | 132 ------------- majors.html | 99 ---------- make-reservation.html | 103 ---------- pkg/handlers/handlers.go | 27 ++- reservation.html | 280 --------------------------- templates/about.page.tmpl | 17 +- templates/base.layout.tmpl | 237 ++++++++++++++++++++++- templates/contact.page.tmpl | 18 ++ templates/generals.page.tmpl | 30 +++ templates/home.page.tmpl | 58 +++++- templates/majors.page.tmpl | 30 +++ templates/make-reservation.page.tmpl | 34 ++++ templates/reservation.page.tmpl | 37 ++++ 18 files changed, 474 insertions(+), 906 deletions(-) delete mode 100644 about.html delete mode 100644 contact.html delete mode 100644 generals.html delete mode 100644 index.html delete mode 100644 majors.html delete mode 100644 make-reservation.html delete mode 100644 reservation.html create mode 100644 templates/contact.page.tmpl create mode 100644 templates/generals.page.tmpl create mode 100644 templates/majors.page.tmpl create mode 100644 templates/make-reservation.page.tmpl create mode 100644 templates/reservation.page.tmpl diff --git a/about.html b/about.html deleted file mode 100644 index 5e0ae12..0000000 --- a/about.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - About - - - - - - - -
-
-
-

About

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue - odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices - condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet - gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam - iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum - nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. - Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex. -

-
-
- -
- -
- -
- - - - - diff --git a/cmd/web/main.go b/cmd/web/main.go index ef3e961..73bc98e 100644 --- a/cmd/web/main.go +++ b/cmd/web/main.go @@ -34,7 +34,7 @@ func main() { tc, err := render.CreateTemplateCache() if err != nil { - log.Fatal("cannot create template cache") + log.Fatalf("cannot create template cache: %s", err) } app.TemplateCahce = tc app.UseCache = false diff --git a/cmd/web/routes.go b/cmd/web/routes.go index 5c91d5d..0f5f6b1 100644 --- a/cmd/web/routes.go +++ b/cmd/web/routes.go @@ -19,6 +19,11 @@ func routes(app *config.AppConfig) http.Handler { mux.Get("/", handlers.Repo.Home) mux.Get("/about", handlers.Repo.About) + mux.Get("/contact", handlers.Repo.Contact) + mux.Get("/generals-quarters", handlers.Repo.Generals) + mux.Get("/majors-suite", handlers.Repo.Majors) + mux.Get("/reservation", handlers.Repo.Reservation) + mux.Get("/make-reservation", handlers.Repo.MakeReservation) fileServer := http.FileServer(http.Dir("./static/")) mux.Handle("/static/*", http.StripPrefix("/static", fileServer)) diff --git a/contact.html b/contact.html deleted file mode 100644 index 5423c3c..0000000 --- a/contact.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - Contact - - - - - - - -
-
-
-

Contact

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue - odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices - condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet - gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam - iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum - nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. - Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex. -

-
-
- -
- -
- -
- - - - - diff --git a/generals.html b/generals.html deleted file mode 100644 index f7cdc9d..0000000 --- a/generals.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - General's Quarters - - - - - - - -
-
-
- room page -
-
-
-
-

General's Quarters

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue - odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices - condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet - gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam - iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum - nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. - Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex. -

-
-
- - - - -
- -
- -
- - - - - diff --git a/index.html b/index.html deleted file mode 100644 index 42a7afa..0000000 --- a/index.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - My hotel project - - - - - - - - -
-
-
-

Hello, world!

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue - odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices - condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet - gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam - iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum - nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. - Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex. -

-
-
- -
-
- Book Now -
-
- - -
- -
- -
- - - - - diff --git a/majors.html b/majors.html deleted file mode 100644 index 2c4adb9..0000000 --- a/majors.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - Major's Suite - - - - - - - -
-
-
- room page -
-
-
-
-

Major's Suite

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue - odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices - condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet - gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam - iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum - nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. - Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex. -

-
-
- - - - -
- -
- -
- - - - - diff --git a/make-reservation.html b/make-reservation.html deleted file mode 100644 index 6f37713..0000000 --- a/make-reservation.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - - Contact - - - - - - - -
-
-
-

Make reservation

- -
-
- - -
-
- - -
-
- - -
-
- - -
- -
- - -
-
-
- -
- -
- -
- - - - - diff --git a/pkg/handlers/handlers.go b/pkg/handlers/handlers.go index 7c81d06..c257973 100644 --- a/pkg/handlers/handlers.go +++ b/pkg/handlers/handlers.go @@ -27,7 +27,7 @@ func NewHandlers(r *Repository) { Repo = r } -// Home is the about page handler +// Home is the home page handler func (m *Repository) Home(w http.ResponseWriter, r *http.Request) { remoteIP := r.RemoteAddr m.App.Session.Put(r.Context(), "remote_ip", remoteIP) @@ -47,3 +47,28 @@ func (m *Repository) About(w http.ResponseWriter, r *http.Request) { // send the data to the template render.RenderTemplate(w, "about.page.tmpl", &models.TemplateData{StringMap: stringMap}) } + +// Contact is the contact page handler +func (m *Repository) Contact(w http.ResponseWriter, r *http.Request) { + render.RenderTemplate(w, "contact.page.tmpl", &models.TemplateData{}) +} + +// Generals is the General's Quarters page handler +func (m *Repository) Generals(w http.ResponseWriter, r *http.Request) { + render.RenderTemplate(w, "generals.page.tmpl", &models.TemplateData{}) +} + +// Majors is the Major's Suite page handler +func (m *Repository) Majors(w http.ResponseWriter, r *http.Request) { + render.RenderTemplate(w, "majors.page.tmpl", &models.TemplateData{}) +} + +// MakeReservation is the make reservation page handler +func (m *Repository) MakeReservation(w http.ResponseWriter, r *http.Request) { + render.RenderTemplate(w, "make-reservation.page.tmpl", &models.TemplateData{}) +} + +// MakeReservation is the make reservation page handler +func (m *Repository) Reservation(w http.ResponseWriter, r *http.Request) { + render.RenderTemplate(w, "reservation.page.tmpl", &models.TemplateData{}) +} diff --git a/reservation.html b/reservation.html deleted file mode 100644 index bcd5c86..0000000 --- a/reservation.html +++ /dev/null @@ -1,280 +0,0 @@ - - - - - - - Reservation - - - - - - - - - -
-
-
-
-
-

Search for Availability

- -
-
-
- -
-
- -
-
-
- -
-
- -
-
-
- -
-
- -
-
- -
- -
- - - - - - - - - - - diff --git a/templates/about.page.tmpl b/templates/about.page.tmpl index 59987d7..6041e7a 100644 --- a/templates/about.page.tmpl +++ b/templates/about.page.tmpl @@ -4,16 +4,13 @@

This is the about page

-

This is the content

- -

This came from the template: {{index .StringMap "test"}}

- -

- {{if ne (index .StringMap "remote_ip") ""}} - Your remote IP address is {{index .StringMap "remote_ip"}} - {{else}} - I don't know your ip address yet. Visit the so I can set it. - {{end}} +

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue + odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices + condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet + gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam + iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum + nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. + Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex.

diff --git a/templates/base.layout.tmpl b/templates/base.layout.tmpl index 2e4467c..71cf68f 100644 --- a/templates/base.layout.tmpl +++ b/templates/base.layout.tmpl @@ -5,20 +5,245 @@ - About page + Title + + + {{block "css" .}} + {{end}} - {{block "content" .}} - {{end}} + - {{block "js" .}} - {{end}} - + + {{block "content" .}} + {{end}} + +
+ +
+ + + + + + + + + + {{block "js" .}} + {{end}} + {{end}} diff --git a/templates/contact.page.tmpl b/templates/contact.page.tmpl new file mode 100644 index 0000000..a2c9234 --- /dev/null +++ b/templates/contact.page.tmpl @@ -0,0 +1,18 @@ +{{template "base" .}} +{{define "content"}} +
+
+
+

Contact

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue + odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices + condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet + gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam + iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum + nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. + Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex. +

+
+
+
+{{end}} diff --git a/templates/generals.page.tmpl b/templates/generals.page.tmpl new file mode 100644 index 0000000..1f8a629 --- /dev/null +++ b/templates/generals.page.tmpl @@ -0,0 +1,30 @@ +{{template "base" .}} +{{define "content"}} +
+
+
+ room page +
+
+
+
+

General's Quarters

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue + odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices + condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet + gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam + iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum + nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. + Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex. +

+
+
+ + +
+{{end}} diff --git a/templates/home.page.tmpl b/templates/home.page.tmpl index bb35e2c..0ffcc28 100644 --- a/templates/home.page.tmpl +++ b/templates/home.page.tmpl @@ -1,11 +1,63 @@ {{template "base" .}} {{define "content"}} + +
-

This is the home page

-

This is the content

- outside image +

Hello, world!

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue + odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices + condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet + gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam + iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum + nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. + Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex. +

+
+
+ +
+
diff --git a/templates/majors.page.tmpl b/templates/majors.page.tmpl new file mode 100644 index 0000000..c978353 --- /dev/null +++ b/templates/majors.page.tmpl @@ -0,0 +1,30 @@ +{{template "base" .}} +{{define "content"}} +
+
+
+ room page +
+
+
+
+

Major's Suite

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sed convallis urna, vitae congue + odio. Sed pulvinar diam a odio tristique, nec porta eros suscipit. Sed lacinia ut nisl ultrices + condimentum. Vivamus imperdiet sapien sit amet mauris ornare accumsan. Proin varius imperdiet + gravida. Suspendisse posuere velit leo, sit amet egestas quam porta quis. Duis in nulla eu quam + iaculis iaculis. Etiam commodo gravida venenatis. Phasellus in vehicula est, aliquam condimentum + nisi. In id ligula lacinia, varius leo vel, tincidunt libero. Nullam cursus vel lectus at consequat. + Quisque malesuada efficitur sem et sollicitudin. Donec eget tincidunt arcu. Quisque ut posuere ex. +

+
+
+ + +
+{{end}} diff --git a/templates/make-reservation.page.tmpl b/templates/make-reservation.page.tmpl new file mode 100644 index 0000000..c0a4c10 --- /dev/null +++ b/templates/make-reservation.page.tmpl @@ -0,0 +1,34 @@ +{{template "base" .}} +{{define "content"}} +
+
+
+

Make reservation

+ +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+ +
+ + +
+
+
+
+{{end}} diff --git a/templates/reservation.page.tmpl b/templates/reservation.page.tmpl new file mode 100644 index 0000000..41b8b7c --- /dev/null +++ b/templates/reservation.page.tmpl @@ -0,0 +1,37 @@ +{{template "base" .}} +{{define "content"}} +
+
+
+
+
+

Search for Availability

+ +
+
+
+ +
+
+ +
+
+
+ +
+
+ +
+
+
+{{end}} + +{{define "js"}} + +{{end}}