Jump to content
xt:Commerce Community Forum

DHL-Retouren Portal Integration


giller

Recommended Posts

Ich vermutte es liegt an dem vom Server gesendeteten Chartset.

Ich habe dazu schon die display.php angepast.

if ($page->page_name=='404') {
header('HTTP/1.0 404 Not Found');
} elseif ($page->page_name=='content') {
header('Content-Type: text/html; charset=iso-8859-1');
} else {
header('Content-Type: text/html; charset='._SYSTEM_CHARSET);
}[/PHP]

##############

[PHP]if ($page->page_name=='content') {
echo "<meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1' />";
} else {
echo "<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />";
}[/PHP]

Der http request bleibt aber trotzdem auf utf-8 wo ist das Problem?

Link to comment
Share on other sites

  • 2 weeks later...

Problem Lokalisiert

Die Strings aus der Variable müssen erst in iso 8859-1 dekodiert werden

und dann Prozentcodiert werden

Hier ein Auszug aus meiner retoure.php

$rew_customers_id = $customers_id;
$rew_email_address = urlencode(utf8_decode("$email_address"));
$rew_firstname = urlencode(utf8_decode("$firstname"));
$rew_lastname = urlencode(utf8_decode("$lastname"));
$rew_street = urlencode(utf8_decode("$street"));
$rew_plz = $plz;
$rew_city = urlencode(utf8_decode("$city"));

$retouren_data = ('&SHIPMENT_REFERENCE=' . $rew_customers_id . '&ADDR_SEND_LANG=' . $de . '&ADDR_SEND_STREET_ADD=' . $rew_customers_id . '&ADDR_SEND_EMAIL=' . $rew_email_address . '&ADDR_SEND_FIRST_NAME=' . $rew_firstname . '&ADDR_SEND_LAST_NAME=' . $rew_lastname . '&ADDR_SEND_STREET=' . $rew_street . '&ADDR_SEND_ZIP=' . $rew_plz . '&ADDR_SEND_CITY=' . $rew_city); [/PHP]

Link to comment
Share on other sites

  • 4 weeks later...

Zurzeit keine Zeit und der eine Hook haut mir noch die Seite kaputt

Kannst es aber ersmal hier mit machen

retoure.php in den Ordner xtCore/forms/retoure.php

##retoure.php##

<?php
defined('_VALID_CALL') or die('Direct Access is not allowed.');


$brotkrumen->_addItem($xtLink->_link(array('page'=>'retoure')),TXT_RETOURE);

// customer logged in ?
if(isset($_SESSION['registered_customer'])) {

$de = 'de';
$customers_id = $_SESSION['customer']->customer_default_address['customers_id'];
$email_address = $_SESSION['customer']->customer_info['customers_email_address'];
$firstname = $_SESSION['customer']->customer_default_address['customers_firstname'];
$lastname = $_SESSION['customer']->customer_default_address['customers_lastname'];
$street = $_SESSION['customer']->customer_default_address['customers_street_address'];
$plz = $_SESSION['customer']->customer_default_address['customers_postcode'];
$city = $_SESSION['customer']->customer_default_address['customers_city'];

$rew_customers_id = $customers_id;
$rew_email_address = urlencode(utf8_decode("$email_address"));
$rew_firstname = urlencode(utf8_decode("$firstname"));
$rew_lastname = urlencode(utf8_decode("$lastname"));
$rew_street = urlencode(utf8_decode("$street"));
$rew_plz = $plz;
$rew_city = urlencode(utf8_decode("$city"));

$retouren_data = ('&SHIPMENT_REFERENCE=' . $rew_customers_id . '&ADDR_SEND_LANG=' . $de . '&ADDR_SEND_STREET_ADD=' . $rew_customers_id . '&ADDR_SEND_EMAIL=' . $rew_email_address . '&ADDR_SEND_FIRST_NAME=' . $rew_firstname . '&ADDR_SEND_LAST_NAME=' . $rew_lastname . '&ADDR_SEND_STREET=' . $rew_street . '&ADDR_SEND_ZIP=' . $rew_plz . '&ADDR_SEND_CITY=' . $rew_city);



$add_data = array('retourenlink'=>$retouren_data, 'logged_in'=>'true', 'show_index_boxes'=>'false', 'page_name' =>'Retoure');

} else {
$add_data = array('logged_in'=>'false', 'show_index_boxes'=>'false', 'page_name' =>'Retoure');
}

$template = new Template();
$tpl_data = array('message'=>$info->info_content,'data'=>$shop_content_data, 'subdata'=>$subdata);
$tpl_data = array_merge($tpl_data,$add_data);



$tpl = 'retoure.html';
$page_data = $template->getTemplate('smarty', '/'._SRV_WEB_CORE.'forms/'.$tpl, $tpl_data);
?>[/PHP]

In dein Template Ordner xtCore/forms/retoure.html

##retoure.html##

[HTML]<h1>{txt key=TEXT_HEADING_DHL_RETOUREN_SERVICE</h1>
<br /><br /><p class="w377 p8 BordergrayAndbg">
{if $logged_in eq 'true'}
<a href="Dein Link zu DHL retouren Portal{$retourenlink}" class="frame7" charset="iso-8859-1"><img src="{$tpl_url_path}img/buttons/de/returen-button.gif" width="273" height="45" alt="Gratis Retouren"/>
</a>
{else}
<a href="Dein Link zu DHL retouren Portal" class="frame7" charset="iso-8859-1"><img src="{$tpl_url_path}img/buttons/de/returen-button.gif" width="273" height="45" alt="Gratis Retouren"/></a>
{/if}<br />
<br />
Am einfachsten ist es wenn Du Dich bei uns im Shop einloggst und dann auf den Button hier "Gratis Rücksendung" klickst. Dann ist das Formular schon mit Deinen Daten gefühlt. Ansonsten trage bitte Deine Daten von hand ein.</p>[/HTML]

und dann im contentmanager eine neue seite mit namen Retoure anlegen und dort unter formular retouren.php auswählen

Link to comment
Share on other sites

Hier pixeleyes im Anhang

In der Retouren.html habe ich dir noch etwas reingeschrieben.

Für die Url von Dhl bräuchte man noch ein Feld in der DB. Weil diese für jeden

Shop individeuel ist.

Ich bin mir sicher Du verstehst was ich meine.

Und in der Retouren.html habe ich die class=freame dadurch wird bei mir

das Ratouren portal in der Colorbox Angeszeigt nach klick sollte man noch

für Veyton Standart ändern.

Mein Problem beim Pluginbau war letztendlich wie bekomme ich es Hin den Linknamen

und den Seitennamen für die RetourenSeite Dynamisch zu gestallten damit

der nutzer vom Plugin entsscheiden kann wie er seine RetourenSeite nett.

Retouren ein Andrer will vielecht Rücksendung als Seitenname und Link

Retoure.rar

Link to comment
Share on other sites

  • 2 months later...

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...