fix for PHP-8.4 поле "Тизеры"
This commit is contained in:
@@ -38,7 +38,7 @@
|
||||
|
||||
$tpl_file = get_field_tpl($tpl_dir, $field_id, 'admin', $_tpl);
|
||||
|
||||
$AVE_Template->assign('doc_id', $_REQUEST['Id']);
|
||||
$AVE_Template->assign('doc_id', (isset($_REQUEST['Id'])) ? $_REQUEST['Id'] : 0);
|
||||
$AVE_Template->assign('items', $items);
|
||||
$AVE_Template->assign('field_dir', $fld_name);
|
||||
$AVE_Template->assign('field_id', $field_id);
|
||||
@@ -101,24 +101,28 @@
|
||||
return $AVE_Template->get_config_vars('name');
|
||||
break;
|
||||
|
||||
case 'search':
|
||||
case 'search':
|
||||
|
||||
$field_default = explode(',', $default);
|
||||
|
||||
$zap_1 = ($field_default[0]) ? ',' : '';
|
||||
$zap_2 = ($field_default[0] && $field_default[1]) ? ',' : '';
|
||||
// ✅ ИСПРАВЛЕНИЕ: Безопасная проверка существования ключей [0] и [1]
|
||||
$use_field_0 = isset($field_default[0]) && $field_default[0];
|
||||
$use_field_1 = isset($field_default[1]) && $field_default[1];
|
||||
|
||||
$sel_1 = ($field_default[0]) ? 'b.field_value as b1' : '';
|
||||
$sel_2 = ($field_default[1]) ? 'c.field_value as c1' : '';
|
||||
$zap_1 = ($use_field_0) ? ',' : '';
|
||||
$zap_2 = ($use_field_0 && $use_field_1) ? ',' : '';
|
||||
|
||||
$from_1 = ($field_default[0]) ? PREFIX . '_document_fields b' : '';
|
||||
$from_2 = ($field_default[1]) ? PREFIX . '_document_fields c' : '';
|
||||
$sel_1 = ($use_field_0) ? 'b.field_value as b1' : '';
|
||||
$sel_2 = ($use_field_1) ? 'c.field_value as c1' : '';
|
||||
|
||||
$search_1 = ($field_default[0]) ? "AND (b.document_id=a.Id AND b.rubric_field_id = " . $field_default[0] . ")" : '';
|
||||
$search_2 = ($field_default[1]) ? "AND (c.document_id=a.Id AND c.rubric_field_id = " . $field_default[1] . ")" : '';
|
||||
$from_1 = ($use_field_0) ? PREFIX . '_document_fields b' : '';
|
||||
$from_2 = ($use_field_1) ? PREFIX . '_document_fields c' : '';
|
||||
|
||||
$or_1 = ($field_default[0]) ? "OR (UPPER(b.field_value) LIKE UPPER('%" . $_REQUEST['q'] . "%'))" : '';
|
||||
$or_2 = ($field_default[1]) ? "OR (UPPER(c.field_value) LIKE UPPER('%" . $_REQUEST['q'] . "%'))" : '';
|
||||
$search_1 = ($use_field_0) ? "AND (b.document_id=a.Id AND b.rubric_field_id = " . $field_default[0] . ")" : '';
|
||||
$search_2 = ($use_field_1) ? "AND (c.document_id=a.Id AND c.rubric_field_id = " . $field_default[1] . ")" : '';
|
||||
|
||||
$or_1 = ($use_field_0) ? "OR (UPPER(b.field_value) LIKE UPPER('%" . $_REQUEST['q'] . "%'))" : '';
|
||||
$or_2 = ($use_field_1) ? "OR (UPPER(c.field_value) LIKE UPPER('%" . $_REQUEST['q'] . "%'))" : '';
|
||||
|
||||
$sql = $AVE_DB->Query("
|
||||
SELECT
|
||||
@@ -157,8 +161,8 @@
|
||||
$doc_finded[] = array(
|
||||
'doc_id' => $row->Id,
|
||||
'doc_title' => $row->document_title,
|
||||
'doc_name' => (($field_default[0]) ? $row->b1 : $row->document_title),
|
||||
'doc_article' => (($field_default[1]) ? $row->c1 : '')
|
||||
'doc_name' => (($use_field_0) ? $row->b1 : $row->document_title),
|
||||
'doc_article' => (($use_field_1) ? $row->c1 : '')
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{if $analoque != 'load'}
|
||||
{assign var=teasers value='' scope="global"}
|
||||
{if $smarty.request.outside}
|
||||
{* ИСПРАВЛЕНИЕ 1: Добавляем проверку isset() для $smarty.request.outside *}
|
||||
{if isset($smarty.request.outside) && $smarty.request.outside}
|
||||
<script src="{$ABS_PATH}fields/{$field_dir}/js/outside.js" type="text/javascript"></script>
|
||||
{else}
|
||||
<script src="{$ABS_PATH}fields/{$field_dir}/js/field.js" type="text/javascript"></script>
|
||||
@@ -21,7 +22,8 @@
|
||||
{foreach from=$items key=key item=item}
|
||||
|
||||
<div class="analoque_list fix mb10" id="analoque_list_{$doc_id}_{$field_id}_{$key}" data-docid="{$doc_id}" data-fieldid="{$field_id}" data-id="{$key}">
|
||||
<input type="text" class="mousetrap search_analoque" value="{$item.param}" name="feld[{$field_id}][{$key}][param]" placeholder="{#param#}" data-docid="{$doc_id}" data-fieldid="{$field_id}" data-id="{$key}" style="width: 450px;"/> Id: <input type="text" class="mousetrap field_{$doc_id}_{$field_id}_{$key}" value="{$item.value}" name="feld[{$field_id}][{$key}][value]" placeholder="{#value#}" style="width: 50px;" readonly /> {if $key == 0}<a href="javascript:void(0);" class="button basicBtn topDir AddButton" title="{#add#}">+</a>{else}<a href="javascript:void(0);" data-id="{$doc_id}_{$field_id}_{$key}" class="button redBtn topDir DelButton" title="{#delete#}">×</a>{/if}
|
||||
{* ИСПРАВЛЕНИЕ 2: Используем |default:'' для безопасного извлечения ключей param и value *}
|
||||
<input type="text" class="mousetrap search_analoque" value="{$item.param|default:''}" name="feld[{$field_id}][{$key}][param]" placeholder="{#param#}" data-docid="{$doc_id}" data-fieldid="{$field_id}" data-id="{$key}" style="width: 450px;"/> Id: <input type="text" class="mousetrap field_{$doc_id}_{$field_id}_{$key}" value="{$item.value|default:''}" name="feld[{$field_id}][{$key}][value]" placeholder="{#value#}" style="width: 50px;" readonly /> {if $key == 0}<a href="javascript:void(0);" class="button basicBtn topDir AddButton" title="{#add#}">+</a>{else}<a href="javascript:void(0);" data-id="{$doc_id}_{$field_id}_{$key}" class="button redBtn topDir DelButton" title="{#delete#}">×</a>{/if}
|
||||
<div class="handle" style="float: left; display: inline-block; margin: 4px 7px; cursor: move;"><span class="icon_sprite ico_move"></span></div>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user