Shop Hosting
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: MODUL: Klarna Zahlungsmodul für modified eCommerce Shopsoftware

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.161
    • Geschlecht:
    Wir mussten leider erneut zwei Fehler im Modul aus Beitrag 1 korrigieren.
    Wer das Modul bereits installiert hatte, der tauscht bitte einfach nur den Ordner "/includes/external/klarna/" aus.

    Grüße

    Torsten

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.161
    • Geschlecht:
    Das Modul aus Beitrag 1 musste nochmal aktualisiert werden, da sich die Server-Adresse für den Testbetrieb geändert hatte.

    Wie immer gilt: Wer das Modul bereits installiert hatte, der tauscht bitte einfach nur den Ordner "/includes/external/klarna/" aus.

    Grüße

    Torsten

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.161
    • Geschlecht:
    Das Modul aus Beitrag 1 wurde erneut aktualisiert.

    Wer das Modul bereits installiert hatte, der tauscht bitte die beiden folgenden Ordner aus:
    • /includes/external/klarna/
    • /includes/modules/payment/klarna/
    Grüße

    Torsten

    Jürgen H.

    • Neu im Forum
    • Beiträge: 15
    Hallo,

    bitte beim nächsten Update folgende Dateien aktualisieren:

    1. includes/external/klarna/api/transport/xmlrpc-3.0.0.beta/lib/xmlrpc.inc
    Code: PHP  [Auswählen]
     function xmlrpc_client
     function xmlrpcresp
     function xmlrpcmsg
     function xmlrpcval
    2. includes/external/klarna/api/transport/xmlrpc-3.0.0.beta/lib/xmlrpcs.inc
    Code: PHP  [Auswählen]
     function xmlrpc_server

    durch Konstruktor ersetzen (Wichtig für php7):
    Code: PHP  [Auswählen]
     function __construct

    Gruß
    Jürgen H.

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.161
    • Geschlecht:
    Eine Aktualisierung für PHP 7 ist derzeit noch nicht vorgesehen.

    Das Modul aus Beitrag 1 wurde erneut aktualisiert.

    Wer das Modul bereits installiert hatte, der tauscht bitte die folgenden Dateien aus:
    • /includes/external/klarna/api/pclasses/mysqlstorage.class.php
    • /includes/external/klarna/class.KlarnaBase.php
    • /includes/external/klarna/class.KlarnaCore.php
    • /includes/external/klarna/class.klarnappbox.php
    Grüße

    Torsten

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.161
    • Geschlecht:
    Das Modul aus Beitrag 1 wurde erneut aktualisiert.

    Wer Klarna bereits installiert hatte, der muss es bitte vor dem Update im Adminbereich unter "Module" -> "Zusammenfassung" -> "Klarna - Rechnungsgebühr (ot_klarna_fee)" deinstallieren und nach dem Update der Dateien erneut installieren.

    Tauscht bitte zusätzlich die folgenden Dateien aus:
    • /includes/external/klarna/class.KlarnaBase.php
    • /includes/external/klarna/class.KlarnaConstantsTranslations.php
    • /includes/external/klarna/class.KlarnaUtils.php
    • /includes/modules/order_total/ot_klarna_fee.php
    Grüße

    Torsten

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.161
    • Geschlecht:
    Das Modul aus Beitrag 1 wurde erneut aktualisiert.

    Wer Klarna bereits installiert hatte, der muss es bitte vor dem Update im Adminbereich unter "Module" -> "Zusammenfassung" -> "Klarna - Rechnungsgebühr (ot_klarna_fee)" deinstallieren und nach dem Update der Dateien erneut installieren.

    Tauscht bitte zusätzlich die folgenden Dateien aus:
    • /includes/external/klarna/api/klarnacalc.php
    • /includes/external/klarna/class.KlarnaUtils.php
    • /includes/modules/order_total/ot_klarna_fee.php
    Grüße

    Torsten

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.161
    • Geschlecht:
    Das Modul aus Beitrag 1 wurde erneut aktualisiert.

    Wer das Modul bereits installiert hatte, der tauscht bitte die folgenden Dateien aus:
    • /includes/external/klarna/KITT/classes/Payment/Widget.php
    • /includes/external/klarna/KITT/data/language.xml
    • /includes/external/klarna/class.KlarnaUtils.php
    Grüße

    Torsten

    Brianb

    • Neu im Forum
    • Beiträge: 27
    Hallo Zusammen habe eine leere Seite wenn ich die Bestellung abschließen will.
    Folgender Fehler wird mir angezeigt:

    Code: PHP  [Auswählen]
    Fatal error: Call to a member function getFirstName() on a non-object

    Hier der Quellcode der Datei:

    Code: PHP  [Auswählen]
    <?php
    /**
     * Address handling functions
     *
     * PHP Version 5.2
     *
     * @category Payment
     * @package  Klarna_Module_XtCommerce
     * @author   MS Dev <ms.modules@klarna.com>
     * @license  http://opensource.org/licenses/BSD-2-Clause BSD2
     * @link     http://integration.klarna.com
     */

    require_once "class.KlarnaCore.php";

    /**
     * Address handling class.
     *
     * @category Payment
     * @package  Klarna_Module_XtCommerce
     * @author   MS Dev <ms.modules@klarna.com>
     * @license  http://opensource.org/licenses/BSD-2-Clause BSD2
     * @link     http://integration.klarna.com
     */

    class KlarnaAddressXtc
    {
        /**
        * Build a KlarnaAddr from an osCommerce order address array, and takes
        * missing information from $_POST (collected from our checkout).
        *
        * @param array $xtcAddress xtcommerce order address array
        *
        * @return KlarnaAddr klarnaAddr object
        */

        public function xtcAddressToKlarnaAddr($xtcAddress)
        {
            $country = strtolower($xtcAddress['country']['iso_code_2']);
            $splitAddr = KiTT_Addresses::splitStreet(
                $xtcAddress["street_address"], $country
            );
            $street = '';
            $houseno = '';
            $housext = '';

            if (array_key_exists('street', $splitAddr)) {
                $street = $splitAddr['street'];
            }

            if (array_key_exists('house_number', $splitAddr)) {
                $houseno = $splitAddr['house_number'];
            }

            if (array_key_exists('house_extension', $splitAddr)) {
                $housext = $splitAddr['house_extension'];
            }

            $address = new KlarnaAddr(
                KiTT_String::encode($_POST["klarna_email"]),
                KiTT_String::encode($_POST["klarna_phone"]),
                KiTT_String::encode($_POST["klarna_phone"]),
                KiTT_String::encode($xtcAddress["firstname"]),
                KiTT_String::encode($xtcAddress["lastname"]),
                "",
                KiTT_String::encode($street),
                KiTT_String::encode($xtcAddress["postcode"]),
                KiTT_String::encode($xtcAddress["city"]),
                KiTT_String::encode($country),
                KiTT_String::encode($houseno),
                KiTT_String::encode($housext)
            );
            return $address;
        }

        /**
         * Match an address from the checkout with an address from getAddress, and
         * return the matching address.
         *
         * @param array  &$errors reference to errors array
         * @param string $option  payment method
         *
         * @return object KlarnaAddr object
         */

        public function getMatchingAddress(
            &$errors, $option
        ) {
            $addrs = array();

            $pno = $_POST["klarna_{$option}_pno"];

            $_SESSION['klarna_data']['pno'] = $pno;
            $_SESSION['klarna_data']['phone']
                = $_POST["klarna_{$option}_phone_number"];
            $address = new KlarnaAddr;
            $KITTaddr = new KiTT_Addresses(KiTT::api('SE'));

            try {
                $address = $KITTaddr->getMatchingAddress(
                    $pno,
                    $_POST["klarna_{$option}_address_key"]
                );
                $address->setTelno($_POST["klarna_{$option}_phone_number"]);
                $address->setCellno($_POST["klarna_{$option}_phone_number"]);
                $address->setEmail($_POST["klarna_email"]);
            } catch (Exception $e) {
                Klarna::printDebug('Error in __METHOD__', $e->getMessage());
                $errors[] = "error_no_address";
            }
            return $address;
        }

        /**
         * Convert a given array to a KlarnaAddr object.
         *
         * @param array  $array   an array of customer data
         * @param string $country the customers country
         *
         * @return KlarnaAddr object
         */

        public function buildKlarnaAddressFromArray($array, $country)
        {
            $address = new KlarnaAddr(
                "",
                KiTT_String::encode($array["phone_number"]),
                KiTT_String::encode($array["phone_number"]),
                KiTT_String::encode($array["first_name"]),
                KiTT_String::encode($array["last_name"]),
                "",
                KiTT_String::encode($array["street"]),
                KiTT_String::encode($array["zipcode"]),
                KiTT_String::encode($array["city"]),
                $country,
                KiTT_String::encode($array["house_number"]),
                KiTT_String::encode($array["house_extension"])
            );

            if ($array["klarna_invoice_type"] == "company") {
                $address->isCompany = true;
                $address->setCompanyName(
                    KiTT_String::encode($array["company_name"])
                );

                $name = explode(
                    ' ', KiTT_String::encode($array["reference"]), 2
                );

                if (strlen($name[0]) > 0) {
                    $address->setFirstName($name[0]);
                } else {
                    $address->setFirstName(" ");
                }
                if (count($name) > 1 && strlen($name[1]) > 0) {
                    $address->setLastName($name[1]);
                } else {
                    $address->setLastName(" ");
                }
            }
            return $address;
        }

        /**
         * Handle the values from the checkout (in the _POST) so we can save and
         * use them later.
         *
         * @param string $option 'inv', 'part' or 'spec'
         *
         * @return array
         */

        public function addressArrayFromPost($option)
        {
            return array(
                "gender" => $_POST["klarna_{$option}_gender"],
                "pno" => $_POST["klarna_{$option}_pno"],
                "first_name" => $_POST["klarna_{$option}_first_name"],
                "last_name" => $_POST["klarna_{$option}_last_name"],
                "street" => $_POST["klarna_{$option}_street"],
                "house_number" => $_POST["klarna_{$option}_house_number"],
                "zipcode" => $_POST["klarna_{$option}_zipcode"],
                "house_extension" => $_POST["klarna_{$option}_house_extension"],
                "reference" => $_POST["klarna_{$option}_reference"],
                "city" => $_POST["klarna_{$option}_city"],
                "phone_number" => $_POST["klarna_{$option}_phone_number"],
                "company_name" => $_POST["klarna_{$option}_company_name"],
                "klarna_invoice_type" => $_POST["klarna_{$option}_invoice_type"]
            );
        }

        /**
         * Build an xtcommerce address Array from a KlarnaAddr object.
         *
         * @param object $address KlarnaAddr object
         *
         * @return array xtcommerce address
         */

        public function klarnaAddrToXtcAddr($address)
        {
            global $order;
            return array(
                'firstname' => KiTT_String::decode($address->getFirstName()),
                'lastname' => KiTT_String::decode($address->getLastName()),
                'street_address' => KiTT_String::decode(
                    $address->getStreet() . ' ' . $address->getHouseNumber() .
                    ' ' . $address->getHouseExt()
                ),
                'postcode' => KiTT_String::decode($address->getZipCode()),
                'city' => KiTT_String::decode($address->getCity()),
                'telephone' => KiTT_String::decode($address->getTelNo()),
                'email_address' => KiTT_String::decode($address->getEmail()),
                'company' => KiTT_String::decode($address->getCompanyName()),

                //Set same country information as delivery
                'state' => $order->delivery['state'],
                'zone_id' => $order->delivery['zone_id'],
                'country_id' => $order->delivery['country_id'],
                'country' => array(
                    'id' => $order->delivery['country']['id'],
                    'title' => $order->delivery['country']['title'],
                    'iso_code_2' => $order->delivery['country']['iso_code_2'],
                    'iso_code_3' => $order->delivery['country']['iso_code_3']
                )
            );
        }
    }

    Brianb

    • Neu im Forum
    • Beiträge: 27
    Benutzt keiner Klarna für die Shopversion 2.0

    baddream

    • Neu im Forum
    • Beiträge: 10
    Geht überhaupt Klarna mit einen dieser Module?? Bei mir geht Klarna auch nicht auf shop version: v2.0.0.0 rev 9678

    longchuan

    • Viel Schreiber
    • Beiträge: 647
    • Geschlecht:
    Bei mir hat Klara kein Interesse zwecks Abrechnung.
    Schade. Hat jemand Erfahrung damit?

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.161
    • Geschlecht:
    Re: MODUL: Klarna Zahlungsmodul für modified eCommerce Shopsoftware
    Antwort #27 am: 05. September 2017, 13:09:26
    Das Modul aus Beitrag 1 wurde aktualisiert wegen der Klarna Namens-/Logo-Aktualisierung.

    Grüße

    Torsten

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.161
    • Geschlecht:
    Re: MODUL: Klarna Zahlungsmodul für modified eCommerce Shopsoftware
    Antwort #28 am: 13. September 2017, 17:54:44
    Das Modul aus Beitrag 1 wurde erneut aktualisiert wegen der Klarna Namens-/Logo-Aktualisierung.

    Betroffen sind die Dateien:
    • /includes/external/klarna/class.klarnappbox.php
    • /includes/modules/payment/klarna/productprice/style.css
    Neu hinzugekommen sind die Dateien:
    • /includes/external/klarna/KITT/css/pp.css
    • /includes/external/klarna/KITT/css/pullDown.png
    Grüße

    Torsten

    Archetim

    • Mitglied
    • Beiträge: 133
    Re: MODUL: Klarna Zahlungsmodul für modified eCommerce Shopsoftware
    Antwort #29 am: 15. September 2017, 16:05:31
    Hallo Tomcraft,

    nur zur Sicherheit eine Frage. Die letzte Aktualisierung betrifft Shops bis zur Version 1.06. Shops der Version 2.x sind hier nicht betroffen.

    Ist das korrekt?

    Danke
    Grüße
    Rene
               
    anything