2014-08-29 16:50:43 +04:00
// 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 admin
import (
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/modules/base"
2016-03-11 19:56:52 +03:00
"github.com/gogits/gogs/modules/context"
2015-12-06 01:39:29 +03:00
"github.com/gogits/gogs/modules/log"
2015-09-26 01:38:43 +03:00
"github.com/gogits/gogs/modules/setting"
2016-03-11 23:33:12 +03:00
"github.com/gogits/gogs/routers"
2014-08-29 16:50:43 +04:00
)
const (
REPOS base . TplName = "admin/repo/list"
)
2016-03-11 19:56:52 +03:00
func Repos ( ctx * context . Context ) {
2014-08-29 16:50:43 +04:00
ctx . Data [ "Title" ] = ctx . Tr ( "admin.repositories" )
ctx . Data [ "PageIsAdmin" ] = true
ctx . Data [ "PageIsAdminRepositories" ] = true
2016-03-15 21:23:12 +03:00
routers . RenderRepoSearch ( ctx , & routers . RepoSearchOptions {
Counter : models . CountRepositories ,
Ranger : models . Repositories ,
Private : true ,
2016-07-23 19:23:54 +03:00
PageSize : setting . UI . Admin . RepoPagingNum ,
2016-03-15 21:23:12 +03:00
OrderBy : "id ASC" ,
TplName : REPOS ,
} )
2014-08-29 16:50:43 +04:00
}
2015-12-06 01:39:29 +03:00
2016-03-11 19:56:52 +03:00
func DeleteRepo ( ctx * context . Context ) {
2015-12-06 01:39:29 +03:00
repo , err := models . GetRepositoryByID ( ctx . QueryInt64 ( "id" ) )
if err != nil {
ctx . Handle ( 500 , "GetRepositoryByID" , err )
return
}
2016-07-23 20:08:22 +03:00
if err := models . DeleteRepository ( repo . MustOwner ( ) . ID , repo . ID ) ; err != nil {
2015-12-06 01:39:29 +03:00
ctx . Handle ( 500 , "DeleteRepository" , err )
return
}
log . Trace ( "Repository deleted: %s/%s" , repo . MustOwner ( ) . Name , repo . Name )
ctx . Flash . Success ( ctx . Tr ( "repo.settings.deletion_success" ) )
ctx . JSON ( 200 , map [ string ] interface { } {
2015-12-06 01:49:46 +03:00
"redirect" : setting . AppSubUrl + "/admin/repos?page=" + ctx . Query ( "page" ) ,
2015-12-06 01:39:29 +03:00
} )
}