Subversion-Projekte lars-tiefland.content-management

Revision

Blame | Letzte Änderung | Log anzeigen | RSS feed

<?php

    //ini_set( "display_errors", false );
    //ini_set( "error_reporting", "E_ALL & ~E_DEPRECATED" );
    define( "__USE_MDB2__", true );
    define( "__SHOP__", "neu.schnellversender.de" );
    define( "__SITE__", "mediaran.de" );
    define( "USE_SMARTY", true );

    require_once "module/functions.common.php";
    //PEAR::setErrorHandling( PEAR_ERROR_CALLBACK, 'errorHandler' );

    init_shop();

    foreach ( $GLOBALS["Eigenschaften"] as $property )
    {
        $p[] = "Eigenschaft_$property";
    }

    $properties = implode( ", ", $p );

    $sql_c = "SELECT
            id
        FROM
            content_management.countries
        WHERE
            `name-ger` = ?
    ";

    $sql_v_alt = "SELECT
            a.id,
            ifnull(a.rang,0) AS rang,
            a.kennung,
            a.short_line_2 AS interner_name,
            status as shop,
            ifnull(preis_neu1,0) as gewicht_von,
            ifnull(preis_neu2,0) as gewicht_bis,
            ifnull(preis_neu3,0) as wert_von,
            ifnull(preis_neu4,0) as wert_bis,
            ifnull(preis1,0) as preis,
            kurzbezeichnung as name,
            ifnull(z.id,9) as z_id
        FROM
            artikel a
        LEFT OUTER JOIN
            zahlungsarten z
        ON
            z.interner_name=a.short_line_1
        JOIN
            shops s
        ON
            s.id=a.status
        WHERE
            Father = -3
        ORDER BY
            status
    ";
    $sql_vp_alt = "SELECT
            $properties
        FROM
            artikel
        WHERE
            id=?
    ";

    $sql_v_neu = "
        INSERT INTO
            shipment
        (
            rang,
            kennung,
            interner_name,
            shop,
            gewicht_von,
            gewicht_bis,
            wert_von,
            wert_bis,
            preis,
            name,
            z_id
        )
        VALUES
        (
            ?,
            ?,
            ?,
            ?,
            ?,
            ?,
            ?,
            ?,
            ?,
            ?,
            ?
        )
    ";

    $sql_vp_neu = "
        INSERT INTO
            shipment_properties
        (
            s_id,
            property,
            value
        )
        VALUES
        (
            ?,
            ?,
            ?
        )
    ";

    $sql_vc = "
        INSERT INTO
            shipment_countries
        (
            s_id,
            c_id
        )
        VALUES
        (
            ?,
            ?
        )
    ";

    $sql_v_ls = "SELECT
            lieferstatus
        FROM
            artikel
        WHERE
            id=?
    ";
    $sth["c"] = $GLOBALS["db"]->prepare( $sql_c, array( 'text' ) );
    $sth["v_alt"] = $GLOBALS["db"]->prepare( $sql_v_alt );
    $sth["v_ls"] = $GLOBALS["db"]->prepare( $sql_v_ls, array( 'integer' ) );
    $sth["v_neu"] = $GLOBALS["db"]->prepare( $sql_v_neu );
    $sth["vc"] = $GLOBALS["db"]->prepare( $sql_vc, array( 'integer', 'integer' ),
        MDB2_PREPARE_MANIP );
    $sth["vp_alt"] = $GLOBALS["db"]->prepare( $sql_vp_alt, array( 'integer' ) );
    $sth["vp_neu"] = $GLOBALS["db"]->prepare( $sql_vp_neu, array( 'integer',
        'integer', 'integer' ), MDB2_PREPARE_MANIP );
    if ( PEAR::iserror( $sth["c"] ) )
    {
        die( $sth["c"]->getUserInfo() );
    }
    if ( PEAR::iserror( $sth["v_alt"] ) )
    {
        die( $sth["v_alt"]->getUserInfo() );
    }
    if ( PEAR::iserror( $sth["v_ls"] ) )
    {
        die( $sth["v_ls"]->getUserInfo() );
    }
    if ( PEAR::iserror( $sth["v_neu"] ) )
    {
        die( $sth["v_neu"]->getUserInfo() );
    }
    if ( PEAR::iserror( $sth["vp_alt"] ) )
    {
        die( $sth["vp_alt"]->getUserInfo() );
    }
    if ( PEAR::iserror( $sth["vp_neu"] ) )
    {
        die( $sth["vp_neu"]->getUserInfo() );
    }
    $Laender = array( "Deutschland", "Niederlande", "Österreich", "Belgien",
        "Luxemburg", "Dänemark", "Schweiz", "Frankreich",
        "Vereinigtes Königreich von Großbritannien und Nordirland", "Italien",
        "Spanien", "Portugal", "Schweden", "Finnland", "Norwegen",
        "Irland, Republik", "Griechenland", "Estland", "Lettland", "Malta",
        "Litauen", "Polen", "Slowenien", "Tschechische Republik", "Türkei",
        "Ungarn", "Zypern, Republik", "Kanada", "Vereinigte Staaten von Amerika",
        "Kroatien", "Bulgarien", "Rumänien" );
    foreach ( $Laender as $l_id => $Land )
    {
        $code = 1 << $l_id;
        $res = $sth["c"]->execute( $Land );
        if ( PEAR::iserror( $res ) )
        {
            die( $res->getUserInfo() );
        }
        //echo $res->getUserInfo();
        $row = $res->fetchRow();
        $land_id = $row["id"];
        if ( $land_id )
        {
            $Laender_codes[$code] = $land_id;
        }
    }

    //var_dump( $Laender_codes );
    $res = $sth["v_alt"]->execute();
    if ( PEAR::iserror( $res ) )
    {
        die( $res->getUserInfo() );
    }
    while ( $row = $res->fetchrow() )
    {
        $res_ls = $sth["v_ls"]->execute( array( $row["id"] ) );
        $row_ls = $res_ls->fetchrow();
        if ( PEAR::iserror( $res_ls ) )
        {
            die( $res_ls->getUserInfo() );
        }
        $res_vp = $sth["vp_alt"]->execute( array( $row["id"] ) );
        if ( PEAR::iserror( $res_vp ) )
        {
            die( $res_vp->getUserInfo() );
        }
        $row_vp = $res_vp->fetchRow();
        unset( $row["id"] );
        unset( $row_v_neu );
        if ( empty( $row["z_id"] ) )
        {
            $row["z_id"] = 9;
        }
        foreach ( $row as $value )
        {
            $row_v_neu[] = $value;
        }
        $res_v_neu = $sth["v_neu"]->execute( $row_v_neu );
        if ( PEAR::iserror( $res_v_neu ) )
        {
            die( $res_v_neu->getUserInfo() );
        }
        $id_v_neu = $GLOBALS["db"]->lastInsertId();
        foreach ( $GLOBALS["Eigenschaften"] as $e_nr )
        {
            unset( $vp );
            $vp[] = $id_v_neu;
            $vp[] = $e_nr;
            $vp[] = $row_vp["eigenschaft_" . $e_nr];
            $res_vp_neu = $sth["vp_neu"]->execute( $vp );
            if ( PEAR::iserror( $res_vp_neu ) )
            {
                die( $res_vp_neu->getUserInfo() );
            }
        }
        foreach ( $Laender_codes as $code => $l_id )
        {
            if ( $row_ls["lieferstatus"] & $code = $code )
            {
                unset( $vc );
                $vc[] = $id_v_neu;
                $vc[] = $l_id;
                $res_vc = $sth["vc"]->execute( $vc );
            }
        }
    }

?>