diff --git a/app/components/admin/settings/features_tab_component.rb b/app/components/admin/settings/features_tab_component.rb
index 64e0ffce2..2feae25cd 100644
--- a/app/components/admin/settings/features_tab_component.rb
+++ b/app/components/admin/settings/features_tab_component.rb
@@ -6,7 +6,6 @@ class Admin::Settings::FeaturesTabComponent < ApplicationComponent
feature.google_login
feature.twitter_login
feature.wordpress_login
- feature.public_stats
feature.signature_sheets
feature.user.recommendations
feature.user.recommendations_on_debates
diff --git a/app/controllers/stats_controller.rb b/app/controllers/stats_controller.rb
deleted file mode 100644
index 15cfd7bb8..000000000
--- a/app/controllers/stats_controller.rb
+++ /dev/null
@@ -1,29 +0,0 @@
-class StatsController < ApplicationController
- include FeatureFlags
-
- feature_flag :public_stats
-
- skip_authorization_check
-
- def index
- @visits = daily_cache("visits") { Visit.count }
- @debates = daily_cache("debates") { Debate.with_hidden.count }
- @proposals = daily_cache("proposals") { Proposal.with_hidden.count }
- @comments = daily_cache("comments") { Comment.not_valuations.with_hidden.count }
-
- @debate_votes = daily_cache("debate_votes") { Vote.count_for("Debate") }
- @proposal_votes = daily_cache("proposal_votes") { Vote.count_for("Proposal") }
- @comment_votes = daily_cache("comment_votes") { Vote.count_for("Comment") }
- @investment_votes = daily_cache("budget_investment_votes") { Vote.count_for("Budget::Investment") }
- @votes = daily_cache("votes") { Vote.count }
-
- @verified_users = daily_cache("verified_users") { User.with_hidden.level_two_or_three_verified.count }
- @unverified_users = daily_cache("unverified_users") { User.with_hidden.unverified.count }
- end
-
- private
-
- def daily_cache(key, &)
- Rails.cache.fetch("public_stats/#{Time.current.strftime("%Y-%m-%d")}/#{key}", &)
- end
-end
diff --git a/app/models/setting.rb b/app/models/setting.rb
index 97fb97890..5427afccf 100644
--- a/app/models/setting.rb
+++ b/app/models/setting.rb
@@ -70,7 +70,6 @@ class Setting < ApplicationRecord
"feature.google_login": true,
"feature.twitter_login": true,
"feature.wordpress_login": false,
- "feature.public_stats": true,
"feature.signature_sheets": true,
"feature.user.recommendations": true,
"feature.user.recommendations_on_debates": true,
diff --git a/app/views/stats/index.html.erb b/app/views/stats/index.html.erb
deleted file mode 100644
index e34341ba8..000000000
--- a/app/views/stats/index.html.erb
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
-
-
<%= t "admin.stats.show.stats_title" %>
-
-
-
-
- <%= t "stats.index.visits" %>
- <%= number_with_delimiter(@visits) %>
-
-
-
- <%= t "stats.index.debates" %>
- <%= number_with_delimiter(@debates) %>
-
-
- <%= t "stats.index.proposals" %>
- <%= number_with_delimiter(@proposals) %>
-
-
- <%= t "stats.index.comments" %>
- <%= number_with_delimiter(@comments) %>
-
-
-
-
-
- <%= t "stats.index.proposal_votes" %>
- <%= number_with_delimiter(@proposal_votes) %>
-
-
-
- <%= t "stats.index.debate_votes" %>
- <%= number_with_delimiter(@debate_votes) %>
-
-
-
- <%= t "stats.index.comment_votes" %>
- <%= number_with_delimiter(@comment_votes) %>
-
-
-
- <%= t "stats.index.votes" %>
- <%= number_with_delimiter(@votes) %>
-
-
-
-
-
- <%= t "stats.index.verified_users" %>
- <%= number_with_delimiter(@verified_users) %>
-
-
-
- <%= t "stats.index.unverified_users" %>
- <%= number_with_delimiter(@unverified_users) %>
-
-
-
-
-
-
diff --git a/app/views/stats/index.json.erb b/app/views/stats/index.json.erb
deleted file mode 100644
index c2c27702f..000000000
--- a/app/views/stats/index.json.erb
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "<%= t("stats.index.visits") %>" : "<%= number_with_delimiter(@visits) %>",
- "<%= t("stats.index.debates") %>" : "<%= number_with_delimiter(@debates) %>",
- "<%= t("stats.index.proposals") %>" : "<%= number_with_delimiter(@proposals) %>",
- "<%= t("stats.index.comments") %>" : "<%= number_with_delimiter(@comments) %>",
- "<%= t("stats.index.proposal_votes") %>" : "<%= number_with_delimiter(@proposal_votes) %>",
- "<%= t("stats.index.debate_votes") %>" : "<%= number_with_delimiter(@debate_votes) %>",
- "<%= t("stats.index.comment_votes") %>" : "<%= number_with_delimiter(@comment_votes) %>",
- "<%= t("stats.index.votes") %>" : "<%= number_with_delimiter(@votes) %>",
- "<%= t("stats.index.verified_users") %>" : "<%= number_with_delimiter(@verified_users) %>",
- "<%= t("stats.index.unverified_users") %>" : "<%= number_with_delimiter(@unverified_users) %>"
-}
diff --git a/config/locales/en/general.yml b/config/locales/en/general.yml
index f8c76bb55..755d67391 100644
--- a/config/locales/en/general.yml
+++ b/config/locales/en/general.yml
@@ -761,18 +761,6 @@ en:
youtube: "%{org} YouTube"
telegram: "%{org} Telegram"
instagram: "%{org} Instagram"
- stats:
- index:
- visits: Visits
- debates: Debates
- proposals: Proposals
- comments: Comments
- proposal_votes: Votes on proposals
- debate_votes: Votes on debates
- comment_votes: Votes on comments
- votes: Total votes
- verified_users: Verified users
- unverified_users: Unverified users
unauthorized:
default: You do not have permission to access this page.
manage:
diff --git a/config/locales/en/settings.yml b/config/locales/en/settings.yml
index de6059657..d1efc19a6 100644
--- a/config/locales/en/settings.yml
+++ b/config/locales/en/settings.yml
@@ -116,8 +116,6 @@ en:
allow_attached_documents_description: "Allows users to upload documents when creating proposals and investment projects from Participatory Budgets"
guides: "Guides to create proposals or investment projects"
guides_description: "Displays a guide to differences between proposals and investment projects if there is an active participatory budget"
- public_stats: "Public stats"
- public_stats_description: "Display public stats in the Administration panel"
help_page: "Help page"
help_page_description: 'Displays a Help menu that contains a page with an info section about each enabled feature. Also custom pages and menus can be created in the "Custom pages" and "Custom content blocks" sections'
remote_translations: "Remote translation"
diff --git a/config/locales/es/general.yml b/config/locales/es/general.yml
index 507ee7701..d8b03580f 100644
--- a/config/locales/es/general.yml
+++ b/config/locales/es/general.yml
@@ -761,18 +761,6 @@ es:
youtube: "YouTube de %{org}"
telegram: "Telegram de %{org}"
instagram: "Instagram de %{org}"
- stats:
- index:
- visits: Visitas
- debates: Debates
- proposals: Propuestas ciudadanas
- comments: Comentarios
- proposal_votes: Votos en propuestas
- debate_votes: Votos en debates
- comment_votes: Votos en comentarios
- votes: Votos
- verified_users: Usuarios verificados
- unverified_users: Usuarios sin verificar
unauthorized:
default: No tienes permiso para acceder a esta página.
manage:
diff --git a/config/locales/es/settings.yml b/config/locales/es/settings.yml
index 08d0b3ae8..13261a050 100644
--- a/config/locales/es/settings.yml
+++ b/config/locales/es/settings.yml
@@ -116,8 +116,6 @@ es:
allow_attached_documents_description: "Permite que los usuarios suban documentos al crear propuestas y proyectos de gasto de los Presupuestos participativos"
guides: "Guías para crear propuestas o proyectos de inversión"
guides_description: "Muestra una guía de diferencias entre las propuestas y los proyectos de gasto si hay un presupuesto participativo activo"
- public_stats: "Estadísticas públicas"
- public_stats_description: "Muestra las estadísticas públicas en el panel de Administración"
help_page: "Página de ayuda"
help_page_description: 'Muestra un menú Ayuda que contiene una página con una sección de información sobre cada funcionalidad habilitada. También se pueden crear páginas y menús personalizados en las secciones "Personalizar páginas" y "Personalizar bloques"'
remote_translations: "Traducciones remotas"
diff --git a/config/routes.rb b/config/routes.rb
index 29a4083c6..3d64fe247 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -32,7 +32,6 @@ Rails.application.routes.draw do
get "/consul.json", to: "installation#details"
get "robots.txt", to: "robots#index"
- resources :stats, only: [:index]
resources :images, only: [:destroy]
resources :documents, only: [:destroy]
resources :follows, only: [:create, :destroy]
diff --git a/spec/system/notifications_spec.rb b/spec/system/notifications_spec.rb
index e0139659e..c79cf239e 100644
--- a/spec/system/notifications_spec.rb
+++ b/spec/system/notifications_spec.rb
@@ -164,14 +164,15 @@ describe "Notifications" do
end
scenario "With internal link" do
- admin_notification.update!(link: "/stats")
+ admin_notification.update!(link: "/debates")
visit notifications_path
expect(page).to have_content("Notification title")
expect(page).to have_content("Notification body")
first("#notification_#{notification.id} a").click
- expect(page).to have_current_path("/stats")
+
+ expect(page).to have_current_path "/debates"
end
scenario "Without a link" do
diff --git a/spec/system/stats_spec.rb b/spec/system/stats_spec.rb
deleted file mode 100644
index 595f737d2..000000000
--- a/spec/system/stats_spec.rb
+++ /dev/null
@@ -1,43 +0,0 @@
-require "rails_helper"
-
-describe "Stats" do
- context "Summary" do
- scenario "General" do
- create(:debate)
- 2.times { create(:proposal) }
- 3.times { create(:comment, commentable: Debate.first) }
- 4.times { create(:visit) }
-
- visit stats_path
-
- expect(page).to have_content "DEBATES\n1"
- expect(page).to have_content "PROPOSALS\n2"
- expect(page).to have_content "COMMENTS\n3"
- expect(page).to have_content "VISITS\n4"
- end
-
- scenario "Votes" do
- create(:debate, voters: Array.new(1) { create(:user) })
- create(:proposal, voters: Array.new(2) { create(:user) })
- create(:comment, voters: Array.new(3) { create(:user) })
-
- visit stats_path
-
- expect(page).to have_content "VOTES ON DEBATES\n1"
- expect(page).to have_content "VOTES ON PROPOSALS\n2"
- expect(page).to have_content "VOTES ON COMMENTS\n3"
- expect(page).to have_content "TOTAL VOTES\n6"
- end
-
- scenario "Users" do
- 1.times { create(:user, :level_three) }
- 2.times { create(:user, :level_two) }
- 2.times { create(:user) }
-
- visit stats_path
-
- expect(page).to have_content "VERIFIED USERS\n3"
- expect(page).to have_content "UNVERIFIED USERS\n2"
- end
- end
-end