2017-09-23 04:34:07 +02:00
|
|
|
# name: discourse-custom-wizard
|
|
|
|
# about: Allows the admins to create custom user input forms
|
|
|
|
# version: 0.1
|
|
|
|
# authors: Angus McLeod
|
|
|
|
|
|
|
|
register_asset 'stylesheets/custom-wizard.scss'
|
|
|
|
|
2017-09-25 16:47:40 +02:00
|
|
|
config = Rails.application.config
|
|
|
|
config.assets.paths << Rails.root.join("plugins", "discourse-custom-wizard", "assets", "javascripts")
|
|
|
|
|
2017-09-23 04:34:07 +02:00
|
|
|
after_initialize do
|
|
|
|
require_dependency "application_controller"
|
|
|
|
module ::CustomWizard
|
|
|
|
class Engine < ::Rails::Engine
|
|
|
|
engine_name "custom_wizard"
|
|
|
|
isolate_namespace CustomWizard
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2017-09-25 16:47:40 +02:00
|
|
|
load File.expand_path('../lib/builder.rb', __FILE__)
|
|
|
|
load File.expand_path('../lib/wizard.rb', __FILE__)
|
|
|
|
load File.expand_path('../app/controllers/wizard.rb', __FILE__)
|
|
|
|
load File.expand_path('../app/controllers/steps.rb', __FILE__)
|
|
|
|
load File.expand_path('../app/controllers/admin.rb', __FILE__)
|
|
|
|
|
2017-09-23 04:34:07 +02:00
|
|
|
CustomWizard::Engine.routes.draw do
|
2017-09-25 16:47:40 +02:00
|
|
|
get ':name' => 'wizard#index'
|
|
|
|
get ':name/steps' => 'steps#index'
|
|
|
|
get ':name/steps/:id' => 'wizard#index'
|
|
|
|
put ':name/steps/:id' => 'steps#update'
|
2017-09-23 04:34:07 +02:00
|
|
|
end
|
|
|
|
|
|
|
|
require_dependency 'admin_constraint'
|
|
|
|
Discourse::Application.routes.append do
|
2017-09-25 16:47:40 +02:00
|
|
|
namespace :wizard do
|
|
|
|
mount ::CustomWizard::Engine, at: 'custom'
|
|
|
|
end
|
2017-09-23 04:34:07 +02:00
|
|
|
|
2017-09-25 16:47:40 +02:00
|
|
|
scope module: 'custom_wizard', constraints: AdminConstraint.new do
|
|
|
|
get 'admin/wizards/custom' => 'admin#index'
|
|
|
|
get 'admin/wizards/custom/new' => 'admin#index'
|
|
|
|
get 'admin/wizards/custom/all' => 'admin#all'
|
|
|
|
get 'admin/wizards/custom/:id' => 'admin#find'
|
|
|
|
put 'admin/wizards/custom/save' => 'admin#save'
|
|
|
|
delete 'admin/wizards/custom/remove' => 'admin#remove'
|
2017-09-23 04:34:07 +02:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|