diff options
| -rw-r--r-- | handler.go | 11 | ||||
| -rw-r--r-- | static/style.css | 71 | ||||
| -rw-r--r-- | tpls/jobs.tpl | 3 | ||||
| -rw-r--r-- | tpls/master.tpl | 31 | 
4 files changed, 110 insertions, 6 deletions
| @@ -43,6 +43,11 @@ func userFromSess(sess *sessions.Session) model.User {  	return user  } +type tpldata struct { +	Mail string +	Data interface{} +} +  func mkHttpHandler(h Handler, tpl *template.Template) http.HandlerFunc {  	return func(rw http.ResponseWriter, req *http.Request) {  		sess, err := getSess(req) @@ -53,12 +58,16 @@ func mkHttpHandler(h Handler, tpl *template.Template) http.HandlerFunc {  		user := userFromSess(sess)  		outdata := h(user, sess, req) +		mail := "" +		if user != nil { +			mail = user.Email() +		}  		if err := sess.Save(req, rw); err != nil {  			log.Printf("Error while saving session: %s", err)  		} -		if err := tpl.Execute(rw, outdata); err != nil { +		if err := tpl.Execute(rw, &tpldata{mail, outdata}); err != nil {  			log.Printf("Error executing template %s: %s", tpl.Name(), err)  		}  	} diff --git a/static/style.css b/static/style.css new file mode 100644 index 0000000..9ae1858 --- /dev/null +++ b/static/style.css @@ -0,0 +1,71 @@ +* { +	font-family: sans-serif; +} + +body, html { +	padding: 0px; +	margin: 0px; +} + +#main { +	width: 85%; +	margin: 7.5mm auto 10mm; +	padding: 0px; +	border: 1px solid black; +	border-top: none; +} + +#nav, #footer { +	color: white; +	background-color: black; +	font-size: 10pt; +} + +#nav a, #footer a { +	color: white; +} + +#content { +	margin: 1mm 2mm 1mm; +} + +#footer { +	text-align: center; +} + +#nav a { +	text-decoration: none; +} + +.fullwidth { +	width: 100%; +} + +.emptytab { +	text-align: center; +	font-style: italic; +} + +#nav { +	position: relative; +} + +#nav ul { +	position: absolute; +	top: 0px; +	right: 0px; +	list-style: none; +} + +#nav ul li { +	float: right; +	padding: 0px 2mm 0px; +} + +#nav ul li:hover { +	background-color: white; +} + +#nav ul li:hover a { +	color: black; +}
\ No newline at end of file diff --git a/tpls/jobs.tpl b/tpls/jobs.tpl index 9408e48..60d17f4 100644 --- a/tpls/jobs.tpl +++ b/tpls/jobs.tpl @@ -26,6 +26,9 @@  						<td><a href="/jobedit/{{.ID}}">{{.Subject}}</a></td>  						<td>{{.Excerpt}}</td>  						<td>{{.Next}}</td> +					</tr> +					{{else}}<tr> +						<td colspan="4" class="emptytab">No jobs found</td>  					</tr>{{end}}  				</tbody>  			</table> diff --git a/tpls/master.tpl b/tpls/master.tpl index 4e2b90f..54098e9 100644 --- a/tpls/master.tpl +++ b/tpls/master.tpl @@ -1,12 +1,33 @@  <html>  <head> -	<title>{{template "title" .}} – mailremind</title> +	<title>{{template "title" .Data}} – mailremind</title> +	<link rel="stylesheet" type="text/css" href="/static/style.css" />  </head>  <body> -	<h1>{{template "title" .}}</h1> -	 -	<div class="content"> -		{{template "content" .}} +	<div id="main"> +		<div id="nav"> +			<a href="/" class="apptitle">mailremind</a> +			<ul> +				{{if .Mail}} +					<li><a href="/jobedit">new job</a></li> +					<li><a href="/jobs">list jobs</a></li> +					<li><a href="/logout">logout</a></li> +				{{else}} +					<li><a href="/register">register</a></li> +					<li><a href="/login">login</a></li> +				{{end}} +			</ul> +		</div> +		 +		<div id="content"> +			<h1>{{template "title" .Data}}</h1> +			{{template "content" .Data}} +		</div> +		 +		<div id="footer"> +			© 2013 Bla bla....<br /> +			Foo! +		</div>  	</div>  </body>  </html>
\ No newline at end of file | 
