Приложение "Toolbox": различия между версиями

Материал из CMS Sitebill Wiki
Перейти к навигации Перейти к поиску
 
Строка 32: Строка 32:
 
</pre>
 
</pre>
  
Имя файла должно совпадать с именем контроллера
+
Имя файла должно совпадать с именем контроллера. Контроллер должен иметь две функции - '''getName''', которая возвращает имя для списка пользовательских контроллеров в админке приложения, и '''run''' - метод выполняющий действия при вызове контроллера

Текущая версия на 16:58, 22 января 2020

Приложение для выполнения рутинных массовых задач.

Подгонка превьюшек

Используется для подгонки уменьшенных изображений картинок для объявлений. Применимо только к элементу типа Uploadify_image.
Принцип работы: выбирает все картинки объявлений и пересоздает их уменьшенные копии согласно настроек apps.realty.data_image_preview_height, apps.realty.data_image_preview_width и apps.realty.preview_smart_resizing. Поскольку за исходное изображение берется нормальное изображение, то не уменьшенных изображениях, в результате этой операции, возможно появление водяного знака, если он был нанесен на нормальные изображения.

Из Uploadify в Uploads

Мигратор картинок из элемента типа Uploadify_image (базовая поставка) в элемент типа Uploads. Применяется для объявлений. Для своей работы требует указания системного имени элемента типа Uploads в который будут помещены изображения (при использовании Uploadify_image изображения хранятся во внешней таблице БД).

Перед миграцией необходимо дополнить, в случае отсутствия, таблицу re_image полями title VARCHAR(255) и description TEXT.

Если миграция не выполнена, но старый элемент типа Uploadify_image заменен одноименным элементом типа Uploads, присоединенные картинки будут доступны только на просмотр с фронта, но не будут доступны на редактирование из админки. Эта доступность сохранится до первой загрузки картинки в элемент типа Uploads. После этого все изображения, которые были подхвачены из старого элемента, будут утеряны.

Пользовательские контроллеры

Пользовательские контроллеры создаются путем размещения в каталоге /apps/toolbox/useractions/ классов определенного вида.

// /apps/toolbox/useractions/example.php

class example extends Object_Manager {
    
    public function getName(){
        return 'Имя контроллера example';
    }
    
    public function run(){
        Действия выполянемые контроллером example 
    }
}

Имя файла должно совпадать с именем контроллера. Контроллер должен иметь две функции - getName, которая возвращает имя для списка пользовательских контроллеров в админке приложения, и run - метод выполняющий действия при вызове контроллера