public function getJSON() { $itemid = $this->itemid; $apiuser = $GLOBALS["DB"]->executeQuery("SELECT username, apikey FROM xplugin_newsletter2go_keys", 1); // Query Artikel [tartikel] // Kann man irgendwie auch den Artikel als Objekt direkt so laden? $query = "SELECT `kArtikel` FROM `tartikel` WHERE `cArtNr` = '{$itemid}'"; $produkt = $GLOBALS["DB"]->executeQuery($query, 9); if (empty($produkt)) { return $this->getError(200); } $kArtikel = $produkt[0]['kArtikel']; $artikel = new Artikel(); $artikel->fuelleArtikel($kArtikel, false); $json = array("itemID" => $artikel->cArtNr, "name" => utf8_encode($artikel->cName), "url" => gibShopURL(), "link" => '/' . $artikel->cSeo, "short_description" => utf8_encode($artikel->cKurzBeschreibung), "description" => utf8_encode($artikel->cBeschreibung), "images" => array()); // Bilder zum Artikel $artikel->holBilder(); foreach ($artikel->Bilder as $bild) { $json['images'][] = gibShopURL() . '/' . $bild->cPfadNormal; } $json['price'] = $artikel->gibPreis(1, false); $json['taxes'] = (double) gibUst($artikel->kSteuerklasse) / 100; return json_encode($json); }
/** * Get product informations. * * @return mixed Product info. */ public function getProductInfo() { // Article number $identifier = filter_input(INPUT_POST, 'identifier'); if ($identifier === null) { self::sendError('Indentifier not found.'); } $query = 'SELECT kArtikel FROM ' . self::PRODUCTS_TABLE . " WHERE cArtNr = '{$identifier}'"; $productInfoFromDb = $GLOBALS["DB"]->executeQuery($query, 9); if (empty($productInfoFromDb)) { self::sendError(sprintf('Product with article number %d has not been found.', $identifier)); } $language = filter_input(INPUT_POST, 'language'); $productInfo = $productInfoFromDb[0]['kArtikel']; $product = new Artikel(); $product->fuelleArtikel($productInfo, false, 0, $language); if ($product->cArtNr != $identifier) { self::sendError('Product not found in this language!'); } $productPrice = $product->gibPreis(1, false); $productTax = (double) gibUst($product->kSteuerklasse) / 100; $productToReturn = array(); foreach (self::getProductAttributeDefinitions() as $attributeDefinition) { $attributeName = $attributeDefinition['id']; // If attribute is not requested, don't add it. if (self::isProductAttributeRequested($attributeName) === false) { continue; } if ($attributeName === 'oldPrice' || $attributeName === 'newPrice') { $productToReturn[$attributeName] = isset($productPrice) ? round($productPrice * ($productTax + 1), 2) : false; continue; } if ($attributeName === 'oldPriceNet' || $attributeName === 'newPriceNet') { $productToReturn[$attributeName] = isset($productPrice) ? round($productPrice, 2) : false; continue; } if ($attributeName === 'url') { $productToReturn[$attributeName] = gibShopURL(); continue; } if ($attributeName === 'images') { $product->holBilder(); foreach ($product->Bilder as $bild) { $productToReturn[$attributeName][] = gibShopURL() . '/' . $bild->cPfadNormal; } continue; } if ($attributeName === 'fMwSt') { $productToReturn[$attributeName] = $productTax; continue; } $productToReturn[$attributeName] = isset($product->{$attributeName}) ? $product->{$attributeName} : ''; } return $productToReturn; }
</div> <div class="item"> <div class="name"> <label>Passwort</label> </div> <div class="for"> <?php echo $user->apikey; ?> </div> </div> <div class="item"> <div class="name"> <label>URL</label> </div> <div class="for"> <?php echo gibShopURL(); ?> </div> </div> <br/> <br/> <div style="text-align: center;"> <a href="<?php echo $frontend_url; ?> " target="_new" class="button orange"> Mit Newsletter2Go verbinden </a> </div> </div>
$itemid = $_POST['item']; $apiuser = $GLOBALS["DB"]->executeQuery("SELECT username, apikey FROM xplugin_newsletter2go_keys", 1); // Query Artikel [tartikel] $query = "SELECT `kArtikel`, `cArtNr`, `cName`, `cBeschreibung`, `cKurzBeschreibung`, `kSteuerklasse`, `cSeo` FROM `tartikel` WHERE `cArtNr` = '{$itemid}'"; $produkt = $GLOBALS["DB"]->executeQuery($query, 9); $kArtikel = $produkt[0]['kArtikel']; $kSteuerklasse = $produkt[0]['kSteuerklasse']; if (!$produkt) { sendError(200, "Keine Produkt mit der ID gefunden."); } $json = array("itemID" => $produkt[0]['cArtNr'], "name" => utf8_encode($produkt[0]['cName']), "url" => gibShopURL(), "link" => '/' . $produkt[0]['cSeo'], "short_description" => utf8_encode($produkt[0]['cKurzBeschreibung']), "description" => utf8_encode($produkt[0]['cBeschreibung']), "images" => array()); // Bilder zum Artikel [tartikelpict] $query = "SELECT `cPfad` from `tartikelpict` WHERE `kArtikel` = {$kArtikel}"; $bilder = $GLOBALS["DB"]->executeQuery($query, 9); for ($i = 0; $i < count($bilder); $i++) { $json['images'][] = gibShopURL() . "/bilder/produkte/normal/" . $bilder[$i]['cPfad']; } // Preise zum Artikel [tpreise] // TODO Berücksichtigung verschiedener Kundengruppen? $query = "SELECT `fVKNetto` FROM `tpreise` WHERE `kArtikel` = {$kArtikel}"; $preis = $GLOBALS["DB"]->executeQuery($query, 9); $preis = $preis[0]; $json['price'] = $preis['fVKNetto']; // Steuern zum Artikel [tsteuersatz] $query = "SELECT `fSteuersatz` FROM `tsteuersatz` WHERE `kSteuerklasse` = '{$kSteuerklasse}' AND `kSteuerzone` = 1"; $steuersatz = $GLOBALS["DB"]->executeQuery($query, 9); $steuersatz = $steuersatz[0]; $json['taxes'] = $steuersatz['fSteuersatz'] / 100; echo json_encode($json); exit; }