Rechnungsmodul: Link zur Bezahlseite im Dashboard des Kunden

ramsys

Member
In den globalen Einstellungen des Rechnungmoduls kann der Link zur Bezahlseite (de)aktiviert werden. In den einzelnen Rechnungen über den Wert für "Zahlungs Provider" jeweils auch:

Code:
None: Die automatische Zahlungsseite ist deaktiviert.
Auto: Die automatische Zahlungsseite ist aktiviert.

Wenn die Bezahlseite nun sowohl global als auch in der entsprechenden Rechnung deaktiviert ist, haben im Dashboard des Kunden trotzdem alle unbezahlten Rechnungen einen Link zu einer Bezahlseite. Die über den Link aufgerufene Seite gibt dann die Fehlermeldung "Payment page has been disabled for this invoice." aus.

Im Handbuch zum Rechnungsmodul (Kapitel 9.2 Dashboard-Plugin, Seite 43) ist zu erkennen, dass unbezahlte Rechnungen entweder einen Link zur Bezahlseite haben - oder eben nicht. Vermutlich je nach Einstellung in der jeweiligen Rechnung.

Da dies bei uns nicht so ist (der Link ist auch bei kompletter Deaktivierung vorhanden): Habe ich irgendeine Konfiguration übersehen oder handelt es sich um einen Bug?
 

ramsys

Member
Hier der Patch:

PHP:
diff --git a/interface/web/dashboard/dashlets/invoices.php b/interface/web/dashboard/dashlets/invoices.php
index d87cc69..cbdca2f 100644
--- a/interface/web/dashboard/dashlets/invoices.php
+++ b/interface/web/dashboard/dashlets/invoices.php
@@ -50,7 +50,11 @@
 							} else {
 								$invoice_pay_link = (@$_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['SERVER_NAME'].':'.$_SERVER['SERVER_PORT'].'/billing/payments/pay.php?id='.$tmp['idhash'];
 							}
-							$tmp['invoice_status'] = '<span style="color:#cc0000;">'.($tmp['invoice_type'] == 'invoice' ? $wb['unpaid_txt'] : $wb['proforma_txt']).'</span><br />[<a href="'.$invoice_pay_link.'" target="_blank">'.$wb['paynow_txt'].'</a>]';
+							if ($tmp['payment_gateway'] == 'none') {
+								$tmp['invoice_status'] = '<span style="color:#cc0000;">'.($tmp['invoice_type'] == 'invoice' ? $wb['unpaid_txt'] : $wb['proforma_txt']).'</span>';
+							} else {
+								$tmp['invoice_status'] = '<span style="color:#cc0000;">'.($tmp['invoice_type'] == 'invoice' ? $wb['unpaid_txt'] : $wb['proforma_txt']).'</span><br />[<a href="'.$invoice_pay_link.'" target="_blank">'.$wb['paynow_txt'].'</a>]';
+							}
 						} elseif($tmp['invoice_type'] == 'refund') {
 							$tmp['invoice_status'] = '<span style="color:#cc0000;">'.$wb['not_refunded_txt'].'</span>';
 						} else {
 

ramsys

Member
Es gibt noch einen Bug: Auf der Bezahlseite wird die Stadt bei Rechnungs- und Zahlungsempfänger nicht ausgeben.

Hier der Patch:

PHP:
diff --git a/interface/web/billing/payments/pay.php b/interface/web/billing/payments/pay.php
index 8e5e800..c984ebf 100644
--- a/interface/web/billing/payments/pay.php
+++ b/interface/web/billing/payments/pay.php
@@ -30,12 +30,14 @@
 $out['company_name'] = $company['company_name'];
 $out['company_street'] = $company['street'];
 $out['company_zip'] = $company['zip'];
+$out['company_city'] = $company['city'];
 $out['company_state'] = $company['state'];
 $out['company_country'] = $company['country'];
 
 $out['invoice_name'] = $invoice['company_name'];
 $out['invoice_street'] = $invoice['street'];
 $out['invoice_zip'] = $invoice['zip'];
+$out['invoice_city'] = $invoice['city'];
 $out['invoice_state'] = $invoice['state'];
 $out['invoice_country'] = $invoice['country'];
 
diff --git a/interface/web/billing/templates/payments_pay.htm b/interface/web/billing/templates/payments_pay.htm
index 1ec9fa2..646fe26 100644
--- a/interface/web/billing/templates/payments_pay.htm
+++ b/interface/web/billing/templates/payments_pay.htm
@@ -17,7 +17,7 @@
 	<hr />
 	{tmpl_var name='invoice_name'}<br />
 	{tmpl_var name='invoice_street'}<br />
-	{tmpl_var name='invoice_zip'} {tmpl_var name='company_city'}<br />
+	{tmpl_var name='invoice_zip'} {tmpl_var name='invoice_city'}<br />
 	{tmpl_var name='invoice_state'}<br />
 	{tmpl_var name='invoice_country'}<br />
     </div>
 

Werbung

Top