lib/isodoc/function/reqt.rb in isodoc-1.1.4 vs lib/isodoc/function/reqt.rb in isodoc-1.2.0

- old
+ new

@@ -1,16 +1,16 @@ module IsoDoc::Function module Blocks def recommendation_labels(node) - [node.at(ns("./label")), node.at(ns("./title")), - @xrefs.anchor(node['id'], :label, false)] + [node.at(ns("./label")), node.at(ns("./title")), node.at(ns("./name"))] end - def recommendation_name(node, out, type) + def recommendation_name(node, out, _type) label, title, lbl = recommendation_labels(node) out.p **{ class: "RecommendationTitle" } do |b| - b << (lbl.nil? ? l10n("#{type}:") : l10n("#{type} #{lbl}:")) + lbl and lbl.children.each { |n| parse(n, b) } + b << l10n(":") if label || title b.br label and label.children.each { |n| parse(n,b) } b << "#{clausedelim} " if label && title title and title.children.each { |n| parse(n,b) } @@ -19,15 +19,15 @@ end def recommendation_attributes1(node) out = [] oblig = node["obligation"] and - out << l10n("#{@labels['obligation']}: #{oblig}") + out << l10n("#{@i18n.obligation}: #{oblig}") subj = node&.at(ns("./subject"))&.text and - out << l10n("#{@labels['subject']}: #{subj}") + out << l10n("#{@i18n.subject}: #{subj}") node.xpath(ns("./inherit")).each do |i| - out << recommendation_attr_parse(i, @labels["inherits"]) + out << recommendation_attr_parse(i, @i18n.inherits) end node.xpath(ns("./classification")).each do |c| line = recommendation_attr_keyvalue(c, "tag", "value") and out << line end out @@ -55,39 +55,40 @@ end end end def reqt_metadata_node(n) - %w(label title subject classification tag value inherit).include? n.name + %w(label title subject classification tag value + inherit name).include? n.name end def reqt_attrs(node, klass) attr_code(class: klass, id: node["id"], style: keep_style(node)) end def recommendation_parse(node, out) out.div **reqt_attrs(node, "recommend") do |t| - recommendation_name(node, t, @recommendation_lbl) + recommendation_name(node, t, @i18n.recommendation) recommendation_attributes(node, out) node.children.each do |n| parse(n, t) unless reqt_metadata_node(n) end end end def requirement_parse(node, out) out.div **reqt_attrs(node, "require") do |t| - recommendation_name(node, t, @requirement_lbl) + recommendation_name(node, t, @i18n.requirement) recommendation_attributes(node, out) node.children.each do |n| parse(n, t) unless reqt_metadata_node(n) end end end def permission_parse(node, out) out.div **reqt_attrs(node, "permission") do |t| - recommendation_name(node, t, @permission_lbl) + recommendation_name(node, t, @i18n.permission) recommendation_attributes(node, out) node.children.each do |n| parse(n, t) unless reqt_metadata_node(n) end end