2023-04-21 21:25:52 +08:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module Navigator
|
|
|
|
class ProjectFoldersController < BaseController
|
|
|
|
before_action :load_project_folder
|
|
|
|
|
|
|
|
def show
|
|
|
|
folder = project_level_branch(@project_folder, params[:archived] == 'true')
|
|
|
|
render json: { items: folder }
|
|
|
|
end
|
|
|
|
|
|
|
|
def tree
|
2023-04-26 16:24:50 +08:00
|
|
|
project_and_folders = project_level_branch(@project_folder, params[:archived] == 'true')
|
|
|
|
if @project_folder.parent_folder
|
|
|
|
tree = build_folder_tree(@project_folder, project_and_folders, params[:archived] == 'true')
|
|
|
|
end
|
2023-04-21 21:25:52 +08:00
|
|
|
render json: { items: tree }
|
|
|
|
end
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def load_project_folder
|
|
|
|
@project_folder = current_team.project_folders.find_by(id: params[:id])
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|