File tree Expand file tree Collapse file tree 4 files changed +21
-4
lines changed Expand file tree Collapse file tree 4 files changed +21
-4
lines changed Original file line number Diff line number Diff line change @@ -152,6 +152,10 @@ func CreateOrganization(org, owner *User) (err error) {
152
152
return ErrUserAlreadyExist {org .Name }
153
153
}
154
154
155
+ if err = DeleteUserRedirect (org .Name ); err != nil {
156
+ return err
157
+ }
158
+
155
159
org .LowerName = strings .ToLower (org .Name )
156
160
if org .Rands , err = GetUserSalt (); err != nil {
157
161
return err
Original file line number Diff line number Diff line change @@ -54,7 +54,14 @@ func HandleOrgAssignment(ctx *Context, args ...bool) {
54
54
ctx .Org .Organization , err = models .GetUserByName (orgName )
55
55
if err != nil {
56
56
if models .IsErrUserNotExist (err ) {
57
- ctx .NotFound ("GetUserByName" , err )
57
+ redirectUserID , err := models .LookupUserRedirect (orgName )
58
+ if err == nil {
59
+ RedirectToUser (ctx , orgName , redirectUserID )
60
+ } else if models .IsErrUserRedirectNotExist (err ) {
61
+ ctx .NotFound ("GetUserByName" , err )
62
+ } else {
63
+ ctx .ServerError ("LookupUserRedirect" , err )
64
+ }
58
65
} else {
59
66
ctx .ServerError ("GetUserByName" , err )
60
67
}
Original file line number Diff line number Diff line change @@ -392,9 +392,16 @@ func orgAssignment(args ...bool) macaron.Handler {
392
392
ctx .Org .Organization , err = models .GetOrgByName (ctx .Params (":org" ))
393
393
if err != nil {
394
394
if models .IsErrOrgNotExist (err ) {
395
- ctx .NotFound ()
395
+ redirectUserID , err := models .LookupUserRedirect (ctx .Params (":orgname" ))
396
+ if err == nil {
397
+ context .RedirectToUser (ctx .Context , ctx .Params (":orgname" ), redirectUserID )
398
+ } else if models .IsErrUserRedirectNotExist (err ) {
399
+ ctx .NotFound ("GetOrgByName" , err )
400
+ } else {
401
+ ctx .ServerError ("LookupUserRedirect" , err )
402
+ }
396
403
} else {
397
- ctx .Error ( http . StatusInternalServerError , "GetOrgByName" , err )
404
+ ctx .ServerError ( "GetOrgByName" , err )
398
405
}
399
406
return
400
407
}
Original file line number Diff line number Diff line change 13
13
<form class="ui form" action="{{.Link}}" method="post">
14
14
{{.CsrfTokenHtml}}
15
15
<div class="required field {{if .Err_Name}}error{{end}}">
16
- <label for="org_name">{{.i18n.Tr "org.org_name_holder"}}<span class="text red hide" id="org-name-change-prompt"> {{.i18n.Tr "org.settings.change_orgname_prompt"}}</span></label>
17
16
<input id="org_name" name="name" value="{{.Org.Name}}" data-org-name="{{.Org.Name}}" autofocus required>
18
17
</div>
19
18
<div class="field {{if .Err_FullName}}error{{end}}">
You can’t perform that action at this time.
0 commit comments