updated rimotype map
This commit is contained in:
36
Layout/default/Preorder/PDF_FOOTER.html
Normal file
36
Layout/default/Preorder/PDF_FOOTER.html
Normal file
@@ -0,0 +1,36 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<script>
|
||||
function subst() {
|
||||
var vars = {};
|
||||
var queryStrings = document.location.search.substring(1).split('&');
|
||||
for (var i = 0; i < queryStrings.length; i++) {
|
||||
var temp = queryStrings[i].split('=', 2);
|
||||
vars[temp[0]] = decodeURIComponent(temp[1]);
|
||||
}
|
||||
var classes = ['page', 'frompage', 'topage'];
|
||||
for (var j = 0; j < classes.length; j++) {
|
||||
var elements = document.getElementsByClassName(classes[j]);
|
||||
for (var k = 0; k < elements.length; ++k) {
|
||||
elements[k].textContent = vars[classes[j]];
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body style="font-family: sans-serif, Verdana; font-size: 9px; margin: 0;" onload="subst()">
|
||||
<table style="width: 100%; border-top: 1px solid #ccc; padding-top: 8px; color: #555;">
|
||||
<tr>
|
||||
<td style="text-align: center; font-size: 10px;">
|
||||
XINON GmbH | Fladnitz 150 | 8322 Studenzen | Tel.: +43 3115 40800 | E-Mail: office@xinon.at <br>
|
||||
UID: ATU68711968 | FN: 416556h | LG: Feldbach
|
||||
</td>
|
||||
<td style="text-align: right; width: 100px;">
|
||||
Seite <span class="page"></span> von <span class="topage"></span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
30
Layout/default/Preorder/PDF_HEADER.html
Normal file
30
Layout/default/Preorder/PDF_HEADER.html
Normal file
@@ -0,0 +1,30 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<style>
|
||||
body { font-family: sans-serif, Verdana; font-size: 10px; margin: 0; padding: 0; width: 100%; }
|
||||
.header-table { width: 100%; border-bottom: 2px solid #f7c423; }
|
||||
.logo-cell { width: 200px; }
|
||||
.title-cell { vertical-align: middle; text-align: right; }
|
||||
h1 { font-size: 20px; color: #005384; margin: 0 0 5px 0; }
|
||||
.sub-info { font-size: 11px; color: #555; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<table class="header-table">
|
||||
<tr>
|
||||
<td class="logo-cell">
|
||||
<img alt="Xinon Logo" src="{{ basedir }}/public/assets/images/xinon-full.png" style="height: 60px;">
|
||||
</td>
|
||||
<td class="title-cell">
|
||||
<h1>Fehlerprotokoll</h1>
|
||||
<div class="sub-info">
|
||||
<strong>Kampagne:</strong> {{ campaignName }}<br>
|
||||
<strong>Datum:</strong> {{ creationDate }}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
94
Layout/default/Preorder/PDF_MAIN.php
Normal file
94
Layout/default/Preorder/PDF_MAIN.php
Normal file
@@ -0,0 +1,94 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title>Fehlerprotokoll</title>
|
||||
<style>
|
||||
body { font-family: "Open Sans", sans-serif, Verdana; font-size: 10px; color: #333; }
|
||||
.fault-entry {
|
||||
border: 1px solid #ddd;
|
||||
border-radius: 5px;
|
||||
margin-bottom: 15px;
|
||||
padding: 12px;
|
||||
page-break-inside: avoid;
|
||||
}
|
||||
.fault-entry h2 {
|
||||
font-size: 14px;
|
||||
color: #005384;
|
||||
margin-top: 0;
|
||||
margin-bottom: 10px;
|
||||
border-bottom: 1px solid #f7c423;
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
.info-table { width: 100%; border-collapse: collapse; font-size: 10px; }
|
||||
.info-table td { padding: 4px; vertical-align: top; }
|
||||
.info-table td.label { font-weight: bold; width: 120px; color: #444; }
|
||||
.faults-section { margin-top: 10px; border-top: 1px dashed #ccc; padding-top: 10px; }
|
||||
.faults-section h3 { font-size: 12px; color: #c0392b; margin-top: 0; margin-bottom: 5px; }
|
||||
.faults-section ul { margin: 0; padding-left: 20px; list-style-type: square; }
|
||||
.faults-section .other-text { background-color: #fef9e7; padding: 8px; border-left: 3px solid #f7c423; margin-top: 8px; font-style: italic; }
|
||||
.no-faults { text-align: center; font-size: 14px; color: #777; padding: 40px; border: 2px dashed #ccc; border-radius: 8px; }
|
||||
a { color: #005384; text-decoration: none; }
|
||||
a:hover { text-decoration: underline; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<?php if (empty($faultyEntries)): ?>
|
||||
<div class="no-faults">
|
||||
Für die Kampagne "<?= htmlspecialchars($campaignName) ?>" wurden keine Fehler gemeldet.
|
||||
</div>
|
||||
<?php else: ?>
|
||||
<?php foreach ($faultyEntries as $entry):
|
||||
$addr = $entry['address'];
|
||||
$fullAddress = htmlspecialchars($addr['strasse_name'] . ' ' . $addr['hausnummer'] . ', ' . $addr['plz_name'] . ' ' . $addr['ortschaft_name']);
|
||||
?>
|
||||
<div class="fault-entry">
|
||||
<h2><?= $fullAddress ?></h2>
|
||||
<table class="info-table">
|
||||
<tr>
|
||||
<td class="label">AddressDB ID:</td>
|
||||
<td><?= $addr['hausnummer_id'] ?> (<a href="<?= $entry['addressDbLink'] ?>" target="_blank">Ansehen</a>)</td>
|
||||
<td class="label">RIMO Type:</td>
|
||||
<td><?= htmlspecialchars($addr['rimo_type'] ?: 'N/A') ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">Externe Referenz:</td>
|
||||
<td><?= htmlspecialchars($addr['extref'] ?: 'N/A') ?></td>
|
||||
<td class="label">RIMO Op/Ex State:</td>
|
||||
<td><?= htmlspecialchars($addr['rimo_op_state'] ?: 'N/A') ?> / <?= htmlspecialchars($addr['rimo_ex_state'] ?: 'N/A') ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">Wohneinheiten:</td>
|
||||
<td><?= $addr['wohneinheit_count'] ?></td>
|
||||
<td class="label">Koordinaten:</td>
|
||||
<td><?= $addr['gps_lat'] ?>, <?= $addr['gps_long'] ?> (<a href="<?= $entry['googleMapsLink'] ?>" target="_blank">Karte</a>)</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class="faults-section">
|
||||
<h3>Gemeldete Fehler</h3>
|
||||
<?php if (empty($entry['faults']['reasons']) && empty(trim($entry['faults']['other']))): ?>
|
||||
<p>Keine spezifischen Fehlerdetails angegeben.</p>
|
||||
<?php else: ?>
|
||||
<?php if (!empty($entry['faults']['reasons'])): ?>
|
||||
<ul>
|
||||
<?php foreach ($entry['faults']['reasons'] as $reason): ?>
|
||||
<li><?= htmlspecialchars($reason) ?></li>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
<?php endif; ?>
|
||||
<?php if (!empty(trim($entry['faults']['other']))): ?>
|
||||
<div class="other-text">
|
||||
<strong>Sonstige Anmerkungen:</strong><br>
|
||||
<?= nl2br($entry['faults']['other']) ?>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
<?php endif; ?>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user