Merge branch 'fronkdev' into 'master'

Fixed voicenumbers in orders without voicenumbers

See merge request fronk/thetool!569
This commit is contained in:
Frank Schubert
2024-08-06 18:30:00 +00:00
2 changed files with 57 additions and 3 deletions

View File

@@ -712,6 +712,30 @@
</div>
<?php $num++; endforeach; ?>
<div class="row" id="voicenumber-<?=$i?>-line-<?=$num?>">
<div class="col-4" id="voicenumberblock-<?=$i?>-line-<?=$num?>">
<label class="form-label" for="voicenumberblock-<?=$i?>-<?=$num?>">Nummernblock *</label>
<select name="voicenumberblock_id" id="voicenumberblock_id-<?=$i?>-<?=$num?>" class="form-control select2" onchange="loadVoicenumbers(<?=$i?>, <?=$num?>)" data-i="<?=$i?>" data-num="<?=$num?>"">
<option></option>
<option value="portin">Rufnummernportierung</option>
<?php foreach(VoicenumberblockModel::getAll() as $block): ?>
<option value="<?=$block->id?>">+<?=$block->countrycode?> <?=$block->areacode?> (<?=$block->name?>)</option>
<?php endforeach; ?>
</select>
</div>
<div class="col-4 hidden" id="voicenumber-select-<?=$i?>-line-<?=$num?>">
<label class="form-label" for="voicenumber-<?=$i?>-<?=$num?>">Rufnummer wählen *</label>
<select name="products[<?=$i?>][voicenumber][<?=$num?>]" id="voicenumber-<?=$i?>-<?=$num?>" class="form-control select2">
</select>
</div>
<div class="col-4 hidden" id="voicenumber-custom-<?=$i?>-line-<?=$num?>">
<label class="form-label" for="voicenumber_custom-<?=$i?>-<?=$num?>">Rufnummer eingeben *</label>
<input type="text" class="form-control" name="products[<?=$i?>][voicenumber_custom][<?=$num?>]" id="voicenumber_custom-<?=$i?>-<?=$num?>" value="" placeholder="Gesamte Rufnummer (+43 123 456 78 )" />
</div>
</div>
</div>
</div>
@@ -928,7 +952,7 @@
<h4>Dokumente</h4>
<div class="card">
<div class="card" id="order-files">
<div class="card-body">
<?php if(!$order->id): ?>
<i class="text-pink">Verfügbar nach speichern.</i>
@@ -994,8 +1018,18 @@
<small>Erlaubte Dateiendungen: <?=MFUPLOAD_ALLOWED_EXTENSIONS_STR?></small>
</div>
</div>
<div class="form-group row" id="upload-button">
<label class="col-lg-2 col-form-label"></label>
<div class="col-lg-10">
<button type="button" class="btn btn-primary">Hochladen</button>
</div>
</div>
<?php endif; ?>
</div>
</div>
@@ -1052,6 +1086,8 @@
<script type="text/javascript">
$("#upload-button").hide();
$(".select2").select2({
allowClear: true,
placeholder: ""
@@ -1700,14 +1736,30 @@
<?php endif; ?>
<?php if($order->finish_date && is_array($order->contracts) && count($order->contracts)): ?>
$("input").prop("disabled", true);
$("input").prop("disabled", true);
$("input[type=text]").prop("readonly", true);
$("select").prop("disabled", true);
$("textarea").prop("disabled", true);
$("button").prop("disabled", true);
//$("#files-table a.edit-button").removeAttr("href");
//$("#files-table a.delete-button").removeAttr("href").removeAttr("onclick");
$("#files-table a.delete-button").removeAttr("href").removeAttr("onclick");
$("#contract-readonly-notice").show();
$("#order-files input").prop("disabled", false);
$("#order-files input[type=text]").prop("readonly", false);
$("#order-files textarea").prop("disabled", false);
$("#order-files button").prop("disabled", false);
$("#order-files select").prop("disabled", false);
//$("#orderForm").detach();
/*$("#upload-button").click(() => {
$("#orderForm").wrap('<form method="post" enctype="formdata/');
});*/
$("#upload-button").show();
<?php endif; ?>
$('.product-container input').each(function() {

View File

@@ -57,12 +57,14 @@ class OrderProduct extends mfBaseModel {
if(!$this->voicenumber) return [];
$json = json_decode($this->voicenumber);
//var_dump($json);exit;
if(!is_array($json)) return [];
$voicenumbers = [];
foreach($json as $number) {
$number = str_replace("+","",$number);
if(!$number) continue;
$voicenumber = VoicenumberModel::getFirst(["number" => $number]);
if($voicenumber) {
$voicenumbers[] = $voicenumber;