Subversion-Projekte lars-tiefland.content-management

Revision

Blame | Letzte Änderung | Log anzeigen | RSS feed

<?
          /*--------*/
         /* PREFIX */
        /*--------*/
        
        function GMT()
        {
                return gmdate("Y-m-d H:i:s");
        }

        function msgLog($msg)
        {
                echo "\n".GMT()."\n".print_r($msg,true);
        }
        
        function mysql_query_log($query)
        {
                msgLog($query);
                return mysql_query($query);
        }

        // forget about any script timeouts
        set_time_limit(0);
        
        require_once '/web/apache/content-management/ebayphpat/Ebay_TransactionByItemQuery.php';
        require_once "/web/apache/content-management/Online-Shop/eBay/system/loadConf.php";
        
            /*-----------------------------------------*/
           /* Verbindung mit Datenbank(en) herstellen */
          /* Alle im Array angegebenen Datenbanken   */
         /* abarbeiten                              */
        /*-----------------------------------------*/

        mysql_connect("localhost","root","");
        foreach
        (
                array
                (
                        "mediaran_de"
                        //,"online_redaktionstool_de"
                )
                as $DB
        )
        {
                mysql_query_log("use $DB");

                    /*------------------------------------------------*/
                   /* Settings aus der Datenbank.eBay_settings laden */
                  /* Settings in $settings, conf-Einträge in $conf  */
                 /*     speichern.                                     */
                /*------------------------------------------------*/
        
                $query=
                "
                        select
                                Name,
                                Inhalt,
                                Typ
                        from
                                eBay_settings
                        where 
                                Typ  = 'confDatei'
                ";
                $result=mysql_query_log($query) or die (mysql_errno().": ".mysql_error()."<hr>$query<hr>");
                $settings=array();
                while ($zeile=mysql_fetch_assoc($result))
                {
                        msgLog($zeile);
                        $conf[$zeile[Name]]=$zeile[Inhalt];
                }

                   /*----------------------------------------------------*/
                  /* In den Settings stehen alle möglichen conf-Dateien */
                 /* Für jede conf-Einstellung eine Session erstellen.  */
                /*----------------------------------------------------*/

                foreach(array_keys($conf) as $Name)
                {
                        $Sessions[$Name] = new Ebay_Session();
                        $Sessions[$Name]->InitFromConfig($conf[$Name]);
                }

                  /*---------------------*/
                 /* Auktionsdaten laden */
                /*---------------------*/

                $query=
                "
                        SELECT
                                eBay_AuktionsDaten.Id,
                                eBay_AuktionsDaten.StartTime,
                                eBay_AuktionsDaten.EndTime,
                                eBay_Auktionen.confDatei,
                                eBay_Auktionen.artikel_ID,
                                eBay_Auktionen.ID as eBay_Auktionen_ID,
                                eBay_Auktionen.Quantity,
                                eBay_Auktionen.VersandCarrier,
                                eBay_Auktionen.VersandCost,
                                eBay_Auktionen.VersandID,
                                count(eBay_Bestellung.eBay_Auktionen_ID) as Transactions
                        FROM
                                eBay_AuktionsDaten,
                                eBay_Auktionen
                        LEFT JOIN
                                eBay_Bestellung
                        ON
                                eBay_Bestellung.eBay_Auktionen_ID = eBay_Auktionen.ID
                        WHERE
                                eBay_Auktionen.eBay_Id = eBay_AuktionsDaten.Id
                        AND
                                '".GMT()."'
                        BETWEEN
                                eBay_AuktionsDaten.StartTime
                        AND
                                eBay_AuktionsDaten.EndTime
                        GROUP BY 
                                eBay_Auktionen.ID,
                                eBay_AuktionsDaten.Id
                        Having
                                Quantity > Transactions
                ";

                $result=mysql_query_log($query) or die (mysql_errno().": ".mysql_error()."<hr>$query<hr>");

                while ($Auktion=mysql_fetch_assoc($result))
                {
                        msgLog($Auktion);
                        $mySession=$Sessions[$Auktion[confDatei]];

                        $transQueryItem = new Ebay_TransactionByItemQuery($mySession);

                        $transQueryItem->setLastModifiedFrom($Auktion[StartTime]);
                        $transQueryItem->setLastModifiedTo(GMT());

                        $transQueryItem->setItemId($Auktion[Id]);
                        $res = $transQueryItem->Query(126);

/* ################################################################################################################## */

                        if ($res->isGood())
                        {

                                $resultList = $transQueryItem->getResultList();
                                $info = $transQueryItem->getResultInfo();
                                $item = $info->getItem();

                                foreach ($resultList as $trans)
                                {
                                        $buyer = $trans->getBuyer();
                                
                                        /* Feststellen, ob diese Transaction schon verzeichnet ist */
                                        $query=
                                        "
                                                select
                                                *
                                                from
                                                        eBay_Bestellung
                                                where
                                                        TransactionId = '".$trans->getTransactionId()."'
                                                        and 
                                                        eBay_Auktionen_ID = '".$Auktion[eBay_Auktionen_ID]."'
                                        ";
                                        $check=mysql_query_log($query);
                                        if (mysql_num_rows($check) == 0)
                                        {
                                                msgLog("/* Userdaten in die Datenbank pumpen. */");
                                                $query=
                                                "
                                                        insert into Logins
                                                        (
                                                                Name1,
                                                                Strasse,
                                                                PLZ,
                                                                ORT,
                                                                Land,
                                                                E_Mail,
                                                                Telefon,
                                                                liefer_Name,
                                                                liefer_Strasse,
                                                                liefer_PLZ,
                                                                liefer_Ort,
                                                                erstellt_am,
                                                                erstellt_von,
                                                                letzte_Aenderung_am,
                                                                letzte_Aenderung_von
                                                        )
                                                        values
                                                        (
                                                                '".$buyer->getRegistrationAddressName()."',
                                                                '".$buyer->getRegistrationAddressStreet()."',
                                                                '".$buyer->getRegistrationAddressZip()."',
                                                                '".$buyer->getRegistrationAddressCity()."',
                                                                '".$buyer->getCountryCode()."',
                                                                '".$buyer->getEmail()."',
                                                                '".$buyer->getRegistrationAddressPhone()."',
                                                                '".$buyer->getShippingAddressName()."',
                                                                '".$buyer->getShippingAddressStreet1()." ".$buyer->getShippingAddressStreet2()."',
                                                                '".$buyer->getShippingAddressZip()."',
                                                                '".$buyer->getShippingAddressCity()."',
                                                                NOW(),
                                                                '(eBay-Bestellung) - <a href=http://feedback.ebay.de/ws1/eBayISAPI.dll?ViewFeedback&userid=".$buyer->getUserId().">".$buyer->getUserId()."</a>',
                                                                NOW(),
                                                                '(eBay-Bestellung) - <a href=http://feedback.ebay.de/ws1/eBayISAPI.dll?ViewFeedback&userid=".$buyer->getUserId().">".$buyer->getUserId()."</a>'
                                                        )
                                                ";
                                                $loginResult = mysql_query_log ($query) or mail("lautsch@weban.de","Fehler in $self I",mysql_errno().": ".mysql_error()."<hr>$query<hr>","from: pick2pay.nl");
                                                $User_ID = mysql_insert_id();
                                
                                                msgLog("/* Bestellung erstellen */");
                                                $query=
                                                "
                                                        insert into Bestellung
                                                        (
                                                                Bemerkung,
                                                                Login,
                                                                shops_ID,
                                                                erstellt_am,
                                                                erstellt_von
                                                        )
                                                        values
                                                        (
                                                                'eBay Auktion TESTESTESTESTESTESTESTESTESTESTESTESTESTESTEST',
                                                                '$User_ID',
                                                                '$Auktion[confDatei]',
                                                                NOW(),
                                                                '(eBay-Bestellung) - <a href=http://feedback.ebay.de/ws1/eBayISAPI.dll?ViewFeedback&userid=".$buyer->getUserId().">".$buyer->getUserId()."</a>'
                                                        )
                                                ";
                                                $BestellungResult = mysql_query_log ($query) or mail("lautsch@weban.de","Fehler in $self II",mysql_errno().": ".mysql_error()."<hr>$query<hr>","from: pick2pay.nl");
                                                $Bestellnummer=mysql_insert_id();

                                                msgLog("/* eBay-Bestellung erstellen */");
                                                $query=
                                                "
                                                        insert into eBay_Bestellung
                                                        (
                                                                Bestellung_ID,          
                                                                PaymentMethodUsed,
                                                                TransactionId,          
                                                                eBay_Auktionen_ID               
                                                        )
                                                        values
                                                        (
                                                                '$Bestellnummer',
                                                                '".$trans->getCheckoutPaymentMethodUsed()."',
                                                                '".$trans->getTransactionId()."',
                                                                '".$Auktion[eBay_Auktionen_ID]."'
                                                        )
                                                ";
                                                $eBay_BestellungResult = mysql_query_log ($query) or mail("lautsch@weban.de","Fehler in $self III",mysql_errno().": ".mysql_error()."<hr>$query<hr>","from: pick2pay.nl");

                                                msgLog("/* Artikel 2 Bestellung */");
                                                $query=
                                                "
                                                        insert into artikel_to_Bestellung
                                                        (
                                                                artikel,
                                                                Bestellung,
                                                                Menge,
                                                                Preis_pro_Stueck,
                                                                status,
                                                                Bezeichnung
                                                        )
                                                        values
                                                        (
                                                                $Auktion[artikel_ID],
                                                                $Bestellnummer,
                                                                '".$trans->getQuantityPurchased()."',
                                                                '".$trans->getTransactionPrice()."',
                                                                'offen',
                                                                '".$item->getTitle()."'
                                                        )
                                                ";
                                                $result_insert = mysql_query_log ($query) or mail("lautsch@weban.de","Fehler in $self IV",mysql_errno().": ".mysql_error()."<hr>$query<hr>","from: pick2pay.nl");

                                                msgLog("/* Artikel 2 Bestellung Versandoption */");
                                                $query=
                                                "
                                                        insert into artikel_to_Bestellung
                                                        (
                                                                artikel,
                                                                Bestellung,
                                                                Menge,
                                                                Preis_pro_Stueck,
                                                                status,
                                                                Bezeichnung
                                                        )
                                                        values 
                                                        (
                                                                $Auktion[VersandID],
                                                                $Bestellnummer,
                                                                1,
                                                                $Auktion[VersandCost],
                                                                'offen',
                                                                $Auktion[VersandCarrier]
                                                        )
                                                ";
                                                $result_insert = mysql_query_log ($query) or mail("lautsch@weban.de","Fehler in $self V",mysql_errno().": ".mysql_error()."<hr>$query<hr>","from: pick2pay.nl");
                                        }
                                }
                        }
                        else
                        {
                                $res->debugPrintErrors();
                        }

/* ################################################################################################################## */
                }
        }
        echo "\n\n";
?>