Posts Tagged: Shop Systeme


24
Jul 08

XT:Commerce GLS Versandmodul und Nachnahmegebühr

So durch langes rumprobieren habe ich erfolgreich das Modul mit Nachnahmegebühren eingebaut. Niergendwo konnte ich eine vernünftige Anleitung finden, musste selber durch …

Also das Modul selbst befindet sich auf der Buch CD von Tobias Daeschner, Einstieg in osCommerce/xt:Commerce oder auch im Internet zu finden.

Um das Modul selbst einzubauen, braucht man nur die Dateien auf den Server zu kopieren und dann im Adminbereich zu aktivieren.
Um die Versandkosten einzustellen, muss man jedoch die Datei gls.php im Ordner ./include/modules/shipping anpassen. Die Tabelle findet man ab ca. Zeile 659.

Will man nun eine Nachnahmezahlung mit Gls anbieten, so muss man ein paar Anpassungen vornehmen.

/includes/modules/order_total/ot_cod_fee.php Zeile 80
finden:

// UPS

davor einfügen:

if ($_SESSION['shipping']['id'] == 'gls_gls') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_GLS);

finden:

function keys() {
// weithinten MODULE_ORDER_TOTAL_COD_FEE_GLS eingefugt
return array('MODULE_ORDER_TOTAL_COD_FEE_STATUS', 'MODULE_ORDER_TOTAL_COD_FEE_SORT_ORDER', 'MODULE_ORDER_TOTAL_COD_FEE_FLAT', 'MODULE_ORDER_TOTAL_COD_FEE_ITEM', 'MODULE_ORDER_TOTAL_COD_FEE_TABLE','MODULE_ORDER_TOTAL_COD_FEE_CHRONOPOST','MODULE_ORDER_TOTAL_COD_FEE_DHL','MODULE_ORDER_TOTAL_COD_FEE_CHP', 'MODULE_ORDER_TOTAL_COD_FEE_ZONES', 'MODULE_ORDER_TOTAL_COD_FEE_AP', 'MODULE_ORDER_TOTAL_COD_FEE_UPS', 'MODULE_ORDER_TOTAL_COD_FEE_UPSE', 'MODULE_ORDER_TOTAL_COD_FEE_DP', 'MODULE_ORDER_TOTAL_COD_FEE_FREE', 'MODULE_ORDER_TOTAL_FREEAMOUNT_FREE', 'MODULE_ORDER_TOTAL_COD_FEE_TAX_CLASS');
}

ersetzen durch:

 function keys() {
// weithinten MODULE_ORDER_TOTAL_COD_FEE_GLS eingefugt
return array('MODULE_ORDER_TOTAL_COD_FEE_STATUS', 'MODULE_ORDER_TOTAL_COD_FEE_SORT_ORDER', 'MODULE_ORDER_TOTAL_COD_FEE_FLAT', 'MODULE_ORDER_TOTAL_COD_FEE_ITEM', 'MODULE_ORDER_TOTAL_COD_FEE_TABLE','MODULE_ORDER_TOTAL_COD_FEE_CHRONOPOST','MODULE_ORDER_TOTAL_COD_FEE_DHL','MODULE_ORDER_TOTAL_COD_FEE_CHP', 'MODULE_ORDER_TOTAL_COD_FEE_ZONES', 'MODULE_ORDER_TOTAL_COD_FEE_AP', 'MODULE_ORDER_TOTAL_COD_FEE_UPS', 'MODULE_ORDER_TOTAL_COD_FEE_UPSE', 'MODULE_ORDER_TOTAL_COD_FEE_DP', 'MODULE_ORDER_TOTAL_COD_FEE_FREE', 'MODULE_ORDER_TOTAL_FREEAMOUNT_FREE', 'MODULE_ORDER_TOTAL_COD_FEE_GLS', 'MODULE_ORDER_TOTAL_COD_FEE_TAX_CLASS');
}

finden:

xtc_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value, configuration_group_id, sort_order, date_added) values ('MODULE_ORDER_TOTAL_FREEAMOUNT_FREE', 'AT:3.00,DE:3.58,00:9.99', '6', '0', now())");
xtc_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value, configuration_group_id, sort_order, use_function, set_function, date_added) values ('MODULE_ORDER_TOTAL_COD_FEE_TAX_CLASS', '0', '6', '0', 'xtc_get_tax_class_title', 'xtc_cfg_pull_down_tax_classes(', now())");
}

Ersetzen durch:

xtc_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value, configuration_group_id, sort_order, date_added) values ('MODULE_ORDER_TOTAL_FREEAMOUNT_FREE', 'AT:3.00,DE:3.58,00:9.99', '6', '0', now())");
xtc_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value, configuration_group_id, sort_order, date_added) values ('MODULE_ORDER_TOTAL_COD_FEE_GLS', 'AT:10.00,DE:5.04', '6', '0', now())");
xtc_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_key, configuration_value, configuration_group_id, sort_order, use_function, set_function, date_added) values ('MODULE_ORDER_TOTAL_COD_FEE_TAX_CLASS', '0', '6', '0', 'xtc_get_tax_class_title', 'xtc_cfg_pull_down_tax_classes(', now())");
}

/includes/modules/payment/cod.php Zeile 104
finden:

if ($_SESSION['shipping']['id'] == 'ups_ups') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_UPS);

davor einfügen:

 if ($_SESSION['shipping']['id'] == 'gls_gls') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_GLS);

Und zum Schluss jeweils die Sprachdatein für das Shipingmodul gls mit Text versehn, ungefähr so: /{sprache}/modules/order_total/ot_cod_fee.php

define('MODULE_ORDER_TOTAL_COD_FEE_GLS_TITLE','GLS Versand');
define('MODULE_ORDER_TOTAL_COD_FEE_GLS_DESC','<ISO2-Code>:<Price>, ....<br />
00 as ISO2-Code allows the COD shipping in all countries. If
00 is used you have to enter it as last argument. If
no 00:9.99 is entered the COD shipping into foreign countries will not be calculated
(not possible).'
);

Das wars… Viel Spass beim Einbau und gute Verkäufe :)

Also, ich habe es getestet und bei mir läuft es wunder bar. Ich hafte jedoch nicht für dein Shop, Einbau auf eigene Gefahr!