output: update titleblock with template
This commit is contained in:
parent
641b44abf7
commit
72ae647d03
8
src/wireviz/templates/din-6771.html
generated
8
src/wireviz/templates/din-6771.html
generated
@ -79,7 +79,7 @@
|
||||
right: -0mm;
|
||||
}
|
||||
|
||||
#titleblock table {
|
||||
#titleblock {
|
||||
width: 180mm;
|
||||
height: 38.25mm;
|
||||
}
|
||||
@ -149,7 +149,7 @@
|
||||
}
|
||||
|
||||
.company {
|
||||
font-size: 4mm;
|
||||
font-size: 3mm;
|
||||
text-align: center;
|
||||
white-space: normal;
|
||||
}
|
||||
@ -203,9 +203,7 @@
|
||||
{{ bom_reversed }}
|
||||
</div>
|
||||
|
||||
<div id="titleblock">
|
||||
{{ titleblock }}
|
||||
</div>
|
||||
{{ titleblock }}
|
||||
</div> <!-- /frame -->
|
||||
</div> <!-- /page -->
|
||||
</body>
|
||||
|
||||
111
src/wireviz/templates/titleblock.html
generated
111
src/wireviz/templates/titleblock.html
generated
@ -1,78 +1,67 @@
|
||||
<table>
|
||||
<div id="titleblock">
|
||||
<!-- REVISION TABLE --!>
|
||||
<table class=revisions style="float:left" >
|
||||
{% for revision in revisions %}
|
||||
<tr>
|
||||
{% for key in ['rev', 'changelog', 'date', 'name'] %}
|
||||
<td class={{ key }}> {{ revision.get(key, '') }} </td>
|
||||
{% endfor %}
|
||||
</tr>
|
||||
{% endfor %}
|
||||
<tr>
|
||||
<td class={{ rev }}><b>Rev</td>
|
||||
<td class={{ changelog }}><b>Date</td>
|
||||
<td class={{ date }}><b>Name</td>
|
||||
<td class={{ name }}><b>Changelog</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<!-- AUTHOR INFO + LOGO TABLE --!>
|
||||
<table class=author_info style="float:left" >
|
||||
<tr>
|
||||
<td class="revno"> {{ revisions_8 }}</td>
|
||||
<td class="changelog"> {{ revisions_8_changelog }}</td>
|
||||
<td class="date"> {{ revisions_8_date }}</td>
|
||||
<td class="name"> {{ revisions_8_name }}</td>
|
||||
<td class="process"></td>
|
||||
<td class="date">Date</td>
|
||||
<td class="name">Name</td>
|
||||
<td class="title" colspan="3" rowspan="5"> {{ title }}</td>
|
||||
<td class="date"><b>Date</b></td>
|
||||
<td class="name"><b>Name</b></td>
|
||||
</tr>
|
||||
{% for author in authors %}
|
||||
<tr>
|
||||
<td class="revno"> {{ revisions_7 }}</td>
|
||||
<td> {{ revisions_7_changelog }}</td>
|
||||
<td> {{ revisions_7_date }}</td>
|
||||
<td> {{ revisions_7_name }}</td>
|
||||
<td> {{ authors_1 }}</td>
|
||||
<td> {{ authors_1_date }}</td>
|
||||
<td> {{ authors_1_name }}</td>
|
||||
<td><b>{{ author['row'] }}</b></td>
|
||||
<td> {{ author['date'] }}</td>
|
||||
<td> {{ author['name'] }}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
<tr>
|
||||
<td class="revno"> {{ revisions_6 }}</td>
|
||||
<td> {{ revisions_6_changelog }}</td>
|
||||
<td> {{ revisions_6_date }}</td>
|
||||
<td> {{ revisions_6_name }}</td>
|
||||
<td> {{ authors_2 }}</td>
|
||||
<td> {{ authors_2_date }}</td>
|
||||
<td> {{ authors_2_name }}</td>
|
||||
<td class="logo" colspan="3" rowspan="4" >
|
||||
<img src={{ logo }} alt="" style="height:auto; width:150px;display:block;margin-left:auto;margin-right:auto" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr></tr>
|
||||
<tr></tr>
|
||||
<tr></tr>
|
||||
</table>
|
||||
|
||||
<!-- HARNESS INFO TABLE --!>
|
||||
<table class=harness_info>
|
||||
<tr>
|
||||
<td class="revno"> {{ revisions_5 }}</td>
|
||||
<td> {{ revisions_5_changelog }}</td>
|
||||
<td> {{ revisions_5_date }}</td>
|
||||
<td> {{ revisions_5_name }}</td>
|
||||
<td> {{ authors_3 }}</td>
|
||||
<td> {{ authors_3_date }}</td>
|
||||
<td> {{ authors_3_name }}</td>
|
||||
<td class="company" colspan="4" rowspan="2"><b> {{ company }}</b></td>
|
||||
</tr>
|
||||
<tr></tr>
|
||||
<tr>
|
||||
<td class="revno"> {{ revisions_4 }}</td>
|
||||
<td> {{ revisions_4_changelog }}</td>
|
||||
<td> {{ revisions_4_date }}</td>
|
||||
<td> {{ revisions_4_name }}</td>
|
||||
<td colspan="2"></td>
|
||||
<td></td>
|
||||
<td class="company" colspan="4" rowspan="2"> {{ address }}</td>
|
||||
</tr>
|
||||
<tr></tr>
|
||||
<tr>
|
||||
<td class="revno"> {{ revisions_3 }}</td>
|
||||
<td> {{ revisions_3_changelog }}</td>
|
||||
<td> {{ revisions_3_date }}</td>
|
||||
<td> {{ revisions_3_name }}</td>
|
||||
<td class="company" colspan="3" rowspan="3"> {{ company }}</td>
|
||||
<td class="partno" colspan="2" rowspan="3"> {{ pn }}</td>
|
||||
<td class="sheetno" rowspan="2">Sheet<br /> {{ sheet_current }}</td>
|
||||
<td class="title" colspan="4" rowspan="2"> {{ title }}</td>
|
||||
</tr>
|
||||
<tr></tr>
|
||||
<tr>
|
||||
<td class="revno"> {{ revisions_2 }}</td>
|
||||
<td> {{ revisions_2_changelog }}</td>
|
||||
<td> {{ revisions_2_date }}</td>
|
||||
<td> {{ revisions_2_name }}</td>
|
||||
<td class="partno" colspan="3" rowspan="3"> {{ pn }}</td>
|
||||
<td class="revision" colspan="1" rowspan="2"> {{ revision }}</td>
|
||||
</tr>
|
||||
<tr></tr>
|
||||
<tr>
|
||||
<td class="revno"> {{ revisions_1 }}</td>
|
||||
<td> {{ revisions_1_changelog }}</td>
|
||||
<td> {{ revisions_1_date }}</td>
|
||||
<td> {{ revisions_1_name }}</td>
|
||||
<td class="sheetno">of {{ sheet_total }}</td>
|
||||
<td class="sheetno" colspan="1">Sheet {{ sheet_current }} of {{ sheet_total }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Rev</td>
|
||||
<td>Changelog</td>
|
||||
<td>Date</td>
|
||||
<td>Name</td>
|
||||
<td colspan="3"></td>
|
||||
<td></td>
|
||||
<td colspan="2"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</table>
|
||||
</div> <!--/titleblock --!>
|
||||
|
||||
|
||||
@ -129,7 +129,7 @@ def cli(file, format, prepend, output_dir, output_name, version):
|
||||
raise Exception(f"Path is not a file:\n{file}")
|
||||
|
||||
extra_metadata = {}
|
||||
extra_metadata["name"] = file.stem
|
||||
extra_metadata["sheet_name"] = file.stem
|
||||
extra_metadata["sheet_total"] = len(filepaths)
|
||||
extra_metadata["sheet_current"] = sheet_current
|
||||
sheet_current += 1
|
||||
|
||||
@ -123,7 +123,6 @@ def generate_html_output(
|
||||
sheet_total = 1
|
||||
|
||||
replacements = {
|
||||
"title": "pizza",
|
||||
"generator": f"{APP_NAME} {__version__} - {APP_URL}",
|
||||
"fontname": options.fontname,
|
||||
"bgcolor": options.bgcolor.html,
|
||||
@ -132,27 +131,57 @@ def generate_html_output(
|
||||
"bom_reversed": bom_html_reversed,
|
||||
"sheet_current": sheet_current,
|
||||
"sheet_total": sheet_total,
|
||||
"titleblock_rows": 9
|
||||
}
|
||||
|
||||
# prepare metadata replacements
|
||||
added_metadata = {
|
||||
'revisions': [],
|
||||
'authors': [],
|
||||
}
|
||||
if metadata:
|
||||
for item, contents in metadata.items():
|
||||
if isinstance(contents, (str, int, float)):
|
||||
replacements[str(item)] = html_line_breaks(str(contents))
|
||||
elif isinstance(contents, Dict): # useful for authors, revisions
|
||||
for index, (category, entry) in enumerate(contents.items()):
|
||||
if isinstance(entry, Dict):
|
||||
replacements[f"{item}_{index+1}"] = str(category)
|
||||
for entry_key, entry_value in entry.items():
|
||||
replacements[
|
||||
f"{item}_{index+1}_{entry_key}"
|
||||
] = html_line_breaks(str(entry_value))
|
||||
if item == 'revisions':
|
||||
added_metadata['revisions'] = [{'rev': rev, **v} for rev, v in contents.items()]
|
||||
continue
|
||||
if item == 'authors':
|
||||
added_metadata['authors'] = [{'row': row, **v} for row, v in contents.items()]
|
||||
continue
|
||||
if item == 'pn':
|
||||
added_metadata[item] = f'{contents}-{metadata.get("sheet_name")}'
|
||||
continue
|
||||
|
||||
added_metadata[item] = contents
|
||||
#if isinstance(contents, (str, int, float)):
|
||||
# replacements[str(item)] = html_line_breaks(str(contents))
|
||||
#elif isinstance(contents, Dict): # useful for authors, revisions
|
||||
# for index, (category, entry) in enumerate(contents.items()):
|
||||
# if isinstance(entry, Dict):
|
||||
# replacements[f"{item}_{index+1}"] = str(category)
|
||||
# for entry_key, entry_value in entry.items():
|
||||
# replacements[
|
||||
# f"{item}_{index+1}_{entry_key}"
|
||||
# ] = html_line_breaks(str(entry_value))
|
||||
|
||||
|
||||
replacements[
|
||||
"sheetsize_default"
|
||||
] = f'{metadata.get("template", {}).get("sheetsize", "sheetsize_default")}'
|
||||
# include quotes so no replacement happens within <style> definition
|
||||
|
||||
for i in range(replacements["titleblock_rows"]-len(added_metadata['revisions'])-1):
|
||||
added_metadata['revisions'].append({})
|
||||
added_metadata['revisions'].reverse()
|
||||
for i in range(4-len(added_metadata['authors'])):
|
||||
added_metadata['authors'].append({})
|
||||
replacements = {**replacements, **added_metadata}
|
||||
|
||||
# Add logo
|
||||
#if 'logo' in replacements:
|
||||
# #import pdb;pdb.set_trace()
|
||||
# replacements['logo'] = f'<img class=logo src={logo_path} alt="Company Logo"/>'
|
||||
|
||||
|
||||
# prepare titleblock
|
||||
titleblock_template = get_template_html("titleblock")
|
||||
replacements["titleblock"] = titleblock_template.render(replacements)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user