本文整理汇总了Golang中appengine/user.String函数的典型用法代码示例。如果您正苦于以下问题:Golang String函数的具体用法?Golang String怎么用?Golang String使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了String函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Edit_sharing
// Edit_sharing
func Edit_sharing(w http.ResponseWriter,
r *http.Request) {
if r.Method != "GET" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
pkey := r.FormValue("pkey")
shr := strings.Split(pkey, "::")
owner := shr[0]
project_name := shr[1]
if strings.ToLower(owner) != strings.ToLower(user.String()) {
msg := "Only the owner of a project can manage sharing."
return_msg := "Return to dashboard"
Message_page(w, r, user, msg, return_msg, "/dashboard")
return
}
shared_users, err := Get_shared_users(pkey, &c)
if err != nil {
shared_users = make([]string, 0)
c.Infof("Failed to retrieve sharing: %v %v", project_name, owner)
}
type TV struct {
User string
LoggedIn bool
SharedUsers []string
AnySharedUsers bool
ProjectName string
Pkey string
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
template_values.SharedUsers = shared_users
template_values.AnySharedUsers = len(shared_users) > 0
template_values.ProjectName = project_name
template_values.Pkey = pkey
tmpl, err := template.ParseFiles("header.html",
"edit_sharing.html")
if err != nil {
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "edit_sharing.html",
template_values); err != nil {
c.Errorf("Failed to execute template: %v", err)
}
}
示例2: Create_project_step2
// Create_project_step2 asks if the subject-level data are to be logged.
func Create_project_step2(w http.ResponseWriter,
r *http.Request) {
if r.Method != "POST" {
Serve404(w)
return
}
c := appengine.NewContext(r)
if err := r.ParseForm(); err != nil {
ServeError(&c, w, err)
return
}
user := user.Current(c)
project_name := r.FormValue("project_name")
// Check if the project name has already been used.
pkey := user.String() + "::" + project_name
key := datastore.NewKey(c, "EncodedProject", pkey, 0, nil)
var pr EncodedProject
err := datastore.Get(c, key, &pr)
if err == nil {
msg := fmt.Sprintf("A project named \"%s\" belonging to user %s already exists.", project_name, user.String())
return_msg := "Return to dashboard"
Message_page(w, r, user, msg, return_msg, "/dashboard")
return
}
type TV struct {
User string
LoggedIn bool
Name string
Pkey string
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
template_values.Name = r.FormValue("project_name")
tmpl, err := template.ParseFiles("header.html",
"create_project_step2.html")
if err != nil {
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "create_project_step2.html",
template_values); err != nil {
c.Errorf("Failed to execute template: %v", err)
}
}
示例3: Delete_project_step1
// Create_project_step1 gets the project name from the user.
func Delete_project_step1(w http.ResponseWriter,
r *http.Request) {
if r.Method != "GET" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
_, projlist, err := GetProjects(user.String(), false, &c)
if err != nil {
msg := "A datastore error occured, your projects cannot be retrieved."
c.Errorf("Delete_project_step1: %v", err)
return_msg := "Return to dashboard"
Message_page(w, r, user, msg, return_msg, "/dashboard")
return
}
if len(projlist) == 0 {
msg := "You are not the owner of any projects. A project can only be deleted by its owner."
return_msg := "Return to dashboard"
Message_page(w, r, user, msg, return_msg, "/dashboard")
return
}
type TV struct {
User string
LoggedIn bool
Proj []*EncodedProjectView
}
template_values := new(TV)
template_values.User = user.String()
template_values.Proj = Format_encoded_projects(projlist)
template_values.LoggedIn = user != nil
tmpl, err := template.ParseFiles("header.html",
"delete_project_step1.html")
if err != nil {
c.Errorf("Delete_project_step1: %v", err)
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "delete_project_step1.html",
template_values); err != nil {
c.Errorf("Delete_project_step1: %v", err)
}
}
示例4: Create_project_step1
// Create_project_step1 gets the project name from the user.
func Create_project_step1(w http.ResponseWriter,
r *http.Request) {
if r.Method != "GET" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
type TV struct {
User string
LoggedIn bool
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
tmpl, err := template.ParseFiles("header.html",
"create_project_step1.html")
if err != nil {
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "create_project_step1.html",
template_values); err != nil {
c.Errorf("Failed to execute template: %v", err)
}
}
示例5: Copy_project
func Copy_project(w http.ResponseWriter, r *http.Request) {
if r.Method != "GET" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
pkey := r.FormValue("pkey")
ok := Check_access(user, pkey, &c, &w, r)
if !ok {
msg := "Only the project owner can copy a project."
return_msg := "Return to project dashboard"
Message_page(w, r, user, msg, return_msg,
"/project_dashboard?pkey="+pkey)
return
}
key := datastore.NewKey(c, "EncodedProject", pkey, 0, nil)
var eproj EncodedProject
err := datastore.Get(c, key, &eproj)
if err != nil {
c.Errorf("Copy_project: %v", err)
msg := "Unknown datastore error."
return_msg := "Return to project dashboard"
Message_page(w, r, user, msg, return_msg,
"/project_dashboard?pkey="+pkey)
return
}
type TV struct {
User string
LoggedIn bool
Pkey string
ProjectName string
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
template_values.Pkey = pkey
template_values.ProjectName = eproj.Name
tmpl, err := template.ParseFiles("header.html", "copy_project.html")
if err != nil {
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "copy_project.html",
template_values); err != nil {
c.Errorf("Failed to execute template: %v", err)
}
}
示例6: Dashboard
func Dashboard(w http.ResponseWriter,
r *http.Request) {
if r.Method != "GET" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
_, projlist, err := GetProjects(user.String(), true, &c)
if err != nil {
msg := "A datastore error occured, projects cannot be retrieved."
c.Errorf("Dashboard: %v", err)
return_msg := "Return to dashboard"
Message_page(w, r, nil, msg, return_msg, "/dashboard")
return
}
type TV struct {
User string
LoggedIn bool
PRN bool
PR []*EncodedProjectView
}
template_values := new(TV)
template_values.User = user.String()
template_values.PR = Format_encoded_projects(projlist)
template_values.PRN = len(projlist) > 0
template_values.LoggedIn = user != nil
tmpl, err := template.ParseFiles("header.html", "dashboard.html")
if err != nil {
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "dashboard.html",
template_values); err != nil {
c.Errorf("Failed to execute template: %v", err)
}
}
示例7: Confirm_add_comment
// Confirm_add_comment
func Confirm_add_comment(w http.ResponseWriter,
r *http.Request) {
if r.Method != "POST" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
pkey := r.FormValue("pkey")
if ok := Check_access(user, pkey, &c, &w, r); !ok {
return
}
proj, err := Get_project_from_key(pkey, &c)
if err != nil {
msg := "Datastore error, unable to add comment."
return_msg := "Return to project"
Message_page(w, r, user, msg, return_msg,
"/project_dashboard?pkey="+pkey)
c.Errorf("Confirm_add_comment [1]: %v", err)
return
}
comment_text := r.FormValue("comment_text")
comment_text = strings.TrimSpace(comment_text)
comment_lines := strings.Split(comment_text, "\n")
if len(comment_text) == 0 {
msg := "No comment was entered."
return_msg := "Return to project"
Message_page(w, r, user, msg, return_msg,
"/project_dashboard?pkey="+pkey)
return
}
comment := new(Comment)
comment.Person = user.String()
comment.DateTime = time.Now()
loc, _ := time.LoadLocation("America/New_York")
t := comment.DateTime.In(loc)
comment.Date = t.Format("2006-1-2")
comment.Time = t.Format("3:04pm")
comment.Comment = comment_lines
proj.Comments = append(proj.Comments, comment)
Store_project(proj, pkey, &c)
msg := "Your comment has been added to the project."
return_msg := "Return to project"
Message_page(w, r, user, msg, return_msg,
"/project_dashboard?pkey="+pkey)
}
示例8: Create_project_step4
// Create_project_step4
func Create_project_step4(w http.ResponseWriter,
r *http.Request) {
if r.Method != "POST" {
Serve404(w)
return
}
c := appengine.NewContext(r)
if err := r.ParseForm(); err != nil {
ServeError(&c, w, err)
return
}
user := user.Current(c)
numgroups, _ := strconv.Atoi(r.FormValue("numgroups"))
type TV struct {
User string
LoggedIn bool
Name string
Pkey string
StoreRawData bool
NumGroups int
IX []int
}
// Group numbers (they don't have names yet)
IX := make([]int, numgroups, numgroups)
for i := 0; i < numgroups; i++ {
IX[i] = i + 1
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
template_values.Name = r.FormValue("project_name")
template_values.StoreRawData = r.FormValue("store_rawdata") == "true"
template_values.IX = IX
template_values.NumGroups = numgroups
tmpl, err := template.ParseFiles("header.html",
"create_project_step4.html")
if err != nil {
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "create_project_step4.html",
template_values); err != nil {
c.Errorf("Failed to execute template: %v", err)
}
}
示例9: View_comments
// View_comment
func View_comments(w http.ResponseWriter,
r *http.Request) {
if r.Method != "GET" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
pkey := r.FormValue("pkey")
if ok := Check_access(user, pkey, &c, &w, r); !ok {
return
}
PR, _ := Get_project_from_key(pkey, &c)
PV := Format_project(PR)
for _, c := range PV.Comments {
c.Date = c.DateTime.Format("2006-1-2")
c.Time = c.DateTime.Format("3:04pm")
}
type TV struct {
User string
LoggedIn bool
PR *Project
PV *ProjectView
Pkey string
Any_comments bool
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
template_values.PR = PR
template_values.PV = PV
template_values.Any_comments = len(PR.Comments) > 0
template_values.Pkey = pkey
tmpl, err := template.ParseFiles("header.html",
"view_comments.html")
if err != nil {
c.Errorf("View_comments: %v", err)
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "view_comments.html",
template_values); err != nil {
c.Errorf("View_comments: %v", err)
}
}
示例10: validation_error_step8
func validation_error_step8(w http.ResponseWriter,
r *http.Request) {
if r.Method != "POST" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
if err := r.ParseForm(); err != nil {
ServeError(&c, w, err)
return
}
type TV struct {
User string
LoggedIn bool
Name string
NumGroups int
Pkey string
GroupNames string
StoreRawData bool
Numvar int
SamplingRates string
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
template_values.Name = r.FormValue("project_name")
template_values.GroupNames = r.FormValue("group_names")
template_values.NumGroups, _ = strconv.Atoi(r.FormValue("numgroups"))
template_values.Numvar, _ = strconv.Atoi(r.FormValue("numvar"))
template_values.StoreRawData = r.FormValue("store_rawdata") == "true"
template_values.SamplingRates = r.FormValue("rates")
tmpl, err := template.ParseFiles("header.html",
"validation_error_step8.html")
if err != nil {
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "validation_error_step8.html",
template_values); err != nil {
c.Errorf("Failed to execute template: %v", err)
}
}
示例11: Delete_project_step2
// Delete_project_step2 confirms that a project should be deleted.
func Delete_project_step2(w http.ResponseWriter,
r *http.Request) {
if r.Method != "POST" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
if err := r.ParseForm(); err != nil {
ServeError(&c, w, err)
return
}
pkey := r.FormValue("project_list")
svec := strings.Split(pkey, "::")
type TV struct {
User string
LoggedIn bool
ProjectName string
Pkey string
Nokey bool
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
template_values.Pkey = pkey
if len(svec) >= 2 {
template_values.ProjectName = svec[1]
}
template_values.Nokey = len(pkey) == 0
tmpl, err := template.ParseFiles("header.html",
"delete_project_step2.html")
if err != nil {
c.Errorf("Delete_project_step2: %v", err)
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "delete_project_step2.html",
template_values); err != nil {
c.Errorf("Delete_project_step2: %v", err)
}
}
示例12: OpenClose_completed
// OpenClose_completed
func OpenClose_completed(w http.ResponseWriter,
r *http.Request) {
if r.Method != "POST" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
pkey := r.FormValue("pkey")
if ok := Check_access(user, pkey, &c, &w, r); !ok {
msg := "You do not have access to this page."
return_msg := "Return"
Message_page(w, r, user, msg, return_msg, "/")
return
}
proj, err := Get_project_from_key(pkey, &c)
if err != nil {
msg := "Datastore error: unable to retrieve project."
return_msg := "Return to project dashboard"
Message_page(w, r, user, msg, return_msg, "/project_dashboard?pkey="+pkey)
return
}
if proj.Owner != user.String() {
msg := "Only the project owner can open or close a project for enrollment."
return_msg := "Return to project dashboard"
Message_page(w, r, user, msg, return_msg, "/project_dashboard?pkey="+pkey)
return
}
status := r.FormValue("open")
if status == "open" {
msg := fmt.Sprintf("The project \"%s\" is now open for enrollment.", proj.Name)
return_msg := "Return to project dashboard"
Message_page(w, r, user, msg, return_msg, "/project_dashboard?pkey="+pkey)
proj.Open = true
} else {
msg := fmt.Sprintf("The project \"%s\" is now closed for enrollment.", proj.Name)
return_msg := "Return to project dashboard"
Message_page(w, r, user, msg, return_msg, "/project_dashboard?pkey="+pkey)
proj.Open = false
}
Store_project(proj, pkey, &c)
}
示例13: Add_comment
// Add_comment
func Add_comment(w http.ResponseWriter,
r *http.Request) {
if r.Method != "GET" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
pkey := r.FormValue("pkey")
if ok := Check_access(user, pkey, &c, &w, r); !ok {
return
}
proj, _ := Get_project_from_key(pkey, &c)
PV := Format_project(proj)
type TV struct {
User string
LoggedIn bool
PR *Project
PV *ProjectView
Pkey string
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
template_values.PR = proj
template_values.PV = PV
template_values.Pkey = pkey
tmpl, err := template.ParseFiles("header.html",
"add_comment.html")
if err != nil {
c.Errorf("Add_comment: %v", err)
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "add_comment.html",
template_values); err != nil {
c.Errorf("Add_comment: %v", err)
}
}
示例14: Create_project_step3
// Create_project_step3 gets the number of treatment groups.
func Create_project_step3(w http.ResponseWriter,
r *http.Request) {
if r.Method != "POST" {
Serve404(w)
return
}
c := appengine.NewContext(r)
if err := r.ParseForm(); err != nil {
ServeError(&c, w, err)
return
}
user := user.Current(c)
type TV struct {
User string
LoggedIn bool
Name string
Pkey string
StoreRawData bool
}
template_values := new(TV)
template_values.User = user.String()
template_values.LoggedIn = user != nil
template_values.Name = r.FormValue("project_name")
template_values.StoreRawData = r.FormValue("store_rawdata") == "yes"
tmpl, err := template.ParseFiles("header.html",
"create_project_step3.html")
if err != nil {
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "create_project_step3.html",
template_values); err != nil {
c.Errorf("Failed to execute template: %v", err)
}
}
示例15: Information_page
// Information_page displays a page of information about this application.
func Information_page(w http.ResponseWriter,
r *http.Request) {
if r.Method != "GET" {
Serve404(w)
return
}
c := appengine.NewContext(r)
user := user.Current(c)
type TV struct {
User string
LoggedIn bool
}
template_values := new(TV)
if user != nil {
template_values.User = user.String()
} else {
template_values.User = ""
}
template_values.LoggedIn = user != nil
tmpl, err := template.ParseFiles("header.html", "information_page.html")
if err != nil {
c.Errorf("Information_page: %v", err)
ServeError(&c, w, err)
return
}
if err := tmpl.ExecuteTemplate(w, "information_page.html",
template_values); err != nil {
c.Errorf("Information page: %v", err)
}
}