Added fixes
This commit is contained in:
30
app.rb
30
app.rb
@@ -1390,6 +1390,36 @@ get "/prjsignview/:id/*" do
|
||||
end
|
||||
end
|
||||
|
||||
get "/sanitize" do
|
||||
#Подчистим гит проекты, которые есть в базе, но нет в файловой системе
|
||||
all_gits = db.get_gits
|
||||
deleted_items = 0
|
||||
unless all_gits.nil?
|
||||
repo = GitRepo.new(cfg.get_repo, db)
|
||||
repos = repo.getrepos
|
||||
list_for_delete = []
|
||||
all_gits.each do |item|
|
||||
find_item = false
|
||||
repos.each do |rep|
|
||||
if rep[:reponame] == item[:reponame]
|
||||
find_item = true
|
||||
break
|
||||
end
|
||||
end
|
||||
unless find_item
|
||||
list_for_delete << item[:id]
|
||||
end
|
||||
end
|
||||
deleted_items = deleted_items + list_for_delete.length
|
||||
list_for_delete.each do |item|
|
||||
db.delete_git_by_id(item)
|
||||
end
|
||||
end
|
||||
@deleted_items = deleted_items
|
||||
@page_name = "Очистка устаревших или потерянных записей базы данных"
|
||||
erb :sanitize
|
||||
end
|
||||
|
||||
not_found do
|
||||
status 404
|
||||
@page_name = "Кто-то потерялся"
|
||||
|
||||
Reference in New Issue
Block a user