# frozen_string_literal: true require 'fileutils' require 'kramdown' require 'pandoc-ruby' # Model handles Video projects class Video < Sequel::Model many_to_one :channel def ensure_directory_structure sub_dirs = %w[Audio B-Roll Clips Images Export] sub_dirs.each do |d| sub_path = File.join( @values[:directory_path], d ) FileUtils.mkdir_p(sub_path) end end def parse_script Kramdown::Document.new(@values[:script]).to_html end def import_script scripts = Dir.glob("#{@values[:directory_path]}/*Script.docx") script_content = PandocRuby.convert([scripts[0].dump()], from: :docx, to: :markdown) @values[:script] = script_content # save changes to the model save_changes() end end