nc_load_multifield( $field_id, $message, $template = null )
инициализирует объект призвольного поля мультифайла
Добавлено в FB #1429
Параметр | Описание |
---|---|
$field_id | номер поля |
$message | номер объекта/записи |
$template | шаблон отображения |
Получить данные о файлах в действии после добавления/изменения:
$f_Slider = nc_load_multifield(2367, $message); $files_data = $f_Slider->to_array();
Массив $files_data будет содержать объекты с данными о файлах
Наложить водяные знаки:
foreach($files_data as $file_object) { $photo_path = $DOCUMENT_ROOT . $file_object->Path; if(!is_file($photo_path)) continue; nc_ImageTransform::putWatermark_file($photo_path, '/netcat_files/watermark.png', 0); }
Вывести слайдер в макете:
$f_Slider_tpl = array( 'prefix' => "<div>", 'record' => "<div> <a href='%Path%'><img src='%Preview%' alt='' /></a> </div>", 'divider' => '', 'suffix' => '</div>', ); echo nc_load_multifield(2367, 11, $f_Slider_tpl);
Для версии без этой функции(4.72 - 5.4FB #1429) можно использовать функцию nc_load_multifield_tmp(), добавьте ее в модуль разработчика:
/** * Инициализирует объект произвольного поля мультифайла(4.72 совместимая версия) * @param type $field_id - номер поля * @param type $message - номер объекта/записи * @param type $template - шаблон отображения * @return \nc_multifield|null */ function nc_load_multifield_tmp($field_id, $message, $template = null) { $field_id = (int) $field_id; $message = (int) $message; $db = nc_Core::get_object()->db; $field = $db->get_row("SELECT `Field_Name`, `Description`, `Format` FROM `Field` WHERE `Field_ID` = ".$field_id, ARRAY_N); if (empty($field)) return NULL; $SQL = "SELECT Name, Size, Path, Field_ID, Preview, ID, Priority FROM Multifield WHERE Field_ID = " . $field_id . " AND Message_ID = " . $message . " ORDER BY `Priority`"; $field_data = (array) $db->get_results($SQL); $field_object = new nc_multifield($field['Field_Name']); if (!empty($field_data)) { $field_object->set_data($field_data); } if ($template) { $field_object->template->set($template); } return $field_object; }
Комментарии 2