当前位置: 首页>>代码示例>>Golang>>正文


Golang user.String函数代码示例

本文整理汇总了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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:58,代码来源:edit_sharing.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:55,代码来源:create_project.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:52,代码来源:delete_project.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:33,代码来源:create_project.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:57,代码来源:copy_project.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:44,代码来源:dashboard.go

示例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)
}
开发者ID:kshedden,项目名称:randomization,代码行数:56,代码来源:comments.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:56,代码来源:create_project.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:55,代码来源:comments.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:51,代码来源:create_project.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:51,代码来源:delete_project.go

示例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)
}
开发者ID:kshedden,项目名称:randomization,代码行数:51,代码来源:open_close_project.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:48,代码来源:comments.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:44,代码来源:create_project.go

示例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)
	}
}
开发者ID:kshedden,项目名称:randomization,代码行数:37,代码来源:information_page.go


注:本文中的appengine/user.String函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。