private function runHelloCashPull(&$messages) { if (!defined('HELLOCASH_SYNC_IN_PROGRESS')) { define('HELLOCASH_SYNC_IN_PROGRESS', true); } $token = trim($this->params->get('api_token', '')); if (empty($token)) { $messages[] = "FEHLER: Kein API-Token konfiguriert."; return; } $db = JFactory::getDbo(); // 1. Auto-Mapping ausführen $this->runBulkAutoMapping($token, $db, $messages); // 2. Alle Mappings aus der DB laden (product_id => hellocash_id) $query = $db->getQuery(true) ->select(array($db->quoteName('product_id'), $db->quoteName('hellocash_id'))) ->from($db->quoteName('#__hikashop_hellocash_map')); $db->setQuery($query); $mappings = $db->loadObjectList(); if (empty($mappings)) { $messages[] = "Keine verknüpften Artikel vorhanden."; return; } $hcToHikaMap = array(); foreach ($mappings as $m) { $hcToHikaMap[(int)$m->hellocash_id] = (int)$m->product_id; } $updatedCount = 0; $headers = array("Authorization: Bearer " . $token, "Accept: application/json"); // 3. Bestände seitenweise von helloCash abrufen (100 Artikel pro Request) for ($page = 1; $page <= 25; $page++) { $url = "https://api.hellocash.business/api/v2/articles?limit=100&page=" . $page; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); $response = curl_exec($ch); $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($httpCode == 429) { usleep(1500000); $page--; continue; } if ($httpCode != 200 || empty($response)) { break; } $data = json_decode($response, true); $articles = isset($data['data']) ? $data['data'] : (is_array($data) ? $data : array()); if (empty($articles)) { break; } foreach ($articles as $art) { $hcId = isset($art['id']) ? (int)$art['id'] : 0; if ($hcId <= 0 || !isset($hcToHikaMap[$hcId])) { continue; } $stock = null; if (isset($art['stocks'])) $stock = (int)$art['stocks']; elseif (isset($art['stock'])) $stock = (int)$art['stock']; if ($stock !== null) { $pId = $hcToHikaMap[$hcId]; $updateQuery = $db->getQuery(true) ->update($db->quoteName('#__hikashop_product')) ->set($db->quoteName('product_quantity') . ' = ' . $stock) ->where($db->quoteName('product_id') . ' = ' . $pId); $db->setQuery($updateQuery); try { $db->execute(); $updatedCount++; } catch (Exception $e) {} } } if (count($articles) < 100) { break; } usleep(100000); } // Kompakte Erfolgsmeldung ohne unendliche Einzelausgaben $messages[] = "SYNC FERTIG: Insgesamt " . $updatedCount . " Artikelbestände von helloCash nach HikaShop synchronisiert."; } BÖKER

BÖKER

25,96 € BÖKER PLUS L'EGG
57,95 € BÖKER PLUS LEFTI
71,95 € BÖKER PLUS LITTLE DVALIN
71,95 € BÖKER PLUS LITTLE DVALIN TANTO
165,95 € BÖKER PLUS LITTLE FRIEND
110,95 € BÖKER PLUS LITTLE ROK
82,96 € BÖKER PLUS LOCKBACK BUBINGA
72,95 € BÖKER PLUS LOFOS
116,95 € BÖKER PLUS LRF CARBON
99,95 € BÖKER PLUS LRF COCOBOLO
155,95 € BÖKER PLUS LRF DAMAST
95,95 € BÖKER PLUS LRF G10
104,95 € BÖKER PLUS M-ONE DAMAST
86,95 € BÖKER PLUS M.E.R.K. 1
165,95 € BÖKER PLUS M3 TRENCH KNIFE 2.1
104,95 € BÖKER PLUS M92
89,94 € BÖKER PLUS MAKRI
131,94 € BÖKER PLUS MASADA FOLDER
210,00 € BÖKER PLUS MAX
440,00 € Böker Plus ME 109 Damast
49,96 € BÖKER PLUS MEK
81,54 € BÖKER PLUS MICRO TRACKER
75,95 € BÖKER PLUS MICRO TRACKER 2.0
89,95 € BÖKER PLUS MICRO TRACKER FOLDER
62,95 € BÖKER PLUS MICRO USB OTF
62,95 € BÖKER PLUS MICRO USB OTF BLAU
62,95 € BÖKER PLUS MICRO USB OTF TANTO
95,94 € BÖKER PLUS MIKRI
95,94 € BÖKER PLUS MINI TRACKER
88,96 € BÖKER PLUS MINI TRACKER 2.0
55,96 € BÖKER PLUS MODERN BARLOW
62,95 € Böker Plus Modern Club Knife
49,96 € Böker Plus Modern Exskelibur
55,96 € BÖKER PLUS MODERN GENTLEMAN'S LOCKBACK
59,95 € Böker Plus Modern Stockmann
62,95 € BÖKER PLUS MODERN TRAPPER UNO
68,95 € BÖKER PLUS MOHICAN
31,96 € BÖKER PLUS MPP BLACK
31,96 € BÖKER PLUS MPP GREY
86,95 € BÖKER PLUS MPP TITAN
66,95 € BÖKER PLUS NAHAL
66,95 € BÖKER PLUS NATURENSÖHNE MK II
132,95 € BÖKER PLUS NEBULA
77,95 € BÖKER PLUS NESSMI PRO
77,95 € BÖKER PLUS NESSMI PRO BLACK
107,94 € BÖKER PLUS NORI COCOBOLO
104,95 € BÖKER PLUS NORTHWOOD BOWIE
132,95 € BÖKER PLUS NUBILUM

Böker Plus

165,95 € BÖKER PLUS LITTLE FRIEND
110,95 € BÖKER PLUS LITTLE ROK
82,96 € BÖKER PLUS LOCKBACK BUBINGA
155,95 € BÖKER PLUS LRF DAMAST
104,95 € BÖKER PLUS M-ONE DAMAST
86,95 € BÖKER PLUS M.E.R.K. 1
89,94 € BÖKER PLUS MAKRI
131,94 € BÖKER PLUS MASADA FOLDER
81,54 € BÖKER PLUS MICRO TRACKER
95,94 € BÖKER PLUS MIKRI
95,94 € BÖKER PLUS MINI TRACKER
68,95 € BÖKER PLUS MOHICAN
31,96 € BÖKER PLUS MPP BLACK
31,96 € BÖKER PLUS MPP GREY
66,95 € BÖKER PLUS NAHAL
77,95 € BÖKER PLUS NESSMI PRO BLACK
107,94 € BÖKER PLUS NORI COCOBOLO
Ergebnisse 337 – 384 von 1572