Bernd Wurst commited on 2025-11-09 07:03:45
Zeige 7 geänderte Dateien mit 63 Einfügungen und 282 Löschungen.
| ... | ... |
@@ -15,7 +15,9 @@ $kunde = []; |
| 15 | 15 |
if (isset($_SESSION['lname']) && !isset($_SESSION['kundennr'])) {
|
| 16 | 16 |
$kunde = suche_kunde($_SESSION['lname'], $_SESSION['phone']); |
| 17 | 17 |
if ($kunde) {
|
| 18 |
- $_SESSION['kundennr'] = $kunde['id']; |
|
| 18 |
+ $_SESSION['kundennr'] = $kunde['uuid']; |
|
| 19 |
+ $_SESSION['phonenumbers'] = $kunde['phone']; |
|
| 20 |
+ $_SESSION['emailaddrs'] = $kunde['email']; |
|
| 19 | 21 |
// Vorname in den Auftragsdaten |
| 20 | 22 |
if (!(isset($_SESSION['fname']) && $_SESSION['fname']) && isset($kunde['firstname']) && $kunde['firstname']) {
|
| 21 | 23 |
$_SESSION['fname'] = $kunde['firstname']; |
| ... | ... |
@@ -32,14 +34,14 @@ if (isset($_REQUEST['error'])) {
|
| 32 | 34 |
|
| 33 | 35 |
|
| 34 | 36 |
$headline = 'Adresse eingeben'; |
| 35 |
-if (isset($_SESSION['kundennr']) && $_SESSION['kundennr'] && kunde_hat_adresse($_SESSION['kundennr'])) {
|
|
| 37 |
+if (isset($_SESSION['kundennr']) && $_SESSION['kundennr'] && isset($kunde['missing']) && !in_array('city', $kunde['missing'])) {
|
|
| 36 | 38 |
$headline = 'Willkommen zurück!'; |
| 37 | 39 |
$content .= ' |
| 38 | 40 |
<p>Schön, wir kennen uns ja schon! Aus Datenschutzgründen wird Ihre Adresse hier nicht angezeigt. Sofern Sie Änderungen an Ihren Kundendaten wünschen, sprechen Sie uns bitte vor Ort darauf an.</p>'; |
| 39 | 41 |
$content .= ' |
| 40 | 42 |
<form class="form" action="save.php" method="post"> |
| 41 | 43 |
<input type="hidden" name="form" value="address">'; |
| 42 |
- if (!kunde_hat_email($_SESSION['kundennr'])) {
|
|
| 44 |
+ if (isset($kunde['missing']) && in_array('email', $kunde['missing'])) {
|
|
| 43 | 45 |
$content .= '<p><strong>Dürfen wir Sie per E-Mail benachrichtigen?</strong><br>Wir kennen bisher noch keine E-Mail-Adresse von Ihnen. Wenn Sie uns eine E-Mail-Adresse angeben, können wir Sie auch per E-Mail über die Fertigstellung Ihres Auftrags benachrichtigen.</p> |
| 44 | 46 |
<div class="form-group form-group-lg row mb-3"> |
| 45 | 47 |
<div class="col-sm-12"><input class="form-control" id="email" name="email" type="email" placeholder="E-Mail-Adresse" autocomplete="email"></div> |
| ... | ... |
@@ -70,12 +72,11 @@ if (isset($_SESSION['kundennr']) && $_SESSION['kundennr'] && kunde_hat_adresse($ |
| 70 | 72 |
"plz" => "PLZ", |
| 71 | 73 |
"ort" => "Ort"); |
| 72 | 74 |
$placeholders = $fields; |
| 73 |
- $contents = $kunde; |
|
| 75 |
+ $contents = []; |
|
| 74 | 76 |
foreach ($fields as $field => $label) {
|
| 75 |
- if (isset($kunde[$field]) && $kunde[$field] == 'bekannt') {
|
|
| 76 |
- $placeholders[$field] = $label.' wie beim letzten Besuch'; |
|
| 77 |
- $contents[$field] = ''; |
|
| 78 |
- } elseif (!isset($contents[$field])) {
|
|
| 77 |
+ if (isset($_SESSION[$field])) {
|
|
| 78 |
+ $contents[$field] = $_SESSION[$field]; |
|
| 79 |
+ } else {
|
|
| 79 | 80 |
$contents[$field] = ''; |
| 80 | 81 |
} |
| 81 | 82 |
|
| ... | ... |
@@ -18,6 +18,9 @@ $(function () {
|
| 18 | 18 |
$('#modal-frischsaft').on('shown.bs.modal', function () {
|
| 19 | 19 |
// Setzt den Fokus auf das Eingabefeld mit der ID 'frischsaft' |
| 20 | 20 |
$('#frischsaft').focus();
|
| 21 |
+ if ($('#frischsaft').val() != '') {
|
|
| 22 |
+ $('#submit').prop('disabled', false);
|
|
| 23 |
+ } |
|
| 21 | 24 |
}); |
| 22 | 25 |
|
| 23 | 26 |
$('#frischsaft').on('input', function () {
|
| ... | ... |
@@ -6,79 +6,6 @@ use GuzzleHttp\Psr7\Request; |
| 6 | 6 |
require_once("config.php");
|
| 7 | 7 |
$base_url = $config['api_url']; |
| 8 | 8 |
|
| 9 |
-$TOKEN_FILE = '../jwt-token.json'; |
|
| 10 |
-$jwt = [ |
|
| 11 |
- "token" => null, |
|
| 12 |
- "refresh_token" => null, |
|
| 13 |
- "exp" => time() |
|
| 14 |
-]; |
|
| 15 |
- |
|
| 16 |
-if (file_exists($TOKEN_FILE)) {
|
|
| 17 |
- $jwt = json_decode(file_get_contents($TOKEN_FILE), true); |
|
| 18 |
-} |
|
| 19 |
- |
|
| 20 |
-if ($jwt['refresh_token'] && $jwt['exp'] < time()+5) {
|
|
| 21 |
- // refresh token |
|
| 22 |
- $url = $base_url . 'token/refresh'; |
|
| 23 |
- $data = ["refresh_token" => $jwt['refresh_token']]; |
|
| 24 |
- $options = array( |
|
| 25 |
- 'http' => array( |
|
| 26 |
- 'method' => 'POST', |
|
| 27 |
- 'content' => json_encode( $data ), |
|
| 28 |
- 'header'=> "Content-Type: application/json\r\n" . |
|
| 29 |
- "Accept: application/json\r\n" |
|
| 30 |
- ) |
|
| 31 |
- ); |
|
| 32 |
- |
|
| 33 |
- $context = stream_context_create( $options ); |
|
| 34 |
- $result = @file_get_contents( $url, false, $context ); |
|
| 35 |
- if (!$result) {
|
|
| 36 |
- print('Es gibt gerade ein technisches Problem.');
|
|
| 37 |
- die(); |
|
| 38 |
- } |
|
| 39 |
- $response = json_decode( $result, true); |
|
| 40 |
- |
|
| 41 |
- $jwt['token'] = $response["token"]; |
|
| 42 |
- $jwt['refresh_token'] = $response["refresh_token"]; |
|
| 43 |
- $fields = explode('.', $jwt['token']);
|
|
| 44 |
- $data = json_decode(base64_decode($fields[1]), true); |
|
| 45 |
- $jwt['exp'] = $data['exp']; |
|
| 46 |
-} |
|
| 47 |
- |
|
| 48 |
-if (!$jwt['token'] || $jwt['exp'] < time()+5) {
|
|
| 49 |
- // get new token |
|
| 50 |
- # init API |
|
| 51 |
- $url = $base_url . 'login'; |
|
| 52 |
- $data = [ |
|
| 53 |
- "username" => $config['api_username'], |
|
| 54 |
- "password" => $config['api_password'] |
|
| 55 |
- ]; |
|
| 56 |
- $options = array( |
|
| 57 |
- 'http' => array( |
|
| 58 |
- 'method' => 'POST', |
|
| 59 |
- 'content' => json_encode( $data ), |
|
| 60 |
- 'header'=> "Content-Type: application/json\r\n" . |
|
| 61 |
- "Accept: application/json\r\n" |
|
| 62 |
- ) |
|
| 63 |
- ); |
|
| 64 |
- |
|
| 65 |
- $context = stream_context_create( $options ); |
|
| 66 |
- $result = @file_get_contents( $url, false, $context ); |
|
| 67 |
- if (!$result) {
|
|
| 68 |
- print('Es gibt gerade ein technisches Problem.');
|
|
| 69 |
- die(); |
|
| 70 |
- } |
|
| 71 |
- $response = json_decode( $result, true); |
|
| 72 |
- |
|
| 73 |
- $jwt['token'] = $response["token"]; |
|
| 74 |
- $jwt['refresh_token'] = $response["refresh_token"]; |
|
| 75 |
- $fields = explode('.', $jwt['token']);
|
|
| 76 |
- $data = json_decode(base64_decode($fields[1]), true); |
|
| 77 |
- $jwt['exp'] = $data['exp']; |
|
| 78 |
-} |
|
| 79 |
- |
|
| 80 |
-file_put_contents($TOKEN_FILE, json_encode($jwt)); |
|
| 81 |
- |
|
| 82 | 9 |
|
| 83 | 10 |
function api_call($method, $url, $content = []) |
| 84 | 11 |
{
|
| ... | ... |
@@ -89,8 +16,7 @@ function api_call($method, $url, $content = []) |
| 89 | 16 |
|
| 90 | 17 |
$headers = [ |
| 91 | 18 |
"Content-Type" => "application/json", |
| 92 |
- "Accept" => "application/json", |
|
| 93 |
- "Authorization" => "Bearer ".$jwt['token'] |
|
| 19 |
+ "Accept" => "application/json" |
|
| 94 | 20 |
]; |
| 95 | 21 |
$body = json_encode( $content ); |
| 96 | 22 |
$client = new Client(["http_errors" => false]); |
| ... | ... |
@@ -2,162 +2,25 @@ |
| 2 | 2 |
require_once('api.php');
|
| 3 | 3 |
|
| 4 | 4 |
|
| 5 |
-function phonetisch_reduzieren($word) |
|
| 6 |
-{
|
|
| 7 |
- $original = $word; |
|
| 8 |
- $word=strtolower($word); |
|
| 9 |
- $substitution=array( |
|
| 10 |
- "ä"=>"ae", |
|
| 11 |
- "ö"=>"oe", |
|
| 12 |
- "ü"=>"ue", |
|
| 13 |
- "ß"=>"ss", |
|
| 14 |
- "ph"=>"f", |
|
| 15 |
- "dr." => "", |
|
| 16 |
- "dr " => "", |
|
| 17 |
- "prof." => "", |
|
| 18 |
- "prof " => "" |
|
| 19 |
- ); |
|
| 20 |
- |
|
| 21 |
- foreach ($substitution as $letter=>$substitution) {
|
|
| 22 |
- $word=str_replace($letter,$substitution,$word); |
|
| 23 |
- } |
|
| 24 |
- $result = trim($word); |
|
| 25 |
- return $result; |
|
| 26 |
-} |
|
| 27 |
- |
|
| 28 |
- |
|
| 29 | 5 |
function suche_kunde($name, $number) {
|
| 30 | 6 |
global $content; |
| 31 | 7 |
if (! $number) {
|
| 32 | 8 |
return NULL; |
| 33 | 9 |
} |
| 34 |
- $ret = api_call('GET', 'customerContacts/search/'.format_number_api($number));
|
|
| 35 |
- if ($ret['status_code'] >= 400) {
|
|
| 36 |
- foreach ($ret['data']['validation_errors'] as $item) {
|
|
| 37 |
- $_SESSION['warning'][] = $item['message']; |
|
| 38 |
- } |
|
| 39 |
- return null; |
|
| 40 |
- } |
|
| 41 |
- $ret = $ret['data']; |
|
| 42 |
- if (count($ret) > 0) {
|
|
| 43 |
- $name = strtolower($name); |
|
| 44 |
- foreach ($ret as $item) {
|
|
| 45 |
- $cust = $item['customer']; |
|
| 46 |
- if ((isset($cust['lastname']) && phonetisch_reduzieren($name) == phonetisch_reduzieren($cust['lastname'])) || |
|
| 47 |
- (isset($cust['firstname']) && phonetisch_reduzieren($name) == phonetisch_reduzieren($cust['firstname'])) || |
|
| 48 |
- (isset($cust['firstname']) && isset($cust['lastname']) && phonetisch_reduzieren($name) == phonetisch_reduzieren($cust['firstname'] .' '. $cust['lastname'])) || |
|
| 49 |
- (isset($cust['firstname']) && isset($cust['lastname']) && phonetisch_reduzieren($name) == phonetisch_reduzieren($cust['lastname'] .' '. $cust['firstname'])) || |
|
| 50 |
- (isset($cust['firstname']) && isset($cust['lastname']) && phonetisch_reduzieren($name) == phonetisch_reduzieren($cust['lastname'] .', '. $cust['firstname'])) |
|
| 51 |
- ) {
|
|
| 52 |
- return $cust; |
|
| 53 |
- } |
|
| 54 |
- } |
|
| 55 |
- } |
|
| 56 |
- return null; |
|
| 57 |
- |
|
| 58 |
- /* |
|
| 59 |
- $kundenliste = json_decode(file_get_contents('../kunden.json'), TRUE);
|
|
| 60 |
- foreach ($kundenliste as $k) {
|
|
| 61 |
- foreach ($k['kontakt'] as $kon) {
|
|
| 62 |
- if ($kon['wert'] == $number) {
|
|
| 63 |
- return $k; |
|
| 64 |
- } |
|
| 65 |
- } |
|
| 66 |
- } |
|
| 67 |
- */ |
|
| 68 |
-} |
|
| 69 |
- |
|
| 70 |
-function kunde_erste_kontakte($customerno) {
|
|
| 71 |
- $ret = api_call('GET', 'customers/'.(int) $customerno);
|
|
| 72 |
- if ($ret['status_code'] >= 400) {
|
|
| 73 |
- // Fehler. Belästige den Kunden nicht damit |
|
| 74 |
- return []; |
|
| 75 |
- } |
|
| 76 |
- $ret = $ret['data']; |
|
| 77 |
- $kontakte = []; |
|
| 78 |
- if (isset($ret['phone']) && str_starts_with($ret['phone'], '+491')) {
|
|
| 79 |
- $kontakte['mobil'] = $ret['phone']; |
|
| 80 |
- } |
|
| 81 |
- if (isset($ret['email']) && $ret['email']) {
|
|
| 82 |
- $kontakte['email'] = $ret['email']; |
|
| 83 |
- } |
|
| 84 |
- foreach ($ret['contacts'] as $c) {
|
|
| 85 |
- if (!isset($kontakte['mobil']) && isset($c['phone']) && str_starts_with($c['phone'], '+491')) {
|
|
| 86 |
- $kontakte['mobil'] = $c['phone']; |
|
| 87 |
- } |
|
| 88 |
- if (!isset($kontakte['email']) && isset($c['email']) && $c['email']) {
|
|
| 89 |
- $kontakte['email'] = $c['email']; |
|
| 90 |
- } |
|
| 91 |
- } |
|
| 92 |
- return $kontakte; |
|
| 93 |
-} |
|
| 94 |
- |
|
| 95 |
- |
|
| 96 |
-function kunde_hat_adresse($customerno) {
|
|
| 97 |
- $ret = api_call('GET', 'customers/'.(int) $customerno);
|
|
| 98 |
- if ($ret['status_code'] >= 400) {
|
|
| 99 |
- // Fehler. Belästige den Kunden nicht damit |
|
| 100 |
- return true; |
|
| 101 |
- } |
|
| 102 |
- $ret = $ret['data']; |
|
| 103 |
- if (isset($ret['city']) && trim($ret['city']) != '') {
|
|
| 104 |
- return true; |
|
| 105 |
- } |
|
| 106 |
- return false; |
|
| 107 |
-} |
|
| 108 |
- |
|
| 109 |
- |
|
| 110 |
- |
|
| 111 |
-function kunde_hat_email($customerno) {
|
|
| 112 |
- $ret = api_call('GET', 'customers/'.(int) $customerno);
|
|
| 113 |
- if ($ret['status_code'] >= 400) {
|
|
| 114 |
- // Fehler. Belästige den Kunden nicht damit |
|
| 115 |
- return true; |
|
| 116 |
- } |
|
| 117 |
- $ret = $ret['data']; |
|
| 118 |
- if (isset($ret['email']) && $ret['email']) {
|
|
| 119 |
- return true; |
|
| 120 |
- } |
|
| 121 |
- foreach ($ret['contacts'] as $c) {
|
|
| 122 |
- if (isset($c['email']) && $c['email']) {
|
|
| 123 |
- return true; |
|
| 124 |
- } |
|
| 125 |
- } |
|
| 126 |
- return false; |
|
| 127 |
-} |
|
| 128 |
- |
|
| 129 |
- |
|
| 130 |
- |
|
| 131 |
-function update_kunde($customerno, $daten) {
|
|
| 132 |
- $ret = api_call('GET', 'customers/'.(int) $customerno);
|
|
| 133 |
- if ($ret['status_code'] >= 400) {
|
|
| 134 |
- // Fehler. Erstelle Neukunde |
|
| 135 |
- erstelle_kunde($daten); |
|
| 136 |
- return; |
|
| 137 |
- } |
|
| 138 |
- $customer = $ret['data']; |
|
| 139 |
- |
|
| 140 |
- foreach ($daten as $field => $value) {
|
|
| 141 |
- if ($value) {
|
|
| 142 |
- $customer[$field] = $value; |
|
| 143 |
- } |
|
| 144 |
- } |
|
| 10 |
+ $searchdata = array( |
|
| 11 |
+ "name" => $name, |
|
| 12 |
+ "phone" => $number |
|
| 13 |
+ ); |
|
| 145 | 14 |
|
| 146 |
- $filename = '../data/'.date('Y').'/'.time().'-kunde-'.$customerno.'.json';
|
|
| 147 |
- @file_put_contents($filename, json_encode($customer)); |
|
| 148 |
- $ret = api_call('PUT', 'customers/'.(int) $customerno, $customer);
|
|
| 149 |
- if ($ret['status_code'] >= 400) {
|
|
| 150 |
- foreach ($ret['data']['validation_errors'] as $item) {
|
|
| 151 |
- $_SESSION['warnings'][] = $item['key'].': '.$item['message']; |
|
| 152 |
- } |
|
| 15 |
+ $ret = api_call('POST', 'anonymous/identify', $searchdata);
|
|
| 16 |
+ if ($ret['status_code'] == 404) {
|
|
| 153 | 17 |
return null; |
| 154 | 18 |
} |
| 155 |
- $ret = $ret['data']; |
|
| 156 |
- if (isset($ret['id'])) {
|
|
| 157 |
- return $ret['id']; |
|
| 158 |
- } else {
|
|
| 19 |
+ if ($ret['status_code'] != 200) {
|
|
| 20 |
+ // Fehler |
|
| 159 | 21 |
return null; |
| 160 | 22 |
} |
| 23 |
+ return $ret["data"]; |
|
| 161 | 24 |
} |
| 162 | 25 |
|
| 163 | 26 |
|
| ... | ... |
@@ -173,7 +36,7 @@ function erstelle_kunde($daten) {
|
| 173 | 36 |
"contacts" => []]; |
| 174 | 37 |
$filename = '../data/'.date('Y').'/'.time().'-neukunde.json';
|
| 175 | 38 |
@file_put_contents($filename, json_encode($json)); |
| 176 |
- $ret = api_call('POST', 'customers', $json);
|
|
| 39 |
+ $ret = api_call('POST', 'anonymous/newcustomer', $json);
|
|
| 177 | 40 |
if ($ret['status_code'] >= 400) {
|
| 178 | 41 |
foreach ($ret['data']['validation_errors'] as $item) {
|
| 179 | 42 |
$_SESSION['warnings'][] = $item['key'].': '.$item['message']; |
| ... | ... |
@@ -181,8 +44,8 @@ function erstelle_kunde($daten) {
|
| 181 | 44 |
return null; |
| 182 | 45 |
} |
| 183 | 46 |
$ret = $ret['data']; |
| 184 |
- if (isset($ret['id'])) {
|
|
| 185 |
- return $ret['id']; |
|
| 47 |
+ if (isset($ret['uuid'])) {
|
|
| 48 |
+ return $ret['uuid']; |
|
| 186 | 49 |
} else {
|
| 187 | 50 |
return null; |
| 188 | 51 |
} |
| ... | ... |
@@ -9,7 +9,7 @@ function namen_korrigieren($name) {
|
| 9 | 9 |
// Wenn CAPS-Lock an war, korrigieren wir das |
| 10 | 10 |
// Wir entfernen nicht-alphab. Zeichen, um nur die Buchstaben zu prüfen. |
| 11 | 11 |
// Wir verwenden mb_strtoupper() und mb_strtolower() für Multibyte-Sicherheit. |
| 12 |
- $nur_buchstaben = preg_replace('/[^a-zA-ZäöüÄÖÜß]/', '', $name);
|
|
| 12 |
+ $nur_buchstaben = preg_replace('/[^a-zA-ZÄäÖöÜüßÁáÀàÂâÃãÅåÇçÉéÈèÊêëÍíÌìÎîÏïÑñÓóÒòÔôÕõØøŒœŚśŞşÚúÙùÛûÝýŸÿŽž]/', '', $name);
|
|
| 13 | 13 |
|
| 14 | 14 |
if (!empty($nur_buchstaben) && $nur_buchstaben === mb_strtoupper($nur_buchstaben, 'UTF-8')) {
|
| 15 | 15 |
// Wenn alle Buchstaben Großbuchstaben sind (Caps-Lock aktiv), |
| ... | ... |
@@ -17,35 +17,26 @@ $content = '<p>Wie möchten Sie bevorzugt kontaktiert werden, wenn Ihr Auftrag e |
| 17 | 17 |
<div class="row mb-1 g-3">'; |
| 18 | 18 |
|
| 19 | 19 |
$num = 0; |
| 20 |
-$kontakte = kunde_erste_kontakte($_SESSION['kundennr']); |
|
| 20 |
+$phonenumbers = array_filter($_SESSION['phonenumbers'], function($v) {
|
|
| 21 |
+ return str_starts_with($v, '+491'); |
|
| 22 |
+}); |
|
| 23 |
+$emailaddrs = $_SESSION['emailaddrs']; |
|
| 21 | 24 |
|
| 22 |
-if (isset($kontakte['mobil'])) {
|
|
| 23 |
- $num+=2; |
|
| 24 |
-} |
|
| 25 |
-if (isset($kontakte['email'])) {
|
|
| 26 |
- $num++; |
|
| 27 |
-} |
|
| 25 |
+$num = count($phonenumbers) * 2 + count($emailaddrs); |
|
| 28 | 26 |
|
| 29 | 27 |
if ($num < 2) {
|
| 30 | 28 |
// Nichts zum aussuchen! |
| 31 | 29 |
header('Location: gitterbox.php');
|
| 32 | 30 |
} |
| 33 | 31 |
|
| 34 |
-if (isset($kontakte['mobil'])) {
|
|
| 35 |
- $phone = format_number_national($_SESSION['phone']); |
|
| 36 |
- if (!str_starts_with($phone, '01')) {
|
|
| 37 |
- $phone = format_number_national($kontakte['mobil']); |
|
| 38 |
- } |
|
| 32 |
+foreach ($phonenumbers as $phone) {
|
|
| 33 |
+ $phone = format_number_national($phone); |
|
| 39 | 34 |
$content .= ' |
| 40 | 35 |
<div class="col-sm-6"><a href="#" class="btn btn-lg btn-light w-100" id="btn-whatsapp">Whatsapp an<br> '.$phone.'</a></div>'; |
| 41 | 36 |
$content .= ' |
| 42 | 37 |
<div class="col-sm-6"><a href="#" class="btn btn-lg btn-light w-100" id="btn-sms">SMS an<br> '.$phone.'</a></div>'; |
| 43 | 38 |
} |
| 44 |
-if (isset($kontakte['email'])) {
|
|
| 45 |
- $email = $kontakte['email']; |
|
| 46 |
- if ($_SESSION['email'] != $kontakte['email']) {
|
|
| 47 |
- $email = $kontakte['email']; |
|
| 48 |
- } |
|
| 39 |
+foreach ($emailaddrs as $email) {
|
|
| 49 | 40 |
$content .= ' |
| 50 | 41 |
</div> |
| 51 | 42 |
<div class="row"> |
| ... | ... |
@@ -90,7 +90,7 @@ if (isset($_REQUEST['form'])) {
|
| 90 | 90 |
if (isset($_REQUEST['phone']) && trim($_REQUEST['phone']) != '') {
|
| 91 | 91 |
$number = trim($_REQUEST['phone']); |
| 92 | 92 |
} |
| 93 |
- if (substr($number, 0, 1) != 0 && substr($number, 0, 3) != '+49') {
|
|
| 93 |
+ if (substr($number, 0, 1) != "0" && substr($number, 0, 3) != '+49') {
|
|
| 94 | 94 |
$number = '07192'.$number; |
| 95 | 95 |
} |
| 96 | 96 |
|
| ... | ... |
@@ -133,12 +133,18 @@ if (isset($_REQUEST['form'])) {
|
| 133 | 133 |
} |
| 134 | 134 |
if (!isset($_SESSION['kundennr']) || !$_SESSION['kundennr']) {
|
| 135 | 135 |
$_SESSION['kundennr'] = erstelle_kunde($_SESSION); |
| 136 |
+ $_SESSION['phonenumbers'] = [$_SESSION['phone']]; |
|
| 137 |
+ $_SESSION['emailaddrs'] = []; |
|
| 138 |
+ if ($_SESSION['email'] != '') {
|
|
| 139 |
+ $_SESSION['emailaddrs'][] = $_SESSION['email']; |
|
| 140 |
+ } |
|
| 136 | 141 |
if (!$_SESSION['kundennr']) {
|
| 137 | 142 |
showError(); |
| 138 | 143 |
} |
| 139 | 144 |
} else {
|
| 140 | 145 |
if (isset($_SESSION['email']) && $_SESSION['email']) {
|
| 141 |
- update_kunde($_SESSION['kundennr'], ['email' => $_SESSION['email']]); |
|
| 146 |
+ // Not implemented |
|
| 147 |
+ //update_kunde($_SESSION['kundennr'], ['email' => $_SESSION['email']]); |
|
| 142 | 148 |
} |
| 143 | 149 |
} |
| 144 | 150 |
|
| ... | ... |
@@ -269,18 +275,11 @@ if (isset($_SESSION['neue'])) {
|
| 269 | 275 |
// customer |
| 270 | 276 |
if (isset($_SESSION['kundennr'])) {
|
| 271 | 277 |
$auftrag['customer'] = $_SESSION['kundennr']; |
| 272 |
- $auftrag['notificationName'] = $_SESSION['name']; |
|
| 273 |
- $auftrag['notificationPhone'] = $_SESSION['phone']; |
|
| 274 |
- $auftrag['notificationEmail'] = isset($_SESSION['email']) ? $_SESSION['email'] : null; |
|
| 278 |
+ $auftrag['name'] = $_SESSION['name']; |
|
| 279 |
+ $auftrag['phone'] = $_SESSION['phone']; |
|
| 280 |
+ $auftrag['email'] = isset($_SESSION['email']) ? $_SESSION['email'] : null; |
|
| 275 | 281 |
$auftrag['notificationPreference'] = $_SESSION['notificationPreference']; |
| 276 |
- } |
|
| 277 |
- // fruitType |
|
| 278 |
- $ret = api_call('GET', 'fruitTypes');
|
|
| 279 |
- $ret = $ret['data']; |
|
| 280 |
- foreach ($ret as $fruit) {
|
|
| 281 |
- if ($_SESSION['obstart'] == $fruit['label']) {
|
|
| 282 |
- $auftrag['fruitType'] = $fruit['id']; |
|
| 283 |
- } |
|
| 282 |
+ $auftrag['fruitTypeName'] = $_SESSION['obstart']; |
|
| 284 | 283 |
} |
| 285 | 284 |
// containers |
| 286 | 285 |
if (isset($_SESSION['lieferart']) && $_SESSION['lieferart'] == 'gitterbox' && isset($_SESSION['gbcount']) && $_SESSION['gbcount'] > 0) {
|
| ... | ... |
@@ -298,36 +297,34 @@ if (isset($_SESSION['neue'])) {
|
| 298 | 297 |
} |
| 299 | 298 |
// usedPackages |
| 300 | 299 |
if (isset($_SESSION['kartons'])) {
|
| 301 |
- $auftrag['usedPackages'] = (bool) $_SESSION['kartons']; |
|
| 300 |
+ $auftrag['haveUsed'] = (bool) $_SESSION['kartons']; |
|
| 302 | 301 |
} |
| 303 | 302 |
|
| 304 | 303 |
// plannedPackagings |
| 305 | 304 |
if (isset($_SESSION['neue'])) {
|
| 305 |
+ $plan = []; |
|
| 306 | 306 |
if ($_SESSION['neue'] == 'sonstiges') {
|
| 307 | 307 |
$auftrag['notes'] = (isset($_SESSION['anmerkungen']) ? $_SESSION['anmerkungen'] . "\n\n" : '') . $_SESSION["sonstiges"]; |
| 308 |
+ } else {
|
|
| 309 |
+ $plan[] = [ |
|
| 310 |
+ "packageType" => $_SESSION['neue'], |
|
| 311 |
+ "wish" => "rest" |
|
| 312 |
+ ]; |
|
| 308 | 313 |
} |
| 309 |
- $plan = []; |
|
| 310 |
- $ret = api_call('GET', 'packageTypes');
|
|
| 311 |
- $ret = $ret['data']; |
|
| 312 |
- foreach ($ret as $pt) {
|
|
| 313 |
- if ($pt['label'] == $_SESSION['neue']) {
|
|
| 314 |
- $plan[] = [ "packageType" => $pt['id'], |
|
| 315 |
- "rest" => true ]; |
|
| 316 |
- } |
|
| 317 |
- if ($pt['label'] == 'frischsaft' && isset($_SESSION['frischsaft']) && $_SESSION['frischsaft'] > 0) {
|
|
| 318 |
- $plan[] = [ "packageType" => $pt['id'], |
|
| 319 |
- "count" => $_SESSION['frischsaft']]; |
|
| 320 |
- } |
|
| 314 |
+ if (isset($_SESSION['frischsaft']) && $_SESSION['frischsaft'] > 0) {
|
|
| 315 |
+ $plan[] = [ |
|
| 316 |
+ "packageType" => "frischsaft", |
|
| 317 |
+ "wish" => $_SESSION['frischsaft'] |
|
| 318 |
+ ]; |
|
| 321 | 319 |
} |
| 322 |
- $auftrag['plannedPackagings'] = $plan; |
|
| 320 |
+ |
|
| 321 |
+ $auftrag['wishes'] = $plan; |
|
| 323 | 322 |
|
| 324 | 323 |
} |
| 325 | 324 |
|
| 326 | 325 |
|
| 327 | 326 |
// notes |
| 328 |
- if (!isset($auftrag['notes'])) {
|
|
| 329 | 327 |
$auftrag['notes'] = ''; |
| 330 |
- } |
|
| 331 | 328 |
if (isset($_SESSION['anmerkungen']) && $_SESSION['anmerkungen'] != '') {
|
| 332 | 329 |
$auftrag['notes'] = $_SESSION['anmerkungen'] . (isset($_SESSION["sonstiges"]) ? "\n\n" . $_SESSION["sonstiges"] : ''); |
| 333 | 330 |
} |
| ... | ... |
@@ -346,10 +343,10 @@ if (isset($_SESSION['neue'])) {
|
| 346 | 343 |
@file_put_contents($filename, json_encode($auftrag)); |
| 347 | 344 |
if (isset($_SESSION['orderid']) && $_SESSION['orderid']) {
|
| 348 | 345 |
// update |
| 349 |
- $ret = api_call('PUT', 'orders/'.$_SESSION['orderid'], $auftrag);
|
|
| 346 |
+ $ret = api_call('PUT', 'anonymous/updateorder/'.$_SESSION['orderid'], $auftrag);
|
|
| 350 | 347 |
} else {
|
| 351 | 348 |
// neu |
| 352 |
- $ret = api_call('POST', 'orders', $auftrag);
|
|
| 349 |
+ $ret = api_call('POST', 'anonymous/neworder', $auftrag);
|
|
| 353 | 350 |
} |
| 354 | 351 |
if ($ret['status_code'] >= 400) {
|
| 355 | 352 |
foreach ($ret['data']['validation_errors'] as $item) {
|
| ... | ... |
@@ -358,7 +355,7 @@ if (isset($_SESSION['neue'])) {
|
| 358 | 355 |
return showError(); |
| 359 | 356 |
} |
| 360 | 357 |
$ret = $ret['data']; |
| 361 |
- $_SESSION['orderid'] = $ret['id']; |
|
| 358 |
+ $_SESSION['orderid'] = $ret['uuid']; |
|
| 362 | 359 |
|
| 363 | 360 |
if (!isset($ret['id'])) {
|
| 364 | 361 |
echo "Es gabe einen Fehler beim Abspeichern des Auftrags. Wir bitten dies zu entschuldigen und einen Papierauftrag auszufüllen."; |
| 365 | 362 |