mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 16:40:24 +08:00 
			
		
		
		
	Update
This commit is contained in:
		@@ -1,4 +1,4 @@
 | 
				
			|||||||
APP_NAME = Gogs - Go Git Service
 | 
					APP_NAME = Gogs: Go Git Service
 | 
				
			||||||
RUN_USER = lunny
 | 
					RUN_USER = lunny
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[repository]
 | 
					[repository]
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										2
									
								
								gogs.go
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								gogs.go
									
									
									
									
									
								
							@@ -19,7 +19,7 @@ import (
 | 
				
			|||||||
// Test that go1.1 tag above is included in builds. main.go refers to this definition.
 | 
					// Test that go1.1 tag above is included in builds. main.go refers to this definition.
 | 
				
			||||||
const go11tag = true
 | 
					const go11tag = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const APP_VER = "0.0.0.0301"
 | 
					const APP_VER = "0.0.0.0303"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func init() {
 | 
					func init() {
 | 
				
			||||||
	runtime.GOMAXPROCS(runtime.NumCPU())
 | 
						runtime.GOMAXPROCS(runtime.NumCPU())
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -34,7 +34,7 @@ const (
 | 
				
			|||||||
type User struct {
 | 
					type User struct {
 | 
				
			||||||
	Id            int64
 | 
						Id            int64
 | 
				
			||||||
	LowerName     string `xorm:"unique not null"`
 | 
						LowerName     string `xorm:"unique not null"`
 | 
				
			||||||
	Name          string `xorm:"unique not null" valid:"Required"`
 | 
						Name          string `xorm:"unique not null" valid:"AlphaDash;MinSize(5);MaxSize(30)"`
 | 
				
			||||||
	Email         string `xorm:"unique not null" valid:"Email"`
 | 
						Email         string `xorm:"unique not null" valid:"Email"`
 | 
				
			||||||
	Passwd        string `xorm:"not null" valid:"MinSize(8)"`
 | 
						Passwd        string `xorm:"not null" valid:"MinSize(8)"`
 | 
				
			||||||
	LoginType     int
 | 
						LoginType     int
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,6 +14,7 @@ import (
 | 
				
			|||||||
	"github.com/gogits/validation"
 | 
						"github.com/gogits/validation"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	"github.com/gogits/gogs/models"
 | 
						"github.com/gogits/gogs/models"
 | 
				
			||||||
 | 
						"github.com/gogits/gogs/utils/auth"
 | 
				
			||||||
	"github.com/gogits/gogs/utils/log"
 | 
						"github.com/gogits/gogs/utils/log"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -50,18 +51,19 @@ func SignIn(req *http.Request, r render.Render, session sessions.Session) {
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func SignUp(req *http.Request, r render.Render) {
 | 
					func SignUp(req *http.Request, r render.Render) {
 | 
				
			||||||
 | 
						data := map[string]interface{}{"Title": "Sign Up"}
 | 
				
			||||||
	if req.Method == "GET" {
 | 
						if req.Method == "GET" {
 | 
				
			||||||
		r.HTML(200, "user/signup", map[string]interface{}{
 | 
							r.HTML(200, "user/signup", data)
 | 
				
			||||||
			"Title": "Sign Up",
 | 
					 | 
				
			||||||
		})
 | 
					 | 
				
			||||||
		return
 | 
							return
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Front-end should do double check of password.
 | 
				
			||||||
	u := &models.User{
 | 
						u := &models.User{
 | 
				
			||||||
		Name:   req.FormValue("username"),
 | 
							Name:   req.FormValue("username"),
 | 
				
			||||||
		Email:  req.FormValue("email"),
 | 
							Email:  req.FormValue("email"),
 | 
				
			||||||
		Passwd: req.FormValue("passwd"),
 | 
							Passwd: req.FormValue("passwd"),
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	valid := validation.Validation{}
 | 
						valid := validation.Validation{}
 | 
				
			||||||
	ok, err := valid.Valid(u)
 | 
						ok, err := valid.Valid(u)
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
@@ -69,23 +71,21 @@ func SignUp(req *http.Request, r render.Render) {
 | 
				
			|||||||
		return
 | 
							return
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if !ok {
 | 
						if !ok {
 | 
				
			||||||
		for _, err := range valid.Errors {
 | 
							data["HasError"] = true
 | 
				
			||||||
			log.Warn("user.SignUp -> valid user: %v", err)
 | 
							data["ErrorMsg"] = auth.GenerateErrorMsg(valid.Errors[0])
 | 
				
			||||||
		}
 | 
							r.HTML(200, "user/signup", data)
 | 
				
			||||||
		return
 | 
							return
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	err = models.RegisterUser(u)
 | 
						// err = models.RegisterUser(u)
 | 
				
			||||||
	if err != nil {
 | 
						// if err != nil {
 | 
				
			||||||
		if err != nil {
 | 
						// 	r.HTML(200, "base/error", map[string]interface{}{
 | 
				
			||||||
			r.HTML(200, "base/error", map[string]interface{}{
 | 
						// 		"Error": fmt.Sprintf("%v", err),
 | 
				
			||||||
				"Error": fmt.Sprintf("%v", err),
 | 
						// 	})
 | 
				
			||||||
			})
 | 
						// 	return
 | 
				
			||||||
			return
 | 
						// }
 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	r.Redirect("/")
 | 
						// r.Redirect("/")
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func Delete(req *http.Request, r render.Render) {
 | 
					func Delete(req *http.Request, r render.Render) {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -16,7 +16,7 @@
 | 
				
			|||||||
		<script src="/js/jquery-1.10.1.min.js"></script>
 | 
							<script src="/js/jquery-1.10.1.min.js"></script>
 | 
				
			||||||
		<script src="/js/bootstrap.min.js"></script>
 | 
							<script src="/js/bootstrap.min.js"></script>
 | 
				
			||||||
        <script src="/js/app.js"></script>
 | 
					        <script src="/js/app.js"></script>
 | 
				
			||||||
		<title>{{.Title}} | {{AppName}}</title>
 | 
							<title>{{.Title}} - {{AppName}}</title>
 | 
				
			||||||
	</head>
 | 
						</head>
 | 
				
			||||||
	<body>
 | 
						<body>
 | 
				
			||||||
		<noscript>Please enable JavaScript in your browser!</noscript>
 | 
							<noscript>Please enable JavaScript in your browser!</noscript>
 | 
				
			||||||
@@ -7,7 +7,7 @@
 | 
				
			|||||||
            <a class="gogs-nav-item" href="#">Help</a>
 | 
					            <a class="gogs-nav-item" href="#">Help</a>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            <!--<a class="gogs-nav-item navbar-right navbar-btn btn btn-danger" href="/login/">Sign in</a>-->
 | 
					            <!--<a class="gogs-nav-item navbar-right navbar-btn btn btn-danger" href="/login/">Sign in</a>-->
 | 
				
			||||||
            <a id="gogs-nav-out" class="gogs-nav-item navbar-right navbar-btn btn btn-danger" href="/login/"><i class="fa fa-power-off fa-lg"></i></a>
 | 
					            <a id="gogs-nav-out" class="gogs-nav-item navbar-right navbar-btn btn btn-danger" href="/user/login/"><i class="fa fa-power-off fa-lg"></i></a>
 | 
				
			||||||
            <a id="gogs-nav-avatar" class="gogs-nav-item navbar-right" href="/user/profile" data-toggle="tooltip" data-placement="bottom" title="Username">
 | 
					            <a id="gogs-nav-avatar" class="gogs-nav-item navbar-right" href="/user/profile" data-toggle="tooltip" data-placement="bottom" title="Username">
 | 
				
			||||||
                <img src="http://1.gravatar.com/avatar/x?s=28" alt="user-avatar" title="username"/>
 | 
					                <img src="http://1.gravatar.com/avatar/x?s=28" alt="user-avatar" title="username"/>
 | 
				
			||||||
            </a>
 | 
					            </a>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,7 +1,7 @@
 | 
				
			|||||||
{{template "base/head" .}}
 | 
					{{template "base/head" .}}
 | 
				
			||||||
{{template "base/navbar" .}}
 | 
					{{template "base/navbar" .}}
 | 
				
			||||||
<div class="container" id="gogs-body">
 | 
					<div class="container" id="gogs-body">
 | 
				
			||||||
    <form action="/user/signin" method="post" class="form-horizontal gogs-card" id="gogs-login-card">
 | 
					    <form action="/user/login" method="post" class="form-horizontal gogs-card" id="gogs-login-card">
 | 
				
			||||||
        <h3>Log in</h3>{{if .Error}}
 | 
					        <h3>Log in</h3>{{if .Error}}
 | 
				
			||||||
        <div class="form-group">
 | 
					        <div class="form-group">
 | 
				
			||||||
            <div class="col-md-6 col-md-offset-3 alert alert-danger text-center"><strong>{{.Error}}</strong></div>
 | 
					            <div class="col-md-6 col-md-offset-3 alert alert-danger text-center"><strong>{{.Error}}</strong></div>
 | 
				
			||||||
@@ -26,7 +26,7 @@
 | 
				
			|||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
        <div class="form-group">
 | 
					        <div class="form-group">
 | 
				
			||||||
            <div class="col-md-offset-4 col-md-6">
 | 
					            <div class="col-md-offset-4 col-md-6">
 | 
				
			||||||
                <a href="/sign-up/">Need an account? Sign up free.</a>
 | 
					                <a href="/user/sign_up">Need an account? Sign up free.</a>
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
        <div class="form-group text-center" id="gogs-social-login">
 | 
					        <div class="form-group text-center" id="gogs-social-login">
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,8 +1,11 @@
 | 
				
			|||||||
{{template "base/head" .}}
 | 
					{{template "base/head" .}}
 | 
				
			||||||
{{template "base/navbar" .}}
 | 
					{{template "base/navbar" .}}
 | 
				
			||||||
<div class="container" id="gogs-body">
 | 
					<div class="container" id="gogs-body">
 | 
				
			||||||
	<form action="/user/signup" method="post" class="form-horizontal gogs-card" id="gogs-login-card">
 | 
						<form action="/user/sign_up" method="post" class="form-horizontal gogs-card" id="gogs-login-card">
 | 
				
			||||||
        <h3>Sign Up</h3>
 | 
					        <h3>Sign Up</h3>
 | 
				
			||||||
 | 
						{{if .HasError}}
 | 
				
			||||||
 | 
						<div class="alert alert-danger">{{.ErrorMsg}}</div>
 | 
				
			||||||
 | 
						{{end}}
 | 
				
			||||||
		<div class="form-group">
 | 
							<div class="form-group">
 | 
				
			||||||
			<label class="col-md-4 control-label">Username: </label>
 | 
								<label class="col-md-4 control-label">Username: </label>
 | 
				
			||||||
			<div class="col-md-6">
 | 
								<div class="col-md-6">
 | 
				
			||||||
@@ -37,7 +40,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	    <div class="form-group">
 | 
						    <div class="form-group">
 | 
				
			||||||
            <div class="col-md-offset-4 col-md-6">
 | 
					            <div class="col-md-offset-4 col-md-6">
 | 
				
			||||||
                <a href="/login/">Already have an account? Sign in now!</a>
 | 
					                <a href="/user/login">Already have an account? Sign in now!</a>
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
	    </div>
 | 
						    </div>
 | 
				
			||||||
	</form>
 | 
						</form>
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										15
									
								
								utils/auth/auth.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								utils/auth/auth.go
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					// Copyright 2014 The Gogs Authors. All rights reserved.
 | 
				
			||||||
 | 
					// Use of this source code is governed by a MIT-style
 | 
				
			||||||
 | 
					// license that can be found in the LICENSE file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					package auth
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import (
 | 
				
			||||||
 | 
						"fmt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						"github.com/gogits/validation"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func GenerateErrorMsg(e *validation.ValidationError) string {
 | 
				
			||||||
 | 
						return fmt.Sprintf("%v", e.LimitValue)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										6
									
								
								web.go
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								web.go
									
									
									
									
									
								
							@@ -53,11 +53,9 @@ func runWeb(*cli.Context) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	// Routers.
 | 
						// Routers.
 | 
				
			||||||
	m.Get("/", routers.Dashboard)
 | 
						m.Get("/", routers.Dashboard)
 | 
				
			||||||
	m.Any("/login", user.SignIn)
 | 
						m.Any("/user/login", user.SignIn)
 | 
				
			||||||
	m.Any("/user/signin", user.SignIn)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	m.Any("/sign-up", user.SignUp)
 | 
						m.Any("/user/sign_up", user.SignUp)
 | 
				
			||||||
	m.Any("/user/signup", user.SignUp)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	m.Get("/user/profile", user.Profile) // should be /username
 | 
						m.Get("/user/profile", user.Profile) // should be /username
 | 
				
			||||||
	m.Any("/user/delete", user.Delete)
 | 
						m.Any("/user/delete", user.Delete)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user