github.com/aleksi/gonuts.io@v0.0.0-20130622121132-3b0f2d1999fb/app/gonuts/controllers/welcome.go (about)

     1  package controllers
     2  
     3  import (
     4  	"appengine"
     5  	"appengine/datastore"
     6  	"bytes"
     7  	"html/template"
     8  	"net/http"
     9  
    10  	"gonuts"
    11  )
    12  
    13  func welcomeHandler(c appengine.Context, w http.ResponseWriter, r *http.Request) {
    14  	d := make(ContentData)
    15  
    16  	nuts, err := datastore.NewQuery("Version").Count(c)
    17  	gonuts.LogError(c, err)
    18  	d["VersionCount"] = nuts
    19  
    20  	nuts, err = datastore.NewQuery("Nut").Count(c)
    21  	gonuts.LogError(c, err)
    22  	d["NutsCount"] = nuts
    23  
    24  	users, err := datastore.NewQuery("User").Count(c)
    25  	gonuts.LogError(c, err)
    26  	d["UsersCount"] = users
    27  
    28  	var content bytes.Buffer
    29  	gonuts.PanicIfErr(Base.ExecuteTemplate(&content, "welcome.html", d))
    30  
    31  	bd := BaseData{
    32  		Content: template.HTML(content.String()),
    33  	}
    34  	gonuts.PanicIfErr(Base.Execute(w, &bd))
    35  }