require "isodoc" require_relative "metadata" require_relative "m3dhtmlrender" require "fileutils" module IsoDoc module M3d # A {Converter} implementation that generates CSAND output, and a document # schema encapsulation of the document for validation class HtmlConvert < IsoDoc::HtmlConvert def add_image(filenames) filenames.each do |filename| FileUtils.cp html_doc_path(filename), filename @files_to_delete << filename end end def initialize(options) @libdir = File.dirname(__FILE__) super add_image(%w(logo.jpg m3-logo.png)) end def default_fonts(options) { bodyfont: (options[:script] == "Hans" ? '"SimSun",serif' : '"Overpass",sans-serif'), headerfont: (options[:script] == "Hans" ? '"SimHei",sans-serif' : '"Overpass",sans-serif'), monospacefont: '"Space Mono",monospace' } end def default_file_locations(_options) { htmlstylesheet: html_doc_path("htmlstyle.scss"), htmlcoverpage: html_doc_path("html_m3d_titlepage.html"), htmlintropage: html_doc_path("html_m3d_intro.html"), standardstylesheet: nil, scripts: html_doc_path("scripts.html"), } end def metadata_init(lang, script, labels) @meta = Metadata.new(lang, script, labels) end def colophon(body, docxml) body.div **{ class: "colophon" } do |div| div << <<~"COLOPHON"
As with all M3AAWG documents that we publish, please check the M3AAWG website (www.m3aawg.org) for updates to this paper.
© {{ docyear }} copyright by the Messaging, Malware and Mobile Anti-Abuse Working Group (M3AAWG)
COLOPHON end end def html_head() <<~HEAD.freeze