Sha256: 1393bc6685468295891e22d0e86af518e61509f73f5cce536f8dec984bea7d71

Contents?: true

Size: 1.29 KB

Versions: 1

Compression:

Stored size: 1.29 KB

Contents

# Frozen-string-literal: true
# Encoding: utf-8

module Jekyll
  class LanguageCollectionReader < CollectionReader
    def read
      site.collections.each do |_, collection|
        collection.read unless SPECIAL_COLLECTIONS.include?(collection.label)
        collection.docs = collection.docs.flat_map do |document|
          ldocuments = []
          ldocument = LanguageDocument.new(document.path, { site: @site, collection: collection })
          ldocument.read

          if ldocument.languages
            for language in ldocument.languages do
              if ldocument.language == language
                ldocuments << ldocument
              elsif ldocument.language.nil?
                ldocument.data['language'] = language
                ldocuments << ldocument
              else
                ldocument2 = LanguageDocument.new(document.path, { site: @site, collection: collection })
                ldocument2.read
                ldocument2.data['language'] = language
                ldocuments << ldocument2
              end
            end
          elsif ldocument.language
            ldocuments << ldocument
          else
            # no languages -> do not add extended Page
            ldocuments << document
          end
          ldocuments
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
jekyll-language-plugin-1.3.0 lib/jekyll/readers/language_collection_reader.rb