Sha256: 44d529a5b5b4056558aecbd2a74092ab84393975efb91c13a92ff47652e56420

Contents?: true

Size: 836 Bytes

Versions: 6

Compression:

Stored size: 836 Bytes

Contents

class Card
  class Migration
    class Import
      class ImportData
        # handles card content for import
        module CardContent
          CARD_CONTENT_DIR = Card::Migration.data_path("cards").freeze

          def card_content data
            File.read(content_path(data))
          end

          def content_changed? data
            Time.parse(data[:merged]) < File.mtime(content_path(data))
          end

          private

          def write_card_content data, content
            FileUtils.mkpath CARD_CONTENT_DIR unless Dir.exist? CARD_CONTENT_DIR
            File.write content_path(data), content.to_s
          end

          def content_path data
            filename = data[:key] || data[:name].to_name.key
            File.join CARD_CONTENT_DIR, filename
          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
card-1.21.0 lib/card/migration/import/import_data/card_content.rb
card-1.20.4 lib/card/migration/import/import_data/card_content.rb
card-1.20.3 lib/card/migration/import/import_data/card_content.rb
card-1.20.2 lib/card/migration/import/import_data/card_content.rb
card-1.20.1 lib/card/migration/import/import_data/card_content.rb
card-1.20.0 lib/card/migration/import/import_data/card_content.rb