From 3a13b309473c5995fa41220c1bfd00d52cbe13ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oliver=20G=C3=BCnther?= Date: Thu, 25 May 2023 15:18:06 +0200 Subject: [PATCH] Disable all robots routes when login_required=true --- app/controllers/homescreen_controller.rb | 6 +++- .../homescreen/robots-login-required.text.erb | 30 +++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 app/views/homescreen/robots-login-required.text.erb diff --git a/app/controllers/homescreen_controller.rb b/app/controllers/homescreen_controller.rb index 6aec58fe218f..97803cae4672 100644 --- a/app/controllers/homescreen_controller.rb +++ b/app/controllers/homescreen_controller.rb @@ -41,6 +41,10 @@ def index end def robots - @projects = Project.active.public_projects + if Setting.login_required? + render template: 'homescreen/robots-login-required', format: :text + else + @projects = Project.active.public_projects + end end end diff --git a/app/views/homescreen/robots-login-required.text.erb b/app/views/homescreen/robots-login-required.text.erb new file mode 100644 index 000000000000..5182d7ca287f --- /dev/null +++ b/app/views/homescreen/robots-login-required.text.erb @@ -0,0 +1,30 @@ +<%#-- copyright +OpenProject is an open source project management software. +Copyright (C) 2012-2023 the OpenProject GmbH + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License version 3. + +OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: +Copyright (C) 2006-2013 Jean-Philippe Lang +Copyright (C) 2010-2013 the ChiliProject Team + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +See COPYRIGHT and LICENSE files for more details. + +++#%> +User-agent: * +Disallow: /