84 lines
3.5 KiB
PHP
84 lines
3.5 KiB
PHP
<?php $columnName = $column['name'];
|
|
$columnData = $relationDatas[$columnName];
|
|
$datas = $columnData['datas'];
|
|
$addedValues = [];
|
|
$seperator = isset($columnData['seperator']) ? $columnData['seperator'] : ',';
|
|
?>
|
|
<div class="input-group multiple-choice {{$columnName}}" data-group="{{$rowName}}">
|
|
<input type="text"
|
|
|
|
class="form-control multiple-choice-input {{isset($listData) ? 'edit' : ''}}"
|
|
name="{{$columnName}}"
|
|
seperator="{{$seperator}}"
|
|
<?php if(isset($listData)) {
|
|
?>
|
|
value="{{$listData->$columnName}}"
|
|
table="{{$tableName}}"
|
|
data-id="{{$listData->id}}"
|
|
<?php } ?>
|
|
<?php if(isset($columnData['disabled'])) {
|
|
?>
|
|
data-disabled-condition-column="{{$columnData['disabled']['column']}}"
|
|
data-disabled-condition-type="{{$columnData['disabled']['type']}}"
|
|
data-disabled-condition-value="{{$columnData['disabled']['value']}}"
|
|
<?php
|
|
} ?>
|
|
placeholder="{{$column['type']}}"
|
|
{{isset($columnData['max']) ? 'max='.$columnData['max'] : ""}}
|
|
{{in_array($columnName, $requiredFields) ? "required" : ""}}
|
|
>
|
|
<div class="dropdown dropdown-sm ">
|
|
<button type="button" class="btn btn-outline-default btn-sm dropdown-toggle" data-toggle="dropdown">
|
|
|
|
</button>
|
|
<div class="dropdown-menu dropdown-menu-right">
|
|
<input type="text" placeholder="{{e2("Search")}}" id="search{{rand()}}" class="form-control search">
|
|
<div class="dropdown-list"
|
|
<?php if(isset($columnData['affected'])) { ?>
|
|
affected="{{json_encode($columnData['affected'])}}"
|
|
<?php } ?>
|
|
>
|
|
<?php foreach($datas AS $data) {
|
|
$patternString = $columnData['pattern'];
|
|
$values = [];
|
|
|
|
preg_match_all('/{(.*?)}/',$patternString, $matches);
|
|
|
|
if(isset($matches[1])) {
|
|
foreach($matches[1] AS $match) {
|
|
$patternString = str_replace("{" . $match . "}", $data->$match, $patternString);
|
|
}
|
|
}
|
|
/*
|
|
foreach($data AS $dataColumn => $dataValue) {
|
|
$patternString = str_replace('{'.$dataColumn.'}', $dataValue, $patternString);
|
|
$values[] = $dataValue;
|
|
}
|
|
*/
|
|
$implodeValue = implode(',',$values);
|
|
$addedValues[] = $patternString;
|
|
?>
|
|
|
|
<label class="dropdown-item" data-group="{{$rowName}}" data-filter-value="{{json_encode($data, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE)}}"><input type="checkbox" value="{{$patternString}}" name="" data-id="{{rand()}}">{{$patternString}}</label>
|
|
<?php } ?>
|
|
<?php if(isset($recordedDatas[$columnName])) {
|
|
foreach($recordedDatas[$columnName] AS $recordedValue) {
|
|
$recordedValues = explode($seperator, $recordedValue);
|
|
foreach($recordedValues AS $recordedValue)
|
|
{
|
|
if(!in_array($recordedValue, $addedValues)) {
|
|
$addedValues[] = $recordedValue;
|
|
?>
|
|
<label class="dropdown-item" data-filter-value="{{$recordedValue}}"><input type="checkbox" value="{{$recordedValue}}" name="" data-id="{{rand()}}"> {{$recordedValue}}</label>
|
|
|
|
<?php
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
} ?>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|