Statusmeldungen hinzugefügt; Reservierungen funktionabel; kleine Bugfixes

This commit is contained in:
Sebastian Seedorf
2016-03-28 17:04:55 +02:00
parent 87eb8ff35e
commit 62ff08624d
14 changed files with 721 additions and 105 deletions

View File

@@ -1,4 +1,97 @@
extends ./wrapper
mixin reservation-form(id, name, desc, email, person, time, date, message)
.row
form.col-md-10.col-md-offset-1.orange(method="post",action="/kontakt")
if message
+status-message(message.type, message.message, message.reasons)
.row
.col-md-6
+input-val("name","id-name","Max Mustermann","Name:","name",name)
+input-val("number","id-person","2","Anzahl der Personen:","person",person)
.col-md-6.no-padding-md
.row
.col-sm-6
+input-val("date","id-date","TT.MM.JJJJ","Datum:","date",date)
.col-sm-6
+input-val("datetime-local","id-time","HH:MM","Uhrzeit:","time",time)
.row
.col-md-12
+input-val("email","id-mail","max.mustermann@mail.de","E-Mail-Adresse:","email",email)
.row
.col-md-12
+textarea-val("id-desc","Weitere Kontaktdaten, Spezielle Essens-, Platzwünsche, ...","Kommentare:","desc",desc,"7")
.row
.col-md-3.col-md-offset-3.text-center
input(type='hidden',name='nametag',value='#{id}')
if id="new"
button(type="submit",class="btn btn-success") Reservieren
else
button(type="submit",class="btn btn-success") Reservierung ändern
.col-md-3.text-center
button(type="reset",class="btn btn-danger") Eingaben löschen
mixin reservation-list(entries, message)
.row
if entries.length
.col-md-10.col-md-offset-1.stripe
if message
+status-message(message.type, message.message, message.reasons)
each entry, index in entries
+reservation-entry(entry.name, entry.desc, entry.person, entry.time, entry.date, entry.read, entry.email, index)
else
.col-md-10.col-md-offset-1.orange Keine Reservierungen vorhanden.
mixin reservation-entry(name, desc, person, time, date, read, email, index)
.row
.col-md-1
form(style="display:inline",method="post",action="")
input(type='hidden',name='nametag',value="#{index+'-del'}")
button.btn.btn-sm.btn-danger(type="submit")
+icon("remove")
span.hidden-md.hidden-lg Entfernen
form(style="display:inline",method="get",action="")
input(type='hidden',name='nametag',value="#{index+'-edit'}")
button.btn.btn-sm.btn-primary(type="submit")
+icon("edit")
span.hidden-md.hidden-lg Bearbeiten
form(style="display:inline",method="post",action="")
input(type='hidden',name='nametag',value="#{index+'-read'}")
button.btn.btn-sm.btn-info(type="submit")
if read
+icon("check")
span.hidden-md.hidden-lg Als ungelesen markieren
else
+icon("unchecked")
span.hidden-md.hidden-lg Als gelesen markieren
.col-md-7
span.lead= name
br
span.small !{desc.substr(0, 300).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/\n/g, '<br/>')}
.col-md-4
.row
.col-md-12= person
.row
.col-md-12= time
.row
.col-md-12= date
.row
.col-md-12= email
mixin reservation(item, list, isadmin, message)
if isadmin
if item
+reservation-form(item.id, item.name, item.desc, item.email, item.person, item.time, item.date, message)
else
+reservation-list(list, message)
else
if item
+reservation-form("new", item.name, item.desc, item.email, item.person, item.time, item.date, message)
else
+reservation-form("new", "", "", "", "", "", "", message)
block vars
- var pageTitle = 'Kontakt'
block content
@@ -6,25 +99,7 @@ block content
a(name="reservierung")
h1 Reservierung
.container
.row
.col-md-10.col-md-offset-1.orange
.row
.col-md-6
+input("name","id-name","Max Mustermann","Name:")
+input("number","id-person","2","Anzahl der Personen:")
.col-md-6
+input("datetime-local","id-date","TT.MM.JJJJ HH:MM","Datum und Uhrzeit des Besuchs:")
+input("email","id-mail","max.mustermann@mail.de","E-Mail-Adresse:")
.row
.col-md-12
.form-group
label(for="id-desc") Kommentare:
textarea(id="id-desc",class="form-control",type="datetime-local",placeholder="Weitere Kontaktdaten, Spezielle Essens-, Platzwünsche, ...",rows="7")
.row
.col-md-2.col-md-offset-4
button(type="submit",class="btn btn-success") Submit
.col-md-2
button(type="reset",class="btn btn-danger") Submit
+reservation(editItem, listItem, isAdmin, statusMessage)
a(name="anfahrt")
h1 Anfahrt
.container
@@ -46,7 +121,7 @@ block content
p
| 030 110 112 1337
br
a(href='reis@korn.de') reis@korn.de
a(href='mailto://reis@korn.de') reis@korn.de
a(name="impressum")
h1 Impressum
.container

View File

@@ -2,45 +2,47 @@ extends ./wrapper
block vars
- var pageTitle = 'Home'
block content
+carousel("home_carousel",[
{
image:"/bin/image/restaurant-1-chairs.jpg",
h1:"Romantisches Dinner",
p:"Wie wäre es mit einem Kerzenabend zu zweit?",
button:{
caption:"Reservieren",
url:"/kontakt#reservieren"
}
},
{
image:"/bin/image/restaurant-2-hall.jpg",
h1:"Konferenzraum",
p:"Viel Platz für über 200 Gäste",
button:{
caption:"Reservieren",
url:"/kontakt#reservieren"
}
},
{
image:"/bin/image/restaurant-3-pillar.jpg",
h1:"Gemütliche Räumlichkeiten",
p:"Bei schlechten Wetter verträumt im fernen Osten",
button:{
caption:"Anfahrt",
url:"/kontakt#anfahrt"
}
},
{
image:"/bin/image/restaurant-4-buffet.jpg",
h1:"Buffet",
p:"Vielfältige Auswahl an Speisen und Getränken",
button:{
caption:"Speisekarte",
url:"/speisekarte"
}
}
])
.container
.row
.col-md-12.carousel-fullwidth
+carousel("home_carousel",[
{
image:"/bin/image/restaurant-1-chairs.jpg",
h1:"Romantisches Dinner",
p:"Wie wäre es mit einem Kerzenabend zu zweit?",
button:{
caption:"Reservieren",
url:"/kontakt#reservieren"
}
},
{
image:"/bin/image/restaurant-2-hall.jpg",
h1:"Konferenzraum",
p:"Viel Platz für über 200 Gäste",
button:{
caption:"Reservieren",
url:"/kontakt#reservieren"
}
},
{
image:"/bin/image/restaurant-3-pillar.jpg",
h1:"Gemütliche Räumlichkeiten",
p:"Bei schlechten Wetter verträumt im fernen Osten",
button:{
caption:"Anfahrt",
url:"/kontakt#anfahrt"
}
},
{
image:"/bin/image/restaurant-4-buffet.jpg",
h1:"Buffet",
p:"Vielfältige Auswahl an Speisen und Getränken",
button:{
caption:"Speisekarte",
url:"/speisekarte"
}
}
])
.row
.col-md-6.graygray
+img-responsive-center("/bin/image/rice-world.png","Welt voller Reis")

View File

@@ -1,19 +1,19 @@
extends ./wrapper
mixin menu-item-adm(name, desc, price, prefix, newItem)
mixin menu-item-adm(name, anchor, desc, price, prefix, newItem)
.row
.col-md-1
if newItem
button.btn.btn-sm.btn-success(type="submit",form="#{prefix}")
+icon("ok")
else
form(style="display:inline",method="post",action="")
form(style="display:inline",method="post",action="#{'/speisekarte#' + anchor}")
input(type='hidden',name='nametag',value="#{prefix + '-del'}")
button.btn.btn-sm.btn-danger(type="submit")
+icon("remove")
button.btn.btn-sm.btn-primary(type="submit",form="#{prefix}")
+icon("edit")
form.col-md-11(id="#{prefix}",method="post",action="")
form.col-md-11(id="#{prefix}",method="post",action="#{'/speisekarte#' + anchor}")
.col-md-9
input(type='hidden',name='nametag',value='#{prefix}')
+input-val-simple("text",prefix + "-name","Name","name","name",name)
@@ -32,16 +32,20 @@ mixin menu-item(name, desc, price)
p.text-right #{price.toFixed(2).replace(/(\d)(?=(\d{3})+\,)/g, '$1,').replace(/^(.*)\.(.*)$/g, '$1,$2€')}
mixin menu-cat(name, anchor, content, adm, prefix)
mixin menu-cat(name, anchor, content, adm, prefix, message)
a(name= anchor)
h2= name
.container
.row
.col-md-10.col-md-offset-1.stripe
if anchor
if message
if anchor==message.anchor
+status-message(message.type, message.message, message.reasons)
if adm
each val, index in content
+menu-item-adm(val.name, val.desc, val.price, prefix + "-" + index, "")
+menu-item-adm("", "", "", prefix + "-new", "x")
+menu-item-adm(val.name, anchor, val.desc, val.price, prefix + "-" + index, "")
+menu-item-adm("", anchor, "", "", prefix + "-new", "x")
else
each val, index in content
+menu-item(val.name, val.desc, val.price)
@@ -49,7 +53,7 @@ mixin menu-cat(name, anchor, content, adm, prefix)
mixin menu-part(part, adm, prefix)
each val, index in part
+menu-cat(val.name, val.anchor, val.items, adm, prefix + "-" + index)
+menu-cat(val.name, val.anchor, val.items, adm, prefix + "-" + index, statusMessage)
block vars
- var pageTitle = 'Speisekarte'

View File

@@ -3,6 +3,11 @@ doctype html
extends ../node_modules/jade-bootstrap/_bootstrap
mixin textarea-val(id,placeholder,label,name,value,rows)
.form-group
label(for="#{id}") #{label}
textarea.form-control(id="#{id}",placeholder="#{placeholder}",name="#{name}",rows="#{rows}")= value
mixin input-val(type,id,placeholder,label,name,value)
.form-group
label(for="#{id}") #{label}
@@ -13,6 +18,13 @@ mixin input-val-simple(type,id,placeholder,label,name,value)
input.form-control(type="#{type}",id="#{id}",placeholder="#{placeholder}",name="#{name}",value="#{value}")
mixin status-message(type, message, reasons)
div(class="alert alert-#{type}" role="alert")= message
if reasons
ul
each val in reasons
li= val
mixin navbar-main(style)
@@ -50,7 +62,8 @@ mixin loginBox
.col-sm-7.text-center
a.btn.btn-default(href="/login#admin") Admin-Panel
block styles
//link(rel="stylesheet",type="text/css",href="/bin/bootstrap/css/bootstrap.min.css")
link(rel="stylesheet",type="text/css",href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css")