%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /www/varak.net/shop.varak.net/import/
Upload File :
Create Path :
Current File : /www/varak.net/shop.varak.net/import/Heureka.php

<?php
/**
 * Created by PhpStorm.
 * User: Ludek
 * Date: 29. 10. 2016
 * Time: 17:39
 */
class Heureka
{
    public static function generujXML()
    {
        $result = dibi::query("select [ps_product].[id_product], [ps_product].[author], [ps_product].[ean13], [ps_product].[price], [ps_product].[id_tax_rules_group],
 [ps_product_lang].[description_short], [ps_product_lang].[name], [ps_image].[id_image], coalesce([w_sale_price].[reduction], '-1') [price_reduction] from [ps_product] 
join [ps_product_lang] on [ps_product].[id_product]=[ps_product_lang].[id_product]
join [ps_image] on [ps_image].[id_product]=[ps_product].[id_product]
join [ps_stock_available] on [ps_stock_available].[id_product]=[ps_product].[id_product]
left outer join [w_sale_price] on [w_sale_price].[id_product] = [ps_product].[id_product]
where [ps_product_lang].[id_lang]=1 AND ([ps_product_lang].[available_later] <> 'NEDOSTUPNÉ' or [ps_stock_available].[quantity] <> 0) AND [ps_image].[cover]=1 and [ps_product].[active]=1 
AND [ps_product].[price] > 10");

        $vysledek = '<?xml version="1.0" encoding="utf-8"?>
<SHOP>';
        $pocet = 0;
        foreach ($result as $radek)
        {
            $cena = $radek->price * 0.97 * ($radek->id_tax_rules_group == 5 ? 1.21 : $radek->id_tax_rules_group == 4 ? 1.1 : 1.15);
            if($radek->price_reduction > -1)
                $cena *= 1.00-$radek->price_reduction;

            $vysledek .= self::getProductXML(
                $radek->id_product,
                $radek->name,
                $radek->author,
                $radek->description_short,
                ceil($cena),
                $radek->ean13,
                substr($radek->ean13,0,3) . "-" . substr($radek->ean13,3,2) . "-" . substr($radek->ean13,5,3) . "-" . substr($radek->ean13,8,4) . "-" . substr($radek->ean13,12,1), // ISBN
                $radek->id_image
            );
            $pocet++;
        }
        $vysledek .= '</SHOP>';
        echo "Do Heureky jsem poslal: $pocet knih \n";
        file_put_contents("/www/knihkupectvi-monami.cz/www.knihkupectvi-monami.cz/heureka.xml", $vysledek);
        return $vysledek;
    }

    private static function getProductXML($prestaId, $nazev, $autor, $anotace, $cena, $ean, $isbn, $obrazekId)
    {
        $nazev = htmlentities($nazev, ENT_XML1, 'UTF-8');
        $autor = htmlentities($autor, ENT_XML1, 'UTF-8');
        $anotace = htmlentities($anotace, ENT_XML1, 'UTF-8');

        return "    <SHOPITEM>
        <ITEM_ID>$prestaId</ITEM_ID>
        <PRODUCTNAME>$nazev | $autor</PRODUCTNAME>
        <PRODUCT>$nazev | $autor</PRODUCT>
        <DESCRIPTION>$anotace</DESCRIPTION>
        <URL>https://www.knihkupectvi-monami.cz/index.php?id_product=$prestaId&amp;controller=product</URL>
        <IMGURL>" . self::obrazekUrl($obrazekId) . "</IMGURL>
        <PRICE_VAT>$cena</PRICE_VAT>
        <CATEGORYTEXT>Filmy, knihy, hry | Knihy</CATEGORYTEXT>
        <EAN>$ean</EAN>
        <ISBN>$isbn</ISBN>
        <DELIVERY_DATE>6</DELIVERY_DATE>
        <DELIVERY>
            <DELIVERY_ID>CESKA_POSTA</DELIVERY_ID>
            <DELIVERY_PRICE>120</DELIVERY_PRICE>
            <DELIVERY_PRICE_COD>120</DELIVERY_PRICE_COD>
        </DELIVERY>
        <ITEMGROUP_ID>$prestaId</ITEMGROUP_ID>
    </SHOPITEM>\n";
    }

    private static function obrazekUrl($id)
    {
        $res = "https://www.knihkupectvi-monami.cz/img/p/";
        $idparts = str_split($id);
        foreach($idparts as $p)
        {
            $res .= "$p/";
        }
        $res .= "$id-home_default.jpg";
        return $res;
    }
}

Zerion Mini Shell 1.0