Sha256: 0877339898e9a2cb326239bc95bfa998724bc640fadb51eac055905f9ca641a1

Contents?: true

Size: 1.06 KB

Versions: 9

Compression:

Stored size: 1.06 KB

Contents

module RailsConnector
  module FopOnRails
    module Document
      module Images
        def self.absolutize_src_attrs(xml, url)
          @url = URI.parse(url)
          xml.elements.each('//img') do |img|
            url = URI.parse(img.attributes['src'])
            unless (url.host == @url.host)
              url = @url.merge(url)
            end
            img.attributes['src'] = url.to_s
          end
          xml
        end

        def self.dump_images(xml)
          xml.elements.each('//img') do |img|
            unless URI.parse(src = img.attributes['src']).absolute?
              if relative_url_root = ActionController::Base.config.relative_url_root
                src.sub!(/\A#{relative_url_root}/i, '')
              end
              params = Rails.application.routes.recognize_path(src)
              if params[:controller] == 'rails_connector/cms_dispatch' and params[:id]
                img.attributes['src'] = Obj.find(params[:id]).body_data_path
              end
            end
          end
          xml
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
infopark_rails_connector-6.8.0.515.34928522 lib/rails_connector/fop_on_rails/document/images.rb
infopark_rails_connector-6.8.0.498.46559598 lib/rails_connector/fop_on_rails/document/images.rb
infopark_rails_connector-6.8.0.480.261594408 lib/rails_connector/fop_on_rails/document/images.rb
infopark_rails_connector-6.8.0.444.171626367 lib/rails_connector/fop_on_rails/document/images.rb
infopark_rails_connector-6.8.0.406.131718077 lib/rails_connector/fop_on_rails/document/images.rb
infopark_rails_connector-6.8.0.356.19698103 lib/rails_connector/fop_on_rails/document/images.rb
infopark_rails_connector-6.8.0.348.160665197 lib/rails_connector/fop_on_rails/document/images.rb
infopark_rails_connector-6.8.0.328.4a753fc lib/rails_connector/fop_on_rails/document/images.rb
infopark_rails_connector-6.8.0.322.c003f11 lib/rails_connector/fop_on_rails/document/images.rb