forgeplus/app/controllers/admins/projects_controller.rb

25 lines
865 B
Ruby
Raw Normal View History

2020-03-09 00:40:16 +08:00
class Admins::ProjectsController < Admins::BaseController
def index
2020-05-14 18:08:27 +08:00
sort_by = params[:sort_by] ||= 'created_on'
sort_direction = params[:sort_direction] ||= 'desc'
2020-03-09 00:40:16 +08:00
search = params[:search].to_s.strip
2020-05-14 18:08:27 +08:00
projects = Project.where("name like ?", "%#{search}%").order("#{sort_by} #{sort_direction}")
2020-03-09 00:40:16 +08:00
@projects = paginate projects.includes(:owner, :members, :issues, :versions, :attachments, :project_score)
end
def destroy
project = Project.find_by!(id: params[:id])
ActiveRecord::Base.transaction do
2020-05-25 14:22:57 +08:00
Gitea::Repository::DeleteService.new(project.owner, project.identifier).call
2020-03-09 00:40:16 +08:00
project.destroy!
2020-05-25 14:22:57 +08:00
# render_delete_success
redirect_to admins_projects_path
flash[:success] = "删除成功"
2020-05-25 14:25:46 +08:00
end
2020-05-25 14:22:57 +08:00
rescue Exception => e
redirect_to admins_projects_path
flash[:danger] = "删除失败"
2020-03-09 00:40:16 +08:00
end
end