lib/isodoc/ieee/word_authority.rb in metanorma-ieee-0.0.2 vs lib/isodoc/ieee/word_authority.rb in metanorma-ieee-0.0.3
- old
+ new
@@ -51,13 +51,13 @@
end
def officeholder_style(para)
n = para.next_element
p = para.previous_element
- n && n.name == "p" && n["type"] == "officeholder" and
+ n && n.name == "p" && n["type"] != "officeholder" and
klass = "IEEEStdsNamesCtrCxSpLast"
- p && p.name == "p" && p["type"] == "officeholder" and
+ p && p.name == "p" && p["type"] != "officeholder" and
klass = "IEEEStdsNamesCtrCxSpFirst"
para["class"] = klass || "IEEEStdsNamesCtrCxSpMiddle"
end
SECTIONBREAK = <<~BREAK.freeze
@@ -66,11 +66,12 @@
EN-US;mso-fareast-language:JA;mso-bidi-language:AR-SA'><br clear="all"
style='page-break-before:auto;mso-break-type:section-break'></span>
BREAK
def officemember_style(docxml)
- docxml.xpath("//p[@type = 'officemember']").each do |p|
+ docxml.xpath("//p[@type = 'officemember' or @type = 'officeorgmember']")
+ .each do |p|
p["class"] = "IEEEStdsNamesList"
end
docxml.xpath("//p[@type = 'emeritus_sign']").each do |p|
p["class"] = "IEEEStdsParaMemEmeritus"
end
@@ -83,9 +84,10 @@
three_column_officemembers_render(div, ret)
end
def three_column_officemembers_split(div)
prev = false
+ div.xpath(".//div").each { |d| d.replace(d.children) }
div.elements.each_with_object([[]]) do |e, m|
member = e.name == "p" && e["type"] == "officemember"
(prev == member and m[-1] << e.to_xml) or m << [e.to_xml]
prev = member
end.map(&:join)