class Services::RsAuthsController < Services::BaseController before_action :authenticate_user! before_action :require_feature_enabled before_action :require_service_available # before_action :require_service_enabled def destroy if auth = current_user.remote_storage_authorizations.find(params[:id]) auth.destroy! else http_status :not_found end respond_to do |format| format.html do redirect_to services_storage_url, flash: { success: 'App authorization revoked' } end format.json { head :no_content } end end def launch_app auth = current_user.remote_storage_authorizations.find(params[:id]) launch_url = "#{auth.url}#remotestorage=#{current_user.address}&access_token=#{auth.token}" redirect_to launch_url, allow_other_host: true end private def require_feature_enabled unless Flipper.enabled?(:remotestorage, current_user) http_status :forbidden end end def require_service_available http_status :not_found unless Setting.remotestorage_enabled? end end