Sha256: fb0ab3bd7b4e913d08656e3b684377f7865ae149fa1b22a33cceb3178e90da26

Contents?: true

Size: 842 Bytes

Versions: 9

Compression:

Stored size: 842 Bytes

Contents

# frozen_string_literal: true

namespace :decidim do
  namespace :upgrade do
    desc "Fixes wrongly mapped short links components"
    task fix_short_urls: :environment do
      logger = Logger.new($stdout)
      logger.info("Fixing wrongly mapped short links...")

      Decidim::ShortLink.where(target_type: "Decidim::Component").find_each do |short_url|
        real_component = Decidim::Component.find_by(id: short_url.target_id)

        next if real_component.nil?
        next if short_url.mounted_engine_name == real_component.mounted_engine

        logger.info("Fixing #{short_url.identifier}: #{short_url.mounted_engine_name} to #{real_component.mounted_engine}")
        short_url.update(mounted_engine_name: real_component.mounted_engine)
      end
      logger.info("Done fixing wrongly mapped short links.")
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
decidim-core-0.30.0.rc2 lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
decidim-core-0.30.0.rc1 lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
decidim-core-0.29.2 lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
decidim-core-0.29.1 lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
decidim-core-0.29.0 lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
decidim-core-0.29.0.rc4 lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
decidim-core-0.29.0.rc3 lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
decidim-core-0.29.0.rc2 lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
decidim-core-0.29.0.rc1 lib/tasks/upgrade/decidim_fix_short_url_resolver.rake