# Модуль - Работа с документами ###### Массовый обход документов в пределах одной рубрики, и выполенеие действий над ними. ## Оглавление * [Настройки](#настройки) * [Внутренние функции](#внутренние-функции) * [Примеры кода перед сохранением](#примеры-кода-перед-сохранением) * [Пример своей SQL выборки](#пример-своей-sql-выборки) ## Настройки 1. Пересохранять документы при обходе - Включает функцию documentSave, передаются все данные из $data 2. При сохранении документа использовать Исполняемый код рубрики 3. Сохранение ревизий документа 4. Отображать действия в системных сообщениях Пункты (2, 3, 4 работают только если вкл 1 пункт)
## Внутренние функции Является ли файл изображением
**self::_is_image($path)**
return bool
Существует ли файл
**self::_if_exists($path)**
return bool
Есть ли в тексте ссылки (http|s)
**self::_link_exists($string)**
return int Очищает теги от style, убирает пустые теги
**self::_clear_text($string, $span = false)**
$span - bool - удалить из текста `` (только теги)
return string
## Примеры кода перед сохранением ```php ``` ```php ' . count($num_links) . ''; // Символов в исходном тексте $count_text = strlen($data['feld'][1]); // Очищаем текст $string = self::_clear_text($data['feld'][1], true); // Символов в очищенном тексте $new_count = strlen($string); // Разница $diff = $count_text - $new_count; // Если разница больше 100 символов if ($diff > 100) $document_logs[] = 'Текст описания можно уменьшить: с ' . $count_text . ' до ' . $new_count . ''; } ?> ``` ```php ' . $image . ''; } else { if (! self::_is_image(BASE_DIR . $image)) $document_logs[] = 'Неправильный формат файла: ' . $image . ''; } } ?> ``` ```php $v) { $image = $v['url']; if (! empty($image)) { // Проврека на наличие файла на сервере if (! self::_if_exists(BASE_DIR . $image)) { $document_logs[] = '('.$k.') Файл отсутсвует на сервере: ' . $image . ''; } else { if (! self::_is_image(BASE_DIR . $image)) $document_logs[] = '('.$k.') Неправильный файл: ' . $image . ''; } } } } ?> ``` ```php ``` ```php ``` ## Пример своей SQL выборки Важно! Перед полным запуском, не забывайете проверить, наличи тестовых данных ```php ``` ## Запросить конкретный документ для теста Важно! Перед полным запуском, не забывайете проверить, наличи тестовых данных ```php ``` Если **$document_logs** пусто - то запись логов не будет производиться
Если **$data пусто** - то сохранение документа будет пропущено ## Changelog: 05.07.2020 - Дата создания --- Copyright © 2007-2020 [Ave-Cms.Ru](https://ave-cms.ru)