discourse/app/controllers/admin/permalinks_controller.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

42 lines
1001 B
Ruby
Raw Normal View History

# frozen_string_literal: true
2015-07-15 20:54:28 +08:00
class Admin::PermalinksController < Admin::AdminController
before_action :fetch_permalink, only: [:destroy]
2015-07-15 20:54:28 +08:00
def index
url = params[:filter]
permalinks = Permalink.filter_by(url)
2015-07-15 20:54:28 +08:00
render_serialized(permalinks, PermalinkSerializer)
end
def create
params.require(:url)
params.require(:permalink_type)
params.require(:permalink_type_value)
2020-05-25 17:48:54 +08:00
if params[:permalink_type] == "tag_name"
params[:permalink_type] = "tag_id"
params[:permalink_type_value] = Tag.find_by_name(params[:permalink_type_value])&.id
end
2015-07-15 20:54:28 +08:00
permalink =
Permalink.new(:url => params[:url], params[:permalink_type] => params[:permalink_type_value])
if permalink.save
render_serialized(permalink, PermalinkSerializer)
else
render_json_error(permalink)
end
end
def destroy
@permalink.destroy
render json: success_json
end
private
def fetch_permalink
@permalink = Permalink.find(params[:id])
end
end