Skip to content
This repository was archived by the owner on Jul 22, 2025. It is now read-only.

Commit e9b1d73

Browse files
committed
WIP import / export
1 parent baaa3d1 commit e9b1d73

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

app/controllers/discourse_ai/admin/ai_tools_controller.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ module Admin
55
class AiToolsController < ::Admin::AdminController
66
requires_plugin ::DiscourseAi::PLUGIN_NAME
77

8-
before_action :find_ai_tool, only: %i[test edit update destroy]
8+
before_action :find_ai_tool, only: %i[test edit update destroy export]
99

1010
def index
1111
ai_tools = AiTool.all
@@ -32,6 +32,13 @@ def create
3232
end
3333
end
3434

35+
def export
36+
response.headers[
37+
"Content-Disposition"
38+
] = "attachment; filename=\"#{@ai_tool.tool_name}.json\""
39+
render_serialized(@ai_tool, AiCustomToolSerializer)
40+
end
41+
3542
def update
3643
initial_attributes = @ai_tool.attributes.dup
3744

config/routes.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,12 @@
8585
)
8686

8787
post "/ai-tools/:id/test", to: "discourse_ai/admin/ai_tools#test"
88+
get "/ai-tools/:id/export", to: "discourse_ai/admin/ai_tools#export"
89+
post "/ai-tools/import", to: "discourse_ai/admin/ai_tools#import"
8890

8991
post "/ai-personas/:id/create-user", to: "discourse_ai/admin/ai_personas#create_user"
92+
get "/ai-personas/:id/export", to: "discourse_ai/admin/ai_personas#export"
93+
post "/ai-personas/import", to: "discourse_ai/admin/ai_personas#import"
9094

9195
put "/ai-personas/:id/files/remove", to: "discourse_ai/admin/ai_personas#remove_file"
9296
get "/ai-personas/:id/files/status", to: "discourse_ai/admin/ai_personas#indexing_status_check"

0 commit comments

Comments
 (0)