From c66ee02a5549779cab97cd962e7a3ac79d347757 Mon Sep 17 00:00:00 2001
From: Mihai Parparita
Date: Sat, 16 Aug 2014 15:24:38 -0700
Subject: [PATCH] Move digest viewing to its own page.
---
app/githop.go | 32 ++++++++++++++++++++++++++------
app/static/main.css | 4 ++++
app/templates/digest-page.html | 7 +++++++
app/templates/index.html | 6 +++---
4 files changed, 40 insertions(+), 9 deletions(-)
create mode 100644 app/templates/digest-page.html
diff --git a/app/githop.go b/app/githop.go
index b6dda7d..62593fb 100644
--- a/app/githop.go
+++ b/app/githop.go
@@ -41,6 +41,7 @@ func init() {
router.HandleFunc("/session/sign-out", signOutHandler).Name("sign-out")
router.HandleFunc("/github/callback", githubOAuthCallbackHandler)
+ router.HandleFunc("/digest/view", viewDigestHandler).Name("view-digest")
router.HandleFunc("/digest/send", sendDigestHandler).Name("send-digest").Methods("POST")
router.HandleFunc("/digest/cron", digestCronHandler)
@@ -133,6 +134,29 @@ func indexHandler(w http.ResponseWriter, r *http.Request) {
return
}
+ signOutUrl, _ := router.Get("sign-out").URL()
+ viewDigestUrl, _ := router.Get("view-digest").URL()
+ sendDigestUrl, _ := router.Get("send-digest").URL()
+ var data = map[string]interface{}{
+ "SignOutUrl": signOutUrl.String(),
+ "ViewDigestUrl": viewDigestUrl.String(),
+ "SendDigestUrl": sendDigestUrl.String(),
+ }
+ if err := templates["index"].Execute(w, data); err != nil {
+ http.Error(w, err.Error(), http.StatusInternalServerError)
+ }
+}
+
+func viewDigestHandler(w http.ResponseWriter, r *http.Request) {
+ session, _ := sessionStore.Get(r, sessionConfig.CookieName)
+ userId := session.Values[sessionConfig.UserIdKey].(int)
+ c := appengine.NewContext(r)
+ account, err := getAccount(c, userId)
+ if err != nil {
+ http.Error(w, err.Error(), http.StatusInternalServerError)
+ return
+ }
+
oauthTransport := githubOAuthTransport(c)
oauthTransport.Token = &account.OAuthToken
githubClient := github.NewClient(oauthTransport.Client())
@@ -141,14 +165,10 @@ func indexHandler(w http.ResponseWriter, r *http.Request) {
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
}
- signOutUrl, _ := router.Get("sign-out").URL()
- sendDigestUrl, _ := router.Get("send-digest").URL()
var data = map[string]interface{}{
- "SignOutUrl": signOutUrl.String(),
- "SendDigestUrl": sendDigestUrl.String(),
- "Digest": digest,
+ "Digest": digest,
}
- if err := templates["index"].Execute(w, data); err != nil {
+ if err := templates["digest-page"].Execute(w, data); err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
}
}
diff --git a/app/static/main.css b/app/static/main.css
index 7b78c98..20e8426 100644
--- a/app/static/main.css
+++ b/app/static/main.css
@@ -2,3 +2,7 @@ body {
font-family: Helvetica, Arial, sans-serif;
font-size: 10pt;
}
+
+#send-form {
+ display: inline;
+}
diff --git a/app/templates/digest-page.html b/app/templates/digest-page.html
new file mode 100644
index 0000000..b85a03f
--- /dev/null
+++ b/app/templates/digest-page.html
@@ -0,0 +1,7 @@
+{{define "title"}}GitHop - Digest for {{.Digest.User.Login}}{{end}}
+
+{{define "body"}}
+
+{{template "digest" .Digest}}
+
+{{end}}
diff --git a/app/templates/index.html b/app/templates/index.html
index 0c0aa35..cf80f4e 100644
--- a/app/templates/index.html
+++ b/app/templates/index.html
@@ -8,10 +8,10 @@
-
-{{template "digest" .Digest}}
-
{{end}}