Subversion Repositories wpShopGermany4

Compare Revisions

Ignore whitespace Rev HEAD → Rev 8112

/mods/mod_productgroups/show_2.phtml
File deleted
/mods/mod_prepayment/mail_html.phtml
30,54 → 30,4
<td><?php echo __('Betreff', 'wpsg'); ?>:</td>
<td style="text-align:right;"><?php echo wpsg_translate(__('#1#', 'wpsg'), $this->view['mod_prepayment']['subject']); ?></td>
</tr>
<?php
if (isset($this->view['mod_prepayment']['subject']) && ($this->get_option('wpsg_mod_prepayment_qrcode') == true)) {
 
require_once WPSG_PATH_LIB.'phpgirocode.class.php';
 
echo '<tr><td>'.__('Zahlen via QR Code', 'wpsg').':</td></tr>';
if ($this->get_option('wpsg_mod_prepayment_qrcode_country') == '0') {
 
$qrcodes = array();
$qrcodes = $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['wpsg_mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 3, PhpGirocode::OUTPUT_BASE64, $this->get_option('wpsg_mod_prepayment_qrcode_country'), $this->view['basket']));
foreach ($qrcodes as $qr) {
 
if ($qr['title'] == 'QR-Rechnung') echo '<tr style="margin-top:25px;" >';
else echo '<tr>';
echo '<td>'.__($qr['title'], 'wpsg').'</td>';
echo '<td style="float:right;"><img style="max-width:120px;" width="120" height="120" src="data:image/png;base64,'.$qr['hash'].'" alt="qrcode" /></td>';
echo '</tr>';
 
}
 
} else if ($this->get_option('wpsg_mod_prepayment_qrcode_country') == '1') {
 
$qrcode = $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 3, PhpGirocode::OUTPUT_BASE64, $this->get_option('wpsg_mod_prepayment_qrcode_country'), $this->view['basket']));
echo '
<tr>
<td>'.__($qrcode['title'], 'wpsg').':</td>
<td style="float:right;" alt="qrcode">'.$qrcode['hash'].'</td>
</tr>
';
 
} else if ($this->get_option('wpsg_mod_prepayment_qrcode_country') == '2') {
 
$qrcode = $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 3, PhpGirocode::OUTPUT_BASE64, $this->get_option('wpsg_mod_prepayment_qrcode_country'), $this->view['basket']));
 
echo '
<tr>
<td>'.__($qrcode['title'], 'wpsg').':</td>
<td style="float:right;" alt="qrcode">'.$qrcode['hash'].'</td>
</tr>
';
 
}
}
 
?>
</table>
</table>
/mods/mod_statistics/settings_edit.phtml
3,9 → 3,9
<div id="wpsg_tab">
<ul class="nav nav-tabs" role="tablist">
<li role="presentation" class="active"><a href="#tab1" aria-controls="home" role="tab" data-toggle="tab"><?php echo __('Auswertung Bestellstatus', 'wpsg'); ?></a></li>
<li role="presentation"><a href="#tab2" aria-controls="profile" role="tab" data-toggle="tab"><?php echo __('Matomo', 'wpsg'); ?></a></li>
<li role="presentation"><a href="#tab2" aria-controls="profile" role="tab" data-toggle="tab"><?php echo __('Piwik', 'wpsg'); ?></a></li>
<li role="presentation"><a href="#tab3" aria-controls="profile" role="tab" data-toggle="tab"><?php echo __('Google', 'wpsg'); ?></a></li>
<!-- <li role="presentation"><a href="#tab4" aria-controls="profile" role="tab" data-toggle="tab"><?php echo __('Social Media', 'wpsg'); ?></a></li> -->
<li role="presentation"><a href="#tab4" aria-controls="profile" role="tab" data-toggle="tab"><?php echo __('Social Media', 'wpsg'); ?></a></li>
<li role="presentation"><a href="#tab5" aria-controls="messages" role="tab" data-toggle="tab"><?php echo __('Sonstiges', 'wpsg'); ?></a></li>
</ul>
 
46,185 → 46,107
<br/>
<?php echo __('Ermöglicht die Integration des Trackintools "Matomo".', 'wpsg'); ?>
<?php echo __('Ermöglicht die Integration des Trackintools "Piwik".', 'wpsg'); ?>
<br/><br/>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_trackingcode', __('Trackingcode einbinden', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_trackingcode'), array('help' => 'wpsg_mod_statistics_piwik_trackingcode')); ?>
<div id="wpsg_mod_statistik_tracking_layer" style="display:none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_url', __('URL zur Matomo Installation', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_url'), array('help' => 'wpsg_mod_statistics_piwik_url'), array('hint' => __('Ohne Protokoll, Beispiel: matomo.domain.de', 'wpsg'))); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_SiteId', __('Matomo Seiten ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_SiteId'), array('help' => 'wpsg_mod_statistics_piwik_SiteId')); ?>
</div>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_url', __('URL zur Piwik Installation', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_url'), array('hint' => __('Ohne Protokoll, Beispiel: piwik.domain.de', 'wpsg'))); ?>
<br />
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_generel', __('Allgemeine Protokollierung', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_generel'), array('help' => 'wpsg_mod_statistics_piwik_generel')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_ecommerce', __('Käufe (eCommerce) tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_ecommerce'), array('help' => 'wpsg_mod_statistics_piwik_ecommerce')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_productView', __('Produkte tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_productView'), array('help' => 'wpsg_mod_statistics_piwik_productView')); ?>
<?php if ($this->hasMod('wpsg_mod_produktartikel')) echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_categoryView', __('Produktkategorien tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_categoryView'), array('help' => 'wpsg_mod_statistics_piwik_categoryView')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_basketdata', __('Warenkorbdaten tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_basketdata'), array('help' => 'wpsg_mod_statistics_piwik_basketdata')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_generel', __('Allgemeine Protokollierung', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_generel')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_SiteId', __('Piwik Seiten ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_SiteId'), array('help' => 'wpsg_mod_statistics_piwik_SiteId')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_ecommerce', __('Käufe (eCommerce) tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_ecommerce')); ?>
<br /><br />
 
<strong><?php echo __('Matomo Goals tracken:', 'wpsg'); ?></strong>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_basket', __('Warenkorb tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_basket')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_basket_target', __('Ziel ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_basket_target')); ?>
<br />
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_basket', __('Warenkorb tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_basket'), array('help' => 'wpsg_mod_statistics_piwik_basketdata')); ?>
<div id="wpsg_mod_statistics_piwik_basket_layer" style="display: none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_basket_target', __('Matomo ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_basket_target')); ?>
</div>
<br />
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_checkout', __('Checkout tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_checkout')); ?>
<div id="wpsg_mod_statistics_piwik_checkout_layer" style="display: none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_checkout_target', __('Matomo ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_checkout_target')); ?>
</div>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_checkout_target', __('Ziel ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_checkout_target')); ?>
<br />
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_checkout2', __('Checkout2 tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_checkout2')); ?>
<div id="wpsg_mod_statistics_piwik_checkout2_layer" style="display: none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_checkout2_target', __('Matomo ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_checkout2_target')); ?>
</div>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_checkout2_target', __('Ziel ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_checkout2_target')); ?>
<br />
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_overview', __('Overview tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_overview')); ?>
<div id="wpsg_mod_statistics_piwik_overview_layer" style="display: none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_overview_target', __('Matomo ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_overview_target')); ?>
</div>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_overview_target', __('Ziel ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_overview_target')); ?>
<br />
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_piwik_done', __('Done tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_done')); ?>
<div id="wpsg_mod_statistics_piwik_done_layer" style="display: none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_done_target', __('Matomo ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_done_target')); ?>
</div>
 
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_piwik_done_target', __('Ziel ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_piwik_done_target')); ?>
<div class="wpsg_clearer"></div>
</div>
 
<script>
 
document.addEventListener("DOMContentLoaded", function() {
 
var trackingCheckbox = document.getElementById('wpsg_mod_statistics_piwik_trackingcode');
var trackingDiv = document.getElementById('wpsg_mod_statistik_tracking_layer');
 
var basketCheckbox = document.getElementById("wpsg_mod_statistics_piwik_basket");
var basketDiv = document.getElementById("wpsg_mod_statistics_piwik_basket_layer");
 
var checkoutCheckbox = document.getElementById("wpsg_mod_statistics_piwik_checkout");
var checkoutDiv = document.getElementById("wpsg_mod_statistics_piwik_checkout_layer");
 
var checkout2Checkbox = document.getElementById("wpsg_mod_statistics_piwik_checkout2");
var checkout2Div = document.getElementById("wpsg_mod_statistics_piwik_checkout2_layer");
 
var overviewCheckbox = document.getElementById("wpsg_mod_statistics_piwik_overview");
var overviewDiv = document.getElementById("wpsg_mod_statistics_piwik_overview_layer");
 
var doneCheckbox = document.getElementById("wpsg_mod_statistics_piwik_done");
var doneDiv = document.getElementById("wpsg_mod_statistics_piwik_done_layer");
 
 
function toggleDivVisibility(checkbox, div)
{
 
if (checkbox.checked) div.style.display = "block";
else div.style.display = "none";
 
}
 
// Event Listener für die Checkboxen
trackingCheckbox.addEventListener("change", function() {
toggleDivVisibility(trackingCheckbox, trackingDiv);
});
 
basketCheckbox.addEventListener("change", function() {
toggleDivVisibility(basketCheckbox, basketDiv);
});
 
checkoutCheckbox.addEventListener("change", function() {
toggleDivVisibility(checkoutCheckbox, checkoutDiv);
});
 
checkout2Checkbox.addEventListener("change", function() {
toggleDivVisibility(checkout2Checkbox, checkout2Div);
});
 
overviewCheckbox.addEventListener("change", function() {
toggleDivVisibility(overviewCheckbox, overviewDiv);
});
 
doneCheckbox.addEventListener("change", function() {
toggleDivVisibility(doneCheckbox, doneDiv);
});
 
// Überprüfen und Initialisieren des Anfangszustands der Checkboxen
toggleDivVisibility(trackingCheckbox, trackingDiv);
toggleDivVisibility(basketCheckbox, basketDiv);
toggleDivVisibility(checkoutCheckbox, checkoutDiv);
toggleDivVisibility(checkout2Checkbox, checkout2Div);
toggleDivVisibility(overviewCheckbox, overviewDiv);
toggleDivVisibility(doneCheckbox, doneDiv);
});
 
</script>
<div role="tabpanel" class="tab-pane" id="tab3">
<?php
 
<br/>
echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_google_active', __('Google Analytics aktivieren', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_active'), array('help' => 'wpsg_mod_statistics_google_active'));
echo wpsg_drawForm_Input('wpsg_mod_statistics_google_tracking_code', __('Tracking-Code', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_tracking_code'), array('help' => 'wpsg_mod_statistics_google_tracking_code'));
<?php echo __('Ermöglicht die Integration von "Google Analytics 4".', 'wpsg'); ?>
<br/><br/>
echo wpsg_drawForm_Input('wpsg_mod_statistics_google_domainname', __('Domainname', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_domainname'), array('help' => 'wpsg_mod_statistics_google_domainname'));
echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_google_anonymise_ip_address', __('IP Adresse anonymisieren', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_anonymise_ip_address'), array('help' => 'wpsg_mod_statistics_google_anonymise_ip_address'));
//echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_google_enable_first_touch_tracking', __('Enable First Touch Tracking', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_enable_first_touch_tracking'));
echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_google_track_page_load_time', __('Ladegeschwindigkeit der Website erfassen', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_track_page_load_time'), array('help' => 'wpsg_mod_statistics_google_track_page_load_time'));
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_google_active', __('Trackingcode einbinden', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_active'), array('help' => 'wpsg_mod_statistics_google_active')); ?>
<div id="wpsg_mod_statistik_google_tracking_layer" style="display:none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_google_tracking_code', __('Google Tag ID', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_tracking_code'), array('help' => 'wpsg_mod_statistics_google_tracking_code')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_google_tracking_debug_mode', __('Google Debug Mode', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_tracking_debug_mode'), array('help' => 'wpsg_mod_statistics_google_tracking_debug_mode')); ?>
</div>
<br />
echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_google_opt_out', __('Google Opt Out', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_opt_out'), array('help' => 'wpsg_mod_statistics_google_opt_out'));
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_google_ecommerce', __('Käufe (eCommerce) tracken', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_ecommerce'), array('help' => 'wpsg_mod_statistics_google_ecommerce')); ?>
echo wpsg_drawForm_Checkbox('wpsg_mod_statistics_google_enhanced_tracking_code', __('Enhanced Tacking Code', 'wpsg'), $this->get_option('wpsg_mod_statistics_google_enhanced_tracking_code'), array('help' => 'wpsg_mod_statistics_google_enhanced_tracking_code'));
?>
<h3><?php echo __('Zieleinrichtung in Google Analytics', 'wpsg'); ?></h3>
<?php
echo wpsg_drawForm_Textstart();
echo wpsg_drawForm_TextEnd(__('Ziel', 'wpsg'), array('noP' => true));
?>
<ul>
<li>
<?php
echo wpsg_drawForm_Input('wpsg_mod_statistics_google_done', __('Bestellabschluss', 'wpsg'), trim(str_replace(get_site_url(), '', $this->getURL(wpsg_ShopController::URL_BASKET).'?wpsg_done')).'=', array('text' => true));
?>
</li>
</ul>
<?php
echo wpsg_drawForm_Textstart();
echo wpsg_drawForm_TextEnd(__('Trichter (optional)', 'wpsg'), array('noP' => true));
?>
 
<ul>
<li><?php echo wpsg_drawForm_Input('wpsg_mod_statistics_google_basket', __('Warenkorb', 'wpsg'), trim(str_replace(get_site_url(), '', $this->getURL(wpsg_ShopController::URL_BASKET))), array('text' => true)); ?></li>
<li><?php echo wpsg_drawForm_Input('wpsg_mod_statistics_google_checkout', __('Adresse', 'wpsg'), trim(str_replace(get_site_url(), '', $this->getURL(wpsg_ShopController::URL_CHECKOUT))).'=', array('text' => true)); ?></li>
<li><?php echo wpsg_drawForm_Input('wpsg_mod_statistics_google_checkout2', __('Versand', 'wpsg'), trim(str_replace(get_site_url(), '', $this->getURL(wpsg_ShopController::URL_CHECKOUT2))).'=', array('text' => true)); ?></li>
<li><?php echo wpsg_drawForm_Input('wpsg_mod_statistics_google_overview', __('Warenkorbübersicht', 'wpsg'), trim(str_replace(get_site_url(), '', $this->getURL(wpsg_ShopController::URL_OVERVIEW))).'=', array('text' => true)); ?></li>
</ul>
<div class="wpsg_clearer"></div>
 
</div>
<script>
 
document.addEventListener("DOMContentLoaded", function() {
 
var GoogleTrackingCheckbox = document.getElementById('wpsg_mod_statistics_google_active');
var GoogleTrackingDiv = document.getElementById('wpsg_mod_statistik_google_tracking_layer');
 
function toggleGoogleDivVisibility(checkbox, div)
{
 
if (checkbox.checked) div.style.display = "block";
else div.style.display = "none";
 
}
 
// Event Listener für die Checkboxen
GoogleTrackingCheckbox.addEventListener("change", function() {
toggleGoogleDivVisibility(GoogleTrackingCheckbox, GoogleTrackingDiv);
});
 
// Überprüfen und Initialisieren des Anfangszustands der Checkboxen
toggleGoogleDivVisibility(GoogleTrackingCheckbox, GoogleTrackingDiv);
 
});
 
</script>
 
<!-- <div role="tabpanel" id="tab4" class="tab-pane">
<?php // echo wpsg_drawForm_input('wpsg_mod_statistics_socialmedia_fb_px', __('Facebook Pixel', 'wpsg'), $this->get_option('wpsg_mod_statistics_socialmedia_fb_px'), array('help' => 'wpsg_mod_statistics_socialmedia_fb_px')); ?>
<div role="tabpanel" id="tab4" class="tab-pane">
<?php
echo wpsg_drawForm_input('wpsg_mod_statistics_socialmedia_fb_px', __('Facebook Pixel', 'wpsg'), $this->get_option('wpsg_mod_statistics_socialmedia_fb_px'), array('help' => 'wpsg_mod_statistics_socialmedia_fb_px'));
?>
<div class="wpsg_clearer"></div>
</div> -->
</div>
 
<div role="tabpanel" class="tab-pane" id="tab5">
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_line_chart_width', __('Liniendiagramm (Breite in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_line_chart_width'), array('help' => 'wpsg_mod_statistics_line_chart_width')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_line_chart_height', __('Liniendiagramm (Hoehe in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_line_chart_height'), array('help' => 'wpsg_mod_statistics_line_chart_height')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_pie_chart_width', __('Kuchendiagramm (Breite in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_pie_chart_width'), array('help' => 'wpsg_mod_statistics_pie_chart_width')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_pie_chart_height', __('Kuchendiagramm (Höhe in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_pie_chart_height'), array('help' => 'wpsg_mod_statistics_pie_chart_height')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_bar_chart_width', __('Balkendiagramm (Breite in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_bar_chart_width'), array('help' => 'wpsg_mod_statistics_bar_chart_width')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_bar_chart_height', __('Balkendiagramm (Höhe in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_bar_chart_height'), array('help' => 'wpsg_mod_statistics_bar_chart_height')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_topproductcount', __('Anzeige Top-Produkte', 'wpsg'), $this->get_option('wpsg_mod_statistics_topproductcount'), array('help' => 'wpsg_mod_statistics_topproductcount')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_statistics_productinterval', __('Intervall-Zeitraum für Produktstatistik', 'wpsg'), $this->get_option('wpsg_mod_statistics_productinterval'), array('help' => 'wpsg_mod_statistics_productinterval')); ?>
<?php
echo wpsg_drawForm_Input('wpsg_mod_statistics_line_chart_width', __('Liniendiagramm (Breite in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_line_chart_width'), array('help' => 'wpsg_mod_statistics_line_chart_width'));
echo wpsg_drawForm_Input('wpsg_mod_statistics_line_chart_height', __('Liniendiagramm (Hoehe in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_line_chart_height'), array('help' => 'wpsg_mod_statistics_line_chart_height'));
echo wpsg_drawForm_Input('wpsg_mod_statistics_pie_chart_width', __('Kuchendiagramm (Breite in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_pie_chart_width'), array('help' => 'wpsg_mod_statistics_pie_chart_width'));
echo wpsg_drawForm_Input('wpsg_mod_statistics_pie_chart_height', __('Kuchendiagramm (Höhe in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_pie_chart_height'), array('help' => 'wpsg_mod_statistics_pie_chart_height'));
echo wpsg_drawForm_Input('wpsg_mod_statistics_bar_chart_width', __('Balkendiagramm (Breite in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_bar_chart_width'), array('help' => 'wpsg_mod_statistics_bar_chart_width'));
echo wpsg_drawForm_Input('wpsg_mod_statistics_bar_chart_height', __('Balkendiagramm (Höhe in px)', 'wpsg'), $this->get_option('wpsg_mod_statistics_bar_chart_height'), array('help' => 'wpsg_mod_statistics_bar_chart_height'));
echo wpsg_drawForm_Input('wpsg_mod_statistics_topproductcount', __('Anzeige Top-Produkte', 'wpsg'), $this->get_option('wpsg_mod_statistics_topproductcount'), array('help' => 'wpsg_mod_statistics_topproductcount'));
 
echo wpsg_drawForm_Input('wpsg_mod_statistics_productinterval', __('Intervall-Zeitraum für Produktstatistik', 'wpsg'), $this->get_option('wpsg_mod_statistics_productinterval'), array('help' => 'wpsg_mod_statistics_productinterval'));
?>
<div class="wpsg_clearer"></div>
</div>
/mods/mod_deliverynote/deliverynote_pdf.phtml
169,7 → 169,6
$filename = $this->view['filename'].".pdf";
$bKopf = false; $pnr = 1; $offset = 0; $count = 0;
 
foreach ($this->view['data']['products'] as $p)
{
233,7 → 232,7
/* Wenn Detailname nicht vorhanden, wird der Name auf dem Lieferschein verwendet*/
$produkt_text = $this->getProductName($this->getProduktID($p['p_id']), false);
 
$produktBeschreibung = trim(strip_tags($product_data['beschreibung']));
$produktBeschreibung = trim(strip_tags($p['beschreibung']));
if ($this->isOtherLang())
{
/mods/mod_prepayment/settings_edit.phtml
22,3 → 22,4
<?php echo wpsg_drawForm_Input('wpsg_mod_prepayment_bank', __('Bank', 'wpsg'), $this->get_option('wpsg_mod_prepayment_bank'), array('help' => 'wpsg_mod_prepayment_bank')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_prepayment_iban', __('IBAN', 'wpsg'), $this->get_option('wpsg_mod_prepayment_iban'), array('help' => 'wpsg_mod_prepayment_iban')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_prepayment_swift', __('BIC-/SWIFT Code', 'wpsg'), $this->get_option('wpsg_mod_prepayment_swift'), array('help' => 'wpsg_mod_prepayment_swift')); ?>
/mods/mod_rechnungen/settings_edit.phtml
196,16 → 196,12
<?php if ($this->hasMod('wpsg_mod_produktattribute') == '1') {?>
<?php echo wpsg_drawForm_Checkbox('wpsg_rechnungen_produktattribute', __('Produktattribute auf der Rechnung anzeigen', 'wpsg'), $this->get_option('wpsg_rechnungen_produktattribute'), array('help' => 'wpsg_rechnungen_produktattribute')); ?>
<?php }?>
<?php if ($this->hasMod('wpsg_mod_deliverynote') == '1') {?>
<?php echo wpsg_drawForm_Checkbox('wpsg_rechnungen_deliverynote', __('Lieferdatum auf der Rechnung anzeigen', 'wpsg'), $this->get_option('wpsg_rechnungen_deliverynote'), array('help' => 'wpsg_rechnungen_deliverynote')); ?>
<?php }?>
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_rechnungen_showgutschriftrechnung', __('Rechnungsnummer auf Rechnungskorrektur anzeigen', 'wpsg'), $this->get_option('wpsg_mod_rechnungen_showgutschriftrechnung'), array('help' => 'wpsg_mod_rechnungen_showgutschriftrechnung')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_rechnungen_showpv', __('Produktvariablen auf Rechnung anzeigen', 'wpsg'), $this->get_option('wpsg_mod_rechnungen_showpv'), array('help' => 'wpsg_mod_rechnungen_showpv')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_rechnungen_showov', __('Bestellvariablen auf Rechnung anzeigen', 'wpsg'), $this->get_option('wpsg_mod_rechnungen_showov'), array('help' => 'wpsg_mod_rechnungen_showov')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_rechnungen_hideCountry', __('Land auf Rechnung verbergen', 'wpsg'), $this->get_option('wpsg_mod_rechnungen_hideCountry'), array('help' => 'wpsg_mod_rechnungen_hideCountry')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_rechnungen_customermail', __('Rechnung/PDF an Bestellbestätigungsmail anhängen', 'wpsg'), $this->get_option('wpsg_mod_rechnungen_customermail'), ['help' => 'wpsg_mod_rechnungen_customermail']); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_rechnungen_customermail', __('Mail an Bestellbestätigung anhängen', 'wpsg'), $this->get_option('wpsg_mod_rechnungen_customermail'), ['help' => 'wpsg_mod_rechnungen_customermail']); ?>
<?php echo wpsg_drawForm_Input('wpsg_rechnungen_start', __('Startnummer (Rechnungen)', 'wpsg'), $this->get_option('wpsg_rechnungen_start'), array('help' => 'wpsg_rechnungen_start')); ?>
<?php echo wpsg_drawForm_Input('wpsg_gutschrift_start', __('Startnummer (Rechnungskorrektur)', 'wpsg'), $this->get_option('wpsg_gutschrift_start'), array('help' => 'wpsg_gutschrift_start')); ?>
<?php echo wpsg_drawForm_Select('wpsg_mod_rechnungen_gutschrifttax', __('Mehrwertsteuersatz für Bearbeitungsgebühr', 'wpsg'), wpsg_tax_groups(), $this->get_option('wpsg_mod_rechnungen_gutschrifttax'), array('help' => 'wpsg_mod_rechnungen_gutschrifttax')); ?>
/mods/mod_rechnungen/multi_invoice_pdf.phtml
9,7 → 9,7
require_once WPSG_PATH_LIB.'wpsg_fpdf.class.php';
global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top, $rhead_left, $rhead_top, $sum_multi_offset, $pdf, $data;
global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top, $rhead_left, $rhead_top, $sum_multi_offset, $pdf;
// Positionierung der Absenderadresszeile
$absender_left = 25;
33,17 → 33,11
// Anzahl an Produkten pro Seite
$prod_break = $this->get_option('wpsg_rechnungen_pdfperpage');
 
/*
$arCalculation = $this->view['basket']['arCalculation'];
$arCalculation = $this->view['basket']['arCalculation'];
$data = $this->view['multi_data']['orders'][0]['data'];
$sum = $this->view['multi_data']['orders'][0]['sum'];
*/
 
$arCalculation = array_values($this->view['multi_data']['order_data'])[0]['arCalculation'];
$data = $this->view['data'];
$sum = $arCalculation['sum'];
 
if ($this->getFrontendTaxView() === WPSG_NETTO) $taxdisplay = 'netto';
else $taxdisplay = 'brutto';
51,28 → 45,28
function AddRechnungPage($shop, $pdf) {
 
global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top, $offset, $sum_multi_offset, $data;
global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top, $offset, $sum_multi_offset;
$pdf->AddPage();
$sum_multi_offset = 0;
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.pdf")) {
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf")) {
$pdf->setSourceFile($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.pdf");
$pdf->setSourceFile($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf");
$tplidx = $pdf->importPage(1, '/MediaBox');
$pdf->useTemplate($tplidx, 0, 0, 210);
} else if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.jpg")) {
} else if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg")) {
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.jpg", 0, 0, 210, 297, 'jpg');
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg", 0, 0, 210, 297, 'jpg');
}
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_logo.jpg"))
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg"))
{
list($width, $height, $type, $attr) = getimagesize($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_logo.jpg");
list($width, $height, $type, $attr) = getimagesize($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg");
// Umrechnung von Inch zu Pixel
$wPix = (25.4 * (int)$width) / 96;
99,12 → 93,12
if(isset($logo_pos) && $logo_pos === "right") { $abscissa = $rightPos; }
$pdf->SetAlpha($alpha);
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_logo.jpg", $abscissa, $ordinate, $wPix, $hPix);
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg", $abscissa, $ordinate, $wPix, $hPix);
$pdf->SetAlpha(1);
}
 
// Absenderadresszeile (Wird in der Konfiguration hinterlegt)
// Absenderadresszeile (Wird in der Konfiguration hinterlegt)
$pdf->SetFont('Arial', '', 6);
$pdf->Text($absender_left, $absender_top, $shop->replaceUniversalPlatzhalter(__($shop->get_option("wpsg_rechnungen_adresszeile"), 'wpsg'), $data['id']));
194,11 → 188,11
$rhead_count = 1;
$sum_multi_offset = 0;
// $orders = $this->view['multi_data']['orders'];
$orders = $this->view['multi_data']['orders'];
 
// noMwSt
$head_data = array_values($this->view['multi_data']['order_data'])[0];
if ( ($head_data['oCalculation']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_B2B) && ($head_data['oOrder']->isInnerEu()) ) {
if ( ($head_data['oCalculation']->getTaxMode() === wpsg_calculation::TAXMODE_B2B) && ($head_data['oOrder']->isInnerEu()) ) {
$bNoTax = true;
} else {
$bNoTax = false;
243,6 → 237,8
// Bestellnummer anzeigen
$pdf->Text($rhead_left + 155, $rhead_top + $sum_multi_offset, __("Best. Nr.", "wpsg"));
$pdf->Text($rhead_left + 155, $rhead_top + $sum_multi_offset + 6, $oOrder->getNr());
$summe = 0;
 
$bKopf = false; $pnr = 1; $offset = 0; $count = 0;
286,7 → 282,7
if ($this->get_option('wpsg_mod_rechnungen_anr') == '1') {
$pdf->Cell(10, 8, $oOrderProduct->getProduct()->getNr(), 0, 0, 'C');
$pdf->Cell(10, 8, $oOrderProduct->getProduct()->getProductNr(), 0, 0, 'C');
} else {
384,7 → 380,7
* Produktbeschreibung anzeigen Ja/Nein
*/
$pBeschreibungHeight = 0;
if ($this->get_option("wpsg_rechnungen_pbeschreibung") == "1" && trim(strip_tags($oOrderProduct->getProduct()->getShortDescription())) != '') {
if ($this->get_option("wpsg_rechnungen_pbeschreibung") == "1" && trim(strip_tags($oOrderProduct->getShortDescription())) != '') {
$produktBeschreibung = nl2br($produktBeschreibung);
preg_match_all('/\<br \/\>/', $produktBeschreibung, $treffer);
472,7 → 468,9
$pnr ++;
$count ++;
 
$summe += $p['price'] * $p['menge'];
if ($pdf->getY() > 220 || ($count >= $prod_break && sizeof($oOrder->getOrderProducts()) > ($pnr - 1))) {
AddRechnungPage($this, $pdf);
787,6 → 785,19
$pdf->setXY($prod_left + 140, $prod_top + $offset + 10 - 5);
$pdf->Cell(37, 8, wpsg_ff($arCalculation['sum']['netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
// if (sizeof($arCalculation['tax']) >= 1) {
// foreach ($arCalculation['tax'] as $k => $mw) {
// if ($k === 0) continue;
// $offset += 5;
// $pdf->Text($prod_left + 80, $prod_top + $offset + 10, __("MwSt. ", "wpsg").wpsg_ff($mw['tax_value'], '%'));
// $pdf->setXY($prod_left + 140, $prod_top + $offset + 10 - 5);
// $pdf->Cell(37, 8, wpsg_ff($mw['sum'], $this->get_option('wpsg_currency')), 0, 0, 'R');
// }
// }
if (sizeof($arCalculation['tax']) > 1) {
$offset += 5;
899,6 → 910,7
if ($this->view['preview']) {
 
//$pdf->Output($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array('multi')).$filename, 'F');
$pdf->Output();
exit;
/mods/mod_productvariants/admin_html.phtml
210,7 → 210,8
 
}
function wpsg_mod_productvariants_back() {
function wpsg_mod_productvariants_back()
{
 
var product_id = jQuery('#wpsg_mod_productvariants_product_id').val();
 
233,17 → 234,16
 
jQuery('#wpsg_mod_productvariants_dialog .modal-body').html(data);
 
if (window.wpsg_mod_productvariants) window.wpsg_mod_productvariants.updateCombinationData();
}
} );
} );
 
return false;
 
} // function wpsg_mod_productvariants_back()
 
function wpsg_mod_productvariants_show(product_id) {
function wpsg_mod_productvariants_show(product_id)
{
 
jQuery('#wpsg_mod_productvariants_dialog button').prop('disabled', true);
jQuery('#wpsg_mod_productvariants_dialog .modal-body').html('<img src="<?php echo WPSG_URL; ?>views/gfx/ajax-loader.gif" alt="<?php echo __('Bitte warten ...', 'wpsg'); ?>" />');
261,13 → 261,11
jQuery('#wpsg_mod_productvariants_dialog .modal-body').html(data);
jQuery('#wpsg_mod_productvariants_dialog button').prop('disabled', false);
 
if (window.wpsg_mod_productvariants) window.wpsg_mod_productvariants.updateCombinationData();
}
} );
} );
return false;
}
} // function wpsg_mod_productvariants_show()
 
</script>
/mods/mod_productvariants/produkt_addedit_content.phtml
1,439 → 1,33
<?php
declare(strict_types=1);
 
/**
* Template für die Verwaltung der Produktvarianten innerhalb des Produktes
* @author: Daniel Schmitzer (daschmi@daschmi.de)
* @date: 20.04.23
* @time: 11:30
*/
namespace wpsg;
 
?>
 
<?php if (!wpsg_isSizedInt($this->view['data']['id'])) { ?>
<p><?php echo __('Bitte speichern Sie das Produkt zuerst.', 'wpsg'); ?></p>
<?php } else {
/** @var \wpsg_product $oProduct */
$oProduct = \wpsg_product::getInstance(intval($this->view['data']['id']));
?>
<?php echo wpsg_drawForm_AdminboxStart(__('Produktvarianten', 'wpsg')); ?>
<?php echo $this->view['wpsg_mod_productvariants']['html']; ?>
<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&action=module&modul=wpsg_mod_productvariants"><span class="wpsg-glyphicon glyphicon glyphicon-wrench"></span><?php echo __('Zur Konfiguration der Produktvarianten', 'wpsg'); ?></a>
<?php echo wpsg_drawForm_AdminboxEnd(); ?>
 
<div id="wpsg_mod_productvars_combination">
<div v-if="loading" class="loading_layer">
<img class="loading" src="<?php echo WPSG_URL; ?>views/gfx/ajax-loader.gif" alt="<?php echo __('Bitte warten ...', 'wpsg'); ?>" />
</div>
<div class="inner">
<div class="top_filter">
<div v-for="(variant, i) of arVariationen">
<select v-model="arFilter[i]">
<option :value="0">{{getVariantLabel(i)}} [ Alle ]</option>
<option :value="parseInt(variation)" v-for="(variation, j) of variant">{{getVariantLabel(i)}} [{{getVariationLabel(variation)}}]</option>
</select>
</div>
</div>
<div v-for="(combination, i) of arPossibleKeysFiltered" class="relative">
<div class="panel panel-default">
<div class="panel-heading clearfix">
<h3 class="panel-title">
{{combination.label}}
<div class="right">
<a :href="combination.url" target="_blank" class="url" title="<?php echo __('Produktvariante im Frontend ansehen', 'wpsg'); ?>">
<span class="glyphicon glyphicon-new-window"></span>
</a>
<span v-if="combination.id > 0" class="glyphicon glyphicon-pencil" @click.prevent="edit(combination)"></span>
<span v-else class="glyphicon glyphicon-plus" @click.prevent="add(combination)"></span>
</div>
</h3>
</div>
<div class="panel-body" v-if="combination.loaded">
<div v-if="combination.loading" class="loading_layer">
<img class="loading" src="<?php echo WPSG_URL; ?>views/gfx/ajax-loader.gif" alt="<?php echo __('Bitte warten ...', 'wpsg'); ?>" />
</div>
<div class="form-group form-group-sm ">
<label class="col-sm-6 control-label" for="name">Produktname</label>
<div class="col-sm-6">
<div class="wpsg_field_wrap">
<input type="text"
@keydown.enter.prevent
class="form-control input-sm " autocomplete="off" placeholder="" v-model="combination.name" />
</div>
</div>
<div class="clearfix wpsg_clear"></div>
</div>
<div class="form-group form-group-sm ">
<label class="col-sm-6 control-label" for="detailname">Produktname (Detail)</label>
<div class="col-sm-6">
<div class="wpsg_field_wrap">
<input type="text"
@keydown.enter.prevent
class="form-control input-sm " autocomplete="off" placeholder="" v-model="combination.detailname" />
</div>
</div>
<div class="clearfix wpsg_clear"></div>
</div>
<div class="form-group form-group-sm ">
<label class="col-sm-6 control-label" for="anr">Artikelnummer</label>
<div class="col-sm-6">
<div class="wpsg_field_wrap">
<input type="text"
@keydown.enter.prevent
class="form-control input-sm" autocomplete="off" placeholder="" v-model="combination.anr" />
</div>
</div>
<div class="clearfix wpsg_clear"></div>
</div>
<!-- Productcodes -->
<template v-if="codeKeyNotSet(combination).length > 0">
<div class="form-group form-group-sm has-feedback">
<label class="col-sm-6 control-label" for="metaean">Code hinzufügen</label>
<div class="col-sm-6">
<div class="wpsg_field_wrap">
<select class="form-control input-sm" v-model="combination.add_code_key">
<option v-for="(code_key, i) of codeKeyNotSet(combination)" :value="code_key">{{combination.arProductCodes[code_key].label}}</option>
</select>
<a @click.stop.prevent="codeKeyAdd(combination)" href="#" class="glyphicon glyphicon glyphicon-plus form-control-feedback" aria-hidden="true" style="pointer-events: auto;"></a>
</div>
</div>
<div class="clearfix wpsg_clear"></div>
</div>
<hr />
</template>
<div class="code_wrap">
<template v-for="(code, i) of combination.arProductCodes">
<div class="form-group form-group-sm has-feedback" v-if="code.set === true">
<label class="col-sm-6 control-label" for="metaean">{{code.label}}</label>
<div class="col-sm-6">
<div class="wpsg_field_wrap">
<input type="text" class="form-control input-sm" v-model="code.code"
@keydown.enter.prevent
/>
<a @click.stop.prevent="codeKeyRemove(combination, code.code_key)" href="#" class="glyphicon glyphicon glyphicon-trash form-control-feedback" aria-hidden="true" style="pointer-events: auto;"></a>
</div>
</div>
<div class="clearfix wpsg_clear"></div>
</div>
</template>
</div>
<!--<pre>{{combination}}</pre>-->
<div class="mt-8 flex w-full justify-end">
<input type="submit" @click.prevent="save(combination)" class="button button-primary" value="speichern" />
</div>
</div>
</div>
</div>
</div>
</div>
<script type="module">
import { ref, createApp, onMounted, computed } from '<?php echo plugin_dir_url(__FILE__); ?>/../../../js/vue.esm-browser.js';
document.addEventListener('DOMContentLoaded', () => {
const app = createApp({
setup() {
<?php echo wpsg_drawForm_AdminboxStart(__('Produktvarianten', 'wpsg')); ?>
 
const product_id = ref(<?php echo $oProduct->getId(); ?>);
const loading = ref(true);
const arFilter = ref(undefined);
const arPossibleKeys = ref(undefined);
const arVariant = ref(undefined);
const arVariantLabel = ref(undefined);
const arVariationen = ref(undefined);
const arVariationLabel = ref(undefined);
<?php if (wpsg_isSizedInt($this->view['data']['id'])) { ?>
 
const arPossibleKeysFiltered = computed(() => {
<?php echo $this->view['wpsg_mod_productvariants']['html']; ?>
 
let r = [];
<script type="text/javascript">/* <![CDATA[ */
 
if (!arPossibleKeys.value) return r;
jQuery(document).ready(function() {
 
for (let var_key of arPossibleKeys.value) {
wpsg_mod_productvariants_show(<?php echo $this->view['data']['id']; ?>);
} );
 
const arKey = var_key.var_key.split('|');
const typedKey = {};
/* ]]> */</script>
 
for (let i of arKey) {
<?php } else { ?>
 
const [var_id, vari_id] = i.split(':');
<p><?php echo __('Bitte speichern Sie das Produkt zuerst.', 'wpsg'); ?></p>
<?php } ?>
 
typedKey[var_id] = parseInt(vari_id);
<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&action=module&modul=wpsg_mod_productvariants"><span class="wpsg-glyphicon glyphicon glyphicon-wrench"></span><?php echo __('Zur Konfiguration der Produktvarianten', 'wpsg'); ?></a>
 
}
 
let set = true;
 
for (let f in arFilter.value) {
 
if (arFilter.value[f] !== 0 && typedKey[f] !== arFilter.value[f]) {
 
set = false;
break;
 
}
 
}
 
if (set) r.push(var_key);
 
}
 
return r;
 
});
 
const getVariantLabel = (var_id) => {
 
if (arVariantLabel.value[var_id.toString()] !== undefined) return arVariantLabel.value[var_id.toString()];
else '';
 
};
const getVariationLabel = (var_id) => {
 
if (arVariationLabel.value[var_id.toString()] !== undefined) return arVariationLabel.value[var_id.toString()];
else '';
 
};
const xhr = (action_do, data, cb_success) => {
 
const request = new XMLHttpRequest();
 
data.action_do = action_do;
 
request.open('POST', '<?php echo WPSG_URL_WP; ?>wp-admin/?page=wpsg-Admin&action=module&modul=wpsg_mod_productvariants&subaction=combination&noheader=1', true);
request.setRequestHeader('Content-Type', 'application/json; charset=UTF-8');
request.onload = () => {
 
if (request.status >= 200 && request.status < 400) {
 
const response = JSON.parse(request.responseText);
 
cb_success(response);
 
} else {
 
console.error('Error: ' + request.statusText);
 
}
 
};
 
request.onerror = function () {
 
console.error('Error: ' + request.statusText);
 
};
 
request.send(JSON.stringify(data));
 
};
const save = (combination) => {
 
xhr('save', {
var_key: combination.var_key,
product_id: combination.product_id,
combination: combination
}, (response) => {
 
for (let i = 0; i < arPossibleKeys.value.length; i++) {
 
const var_key = arPossibleKeys.value[i];
 
if (var_key.var_key === response.combination.var_key) {
 
arPossibleKeys.value[i] = response.combination;
 
}
 
}
 
});
 
combination.loading = true;
 
}
const updateCombinationData = () => {
 
xhr('getCombination', {
product_id: product_id.value
}, (response) => {
 
arFilter.value = response.arFilter;
arPossibleKeys.value = response.arPossibleKeys;
arVariant.value = response.arVariant;
arVariantLabel.value = response.arVariantLabel;
arVariationen.value = response.arVariationen;
arVariationLabel.value = response.arVariationLabel;
 
loading.value = false;
 
});
 
};
const add = (combination) => {
 
combination.loaded = true;
combination.loading = true;
 
xhr('add', {
var_key: combination.var_key,
product_id: product_id.value
}, (response) => {
 
for (let i = 0; i < arPossibleKeys.value.length; i++) {
 
const var_key = arPossibleKeys.value[i];
 
if (var_key.var_key === response.combination.var_key) {
 
arPossibleKeys.value[i] = response.combination;
 
}
 
}
 
});
 
};
const edit = (combination) => {
 
combination.loaded = true;
combination.loading = true;
 
xhr('edit', {
var_key: combination.var_key,
product_id: product_id.value
}, (response) => {
 
for (let i = 0; i < arPossibleKeys.value.length; i++) {
 
const var_key = arPossibleKeys.value[i];
 
if (var_key.var_key === response.combination.var_key) {
 
arPossibleKeys.value[i] = response.combination;
 
}
 
}
 
});
 
};
const codeKeyNotSet = (combination) => {
let r = [];
for (let code_key in combination.arProductCodes) {
if (combination.arProductCodes[code_key].set !== true) r.push(code_key);
}
return r;
};
const codeKeyAdd = (combination) => {
 
const add_code_key = combination.add_code_key;
if (add_code_key !== undefined && codeKeyNotSet(combination).includes(add_code_key)) {
 
combination.arProductCodes[add_code_key].set = true;
combination.add_code_key = undefined;
 
}
};
const codeKeyRemove = (combination, code_key_remove) => {
combination.arProductCodes[code_key_remove].set = false;
}
 
onMounted(() => {
 
// updateCombinationData();
 
});
 
return {
arFilter,
arPossibleKeys,
arVariant,
arVariantLabel,
arVariationen,
arVariationLabel,
product_id,
loading,
getVariantLabel,
getVariationLabel,
codeKeyNotSet, codeKeyAdd, codeKeyRemove,
arPossibleKeysFiltered,
add,
edit,
save,
updateCombinationData
};
 
}
}).mount('#wpsg_mod_productvars_combination');
 
window.wpsg_mod_productvariants = app;
 
jQuery(document).ready(function () {
 
wpsg_mod_productvariants_show(<?php echo $this->view['data']['id']; ?>);
 
});
 
});
</script>
<style>
#wpsg_mod_productvars_combination { width:100%; position:relative; }
#wpsg_mod_productvars_combination .top_filter { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); row-gap:1rem; column-gap:1rem; margin-bottom:2rem; }
#wpsg_mod_productvars_combination .top_filter select { width:100%; }
#wpsg_mod_productvars_combination .panel-title { display:flex; justify-content:space-between; align-items:center; }
#wpsg_mod_productvars_combination .panel-title a.url { color:inherit; margin-right:1rem; display:inline-block; }
#wpsg_mod_productvars_combination .panel-title .glyphicon { cursor:pointer; }
#wpsg_mod_productvars_combination .panel { margin-bottom:10px; }
#wpsg_mod_productvars_combination .loading_layer { z-index:10; position:absolute; left:0; top:0; width:100%; height:100%; background-color:rgba(255, 255, 255, 0.5); display:flex; justify-content:center; align-items:center; }
#wpsg_mod_productvars_combination > .inner { min-height:50px; width:100%; }
#wpsg_mod_productvars_combination .flex { display:flex; }
#wpsg_mod_productvars_combination .w-full { width:100%; }
#wpsg_mod_productvars_combination .justify-end { justify-content:flex-end; }
#wpsg_mod_productvars_combination .mt-4 { margin-top:1rem; }
#wpsg_mod_productvars_combination .relative { position:relative; }
#wpsg_mod_productvars_combination .mt-8 { margin-top:2rem; }
</style>
 
<?php }
<?php echo wpsg_drawForm_AdminboxEnd(); ?>
/produkt/addedit_productcodes.phtml
File deleted
/mods/mod_downloadplus/settings_edit.phtml
45,16 → 45,13
<?php echo wpsg_drawForm_Input('wpsg_mod_downloadplus_range_bis', __('Anpassung bis Seite', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_range_bis'), array()); ?>
</div>
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_downloadplus_setpwd', __('Passwortschutz aktivieren', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_setpwd'), array('help' => 'wpsg_mod_downloadplus_setpwd')); ?>
<div class="wpsg_mod_downloadplus_setpwd_activ" style="display:none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_downloadplus_masterpass', __('Passwort (Um Schutz aufzuheben)', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_masterpass'), array('help' => 'wpsg_mod_downloadplus_masterpass')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_downloadplus_openpass', __('Passwort (Um Dokument öffnen zu können)', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_openpass'), array('help' => 'wpsg_mod_downloadplus_openpass')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_downloadplus_masterpass', __('Passwort (Um Schutz aufzuheben)', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_masterpass'), array('help' => 'wpsg_mod_downloadplus_masterpass')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_downloadplus_openpass', __('Passwort (Um Dokument öffnen zu können)', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_openpass'), array('help' => 'wpsg_mod_downloadplus_openpass')); ?>
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_downloadplus_securitysave', __('Speichern erlauben', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_securitysave'), array('label' => __('Dokumentenberechtigung', 'wpsg'))); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_downloadplus_securityprint', __('Drucken erlauben', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_securityprint')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_downloadplus_securitymod', __('Modifizieren erlauben', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_securitymod')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_downloadplus_securitynote', __('Bemerkungen erlauben', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_securitynote')); ?>
</div>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_downloadplus_securitysave', __('Speichern erlauben', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_securitysave'), array('label' => __('Dokumentenberechtigung', 'wpsg'))); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_downloadplus_securityprint', __('Drucken erlauben', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_securityprint')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_downloadplus_securitymod', __('Modifizieren erlauben', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_securitymod')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_downloadplus_securitynote', __('Bemerkungen erlauben', 'wpsg'), $this->get_option('wpsg_mod_downloadplus_securitynote')); ?>
 
<?php echo wpsg_drawForm_TextStart(); ?>
<?php echo wpsg_translate(__('Kann <a href="#1#">hier</a> konfiguriert werden.', 'wpsg'), WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Admin&subaction=emailconf#pdfdownloadcronmail'); ?>
124,13 → 121,6
 
} ).change();
 
jQuery('#wpsg_mod_downloadplus_setpwd').bind('change', function() {
 
if (jQuery(this).is(':checked')) jQuery('.wpsg_mod_downloadplus_setpwd_activ').show();
else jQuery('.wpsg_mod_downloadplus_setpwd_activ').hide();
 
} ).change();
 
} );
 
</script>
/mods/mod_orderupload/basket_after.phtml
11,7 → 11,7
<script>
 
function wpsg_mod_orderupload_upload(product_index, product_id) {
 
var files = document.getElementById('wpsg_mod_orderupload_' + product_index + '_file').files;
var formData = new FormData();
 
62,7 → 62,7
url: wpsg_ajax.ajaxurl,
data: {
action: 'wpsg_mod_orderupload_delete',
order_id: '<?php echo $_SESSION['wpsg']['order_id'] ?>',
order_id: <?php echo $_SESSION['wpsg']['order_id'] ?>,
product_index: product_index,
product_id: product_id,
file: file
/mods/mod_trustedshops/settings_edit.phtml
1,7 → 1,7
<?php
 
/**
* Template für die Einstellungen des Trusted Shops Moduls
* Tempalte für die Einstellungen des Trusted Shops Moduls
*/
?>
16,7 → 16,6
<br />
 
<div class="wpsg_mod_protectedshops">
 
<div class="wpsg_admin_box" id="wpsg_tab">
 
<ul class="nav nav-tabs" role="tablist">
25,37 → 24,35
<li role="presentation"><a href="#tab3" aria-controls="messages" role="tab" data-toggle="tab"><?php echo __('Bewertungslinks', 'wpsg'); ?></a></li>
<li role="presentation"><a href="#tab4" aria-controls="messages" role="tab" data-toggle="tab"><?php echo __('Review Collector', 'wpsg'); ?></a></li>
</ul>
 
<div class="tab-content">
 
<div id="tab1" role="tabpanel" class="tab-pane active" >
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_trustedshops_siegelcache', __('Bewertungsbild zwischenspeichern (empfohlen)', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_siegelcache'), array('help' => 'wpsg_mod_trustedshops_siegelcache')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_trustedshops_siegeltitle', __('Titel des Bewertungsbildes', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_siegeltitle'), array('help' => 'wpsg_mod_trustedshops_siegeltitle')); ?>
<?php if (wpsg_isSizedString($this->view['siegelURL'])) { ?>
<br />
<div class="wpsg_hinweis"><?php echo wpsg_translate(__('Das Trusted Shops Widget muss in einen <a href="#1#">Widgetbereich</a> eingefügt werden.', 'wpsg'), WPSG_URL_WP.'wp-admin/widgets.php'); ?></div><br />
<?php echo __('Vorschau:', 'wpsg'); ?><br />
<img class="bewertung" alt="<?php echo wpsg_hspc($this->get_option('wpsg_mod_trustedshops_siegeltitle')); ?>" border="0" src="<?php echo $this->view['siegelURL']; ?>"/>
<?php } ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_trustedshops_siegelcache', __('Bewertungsbild zwischenspeichern (empfohlen)', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_siegelcache'), array('help' => 'wpsg_mod_trustedshops_siegelcache')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_trustedshops_siegeltitle', __('Titel des Bewertungsbildes', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_siegeltitle'), array('help' => 'wpsg_mod_trustedshops_siegeltitle')); ?>
<?php if (wpsg_isSizedString($this->view['siegelURL'])) { ?>
<br />
<div class="wpsg_hinweis"><?php echo wpsg_translate(__('Das Trusted Shops Widget muss in einen <a href="#1#">Widgetbereich</a> eingefügt werden.', 'wpsg'), WPSG_URL_WP.'wp-admin/widgets.php'); ?></div><br />
<?php echo __('Vorschau:', 'wpsg'); ?><br />
<img class="bewertung" alt="<?php echo wpsg_hspc($this->get_option('wpsg_mod_trustedshops_siegeltitle')); ?>" border="0" src="<?php echo $this->view['siegelURL']; ?>"/>
<?php } ?>
</div>
<div id="tab2" role="tabpanel" class="tab-pane" >
<?php echo wpsg_drawForm_Select('wpsg_mod_trustedshops_orderdone', __('Link zur Bewertung', 'wpsg'), array(
'0' => __('Nicht anzeigen', 'wpsg'),
'1' => __('Immer anzeigen', 'wpsg'),
'2' => __('Nur anzeigen, wenn Kunde bewerten möchte', 'wpsg')
), $this->get_option('wpsg_mod_trustedshops_orderdone'), array('help' => 'wpsg_mod_trustedshops_orderdone')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_trustedshops_orderdonetitle', __('Titel des Links', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_orderdonetitle'), array('help' => 'wpsg_mod_trustedshops_orderdonetitle')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_trustedshops_orderdonelogo', __('Alternative Logo URL', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_orderdonelogo'), array('help' => 'wpsg_mod_trustedshops_orderdonelogo')); ?>
<br />
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_trustedshops_warranty', __('Trusted Shops Käuferschutz (Garantie)', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_warranty'), array('help' => 'wpsg_mod_trustedshops_warranty')); ?>
<?php echo wpsg_drawForm_Select('wpsg_mod_trustedshops_orderdone', __('Link zur Bewertung', 'wpsg'), array(
'0' => __('Nicht anzeigen', 'wpsg'),
'1' => __('Immer anzeigen', 'wpsg'),
'2' => __('Nur anzeigen, wenn Kunde bewerten möchte', 'wpsg')
), $this->get_option('wpsg_mod_trustedshops_orderdone'), array('help' => 'wpsg_mod_trustedshops_orderdone')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_trustedshops_orderdonetitle', __('Titel des Links', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_orderdonetitle'), array('help' => 'wpsg_mod_trustedshops_orderdonetitle')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_trustedshops_orderdonelogo', __('Alternative Logo URL', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_orderdonelogo'), array('help' => 'wpsg_mod_trustedshops_orderdonelogo')); ?>
<br />
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_trustedshops_warranty', __('Trusted Shops Käuferschutz (Garantie)', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_warranty'), array('help' => 'wpsg_mod_trustedshops_warranty')); ?>
</div>
<div id="tab3" role="tabpanel" class="tab-pane" >
70,6 → 67,8
<br />
<?php if ($this->hasMod('wpsg_mod_rechnungen')) { ?>
<br />
<?php echo wpsg_drawForm_Select('wpsg_mod_trustedshops_invoicemail', __('Link zur Bewertung in Rechnungsmail', 'wpsg'), array(
'0' => __('Nicht anzeigen', 'wpsg'),
'1' => __('Immer anzeigen', 'wpsg'),
76,6 → 75,7
'2' => __('Nur anzeigen, wenn Kunde bewerten möchte', 'wpsg')
), $this->get_option('wpsg_mod_trustedshops_invoicemail'), array('help' => 'wpsg_mod_trustedshops_invoicemail')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_trustedshops_invoicemailtitle', __('Text des Links', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_invoicemailtitle'), array('help' => 'wpsg_mod_trustedshops_invoicemailtitle')); ?>
<?php } ?>
</div>
82,61 → 82,85
<div id="tab4" role="tabpanel" class="tab-pane" >
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_trustedshops_reminder', __('Erinnerung', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_reminder'), array('help' => 'wpsg_mod_trustedshops_reminder')); ?>
<div id="wpsg_mod_trustedshops_reminder_layer" style="display:none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_trustedshops_reminderDays', __('Zeitspanne zum versenden der Erinnerunsmail in Tagen', 'wpsg'), $this->get_option('wpsg_mod_trustedshops_reminderDays'), array('help' => 'wpsg_mod_trustedshops_reminderDays')); ?>
</div>
 
<br />
 
<?php echo wpsg_drawForm_Link('wpsg_mod_trustedshops_link', __('Auslöser bei Statuswechsel', 'wpsg'),
__('Bearbeiten', 'wpsg'), array('help' => 'wpsg_mod_trustedshops_link', 'class' => 'wpsg_mod_trustedshops_state')); ?>
 
<div class="wpsg_mod_trustedshops_reminderstate_layer" style="display:none;">
 
<?php foreach ($this->arStatus as $state_id => $state_label) { ?>
<?php echo wpsg_drawForm_TextStart(); ?>
<input type="hidden" name="wpsg_mod_trustedshops_reminder" value="0">
<input id="wpsg_mod_trustedshops_reminder" type="checkbox" class="checkbox" <?php echo ((wpsg_isSizedInt($this->get_option('wpsg_mod_trustedshops_reminder')))?'checked="checked"':''); ?> tabindex="14" name="wpsg_mod_trustedshops_reminder" value="1">
<div id="wpsg_mod_trustedshops_reminder_layer" class="wpsg_form_trustedshops_reminderDays">
<p><?php echo __('Nach', 'wpsg'); ?></p>
<input id="wpsg_mod_trustedshops_reminderDays" type="text" class="text" tabindex="15" name="wpsg_mod_trustedshops_reminderDays" value="<?php echo $this->get_option('wpsg_mod_trustedshops_reminderDays'); ?>">
<p><?php echo __('Tagen', 'wpsg'); ?></p>
</div>
<?php echo wpsg_drawForm_TextEnd(__('Erinnerung', 'wpsg'), array('noP' => true)); ?>
<?php echo wpsg_drawForm_TextStart(); ?>
<?php foreach ($this->arStatus as $state_id => $state_label) { ?>
<?php
$arr1 = $this->get_option('wpsg_mod_trustedshops_state');
$chk = ((in_array($state_id, (array)$this->get_option('wpsg_mod_trustedshops_state')))?1:0);
echo wpsg_drawForm_Checkbox('wpsg_mod_trustedshops_state[]', __($state_label, 'wpsg'),
$chk, array('help1' => 'wpsg_shippay_mwstland', 'value' => wpsg_hspc($state_id), 'labelright' => true));
$arr1 = $this->get_option('wpsg_mod_trustedshops_state');
$chk = ((in_array($state_id, (array)$this->get_option('wpsg_mod_trustedshops_state')))?1:0);
echo wpsg_drawForm_Checkbox('wpsg_mod_trustedshops_state[]', __($state_label, 'wpsg'),
$chk, array('help1' => 'wpsg_shippay_mwstland',
'value' => wpsg_hspc($state_id),
'noHidden' => true,
'fullWidth' => true
));
?>
<?php } ?>
<br />
<?php } ?>
 
<?php echo wpsg_drawForm_TextEnd(__('Bestellzustände', 'wpsg'), array('noP' => true)); ?>
 
<?php echo wpsg_drawForm_Input('', __('Letzter Export', 'wpsg'), $this->view['lastExport'], array('text' => true)); ?>
<br />
 
</div>
<?php echo wpsg_drawForm_Input('', __('Letzter Export', 'wpsg'), $this->view['lastExport'], array('text' => true)); ?>
<br />
<div class="wpsg_form_field">
<div class="wpsg_form_left">&nbsp;</div>
<div class="wpsg_form_right wpsg_form_right_unit">
<?php $temp = $this->callMod('wpsg_mod_trustedshops', 'getExportData');
if (wpsg_isSizedArray($temp)) { ?>
<a target="_blank" onclick="location.href=location.href;" href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&action=module&modul=wpsg_mod_trustedshops&do=export&noheader=1" class="button"><?php echo __('CSV-Export-Datei erstellen', 'wpsg'); ?></a>
<?php } else { ?>
<p><?php echo __('Derzeit keine Daten zum Export verfügbar.', 'wpsg'); ?></p>
<?php } ?>
<div class="wpsg_form_field">
<div class="wpsg_form_left">&nbsp;</div>
<div class="wpsg_form_right wpsg_form_right_unit">
<?php $temp = $this->callMod('wpsg_mod_trustedshops', 'getExportData');
if (wpsg_isSizedArray($temp)) { ?>
<a target="_blank" onclick="location.href=location.href;" href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&action=module&modul=wpsg_mod_trustedshops&do=export&noheader=1" class="button"><?php echo __('CSV-Export-Datei erstellen', 'wpsg'); ?></a>
<?php } else { ?>
<p><?php echo __('Derzeit keine Daten zum Export verfügbar.', 'wpsg'); ?></p>
<?php } ?>
</div>
<div class="wpsg_clear"></div>
</div>
<div class="wpsg_clear"></div>
</div>
<br />
<a href="https://www.trustedshops.com/tsb2b/sa/ratings/batchRatingRequest.seam"><?php echo __('Trusted Shops Review Collector', 'wpsg'); ?></a>
</div>
<br />
<a href="https://www.trustedshops.com/tsb2b/sa/ratings/batchRatingRequest.seam"><?php echo __('Trusted Shops Review Collector', 'wpsg'); ?></a>
</div>
 
</div>
 
</div>
 
<script type="text/javascript">/* <![CDATA[ */
 
jQuery(document).ready(function() {
 
jQuery('#wpsg_mod_trustedshops_reminder').bind('change', function() {
 
if (jQuery('#wpsg_mod_trustedshops_reminder').is(':checked'))
{
 
jQuery('#wpsg_mod_trustedshops_reminder_layer').show(250);
}
else
{
 
jQuery('#wpsg_mod_trustedshops_reminder_layer').hide(250);
}
} ).change();
jQuery('#wpsg_tab').wpsg_tab( {
'cookiename': 'wpsg_trustedshop_tab',
161,41 → 185,7
}
} ).change();
 
jQuery('.wpsg_mod_trustedshops_state').bind('click', function() {
 
jQuery('.wpsg_mod_trustedshops_reminderstate_layer').toggle();
 
if (jQuery('.wpsg_mod_trustedshops_reminderstate_layer').is(':visible')) jQuery(this).html('<?php echo __('Ausblenden', 'wpsg'); ?>');
else jQuery(this).html('<?php echo __('Bearbeiten', 'wpsg'); ?>');
 
return false;
 
} );
} );
 
document.addEventListener("DOMContentLoaded", function() {
 
var reminderCheckbox = document.getElementById('wpsg_mod_trustedshops_reminder');
var reminderDiv = document.getElementById('wpsg_mod_trustedshops_reminder_layer');
function toggleDivVisibility(checkbox, div)
{
 
if (checkbox.checked) div.style.display = "block";
else div.style.display = "none";
 
}
 
// Event Listener für die Checkboxen
reminderCheckbox.addEventListener("change", function() {
toggleDivVisibility(reminderCheckbox, reminderDiv);
});
 
// Überprüfen und Initialisieren des Anfangszustands der Checkboxen
toggleDivVisibility(reminderCheckbox, reminderDiv);
 
});
 
/* ]]> */</script>
/mods/mod_shippingadress/wpsg_order_view_customerdata.phtml
44,21 → 44,21
<div class="modal-body">
 
<div id="shipping_dialog_content">
<?php echo wpsg_drawForm_Input('dialog_shipping_firma', __('Firma', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_firma']??''); ?>
<?php echo wpsg_drawForm_Select('dialog_shipping_title', __('Anrede', 'wpsg'), $this->view['arTitles'], $this->view['wpsg_mod_shippingadress']['shipping_title']??'', array('noIndex' => true)); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_vname', __('Vorname', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_vname']??''); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_name', __('Name', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_name']??''); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_strasse', __('Straße', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_strasse']??''); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_firma', __('Firma', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_firma']); ?>
<?php echo wpsg_drawForm_Select('dialog_shipping_title', __('Anrede', 'wpsg'), $this->view['arTitles'], $this->view['wpsg_mod_shippingadress']['shipping_title'], array('noIndex' => true)); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_vname', __('Vorname', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_vname']); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_name', __('Name', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_name']); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_strasse', __('Straße', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_strasse']); ?>
<?php if (wpsg_getStr($this->view['pflicht']['wpsg_showNr']) === '1') { ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_nr', __('Hausnummer', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_nr']??''); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_nr', __('Hausnummer', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_nr']); ?>
<?php } ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_plz', __('Postleitzahl', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_plz']??''); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_ort', __('Ort', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_ort']??''); ?>
<?php echo wpsg_drawForm_Select('dialog_shipping_land', __('Land', 'wpsg'), $this->view['arCountry'], $this->view['wpsg_mod_shippingadress']['shipping_land']??''); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_plz', __('Postleitzahl', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_plz']); ?>
<?php echo wpsg_drawForm_Input('dialog_shipping_ort', __('Ort', 'wpsg'), $this->view['wpsg_mod_shippingadress']['shipping_ort']); ?>
<?php echo wpsg_drawForm_Select('dialog_shipping_land', __('Land', 'wpsg'), $this->view['arCountry'], $this->view['wpsg_mod_shippingadress']['shipping_land']); ?>
<br />
/mods/mod_deliverynote/order_view_row.phtml
8,7 → 8,7
<tr class="wpsg_<?php echo (($this->view['wpsg_mod_deliverynote']['i'] == 0)?'odd':'even'); ?>">
<td align="left" colspan="<?php echo ((sizeof($this->view['arCalculation']['tax']) > 1 || $this->get_option('wpsg_showMwstAlways') == '1')?'5':'4'); ?>">
<label style="font-weight:normal; display:flex; flex-direction:row; margin-bottom:0px;">
<input checked="checked" type="checkbox" class="wpsg_mod_deliverynote_product_i" name="wpsg_mod_deliverynote_products[]" value="<?php echo $this->view['wpsg_mod_deliverynote']['product']['product_index']; ?>" style="margin:0px; margin-right:5px;" />
<input checked="checked" type="checkbox" class="wpsg_mod_deliverynote_product" name="wpsg_mod_deliverynote_products[]" value="<?php echo $this->view['wpsg_mod_deliverynote']['product']['product_index']; ?>" style="margin:0px; margin-right:5px;" />
<span>&nbsp;<?php echo __('Auf Lieferschein', 'wpsg'); ?></span>
</label>
</td>
/mods/mod_export/profil.phtml
66,16 → 66,6
</div>
<?php } ?>
 
<?php if ($this->view['profil']['export_type'] === wpsg_mod_export::TYPE_PRODUCT) { ?>
 
<div class="wpsg_mod_export_format wpsg_mod_export_format_<?php echo wpsg_mod_export::FORMAT_CSV; ?>" style="display:<?php echo (($this->view['profil']['format'] == wpsg_mod_export::FORMAT_CSV)?'block':'none'); ?>">
<?php echo wpsg_drawForm_Checkbox('csv_pvariants_separated', __('Produkte variantengetrennt exportieren', 'wpsg'), $this->view['profil']['csv_pvariants_separated'], array('label' => __('Optionen', 'wpsg'), 'help' =>'wpsg_csv_pvariants_separated', 'inlineEdit' => true, 'inlineEdit_url' => $inlineEdit_url)); ?>
</div>
 
<?php } ?>
<div class="wpsg_mod_export_format wpsg_mod_export_format_<?php echo wpsg_mod_export::FORMAT_CSV; ?>" style="display:<?php echo (($this->view['profil']['format'] == wpsg_mod_export::FORMAT_CSV)?'block':'none'); ?>">
82,7 → 72,7
<?php echo wpsg_drawForm_Checkbox('csv_fieldnames', __('Spaltennamen in erster Zeile', 'wpsg'), $this->view['profil']['csv_fieldnames'], array('inlineEdit' => true, 'inlineEdit_url' => $inlineEdit_url)); ?>
</div>
 
</div>
<div id="tab2" role="tabpanel" class="tab-pane">
99,33 → 89,10
<?php echo wpsg_drawForm_Text(__('Pfad', 'wpsg'), $this->view['profil']['cron_path'], 'cron_path', array('inlineEdit' => true, 'inlineEdit_url' => $inlineEdit_url)); ?>
<?php echo wpsg_drawForm_Text(__('Letzte Ausführung', 'wpsg'), (($this->view['profil']['cron_lastrun'] == '0000-00-00')?__('Noch nie', 'wpsg'):wpsg_formatTimestamp($this->view['profil']['cron_lastrun'], true)), false, array('noP' => false)); ?>
<fieldset id="wpsg_mod_export_cron_url" style="display:<?php echo (($this->view['profil']['cron_interval'] !== wpsg_mod_export::CRON_ORDER)?'block':'none'); ?>;">
<?php echo wpsg_drawForm_Text(__('Cron URL', 'wpsg'), '<a href="'.site_url().'/?wpsg_cron=1">'.site_url().'/?wpsg_cron=1</a>', false, array('noP' => false)); ?>
</fieldset>
 
<?php echo wpsg_drawForm_Checkbox('wp_cron', __('Stündlich mit Wordpress Cron ausführen', 'wpsg'), ($this->view['profil']['wp_cron']??'0') === '1'); ?>
 
<script>
 
document.getElementById('wp_cron').addEventListener('change', (event) => {
 
jQuery.ajax({
url: '<?php echo $inlineEdit_url; ?>',
data: {
name: 'wp_cron',
value: ((event.target.checked === true)?'1':'0')
}
})
 
// console.log('<?php echo $inlineEdit_url; ?>');
 
});
 
</script>
 
<?php echo wpsg_drawForm_Text(__('Cron URL', 'wpsg'), '<a href="'.site_url().'/?wpsg_cron=1">'.site_url().'/?wpsg_cron=1</a>', false, array('noP' => false)); ?>
<?php if ($this->view['profil']['export_type'] === wpsg_mod_export::TYPE_ORDER) { ?>
<fieldset id="wpsg_mod_export_orderfilter" style="display:<?php echo (($this->view['profil']['cron_interval'] !== wpsg_mod_export::CRON_ORDER)?'block':'none'); ?>;">
<fieldset id="wpsg_mod_export_orderfilter">
<legend><div class="col-sm-offset-6"><?php echo __('Bestellfilter', 'wpsg'); ?></div></legend>
138,7 → 105,7
<?php echo wpsg_drawForm_Text(__('Bestellstatus', 'wpsg'), $arOrderStatus[wpsg_getStr($this->view['profil']['orderfilter']['status'], '-1')], 'orderfilter_status', array('inlineEdit' => true, 'inlineEdit_type' => 'select', 'inlineEdit_url' => $inlineEdit_url, 'inlineEdit_source' => $arOrderStatus)); ?>
<?php $arMonth = array('-1' => __('Alle', 'wpsg')); ?>
<?php for ($i = 1; $i <= 12; $i ++) { $arMonth[str_pad($i, 2, '0', STR_PAD_LEFT)] = wpsg_strftime("%B", mktime(0, 0, 0, $i, 1, 2000)); } ?>
<?php for ($i = 1; $i <= 12; $i ++) { $arMonth[str_pad($i, 2, '0', STR_PAD_LEFT)] = strftime("%B", mktime(0, 0, 0, $i, 1, 2000)); } ?>
<?php $arYearCdate = array('-1' => __('Alle', 'wpsg')); ?>
<?php foreach ($this->view['cdate_years'] as $y) { $arYearCdate[$y] = $y; } ?>
232,9 → 199,7
<?php if ($this->hasMod('wpsg_mod_produktartikel')) { $temp = $this->callMod('wpsg_mod_produktartikel', 'getProductcategorySelect', array()); ?>
<?php $arProductCategorySelect = array(); foreach ($temp as $k => $v) $arProductCategorySelect[$v['term_id']] = $v['label']; ?>
<?php $productCategoryIds = wpsg_getStr($this->view['profil']['orderfilter']['productcategory_ids'], '-1'); ?>
<?php $selectedCategory = $arProductCategorySelect['-1'] ?? ''; ?>
<?php echo wpsg_drawForm_Text(__('Produktkategorie', 'wpsg'), $arProductCategorySelect[$productCategoryIds], 'orderfilter_productcategory_ids', array('inlineEdit' => true, 'inlineEdit_type' => 'select', 'inlineEdit_url' => $inlineEdit_url, 'inlineEdit_source' => $arProductCategorySelect)); ?>
<?php echo wpsg_drawForm_Text(__('Produktkategorie', 'wpsg'), $arProductCategorySelect[wpsg_getStr($this->view['profil']['orderfilter']['productcategory_ids'], '-1')], 'orderfilter_productcategory_ids', array('inlineEdit' => true, 'inlineEdit_type' => 'select', 'inlineEdit_url' => $inlineEdit_url, 'inlineEdit_source' => $arProductCategorySelect)); ?>
<?php } ?>
</form>
268,20 → 233,9
 
<script type="text/javascript">/* <![CDATA[ */
 
function switchCronType(response, newValue) {
if (parseInt(newValue) === parseInt("<?php echo wpsg_mod_export::CRON_ORDER; ?>")) {
jQuery('#wpsg_mod_export_cron_url').hide();
jQuery('#wpsg_mod_export_orderfilter').hide();
} else {
jQuery('#wpsg_mod_export_cron_url').show();
jQuery('#wpsg_mod_export_orderfilter').show();
}
function switchCronType(response, newValue)
{
if (newValue != "0") jQuery('.cron_interval_1').show();
else jQuery('.cron_interval_1').hide();
/mods/mod_printshop/producttemplate.phtml
66,7 → 66,7
<?php /* URL für die Lightbox */ ?>
<?php $att = wp_get_attachment_image_src($arAttachmentIDsAll[$i], array(800, 600), false); ?>
<a <?php if ($arAttachmentIDsAll[$i] != $arAttachmentID) echo 'style="display:none;"'; ?> data-fslightbox="<?php echo $this->getTemplateIndex(); ?>" title="<?php echo $this->getProductName($this->view['data']['id']); ?>" href="<?php echo $att[0]; ?>">
<a <?php if ($arAttachmentIDsAll[$i] != $arAttachmentID) echo 'style="display:none;"'; ?> rel="gallery-wpsg-<?php echo $this->getTemplateIndex(); ?>" title="<?php echo $this->getProductName($this->view['data']['id']); ?>" href="<?php echo $att[0]; ?>" class="thickbox">
 
<?php echo wp_get_attachment_image($arAttachmentIDsAll[$i], array(300, 300), false, array()); ?>
83,24 → 83,14
<?php if ($this->get_option('wpsg_showArticelnumber') == '1') { ?>
<div class="wpsg_artikelnummer">
<?php echo __('Artikelnummer', 'wpsg'); ?>: <span class="wpsg_anr"><?php echo wpsg_hspc($this->view['data']['anr']); ?></span><br />
</div>
<?php } ?>
<?php $arProductCodes = $oProduct->getAllProductCodes(); ?>
<?php if (sizeof($arProductCodes) > 0) { ?>
<div class="product_code_wrap">
<?php foreach ($arProductCodes as $product_code) { ?>
<?php if ($product_code !== null) { ?>
<div class="product_code <?php echo $product_code['code_key']; ?>">
<span class="label"><?php echo $product_code['label']; ?></span>: <span class="code"><?php echo $product_code['code']; ?></span>
</div>
<?php } ?>
<?php if (wpsg_isSizedInt($this->get_option('wpsg_mod_produktartikel_ean'))) {?>
<?php echo __('EAN','wpsg');?>:<span class="wpsg_ean"><?php echo wpsg_hspc($this->view['data']['ean']); ?></span><br />
<?php } ?>
</div>
<?php if (wpsg_isSizedInt($this->get_option('wpsg_mod_produktartikel_gtin'))) {?>
<?php echo __('GTIN','wpsg');?>:<span class="wpsg_gtin"><?php echo wpsg_hspc($this->view['data']['gtin']); ?></span><br />
<?php }?></div>
<?php } ?>
 
<?php /* Abfrage Preisanzeige nur für eingeloggte User aktiv und User eingeloggt START*/ ?>
<?php if ($this->view['oProduct']->canDisplayPrice()) { ?>
 
/mods/mod_rechnungen/invoice_pdf.phtml
6,13 → 6,11
require_once WPSG_PATH_LIB.'FPDF_1.81/fpdf.php';
require_once WPSG_PATH_LIB.'FPDI_2.2.0/autoload.php';
require_once WPSG_PATH_LIB.'wpsg_fpdf.class.php';
global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top;
 
/** @var \wpsg\wpsg_invoice|null $oInvoice */
$oInvoice = $this->view['oInvoice']??null;
 
// Positionierung der Absenderadresszeile
$absender_left = 25;
$absender_top = 50;
34,8 → 32,16
$arCalculation = $this->view['basket']['arCalculation'];
if ($this->getFrontendTaxView() === WPSG_NETTO) $taxdisplay = 'netto';
else $taxdisplay = 'brutto';
// Damit die Steuer bei der Kleinunternehmerregelung nicht angezeigt wird leer ich den Array sicherheitshalber
if ( ($this->get_option('wpsg_kleinunternehmer') == '1') || ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_SMALLBUSINESS) ) unset($this->view['basket']['mwst']);
if ($this->get_option('wpsg_kleinunternehmer') == '1')
{
unset($this->view['basket']['mwst']);
}
if (!function_exists('AddRechnungPage'))
{
46,23 → 52,24
global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top;
$pdf->AddPage();
 
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.pdf")) {
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf")) {
$pdf->setSourceFile($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.pdf");
$pdf->setSourceFile($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf");
$tplidx = $pdf->importPage(1, '/MediaBox');
$pdf->useTemplate($tplidx, 0, 0, 210);
} else if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.jpg")) {
} else if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg")) {
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.jpg", 0, 0, 210, 297, 'jpg');
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg", 0, 0, 210, 297, 'jpg');
}
 
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_logo.jpg"))
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg"))
{
list($width, $height, $type, $attr) = getimagesize($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_logo.jpg");
list($width, $height, $type, $attr) = getimagesize($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg");
// Umrechnung von Inch zu Pixel
$wPix = (25.4 * (int)$width) / 96;
89,7 → 96,7
if(isset($logo_pos) && $logo_pos === "right") { $abscissa = $rightPos; }
$pdf->SetAlpha($alpha);
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_logo.jpg", $abscissa, $ordinate, $wPix, $hPix);
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg", $abscissa, $ordinate, $wPix, $hPix);
$pdf->SetAlpha(1);
}
96,18 → 103,18
// Absenderadresszeile (Wird in der Konfiguration hinterlegt)
$pdf->SetFont('Arial', '', 6);
$pdf->Text($absender_left, $absender_top, $shop->replaceUniversalPlatzhalter(__($shop->get_option("wpsg_rechnungen_adresszeile"), 'wpsg'), $shop->view['data']['id']??0));
$pdf->Text($absender_left, $absender_top, $shop->replaceUniversalPlatzhalter(__($shop->get_option("wpsg_rechnungen_adresszeile"), 'wpsg'), $shop->view['data']['id']));
if (wpsg_getStr($shop->view['kunde']['kuerzel']) != "") $shop->view['kunde']['kuerzel'] = $shop->view['kunde']['kuerzel'].'-';
// Adresse des Kunden
$pdf->SetFont('Arial', '', 12);
$pdf->Text($adress_left, $adress_top, $shop->view['kunde']['firma']??'');
$pdf->Text($adress_left, $adress_top + 5, ($shop->view['kunde']['vname']??'').' '.($shop->view['kunde']['name']??''));
$pdf->Text($adress_left, $adress_top + 10, ($shop->view['kunde']['strasse']??'').' '.($shop->view['kunde']['nr']??''));
$pdf->Text($adress_left, $adress_top + 15, ($shop->view['kunde']['plz']??'').' '.($shop->view['kunde']['ort']??''));
 
if ($shop->get_option("wpsg_mod_rechnungen_hideCountry") == '0') $pdf->Text($adress_left, $adress_top + 20, strtoupper($shop->view['oOrder']->getInvoiceCountryName()));
$pdf->Text($adress_left, $adress_top, $shop->view['kunde']['firma']);
$pdf->Text($adress_left, $adress_top + 5, $shop->view['kunde']['vname'].' '.$shop->view['kunde']['name']);
$pdf->Text($adress_left, $adress_top + 10, $shop->view['kunde']['strasse'].' '.wpsg_getStr($shop->view['kunde']['nr']));
$pdf->Text($adress_left, $adress_top + 15, $shop->view['kunde']['plz'].' '.$shop->view['kunde']['ort']);
if ($shop->get_option("wpsg_mod_rechnungen_hideCountry") == '0')
$pdf->Text($adress_left, $adress_top + 20, strtoupper($shop->view['oOrder']->getInvoiceCountryName()));
// Rechnungsdaten
$pdf->SetFont('Arial', 'B', 16);
120,7 → 127,7
{
$pdf->Text($rdata_left + 35, $rdata_top, __("Fällig am", "wpsg"));
$pdf->Text($rdata_left + 35, $rdata_top + 6, date("d.m.Y", strtotime($shop->view['faelligkeitdatum'])));
$pdf->Text($rdata_left + 35, $rdata_top + 6, $shop->view['faelligkeitdatum']);
}
139,7 → 146,7
$pdf->Text($rdata_left + 135, $rdata_top + 6, ((trim($shop->view['data']['onr']) != '')?$shop->view['data']['onr']:$shop->view['data']['id']));
$pdf->Text($rdata_left + 155, $rdata_top, __("Datum", "wpsg"));
$pdf->Text($rdata_left + 155, $rdata_top + 6, date("d.m.Y", strtotime($shop->view['rDatum'])));
$pdf->Text($rdata_left + 155, $rdata_top + 6, $shop->view['rDatum']);
if ($shop->view['oOrder']->isInnerEu())
{
174,64 → 181,26
$pdf = new wpsg_fpdf();
$pdf->SetAutoPageBreak(true, 5);
AddRechnungPage($this, $pdf);
 
if ($this->get_option('wpsg_deliverycountrytax') === '1') {
$value = false;
$kl = $this->view['kunde']['land'];
if ( ($kl['mwst_a']) && ($kl['mwst_b']) && ($kl['mwst_c']) && ($kl['mwst_d']) == 0.0000 ) $value = true;
$deliverycountrytax = $value;
}
 
if (
( ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_B2B) && ( $this->view['oOrder']->isInnerEu() || $deliverycountrytax ) )
||
( $this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_SMALLBUSINESS )
) $bNoTax = true;
else $bNoTax = false;
 
$bTaxCol = false;
if ($this->get_option('wpsg_showMwstAlways') === '1') $bTaxCol = true;
else if (!$bNoTax) $bTaxCol = true;
 
if ($bNoTax) {
 
$discount_value = abs($this->view['basket']['arCalculation']['sum']['discount_netto']);
$shipping_cost = $this->view['basket']['arCalculation']['sum']['shipping_netto'];
$payment_cost = $this->view['basket']['arCalculation']['sum']['payment_netto'];
 
$taxdisplay = 'netto';
 
} else {
 
$discount_value = abs($this->view['basket']['arCalculation']['sum']['discount_brutto']);
$shipping_cost = $this->view['basket']['arCalculation']['sum']['shipping_brutto'];
$payment_cost = $this->view['basket']['arCalculation']['sum']['payment_brutto'];
 
$taxdisplay = 'brutto';
 
}
 
$summe = 0;
 
$bKopf = false; $pnr = 1; $offset = 0; $count = 0;
foreach ($this->view['basket']['arCalculation']['product'] as $p)
foreach ($this->view['basket']['produkte'] as $p)
{
$product = wpsg_product::getInstance($p['product_id']);
if (($p['product_key']??'') !== '') $product->setProductKey($p['product_key']);
 
if (!$bKopf)
{
 
$pdf->SetFont('Arial', 'B', 9);
$pdf->setXY($prod_left, $prod_top);
$pdf->Cell(10, 8, __("Nr.", "wpsg"), 1, 0, 'C');
$pdf->setXY($prod_left + 10, $prod_top);
$pdf->Cell( (($bTaxCol)?87:102), 8, "Name", 1, 0, 'L');
if(is_array($this->view['basket']['mwst'])) {
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, "Name", 1, 0, 'L');
}
 
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$pdf->setXY($prod_left + 97, $prod_top);
256,18 → 225,35
$pdf->SetFont('Arial', '', 9);
$pdf->setXY($prod_left, $prod_top + $offset);
if ($this->get_option('wpsg_mod_rechnungen_anr') == '1') $pdf->Cell(10, 8, $product->getNr(), 0, 0, 'C');
else $pdf->Cell(10, 8, $pnr.".", 0, 0, 'C');
if ($this->get_option('wpsg_mod_rechnungen_anr') == '1')
{
$pdf->Cell(10, 8, $p['anr'], 0, 0, 'C');
}
else
{
$pdf->Cell(10, 8, $pnr.".", 0, 0, 'C');
}
if ($this->get_option('wpsg_rechnungen_pdetailname') == '1') $produkt_text = $product->getProductName(true);
else $produkt_text = $product->getProductName(false);
if ($this->get_option('wpsg_rechnungen_pdetailname' == '1')) {
 
$produktBeschreibung = trim(strip_tags($product->getShortDescription()));
$produkt_text = $this->getProductName($this->getProduktID($p['id']), true);
 
} else {
 
$produkt_text = $this->getProductName($this->getProduktID($p['id']), false);
 
}
 
$produktBeschreibung = trim(strip_tags($p['beschreibung']));
if ($this->isOtherLang())
{
$trans_db = $this->db->fetchRow("SELECT * FROM `".WPSG_TBL_PRODUCTS."` WHERE `lang_parent` = '".wpsg_q($this->getProduktID($p['product_id']))."' AND `lang_code` = '".wpsg_q($this->getCurrentLanguageCode())."'");
$trans_db = $this->db->fetchRow("SELECT * FROM `".WPSG_TBL_PRODUCTS."` WHERE `lang_parent` = '".wpsg_q($this->getProduktID($p['id']))."' AND `lang_code` = '".wpsg_q($this->getCurrentLanguageCode())."'");
if (is_array($trans_db) && sizeof($trans_db) > 0)
{
283,12 → 269,12
$pdf->setXY($prod_left + 10, $prod_top + $offset);
// Produktvariablen
// Produktvariablen
if ($this->hasMod('wpsg_mod_productvars') && $this->get_option("wpsg_mod_rechnungen_showpv") == "1")
{
 
$arPV = $this->callMod('wpsg_mod_productvars', 'getAllProductVarValues', array($this->view['data']['id'], $p['product_index']));
 
if (wpsg_isSizedArray($arPV))
{
307,13 → 293,16
if ($this->get_option('wpsg_mod_rechnungen_anr') === '2')
{
$anr = $this->getProductAnr($product->getProductKey());
$anr = $this->getProductAnr($p['productkey']);
$produkt_text .= "\r\n".wpsg_translate(__('Artikelnummer: #1#', 'wpsg'), $anr);
}
$produkt_text_cell_width = 102;
if ($bTaxCol) $produkt_text_cell_width = 87;
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$produkt_text_cell_width = 87;
}
$produkt_text_width = $pdf->GetStringWidth($produkt_text);
//$produkt_text_cell_width = (($this->arMwSt == "-1")?87:102);
326,32 → 315,39
//$height += 3 + 5 + $pdf->getY() - $height_y;
//$pdf->Cell((($this->arMwSt == "-1")?102:87), 8, $produkt_text, 0, 0, 'L');
if ($bTaxCol) {
 
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1') {
$pdf->setXY($prod_left + 97, $prod_top + $offset);
$pdf->Cell(15, 8, (($bNoTax)?'0.00 %':wpsg_ff($this->view['basket']['arCalculation']['tax'][$p['tax_key']]['tax_value'], '%')), 0, 0, 'C');
$pdf->Cell(15, 8, (($this->view['basket']['noMwSt'] == '1')?'0.00 %':wpsg_ff($p['mwst_value'], '%')), 0, 0, 'C');
 
}
$pdf->setXY($prod_left + 112, $prod_top + $offset);
$pdf->Cell(15, 8, $p['amount'], 0, 0, 'C');
$pdf->Cell(15, 8, $p['menge'], 0, 0, 'C');
if ( ( wpsg_ShopController::get_option('wpsg_preisangaben') == WPSG_NETTO ) || $bNoTax ) $preis_single = $p['netto_calculated_single'];
else $preis_single = $p['brutto_calculated_single'];
if (wpsg_ShopController::get_option('wpsg_preisangaben') == WPSG_NETTO) {
$preis = $p['preis_netto'];
} else {
$preis = $p['preis_brutto'];
}
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($preis_single, $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($preis, $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($preis_single * $p['amount'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($preis * $p['menge'], $this->get_option('wpsg_currency')), 0, 0, 'R');
/**
* Produktbeschreibung anzeigen Ja/Nein
*/
$pBeschreibungHeight = 0;
if ($this->get_option("wpsg_rechnungen_pbeschreibung") == "1" && trim(strip_tags($product->getShortDescription())) != '')
if ($this->get_option("wpsg_rechnungen_pbeschreibung") == "1" && trim(strip_tags($p['beschreibung'])) != '')
{
 
$produktBeschreibung = nl2br($produktBeschreibung);
preg_match_all('/\<br \/\>/', $produktBeschreibung, $treffer);
$produktBeschreibung = strip_tags($produktBeschreibung);
376,12 → 372,11
if ($this->get_option('wpsg_rechnungen_produktattribute') == '1')
{
$attributeInfo = $this->callMod('wpsg_mod_produktattribute', 'getProductAttributeByProductId', array($this->getProduktId($p['product_id'])));
$attributeInfo = $this->callMod('wpsg_mod_produktattribute', 'getProductAttributeByProductId', array($this->getProduktId($p['id'])));
foreach ($attributeInfo as $pa)
{
if ($pa['value'] == "") $pa['value'] = "Keine Angabe";
$pa_text = $pa['name'].': '.$pa['value'];
$height += $pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $height + $offset - 0.5, 5, $pa_text, 0, 'L', 0, $produkt_text_cell_width);
391,10 → 386,10
/**
* Variante ?
*/
if (preg_match('/pv_(.*)/', $p['product_key']))
if (preg_match('/pv_(.*)/', $p['productkey']))
{
$variInfo = $this->callMod('wpsg_mod_productvariants', 'getVariantenInfoArray', array($p['product_key']));
$variInfo = $this->callMod('wpsg_mod_productvariants', 'getVariantenInfoArray', array($p['productkey']));
$height += $pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $height + $offset - 0.5, 5, wpsg_translate(__('Variante: #1#', 'wpsg'), $variInfo['key']), 0, 'L', 0, $produkt_text_cell_width);
402,7 → 397,7
}
if ($this->hasMod('wpsg_mod_deliverynote') && ($this->get_option('wpsg_rechnungen_deliverynote') == '1'))
if ($this->hasMod('wpsg_mod_deliverynote'))
{
$arDN_order = $this->callMod('wpsg_mod_deliverynote', 'loadDeliveryNotesFromOrder', array($this->view['data']['id']));
426,9 → 421,14
// Jetzt die Rahmen zeichnen
$pdf->Rect($prod_left, $prod_top + $offset, 10, $height);
$pdf->Rect($prod_left + 10, $prod_top + $offset, (($bTaxCol)?87:102), $height);
$pdf->Rect($prod_left + 10, $prod_top + $offset, ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), $height);
if ($bTaxCol) $pdf->Rect($prod_left + 97, $prod_top + $offset, 15, $height);
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$pdf->Rect($prod_left + 97, $prod_top + $offset, 15, $height);
}
$pdf->Rect($prod_left + 112, $prod_top + $offset, 15, $height);
$pdf->Rect($prod_left + 127, $prod_top + $offset, 25, $height);
439,12 → 439,9
$pnr ++;
$count ++;
if ($bNoTax) $price = $p['netto'];
else $price = $p['brutto'];
 
$summe += $price * $p['amount'];
$summe += $p['price'] * $p['menge'];
if ($pdf->getY() > 220 || ($count >= $prod_break && sizeof($this->view['basket']['arCalculation']['product']) > ($pnr - 1)))
if ($pdf->getY() > 220 || ($count >= $prod_break && sizeof($this->view['basket']['produkte']) > ($pnr - 1)))
{
AddRechnungPage($this, $pdf);
454,19 → 451,56
} // produkte
if (wpsg_isSizedArray($this->view['basket']['arCalculation']['voucher']))
// Gutschein
/*
if ((isset($this->view['basket']['gs'])) && abs($this->view['basket']['gs_value']) > 0)
{
$pdf->SetFont('Arial', '', 9);
$pdf->setXY($prod_left, $prod_top + $offset);
$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, wpsg_translate(__('Gutschein (#1#)', 'wpsg'), $this->view['basket']['gs']['code']), 1, 0, 'L');
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$mwst = __('anteilig', 'wpsg');
$pdf->setXY($prod_left + 97, $prod_top + $offset);
$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
}
$pdf->setXY($prod_left + 112, $prod_top + $offset);
$pdf->Cell(15, 8, '1', 1, 0, 'C');
$gs_value_einzel = '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency'));
$gs_value_gesamt = '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency'));
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, $gs_value_einzel, 1, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, $gs_value_gesamt, 1, 0, 'R');
$offset += 8;
}
*/
if (wpsg_isSizedArray($this->view['basket']['arCalculation']['voucher'])) {
foreach ($this->view['basket']['arCalculation']['voucher'] as $v) {
 
$pdf->SetFont('Arial', '', 9);
$pdf->setXY($prod_left, $prod_top + $offset);
$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( (($bTaxCol)?87:102), 8, wpsg_translate(__('Gutschein (#1#)', 'wpsg'), $v['code']), 1, 0, 'L');
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, wpsg_translate(__('Gutschein (#1#)', 'wpsg'), $v['code']), 1, 0, 'L');
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$mwst = __('anteilig', 'wpsg');
481,7 → 515,7
$gs_value_einzel = wpsg_ff($v[$taxdisplay.'_single'], $this->get_option('wpsg_currency'));
$gs_value_gesamt = wpsg_ff($v[$taxdisplay], $this->get_option('wpsg_currency'));
 
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, $gs_value_einzel, 1, 0, 'R');
493,9 → 527,9
}
}
 
// Versandkosten
if ( ($shipping_cost != '') && ($shipping_cost != 0) )
if ($this->view['basket']['sum']['preis_shipping'] != '' && $this->view['basket']['sum']['preis_shipping'] != 0)
{
$pdf->SetFont('Arial', '', 9);
503,26 → 537,26
$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( (($bTaxCol)?87:102), 8, wpsg_translate(__('Versandkosten "#1#"', 'wpsg'), $this->view['oOrder']->getShippingLabel()), 1, 0, 'L');
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, wpsg_translate(__('Versandkosten "#1#"', 'wpsg'), $this->view['oOrder']->getShippingLabel()), 1, 0, 'L');
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
 
// if ($this->arShipping[$this->view['data']['type_shipping']]['mwst_null'] == '1' && $bNoTax)
// {
if ($bNoTax)
if ($this->arShipping[$this->view['data']['type_shipping']]['mwst_null'] == '1' && $this->view['basket']['noMwSt'] == '1')
{
$mwst = wpsg_ff(0.00, '%');
 
} else {
$mwst = 0;
}
else
{
if ($this->view['basket']['arCalculation']['shipping'][0]['tax_key'] === '0') {
$mwst = _('anteilig');
 
} else {
 
$mwst = wpsg_ff($this->view['basket']['arCalculation']['shipping'][0]['tax'], '%');
$mwst = wpsg_ff($this->view['basket']['arCalculation']['tax'][$this->view['basket']['arCalculation']['shipping'][0]['tax_key']]['tax_value'], '%');
539,17 → 573,58
$pdf->Cell(15, 8, '1', 1, 0, 'C');
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($shipping_cost, $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_shipping'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($shipping_cost, $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_shipping'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$offset += 8;
$offset += 8;
// Zusammengesetzte Versandarten darstellen
/*
if (wpsg_isSizedArray($this->view['basket']['shipping']['methods'])) {
foreach ($this->view['basket']['shipping']['methods'] as $shipping) {
$pdf->SetFont('Arial', '', 9);
$pdf->setXY($prod_left, $prod_top + $offset);
$pdf->Cell(10, 8, '', 1, 0, 'C'); $pnr ++;
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, $this->getShippingName($shipping), 1, 0, 'L');
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
if ($this->view['basket']['shipping'][$shipping]['tax_rata'] == 1) { $mwst = __('Anteilig', 'wpsg'); }
else { $mwst = wpsg_ff($this->view['basket']['shipping'][$shipping]['mwst'], '%'); }
$pdf->setXY($prod_left + 97, $prod_top + $offset);
$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
}
$pdf->setXY($prod_left + 112, $prod_top + $offset);
$pdf->Cell(15, 8, '1', 1, 0, 'C');
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['shipping'][$shipping]['preis_shipping_brutto'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['shipping'][$shipping]['preis_shipping_brutto'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$offset += 8;
}
}
*/
}
// Zahlungskosten
if ( ($payment_cost != '') && ($payment_cost != 0) )
if ($this->view['basket']['sum']['preis_payment'] != '' && $this->view['basket']['sum']['preis_payment'] != 0)
{
$pdf->SetFont('Arial', '', 9);
557,33 → 632,31
$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( (($bTaxCol)?87:102), 8, $this->arPayment[$this->view['data']['type_payment']]['name'], 1, 0, 'L');
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, $this->arPayment[$this->view['data']['type_payment']]['name'], 1, 0, 'L');
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
// if ($this->arPayment[$this->view['data']['type_payment']]['mwst_null'] == '1' && $bNoTax)
// {
if ($bNoTax)
if ($this->arPayment[$this->view['data']['type_payment']]['mwst_null'] == '1' && $this->view['basket']['noMwSt'] == '1')
{
 
$mwst = wpsg_ff(0.00, '%');
 
} else {
$mwst = 0;
}
else
{
if ($this->view['basket']['arCalculation']['payment'][0]['tax_key'] === '0') {
 
$mwst = _('anteilig');
 
} else {
 
$mwst = wpsg_ff($this->view['basket']['arCalculation']['payment'][0]['tax'], '%');
$mwst = wpsg_ff($this->view['basket']['arCalculation']['tax'][$this->view['basket']['arCalculation']['payment'][0]['tax_key']]['tax_value'], '%');
}
}
 
$pdf->setXY($prod_left + 97, $prod_top + $offset);
$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
593,10 → 666,10
$pdf->Cell(15, 8, '1', 1, 0, 'C');
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($payment_cost, $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_payment'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($payment_cost, $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_payment'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$offset += 8;
615,13 → 688,22
if (strpos($this->view['storno_fee'], '%') !== false) $label .= ' ('.wpsg_ff($this->view['storno_fee'], '%').')';
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( (($bTaxCol)?87:102), 8, $label, 1, 0, 'L');
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, $label, 1, 0, 'L');
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
if ($bNoTax) $mwst = wpsg_ff(0.00, '%');
else $mwst = wpsg_ff($this->view['storno_fee_tax_value'], '%');
if ($this->view['basket']['noMwSt'] == '1')
{
$mwst = 0;
}
else
{
$mwst = wpsg_ff($this->view['storno_fee_tax_value'], '%');
}
$pdf->setXY($prod_left + 97, $prod_top + $offset);
$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
651,114 → 733,65
$pdf->Cell(37, 8, $this->view['kunde']['ustidnr'], 0, 0, 'R');
}
$offset += 5; // Abstand zwischen Tabelle und Rabatt
 
// Rabatt
if ($discount_value > 0)
$offset += 10;
if ($this->get_option('wpsg_kleinunternehmer'))
{
 
$pdf->Text($prod_left, $prod_top + $offset, __("Es ergibt sich folgender Gesamtbetrag", "wpsg").':');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Summe", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'] + $this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Rabatt", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, '-'.wpsg_ff($discount_value, $this->get_option('wpsg_currency')), 0, 0, 'R');
}
 
$offset += 5; // Abstand zwischen Rabatt und Auswertung
 
if ( ($this->get_option('wpsg_kleinunternehmer') == '1') || ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_SMALLBUSINESS) )
else
{
$pdf->Text($prod_left, $prod_top + $offset, __("Es ergibt sich folgender Gesamtbetrag", "wpsg").':');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Summe", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
if ( !$bNoTax || ($arCalculation['sum']['topay_brutto'] != $arCalculation['sum']['brutto']) ) $offset += 5;
 
} else {
if ($bNoTax)
if ($this->view['basket']['noMwSt'] == '1')
{
 
$pdf->Text($prod_left, $prod_top + $offset, __("Es ergibt sich folgender Gesamtbetrag", "wpsg").':');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Summe", "wpsg"));
$pdf->Text($prod_left + 80, $prod_top + $offset, __("BRUTTOBETRAG", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_netto'] + $this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$offset += 5;
 
if ( !(($this->view['oOrder']->isInnerEu() || $deliverycountrytax) && ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_B2B)) ) {
 
if (sizeof($this->view['basket']['arCalculation']['tax']) >= 1)
{
 
$mw_count = 0;
foreach ($this->view['basket']['arCalculation']['tax'] as $mw)
{
 
if ( $mw['tax_value'] > 0 && $mw['sum'] > 0 ) {
 
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. ", "wpsg").wpsg_ff($mw['tax_value'], '%'));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($mw['sum'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$mw_count++;
 
}
 
}
}
if ($mw_count >= 2)
{
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. GESAMT", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'] - $this->view['basket']['arCalculation']['sum']['netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
}
} else if ( !($arCalculation['sum']['topay_brutto'] != $arCalculation['sum']['brutto']) ) $offset -= 5;
 
} else {
 
$pdf->Text($prod_left, $prod_top + $offset, __("Der Gesamtbetrag setzt sich wie folgt zusammen", "wpsg").':');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. GESAMT", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff(0, $this->get_option('wpsg_currency')), 0, 0, 'R');
}
else
{
$pdf->Text($prod_left, $prod_top + $offset, __("Der Gesamtbetrag setzt sich wie folgt zusammen", "wpsg"));
$pdf->Text($prod_left + 80, $prod_top + $offset, __("NETTOBETRAG", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['topay_netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_netto'] + $this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
if (sizeof($this->view['basket']['arCalculation']['tax']) >= 1)
if (sizeof($this->view['basket']['mwst']) >= 1)
{
 
$mw_count = 0;
foreach ($this->view['basket']['arCalculation']['tax'] as $mw)
foreach ($this->view['basket']['mwst'] as $mw)
{
 
if ( $mw['tax_value'] > 0 && $mw['sum'] > 0) {
 
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. ", "wpsg").wpsg_ff($mw['tax_value'], '%'));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($mw['sum'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$mw_count++;
 
}
 
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. ", "wpsg").wpsg_ff($mw['value'], '%'));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($mw['sum'], $this->get_option('wpsg_currency')), 0, 0, 'R');
}
}
if ($mw_count >= 2)
if (sizeof($this->view['basket']['mwst']) > 1)
{
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. GESAMT", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'] - $this->view['basket']['arCalculation']['sum']['netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'] - $this->view['basket']['sum']['preis_gesamt_netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
}
765,22 → 798,30
}
}
 
// Rabatt
if ($this->view['basket']['sum']['preis_rabatt'] > 0)
{
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Rabatt", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, '-'.wpsg_ff($this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
}
// Wertgutschein
if ( $arCalculation['sum']['topay_brutto'] != $arCalculation['sum']['brutto'] ) {
 
if (!$bNoTax) {
if ($arCalculation['sum']['topay_brutto'] !== $arCalculation['sum']['brutto']) {
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("SUMME", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->setFont('Arial', '', '9');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setFont('Arial', '', '9');
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Bruttobetrag", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
} else if (!($mw_count >= 2)) $offset -= 5;
 
$pdf->setFont('Arial', '', '9');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setFont('Arial', '', '9');
foreach ($arCalculation['coupon'] as $c) {
$offset += 5;
806,80 → 847,79
} else {
$offset += 5;
$pdf->setFont('Arial', 'B', '9');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("GESAMTSUMME", "wpsg"));
$pdf->Text($prod_left + 80, $prod_top + $offset, __("SUMME", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
 
/* Endbetrag wird fett ausgegeben */
$pdf->Cell(37, 8, wpsg_ff($arCalculation['sum']['topay_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setFont('Arial', 'B', '9');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setFont('Arial', '', '9');
}
if (($this->get_option('wpsg_kleinunternehmer') == '1') || ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_SMALLBUSINESS) )
if ($this->get_option('wpsg_kleinunternehmer') == '1')
{
 
$offset += 3;
$pdf->setFont('Arial', '', '8');
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, '('.$this->get_option('wpsg_kleinunternehmer_text').')');
$offset += 8;
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset + 5, 5, $this->get_option('wpsg_kleinunternehmer_text'));
$offset += 15;
}
 
$offset += 5;
if ($this->hasMod('wpsg_mod_deliverynote') && ($this->get_option('wpsg_rechnungen_deliverynote') == '1'))
if ($this->hasMod('wpsg_mod_deliverynote'))
{
$arDN_order = $this->callMod('wpsg_mod_deliverynote', 'loadDeliveryNotesFromOrder', array($this->view['data']['id']));
$delivery_date = $this->callMod('wpsg_mod_deliverynote', 'getDeliveryTime', array($this->view['data']['id']));
 
// Wenn es ein Gesamtlieferdatum gibt und nur einen Lieferschein, dann unter der Bestellung anzeigen
if ($delivery_date !== false && sizeof($arDN_order) == 1)
{
$pdf->setFont('Arial', 'B', '9');
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, __('Lieferung:', 'wpsg'));
$pdf->setFont('Arial', '', '9');
$pdf->wpsg_MultiCell($prod_left + 16, $prod_top + $offset, 5, wpsg_translate(__('#1#', 'wpsg'), date('d.m.Y', $delivery_date)));
$offset += 8;
$offset += 10;
$pdf->wpsg_MultiCell($prod_left, $prod_top + $offset, 5, wpsg_translate(__('Lieferung: #1#', 'wpsg'), date('d.m.Y', $delivery_date)));
$offset += 5;
}
}
$offset += 5;
if ($this->view['fussText'] != "")
{
$pdf->setFont('Arial', '', '9');
//$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, utf8_encode($this->view['fussText']));
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $this->view['fussText']);
$offset += 8;
$pdf->SetFont('Arial', 'B', 9);
$offset += 10;
}
$offset += 10;
 
$shipping_adress = false;
if ($this->hasMod('wpsg_mod_shippingadress') && $this->callMod('wpsg_mod_shippingadress', 'check_different_shippingadress', array('k_id' => $this->view['data']['k_id'], 'o_id' => $this->view['data']['id']))) {
$pdf->setFont('Arial', 'B', 9);
$pdf->Text($prod_left, $prod_top + $offset, __("Lieferanschrift", "wpsg").":");
$offset += 2;
$offset += 5;
$pdf->setFont('Arial', '', 9);
$shipping_adress = "";
if ($this->view['data']['shipping_firma'] != "")
{
$shipping_adress .= $this->view['data']['shipping_firma']."\r\n";
}
$shipping_adress .= $this->view['data']['shipping_vname'].' '.$this->view['data']['shipping_name']."\r\n";
$shipping_adress .= $this->view['data']['shipping_strasse'].' '.$this->view['data']['shipping_nr']."\r\n";
// $shipping_adress .= $this->view['data']['shipping_land']['kuerzel'].'-';
$shipping_adress .= $this->view['data']['shipping_plz'].' '.$this->view['data']['shipping_ort']."\r\n";
$shipping_adress .= $this->view['data']['shipping_land']['name'];
$shipping_adress = "";
if ($this->view['data']['shipping_firma'] != "")
{
$shipping_adress .= $this->view['data']['shipping_firma']."\r\n";
}
$shipping_adress .= $this->view['data']['shipping_vname'].' '.$this->view['data']['shipping_name']."\r\n";
$shipping_adress .= $this->view['data']['shipping_strasse'].' '.$this->view['data']['shipping_nr']."\r\n";
//$shipping_adress .= $this->view['data']['shipping_land']['kuerzel'].'-';
$shipping_adress .= $this->view['data']['shipping_plz'].' '.$this->view['data']['shipping_ort']."\r\n";
$shipping_adress .= $this->view['data']['shipping_land']['name'];
$start = $pdf->getY();
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $shipping_adress, 0, 'L', 0, 100);
$offset += $pdf->getY() - $start;
888,46 → 928,54
}
$offset += 5;
// Bestellvariablen
if ($this->hasMod('wpsg_mod_ordervars') && $this->get_option('wpsg_mod_rechnungen_showov') == '1')
{
 
$pdf->SetFont('Arial', 'B', 9);
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset - 7, 5, __("Angaben während der Bestellung", "wpsg").":");
$pdf->SetFont('Arial', '', 9);
 
$bvars = @unserialize($this->view['data']['bvars']);
if (!is_array($bvars)) $bvars = array();
$bvars = @unserialize($this->view['data']['bvars']);
if (!is_array($bvars)) $bvars = array();
$strBVars = "";
foreach ($bvars as $bvars_id => $bvars_value)
{
$strBVars = "";
foreach ($bvars as $bvars_id => $bvars_value)
$bvars = $this->db->fetchRow("SELECT * FROM `".wpsg_q(WPSG_TBL_ORDERVARS)."` WHERE `id` = '".wpsg_q($bvars_id)."' ORDER BY `pos` ASC, `id` ASC ");
if ($bvars['typ'] == "1") // Auswahl
{
$bvars = $this->db->fetchRow("SELECT * FROM `".wpsg_q(WPSG_TBL_ORDERVARS)."` WHERE `id` = '".wpsg_q($bvars_id)."' ORDER BY `pos` ASC, `id` ASC ");
if ($bvars['typ'] == "1") // Auswahl
{
if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
}
else if ($bvars['typ'] == "2") // Texteingabe
{
if (trim($bvars_value) == "") $bvars_value = __("Keine Angabe", "wpsg");
}
else if ($bvars['typ'] == "3") // Checkbox
{
if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
}
$bvars_name = $this->callMod('wpsg_mod_ordervars', 'getNameById', array($bvars_id));
$strBVars .= "\r\n".$bvars_name.": ".$bvars_value;
if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
}
else if ($bvars['typ'] == "2") // Texteingabe
{
if (trim($bvars_value) == "") $bvars_value = __("Keine Angabe", "wpsg");
}
else if ($bvars['typ'] == "3") // Checkbox
{
if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
}
$bvars_name = $this->callMod('wpsg_mod_ordervars', 'getNameById', array($bvars_id));
$strBVars .= "\r\n".$bvars_name.": ".$bvars_value;
}
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset - 6, 5, $strBVars);
 
$pdf->SetFont('Arial', 'B', 9);
$pdf->Text($prod_left, $prod_top + $offset, __("Angaben während der Bestellung", "wpsg").":");
$pdf->SetFont('Arial', '', 9);
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $strBVars);
}
if (!file_exists($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id']))))
{
mkdir($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id'])), 0777, true);
}
$this->callMods('wpsg_mod_rechnungen_pdf', array(&$pdf, &$this->view['data']['id'], &$this->view['preview'], &$this->view['invoice']));
$filename = $this->view['filename'].".pdf";
940,7 → 988,7
} else {
if (($this->view['rebuild']??false) === false) $pdf->Output($oInvoice->getFilePath(), 'F');
$pdf->Output($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id'])).$filename, 'F');
// Hier wird der Dateiname an FPD übergeben. Er soll sich aus der Rechnungsnummer ergeben, auch wenn das Dokument über die ID gespeichert ist.
if ($this->view['output'] === true) $pdf->Output($this->view['filename_out'], 'I');
947,3 → 995,4
}
 
?>
/mods/mod_rechnungen/order_view_orderdata_after.phtml
182,15 → 182,9
let el_invoice_wpsg_rechnungen_preview = document.getElementById('invoice_wpsg_rechnungen_preview');
let el_invoice_wpsg_rechnungen_submit = document.getElementById('invoice_wpsg_rechnungen_submit');
let submit = false;
function check_invoice_amount(event) {
if (submit === true) return;
submit = true;
let ok = false;
for (let el_checkbox of document.getElementsByClassName('wpsg_check_amount_invoice')) {
208,12 → 202,12
}
if (ok) {
if (event.target.getAttribute("id") === 'invoice_wpsg_rechnungen_submit') {
window.setTimeout(function() { location.href = '<?php
 
echo wpsg_admin_url('Order', 'view', ['edit_id' => $oOrder->getId()], [], true);
window.setTimeout(function() { location.href = '<?php
echo wpsg_admin_url('Order', 'view', ['edit_id' => $oOrder->getId()]);
?>'; }, 1000);
 
221,8 → 215,6
} else {
submit = false;
alert('<?php echo __('Bitte mindestens ein Produkt auswählen!', 'wpsg'); ?>');
event.stopPropagation();
345,7 → 337,7
window.setTimeout(function() { location.href = '<?php
echo wpsg_admin_url('Order', 'view', ['edit_id' => $oOrder->getId()], [], true);
echo wpsg_admin_url('Order', 'view', ['edit_id' => $oOrder->getId()]);
?>'; }, 1000);
 
/mods/mod_rechnungen/order_view.phtml
30,27 → 30,12
<div>
<?php echo $oInvoice->getNr(true); ?>
</div>
<div style="text-align:right; white-space:nowrap;">
 
<?php /*
<a target="_blank" href="<?php
echo wp_nonce_url(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Order&mod=wpsg_mod_rechnungen&noheader=1&action=ajax&edit_id='.$_REQUEST['edit_id'].'&r_id='.$r['id'].'&do=rebuildadmin', 'wpsg-mod_invoice-order_ajax-rebuildadmin-'.$_REQUEST['edit_id']);
?>" style="color:red;"><?php echo __('Neu erstellen', 'wpsg'); ?></a>
*/ ?>
<div style="text-align:right;">
<a target="_blank" onclick="if (!confirm('<?php echo __('Sind Sie sicher, dass Sie eine Kopie dieser Rechnung/Rechnungskorrektur erneut an den Kunden senden möchten?', 'wpsg'); ?>')) return false;" href="<?php
if ($r['o_id'] == '0') {
// Multirechnung
$r_o_ids = array_map('intval', explode(',', $r['o_ids']));
echo wp_nonce_url(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Order&mod=wpsg_mod_rechnungen&noheader=1&action=ajax&edit_id='.$_REQUEST['edit_id'].'&r_id='.$r['id'].'&do=copy', 'wpsg-mod_invoice-order_ajax-copy-'.$_REQUEST['edit_id']);
} else {
// normale Rechnung
echo wp_nonce_url(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Order&mod=wpsg_mod_rechnungen&noheader=1&action=ajax&edit_id='.$_REQUEST['edit_id'].'&r_id='.$r['id'].'&do=copy', 'wpsg-mod_invoice-order_ajax-copy-'.$_REQUEST['edit_id']);
}
 
echo wp_nonce_url(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Order&mod=wpsg_mod_rechnungen&noheader=1&action=ajax&edit_id='.$this->view['data']['id'].'&r_id='.$r['id'].'&do=copy', 'wpsg-mod_invoice-order_ajax-copy-'.$this->view['data']['id']);
?>"><?php echo ' &nbsp;'.__("Kopie senden", "wpsg"); ?></a>&nbsp;
</div>
67,6 → 52,6
<style>
#wpsg_mod_rechnungen_order_view .grid { display:grid; width:100%; grid-template-columns:150px 1fr 250px; row-gap:0.25rem; column-gap:1rem; }
#wpsg_mod_rechnungen_order_view .grid { display:grid; width:100%; grid-template-columns:150px 1fr 100px; row-gap:0.25rem; }
</style>
/mods/mod_rechnungen/accounting_pdf.phtml
9,10 → 9,7
require_once WPSG_PATH_LIB.'wpsg_fpdf.class.php';
global $absender_left, $absender_top, $adress_left, $adress_top, $rdata_left, $rdata_top;
 
/** @var wpsg\wpsg_invoice|null $oInvoice */
$oInvoice = $this->view['oInvoice'];
 
// Positionierung der Absenderadresszeile
$absender_left = 25;
$absender_top = 50;
33,9 → 30,17
$prod_break = $this->get_option('wpsg_rechnungen_pdfperpage');
$arCalculation = $this->view['basket']['arCalculation'];
 
if ($this->getFrontendTaxView() === WPSG_NETTO) $taxdisplay = 'netto';
else $taxdisplay = 'brutto';
// Damit die Steuer bei der Kleinunternehmerregelung nicht angezeigt wird leer ich den Array sicherheitshalber
if ( ($this->get_option('wpsg_kleinunternehmer') == '1') || ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_SMALLBUSINESS) ) unset($this->view['basket']['mwst']);
if ($this->get_option('wpsg_kleinunternehmer') == '1')
{
unset($this->view['basket']['mwst']);
}
if (!function_exists('AddRechnungPage'))
{
47,24 → 52,24
$pdf->AddPage();
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.pdf"))
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf"))
{
$pagecount = $pdf->setSourceFile($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.pdf");
$pagecount = $pdf->setSourceFile($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.pdf");
$tplidx = $pdf->importPage(1, '/MediaBox');
$pdf->useTemplate($tplidx, 0, 0, 210);
}
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.jpg"))
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg"))
{
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_bp.jpg", 0, 0, 210, 297, 'jpg');
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_bp.jpg", 0, 0, 210, 297, 'jpg');
}
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_logo.jpg"))
if (file_exists($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg"))
{
list($width, $height, $type, $attr) = getimagesize($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_logo.jpg");
list($width, $height, $type, $attr) = getimagesize($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg");
//wpsg_debug($width.":".$height);
71,7 → 76,7
$wPix = (25.4 * $width) / 96;
$hPix = (25.4 * $height) / 96;
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getPaperPath', array())."wpsg_rechnungen_logo.jpg", 210 - $wPix, 0, $wPix, $hPix);
$pdf->image($shop->callMod('wpsg_mod_rechnungen', 'getFilePath', array(''))."wpsg_rechnungen_logo.jpg", 210 - $wPix, 0, $wPix, $hPix);
}
101,7 → 106,7
{
$pdf->Text($rdata_left + 35, $rdata_top, __("Fällig am", "wpsg"));
$pdf->Text($rdata_left + 35, $rdata_top + 6, date("d.m.Y", strtotime($shop->view['faelligkeitdatum'])));
$pdf->Text($rdata_left + 35, $rdata_top + 6, $shop->view['faelligkeitdatum']);
}
120,7 → 125,7
$pdf->Text($rdata_left + 135, $rdata_top + 6, ((trim($shop->view['data']['onr']) != '')?$shop->view['data']['onr']:$shop->view['data']['id']));
$pdf->Text($rdata_left + 155, $rdata_top, __("Datum", "wpsg"));
$pdf->Text($rdata_left + 155, $rdata_top + 6, date("d.m.Y", strtotime($shop->view['rDatum'])));
$pdf->Text($rdata_left + 155, $rdata_top + 6, $shop->view['rDatum']);
if ($shop->view['oOrder']->isInnerEu())
{
158,44 → 163,16
}
}
 
//wpsg_debug($this->view); die();
$pdf = new wpsg_fpdf();
$pdf->SetAutoPageBreak(true, 5);
AddRechnungPage($this, $pdf);
 
if ( ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_B2B && $this->view['oOrder']->isInnerEu())
|| ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_SMALLBUSINESS)
) $bNoTax = true;
else $bNoTax = false;
 
$bTaxCol = false;
if ($this->get_option('wpsg_showMwstAlways') === '1') $bTaxCol = true;
else if (!$bNoTax) $bTaxCol = true;
 
if ($bNoTax) {
 
$discount_value = $this->view['basket']['arCalculation']['sum']['discount_netto'];
$shipping_cost = $this->view['basket']['arCalculation']['sum']['shipping_netto'];
$payment_cost = $this->view['basket']['arCalculation']['sum']['payment_netto'];
 
$taxdisplay = 'netto';
 
} else {
 
$discount_value = $this->view['basket']['arCalculation']['sum']['discount_brutto'];
$shipping_cost = $this->view['basket']['arCalculation']['sum']['shipping_brutto'];
$payment_cost = $this->view['basket']['arCalculation']['sum']['payment_brutto'];
 
$taxdisplay = 'brutto';
 
}
$summe = 0;
$bKopf = false; $pnr = 1; $offset = 0; $count = 0;
foreach ($this->view['basket']['arCalculation']['product'] as $p)
foreach ($this->view['basket']['produkte'] as $p)
{
$product = wpsg_product::getInstance($p['product_id']);
if (!$bKopf)
{
205,9 → 182,9
$pdf->Cell(10, 8, __("Nr.", "wpsg"), 1, 0, 'C');
 
$pdf->setXY($prod_left + 10, $prod_top);
$pdf->Cell( (($bTaxCol)?87:102), 8, "Name", 1, 0, 'L');
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, "Name", 1, 0, 'L');
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$pdf->setXY($prod_left + 97, $prod_top);
232,18 → 209,31
$pdf->SetFont('Arial', '', 9);
$pdf->setXY($prod_left, $prod_top + $offset);
if ($this->get_option('wpsg_mod_rechnungen_anr') == '1') $pdf->Cell(10, 8, $product->getNr(), 0, 0, 'C');
else $pdf->Cell(10, 8, $pnr.".", 0, 0, 'C');
if ($this->get_option('wpsg_mod_rechnungen_anr') == '1')
{
$pdf->Cell(10, 8, $p['anr'], 0, 0, 'C');
}
else
{
$pdf->Cell(10, 8, $pnr.".", 0, 0, 'C');
}
 
if ($this->get_option('wpsg_rechnungen_pdetailname') == '1') $produkt_text = $this->getProductName($this->getProduktID($p['product_id']), true);
else $produkt_text = $this->getProductName($this->getProduktID($p['product_id']), false);
/* Wenn Detailname vorhanden, wird der Detailname auf Rechnung verwendet */
$produkt_text = $this->getProductName($this->getProduktID($p['id']), true);
$produktBeschreibung = trim(strip_tags($product->getShortDescription()));
/* Falls Detailname vorhanden, wird jetzt der Produktname verwendet */
/* $produkt_text = $this->getProductName($this->getProduktID($p['id']), false); */
$produktBeschreibung = trim(strip_tags($p['beschreibung']));
if ($this->isOtherLang())
{
$trans_db = $this->db->fetchRow("SELECT * FROM `".WPSG_TBL_PRODUCTS."` WHERE `lang_parent` = '".wpsg_q($this->getProduktID($p['product_id']))."' AND `lang_code` = '".wpsg_q($this->getCurrentLanguageCode())."'");
$trans_db = $this->db->fetchRow("SELECT * FROM `".WPSG_TBL_PRODUCTS."` WHERE `lang_parent` = '".wpsg_q($this->getProduktID($p['id']))."' AND `lang_code` = '".wpsg_q($this->getCurrentLanguageCode())."'");
if (is_array($trans_db) && sizeof($trans_db) > 0)
{
283,13 → 273,16
if ($this->get_option('wpsg_mod_rechnungen_anr') === '2')
{
 
$anr = $this->getProductAnr($product->getProductKey());
$anr = $this->getProductAnr($p['productkey']);
$produkt_text .= "\r\n".wpsg_translate(__('Artikelnummer: #1#', 'wpsg'), $anr);
 
}
 
$produkt_text_cell_width = 102;
if ($bTaxCol) $produkt_text_cell_width = 87;
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$produkt_text_cell_width = 87;
}
$produkt_text_width = $pdf->GetStringWidth($produkt_text);
//$produkt_text_cell_width = (($this->arMwSt == "-1")?87:102);
302,30 → 295,39
//$height += 3 + 5 + $pdf->getY() - $height_y;
//$pdf->Cell((($this->arMwSt == "-1")?102:87), 8, $produkt_text, 0, 0, 'L');
 
if ($bTaxCol) {
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$pdf->setXY($prod_left + 97, $prod_top + $offset);
$pdf->Cell(15, 8, (($bNoTax)?'0.00 %':wpsg_ff($this->view['basket']['arCalculation']['tax'][$p['tax_key']]['tax_value'], '%')), 0, 0, 'C');
$pdf->Cell(15, 8, (($this->view['basket']['noMwSt'] == '1')?'0.00 %':wpsg_ff($p['mwst_value'], '%')), 0, 0, 'C');
}
$pdf->setXY($prod_left + 112, $prod_top + $offset);
$pdf->Cell(15, 8, $p['amount'], 0, 0, 'C');
$pdf->Cell(15, 8, $p['menge'], 0, 0, 'C');
if ( ( wpsg_ShopController::get_option('wpsg_preisangaben') == WPSG_NETTO ) || $bNoTax ) $preis_single = $p['netto_calculated_single'];
else $preis_single = $p['brutto_calculated_single'];
if (wpsg_ShopController::get_option('wpsg_preisangaben') == WPSG_NETTO)
{
$preis = $p['preis_netto'];
//TODO
}
else
{
$preis = $p['preis_brutto'];
}
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($preis_single, $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($preis, $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($preis_single * $p['amount'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($preis * $p['menge'], $this->get_option('wpsg_currency')), 0, 0, 'R');
 
/**
* Produktbeschreibung anzeigen Ja/Nein
*/
$pBeschreibungHeight = 0;
if ($this->get_option("wpsg_rechnungen_pbeschreibung") == "1" && trim(strip_tags($product->getShortDescription())) != '')
if ($this->get_option("wpsg_rechnungen_pbeschreibung") == "1" && trim(strip_tags($p['beschreibung'])) != '')
{
$produktBeschreibung = nl2br($produktBeschreibung);
351,13 → 353,12
*/
if ($this->get_option('wpsg_rechnungen_produktattribute') == '1')
{
 
$attributeInfo = $this->callMod('wpsg_mod_produktattribute', 'getProductAttributeByProductId', array($this->getProduktId($p['product_id'])));
$attributeInfo = $this->callMod('wpsg_mod_produktattribute', 'getProductAttributeByProductId', array($this->getProduktId($p['id'])));
foreach ($attributeInfo as $pa)
{
 
if ($pa['value'] == "") $pa['value'] = "Keine Angabe";
$pa_text = $pa['name'].': '.$pa['value'];
$height += $pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $height + $offset - 0.5, 5, $pa_text, 0, 'L', 0, $produkt_text_cell_width);
367,10 → 368,10
/**
* Variante ?
*/
if (preg_match('/pv_(.*)/', $p['product_key']))
if (preg_match('/pv_(.*)/', $p['productkey']))
{
$variInfo = $this->callMod('wpsg_mod_productvariants', 'getVariantenInfoArray', array($p['product_key']));
$variInfo = $this->callMod('wpsg_mod_productvariants', 'getVariantenInfoArray', array($p['productkey']));
 
$height += $pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $height + $offset - 0.5, 5, wpsg_translate(__('Variante: #1#', 'wpsg'), $variInfo['key']), 0, 'L', 0, $produkt_text_cell_width);
378,7 → 379,7
}
if ($this->hasMod('wpsg_mod_deliverynote') && ($this->get_option('wpsg_rechnungen_deliverynote') == '1'))
if ($this->hasMod('wpsg_mod_deliverynote'))
{
$arDN_order = $this->callMod('wpsg_mod_deliverynote', 'loadDeliveryNotesFromOrder', array($this->view['data']['id']));
402,10 → 403,15
// Jetzt die Rahmen zeichnen
$pdf->Rect($prod_left, $prod_top + $offset, 10, $height);
$pdf->Rect($prod_left + 10, $prod_top + $offset, (($bTaxCol)?87:102), $height);
$pdf->Rect($prod_left + 10, $prod_top + $offset, ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), $height);
if ($bTaxCol) $pdf->Rect($prod_left + 97, $prod_top + $offset, 15, $height);
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$pdf->Rect($prod_left + 97, $prod_top + $offset, 15, $height);
}
$pdf->Rect($prod_left + 112, $prod_top + $offset, 15, $height);
$pdf->Rect($prod_left + 127, $prod_top + $offset, 25, $height);
$pdf->Rect($prod_left + 152, $prod_top + $offset, 25, $height);
415,12 → 421,9
$pnr ++;
$count ++;
if ($bNoTax) $price = $p['netto'];
else $price = $p['brutto'];
 
$summe += $price * $p['amount'];
$summe += $p['price'] * $p['menge'];
if ($pdf->getY() > 220 || ($count >= $prod_break && sizeof($this->view['basket']['arCalculation']['product']) > ($pnr - 1)))
if ($pdf->getY() > 220 || ($count >= $prod_break && sizeof($this->view['basket']['produkte']) > ($pnr - 1)))
{
AddRechnungPage($this, $pdf);
430,6 → 433,44
} // produkte
// Gutschein
/*
if ((isset($this->view['basket']['gs'])) && ($this->view['basket']['gs_value'] > 0))
{
$pdf->SetFont('Arial', '', 9);
$pdf->setXY($prod_left, $prod_top + $offset);
$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
 
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, wpsg_translate(__('Gutschein (#1#)', 'wpsg'), $this->view['basket']['gs']['code']), 1, 0, 'L');
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$mwst = __('anteilig', 'wpsg');
$pdf->setXY($prod_left + 97, $prod_top + $offset);
$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
}
$pdf->setXY($prod_left + 112, $prod_top + $offset);
$pdf->Cell(15, 8, '1', 1, 0, 'C');
$gs_value_einzel = '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency'));
$gs_value_gesamt = '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency'));
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, $gs_value_einzel, 1, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, $gs_value_gesamt, 1, 0, 'R');
$offset += 8;
}
*/
if (wpsg_isSizedArray($this->view['basket']['arCalculation']['voucher'])) {
foreach ($this->view['basket']['arCalculation']['voucher'] as $v) {
439,9 → 480,9
$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( (($bTaxCol)?87:102), 8, wpsg_translate(__('Gutschein (#1#)', 'wpsg'), $v['code']), 1, 0, 'L');
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, wpsg_translate(__('Gutschein (#1#)', 'wpsg'), $v['code']), 1, 0, 'L');
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
$mwst = __('anteilig', 'wpsg');
470,7 → 511,7
}
// Versandkosten
if ( ($shipping_cost != '') && ($shipping_cost != 0) )
if ($this->view['basket']['sum']['preis_shipping'] != '' && $this->view['basket']['sum']['preis_shipping'] != 0)
{
$pdf->SetFont('Arial', '', 9);
478,24 → 519,24
$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
 
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( (($bTaxCol)?87:102), 8, wpsg_translate(__('Versandkosten "#1#"', 'wpsg'), $this->view['oOrder']->getShippingLabel()), 1, 0, 'L');
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, wpsg_translate(__('Versandkosten "#1#"', 'wpsg'), $this->view['oOrder']->getShippingLabel()), 1, 0, 'L');
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
// if ($this->arShipping[$this->view['data']['type_shipping']]['mwst_null'] == '1' && $bNoTax) $mwst = wpsg_ff(0.00, '%');
// {
if ($bNoTax)
if ($this->arShipping[$this->view['data']['type_shipping']]['mwst_null'] == '1' && $this->view['basket']['noMwSt'] == '1')
{
 
$mwst = wpsg_ff(0.00, '%');
 
} else {
$mwst = 0;
}
else
{
if ($this->view['basket']['arCalculation']['shipping'][0]['tax_key'] === '0') {
$mwst = _('anteilig');
 
} else {
$mwst = wpsg_ff($this->view['basket']['arCalculation']['shipping'][0]['tax'], '%');
514,17 → 555,58
$pdf->Cell(15, 8, '1', 1, 0, 'C');
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($shipping_cost, $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_shipping'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($shipping_cost, $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_shipping'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$offset += 8;
 
// Zusammengesetzte Versandarten darstellen
/*
if (wpsg_isSizedArray($this->view['basket']['shipping']['methods'])) {
foreach ($this->view['basket']['shipping']['methods'] as $shipping) {
$pdf->SetFont('Arial', '', 9);
$pdf->setXY($prod_left, $prod_top + $offset);
$pdf->Cell(10, 8, '', 1, 0, 'C'); $pnr ++;
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, $this->getShippingName($shipping), 1, 0, 'L');
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
if ($this->view['basket']['shipping'][$shipping]['tax_rata'] == 1) { $mwst = __('Anteilig', 'wpsg'); }
else { $mwst = wpsg_ff($this->view['basket']['shipping'][$shipping]['mwst'], '%'); }
$pdf->setXY($prod_left + 97, $prod_top + $offset);
$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
}
$pdf->setXY($prod_left + 112, $prod_top + $offset);
$pdf->Cell(15, 8, '1', 1, 0, 'C');
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['shipping'][$shipping]['preis_shipping_brutto'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['shipping'][$shipping]['preis_shipping_brutto'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$offset += 8;
}
}
*/
}
// Zahlungskosten
if ( ($payment_cost != '') && ($payment_cost != 0) )
if ($this->view['basket']['sum']['preis_payment'] != '' && $this->view['basket']['sum']['preis_payment'] != 0)
{
$pdf->SetFont('Arial', '', 9);
532,19 → 614,17
$pdf->Cell(10, 8, $pnr.'.', 1, 0, 'C'); $pnr ++;
 
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( (($bTaxCol)?87:102), 8, $this->arPayment[$this->view['data']['type_payment']]['name'], 1, 0, 'L');
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, $this->arPayment[$this->view['data']['type_payment']]['name'], 1, 0, 'L');
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
// if ($this->arPayment[$this->view['data']['type_payment']]['mwst_null'] == '1' && $bNoTax)
// {
if ($bNoTax)
if ($this->arPayment[$this->view['data']['type_payment']]['mwst_null'] == '1' && $this->view['basket']['noMwSt'] == '1')
{
 
$mwst = wpsg_ff(0.00, '%');
 
} else {
$mwst = 0;
}
else
{
if ($this->view['basket']['arCalculation']['payment'][0]['tax_key'] === '0') {
568,10 → 648,10
$pdf->Cell(15, 8, '1', 1, 0, 'C');
$pdf->setXY($prod_left + 127, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($payment_cost, $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_payment'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->setXY($prod_left + 152, $prod_top + $offset);
$pdf->Cell(25, 8, wpsg_ff($payment_cost, $this->get_option('wpsg_currency')), 1, 0, 'R');
$pdf->Cell(25, 8, wpsg_ff($this->view['basket']['sum']['preis_payment'], $this->get_option('wpsg_currency')), 1, 0, 'R');
$offset += 8;
590,13 → 670,22
if (strpos($this->view['storno_fee'], '%') !== false) $label .= ' ('.wpsg_ff($this->view['storno_fee'], '%').')';
$pdf->setXY($prod_left + 10, $prod_top + $offset);
$pdf->Cell( (($bTaxCol)?87:102), 8, $label, 1, 0, 'L');
$pdf->Cell( ((sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')?87:102), 8, $label, 1, 0, 'L');
if ($bTaxCol)
if (sizeof($this->view['basket']['mwst']) >= 1 || $this->get_option('wpsg_showMwstAlways') == '1')
{
if ($bNoTax) $mwst = wpsg_ff(0.00, '%');
else $mwst = wpsg_ff($this->view['storno_fee_tax_value'], '%');
if ($this->view['basket']['noMwSt'] == '1')
{
$mwst = 0;
}
else
{
$mwst = wpsg_ff($this->view['storno_fee_tax_value'], '%');
}
$pdf->setXY($prod_left + 97, $prod_top + $offset);
$pdf->Cell(15, 8, $mwst, 1, 0, 'C');
626,138 → 715,95
$pdf->Cell(37, 8, $this->view['kunde']['ustidnr'], 0, 0, 'R');
}
$offset += 5; // Abstand zwischen Tabelle und Rabatt
 
// Rabatt
if ($discount_value > 0)
$offset += 10;
if ($this->get_option('wpsg_kleinunternehmer'))
{
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Rabatt", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, '-'.wpsg_ff($discount_value, $this->get_option('wpsg_currency')), 0, 0, 'R');
}
 
$offset += 5; // Abstand zwischen Rabatt und Auswertung
 
if ( ($this->get_option('wpsg_kleinunternehmer') == '1') || ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_SMALLBUSINESS) )
{
$pdf->Text($prod_left, $prod_top + $offset, __("Es ergibt sich folgender Gesamtbetrag", "wpsg").':');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Summe", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
 
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'] + $this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$offset += 5;
 
} else {
if ($bNoTax)
}
else
{
if ($this->view['basket']['noMwSt'] == '1')
{
$pdf->Text($prod_left, $prod_top + $offset, __("Es ergibt sich folgender Gesamtbetrag", "wpsg").':');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Summe", "wpsg"));
$pdf->Text($prod_left + 80, $prod_top + $offset, __("BRUTTOBETRAG", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'] + $this->view['basket']['arCalculation']['sum']['discount_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
//if ( !$bNoTax || ($arCalculation['sum']['topay_brutto'] != $arCalculation['sum']['brutto']) )
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$offset += 5;
 
if ( !(($this->view['oOrder']->isInnerEu()) && ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_B2B)) ) {
 
if (sizeof($this->view['basket']['arCalculation']['tax']) >= 1)
{
 
$mw_count = 0;
foreach ($this->view['basket']['arCalculation']['tax'] as $mw)
{
 
if ( $mw['tax_value'] > 0 && $mw['sum'] > 0 ) {
 
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. ", "wpsg").wpsg_ff($mw['tax_value'], '%'));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($mw['sum'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$mw_count++;
 
}
 
}
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. GESAMT", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff(0, $this->get_option('wpsg_currency')), 0, 0, 'R');
}
}
else
{
$pdf->Text($prod_left, $prod_top + $offset, __("Der Gesamtbetrag setzt sich wie folgt zusammen", "wpsg"));
$pdf->Text($prod_left + 80, $prod_top + $offset, __("NETTOBETRAG", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
if (sizeof($this->view['basket']['mwst']) >= 1)
{
if ($mw_count >= 2)
foreach ($this->view['basket']['mwst'] as $mw)
{
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. GESAMT", "wpsg"));
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. ", "wpsg").wpsg_ff($mw['value'], '%'));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'] - $this->view['basket']['arCalculation']['sum']['netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->Cell(37, 8, wpsg_ff($mw['sum'], $this->get_option('wpsg_currency')), 0, 0, 'R');
}
} else if ( !($arCalculation['sum']['topay_brutto'] != $arCalculation['sum']['brutto']) ) $offset -= 5;
 
} else {
$pdf->Text($prod_left, $prod_top + $offset, __("Der Gesamtbetrag setzt sich wie folgt zusammen", "wpsg").':');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("NETTOBETRAG", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['topay_netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
if (sizeof($this->view['basket']['arCalculation']['tax']) >= 1)
{
 
$mw_count = 0;
foreach ($this->view['basket']['arCalculation']['tax'] as $mw)
{
 
if ( $mw['tax_value'] > 0 && $mw['sum'] > 0) {
 
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. ", "wpsg").wpsg_ff($mw['tax_value'], '%'));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($mw['sum'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$mw_count++;
 
}
 
}
}
if ($mw_count >= 2)
if (sizeof($this->view['basket']['mwst']) > 1)
{
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("MwSt. GESAMT", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'] - $this->view['basket']['arCalculation']['sum']['netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'] - $this->view['basket']['sum']['preis_gesamt_netto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
}
}
}
}
 
// Rabatt
if ($this->view['basket']['sum']['preis_rabatt'] > 0)
{
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Rabatt", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->Cell(37, 8, '-'.wpsg_ff($this->view['basket']['sum']['preis_rabatt'], $this->get_option('wpsg_currency')), 0, 0, 'R');
}
// Wertgutschein
if ( $arCalculation['sum']['topay_brutto'] != $arCalculation['sum']['brutto'] ) {
 
if (!$bNoTax) {
if ($arCalculation['sum']['topay_brutto'] !== $arCalculation['sum']['brutto']) {
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("SUMME", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
$pdf->setFont('Arial', '', '9');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['arCalculation']['sum']['brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setFont('Arial', '', '9');
$offset += 5;
$pdf->Text($prod_left + 80, $prod_top + $offset, __("Bruttobetrag", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
} else if (!($mw_count >= 2)) $offset -= 5;
 
$pdf->setFont('Arial', '', '9');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setFont('Arial', '', '9');
foreach ($arCalculation['coupon'] as $c) {
$offset += 5;
772,7 → 818,7
$offset += 5;
$pdf->setFont('Arial', 'B', '9');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("ZU ZAHLEN", "wpsg"));
$pdf->Text($prod_left + 80, $prod_top + $offset, __("SUMME", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
/* Endbetrag wird fett ausgegeben */
781,82 → 827,85
$pdf->setFont('Arial', '', '9');
} else {
 
$offset += 5;
$pdf->setFont('Arial', 'B', '9');
$pdf->Text($prod_left + 80, $prod_top + $offset, __("GESAMTSUMME", "wpsg"));
$pdf->Text($prod_left + 80, $prod_top + $offset, __("SUMME", "wpsg"));
$pdf->setXY($prod_left + 140, $prod_top + $offset - 5);
 
/* Endbetrag wird fett ausgegeben */
$pdf->Cell(37, 8, wpsg_ff($arCalculation['sum']['topay_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setFont('Arial', 'B', '9');
$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
$pdf->setFont('Arial', '', '9');
/* Endbetrag wird normal ausgegeben */
//$pdf->Cell(37, 8, wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 0, 0, 'R');
}
if ( ($this->get_option('wpsg_kleinunternehmer') == '1') || ($this->view['oCalculationOrder']->getTaxMode() === \wpsg\wpsg_calculation::TAXMODE_SMALLBUSINESS) )
if ($this->get_option('wpsg_kleinunternehmer') == '1')
{
 
$offset += 3;
$pdf->setFont('Arial', '', '8');
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, '('.$this->get_option('wpsg_kleinunternehmer_text').')');
$offset += 8;
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset + 5, 5, $this->get_option('wpsg_kleinunternehmer_text'));
$offset += 15;
}
 
$offset += 5;
if ($this->hasMod('wpsg_mod_deliverynote') && ($this->get_option('wpsg_rechnungen_deliverynote') == '1'))
if ($this->hasMod('wpsg_mod_deliverynote'))
{
$arDN_order = $this->callMod('wpsg_mod_deliverynote', 'loadDeliveryNotesFromOrder', array($this->view['data']['id']));
$delivery_date = $this->callMod('wpsg_mod_deliverynote', 'getDeliveryTime', array($this->view['data']['id']));
 
// Wenn es ein Gesamtlieferdatum gibt und nur einen Lieferschein, dann unter der Bestellung anzeigen
if ($delivery_date !== false && sizeof($arDN_order) == 1)
{
$pdf->setFont('Arial', 'B', '9');
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, __('Lieferung:', 'wpsg'));
$pdf->setFont('Arial', '', '9');
$pdf->wpsg_MultiCell($prod_left + 16, $prod_top + $offset, 5, wpsg_translate(__('#1#', 'wpsg'), date('d.m.Y', $delivery_date)));
$offset += 8;
$offset += 10;
$pdf->wpsg_MultiCell($prod_left, $prod_top + $offset, 5, wpsg_translate(__('Lieferung: #1#', 'wpsg'), date('d.m.Y', $delivery_date)));
 
$offset += 5;
}
}
 
$offset += 5;
if ($this->view['fussText'] != "")
{
$pdf->setFont('Arial', '', '9');
//$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, utf8_encode($this->view['fussText']));
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $this->view['fussText']);
$offset += 8;
$pdf->SetFont('Arial', 'B', 9);
$offset += 10;
}
$offset += 10;
$shipping_adress = false;
 
$shipping_adress = false;
if ($this->hasMod('wpsg_mod_shippingadress') && $this->callMod('wpsg_mod_shippingadress', 'check_different_shippingadress', array('k_id' => $this->view['data']['k_id'], 'o_id' => $this->view['data']['id']))) {
if ($this->hasMod('wpsg_mod_shippingadress') && $this->callMod('wpsg_mod_shippingadress', 'check_different_shippingadress', array('k_id' => $this->view['data']['k_id'], 'o_id' => $this->view['data']['id'])))
{
$pdf->setFont('Arial', 'B', 9);
$pdf->Text($prod_left, $prod_top + $offset, __("Lieferanschrift", "wpsg").":");
$offset += 2;
$offset += 5;
$pdf->setFont('Arial', '', 9);
$pdf->setFont('Arial', '', 9);
$shipping_adress = "";
if ($this->view['data']['shipping_firma'] != "")
{
$shipping_adress .= $this->view['data']['shipping_firma']."\r\n";
}
$shipping_adress .= $this->view['data']['shipping_vname'].' '.$this->view['data']['shipping_name']."\r\n";
$shipping_adress .= $this->view['data']['shipping_strasse'].' '.$this->view['data']['shipping_nr']."\r\n";
// $shipping_adress .= $this->view['data']['shipping_land']['kuerzel'].'-';
$shipping_adress .= $this->view['data']['shipping_plz'].' '.$this->view['data']['shipping_ort']."\r\n";
$shipping_adress .= $this->view['data']['shipping_land']['name'];
$shipping_adress = "";
if ($this->view['data']['shipping_firma'] != "")
{
$shipping_adress .= $this->view['data']['shipping_firma']."\r\n";
}
$shipping_adress .= $this->view['data']['shipping_vname'].' '.$this->view['data']['shipping_name']."\r\n";
$shipping_adress .= $this->view['data']['shipping_strasse']."\r\n";
//$shipping_adress .= $this->view['data']['shipping_land']['kuerzel'].'-';
$shipping_adress .= $this->view['data']['shipping_plz'].' '.$this->view['data']['shipping_ort']."\r\n";
$shipping_adress .= $this->view['data']['shipping_land']['name'];
$start = $pdf->getY();
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $shipping_adress, 0, 'L', 0, 100);
$offset += $pdf->getY() - $start;
864,47 → 913,55
$shipping_adress = true;
}
$offset += 5;
// Bestellvariablen
if ($this->hasMod('wpsg_mod_ordervars') && $this->get_option('wpsg_mod_rechnungen_showov') == '1')
{
 
$pdf->SetFont('Arial', 'B', 9);
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset - 7, 5, __("Angaben während der Bestellung", "wpsg").":");
$pdf->SetFont('Arial', '', 9);
 
$bvars = @unserialize($this->view['data']['bvars']);
if (!is_array($bvars)) $bvars = array();
$bvars = @unserialize($this->view['data']['bvars']);
if (!is_array($bvars)) $bvars = array();
$strBVars = "";
foreach ($bvars as $bvars_id => $bvars_value)
{
$bvars = $this->db->fetchRow("SELECT * FROM `".wpsg_q(WPSG_TBL_ORDERVARS)."` WHERE `id` = '".wpsg_q($bvars_id)."' ORDER BY `pos` ASC, `id` ASC ");
$strBVars = "";
foreach ($bvars as $bvars_id => $bvars_value)
if ($bvars['typ'] == "1") // Auswahl
{
$bvars = $this->db->fetchRow("SELECT * FROM `".wpsg_q(WPSG_TBL_ORDERVARS)."` WHERE `id` = '".wpsg_q($bvars_id)."' ORDER BY `pos` ASC, `id` ASC ");
if ($bvars['typ'] == "1") // Auswahl
{
if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
}
else if ($bvars['typ'] == "2") // Texteingabe
{
if (trim($bvars_value) == "") $bvars_value = __("Keine Angabe", "wpsg");
}
else if ($bvars['typ'] == "3") // Checkbox
{
if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
}
$bvars_name = $this->callMod('wpsg_mod_ordervars', 'getNameById', array($bvars_id));
$strBVars .= "\r\n".$bvars_name.": ".$bvars_value;
if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
}
else if ($bvars['typ'] == "2") // Texteingabe
{
if (trim($bvars_value) == "") $bvars_value = __("Keine Angabe", "wpsg");
}
else if ($bvars['typ'] == "3") // Checkbox
{
if ($bvars_value <= 0) $bvars_value = __("Keine Angabe", "wpsg");
}
$bvars_name = $this->callMod('wpsg_mod_ordervars', 'getNameById', array($bvars_id));
$strBVars .= "\r\n".$bvars_name.": ".$bvars_value;
}
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset - 6, 5, $strBVars);
 
$pdf->SetFont('Arial', 'B', 9);
$pdf->Text($prod_left, $prod_top + $offset, __("Angaben während der Bestellung", "wpsg").":");
$pdf->SetFont('Arial', '', 9);
$pdf->wpsg_MultiCell($prod_left - 1, $prod_top + $offset, 5, $strBVars);
}
if (!file_exists($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id']))))
{
mkdir($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id'])), 0777, true);
}
 
$this->callMods('wpsg_mod_rechnungen_pdf', array(&$pdf, &$this->view['data']['id'], &$this->view['preview'], &$this->view['invoice']));
$filename = $this->view['filename'].".pdf";
917,11 → 974,10
} else {
$pdf->Output($oInvoice->getFilePath(), 'F');
$pdf->Output($this->callMod('wpsg_mod_rechnungen', 'getFilePath', array($this->view['data']['id'])).$filename, 'F');
// Hier wird der Dateiname an FPD übergeben. Er soll sich aus der Rechnungsnummer ergeben, auch wenn das Dokument über die ID gespeichert ist.
$pdf->Output($this->view['filename_out'], 'I');
}
 
?>
/mods/mod_rechnungen/copymail.phtml
1,13 → 1,13
<?php
/*
* Template für die Rechnungskopie
**/
 
/*
* Template für die Rechnungskopie
*/
/** @var wpsg_order $oOrder */
$oOrder = wpsg_order::getInstance($this->view['order']['id']);
 
?><?php echo wpsg_translate(__('Hallo #1# #2# #3#,', 'wpsg'), $oOrder->getInvoiceTitle(), $oOrder->getInvoiceFirstName(), $oOrder->getInvoiceName()); ?>
$arPflicht = $this->loadPflichtFeldDaten();
$arTitle = explode('|', $arPflicht['anrede_auswahl']);
 
?><?php echo wpsg_translate(__('Hallo #1# #2# #3#,', 'wpsg'), @$arTitle[$this->view['basket']['checkout']['title']], $this->view['basket']['checkout']['vname'], $this->view['basket']['checkout']['name']); ?>
<?php if (isset($this->view['rnr'])) { ?>
<?php echo __("hiermit erhalten Sie die Kopie der Rechnung", "wpsg"); ?> <?php echo $this->view['rnr']; ?>.
/mods/mod_kundenverwaltung/settings_edit.phtml
70,12 → 70,11
</div>
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_kundenverwaltung_recaptcha_register', __('reCaptcha V2 für Registrierung', 'wpsg'), $this->get_option('wpsg_mod_kundenverwaltung_recaptcha_register'), array('help' => 'wpsg_mod_kundenverwaltung_recaptcha_register')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_kundenverwaltung_recaptcha_register', __('reCaptcha V2 für Registrierung', 'wpsg'), $this->get_option('wpsg_mod_kundenverwaltung_recaptcha_register')); ?>
<div id="wpsg_mod_kundenverwaltung_register_recaptcha_layer" style="display:none;">
<?php echo wpsg_drawForm_Input('wpsg_mod_kundenveraltung_recaptcha_key', __('Websiteschlüssel', 'wpsg'), $this->get_option('wpsg_mod_kundenveraltung_recaptcha_key')); ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_kundenveraltung_recaptcha_secretkey', __('Geheimer Schlüssel', 'wpsg'), $this->get_option('wpsg_mod_kundenveraltung_recaptcha_secretkey')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_kundenverwaltung_recaptcha_dsgvo_layer', __('DSGVO Layer für das Recaptcha', 'wpsg'), $this->get_option('wpsg_mod_kundenverwaltung_recaptcha_dsgvo_layer')); ?>
</div>
 
/mods/mod_kundenverwaltung/edit.phtml
224,7 → 224,7
 
var password = jQuery(this).val();
 
if (password.length < 8)
if (password.length < 6)
{
 
jQuery('#wpsg_pwd_length').removeClass('valid').addClass('invalid');
/mods/mod_kundenverwaltung/register.phtml
12,49 → 12,50
 
<?php if ($this->get_option('wpsg_form_validation') == '1') { ?>
 
if (typeof jQuery.validationEngine == "object")
{
jQuery("#form-step2").validationEngine('attach', {promptPosition : "centerRight", scroll: false});
jQuery('.wpsg_mod_kundenverwaltung_login').bind('click', function(){
jQuery("#form-step2").validationEngine('detach');
});
if (typeof jQuery.validationEngine == "object")
{
jQuery("#form-step2").validationEngine('attach', {promptPosition : "centerRight", scroll: false});
jQuery('.wpsg_mod_kundenverwaltung_login').bind('click', function(){
jQuery("#form-step2").validationEngine('detach');
});
 
}
}
<?php } else if ($this->get_option('wpsg_form_validation') == '2') { ?>
 
jQuery.validator.addMethod("cRequired", jQuery.validator.methods.required, "<?php echo __('Dieses Feld ist ein Pflichtfeld.', 'wpsg'); ?>");
jQuery.validator.addClassRules('validate[required]', { cRequired: true } );
jQuery("#form-step2").validate( {
ignore: '',
errorClass: 'wpsg_error',
onsubmit: false,
showErrors: function(errorMap, errorList) {
jQuery.validator.addMethod("cRequired", jQuery.validator.methods.required, "<?php echo __('Dieses Feld ist ein Pflichtfeld.', 'wpsg'); ?>");
jQuery.validator.addClassRules('validate[required]', { cRequired: true } );
jQuery("#form-step2").validate( {
ignore: '',
errorClass: 'wpsg_error',
onsubmit: false,
showErrors: function(errorMap, errorList) {
 
this.defaultShowErrors();
this.defaultShowErrors();
 
}
} );
}
} );
 
jQuery('.wpsg_registerButton').bind('click', function() {
jQuery('.wpsg_registerButton').bind('click', function() {
 
var bReturn = jQuery('#form-step2').validate().form();
if (jQuery('#form-step2 input.wpsg_error').length > 0) jQuery('#form-step2 input.wpsg_error')[0].focus();
return bReturn;
} );
var bReturn = jQuery('#form-step2').validate().form();
if (jQuery('#form-step2 input.wpsg_error').length > 0) jQuery('#form-step2 input.wpsg_error')[0].focus();
return bReturn;
} );
<?php } ?>
 
// Visualisierung der Passwortstärke
// Visualisierung der Passwortstärke
 
jQuery('input[type=password]').keyup(function(){
 
var password = jQuery(this).val();
if (password.length < 8) {
if (password.length < 6) {
jQuery('#wpsg_pwd_length').removeClass('valid').addClass('invalid');
 
103,9 → 104,11
jQuery('#wpsg_pwd_speziell').removeClass('valid').addClass('invalid');
}
 
jQuery('#wpsg_pwd_info').show();
 
 
jQuery(this).blur(function(){
 
jQuery('#wpsg_pwd_info').hide();
113,14 → 116,15
});
});
 
// Validierung Spam
<?php
if (isset($_GET["wpsg_spam_email"]) && $_GET["wpsg_spam_email"] != "") {
echo "<p>Sie haben ein Feld ausgefüllt, das frei bleiben muss.</p>";
exit;
}
?>
// Validierung Spam
<?php
if (isset($_GET["wpsg_spam_email"]) && $_GET["wpsg_spam_email"] != "") {
echo "<p>Sie haben ein Feld ausgefüllt, das frei bleiben muss.</p>";
exit;
}
?>
 
});
 
140,18 → 144,9
 
<div class="wpsg wpsg_checkout wpsg_register">
<style>
.placeholder { display: none !important; }
.m1_dsgvo_layer { position:relative; width:100%; height:100px; margin-bottom: 30px; }
.m1_dsgvo_layer > .placeholder_text { height:100px; font-size: small; position:relative; left:0; top:0; z-index:2; background-color:rgba(0, 0, 0, 0.75); display:flex; justify-content:center; align-items:center; color:#FFFFFF; flex-direction:column; padding:1rem; text-align:center; }
.m1_dsgvo_layer > .placeholder_text > button { color: rgba(0, 0, 0, 0.75); margin-top: 1rem;}
</style>
<?php echo $this->writeFrontendMessage(); ?>
<form id="form-step2" method="post" action="<?php echo $this->callMod('wpsg_mod_kundenverwaltung', 'getRegisterURL'); ?>">
 
<?php echo $this->writeFrontendMessage(); ?>
<h2><?php echo __('Registrierung', 'sto'); ?></h2>
<?php if ($this->view['pflicht']['firma'] != '2') { ?>
<div class="wpsg_checkoutblock">
198,13 → 193,7
<label for="email" class="wpsg_register"><?php echo __("E-Mail Adresse", "wpsg"); ?>
<?php if ($this->view['pflicht']['email'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input
class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="email" id="email"
name="wpsg[register][email]"
value="<?php echo htmlspecialchars(wpsg_getStr($this->view['data']['email'])); ?>"
autocomplete="off"
/>
<input class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>" type="email" id="email" name="wpsg[register][email]" value="<?php echo htmlspecialchars(wpsg_getStr($this->view['data']['email'])); ?>" />
</div>
<?php } ?>
213,14 → 202,7
<label for="email2" class="wpsg_register"><?php echo __("E-Mail Adresse (Wiederholung)", "wpsg"); ?>
<?php if ($this->view['pflicht']['email'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input
class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="email"
id="email2"
name="wpsg[register][email2]"
value="<?php echo htmlspecialchars(wpsg_getStr($this->view['data']['register']['email2'])); ?>"
autocomplete="off"
/>
<input class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>" type="email" id="email2" name="wpsg[register][email2]" value="<?php echo htmlspecialchars(wpsg_getStr($this->view['data']['register']['email2'])); ?>" />
</div>
<?php } ?>
228,14 → 210,7
<label for="pwd1" class="wpsg_register"><?php echo __("Passwort", "wpsg"); ?>
<?php if (wpsg_getStr($this->view['pflicht']['pwd1']) != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input
class="<?php echo ((wpsg_getStr($this->view['pflicht']['pwd1']) != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("mod_kundenverwaltung_pwd1", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="password"
id="pwd1"
name="wpsg[register][register_pwd1]"
autocomplete="off"
value=""
/><span id="wpsg_checkoutblock_password_result"></span>
<input class="<?php echo ((wpsg_getStr($this->view['pflicht']['pwd1']) != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("mod_kundenverwaltung_pwd1", (array)$this->view['error']))?'wpsg_error':''); ?>" type="password" id="pwd1" name="wpsg[register][register_pwd1]" value="" /><span id="wpsg_checkoutblock_password_result"></span>
</div>
<div class="wpsg_checkoutblock">
242,14 → 217,7
<label for="pwd2" class="wpsg_register"><?php echo __("Passwort (Wiederholung)", "wpsg"); ?>
<?php if (wpsg_getStr($this->view['pflicht']['pwd2']) != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input
class="<?php echo ((wpsg_getStr($this->view['pflicht']['pwd2']) != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("mod_kundenverwaltung_pwd2", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="password"
id="pwd2"
name="wpsg[register][register_pwd2]"
value=""
autocomplete="off"
/>
<input class="<?php echo ((wpsg_getStr($this->view['pflicht']['pwd2']) != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("mod_kundenverwaltung_pwd2", (array)$this->view['error']))?'wpsg_error':''); ?>" type="password" id="pwd2" name="wpsg[register][register_pwd2]" value="" />
</div>
<div id="wpsg_pwd_info">
317,13 → 285,13
<?php } ?>
<?php } ?>
 
<?php if ($this->view['pflicht']['plz'] != '2') { ?>
<div class="wpsg_checkoutblock">
<label for="plz" class="wpsg_register"><?php echo __("Postleitzahl", "wpsg"); ?>
<?php if ($this->view['pflicht']['plz'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
<?php if ($this->view['pflicht']['plz'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input class="<?php echo (($this->view['pflicht']['plz'] != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("plz", (array)$this->view['error']))?'wpsg_error':''); ?>" type="text" id="plz" name="wpsg[register][plz]" value="<?php echo htmlspecialchars(wpsg_getStr($this->view['data']['plz'])); ?>" />
<input class="wpsg_input_text <?php echo (($this->view['pflicht']['plz'] != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("plz", (array)$this->view['error']))?'wpsg_error':''); ?>" type="text" id="plz" name="wpsg[register][plz]" value="<?php echo htmlspecialchars(wpsg_getStr($this->view['data']['plz'])); ?>" />
</div>
<?php } ?>
330,7 → 298,7
<?php if ($this->view['pflicht']['ort'] != '2') { ?>
<div class="wpsg_checkoutblock">
<label for="ort" class="wpsg_register"><?php echo __("Ort", "wpsg"); ?>
<?php if ($this->view['pflicht']['ort'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
<?php if ($this->view['pflicht']['ort'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input class="<?php echo (($this->view['pflicht']['ort'] != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("ort", (array)$this->view['error']))?'wpsg_error':''); ?>" type="text" id="ort" name="wpsg[register][ort]" value="<?php echo htmlspecialchars(wpsg_getStr($this->view['data']['ort'])); ?>" />
</div>
339,7 → 307,7
<?php if ($this->view['pflicht']['land'] != '2') { ?>
<div class="wpsg_checkoutblock">
<label for="wpsg_land" class="wpsg_register"><?php echo __("Land", "wpsg"); ?>
<?php if ($this->view['pflicht']['land'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
<?php if ($this->view['pflicht']['land'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<select name="wpsg[register][land]" class="<?php echo (($this->view['pflicht']['land'] != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("land", (array)$this->view['error']))?'wpsg_error':''); ?>" id="wpsg_land">
<option value="-1"><?php echo __('Bitte auswählen', 'wpsg'); ?></option>
353,7 → 321,7
<?php if ($this->view['pflicht']['ustidnr'] != '2') { ?>
<div class="wpsg_checkoutblock">
<label for="wpsg_ustidnr" class="wpsg_register"><?php echo __("UStIdNr.", "wpsg"); ?>
<?php if ($this->view['pflicht']['ustidnr'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
<?php if ($this->view['pflicht']['ustidnr'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input class="<?php echo (($this->view['pflicht']['ustidnr'] != '1')?'validate[required]':''); ?> wpsg_register <?php echo ((in_array("ustidnr", (array)$this->view['error']))?'wpsg_error':''); ?>" type="text" id="wpsg_ustidnr" name="wpsg[register][ustidnr]" value="<?php echo htmlspecialchars(wpsg_getStr($this->view['data']['ustidnr'])); ?>" />
</div>
386,68 → 354,54
<?php /* Automatische Einbindung der benutzerdefinierten Kundenfelder ENDE */ ?>
<div class="wpsg_clear"></div>
 
<?php if ($this->get_option('wpsg_mod_kundenverwaltung_recaptcha_register') === '1') { ?>
<div class="wpsg_checkoutblock">
<label class="recaptcha_v2_checkout ">
 
<?php echo __('SPAM Schutz Abfrage'); ?> <span class="wpsg_required">*</span>:
 
<?php if ($this->get_option('wpsg_mod_kundenverwaltung_recaptcha_dsgvo_layer') != '1') { ?>
<div class="g-recaptcha" data-sitekey="<?php echo $this->get_option('wpsg_mod_kundenveraltung_recaptcha_key'); ?>"></div>
<?php } else { ?>
<div class="wpsg_recaptcha placeholder"> <!-- Platzhalter für das Google ReCAPTCHA --> </div>
<div class="m1_dsgvo_layer ">
<div class="placeholder_text">
<strong>Datenschutz ist uns wichtig!</strong>
Daher wird das Google ReCAPTCHA erst geladen, wenn sie der Verwendung des Drittanbieters "Google LLC" zustimmen durch den möglicherweise Cookies gesetzt werden.<br />
<button class="layer_link wpsg_required">Ich bin damit einverstanden.</button>
</div>
</div>
<?php } ?>
 
</label>
</div>
<div class="wpsg_clear"></div>
<?php } ?>
<?php if ($this->get_option('wpsg_mod_kundenverwaltung_mathcaptcha') === '1') {
$number1 = rand(0, 9);
$number2 = rand(0, 10);
$arOperator = ['+', '-', '*']; $operator = $arOperator[array_rand($arOperator)];
$time = time();
switch ($operator) {
case '+': $captcha_result = $number1 + $number2; break;
case '-': $captcha_result = $number1 - $number2; break;
case '*': $captcha_result = $number1 * $number2; break;
default: throw new \Exception();
}
\set_transient('wpsg_mod_kundenverwaltung_mathcaptcha_result', $captcha_result);
?>
<div class="wpsg_checkoutblock">
<label for="wpsg_mod_kundenverwaltung_mathcaptcha" class="wpsg_register"><?php echo wpsg_translate(
__("Ergebnis aus #1# #2# #3#", "wpsg"),
$number1, $operator, $number2
); ?>:
<span class="wpsg_required">*</span>
</label>
<input
class="validate[required] wpsg_register <?php echo ((in_array("wpsg_mod_kundenverwaltung_mathcaptcha", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="text" id="wpsg_mod_kundenverwaltung_mathcaptcha" name="wpsg_mod_kundenverwaltung_mathcaptcha"
placeholder="SPAM Schutz"
value="" />
</div>
<?php } ?>
<?php if ($this->get_option('wpsg_mod_kundenverwaltung_recaptcha_register') === '1') { ?>
<div class="wpsg_checkoutblock">
<label>
<?php echo __('SPAM Schutz Abfrage'); ?> <span class="wpsg_required">*</span>:
<div class="g-recaptcha" data-sitekey="<?php echo $this->get_option('wpsg_mod_kundenveraltung_recaptcha_key'); ?>"></div>
</label>
</div>
<div class="wpsg_clear"></div>
<?php } ?>
<?php if ($this->get_option('wpsg_mod_kundenverwaltung_mathcaptcha') === '1') {
$number1 = rand(0, 9);
$number2 = rand(0, 10);
$arOperator = ['+', '-', '*']; $operator = $arOperator[array_rand($arOperator)];
$time = time();
switch ($operator) {
case '+': $captcha_result = $number1 + $number2; break;
case '-': $captcha_result = $number1 - $number2; break;
case '*': $captcha_result = $number1 * $number2; break;
default: throw new \Exception();
}
\set_transient('wpsg_mod_kundenverwaltung_mathcaptcha_result', $captcha_result);
?>
<div class="wpsg_checkoutblock">
<label for="wpsg_mod_kundenverwaltung_mathcaptcha" class="wpsg_register"><?php echo wpsg_translate(
__("Ergebnis aus #1# #2# #3#", "wpsg"),
$number1, $operator, $number2
); ?>:
<span class="wpsg_required">*</span>
</label>
<input
class="validate[required] wpsg_register <?php echo ((in_array("wpsg_mod_kundenverwaltung_mathcaptcha", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="text" id="wpsg_mod_kundenverwaltung_mathcaptcha" name="wpsg_mod_kundenverwaltung_mathcaptcha"
placeholder="SPAM Schutz"
value="" />
</div>
<?php } ?>
<div class="wpsg_mandatoryfield_hint">
<?php echo wpsg_translate(__('Mit #1# gekennzeichnete Felder sind Pflichtfelder.', 'wpsg'), '<span class="wpsg_required">*</span>'); ?>
</div>
454,11 → 408,11
<?php /* versteckte Sicherheitsabfrage als Bot-Schutz START*/ ?>
<span style="display:none">
<label for="wpsg_spam_email">Das Feld muss frei bleiben:</label>
<input type="text" name="wpsg_spam_email" id="wpsg_spam_email" title=" dieses Feld muss frei bleiben " />
<label for="wpsg_spam_email">Das Feld muss frei bleiben:</label>
<input type="text" name="wpsg_spam_email" id="wpsg_spam_email" title=" dieses Feld muss frei bleiben " />
</span>
<?php /* versteckte Sicherheitsabfrage als Bot-Schutz ENDE*/ ?>
<br />
<input type="submit" class="wpsg_button wpsg_registerButton" value="<?php echo __('Registrieren', 'wpsg'); ?>" name="wpsg_mod_kundenverwaltung_register" />
467,29 → 421,4
<div class="wpsg_clear"></div>
</form>
 
<script>
// DSGVO Layer Script
document.querySelector('.layer_link').addEventListener('click', function() {
 
const recaptcha = document.createElement("div");
const a = document.createAttribute("data-sitekey");
const b = document.createAttribute("style");
a.value = "<?php echo $this->get_option('wpsg_mod_kundenveraltung_recaptcha_key'); ?>";
b.value = "float: left !important;";
recaptcha.classList.add("g-recaptcha");
recaptcha.setAttributeNode(a);
recaptcha.setAttributeNode(b);
 
document.querySelector('.wpsg_recaptcha').appendChild(recaptcha);
(function(){var w=window,C='___grecaptcha_cfg',cfg=w[C]=w[C]||{},N='grecaptcha';var gr=w[N]=w[N]||{};gr.ready=gr.ready||function(f){(cfg['fns']=cfg['fns']||[]).push(f);};w['__recaptcha_api']='https://www.google.com/recaptcha/api2/';(cfg['render']=cfg['render']||[]).push('onload');w['__google_recaptcha_client']=true;var d=document,po=d.createElement('script');po.type='text/javascript';po.async=true;po.src='https://www.gstatic.com/recaptcha/releases/vP4jQKq0YJFzU6e21-BGy3GP/recaptcha__de.js';po.crossOrigin='anonymous';po.integrity='sha384-xxpEMChSTl1oMpSrXrILE1mQOlVQNv6OGibce0r0HX1HeHF72bSDheOIehafBC9Y';var e=d.querySelector('script[nonce]'),n=e&&(e['nonce']||e.getAttribute('nonce'));if(n){po.setAttribute('nonce',n);}var s=d.getElementsByTagName('script')[0];s.parentNode.insertBefore(po, s);})();
 
document.querySelector('.m1_dsgvo_layer').classList.add('placeholder');
document.querySelector('.wpsg_recaptcha').classList.remove('placeholder');
 
event.preventDefault();
 
});
</script>
 
</div>
/mods/mod_kundenverwaltung/order.phtml
22,26 → 22,14
<div class="wpsg_inner wpsg_order_<?php echo $order['id']; ?>">
<strong><?php echo __('Bestellstatus', 'wpsg'); ?>:</strong>&nbsp;
<?php echo $this->arStatus[$order['status']]; ?>
<?php if ($this->hasMod('wpsg_mod_rechnungen')) {
 
$arInvoice = \wpsg\wpsg_invoice::findByOrderId(intval($order['id']));
 
?>
 
<?php foreach ($arInvoice as $oInvoice) { ?>
 
<?php if ($oInvoice->isInvoice()) { ?>
 
<a href="<?php echo $this->callMod('wpsg_mod_rechnungen', 'getFrontendLink', [$oInvoice->getId()]); ?>"><?php echo wpsg_translate(__('Rechnung #1#', 'wpsg'), $oInvoice->getNr()); ?></a>
 
<?php } else if ($oInvoice->isStorno()) { ?>
 
<a href="<?php echo $this->callMod('wpsg_mod_rechnungen', 'getFrontendLink', [$oInvoice->getId()]); ?>"><?php echo wpsg_translate(__('Rechnungskorrektur #1#', 'wpsg'), $oInvoice->getNr()); ?></a>
 
<?php } ?>
 
<?php } ?>
 
<?php if ($this->hasMod('wpsg_mod_rechnungen')) { ?>
<?php if ($r = $this->callMod('wpsg_mod_rechnungen', 'getOrderInvoice', array($order['id']))) { ?>
<a href="<?php echo $this->callMod('wpsg_mod_rechnungen', 'getFrontendLink', array($r['id'])); ?>"><?php echo wpsg_translate(__('Rechnung #1#', 'wpsg'), $r['rnr']); ?></a>
<?php } else if ($r = $this->callMod('wpsg_mod_rechnungen', 'getOrderCredit', array($order['id']))) { ?>
<a href="<?php echo $this->callMod('wpsg_mod_rechnungen', 'getFrontendLink', array($r['id'])); ?>"><?php echo wpsg_translate(__('Rechnungskorrektur #1#', 'wpsg'), $r['gnr']); ?></a>
<?php } ?>
<?php } ?>
<br />
<strong><?php echo __('Rechnungsbetrag', 'wpsg'); ?>:</strong> <?php echo wpsg_ff($order['price_gesamt'], $this->get_option('wpsg_currency')); ?><br />
/mods/mod_kundenverwaltung/profil.phtml
1,6 → 1,6
<?php
 
/**
/**
* Seite für das Profil eines Kunden
*/
 
50,7 → 50,7
 
var password = jQuery(this).val();
if (password.length < 8) {
if (password.length < 6) {
jQuery('#wpsg_pwd_length').removeClass('valid').addClass('invalid');
 
193,15 → 193,7
<label for="email" class="wpsg_checkout"><?php echo __("E-Mail Adresse", "wpsg"); ?>
<?php if ($this->view['pflicht']['email'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input
class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?>
wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="email"
id="email"
name="wpsg[profil][email]"
value="<?php echo htmlspecialchars($this->view['data']['email']); ?>"
autocomplete="off"
/>
<input class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>" type="email" id="email" name="wpsg[profil][email]" value="<?php echo htmlspecialchars($this->view['data']['email']); ?>" />
</div>
<?php } ?>
210,15 → 202,7
<label for="email" class="wpsg_checkout"><?php echo __("E-Mail Adresse (Wiederholung)", "wpsg"); ?>
<?php if ($this->view['pflicht']['email'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input
class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?>
wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="email"
id="email2"
name="wpsg[profil][email2]"
value="<?php echo htmlspecialchars($this->view['data']['email2']); ?>"
autocomplete="off"
/>
<input class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>" type="email" id="email2" name="wpsg[profil][email2]" value="<?php echo htmlspecialchars($this->view['data']['email2']); ?>" />
</div>
<?php } ?>
340,14 → 324,7
<label for="wpsg_mod_kundenverwaltung_pwd1"><?php echo __("Passwort", "wpsg"); ?>
<?php if ($this->get_option('wpsg_mod_kundenverwaltung_showCheckoutRegisterzwang') == '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input
class="wpsg_checkout <?php echo ((in_array("mod_kundenverwaltung_pwd1", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="password"
id="wpsg_mod_kundenverwaltung_pw1"
name="wpsg[mod_kundenverwaltung][register_pwd1]"
value=""
autocomplete="off"
/><span id="wpsg_mod_kundenverwaltung_password_result"></span>
<input class="wpsg_checkout <?php echo ((in_array("mod_kundenverwaltung_pwd1", (array)$this->view['error']))?'wpsg_error':''); ?>" type="password" id="wpsg_mod_kundenverwaltung_pw1" name="wpsg[mod_kundenverwaltung][register_pwd1]" value="" /><span id="wpsg_mod_kundenverwaltung_password_result"></span>
</div>
<div class="wpsg_checkoutblock">
354,14 → 331,7
<label for="wpsg_mod_kundenverwaltung_pwd2"><?php echo __("Passwort wiederholen", "wpsg"); ?>
<?php if ($this->get_option('wpsg_mod_kundenverwaltung_showCheckoutRegisterzwang') == '1') { ?><span class="wpsg_required">*</span><?php } ?>:
</label>
<input
class="wpsg_checkout <?php echo ((in_array("mod_kundenverwaltung_pwd2", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="password"
id="wpsg_mod_kundenverwaltung_pwd2"
name="wpsg[mod_kundenverwaltung][register_pwd2]"
value=""
autocomplete="off"
/>
<input class="wpsg_checkout <?php echo ((in_array("mod_kundenverwaltung_pwd2", (array)$this->view['error']))?'wpsg_error':''); ?>" type="password" id="wpsg_mod_kundenverwaltung_pwd2" name="wpsg[mod_kundenverwaltung][register_pwd2]" value="" />
</div>
<div id="wpsg_pwd_info">
/mods/mod_kundenverwaltung/login.phtml
18,25 → 18,12
<div class="wpsg_block wpsg_checkoutblock">
<label for="wpsg_mod_kundenverwaltung_email"><?php echo __("E-Mail Adresse", "wpsg"); ?>:</label>
<input
class="wpsg_checkout"
type="text"
autocomplete="off"
id="wpsg_mod_kundenverwaltung_email"
name="wpsg[mod_kundenverwaltung][email]"
value="<?php echo wpsg_getStr($this->view['wpsg_mod_kundenverwaltung']['email']); ?>" />
<input class="wpsg_checkout" type="text" id="wpsg_mod_kundenverwaltung_email" name="wpsg[mod_kundenverwaltung][email]" value="<?php echo wpsg_getStr($this->view['wpsg_mod_kundenverwaltung']['email']); ?>" />
</div>
<div class="wpsg_block wpsg_checkoutblock">
<label for="wpsg_mod_kundenverwaltung_password"><?php echo __("Passwort", "wpsg"); ?>:</label>
<input
class="wpsg_checkout"
type="password"
id="wpsg_mod_kundenverwaltung_password"
name="wpsg[mod_kundenverwaltung][password]"
value=""
autocomplete="off"
/>
<input class="wpsg_checkout" type="password" id="wpsg_mod_kundenverwaltung_password" name="wpsg[mod_kundenverwaltung][password]" value="" />
</div>
<br />
/mods/mod_kundenverwaltung/widget.phtml
31,21 → 31,8
<h2 class="widget-title widgettitle"><?php echo __('Login', 'wpsg'); ?></h2>
<input
type="text"
value="<?php echo __('E-Mail', 'wpsg'); ?>"
id="wpsg_mod_kundenverwaltung_widget_email"
name="wpsg[mod_kundenverwaltung][email]"
autocomplete="off"
/>
<input
type="password"
value="<?php echo __('Passwort', 'wpsg'); ?>"
id="wpsg_mod_kundenverwaltung_widget_passwort"
name="wpsg[mod_kundenverwaltung][password]"
autocomplete="off"
/>
<input type="text" value="<?php echo __('E-Mail', 'wpsg'); ?>" id="wpsg_mod_kundenverwaltung_widget_email" name="wpsg[mod_kundenverwaltung][email]" />
<input type="password" value="<?php echo __('Passwort', 'wpsg'); ?>" id="wpsg_mod_kundenverwaltung_widget_passwort" name="wpsg[mod_kundenverwaltung][password]" />
<br /><br />
/mods/mod_kundenverwaltung/checkout_login.phtml
11,27 → 11,13
<div class="wpsg_checkoutblock">
<label for="wpsg_mod_kundenverwaltung_email"><?php echo __("E-Mail Adresse", "wpsg"); ?>:
</label>
<input
class="wpsg_checkout <?php echo ((in_array("wpsg_mod_kundenverwaltung_email", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="text"
id="wpsg_mod_kundenverwaltung_email"
name="wpsg[mod_kundenverwaltung][email]"
value=""
autocomplete="off"
/>
<input class="wpsg_checkout <?php echo ((in_array("wpsg_mod_kundenverwaltung_email", (array)$this->view['error']))?'wpsg_error':''); ?>" type="text" id="wpsg_mod_kundenverwaltung_email" name="wpsg[mod_kundenverwaltung][email]" value="" />
</div>
<div class="wpsg_checkoutblock">
<label for="wpsg_mod_kundenverwaltung_password"><?php echo __("Passwort", "wpsg"); ?>:
</label>
<input
class="wpsg_checkout <?php echo ((in_array("wpsg_mod_kundenverwaltung_password", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="password"
id="wpsg_mod_kundenverwaltung_password"
name="wpsg[mod_kundenverwaltung][password]"
value=""
autocomplete="off"
/>
<input class="wpsg_checkout <?php echo ((in_array("wpsg_mod_kundenverwaltung_password", (array)$this->view['error']))?'wpsg_error':''); ?>" type="password" id="wpsg_mod_kundenverwaltung_password" name="wpsg[mod_kundenverwaltung][password]" value="" />
</div>
<br />
/mods/mod_produktartikel/settings_edit.phtml
21,6 → 21,11
 
<br />
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_produktartikel_ean', __('Darstellung der EAN aktivieren', 'wpsg'), $this->get_option('wpsg_mod_produktartikel_ean'), array('help' => 'wpsg_mod_produktartikel_ean')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_produktartikel_gtin', __('Darstellung der GTIN aktivieren', 'wpsg'), $this->get_option('wpsg_mod_produktartikel_gtin'), array('help' => 'wpsg_mod_produktartikel_gtin')); ?>
 
<br />
 
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_produktartikel_cat', __('Kategorie in Produktübersicht (Backend) anzeigen', 'wpsg'), $this->get_option('wpsg_mod_produktartikel_cat'), array('help' => 'wpsg_mod_produktartikel_cat')); ?>
<div id="wpsg_mod_produktartikel_cat_1">
<?php echo wpsg_drawForm_Checkbox('wpsg_mod_produktartikel_cat_first_level', __('Nur erste Ebene', 'wpsg'), $this->get_option('wpsg_mod_produktartikel_cat_first_level'), array('help' => 'wpsg_mod_produktartikel_cat_first_level')); ?>
/mods/mod_produktartikel/produkt_edit_allgemein.phtml
8,3 → 8,10
?>
<?php echo wpsg_drawForm_Input('wpsg_mod_produktartikel[path]', __('URL Path Segment', 'wpsg'), wpsg_getStr($this->view['data']['post_name']), array('help' => 'wpsg_mod_produktartikel_url_path_seg')); ?>
 
<?php if (wpsg_isSizedInt($this->get_option('wpsg_mod_produktartikel_ean'))) { ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_produktartikel[ean]', __('EAN', 'wpsg'), wpsg_getStr($this->view['data']['ean']), array('help' => 'wpsg_mod_produktartikel_ean')); ?>
<?php } ?>
 
<?php if (wpsg_isSizedInt($this->get_option('wpsg_mod_produktartikel_gtin'))) { ?>
<?php echo wpsg_drawForm_Input('wpsg_mod_produktartikel[gtin]', __('GTIN', 'wpsg'), wpsg_getStr($this->view['data']['gtin']), array('help' => 'wpsg_mod_produktartikel_gtin')); ?>
<?php } ?>
/mods/mod_abo/index.phtml
79,11 → 79,9
<div class="col-lg-6">
<select name="filter[enddate_y]" class="form-control input-sm">
<option value="-1"><?php echo __("Alle", "wpsg"); ?></option>
<?php if(isset($this->view['enddate_years']) && !empty($this->view['enddate_years'])) {
foreach ($this->view['enddate_years'] as $y) { ?>
<option <?php echo ((wpsg_getStr($this->view['arFilter']['enddate_y']) == $y)?'selected="selected"':''); ?> value="<?php echo $y; ?>"><?php echo $y; ?></option>
<?php }
} ?>
<?php foreach ($this->view['enddate_years'] as $y) { ?>
<option <?php echo ((wpsg_getStr($this->view['arFilter']['enddate_y']) == $y)?'selected="selected"':''); ?> value="<?php echo $y; ?>"><?php echo $y; ?></option>
<?php } ?>
</select>
</div>
</div>
129,7 → 127,7
<th class="col_customer wpsg_order" data-order="customer"><?php echo __('Kunde', 'wpsg'); ?></th>
<th class="col_payment wpsg_order" data-order="payment"><?php echo __('Bezahlmethode', 'wpsg'); ?></th>
<th class="col_shipping wpsg_order" data-order="shipping"><?php echo __('Versandart', 'wpsg'); ?></th>
<th class="col_products wpsg_order" data-order="products"><?php echo __('Abonnement', 'wpsg'); ?></th>
<th class="col_products wpsg_order" data-order="products"><?php echo __('Abonnement', 'wpsg'); ?></th>
<th class="col_sum wpsg_order" data-order="amount"><?php echo __('Bestellwert', 'wpsg'); ?></th>
<th class="col_time wpsg_order" data-order="expiration"><?php echo __('Laufzeit', 'wpsg'); ?></th>
<th class="col_state"><?php echo __('Status', 'wpsg'); ?></th>
/mods/mod_abo/order_view_base.phtml
7,7 → 7,7
?>
<tr class="wpsg_<?php echo (($this->view['i'] == 0)?'odd':'even'); ?>">
<td ><?php echo __('Abo Verlängerungen', 'wpsg'); ?>:</td>
<td align="right" colspan="<?php echo ((sizeof($this->view['basket']['mwst'])??0 > 1 || $this->get_option('wpsg_showMwstAlways') == '1')?'4':'3'); ?>">
<td align="right" colspan="<?php echo ((sizeof($this->view['basket']['mwst']) > 1 || $this->get_option('wpsg_showMwstAlways') == '1')?'4':'3'); ?>">
<?php if (wpsg_isSizedArray($this->view['wpsg_mod_abo']['rebuy'])) { ?>
<?php foreach ($this->view['wpsg_mod_abo']['rebuy'] as $k => $v) { ?>
<?php echo wpsg_translate(__('Mit Bestellung <a href="#1#">#2#</a> um #3# Tage verlängert.', 'wpsg'), WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Order&action=view&edit_id='.$v['o_id'], $v['order']['onr'], $v['tage']); ?><br />
/mods/mod_productgroups/index.phtml
80,29 → 80,16
<table class="table wpsg-table-order table-bordered table-hover table-striped wpsg-table-customer">
<thead>
<tr>
<th class="wpsg_pic_col"></th>
<th class="wpsg_order col_name" data-order="nr"><?php echo __("Name", 'wpsg'); ?></th>
<th class="wpsg_order col_template" data-order="template"><?php echo __("Template", 'wpsg'); ?></th>
<th class="wpsg_order col_pos" data-order="template"><?php echo __("Position", 'wpsg'); ?></th>
<th class="wpsg_order col_products" data-order="products"><?php echo __("Produkte", 'wpsg'); ?></th>
</tr>
</thead>
<tbody>
<?php foreach ($this->view['arData'] as /** @var wpsg_productgroup */ $pg) { ?>
<?php foreach ($this->view['arData'] as $pg) { ?>
<tr>
<td class="wpsg_pic_col">
<?php if ($pg->getImage() > 0) { ?>
 
<?php echo \wp_get_attachment_image($pg->getImage(), [75, 75]); ?>
 
<?php } ?>
</td>
<td class="col_name">
<strong><a title="<?php echo __("Diese Produktgruppe bearbeiten", "wpsg"); ?>" href="<?php
 
echo wpsg_admin_url('Productgroups', '', ['wpsg_mod_action' => 'edit', 'edit_id' => $pg->id]);
 
?>" class="row-title"><?php echo $pg->name; ?></a></strong>
<strong><a title="<?php echo __("Diese Produktgruppe bearbeiten", "wpsg"); ?>" href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Productgroups&wpsg_mod_action=edit&edit_id=<?php echo $pg->id; ?>" class="row-title"><?php echo $pg->name; ?></a></strong>
<div class="row-actions">
<span class="edit"><a title="<?php echo __("Diese Produktgruppe bearbeiten", "wpsg"); ?>" href="<?php
124,9 → 111,6
<td class="col_template">
<?php echo (($pg->template_file == "0")?'Individuelle Produkttemplates':$pg->template_file); ?>
</td>
<td class="col_pos">
<?php echo $pg->pos; ?>
</td>
<td class="col_products">
<?php echo $pg->countProducts(); ?>
</td>
/mods/mod_productgroups/list.phtml
11,17 → 11,9
?>
 
<?php $c = 0; foreach ((array)$this->view['data'] as $k => $g) {
 
$oProductgroup = wpsg_productgroup::getInstance(intval($k));
?>
<?php $c = 0; foreach ((array)$this->view['data'] as $k => $g) { ?>
<?php //wpsg_debug($g) ?>
<div class="wpsg_pgruppen_list_row <?php
echo (($oProductgroup->hasActiveDiscount())?'active_discount':'');
 
?>">
<div class="wpsg_pgruppen_list_row">
<div class="wpsg_pgruppen_list_titel">
<a href="<?php echo WPSG_URL_WP ?>?page_id=<?php echo get_the_ID(); ?>&show=<?php echo $k ?>">
<h2><?php echo $g['pgruppe_name'] ?></h2>
30,10 → 22,9
<div class="wpsg_pgruppen_list_produkte">
<?php for ($i = 0; $i < $showP && $i < sizeof($g['produkte']); $i ++) { ?>
 
<?php
<?
 
if ($this->hasMod('wpsg_mod_stock')) $lagerbestand = $this->callMod('wpsg_mod_stock', 'getBestand', [$g['produkte'][$i]['id']]);
else $lagerbestand = 1;
$lagerbestand = $this->callMod('wpsg_mod_stock', 'getBestand', [$g['produkte'][$i]['id']]);
 
?>
 
43,19 → 34,17
 
<?php } else { ?>
 
<?php if (sizeof($g['produkte'][$i]['bilder']??[]) > 0) { ?>
<?php $image = array_rand($g['produkte'][$i]['bilder']); ?>
<?php if ($image >= 0 && is_int($image)) { ?>
<div class="wpsg_pgruppen_list_image">
<a href="<?php echo $g['produkte'][$i]['url'] ?>">
<?php echo wp_get_attachment_image($g['produkte'][$i]['bilder'][0], 'thumbnail', false, array()); ?>
</a>
</div>
<?php } ?>
<?php } ?>
<?php $image = array_rand($g['produkte'][$i]['bilder']); ?>
<?php if ($image >= 0 && is_int($image)) { ?>
<div class="wpsg_pgruppen_list_image">
 
<a href="<?php echo $g['produkte'][$i]['url'] ?>">
<?php echo wp_get_attachment_image($g['produkte'][$i]['bilder'][0], 'thumbnail', false, array()); ?>
</a>
 
</div>
<?php } ?>
 
<?php } ?>
 
<?php } ?>
/mods/mod_productgroups/add.phtml
4,15 → 4,6
* Template für das Anlegen/Bearbeiten einer Produktgruppe
*/
 
/** @var wpsg_productgroup|null $oProductgroup */
$oProductgroup = null;
 
if (intval($_REQUEST['edit_id']??0) > 0) {
 
$oProductgroup = wpsg_productgroup::getInstance(intval($_REQUEST['edit_id']));
 
}
 
?>
 
<div class="wpsg_productgroups" id="wpsg-bs">
69,80 → 60,7
 
<?php echo wpsg_drawForm_Select('template_file', __('Template', 'wpsg'), $this->view['templates'], $this->view['data']['template_file']); ?>
<?php echo wpsg_drawForm_Select('infopage', __('Info Seite', 'wpsg'), $this->view['pages'], $this->view['data']['infopage']); ?>
<?php echo wpsg_drawForm_Input('pos', __('Positionsnummer (Sortierung, aufsteigend)', 'wpsg'), $this->view['data']['pos']); ?>
 
<div class="form-group form-group-sm ">
<label class="col-sm-6 control-label"><?php echo __('Produktgruppenbild', 'wpsg'); ?></label>
<div class="col-sm-6">
<div class="wpsg_field_wrap">
<div id="imageBox"><?php
 
if ($oProductgroup !== null) {
 
if ($oProductgroup->getImage() > 0) {
 
echo wp_get_attachment_image($oProductgroup->getImage(), 'full', false, [
'style' => 'max-width:100%; height:auto; margin-bottom:8px;'
]);
 
}
 
}
 
?></div>
 
<input value="Mediathek" class="button" type="button" style="text-align:center;" size="10" id="btnAddImgLink" />
<input type="hidden" name="image" value="<?php echo (($oProductgroup !== null)?$oProductgroup->getImage():0); ?>" id="image_input" />
 
<script>
 
let wpframe = undefined;
let imageBox = document.getElementById('imageBox');
let elImageInput = document.getElementById('image_input');
 
document.getElementById('btnAddImgLink').addEventListener('click', (event) => {
 
event.preventDefault();
 
if (wpframe !== undefined) { wpframe.open(); return; }
 
wpframe = wp.media.frames.file_frame = wp.media({
title: "<?php echo __('Auswählen oder Hochladen von Medien', 'wpsg'); ?>",
button: { text: "<?php echo __('Medien benutzen', 'wpsg'); ?>" },
multiple: false
});
 
wpframe.on('select', () => {
 
let attachments = wpframe.state().get('selection').map((attachment) => {
 
attachment.toJSON();
 
return attachment;
 
});
 
for (let i = 0; i < attachments.length; ++i) {
 
let attachment = attachments[i];
 
imageBox.innerHTML = '<img src="' + attachment.attributes.url + '" alt="" style="max-width:100%; margin-bottom:8px;"/>';
elImageInput.value = attachment.attributes.id;
 
}
 
});
 
wpframe.open();
 
});
 
</script>
</div>
</div>
<div class="clearfix wpsg_clear"></div>
</div>
 
<?php echo wpsg_drawForm_AdminboxEnd(); ?>
 
</div>
/mods/mod_productgroups/settings_edit.phtml
6,10 → 6,6
 
?>
<?php echo wpsg_drawForm_Select('wpsg_productgroups_page', __('Produktgruppenübersichtsseite', 'wpsg'), $this->view['pages'], $this->get_option('wpsg_productgroups_page'), array('help' => 'wpsg_mod_productgroups_page')); ?>
<?php echo wpsg_drawForm_Select('wpsg_productgroups_page_layout', __('Layout der Übersichtsseite', 'wpsg'), [
'0' => 'Layout 1 (show.phtml)',
'1' => 'Layout 2 (show_2.phml)'
], $this->get_option('wpsg_productgroups_page_layout'), ['help' => 'wpsg_productgroups_page_layout']); ?>
<?php echo wpsg_drawForm_Select('wpsg_productgroups_order', __('Sortierung innerhalb der Gruppe', 'wpsg'), array(
'id' => __('Nach ID', 'wpsg'),
'alphabetisch' => __('Alphabetisch', 'wpsg'),
/mods/mod_deliverytime/product_bottom.phtml
18,18 → 18,14
 
<?php if ($days_between <= 1) { ?>
 
<div class="wpsg_mod_deliverytime wpsg_mod_deliverytime_product_bottom">
<span class="fa fa-calendar-minus-o"></span>
<span class="label label_deliverytime_product">Verfügbarkeit: </span>
<span class="label_deliverytime"><?php echo __('sofort Verfügbar', 'wpsg') ;?></span>
<div class="wpsg_mod_deliverytime_product_bottom">
<?php echo __('sofort Lieferbar', 'wpsg') ;?>
</div>
<?php } else { ?>
 
<div class="wpsg_mod_deliverytime wpsg_mod_deliverytime_product_bottom">
<span class="fa fa-calendar-minus-o"></span>
<span class="label label_deliverytime_product">Verfügbarkeit: </span>
<span class="label_deliverytime"><?php echo wpsg_translate(__('Lieferbar in #1# Tagen', 'wpsg'), $days_between); ?></span>
<div class="wpsg_mod_deliverytime_product_bottom">
<?php echo wpsg_translate(__('Lieferbar in #1# Tagen', 'wpsg'), $days_between); ?>
</div>
 
<?php } ?>
/mods/mod_prepayment/order_done.phtml
7,7 → 7,6
//wpsg_debug($this->view['wpsg_mod_prepayment']['subject']);
?>
 
<?php echo wpsg_translate(__('Sie haben die Zahlungsart "Vorkasse" gewählt. Überweisen Sie daher den Rechnungsbetrag von #1# auf folgendes Konto:', 'wpsg'), wpsg_ff($this->view['basket']['arCalculation']['sum']['topay_brutto'], $this->get_option('wpsg_currency'))); ?>
<br /><br />
<?php echo wpsg_translate(__('Kontoinhaber: #1#', 'wpsg'), $this->replaceUniversalPlatzhalter($this->get_option('wpsg_mod_prepayment_kinhaber'))); ?><br />
16,168 → 15,21
<?php echo wpsg_translate(__('BIC-/SWIFT-Code: #1#', 'wpsg'), $this->replaceUniversalPlatzhalter($this->get_option('wpsg_mod_prepayment_swift'))); ?>
<br /><br />
<?php echo wpsg_translate(__('Bitte als Betreff angeben: "#1#"', 'wpsg'), $this->view['wpsg_mod_prepayment']['subject']); ?>
<br /><br />
 
<?php return; if ( isset($this->view['wpsg_mod_prepayment']['subject']) && ($this->get_option('wpsg_mod_prepayment_qrcode') == true) ) { ?>
 
<?php require_once WPSG_PATH_LIB.'phpgirocode.class.php'; ?>
 
<?php if ($this->get_option('wpsg_mod_prepayment_qrcode_country') == '0') { ?>
<?php if (isset($this->view['wpsg_mod_prepayment']['subject'])) { ?>
<p>
<?php echo __('Wenn Ihre Banking-App Girocode unterstützt, können Sie diesen QRCode scannen.', 'wpsg'); ?>
</p>
<?php
require_once WPSG_PATH_LIB.'phpgirocode.class.php';
$img = $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['wpsg_mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 8, PhpGirocode::OUTPUT_BASE64));
echo '<img src="data:image/png;base64,'.$img.'" />';
<!-- Girocode und QR-Rechnung -->
 
<?php
try {
$img = array();
$img = $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['wpsg_mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 10, PhpGirocode::OUTPUT_BASE64, $this->get_option('wpsg_mod_prepayment_qrcode_country'), $this->view['basket']));
?>
<div class="wpsg_mod_prepayment_info_wrap">
<?php foreach ($img as $i) { ?>
<div class="wpsg_mod_prepayment_info">
<div class="wpsg_mod_prepayment_info_left">
<div class="wpsg_mod_prepayment_info_left_qr-download">
<h4><?php echo wpsg_translate(__($i['title'], 'wpsg')); ?></h4>
<?php if (isset($i['filepath'])) { ?><a title="Downloadlink für die QR-Rechnung" target="_blank" href="<?php echo $this->callMod('wpsg_mod_prepayment', 'getFrontendLink', [$i['order_id']]); ?>"><i class="fa fa-download" aria-hidden="true"></i></a><?php } ?>
</div>
<br />
<?php echo '<img class="wpsg_mod_prepayment_info_left_qrcodeimg" src="data:image/png;base64,'.$i['hash'].'" />'; ?>
<br />
<div class="wpsg_mod_prepayment_info_left_wrap">
<div class="wpsg_mod_prepayment_info_left_currency">
<h4><?php echo wpsg_translate(__('Währung', 'wpsg')); ?></h4>
<?php echo $this->get_option('wpsg_currency'); ?>
</div>
<div class="wpsg_mod_prepayment_info_left_amount">
<h4><?php echo wpsg_translate(__('Betrag', 'wpsg')); ?></h4>
<?php echo sprintf("%.2f", $i['invoiceAmount']); ?>
</div>
</div>
</div>
<div class="wpsg_mod_prepayment_info_right">
<h4><?php echo wpsg_translate(__('Konto / Zahlbar an', 'wpsg')); ?></h4>
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_mod_prepayment_iban')); ?><br />
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_mod_prepayment_kinhaber')); ?><br />
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_shopdata_street')); ?><br />
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_shopdata_zip')).' '.$this->replaceUniversalPlatzhalter($this->get_option('wpsg_shopdata_city')); ?><br />
<?php if (!empty($i['referenceNumber'])) { ?>
<h4><?php echo wpsg_translate(__('Referenz', 'wpsg')); ?></h4>
<?php echo $i['referenceNumber']; ?><br />
<?php } ?>
<h4><?php echo wpsg_translate(__('Zusätzliche Informationen', 'wpsg')); ?></h4>
<?php echo $i['additionalInformation']; ?><br />
<h4><?php echo wpsg_translate(__('Zahlbar durch', 'wpsg')); ?></h4>
<?php echo $i['customerdata']['vname'].' '.$i['customerdata']['name']; ?><br />
<?php echo $i['customerdata']['strasse'].' '.$i['customerdata']['nr']; ?><br />
<?php echo $i['customerdata']['plz'].' '.$i['customerdata']['ort']; ?><br />
</div>
</div>
<?php } ?>
</div>
 
<?php } catch (\Exception $e) { wpsg_debug($e); } ?>
 
<?php } else if ($this->get_option('wpsg_mod_prepayment_qrcode_country') == '1') { ?>
 
<!-- Girocode (EPC) -->
 
<p>
<?php echo __('Wenn Ihre Banking-App Girocode unterstützt, können Sie diesen QRCode scannen.', 'wpsg'); ?>
</p>
 
<?php
$img = array();
$img = $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['wpsg_mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 10, PhpGirocode::OUTPUT_BASE64, $this->get_option('wpsg_mod_prepayment_qrcode_country'), $this->view['basket']));
 
?>
 
<div class="wpsg_mod_prepayment_girocode">
<div class="wpsg_mod_prepayment_girocode_left" >
<h4><?php echo wpsg_translate(__($img['title'], 'wpsg')); ?></h4>
<br />
<?php echo '<img class="wpsg_mod_prepayment_girocode_left_qrcodeimg" src="data:image/png;base64,'.$img['hash'].'" />'; ?>
<br>
<div class="wpsg_mod_prepayment_girocode_left_wrap">
<div class="wpsg_mod_prepayment_girocode_left_currency">
<h4><?php echo wpsg_translate(__('Währung', 'wpsg')); ?></h4>
<?php echo $this->get_option('wpsg_currency'); ?>
</div>
<div class="wpsg_mod_prepayment_girocode_left_amount">
<h4><?php echo wpsg_translate(__('Betrag', 'wpsg')); ?></h4>
<?php echo sprintf("%.2f", $img['invoiceAmount']); ?>
</div>
</div>
</div>
<div class="wpsg_mod_prepayment_girocode_right">
<h4><?php echo wpsg_translate(__('Konto / Zahlbar an', 'wpsg')); ?></h4>
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_mod_prepayment_iban')); ?><br />
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_mod_prepayment_kinhaber')); ?><br />
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_shopdata_street')); ?><br />
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_shopdata_zip')).' '.$this->replaceUniversalPlatzhalter($this->get_option('wpsg_shopdata_city')); ?><br />
<?php if (!empty($img['referenceNumber'])) { ?>
<h4><?php echo wpsg_translate(__('Referenz', 'wpsg')); ?></h4>
<?php echo $img['referenceNumber']; ?><br />
<?php } ?>
<h4><?php echo wpsg_translate(__('Zusätzliche Informationen', 'wpsg')); ?></h4>
<?php echo $img['additionalInformation']; ?><br />
<h4><?php echo wpsg_translate(__('Zahlbar durch', 'wpsg')); ?></h4>
<?php echo $img['customerdata']['vname'].' '.$img['customerdata']['name']; ?><br />
<?php echo $img['customerdata']['strasse'].' '.$img['customerdata']['nr']; ?><br />
<?php echo $img['customerdata']['plz'].' '.$img['customerdata']['ort']; ?><br />
</div>
</div>
 
<?php } else if ($this->get_option('wpsg_mod_prepayment_qrcode_country') == '2') { ?>
 
<!-- QR-Rechnung (SWISS) -->
 
<?php
 
$img = array();
$img = $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['wpsg_mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 10, PhpGirocode::OUTPUT_BASE64, $this->get_option('wpsg_mod_prepayment_qrcode_country'), $this->view['basket']));
?>
<div class="wpsg_mod_prepayment_qrrechnung">
<div class="wpsg_mod_prepayment_qrrechnung_left">
<h4><?php echo wpsg_translate(__($img['title'], 'wpsg')); ?></h4>
<br />
<?php echo '<img class="wpsg_mod_prepayment_qrrechnung_left_qrcodeimg" src="data:image/png;base64,'.$img['hash'].'" />'; ?>
<br>
<div class="wpsg_mod_prepayment_qrrechnung_left_wrap">
<div class="wpsg_mod_prepayment_qrrechnung_left_currency">
<h4><?php echo wpsg_translate(__('Währung', 'wpsg')); ?></h4>
<?php echo $this->get_option('wpsg_currency'); ?>
</div>
<div class="wpsg_mod_prepayment_qrrechnung_left_amount">
<h4><?php echo wpsg_translate(__('Betrag', 'wpsg')); ?></h4>
<?php echo sprintf("%.2f", $img['invoiceAmount']); ?>
</div>
</div>
</div>
<div class="wpsg_mod_prepayment_qrrechnung_right">
<h4><?php echo wpsg_translate(__('Konto / Zahlbar an', 'wpsg')); ?></h4>
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_mod_prepayment_iban')); ?><br />
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_mod_prepayment_kinhaber')); ?><br />
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_shopdata_street')); ?><br />
<?php echo $this->replaceUniversalPlatzhalter($this->get_option('wpsg_shopdata_zip')).' '.$this->replaceUniversalPlatzhalter($this->get_option('wpsg_shopdata_city')); ?><br />
<?php if (!empty($img['referenceNumber'])) { ?>
<h4><?php echo wpsg_translate(__('Referenz', 'wpsg')); ?></h4>
<?php echo $img['referenceNumber']; ?><br />
<?php } ?>
<h4><?php echo wpsg_translate(__('Zusätzliche Informationen', 'wpsg')); ?></h4>
<?php echo $img['additionalInformation']; ?><br />
<h4><?php echo wpsg_translate(__('Zahlbar durch', 'wpsg')); ?></h4>
<?php echo $img['customerdata']['vname'].' '.$img['customerdata']['name']; ?><br />
<?php echo $img['customerdata']['strasse'].' '.$img['customerdata']['nr']; ?><br />
<?php echo $img['customerdata']['plz'].' '.$img['customerdata']['ort']; ?><br />
</div>
</div>
 
<?php } ?>
?>
<?php } ?>
/mods/mod_productvariants/admin_edit.phtml
37,7 → 37,7
<?php $colspan += 3; ?>
<?php if (wpsg_isSizedInt($this->view['product_id'])) { $colspan += 2; ?>
<!--<th class="col_artnr"><?php echo __('Artikelnummer', 'wpsg'); ?></th>-->
<th class="col_artnr"><?php echo __('Artikelnummer', 'wpsg'); ?></th>
<th class="col_price"><?php echo __('Preis', 'wpsg'); ?></th>
<?php if ($this->hasMod('wpsg_mod_stock')) { ?>
170,7 → 170,7
<td class="col_shortname"><span class="wpsg_editable" id="productvariation_shortname_<?php echo $vari['id']; ?>"><?php echo wpsg_hspc($vari['shortname']); ?></span></td>
<?php if (wpsg_isSizedInt($this->view['product_id'])) { ?>
<!--<td class="col_artnr"><span class="wpsg_editable" id="productvariation_anr_<?php echo $vari['id']; ?>"><?php echo wpsg_hspc($vari['anr']); ?></span></td>-->
<td class="col_artnr"><span class="wpsg_editable" id="productvariation_anr_<?php echo $vari['id']; ?>"><?php echo wpsg_hspc($vari['anr']); ?></span></td>
<td class="col_price"><span class="wpsg_editable" id="productvariation_price_<?php echo $vari['id']; ?>"><?php echo wpsg_hspc(wpsg_ff($vari['price'], $this->get_option('wpsg_currency'))); ?></span></td>
 
<?php if ($this->hasMod('wpsg_mod_stock')) { ?>
303,7 → 303,7
});
 
</script>
 
<?php if (intval($this->view['product_id']) <= 0) { ?>
<span style="padding-left:15px;">
<span style="display:inline-block; margin-right:5px;"><?php echo __('Für alle Downloadplus Produkte:', 'wpsg'); ?></span>
316,25 → 316,6
</div>
<?php } ?>
<?php /* if (wpsg_isSizedInt($this->view['product_id'])) { ?>
<div style="margin-top:0.25rem;">
<span>EAN:
<span title="<?php echo __('EAN der Produktvariation', 'wpsg'); ?>" class="wpsg_editable" id="productvariation_ean_<?php echo $vari['id']; ?>"><?php echo $vari['ean']??''; ?></span>
</span>
<script>
 
jQuery('#productvariation_ean_<?php echo $vari['id']; ?>').wpsg_editable('<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&action=module&modul=wpsg_mod_productvariants&subaction=admin_inlineEdit&noheader=1', {
submitdata: {
field: 'ean',
product_id: <?php echo $this->view['product_id']; ?>,
field_id: '<?php echo $vari['id']; ?>'
}
});
</script>
</div>
<?php } */ ?>
<script>
 
function wpsg_mod_downloadplus_setProducts(vari_id, active) {
/mods/mod_productvariants/frontend.js
18,7 → 18,6
'success': function(data) {
jQuery('#wpsg_produktform_' + template_index).replaceWith(data);
if (typeof refreshFsLightbox === 'function') refreshFsLightbox();
}
} );
/mods/mod_legaltexts/form_haendlerbund.phtml
8,45 → 8,17
 
<style type="text/css">
.wphb_form_field {
width: 100%;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.wphb_form_field input {
width: 100%;
}
.wphb_form_left {
width: 50% !important;
flex-grow: 0;
flex-shrink: 0;
}
.wphb_form_right {
width: 50% !important;
flex-grow: 0;
flex-shrink: 0;
}
 
.wphb_table {
width: 100%;
border-spacing: 0px;
border-collapse: collapse;
}
.wphb_table input {
min-height: unset !important;
}
.wphb_table select {
width: 100%;
}
.col0 {
width: 50%;
}
.col1 {
width: 50%;
}
 
.wphb_clear { clear:both; }
.wphb_form_field { width:770px; margin-bottom:5px; }
.wphb_form_field .wphb_form_left { line-height:24px; font-weight:bold; width:350px; float:left; }
.wphb_form_field .wphb_form_right { width:420px; float:left; position:relative; line-height:28px; }
.wphb_form_field .wphb_form_right select, .wphb_form_field .wphb_form_right input { width:95%; }
.wphb_form_field .wphb_form_right input.checkbox { width:auto !important; float:left; margin-left:2px; margin-top:5px; }
.wphb_form_field .wphb_form_right p { padding:4px 0px 4px 6px; margin:0px; }
.wphb_form { padding:10px; }
.wphb_date { float:right; padding-right:5%; }
.wphb_hinweis { font-style:italic; }
</style>
 
<?php if ($this->view['wpsg_mod_legaltexts']['form'] == false) { ?>
/mods/mod_deliverynote/order_view_content.phtml
134,7 → 134,7
function wpsg_mod_deliverynote_checkProducts()
{
 
if (jQuery('.wpsg_mod_deliverynote_product_i:checked').length <= 0)
if (jQuery('.wpsg_mod_deliverynote_product:checked').length <= 0)
{
 
alert('<?php echo __('Bitte mindestens ein Produkt für den Lieferschein wählen', 'wpsg'); ?>');
146,7 → 146,7
 
var arProductKeys = Array();
jQuery('.wpsg_mod_deliverynote_product_i:checked').each(function() {
jQuery('.wpsg_mod_deliverynote_product:checked').each(function() {
arProductKeys.push(jQuery(this).val());
153,7 → 153,6
} );
 
jQuery('#wpsg_mod_deliverynote_productindexes').val(arProductKeys.join(','));
 
}
 
/mods/mod_export/fields.phtml
36,11 → 36,14
</td>
<td class="wpsg_mod_export_col_field"><div class="wpsg_editable" id="field_typ_<?php echo $f_id; ?>"><?php
foreach ($this->view['fields'] as $fieldgroup) {
foreach ($this->view['fields'] as $fieldgroup)
{
foreach ($fieldgroup['fields'] as $field_key => $field) {
foreach ($fieldgroup['fields'] as $field_key => $field)
{
if ($field_key == $f['value_key']) {
if ($field_key == $f['value_key'])
{
echo $field;
71,18 → 74,8
</td>
</tr>
<tr id="staticformat_<?php echo $f_id; ?>" style="<?php echo (($f['value_key'] != 'general_static')?'display:none;':''); ?>" class="wpsg_mod_export_row2 wpsg_tablerow wpsg_mod_export_fieldrow_<?php echo $f_id; ?> <?php echo (($i % 2 == 0)?'odd':'even'); ?>">
<tr id="userformatrow_<?php echo $f_id; ?>" style="<?php echo (($f['format'] != 700)?'display:none;':''); ?>" class="wpsg_mod_export_row2 wpsg_tablerow wpsg_mod_export_fieldrow_<?php echo $f_id; ?> <?php echo (($i % 2 == 0)?'odd':'even'); ?>">
<td class="wpsg_mod_export_col_format_user" colspan="4">
<?php echo __('Statischer Wert', 'wpsg'); ?>:
<div class="wpsg_editable" id="field_static_<?php echo $f_id; ?>"><?php echo wpsg_hspc(wpsg_getStr($f['static'])); ?></div>
</td>
<td></td>
</tr>
<tr id="userformatrow_<?php echo $f_id; ?>" style="<?php echo (($f['format'] != 700)?'display:none;':''); ?>" class="wpsg_mod_export_row2 wpsg_tablerow wpsg_mod_export_fieldrow_<?php echo $f_id; ?> <?php echo (($i % 2 == 0)?'odd':'even'); ?>">
<td class="wpsg_mod_export_col_format_user" colspan="4">
<?php echo __('Format', 'wpsg'); ?>:
101,13 → 94,7
jQuery('#field_typ_<?php echo $f_id; ?>').wpsg_editable('<?php echo $inlineEdit_url; ?>', {
'type': 'multiarray',
'data': '<?php echo addslashes(json_encode($this->view['fields'], JSON_UNESCAPED_SLASHES)); ?>',
'callback': function(response, newValue) {
if (newValue === 'general_static') jQuery('#staticformat_<?php echo $f_id; ?>').show();
else jQuery('#staticformat_<?php echo $f_id; ?>').hide();
}
'data': '<?php echo addslashes(json_encode($this->view['fields'], JSON_UNESCAPED_SLASHES)); ?>'
} );
jQuery('#field_format_<?php echo $f_id; ?>').wpsg_editable('<?php echo $inlineEdit_url; ?>', {
123,8 → 110,6
jQuery('#field_userformat_<?php echo $f_id; ?>').wpsg_editable('<?php echo $inlineEdit_url; ?>', { } );
jQuery('#field_static_<?php echo $f_id; ?>').wpsg_editable('<?php echo $inlineEdit_url; ?>', { } );
} );
/* ]]> */</script>
164,9 → 149,3
).disableSelection();
/* ]]> */</script>
 
<style>
 
.wpsg_mod_export_col_format { min-width:100px; }
</style>
/mods/mod_orderupload/checkout_inner_prebutton.phtml
18,7 → 18,7
</div>
<div class="wpsg_inner">
 
<?php if ($this->view['wpsg_mod_orderupload']['uploadsum'] > 0) { ?>
<input class="wpsg_orderupload_checkout_button" type="file" name="wpsg_mod_orderupload_file" />
<?php } ?>
47,7 → 47,7
<?php /* Counter, wie viel MB noch übrig sind */?>
<label class="wpsg_fileweight">
<?php echo wpsg_translate( __('Es stehen Ihnen #1# Mb von #2# Mb für den Upload zur Verfügung', 'wpsg'), $this->view['wpsg_mod_orderupload']['uploadsum'], $this->view['wpsg_mod_orderupload']['maxweight'] );?>
<?php echo wpsg_translate(__('Es stehen Ihnen #1# Mb von #2# Mb für den Upload zur Verfügung', 'wpsg'), $this->view['wpsg_mod_orderupload']['uploadsum'],$this->view['wpsg_mod_orderupload']['maxweight']);?>
</label>
</div>
/order/index.phtml
79,7 → 79,7
<select name="filter[cdate_m]" class="form-control input-sm">
<option value="-1"><?php echo __("Alle", "wpsg"); ?></option>
<?php for ($i = 1; $i <= 12; $i ++) { ?>
<option <?php echo ((wpsg_getStr($this->view['arFilter']['cdate_m']) == $i)?'selected="selected"':''); ?> value="<?php echo str_pad($i, 2, '0', STR_PAD_LEFT); ?>"><?php echo __(date('F', mktime(0, 0, 0, $i, 1, 2000))); ?></option>
<option <?php echo ((wpsg_getStr($this->view['arFilter']['cdate_m']) == $i)?'selected="selected"':''); ?> value="<?php echo str_pad($i, 2, '0', STR_PAD_LEFT); ?>"><?php echo strftime("%B", mktime(0, 0, 0, $i, 1, 2000)); ?></option>
<?php } ?>
</select>
</div>
248,7 → 248,6
<th class="col_payment wpsg_order" data-order="payment"><?php echo __('Bezahlmethode', 'wpsg'); ?></th>
<th class="col_shipping wpsg_order" data-order="shipping"><?php echo __('Versandart', 'wpsg'); ?></th>
<th class="col_products wpsg_order" data-order="products"><?php echo __('Produkte', 'wpsg'); ?></th>
<?php if ($this->get_option('wpsg_showvalueofgoods')) { ?><th class="col_productsum wpsg_order" data-order="productsum"><?php echo __('Warenwert', 'wpsg'); ?></th><?php } ?>
<th class="col_sum wpsg_order" data-order="amount"><?php echo __('Bestellwert', 'wpsg'); ?></th>
<th class="col_state wpsg_order" data-order="state"><?php echo __('Status', 'wpsg'); ?></th>
</tr>
409,18 → 408,6
<?php } ?>
 
</td>
<?php if ($this->get_option('wpsg_showvalueofgoods')) { ?>
<td class="col_productsum">
 
<?php $oOrderProducts = $oOrder->getOrderProducts(); ?>
<?php foreach ($oOrderProducts as $oOrderProduct) { ?>
<?php $product_sum += $oOrderProduct->getPriceSum($this->getBackendTaxview()); ?>
<?php } ?>
<?php echo wpsg_ff($product_sum, $this->get_option('wpsg_currency')); ?>
<?php $product_sum = 0; ?>
 
</td>
<?php } ?>
<td class="col_sum">
<?php echo wpsg_ff($oOrder->getAmount(), $this->get_option('wpsg_currency')); ?>
</td>
488,35 → 475,7
}
});
 
let buttonClicked = false;
document.getElementById('doaction').addEventListener('click', (event) => {
 
if (buttonClicked) {
 
event.preventDefault();
return false;
 
}
 
// Button deaktivieren und ausgrauen
document.getElementById('doaction').style.opacity = '0.5';
document.getElementById('doaction').style.pointerEvents = 'none';
 
// Button nach 4 Sekunden wieder aktivieren
setTimeout(() => {
 
document.getElementById('doaction').style.opacity = '1';
document.getElementById('doaction').style.pointerEvents = 'auto';
buttonClicked = false;
 
}, 4000);
 
buttonClicked = true;
return true;
 
});
 
</script>
 
<div class="multiRechnung_tab" id="multiRechnung_inform" style="padding: 15px 0 15px 0; display:none;">
588,35 → 547,6
}
});
 
// let buttonClicked = false;
 
// document.getElementById('wpsg_mod_rechnungen_button_submit').addEventListener('click', (event) => {
 
// if (buttonClicked) {
 
// event.preventDefault();
// return false;
 
// }
 
// // Button deaktivieren und ausgrauen
// document.getElementById('wpsg_mod_rechnungen_button_submit').style.opacity = '0.5';
// document.getElementById('wpsg_mod_rechnungen_button_submit').style.pointerEvents = 'none';
 
// // Button nach 4 Sekunden wieder aktivieren
// setTimeout(() => {
 
// document.getElementById('wpsg_mod_rechnungen_button_submit').style.opacity = '1';
// document.getElementById('wpsg_mod_rechnungen_button_submit').style.pointerEvents = 'auto';
// buttonClicked = false;
 
// }, 4000);
 
// buttonClicked = true;
// return true;
 
// });
</script>
/js/vue-3.2.47.global.min.js
File deleted
\ No newline at end of file
/js/tiny-slider-2.9.2.min.js
File deleted
Property changes:
Deleted: svn:executable
-*
\ No newline at end of property
/js/vue.esm-browser.js
File deleted
/js/dsimagezoom.min.js
File deleted
/js/fslightbox.js
File deleted
\ No newline at end of file
/produkttemplates/standard3.phtml
File deleted
\ No newline at end of file
/css/tiny-slider.-2.9.4.min.css
File deleted
Property changes:
Deleted: svn:executable
-*
\ No newline at end of property
/order/product_table.phtml
49,12 → 49,7
<tbody>
 
<tr><td colspan="<?php echo $this->view['colspan'] + 1; ?>" style="line-height:2px; height:2px; background-color:#999999; padding:0px;"></td></tr>
<?php $i = 0; foreach ($arCalculation['product'] as $p) { $i ++; $product_price = $p[$display.'_single'];
$oProduct = wpsg_product::getInstance(intval($p['product_id']));
if (($p['product_key']??'') !== '') $oProduct->setProductKey($p['product_key']);
?>
<?php $i = 0; foreach ($arCalculation['product'] as $p) { $i ++; $product_price = $p[$display.'_single']; ?>
<tr class="wpsg_<?php echo (($i % 2 == 0)?'odd':'even'); ?>">
<td colspan="<?php echo $this->view['colspan'] + 1; ?>">
67,7 → 62,7
echo wp_nonce_url(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Produkt&action=edit&edit_id='.$p['product_id'], 'wpsg-product-edit-'.wpsg_getInt($p['product_id']));
?>" title="<?php echo __('Zum Produkt', 'wpsg'); ?>">
<?php echo wpsg_hspc($oProduct->getProductName(false)); ?>
<?php echo wpsg_hspc($this->getProductName($p['product_id'])); ?>
</a>
<a href="#" class="wpsg-glyphlink-td" title="<?php echo __('Produkt bearbeiten', 'wpsg'); ?>" onclick="return WPSG_BE_Product.editProduct(<?php echo $p['order_product_id']; ?>);"><span class="glyphicon glyphicon-pencil"></span></a>
<a href="#" class="wpsg-glyphlink-td" title="<?php echo __('Produkt löschen', 'wpsg'); ?>" onclick="return WPSG_BE_Product.removeProduct(<?php echo $p['order_product_id']; ?>);"><span class="glyphicon glyphicon-trash"></span></a>
182,9 → 177,7
<a href="#" class="wpsg-glyphlink-td" title="<?php echo __('Versandart ändern', 'wpsg'); ?>" onclick="return WPSG_BE_Pay_Ship.changeShippingPayment();"><span class="glyphicon glyphicon-pencil"></span></a>
</td>
<?php if (sizeof($arCalculation['tax']) > 1 || $this->get_option('wpsg_showMwstAlways') == '1') { ?>
 
<td><?php echo (($arCalculation['shipping'][0]['brutto'] === $arCalculation['shipping'][0]['netto'])?wpsg_ff(0, '%'):$arTaxShort[$arCalculation['shipping'][0]['tax_key']]); ?></td>
<td><?php echo $arTaxShort[$arCalculation['shipping'][0]['tax_key']]; ?></td>
<?php } ?>
<td class="wpsg_cell_shipping_value wpsg_cell_gesamtpreis" colspan="2">
<span id="wpsg_cell_shipping_value"><?php echo wpsg_ff($price_shipping); ?> </span>
210,9 → 203,7
<a href="#" class="wpsg-glyphlink-td" title="<?php echo __('Zahlungsart ändern', 'wpsg'); ?>" onclick="return WPSG_BE_Pay_Ship.changeShippingPayment();"><span class="glyphicon glyphicon-pencil"></span></a>
</td>
<?php if (sizeof($arCalculation['tax']) > 1 || $this->get_option('wpsg_showMwstAlways') == '1') { ?>
 
<td><?php echo (($arCalculation['payment'][0]['brutto'] === $arCalculation['payment'][0]['netto'])?wpsg_ff(0, '%'):$arTaxShort[$arCalculation['payment'][0]['tax_key']]); ?></td>
 
<td><?php echo $arTaxShort[$arCalculation['payment'][0]['tax_key']]; ?></td>
<?php } ?>
<td class="wpsg_cell_payment_value wpsg_cell_gesamtpreis" colspan="2">
<span id="wpsg_cell_payment_value"><?php echo wpsg_ff($price_payment); ?> </span>
312,27 → 303,20
<strong><?php echo wpsg_ff($arCalculation['sum']['brutto']); ?> <?php echo $this->get_option('wpsg_currency'); ?></strong>
</td>
</tr>
<?php if ($this->get_option('wpsg_kleinunternehmer') == '1') { ?>
<tr class="wpsg_row_mwst wpsg_row_small">
<td class="wpsg_cell_mwst_value wpsg_cell_gesamtpreis" colspan="<?php echo $this->view['colspan'] + 1; ?>">
<?php echo $this->get_option('wpsg_kleinunternehmer_text'); ?>
</td>
</tr>
<?php } else { ?>
<?php foreach ($arCalculation['tax'] as $tax) { if ($tax['sum'] > 0 && $tax['key'] != '0') { ?>
<tr class="wpsg_row_mwst wpsg_row_small">
<td colspan="<?php echo $this->view['colspan']; ?>" class="wpsg_cell_mwst_label">
<?php echo wpsg_translate(__('darin enthaltene MwSt. (#1#)', 'wpsg'), $arTax[$tax['key']]); ?>
</td>
<td class="wpsg_cell_mwst_value wpsg_cell_gesamtpreis">
<?php echo wpsg_ff($tax['sum']); ?> <?php echo $this->get_option('wpsg_currency'); ?>
</td>
</tr>
<?php } } ?>
<?php } ?>
<?php foreach ($arCalculation['tax'] as $tax) { if ($tax['sum'] > 0 && $tax['key'] != '0') { ?>
<tr class="wpsg_row_mwst wpsg_row_small">
<td colspan="<?php echo $this->view['colspan']; ?>" class="wpsg_cell_mwst_label">
<?php if ($this->get_option('wpsg_kleinunternehmer') == '1') { ?>
<?php echo $this->get_option('wpsg_kleinunternehmer_text'); ?>
<?php } else { ?>
<?php echo wpsg_translate(__('darin enthaltene MwSt. (#1#)', 'wpsg'), $arTax[$tax['key']]); ?>
<?php } ?>
</td>
<td class="wpsg_cell_mwst_value wpsg_cell_gesamtpreis">
<?php echo wpsg_ff($tax['sum']); ?> <?php echo $this->get_option('wpsg_currency'); ?>
</td>
</tr>
<?php } } ?>
<?php } ?>
/produkt/addedit_texte.phtml
13,6 → 13,7
{
wp_print_scripts('editor');
if (function_exists('add_thickbox')) add_thickbox();
wp_print_scripts('media-upload');
if (function_exists('wp_tiny_mce')) wp_tiny_mce();
wp_admin_css();
41,7 → 42,6
?>
<?php echo wpsg_drawForm_AdminboxEnd(); ?>
 
<?php $this->callMods('product_addedit_before_longtext'); ?>
<?php echo wpsg_drawForm_AdminboxStart(__('Langtext', 'wpsg')); ?>
<?php
55,32 → 55,6
?>
<?php echo wpsg_drawForm_AdminboxEnd(); ?>
 
<?php echo wpsg_drawForm_AdminboxStart(__('Langtext (Zusatz)', 'wpsg')); ?>
<?php
// Damit die qTranslate Interne Editor Übersetzung nicht aufgerufen wird
//remove_filter('the_editor', 'qtrans_modifyRichEditor');
add_filter('tiny_mce_before_init', 'wpsg_formatTinyMCE');
add_filter('admin_head', 'wpsg_ShowTinyMCE');
wp_editor(@$this->view['data']['longdescription_addon'], 'longdescription_addon');
?>
<?php echo wpsg_drawForm_AdminboxEnd(); ?>
 
<?php echo wpsg_drawForm_AdminboxStart(__('Produktfeatures', 'wpsg')); ?>
<?php
// Damit die qTranslate Interne Editor Übersetzung nicht aufgerufen wird
//remove_filter('the_editor', 'qtrans_modifyRichEditor');
add_filter('tiny_mce_before_init', 'wpsg_formatTinyMCE');
add_filter('admin_head', 'wpsg_ShowTinyMCE');
wp_editor(@$this->view['data']['productfeatures'], 'productfeatures');
?>
<?php echo wpsg_drawForm_AdminboxEnd(); ?>
 
<?php echo wpsg_drawForm_AdminboxStart(__('Zusätzliche Informationen', 'wpsg')); ?>
<?php
/order/backendEdit/editPayShipping.phtml
51,7 → 51,7
?>
 
<div id="editPayShipping">
<?php wpsg_debug($price_shipping); ?>
<?php echo wpsg_drawForm_Select('edit_shipping_type', __('Versandart', 'wpsg'), $arShippingSelect,$this->view['data']['type_shipping']); ?>
<?php echo wpsg_drawForm_Input('edit_shipping_price', __('Kosten', 'wpsg').$price_suffix, $price_shipping); ?>
/produkt/index.phtml
201,6 → 201,14
<th class="wpsg_order" data-order="cat"><?php echo __('Kategorie', 'wpsg'); ?></th>
<?php } ?>
<?php if ($this->hasMod('wpsg_mod_produktartikel') && $this->get_option('wpsg_mod_produktartikel_gtin') == '1') { ?>
<th class="wpsg_order" data-order="gtin-nr"><?php echo __("GTIN", "wpsg"); ?></th>
<?php } ?>
<?php if ($this->hasMod('wpsg_mod_produktartikel') && $this->get_option('wpsg_mod_produktartikel_ean') == '1') { ?>
<th class="wpsg_order" data-order="ean-nr"><?php echo __("EAN", "wpsg"); ?></th>
<?php } ?>
<?php if ($this->hasMod('wpsg_mod_deliverytime') && $this->get_option('wpsg_mod_deliverytime_productindex') == '1') { ?>
<th class="wpsg_order" data-order="deliverytime"><?php echo __("Lieferzeit", 'wpsg'); ?></th>
<?php } ?>
304,21 → 312,17
$post_terms = \get_the_terms($post_id, $this->get_option('wpsg_mod_produktartikel_pathkey_cat'));
$arTermDisplay = [];
 
if (is_array($post_terms)) {
foreach ($post_terms as $term) {
foreach ($post_terms as $term) {
if (!in_array($term->slug, $arTermExclude)) {
if (!in_array($term->slug, $arTermExclude)) {
if ($wpsg_mod_produktartikel_cat_first_level && $term->parent !== 0) continue;
$arTermDisplay[] = $term->name;
}
if ($wpsg_mod_produktartikel_cat_first_level && $term->parent !== 0) continue;
$arTermDisplay[] = $term->name;
}
 
}
asort($arTermDisplay);
328,6 → 332,12
?>
</td>
<?php } ?>
<?php if ($this->hasMod('wpsg_mod_produktartikel') && $this->get_option('wpsg_mod_produktartikel_gtin') == '1') { ?>
<td><?php echo wpsg_hspc($d['gtin']); ?></td>
<?php } ?>
<?php if ($this->hasMod('wpsg_mod_produktartikel') && $this->get_option('wpsg_mod_produktartikel_ean') == '1') { ?>
<td><?php echo wpsg_hspc($d['ean']); ?></td>
<?php } ?>
<?php if ($this->hasMod('wpsg_mod_deliverytime') && $this->get_option('wpsg_mod_deliverytime_productindex') == '1') { ?>
<td>
<?php if ($this->callMod('wpsg_mod_deliverytime', 'isStoreProduct', array($oProduct->getProductKey()))) { ?>
/order/view_general.phtml
34,11 → 34,8
<?php echo wpsg_drawForm_Select('status', __('Neuer Status', 'wpsg'), $this->arStatus, $this->view['data']['status']); ?>
<?php echo wpsg_drawForm_Checkbox('sendMail', __('Kunden informieren', 'wpsg'), 0); ?>
 
<?php if ($this->hasMod('wpsg_mod_rechnungen')) {
 
$arInvoice = \wpsg\wpsg_invoice::findByOrderId($this->view['oOrder']->id);
 
if (sizeof($arInvoice) > 0) { ?>
<?php if ($this->hasMod('wpsg_mod_rechnungen')) { $db_invoice = $this->callMod('wpsg_mod_rechnungen', 'getOrderInvoice', [$this->view['oOrder']->id]); ?>
<?php if (wpsg_isSizedInt($db_invoice['id'])) { ?>
<script>
 
jQuery('#sendMail').on('click', function() {
/order/view_dev.phtml
31,24 → 31,6
</div>
</div>
</div>
 
<div class="panel panel-default">
<div class="panel-heading" data-toggle="collapse" href="#collapse_calculation" style="cursor:pointer;">
<h4 class="panel-title"><?php echo __('Kalkulation (live from Db)', 'wpsg'); ?></h4>
</div>
<div id="collapse_calculation" class="panel-collapse collapse">
<div class="panel-body">
<pre><?php
$oCalculaiton = \wpsg\wpsg_calculation::getOrderCalculation($_REQUEST['edit_id'], true);
$arCalculation = $oCalculaiton->getCalculationArray(true);
wpsg_debug($arCalculation);
?></pre>
</div>
</div>
</div>
<?php echo wpsg_drawForm_AdminboxEnd(); ?>
 
/admin/includes.phtml
31,8 → 31,9
<br />
<?php echo wpsg_drawForm_Checkbox('wpsg_load_fslightbox_js', __('fsLightbox (Fullscreen Lightbox) einbinden (JavaScript)', 'wpsg'), $this->get_option('wpsg_load_fslightbox_js'), array('help' => 'wpsg_load_fslightbox_js')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_load_thickbox_js', __('Thickbox einbinden (JavaScript)', 'wpsg'), $this->get_option('wpsg_load_thickbox_js'), array('help' => 'wpsg_load_thickbox')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_load_thickbox_css', __('Thickbox einbinden (Styles)', 'wpsg'), $this->get_option('wpsg_load_thickbox_css'), array('help' => 'wpsg_load_thickbox')); ?>
<br />
<?php echo wpsg_drawForm_Checkbox('wpsg_load_validierung_js', __('Javascript Validierung laden', 'wpsg'), $this->get_option('wpsg_load_validierung_js'), array('help' => 'wpsg_load_validierung')); ?>
/admin/versandzonen_list.phtml
4,23 → 4,6
* Template für die Liste der Versandzonen
*/
 
$arShipping = $this->arShippingAll;
$arShippingPreset = [
'0' => __('Kundenvoreinstellung', 'wpsg'),
'-1' => __('günstigste Versandart', 'wpsg'),
];
foreach ($arShipping as $s_key => $s) {
if (intval($s['deleted']??'') !== 1 && intval($s['active']??'') === 1) {
$arShippingPreset[$s_key] = $s['name'];
 
}
}
?>
<?php if (!is_array($this->view['data']) || sizeof($this->view['data']) <= 0) { ?>
<?php echo __('Bisher keine Versandzonen hinterlegt.', 'wpsg'); ?>
30,7 → 13,6
<tr>
<th class="col_name"><?php echo __('Bezeichnung', 'wpsg'); ?></th>
<th class="col_innereu"><?php echo __('Inner- gemeinschaftlich', 'wpsg'); ?></th>
<th class="col_shippingpreset"><?php echo __('Standardversandart', 'wpsg'); ?></th>
<th class="col_aktion"></th>
</tr>
</thead>
50,29 → 32,6
data-url="<?php echo html_entity_decode(wp_nonce_url(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Admin&subaction=vz&do=inlinedit&noheader=1', 'wpsg-admin-versandzonen-inline_edit-'.$vz['id'])); ?>"
<?php echo (($vz['innereu'] == '1')?'checked="checked"':''); ?> type="checkbox" value="1" name="innereu_<?php echo $vz['id']; ?>" id="innereu_<?php echo $vz['id']; ?>" />
</td>
<td class="col_shippingpreset">
<span id="vz_<?php echo $vz['id']; ?>_shippingpreset"><?php echo ($arShippingPreset[($vz['shippingpreset']??'')]??''); ?></span>
<script>
jQuery('#vz_<?php echo $vz['id']; ?>_shippingpreset').wpsg_editable('<?php
echo html_entity_decode(wp_nonce_url(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Admin&subaction=vz&do=inlinedit&noheader=1', 'wpsg-admin-versandzonen-inline_edit-'.$vz['id']));
?>', {
submitdata: {
field: 'shippingpreset',
vz_id: '<?php echo $vz['id']; ?>'
},
data: <?php echo wpsg_prepare_for_inlineEdit($arShippingPreset); ?>,
type: 'select',
submit: '<?php echo __('Speichern', 'wpsg'); ?>',
placeholder: '<?php echo __('Zum Bearbeiten anklicken ...', 'wpsg'); ?>',
indicator: '<?php echo __('Speicher ...', 'wpsg'); ?>',
tooltip: '<?php echo __('Zum Bearbeiten anklicken ...', 'wpsg'); ?>'
});
</script>
</td>
<td class="col_aktion">
<a class="wpsg_icon_plzedit" href="#" title="<?php echo __('Versandzonen PLZ bearbeiten', 'wpsg'); ?>" onclick="return wpsg_editPLZ(<?php echo $vz['id']; ?>);">[ PLZ ]</a>
/produkttemplates/standard2.phtml
10,17 → 10,8
// Damit keine Zubehörprodukte ausgegeben werden
//$this->noReleatedProducts = true;
 
/** @var wpsg_product $oProduct */
$oProduct = $this->view['oProduct'];
 
$var_info = [];
if ($this->callMod('wpsg_mod_productvariants', 'isVariantsProductKey', [$oProduct->getProductKey()])) {
$var_info = $this->callMod('wpsg_mod_productvariants', 'getVariantenInfoArray', [$oProduct->getProductKey()]);
}
?>
 
<div class="wpsg_produkt_wrapper wpsg_produkt_wrapper2">
31,10 → 22,8
<div class="wpsg_produkt wpsg_product_name">
 
<?php if (!$this->titleDisplayed) { ?>
<h1 class="wpsg_producttitle"><?php echo $this->getProductName($this->view['data']['id']); ?></h1>
<?php if ($this->getProductName($this->view['data']['id']) !== $this->view['data']['detailname']) { ?>
<h2 class="wpsg_productdetailtitle"><?php echo $this->view['data']['detailname']; ?></h2>
<?php } ?>
<h1 itemprop="name" class="wpsg_producttitle"><?php echo $this->getProductName($this->view['data']['id']); ?></h1>
<h2 itemprop="detailname" class="wpsg_productdetailtitle"><?php echo $this->view['data']['detailname']; ?></h2>
<?php } ?>
 
<?php $this->callMods('product_top_afterheadline', array(&$this->view['data']['id'], $this->getTemplateIndex())); ?>
45,11 → 34,6
 
<div itemscope itemtype="http://schema.org/Product" class="wpsg_produkt wpsg_produkt_<?php echo $this->view['data']['id']; ?>">
 
<meta itemprop="url" content="<?php echo $oProduct->getProductURL().'?test'; ?>" />
<meta itemprop="name" content="<?php echo wpsg_hspc($this->getProductName($this->view['data']['id'])); ?>" />
<meta itemprop="detailname" content="<?php echo wpsg_hspc($this->getProductName($this->view['data']['id']).' / '.rtrim(($var_info['key']??''), ' /')); ?>" />
<meta itemprop="sku" content="<?php echo wpsg_hspc($oProduct->getEAN()); ?>" />
<?php /* Block für die Produktbilder START */ ?>
<?php
70,7 → 54,7
<?php $att = wp_get_attachment_image_src($arAttachmentIDsAll[$i], array(800, 600), false); ?>
<a data-index="<?php echo $i; ?>" <?php if ($arAttachmentIDsAll[$i] != $arAttachmentID) echo 'style="display:none;"'; ?> data-fslightbox="<?php echo $this->getTemplateIndex(); ?>" title="<?php echo $this->getProductName($this->view['data']['id']); ?>" href="<?php echo $att[0]; ?>" class="bigimg">
<a data-index="<?php echo $i; ?>" <?php if ($arAttachmentIDsAll[$i] != $arAttachmentID) echo 'style="display:none;"'; ?> rel="gallery-wpsg-<?php echo $this->getTemplateIndex(); ?>" title="<?php echo $this->getProductName($this->view['data']['id']); ?>" href="<?php echo $att[0]; ?>" class="thickbox bigimg">
 
<?php echo wp_get_attachment_image($arAttachmentIDsAll[$i], array(300, 300), false, array()); ?>
86,23 → 70,13
 
<?php if ($this->get_option('wpsg_showArticelnumber') == '1') { ?>
<div class="wpsg_artikelnummer">
<?php echo __('Artikelnummer', 'wpsg'); ?>: <span class="wpsg_anr"><?php echo wpsg_hspc($oProduct->getNr()); ?></span><br />
</div>
<?php } ?>
<?php $arProductCodes = $oProduct->getAllProductCodes(); ?>
<?php if (sizeof($arProductCodes) > 0) { ?>
<div class="product_code_wrap">
<?php foreach ($arProductCodes as $product_code) { ?>
<?php if ($product_code !== null) { ?>
<div class="product_code <?php echo $product_code['code_key']; ?>">
<span class="label"><?php echo $product_code['label']; ?></span>: <span class="code"><?php echo $product_code['code']; ?></span>
</div>
<?php } ?>
<?php echo __('Artikelnummer', 'wpsg'); ?>: <span class="wpsg_anr"><?php echo wpsg_hspc($this->view['data']['anr']); ?></span><br />
<?php if (wpsg_isSizedInt($this->get_option('wpsg_mod_produktartikel_ean'))) {?>
<?php echo __('EAN','wpsg');?>:<span class="wpsg_ean"><?php echo wpsg_hspc($this->view['data']['ean']); ?></span><br />
<?php } ?>
</div>
<?php if (wpsg_isSizedInt($this->get_option('wpsg_mod_produktartikel_gtin'))) {?>
<?php echo __('GTIN','wpsg');?>:<span class="wpsg_gtin"><?php echo wpsg_hspc($this->view['data']['gtin']); ?></span><br />
<?php }?></div>
<?php } ?>
 
<?php /* Abfrage Preisanzeige nur für eingeloggte User aktiv und User eingeloggt START*/ ?>
/admin/kalkulation.phtml
44,8 → 44,7
<?php echo wpsg_drawForm_Checkbox('wpsg_hideemptyshipping', __('Versandkosten bei 0 ausblenden', 'wpsg'), $this->get_option('wpsg_hideemptyshipping'), array('help' => 'Preiskalkulation_wpsg_hideemptyshipping')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_hideemptypayment', __('Zahlungskosten bei 0 ausblenden', 'wpsg'), $this->get_option('wpsg_hideemptypayment'), array('help' => 'Preiskalkulation_wpsg_hideemptypayment')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_noroundamount', __('Vor Multiplikation mit Menge nicht runden', 'wpsg'), $this->get_option('wpsg_noroundamount'), ['help' => 'Preiskalkulation_wpsg_noroundamount']); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_deliverycountrytax', __('Mwst. gemäß Lieferland berechnen', 'wpsg'), $this->get_option('wpsg_deliverycountrytax'), ['help' => 'Preiskalkulation_wpsg_deliverycountrytax']); ?>
</div>
</div>
/produkttemplates/standard.phtml
5,7 → 5,7
*/
 
//Ausgabe der verfügbaren Variablen
// wpsg_debug($this->view['data']);
//wpsg_debug($this->view['data']);
 
// Damit keine Zubehörprodukte ausgegeben werden
//$this->noReleatedProducts = true;
12,8 → 12,7
 
/** @var wpsg_product $oProduct */
$oProduct = $this->view['oProduct'];
if (($this->view['data']['product_key']??'') !== '') $oProduct->setProductKey($this->view['data']['product_key']);
 
?>
 
<div class="wpsg_produkt_wrapper">
20,11 → 19,11
 
<input type="hidden" name="wpsg_post_id" value="<?php echo get_the_ID(); ?>" />
<input type="hidden" name="titleDisplayed" value="<?php echo $this->titleDisplayed; ?>" />
 
<div class="wpsg_produkt wpsg_product_name">
 
<?php if (!$this->titleDisplayed) { ?>
<h1 class="wpsg_producttitle"><?php echo $oProduct->getProductName(); ?></h1>
<h1 class="wpsg_producttitle"><?php echo $this->getProductName($this->view['data']['id']); ?></h1>
<h2 class="wpsg_productdetailtitle"><?php echo $this->view['data']['detailname']; ?></h2>
<?php } ?>
 
36,15 → 35,10
 
<div itemscope itemtype="http://schema.org/Product" class="wpsg_produkt wpsg_produkt_<?php echo $this->view['data']['id']; ?>">
 
<meta itemprop="name" content="<?php echo wpsg_hspc($oProduct->getProductName()); ?>" />
<meta itemprop="detailname" content="<?php echo wpsg_hspc($this->view['data']['detailname']); ?>" />
<?php foreach ($oProduct->getAllProductCodes() as $product_code) { ?>
<?php if ($product_code['itemprop'] !== null) { ?>
<meta itemprop="<?php echo $product_code['itemprop']; ?>" content="<?php echo $product_code['code']; ?>" />
<?php } ?>
<?php } ?>
<meta itemprop="name" content="<?php echo wpsg_hspc($this->getProductName($this->view['data']['id'])); ?>" />
<meta itemprop="sku" content="<?php echo wpsg_hspc($oProduct->getProductNr()); ?>" />
<meta itemprop="detailname" content="<?php echo wpsg_hspc($this->view['data']['detailname']); ?>" />
 
<?php /* Block für die Produktbilder START */ ?>
<?php
68,7 → 62,7
 
<meta itemprop="image" content="<?php echo $att[0]; ?>" />
 
<a <?php if ($arAttachmentIDsAll[$i] != $arAttachmentID) echo 'style="display:none;"'; ?> rel="gallery-wpsg-<?php echo $this->getTemplateIndex(); ?>" title="<?php echo $oProduct->getProductName(); ?>" href="<?php echo $att[0]; ?>" data-fslightbox="<?php echo $this->getTemplateIndex(); ?>">
<a <?php if ($arAttachmentIDsAll[$i] != $arAttachmentID) echo 'style="display:none;"'; ?> rel="gallery-wpsg-<?php echo $this->getTemplateIndex(); ?>" title="<?php echo $this->getProductName($this->view['data']['id']); ?>" href="<?php echo $att[0]; ?>" class="thickbox">
 
<?php echo wp_get_attachment_image($arAttachmentIDsAll[$i], array(300, 300), false, array()); ?>
84,23 → 78,13
 
<?php if ($this->get_option('wpsg_showArticelnumber') == '1') { ?>
<div class="wpsg_artikelnummer">
<?php echo __('Artikelnummer', 'wpsg'); ?>: <span class="wpsg_anr"><?php echo wpsg_hspc($oProduct->getNr()); ?></span><br />
</div>
<?php } ?>
<?php $arProductCodes = $oProduct->getAllProductCodes(); ?>
<?php if (sizeof($arProductCodes) > 0) { ?>
<div class="product_code_wrap">
<?php foreach ($arProductCodes as $product_code) { ?>
<?php if ($product_code !== null) { ?>
<div class="product_code <?php echo $product_code['code_key']; ?>">
<span class="label"><?php echo $product_code['label']; ?></span>: <span class="code"><?php echo $product_code['code']; ?></span>
</div>
<?php } ?>
<?php echo __('Artikelnummer', 'wpsg'); ?>: <span class="wpsg_anr"><?php echo wpsg_hspc($this->view['data']['anr']); ?></span><br />
<?php if (wpsg_isSizedInt($this->get_option('wpsg_mod_produktartikel_ean'))) {?>
<?php echo __('EAN','wpsg');?>:<span class="wpsg_ean"><?php echo wpsg_hspc($this->view['data']['ean']); ?></span><br />
<?php } ?>
</div>
<?php if (wpsg_isSizedInt($this->get_option('wpsg_mod_produktartikel_gtin'))) {?>
<?php echo __('GTIN','wpsg');?>:<span class="wpsg_gtin"><?php echo wpsg_hspc($this->view['data']['gtin']); ?></span><br />
<?php }?></div>
<?php } ?>
 
<?php /* Abfrage Preisanzeige nur für eingeloggte User aktiv und User eingeloggt START*/ ?>
133,10 → 117,8
<?php } else { /* Kleinunternehmerregelung aktiviert ENDE */ ?>
 
<div class="wpsg_produkt_preishinweis">
 
<?php $fs = explode(',', $this->view['data']['allowedshipping']); ?>
<?php if ($this->getFrontendTaxview() == WPSG_NETTO) { /* Frontend = NETTO Preise */ ?>
<?php if ($this->hasMod('wpsg_mod_freeshipping') && $this->get_option('wpsg_mod_freeshipping_aktiv') == '1' && (array_search('500', $fs) || array_search('', $fs))) { /* Versandkostenfrei aktiv */?>
<?php if ($this->hasMod('wpsg_mod_freeshipping') && $this->get_option('wpsg_mod_freeshipping_aktiv') == '1') { /* Versandkostenfrei aktiv */?>
<?php if ($this->get_option('wpsg_mod_freeshipping_minvalue') > 0) { ?>
<?php echo wpsg_translate(__('(zzgl. #1#% MwSt. und <a href="#3#">ab #2# € versandkostenfrei</a>)', 'wpsg'),
152,7 → 134,7
<?php echo wpsg_translate(__('(zzgl. #1#% MwSt. und zzgl. #2#)', 'wpsg'), wpsg_ff($this->view['data']['mwst_value']), '<a href="'.$this->getURL(wpsg_ShopController::URL_VERSANDKOSTEN).'">'.__('Versandkosten', 'wpsg').'</a>'); ?>
<?php }?>
<?php } else { /* Frontend = BRUTTO Preise */ ?>
<?php if ($this->hasMod('wpsg_mod_freeshipping') && $this->get_option('wpsg_mod_freeshipping_aktiv') == '1' && (array_search('500', $fs) || array_search('', $fs))) { /* Versandkostenfrei aktiv */ ?>
<?php if ($this->hasMod('wpsg_mod_freeshipping') && $this->get_option('wpsg_mod_freeshipping_aktiv') == '1') { /* Versandkostenfrei aktiv */ ?>
<?php if ($this->get_option('wpsg_mod_freeshipping_minvalue') > 0) { ?>
<?php echo wpsg_translate(__('(inkl. #1#% MwSt. und <a href="#3#">ab #2# € versandkostenfrei</a>)', 'wpsg'),
168,7 → 150,6
<?php echo wpsg_translate(__('(inkl. #1#% MwSt. und zzgl. #2#)', 'wpsg'), wpsg_ff($this->view['data']['mwst_value']), '<a href="'.$this->getURL(wpsg_ShopController::URL_VERSANDKOSTEN).'">'.__('Versandkosten', 'wpsg').'</a>'); ?>
<?php }?>
<?php } ?>
</div>
 
<?php } ?>
179,7 → 160,7
 
<?php }?>
<?php /* Abfrage Preisanzeige nur für eingeloggte User aktiv und User eingeloggt ENDE */ ?>
 
<div itemprop="description" class="wpsg_produkt_shortdescription">
<span><?php echo $this->view['data']['shortdesc']; ?></span>
/admin/kundendaten_tab3.phtml
17,7 → 17,6
<?php
echo wpsg_drawForm_Select('wpsg_customerpreset_payment', __('Standard Zahlungsart', 'wpsg'), [
'0' => __('Bitte wählen', 'wpsg'),
'-1' => __('günstigste Zahlungsart', 'wpsg')
] + $this->view['arPayment'], $this->get_option('wpsg_customerpreset_payment'), array('help' => 'wpsg_customerpreset_payment'));
 
/admin/shopdata.phtml
21,12 → 21,6
<form name="form1" method="post" enctype="multipart/form-data" action="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&amp;subaction=<?php echo $_REQUEST['subaction']; ?>&amp;noheader=1">
<?php \wp_nonce_field('wpsg-save-admin-shopdata'); ?>
 
<?php
$countrys = array();
$arCountry = wpsg_country::find();
foreach ($arCountry as $oCountry) $countrys[$oCountry->getId()] = $oCountry->getName();
?>
<div class="panel panel-default">
<div class="panel-heading clearfix">
35,7 → 29,6
<div class="panel-body">
<?php echo wpsg_drawForm_Input('wpsg_shopdata_name', __('Name des Shops / Firma', 'wpsg'), $this->get_option('wpsg_shopdata_name'), array('help' => 'wpsg_shopdata_name')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_owner', __('Inhaber des Shops', 'wpsg'), $this->get_option('wpsg_shopdata_owner'), array('help' => 'wpsg_shopdata_owner')); ?>
<br />
<?php echo wpsg_drawForm_Input('wpsg_shopdata_tel', __('Telefonnummer', 'wpsg'), $this->get_option('wpsg_shopdata_tel'), array('help' => 'wpsg_shopdata_tel')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_fax', __('Faxnummer', 'wpsg'), $this->get_option('wpsg_shopdata_fax'), array('help' => 'wpsg_shopdata_fax')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_email', __('E-Mail', 'wpsg'), $this->get_option('wpsg_shopdata_email'), array('help' => 'wpsg_shopdata_email')); ?>
49,10 → 42,16
<h3 class="panel-title"><?php echo __('Anschrift', 'wpsg'); ?></h3>
</div>
<div class="panel-body">
<?php echo wpsg_drawForm_Input('wpsg_shopdata_street', __('Straße', 'wpsg'), $this->get_option('wpsg_shopdata_street'), array('help' => 'wpsg_shopdata_street')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_zip', __('Postleitzahl', 'wpsg'), $this->get_option('wpsg_shopdata_zip'), array('help' => 'wpsg_shopdata_zip')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_city', __('Ort', 'wpsg'), $this->get_option('wpsg_shopdata_city'), array('help' => 'wpsg_shopdata_city')); ?>
<?php echo wpsg_drawForm_Select('wpsg_shopdata_country', __('Land', 'wpsg'), $countrys, $this->get_option('wpsg_shopdata_country'), array('help' => 'wpsg_shopdata_country')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_city', __('Ort', 'wpsg'), $this->get_option('wpsg_shopdata_city'), array('help' => 'wpsg_shopdata_city')); ?>
<?php echo wpsg_drawForm_Select('wpsg_shopdata_eu', __('Hauptsitz des Shopbetreiber befindet sich:', 'wpsg'), Array(
wpsg_AdminController::SHOPDATA_EU_GERMANY => __('in Deutschland', 'wpsg'),
wpsg_AdminController::SHOPDATA_EU_EU => __('innerhalb der EU', 'wpsg'),
wpsg_AdminController::SHOPDATA_EU_WORLD => __('im europäischen Ausland', 'wpsg')
), $this->get_option('wpsg_shopdata_eu'), array('help' => 'wpsg_shopdata_eu')); ?>
 
</div>
</div>
61,17 → 60,16
<h3 class="panel-title"><?php echo __('Zweigstelle', 'wpsg'); ?></h3>
</div>
<div class="panel-body">
<?php echo wpsg_drawForm_Checkbox('wpsg_shopdata_2', __('Zweigstelle vorhanden', 'wpsg'), $this->get_option('wpsg_shopdata_2'), array('help' => 'wpsg_shopdata_2')); ?>
<div class="wpsg_shopdata_2_activ" style="display:none;">
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_street', __('Straße', 'wpsg'), $this->get_option('wpsg_shopdata_2_street')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_zip', __('Postleitzahl', 'wpsg'), $this->get_option('wpsg_shopdata_2_zip')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_city', __('Ort', 'wpsg'), $this->get_option('wpsg_shopdata_2_city')); ?>
<?php echo wpsg_drawForm_Select('wpsg_shopdata_2_country', __('Land', 'wpsg'), $countrys, $this->get_option('wpsg_shopdata_2_country')); ?>
<br />
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_tel', __('Telefon', 'wpsg'), $this->get_option('wpsg_shopdata_2_tel')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_fax', __('Fax', 'wpsg'), $this->get_option('wpsg_shopdata_2_fax')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_email', __('E-Mail', 'wpsg'), $this->get_option('wpsg_shopdata_2_email')); ?>
</div>
<?php echo wpsg_drawForm_Checkbox('wpsg_shopdata_2', __('Zweigstelle vorhanden', 'wpsg'), $this->get_option('wpsg_shopdata_2')); ?>
<div class="wpsg_shopdata_2_activ" style="display:none;">
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_street', __('Straße', 'wpsg'), $this->get_option('wpsg_shopdata_2_street'), array('help' => 'wpsg_shopdata_2_street')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_zip', __('Postleitzahl', 'wpsg'), $this->get_option('wpsg_shopdata_2_zip'), array('help' => 'wpsg_shopdata_2_zip')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_city', __('Ort', 'wpsg'), $this->get_option('wpsg_shopdata_2_city'), array('help' => 'wpsg_shopdata_2_city')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_country', __('Land', 'wpsg'), $this->get_option('wpsg_shopdata_2_country'), array('help' => 'wpsg_shopdata_2_country')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_tel', __('Telefon', 'wpsg'), $this->get_option('wpsg_shopdata_2_tel'), array('help' => 'wpsg_shopdata_2_tel')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_fax', __('Fax', 'wpsg'), $this->get_option('wpsg_shopdata_2_fax'), array('help' => 'wpsg_shopdata_2_fax')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_2_email', __('E-Mail', 'wpsg'), $this->get_option('wpsg_shopdata_2_email'), array('help' => 'wpsg_shopdata_2_email')); ?>
</div>
</div>
</div>
80,32 → 78,32
<h3 class="panel-title"><?php echo __('Bankdaten', 'wpsg'); ?></h3>
</div>
<div class="panel-body">
<?php echo wpsg_drawForm_Input('wpsg_shopdata_bank_name', __('Name der Bank', 'wpsg'), $this->get_option('wpsg_shopdata_bank_name'), array('help' => 'wpsg_shopdata_bank_name')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_bank_owner', __('Kontoinhaber', 'wpsg'), $this->get_option('wpsg_shopdata_bank_owner'), array('help' => 'wpsg_shopdata_bank_owner')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_bank_iban', __('IBAN Nummer', 'wpsg'), $this->get_option('wpsg_shopdata_bank_iban'), array('help' => 'wpsg_shopdata_bank_iban')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_bank_bic', __('BIC Nummer', 'wpsg'), $this->get_option('wpsg_shopdata_bank_bic'), array('help' => 'wpsg_shopdata_bank_bic')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_bank_qriban', __('QR-IBAN Nummer', 'wpsg'), $this->get_option('wpsg_shopdata_bank_qriban'), array('help' => 'wpsg_shopdata_bank_qriban')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_bank_besr', __('BESR-ID', 'wpsg'), $this->get_option('wpsg_shopdata_bank_besr'), array('help' => 'wpsg_shopdata_bank_besr')); ?>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading clearfix">
<h3 class="panel-title"><?php echo __('EU-Vertreter', 'wpsg'); ?></h3>
</div>
<div class="panel-body">
<?php echo wpsg_drawForm_Checkbox('wpsg_shopdata_3', __('EU-Vertreter vorhanden', 'wpsg'), $this->get_option('wpsg_shopdata_3'), array('help' => 'wpsg_shopdata_3')); ?>
<div class="wpsg_shopdata_3_activ" style="display:none;">
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_name', __('Name des EU-Vertreters', 'wpsg'), $this->get_option('wpsg_shopdata_eu_name')); ?>
<?php /* only Standort = Ausland */ ?>
<div class="wpsg_shopdata_eu wpsg_shopdata_eu_<?php echo wpsg_AdminController::SHOPDATA_EU_WORLD; ?>" style="display:<?php echo (($this->get_option('wpsg_shopdata_eu') == wpsg_AdminController::SHOPDATA_EU_WORLD || $this->get_option('wpsg_shopdata_eu') === false)?'block':'none'); ?>;">
<div class="panel panel-default">
<div class="panel-heading clearfix">
<h3 class="panel-title"><?php echo __('EU-Vertreter', 'wpsg'); ?></h3>
</div>
<div class="panel-body">
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_name', __('Name des EU-Vertreters', 'wpsg'), $this->get_option('wpsg_shopdata_eu_name'), array('help' => 'wpsg_shopdata_eu_name')); ?>
<br />
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_street', __('Straße', 'wpsg'), $this->get_option('wpsg_shopdata_eu_street')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_zip', __('Postleitzahl', 'wpsg'), $this->get_option('wpsg_shopdata_eu_zip')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_city', __('Stadt', 'wpsg'), $this->get_option('wpsg_shopdata_eu_city')); ?>
<?php echo wpsg_drawForm_Select('wpsg_shopdata_eu_country', __('Land', 'wpsg'), $countrys, $this->get_option('wpsg_shopdata_eu_country')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_street', __('Straße', 'wpsg'), $this->get_option('wpsg_shopdata_eu_street'), array('help' => 'wpsg_shopdata_eu_street')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_zip', __('Postleitzahl', 'wpsg'), $this->get_option('wpsg_shopdata_eu_zip'), array('help' => 'wpsg_shopdata_eu_zip')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_city', __('Stadt', 'wpsg'), $this->get_option('wpsg_shopdata_eu_city'), array('help' => 'wpsg_shopdata_eu_city')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_country', __('Land', 'wpsg'), $this->get_option('wpsg_shopdata_eu_country'), array('help' => 'wpsg_shopdata_eu_country')); ?>
<br />
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_tel', __('Telefonnummer', 'wpsg'), $this->get_option('wpsg_shopdata_eu_tel')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_fax', __('Faxnummer', 'wpsg'), $this->get_option('wpsg_shopdata_eu_fax')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_email', __('E-Mail', 'wpsg'), $this->get_option('wpsg_shopdata_eu_email')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_tel', __('Telefonnummer', 'wpsg'), $this->get_option('wpsg_shopdata_eu_tel'), array('help' => 'wpsg_shopdata_eu_tel')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_fax', __('Faxnummer', 'wpsg'), $this->get_option('wpsg_shopdata_eu_fax'), array('help' => 'wpsg_shopdata_eu_fax')); ?>
<?php echo wpsg_drawForm_Input('wpsg_shopdata_eu_email', __('E-Mail', 'wpsg'), $this->get_option('wpsg_shopdata_eu_email'), array('help' => 'wpsg_shopdata_eu_email')); ?>
</div>
</div>
</div>
123,13 → 121,7
} ).change();
jQuery('#wpsg_shopdata_3').bind('change', function() {
 
if (jQuery(this).is(':checked')) jQuery('.wpsg_shopdata_3_activ').show();
else jQuery('.wpsg_shopdata_3_activ').hide();
 
} ).change();
 
} );
/* ]]> */</script>
/warenkorb/checkout.phtml
162,14 → 162,7
<label for="email" class="wpsg_checkout"><?php echo __("E-Mail Adresse:", "wpsg"); ?>
<?php if ($this->view['pflicht']['email'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>
</label>
<input
class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="email"
id="email"
name="wpsg[checkout][email]"
value="<?php echo htmlspecialchars(wpsg_getStr($this->view['basket']['checkout']['email'])); ?>"
autocomplete="off"
/>
<input class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>" type="email" id="email" name="wpsg[checkout][email]" value="<?php echo htmlspecialchars(wpsg_getStr($this->view['basket']['checkout']['email'])); ?>" />
</div>
<?php } ?>
179,14 → 172,7
<label for="email" class="wpsg_checkout"><?php echo __("E-Mail (Wiederholung:)", "wpsg"); ?>
<?php if ($this->view['pflicht']['email'] != '1') { ?><span class="wpsg_required">*</span><?php } ?>
</label>
<input
class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>"
type="email"
id="email2"
name="wpsg[checkout][email2]"
value="<?php echo htmlspecialchars(wpsg_getStr($this->view['basket']['checkout']['email2'])); ?>"
autocomplete="off"
/>
<input class="wpsg_input_text <?php echo (($this->view['pflicht']['email'] != '1')?'validate[required]':''); ?> wpsg_checkout <?php echo ((in_array("email", (array)$this->view['error']))?'wpsg_error':''); ?>" type="email" id="email2" name="wpsg[checkout][email2]" value="<?php echo htmlspecialchars(wpsg_getStr($this->view['basket']['checkout']['email2'])); ?>" />
</div>
<?php } ?>
<?php } ?>
/warenkorb/checkout2.phtml
104,12 → 104,8
</form>
<div style="position:fixed; left:0; top:0; width:100vw; height:100vh; background-color:rgba(255, 255, 255, 0.5); display:none;" id="pppl_loading_blocker"></div>
<script type="text/javascript">/* <![CDATA[ */
 
const el_pppl_loading_blocker = document.getElementById('pppl_loading_blocker');
function wpsg_setShipPay(jqElement)
{
 
126,8 → 122,6
 
jQuery('.shippay_wrap .shippay_item_wrap').bind('click', function() {
 
el_pppl_loading_blocker.style.display = 'block';
wpsg_setShipPay(jQuery(this));
jQuery.ajax( {
138,11 → 132,7
'wpsg_form_data': jQuery('#wpsg_checkout_form').serialize()
},
'async': true,
'success': function(data) {
location.reload();
}
'success': function(data) { }
} );
} );
/admin/konfiguration.phtml
64,7 → 64,6
<?php echo wpsg_drawForm_Input('wpsg_produkte_perpage', __('Produkte pro Seite', 'wpsg'), $this->get_option('wpsg_produkte_perpage'), array('help' => 'ProduktePerPage')); ?>
<?php echo wpsg_drawForm_Input('wpsg_order_perpage', __('Bestellungen pro Seite', 'wpsg'), $this->get_option('wpsg_order_perpage'), array('help' => 'Bestellung_pro_Seite')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_showincompleteorder', __('Unvollständige Best. in Bestellverwaltung anzeigen', 'wpsg'), $this->get_option('wpsg_showincompleteorder'), array('help' => 'unvollstaendige_Bestellung')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_showvalueofgoods', __('Warenwert in Bestellverwaltung anzeigen', 'wpsg'), $this->get_option('wpsg_showvalueofgoods'), array('help' => 'Warenwert_Bestellung')); ?>
<?php echo wpsg_drawForm_Checkbox('wpsg_emptyorder_clear', wpsg_translate(__('Bestellungen für 0 #1# direkt abschließen', 'wpsg'), $this->get_option('wpsg_currency')), $this->get_option('wpsg_emptyorder_clear'), array('help' => 'Bestellung_0')); ?>
<?php echo wpsg_drawForm_Select('wpsg_afterinsert', __('Nach neuem Produkt im Warenkorb', 'wpsg'), array(
'0' => __('Auf Seite bleiben', 'wpsg'),
/mailtemplates/html/customer.phtml
169,28 → 169,12
require_once WPSG_PATH_LIB.'phpgirocode.class.php';
if (isset($this->view['mod_prepayment']['subject']) && ($this->get_option('wpsg_mod_prepayment_qrcode') == true)) {
if (isset($this->view['mod_prepayment']['subject'])) {
if (in_array('kundenmail.phtml', $this->arTemplateStack)) {
 
if ($this->get_option('wpsg_mod_prepayment_qrcode_country') == '0') {
echo $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 3, PhpGirocode::OUTPUT_FILE));
 
$qrcodes = array();
$qrcodes = $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['wpsg_mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 3, PhpGirocode::OUTPUT_FILE, $this->get_option('wpsg_mod_prepayment_qrcode_country'), $this->view['basket']));
 
foreach ($qrcodes as $qr) echo $qr;
 
} else if ($this->get_option('wpsg_mod_prepayment_qrcode_country') == '1') {
 
echo $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 3, PhpGirocode::OUTPUT_FILE, $this->get_option('wpsg_mod_prepayment_qrcode_country'), $this->view['basket']));
 
} else if ($this->get_option('wpsg_mod_prepayment_qrcode_country') == '2') {
 
echo $this->callMod('wpsg_mod_prepayment', 'genQRCode', array($this->view['o_id'], $this->view['mod_prepayment']['subject'], $this->view['basket']['sum']['preis_gesamt_brutto'], 3, PhpGirocode::OUTPUT_FILE, $this->get_option('wpsg_mod_prepayment_qrcode_country'), $this->view['basket']));
 
}
 
}
}
/warenkorb/basket.phtml
6,15 → 6,14
 
//wpsg_debug($this->view['basket']);
//wpsg_debug($this->view['basket']['arCalculation']);
//wpsg_debug($_SESSION['wpsg']);
//wpsg_debug($this->arShipping);
 
//wpsg_debug(__('Deutschland', 'wpsg'));
if ($this->getFrontendTaxView() === WPSG_BRUTTO) $display_brutto_netto = 'brutto';
else $display_brutto_netto = 'netto';
?>
<div class="wpsg wpsg_basket <?php echo ((isset($_REQUEST['wpsg_basket_ajax']))?'wpsg_basket_ajax':''); ?>">
 
238,7 → 237,7
<option <?php echo (($s['id'] == $this->view['basket']['checkout']['shipping'])?'selected="selected"':''); ?> value="<?php echo $s_id; ?>"><?php echo wpsg_hspc(__($s['name'], 'wpsg')); ?></option>
<?php } ?>
</select>
<?php } else if (!wpsg_isSizedArray($this->arShipping)) { ?>
<?php } else if (!wpsg_isSizedArray($this->arShipping) || !array_key_exists($this->view['basket']['checkout']['shipping'], $this->arShipping)) { ?>
<span><?php echo __('Keine Versandart möglich / Bitte manuell anfragen', 'wpsg'); ?></span>
<?php } else { ?>
<span><?php echo $this->arShipping[$this->view['basket']['checkout']['shipping']]['name']; ?></span>
246,7 → 245,7
<?php if ($this->get_option('wpsg_hideBasketCountrySelect') != '1') { ?>
<select name="set_land" id="set_land" class="wpsg_form_submit set_land">
<?php foreach ($this->view['arLander'] as $l_id => $l) { ?>
<option <?php echo (($l_id == $this->getFrontendShippingCountry(true))?'selected="selected"':''); ?> value="<?php echo $l_id; ?>"><?php echo wpsg_hspc(__($l, 'wpsg')); ?></option>
<option <?php echo (($l_id == $this->getFrontendCountry(true))?'selected="selected"':''); ?> value="<?php echo $l_id; ?>"><?php echo wpsg_hspc(__($l, 'wpsg')); ?></option>
<?php } ?>
</select>
<?php } else { ?>
/css/frontend.css
78,11 → 78,7
 
.wpsg_basket .wpsg_checkoutbutton { float:right; padding:0.75em 1em; }
.wpsg_basket .wpsg_cell_gesamtsumme_value { font-weight:bold; }
.wpsg_checkout2 .wpsg_overviewbutton,
.wpsg_checkout2 .wpsg_checkoutbutton,
.wpsg_overview .wpsg_orderbutton,
.wpsg_overview .wpsg_checkoutbutton,
.wpsg_basket .wpsg_refreshbutton, .wpsg_checkout2button, .wpsg_basketbutton { float:left; padding:0.75em 1em; }
.wpsg_basket .wpsg_refreshbutton, .wpsg_basketbutton { float:left; padding:0.75em 1em; }
.wpsg_basket .wpsg_basket_weiter_shoppen {background:#1a1a1a none repeat scroll 0 0; border:0 none; border-radius:2px; color:#fff; font-weight:700; line-height:1; text-transform:uppercase; padding:0.85em 0.875em 0.78em;}
.wpsg_basket .product_action_printshop .label { align-self:flex-start; }
.wpsg_basket .product_action_printshop .files ul li { list-style:none; display:flex; align-items:center; justify-content:flex-end; }
243,7 → 239,6
/* Produkttemplate */
.wpsg_productform { position:relative; }
.wpsg_productform .wpsg_produkt_wrapper .wpsg_productimages { float:left; margin-right:0.75em; }
.wpsg_productform img { max-width:100%; height:auto; }
.wpsg_productform .wpsg_produkt_wrapper .wpsg_produkt_preishinweis { font-size:0.75em; }
.wpsg_productform .wpsg_produkt_wrapper .wpsg_mod_productview_oldprice,
.product_wrap .productdetails .oldprice { text-decoration:line-through; }
255,7 → 250,7
.wpsg_productform .wpsg_produkt_wrapper .wpsg_product_informationarea { margin-top:1.5em; margin-bottom:1.5em; }
.wpsg_productform .wpsg_produkt_wrapper label { font-weight:bold; }
.wpsg_productform .wpsg_produkt_wrapper .wpsg_product_buttonarea input[type="text"] { width:48%; float:left; box-sizing:border-box; padding:0.7em; line-height:1.5em; font-size:1rem; }
.wpsg_productform .wpsg_produkt_wrapper .wpsg_product_buttonarea input[type="submit"] { width:48%; cursor:pointer; float:right; box-sizing: border-box; padding:0.7em; line-height:1.5em; font-size:1rem; border:1px solid transparent; border-radius:3px; }
.wpsg_productform .wpsg_produkt_wrapper .wpsg_product_buttonarea input[type="submit"] { width:48%; float:right; box-sizing: border-box; padding:0.7em; line-height:1.5em; font-size:1rem; border:1px solid transparent; border-radius:3px; }
.wpsg_productform .wpsg_product_layer { position:absolute; left:0px; top:0px; width:100%; height:100%; background-color:rgba(0, 0, 0, 0.25); padding:0.75em; margin:-0.75em; box-sizing:content-box; }
.wpsg_productform .wpsg_product_layer img { position:absolute; left:50%; margin-left:-8px; top:50%; margin-top:-5px; }
.wpsg_productform .wpsg_produkt_produktbilder { max-width:200px; }
456,7 → 451,7
.wpsg_progress:after { border:1px solid #C5C5C5; height:10px; background-color:#F2F2F2; box-sizing:border-box; display:block; width:100%; content:" "; }
.wpsg_progress span.step { width:25%; display:block; float:left; list-style:none; position:relative; }
.wpsg_progress span.step > .text { margin-top:30px; text-align:center; width:100%; display:block; }
.wpsg_progress span.step > .dot { position:absolute; z-index:2; background-color:#C5C5C5; width:20px; height:20px; left:50%; top:0%; margin-left:-14px; margin-top:-4px; border-radius:10px; }
.wpsg_progress span.step > .dot { position:absolute; z-index:2; background-color:#C5C5C5; width:20px; height:20px; left:50%; top:0%; margin-left:-15px; margin-top:-5px; border-radius:10px; }
.wpsg_progress span.step:before { border:1px solid #C5C5C5; position:absolute; z-index:2; left:50%; margin-left:-20px; text-align:center; line-height:40px; background-color:#F2F2F2; content:" "; display:block; width:30px; height:30px; border-radius:25px; margin-top:-10px; }
.wpsg_progress span.step1:before { content:""; }
.wpsg_progress span.step2:before { content:""; }
560,30 → 555,4
/* wpsg_mod_amazon_v2 */
#AmazonPayButton_wrap { text-align:right; margin-bottom:2rem; width:100%; justify-content:flex-end; display:flex; }
#AmazonPayButton_wrap #AmazonPayButton { width:210px; }
#AmazonLoginButton_wrap { text-align:right; margin-bottom:2rem; width:100%; justify-content:flex-end; display:flex; }
 
/* wpsg_mod_prepayment - QR-Code auf Bestellabschlussseite */
.wpsg_mod_prepayment_info_wrap { display:flex; justify-content:center; flex-direction:column; gap:20px; }
.wpsg_mod_prepayment_info { display: flex; gap: 20px; border: 1px solid #000000; padding: 20px; }
.wpsg_mod_prepayment_info h4{ margin: 0; }
.wpsg_mod_prepayment_info_left { display: flex; flex-direction: column; }
.wpsg_mod_prepayment_info_left_qrcodeimg { width:240px; height:240px; }
.wpsg_mod_prepayment_info_left_wrap { display:flex; gap:25%; }
.wpsg_mod_prepayment_info_left_currency { display:flex; flex-direction:column; }
.wpsg_mod_prepayment_info_left_amount { display:flex; flex-direction:column; }
 
.wpsg_mod_prepayment_girocode { display: flex; gap: 20px; border: 1px solid #000000; padding: 20px;}
.wpsg_mod_prepayment_girocode h4{ margin: 0; }
.wpsg_mod_prepayment_girocode_left { display: flex; flex-direction: column; }
.wpsg_mod_prepayment_girocode_left_qrcodeimg { width:240px; height:240px; }
.wpsg_mod_prepayment_girocode_left_wrap { display:flex; gap:25%; }
.wpsg_mod_prepayment_girocode_left_currency { display:flex; flex-direction:column; }
.wpsg_mod_prepayment_girocode_left_amount { display:flex; flex-direction:column; }
 
.wpsg_mod_prepayment_qrrechnung { display: flex; gap: 20px; border: 1px solid #000000; padding: 20px; }
.wpsg_mod_prepayment_qrrechnung h4{ margin: 0; }
.wpsg_mod_prepayment_qrrechnung_left { display: flex; flex-direction: column; }
.wpsg_mod_prepayment_qrrechnung_left_qrcodeimg { width:240px; height:240px; }
.wpsg_mod_prepayment_qrrechnung_left_wrap { display:flex; gap:25%; }
.wpsg_mod_prepayment_qrrechnung_left_currency { display:flex; flex-direction:column; }
.wpsg_mod_prepayment_qrrechnung_left_amount { display:flex; flex-direction:column; }
#AmazonLoginButton_wrap { text-align:right; margin-bottom:2rem; width:100%; justify-content:flex-end; display:flex; }