Add confirmation when redirecting logged-out requests to permalink (#27792)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>th-downstream
parent
7a1f087659
commit
b19ae521b7
@ -0,0 +1,10 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
class Redirect::AccountsController < ApplicationController
|
||||||
|
private
|
||||||
|
|
||||||
|
def set_resource
|
||||||
|
@resource = Account.find(params[:id])
|
||||||
|
not_found if @resource.local?
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,24 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
class Redirect::BaseController < ApplicationController
|
||||||
|
vary_by 'Accept-Language'
|
||||||
|
|
||||||
|
before_action :set_resource
|
||||||
|
before_action :set_app_body_class
|
||||||
|
|
||||||
|
def show
|
||||||
|
@redirect_path = ActivityPub::TagManager.instance.url_for(@resource)
|
||||||
|
|
||||||
|
render 'redirects/show', layout: 'application'
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def set_app_body_class
|
||||||
|
@body_classes = 'app-body'
|
||||||
|
end
|
||||||
|
|
||||||
|
def set_resource
|
||||||
|
raise NotImplementedError
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,10 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
class Redirect::StatusesController < Redirect::BaseController
|
||||||
|
private
|
||||||
|
|
||||||
|
def set_resource
|
||||||
|
@resource = Status.find(params[:id])
|
||||||
|
not_found if @resource.local? || !@resource.distributable?
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,8 @@
|
|||||||
|
.redirect
|
||||||
|
.redirect__logo
|
||||||
|
= link_to render_logo, root_path
|
||||||
|
|
||||||
|
.redirect__message
|
||||||
|
%h1= t('redirects.title', instance: site_hostname)
|
||||||
|
%p= t('redirects.prompt')
|
||||||
|
%p= link_to @redirect_path, @redirect_path, rel: 'noreferrer noopener'
|
Loading…
Reference in new issue