diff --git a/Gemfile b/Gemfile index 5714b981..3677d738 100644 --- a/Gemfile +++ b/Gemfile @@ -79,6 +79,7 @@ gem 'webpacker' gem 'yaml_db', git: 'https://0xacab.org/sutty/yaml_db.git' gem 'kaminari' gem 'device_detector' +gem 'htmlbeautifier' gem 'dry-schema' gem 'rubanok' diff --git a/Gemfile.lock b/Gemfile.lock index 7f5284ef..2adf2f1b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -269,6 +269,7 @@ GEM hiredis (0.6.3-x86_64-linux-musl) hiredis-client (0.14.1-x86_64-linux-musl) redis-client (= 0.14.1) + htmlbeautifier (1.4.2) http_parser.rb (0.8.0-x86_64-linux-musl) httparty (0.21.0) mini_mime (>= 1.0.0) @@ -659,6 +660,7 @@ DEPENDENCIES hamlit-rails hiredis hiredis-client + htmlbeautifier httparty icalendar image_processing diff --git a/app/models/metadata_content.rb b/app/models/metadata_content.rb index 761518e8..444ee2fe 100644 --- a/app/models/metadata_content.rb +++ b/app/models/metadata_content.rb @@ -1,5 +1,7 @@ # frozen_string_literal: true +require 'htmlbeautifier' + # Se encarga del contenido del artículo y quizás otros campos que # requieran texto largo. class MetadataContent < MetadataTemplate @@ -86,7 +88,7 @@ class MetadataContent < MetadataTemplate end end - html.to_s.html_safe + HtmlBeautifier.beautify(html.to_s).html_safe end # Limpia estilos en base a una lista de permitidos diff --git a/db/migrate/20240227134845_create_fediblocks.rb b/db/migrate/20240227134845_create_fediblocks.rb index 03f65f7c..1a61ccba 100644 --- a/db/migrate/20240227134845_create_fediblocks.rb +++ b/db/migrate/20240227134845_create_fediblocks.rb @@ -12,7 +12,7 @@ class CreateFediblocks < ActiveRecord::Migration[6.1] t.string :url, null: false t.string :download_url, null: false t.string :format, null: false - t.jsonb :instances, default: [] + t.jsonb :hostnames, default: [] end YAML.safe_load(File.read('db/seeds/activity_pub/fediblocks.yml')).each do |fediblock| diff --git a/db/migrate/20240228171335_rename_fediblock_instances_to_hostnames.rb b/db/migrate/20240228171335_rename_fediblock_instances_to_hostnames.rb deleted file mode 100644 index bad343f2..00000000 --- a/db/migrate/20240228171335_rename_fediblock_instances_to_hostnames.rb +++ /dev/null @@ -1,9 +0,0 @@ -# frozen_string_literal: true - -# Cambia el nombre de la columna para que podamos obtener todas las -# instancias de un fediblock -class RenameFediblockInstancesToHostnames < ActiveRecord::Migration[6.1] - def change - rename_column :activity_pub_fediblocks, :instances, :hostnames - end -end diff --git a/db/seeds/activity_pub/fediblocks.yml b/db/seeds/activity_pub/fediblocks.yml index c977f9bf..35fe38cd 100644 --- a/db/seeds/activity_pub/fediblocks.yml +++ b/db/seeds/activity_pub/fediblocks.yml @@ -6,7 +6,7 @@ id: "9046789a-5de8-4b16-beed-796060f8f3cc" - title: "Oliphant Tier 0" url: "https://writer.oliphant.social/oliphant/the-oliphant-social-blocklist" - download_url: "https://codeberg.org/oliphant/blocklists/raw/branch/main/blocklists/mastodon/tier0.csv" + download_url: "https://codeberg.org/oliphant/blocklists/raw/branch/main/blocklists/mastodon/seirdy-tier0.csv" format: "mastodon" id: "fc1efcb8-7e68-4a76-ae9e-0c447752b12b" - title: "The Bad Space (90%)"