Wir helfen Ihnen, wenn Sie:

Bild Ralf Roeschlein
Ralf Roeschlein, CEO
  • Telefonischer Hotline für dringende Probleme
  • Webmeetings für Workshops und Abklärungen
  • Vor Ort Termine für Workshops und Seminare
  • Interim Management und Projektsupport Vollzeit bei Ihnen vor Ort oder auch remote
  • Führungskräfte Coaching und Expertenberatung, sowohl online als auch Face to Face

Unsere Kompetenzen

Unsere Videos

News

Aus der AG wird eine GmbH

Wir freuen uns, bekannt zu geben, dass wir als Unternehmen eine bedeutende Änderung vorgenommen haben. Wir sind stolz darauf, Ihnen...

Read More

Bergwanderung zum Thema Digitalisierung – KI, Blockchain & Co.

Erfahrungsaustausch „Mische neu und alt: Künstliche Intelligenz, Blockchain & Co. in ERP Anwendungen. Was bringt es?“ Im Rahmen einer kleinen Bergwanderung...

Read More

Erster Podcast zur Zukunftsfähigkeit von Unternehmen

Podcast-Folge # 041 Wie Du Deine ZukunftsFähigkeit optimierst! Wir haben unseren ersten Podcast zusammen mit Ulrich Zimmermann veröffentlicht. Titel ist "Wie...

Read More
*/ // API authentication $yourApiId = '1tQZ1VaAl9TplqGB1xmA2pwZ1xmAkVGp'; $yourAPIKey = 'ZQIuBJWwZQx5AzSvAQHlLGp0Zmp1ZGtmLzWyAwV5ATZ'; $apiUrl = 'https://www.provenexpert.com/api_rating_v5.json'; // cache options $errorFile = '/provenexpert_error.txt'; $cacheFile = '/provenexpert_9532f07f8d34de011fbd7b1cc13301de.json'; $cachePath = dirname($_SERVER['SCRIPT_FILENAME']) . $cacheFile; $cachingTime = 3600; // in seconds $scriptVersion = '1.8'; if (! file_exists($cachePath)) { @touch($cachePath, $cachingTime); @chmod($cachePath, 0666); } // check if user ca write the cache file, otherwise use the system temp directory if (! is_writable($cachePath)) { $cachePath = sys_get_temp_dir() . $cacheFile; if (! file_exists($cachePath)) { @touch($cachePath, $cachingTime); @chmod($cachePath, 0666); } } if (function_exists('curl_init')) { try { // check if a cache file exists and its age inside the caching time range if (! file_exists($cachePath) || (time() - filemtime($cachePath)) > $cachingTime) { // init curl handler $curlHandler = curl_init(); // set curl options curl_setopt($curlHandler, CURLOPT_TIMEOUT, 3); curl_setopt($curlHandler, CURLOPT_RETURNTRANSFER, true); curl_setopt($curlHandler, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curlHandler, CURLOPT_URL, $apiUrl . '?v=' . $scriptVersion); curl_setopt($curlHandler, CURLOPT_USERPWD, $yourApiId . ':' . $yourAPIKey); if (defined('CURLOPT_IPRESOLVE') && defined('CURL_IPRESOLVE_V4')) { curl_setopt($curlHandler, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4); } // send call to api $json = curl_exec($curlHandler); if ($json === false) { // curl error $errorMessage = 'curl error (' . date('c') . ')'; if (file_exists($cachePath)) { $errorMessage .= PHP_EOL . PHP_EOL . 'last call: ' . date('c', filemtime($cachePath)); } $errorMessage .= PHP_EOL . PHP_EOL . curl_error($curlHandler); $errorMessage .= PHP_EOL . PHP_EOL . print_r(curl_version(), true); @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); $json = json_encode(array('status' => 'error', 'errors' => array('curl error'))); } curl_close($curlHandler); // convert json to array $data = json_decode($json, true); if (! is_array($data)) { // json format is wrong $errorMessage = 'json error (' . date('c') . ')' . PHP_EOL . PHP_EOL . $json; if (file_exists($cachePath)) { $errorMessage .= PHP_EOL . PHP_EOL . 'last call: ' . date('c', filemtime($cachePath)); } @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); $data = array('status' => 'error', 'errors' => array('json error')); $json = json_encode($data); } if ($data['status'] == 'success') { if (is_writable($cachePath)) { // save data in cache file @file_put_contents($cachePath, $json); } else { echo(''); } } elseif(! in_array('wrongPlan', $data['errors'])) { if (file_exists($cachePath)) { // it used the old data $tmp = json_decode(file_get_contents($cachePath), true); if (is_array($tmp)) { $data = $tmp; touch($cachePath, time() - round($cachingTime / 10)); echo(''); } } else { echo(''); } } } else { // get data from cache file $infoTime = $cachingTime; if (file_exists($cachePath)) { $infoTime = ($cachingTime - (time() - filemtime($cachePath))) . '/' . $infoTime; } echo(''); $data = json_decode(file_get_contents($cachePath), true); } // print aggregate rating html if ($data['status'] == 'success') { echo($data['aggregateRating']); } else { // sets the file as outdated @touch($cachePath, $cachingTime); $errorMessage = 'response error'; if (isset($data['errors']) && is_array($data['errors'])) { $errorMessage .= ' (' . implode(', ', $data['errors']) . ')'; } $errorMessage .= ' [v' . $scriptVersion . ']'; echo(''); } } catch (Exception $e) { $errorMessage = 'exception' . PHP_EOL . PHP_EOL . $e->__toString(); @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); echo(''); } } else { echo(''); } ?>