parse($number, 'DE'); } catch (Exception $e) { return NULL; } if ($phoneNumberUtil->isValidNumber($phoneNumber)) { return $phoneNumberUtil->format($phoneNumber, \libphonenumber\PhoneNumberFormat::NATIONAL); } return NULL; } $number = format_number($number); $_SESSION['name'] = htmlspecialchars($name); $_SESSION['phone'] = htmlspecialchars($number); if (isset($_REQUEST['save']) && $_REQUEST['save'] == 'yes' && $_SESSION['mode'] != 'local') { setcookie('NAME', $name, time() + 24*3600*500, ""); setcookie('NUMBER', $number, time() + 24*3600*500, ""); } $redirect = 'address.php'; break; case 'address': $fields = array("firma", "fname", "lname", "address", "zip", "city"); foreach ($fields as $f) { if (isset($_REQUEST[$f]) && trim($_REQUEST[$f]) != '') { $_SESSION[$f] = trim(htmlspecialchars($_REQUEST[$f])); } else { if (! isset($_SESSION[$f])) { $_SESSION[$f] = ''; } } } if ($_SESSION['lname'] == '') { $redirect = 'address.php?error'; break; } if ($_SESSION['mode'] == 'local') { $_SESSION['angeliefert'] = true; $redirect = 'gitterbox.php'; } elseif (isset($_SESSION['angeliefert'])) { if ($_SESSION['angeliefert']) { $redirect = 'gitterbox.php'; } else { $redirect = 'gitterbox_spaeter.php'; } } else { $redirect = 'anlieferung.php'; } break; case 'anlieferung': if (isset($_REQUEST['schonda'])) { $_SESSION['angeliefert'] = true; $redirect = 'gitterbox.php'; } if (isset($_REQUEST['kommtnoch'])) { $_SESSION['angeliefert'] = false; $redirect = 'gitterbox_spaeter.php'; } break; case 'gitterbox': if (isset($_REQUEST['lieferart'])) { if ($_REQUEST['lieferart'] == 'gitterbox') { $_SESSION['lieferart'] = 'gitterbox'; $_SESSION['gbcount'] = htmlspecialchars($_REQUEST['gbcount']); } if ($_REQUEST['lieferart'] == 'anhaenger') { $_SESSION['lieferart'] = 'anhaenger'; $_SESSION['kennz'] = htmlspecialchars($_REQUEST['kennz']); if ($_SESSION['angeliefert'] === false && ! $_SESSION['kennz']) { $redirect = 'gitterbox_spaeter.php?error'; break; } } } $redirect = 'gebrauchte.php'; break; case 'gebrauchte': if (isset($_REQUEST['kartonsja'])) { $_SESSION['kartons'] = true; } if (isset($_REQUEST['kartonsnein'])) { $_SESSION['kartons'] = false; } $redirect = 'auftrag.php'; break; case 'auftrag': if (isset($_REQUEST['5er'])) { $_SESSION['neue'] = '5er'; } if (isset($_REQUEST['10er'])) { $_SESSION['neue'] = '10er'; } if (isset($_REQUEST['submit']) && isset($_REQUEST['sonstiges']) && $_REQUEST['sonstiges'] != '') { $_SESSION['neue'] = 'sonstiges'; $_SESSION['sonstiges'] = htmlspecialchars($_REQUEST['sonstiges']); } $redirect = 'frischsaft.php'; break; case 'frischsaft': if (isset($_REQUEST['frischsaftnein'])) { $_SESSION['frischsaft'] = 0; } elseif (isset($_REQUEST['frischsaft'])) { $_SESSION['frischsaft'] = htmlspecialchars($_REQUEST['frischsaft']); } $redirect = 'summary.php'; break; case 'summary': if (isset($_REQUEST['anmerkungen'])) { $_SESSION['anmerkungen'] = htmlspecialchars($_REQUEST['anmerkungen']); } $_SESSION['complete'] = true; $redirect = 'finish.php?handle='.$_SESSION['handle']; break; } } $data = array("handle" => $_SESSION['handle']); $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => "https://api.mosterei-wurst.de/api/v1/auftrag/lesen", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_HTTPHEADER => array("Content-Type: application/json"), CURLOPT_CUSTOMREQUEST => "POST")); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data)); $response = curl_exec($curl); $err = curl_error($curl); $ret = @json_decode($response, true); if (!isset($ret['auftrag'])) { echo 'Es gibt ein Problem beim Speichern der Auftragsdaten. Bitte wenden Sie sich persönlich an uns oder verwenden Sie einen Papierauftrag.'; die(); } $auftrag = $ret['auftrag']; if (isset($_SESSION['kundennr'])) { $auftrag['kundennr'] = $_SESSION['kundennr']; } $addrfields = array("kundennr" => "kundennr", "firma" => "firma", "fname" => "vorname", "lname" => "nachname", "address" => "adresse", "zip" => "plz", "city" => "ort", "phone" => "telefon"); foreach ($addrfields as $sesskey => $apikey) { if (isset($_SESSION[$sesskey]) && $_SESSION[$sesskey] != 'bekannt') { $auftrag['kundendaten'][$apikey] = $_SESSION[$sesskey]; } } if (count($auftrag['bestellung']) > 1) { echo 'Diese Bestellung wurde auf anderem Wege an uns übermittelt und kann mit dieser Oberfläche leider nicht verändert werden'; die(); } if (isset($_SESSION['lieferart']) && $_SESSION['lieferart'] == 'gitterbox' && isset($_SESSION['gbcount']) && $_SESSION['gbcount'] > 0) { if ($_SESSION['gbcount'] < count($auftrag['bestellung'][0]["gitterbox"])) { $auftrag['bestellung'][0]["gitterbox"] = array(); } while (count($auftrag['bestellung'][0]["gitterbox"]) < $_SESSION['gbcount']) { $auftrag['bestellung'][0]["gitterbox"][] = array("id" => null); } } else { $auftrag['bestellung'][0]["gitterbox"] = array(); } if (isset($_SESSION['lieferart']) && $_SESSION['lieferart'] == 'anhaenger') { $auftrag['bestellung'][0]['anhaenger'] = array(array("kennz" => null)); if (isset($_SESSION['kennz']) && $_SESSION['kennz'] != '') { $auftrag['bestellung'][0]['anhaenger'][0]["kennz"] = $_SESSION['kennz']; } } if (isset($_SESSION['kartons']) && $_SESSION['kartons']) { $auftrag['bestellung'][0]['gebrauchte'] = true; } else { $auftrag['bestellung'][0]['gebrauchte'] = false; } $auftrag['bestellung'][0]['neue'] = array(); if (isset($_SESSION['neue']) && $_SESSION['neue'] == 'sonstiges') { $auftrag['bestellung'][0]['neue']["sonstiges"] = $_SESSION["sonstiges"]; } elseif (isset($_SESSION['neue']) && $_SESSION['neue'] == '10er') { $auftrag['bestellung'][0]['neue']["10er"] = "100%"; } else { $auftrag['bestellung'][0]['neue']["5er"] = "100%"; } if (isset($_SESSION['frischsaft']) && $_SESSION['frischsaft'] > 0) { $auftrag['bestellung'][0]['frischsaft'] = $_SESSION['frischsaft']; } else { $auftrag['bestellung'][0]['frischsaft'] = null; } if (isset($_SESSION['anmerkungen']) && $_SESSION['anmerkungen'] != '') { $auftrag['bestellung'][0]['anmerkungen'] = $_SESSION['anmerkungen']; } if (isset($_SESSION['complete']) && $_SESSION['complete'] == true) { $auftrag['status'] = 'bestellt'; } curl_setopt($curl, CURLOPT_URL, "https://api.mosterei-wurst.de/api/v1/auftrag/anlieferung"); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($auftrag)); $response = curl_exec($curl); $err = curl_error($curl); $ret = @json_decode($response, true); if ($ret['status'] == 'error') { echo 'Es gibt ein Problem beim Speichern des Auftrags. Bitte verwenden Sie diesmal einen Papier-Auftrag.'; die(); } header('Location: '.$redirect);