88	"errors" 
99	"net/http" 
1010	"net/url" 
11- 	"strings" 
1211
1312	"code.gitea.io/gitea/models/db" 
1413	org_model "code.gitea.io/gitea/models/organization" 
@@ -432,7 +431,6 @@ func PackageSettings(ctx *context.Context) {
432431	ctx .Data ["Title" ] =  pd .Package .Name 
433432	ctx .Data ["IsPackagesPage" ] =  true 
434433	ctx .Data ["PackageDescriptor" ] =  pd 
435- 	ctx .Data ["OwnerID" ] =  pd .Owner .ID 
436434	ctx .Data ["CanWritePackages" ] =  ctx .Package .AccessMode  >=  perm .AccessModeWrite  ||  ctx .IsUserSiteAdmin ()
437435
438436	if  pd .Package .RepoID  >  0  {
@@ -441,7 +439,7 @@ func PackageSettings(ctx *context.Context) {
441439			ctx .ServerError ("GetRepositoryByID" , err )
442440			return 
443441		}
444- 		ctx .Data ["LinkedRepoFullName " ] =  repo .FullName () 
442+ 		ctx .Data ["LinkedRepoName " ] =  repo .Name 
445443	}
446444
447445	ctx .HTML (http .StatusOK , tplPackagesSettings )
@@ -454,37 +452,29 @@ func PackageSettingsPost(ctx *context.Context) {
454452	form  :=  web .GetForm (ctx ).(* forms.PackageSettingForm )
455453	switch  form .Action  {
456454	case  "link" :
457- 		if  form .RepoFullName  ==  ""  { // remove the link 
455+ 		if  form .RepoName  ==  ""  { // remove the link 
458456			if  err  :=  packages_model .SetRepositoryLink (ctx , pd .Package .ID , 0 ); err  !=  nil  {
459- 				ctx .Flash .Error (ctx .Tr ("packages.settings.unlink.error" ))
460- 			} else  {
461- 				ctx .Flash .Success (ctx .Tr ("packages.settings.unlink.success" ))
457+ 				ctx .JSONError (ctx .Tr ("packages.settings.unlink.error" ))
458+ 				return 
462459			}
460+ 
461+ 			ctx .Flash .Success (ctx .Tr ("packages.settings.unlink.success" ))
463462			ctx .JSONRedirect ("" )
464463			return 
465464		}
466465
467- 		owner , name , _  :=  strings .Cut (form .RepoFullName , "/" )
468- 		repo , err  :=  repo_model .GetRepositoryByOwnerAndName (ctx , owner , name )
466+ 		repo , err  :=  repo_model .GetRepositoryByName (ctx , pd .Owner .ID , form .RepoName )
469467		if  err  !=  nil  {
470468			if  repo_model .IsErrRepoNotExist (err ) {
471- 				ctx .Flash .Error (ctx .Tr ("packages.settings.link.repo_not_found" , form .RepoFullName ))
472- 				ctx .JSONRedirect ("" )
469+ 				ctx .JSONError (ctx .Tr ("packages.settings.link.repo_not_found" , form .RepoName ))
473470			} else  {
474471				ctx .ServerError ("GetRepositoryByOwnerAndName" , err )
475472			}
476473			return 
477474		}
478475
479- 		if  repo .OwnerID  !=  pd .Owner .ID  {
480- 			ctx .Flash .Error (ctx .Tr ("packages.settings.link.repo_not_found" , form .RepoFullName ))
481- 			ctx .JSONRedirect ("" )
482- 			return 
483- 		}
484- 
485476		if  err  :=  packages_model .SetRepositoryLink (ctx , pd .Package .ID , repo .ID ); err  !=  nil  {
486- 			ctx .Flash .Error (ctx .Tr ("packages.settings.link.error" ))
487- 			ctx .JSONRedirect ("" )
477+ 			ctx .JSONError (ctx .Tr ("packages.settings.link.error" ))
488478			return 
489479		}
490480
0 commit comments