Files
2026-04-28 21:15:09 +03:00

98 lines
3.7 KiB
PHP

<?php $columnName = $column['name'];
$columnData = $relationDatas[$columnName];
$filterColumns = isset($columnData['filter-columns']) ? 'filter-columns='.implode(",",$columnData['filter-columns']) : "";
$addedValues = [];
?>
<div class="input-group select-dropdown {{$columnName}}" data-group="{{$rowName}}">
<input type="text" class="form-control select-dropdown-input {{isset($listData) ? 'edit' : ''}}" name="{{$columnName}}"
<?php if(isset($listData)) {
?>
value="{{$listData->$columnName}}"
table="{{$tableName}}"
data-id="{{$listData->id}}"
<?php } ?>
{{in_array($columnName, $requiredFields) ? "required" : ""}}
>
<div class="dropdown dropdown-sm">
<button type="button" class="btn btn-outline-default btn-sm dropdown-toggle {{isset($columnData['filter']) ? "dropdown-filter" : ""}}"
data-toggle="dropdown"
data-pattern="{{$columnData['pattern']}}"
<?php if(isset($columnData['filter'])) {
?>
data-table="{{$columnData['filter']['table']}}"
data-target-column="{{$columnData['filter']['targetColumn']}}"
data-filter-column="{{$columnData['filter']['filterColumn']}}"
<?php
} ?>
>
</button>
<div class="dropdown-menu dropdown-menu-right">
<h6 class="dropdown-header d-none"></h6>
<input type="text" placeholder="{{e2("Search")}}" id="search{{rand()}}" class="form-control search">
<hr>
<div class="dropdown-list"
<?php if(isset($columnData['affected'])) { ?>
affected="{{json_encode($columnData['affected'])}}"
<?php } ?>
>
<?php
if(isset($columnData['datas'])) {
foreach($columnData['datas'] AS $data) {
?>
<label class="dropdown-item" data-group="{{$rowName}}" {{$filterColumns}}
data-filter-value="{{json_encode_tr($data)}}">
<?php if(isset($columnData['pattern'])) {
$patternString = $columnData['pattern'];
preg_match_all('/{(.*?)}/',$patternString, $matches);
if(isset($matches[1])) {
foreach($matches[1] AS $match) {
$patternString = str_replace("{" . $match . "}", $data->$match, $patternString);
}
}
/*
foreach($data AS $dataKey => $dataValue) {
$patternString = str_replace("{" . $dataKey . "}",$dataValue, $patternString);
}
*/
echo $patternString;
} else {
$key = $columnData['key'];
?>
{{$data->$key}}
<?php
$addedValues[] = $data->$key;
} ?>
</label>
<?php } ?>
<?php } ?>
<?php if(isset($recordedDatas[$columnName])) {
foreach($recordedDatas[$columnName] AS $recordedValue) {
if(!in_array($recordedValue, $addedValues)) {
?>
<label class="dropdown-item"
>{{$recordedValue}}</label>
<?php
}
}
} ?>
</div>
</div>
</div>
</div>