Order (multiple voicenumbers) and Contract changes
This commit is contained in:
@@ -931,7 +931,7 @@ class OrderController extends mfBaseController {
|
||||
|
||||
$ext_products = false;
|
||||
$int_products = false;
|
||||
|
||||
|
||||
$ext_products_nbe = 0;
|
||||
|
||||
//var_dump($r->products);exit;
|
||||
@@ -964,8 +964,8 @@ class OrderController extends mfBaseController {
|
||||
$product_data['amount'] = (!empty($p['amount'])) ? $p['amount'] : 1;
|
||||
$product_data["pos"] = ($p["pos"]) ? $p['pos'] : $order->getNewPos();
|
||||
$product_data["description"] = $p["description"];
|
||||
$product_data["price"] = $p["price"] ? Layout::commaToDot($p["price"]) : 0;
|
||||
$product_data["price_setup"] = $p["price_setup"] ? Layout::commaToDot($p["price_setup"]) : 0;
|
||||
$product_data["price"] = trim($p["price"]) ? Layout::commaToDot(trim($p["price"])) : 0;
|
||||
$product_data["price_setup"] = trim($p["price_setup"]) ? Layout::commaToDot(trim($p["price_setup"])) : 0;
|
||||
|
||||
if($this->me->is("Admin") && $p["price_nne"]) {
|
||||
$product_data["price_nne"] = Layout::commaToDot($p["price_nne"]);
|
||||
@@ -1003,29 +1003,44 @@ class OrderController extends mfBaseController {
|
||||
}
|
||||
|
||||
if(array_key_exists(TT_ATTRIB_VOICENUMBER_REQUIRED_NAME, $prod->attributes) && $prod->attributes[TT_ATTRIB_VOICENUMBER_REQUIRED_NAME]->value == 1) {
|
||||
$voicenumbers = [];
|
||||
//var_dump($p);exit;
|
||||
//if($p["voicenumber_custom"]);
|
||||
|
||||
if(array_key_exists("voicenumber", $p) && $p["voicenumber"]) {
|
||||
$number = $p["voicenumber"];
|
||||
}
|
||||
if(array_key_exists("voicenumber_custom", $p) && $p["voicenumber_custom"]) {
|
||||
$number = $p["voicenumber_custom"];
|
||||
}
|
||||
|
||||
$number = preg_replace('/\D/', '', trim($number));
|
||||
if(substr($number, 0, 2) == "00") $number = "+".substr($number, 2);
|
||||
if(preg_match('/^0[^0]/', $number)) {
|
||||
$number = "+43".substr($number, 1);
|
||||
}
|
||||
if(substr($number, 0, 1) != "+") $number = "+$number";
|
||||
//if($number && !in_array($number, $voicenumbers)) $voicenumbers[] = $number;
|
||||
|
||||
$voicenumbers[] = $number;
|
||||
|
||||
$product_data['voicenumber'] = json_encode($voicenumbers);
|
||||
//var_dump($product_data);exit;
|
||||
$voicenumbers = [];
|
||||
//var_dump($p);exit;
|
||||
//if($p["voicenumber_custom"]);
|
||||
|
||||
$numbers = [];
|
||||
if(array_key_exists("voicenumber", $p) && is_array($p["voicenumber"]) && count($p["voicenumber"])) {
|
||||
$numbers = $p["voicenumber"];
|
||||
}
|
||||
if(array_key_exists("voicenumber_custom", $p) && is_array($p["voicenumber_custom"]) && count($p["voicenumber_custom"])) {
|
||||
$numbers = array_merge($numbers, $p["voicenumber_custom"]);
|
||||
}
|
||||
|
||||
foreach($numbers as $number) {
|
||||
if(!$number) continue;
|
||||
|
||||
$number = preg_replace('/\D/', '', trim($number));
|
||||
if(substr($number, 0, 2) == "00") $number = "+" . substr($number, 2);
|
||||
if(preg_match('/^0[^0]/', $number)) {
|
||||
$number = "+43" . substr($number, 1);
|
||||
}
|
||||
if(substr($number, 0, 1) != "+") $number = "+$number";
|
||||
//if($number && !in_array($number, $voicenumbers)) $voicenumbers[] = $number;
|
||||
|
||||
$voicenumbers[] = $number;
|
||||
}
|
||||
|
||||
if($voicenumbers) {
|
||||
$product_data['voicenumber'] = json_encode($voicenumbers);
|
||||
if($p["voiceplan_id"]) {
|
||||
$product_data["voiceplan_id"] = $p["voiceplan_id"];
|
||||
} else {
|
||||
$this->layout()->setFlash("Bitte Sprachtarif bei allen Rufnummern eintragen", "error");
|
||||
}
|
||||
//var_dump($product_data);exit;
|
||||
}
|
||||
|
||||
|
||||
//var_dump($product_data);exit;
|
||||
} else {
|
||||
$product_data['voicenumber'] = null;
|
||||
}
|
||||
@@ -1038,7 +1053,8 @@ class OrderController extends mfBaseController {
|
||||
$product = new OrderProduct($orderproduct_id);
|
||||
$product->update($product_data);
|
||||
}
|
||||
|
||||
|
||||
//var_dump($product);
|
||||
if(!$product->save()) {
|
||||
$this->log->warn("Unable to save OrderProduct:".print_r($product, true));
|
||||
}
|
||||
@@ -1052,6 +1068,7 @@ class OrderController extends mfBaseController {
|
||||
$int_products = true;
|
||||
}
|
||||
}
|
||||
//exit;
|
||||
|
||||
|
||||
if(!$ext_products && !$owner->customer_number) {
|
||||
|
||||
Reference in New Issue
Block a user