DocumentManager

    DocumentManager

    Это различные методы связанные с управлением ресурсами в EvolutionCMS, все действия связанные с документами проходят через эти методы.

    Доступные функции и примеры использования

    1. get - получение документа
    2. create - создание документа
    3. edit - редактирование документа
    4. delete - удаление документа
    5. undelete - восстановление удаленного документа
    6. duplicate - копирование документа
    7. setGroups - установка групп документа
    8. publish - опубликовать документ
    9. unpublish - снять с публикации документ
    10. clearCart - очистить корзину с удалёнными документами

    get - получение документа

    SiteContent \DocumentManager::get(integer $documentId)

    Функция возвращает объект модели документа SiteContent

    Параметры, которые принимает функция:

    • $documentId - id документа который желаем получить

    Пример получения документа

    $document = \DocumentManager::get(1);
    print_r($document->toArray());

    create - создание документа

    SiteContent \DocumentManager::create(array $documentData, bool $events = true, bool $cache = true)

    Функция возвращает объект модели документа SiteContent

    Параметры, которые принимает функция:

    • $documentData - массив содержащий поля документа и TV-шки, для ключей TV названия этих TV. Обязательные поля pagetitle, template
    • $events - указатель вызываем ли мы события связанные с созданием документа
    • $cache - указатель сбрасываем ли кэш после создания документа

    ВНИМАНИЕ Функция может бросить два различных исключения

    • \EvolutionCMS\Exceptions\ServiceValidationException исключение срабатывает в случае если мы передали плохие данные в $documentData.
    • \EvolutionCMS\Exceptions\ServiceActionException исключение срабатывает в ситуации когда возникла ошибка в процессе обработки данных.

    Пример функции создания документа

    $document = ['pagetitle' => 'test', 'template' => '1', 'test'=>'value']; //test - название tv
    try {
        $document = \DocumentManager::create($document);
    } catch (\EvolutionCMS\Exceptions\ServiceValidationException $exception) {
        $validateErrors = $exception->getValidationErrors(); //Получаем все ошибки валидации
        print_r($validateErrors); //Выводим все ошибки валидации
    } catch (\EvolutionCMS\Exceptions\ServiceActionException $exception) {
         print_r($exception->getMessage()); //Выводим ошибку процесса обработки данных
    }

    edit - редактирование документа

    SiteContent \DocumentManager::edit(array $documentData, bool $events = true, bool $cache = true)

    Функция возвращает объект модели документа SiteContent

    Параметры, которые принимает функция:

    • $documentData - массив содержащий поля документа. Обязательные поля: id, необходимо для поиска документа.
    • $events - указатель вызываем ли мы события связанные с редактированием документа
    • $cache - указатель сбрасываем ли кэш после редактирования документа

    ВНИМАНИЕ Функция может бросить два различных исключения

    • \EvolutionCMS\Exceptions\ServiceValidationException исключение срабатывает в случае если мы передали плохие данные в $documentData.
    • \EvolutionCMS\Exceptions\ServiceActionException исключение срабатывает в ситуации когда возникла ошибка в процессе обработки данных.

    Пример функции редактирования документа

    $data = ['id'=> 1, 'pagetitle' => 'new title', 'test'=>'new value']; //test - название tv
    try {
        $document = \DocumentManager::edit($data);
    } catch (\EvolutionCMS\Exceptions\ServiceValidationException $exception) {
        $validateErrors = $exception->getValidationErrors(); //Получаем все ошибки валидации
        print_r($validateErrors); //Выводим все ошибки валидации
    } catch (\EvolutionCMS\Exceptions\ServiceActionException $exception) {
         print_r($exception->getMessage()); //Выводим ошибку процесса обработки данных
    }

    delete - удаление документа

    SiteContent \DocumentManager::delete(array $documentData, bool $events = true, bool $cache = true)

    Функция возвращает объект SiteContent

    Параметры, которые принимает функция:

    • $documentData - массив содержащий id документа.
    • $events - указатель вызываем ли мы события связанные с удалением документа
    • $cache - указатель сбрасываем ли кэш после удаления документа

    ВНИМАНИЕ Функция может бросить два различных исключения

    • \EvolutionCMS\Exceptions\ServiceValidationException исключение срабатывает в случае если мы передали плохие данные в $documentData.
    • \EvolutionCMS\Exceptions\ServiceActionException исключение срабатывает в ситуации когда возникла ошибка в процессе обработки данных.

    Пример функции удаления документа

    $data = ['id'=> 1];
    try {
        $document = \DocumentManager::delete($data);
    } catch (\EvolutionCMS\Exceptions\ServiceValidationException $exception) {
        $validateErrors = $exception->getValidationErrors(); //Получаем все ошибки валидации
        print_r($validateErrors); //Выводим все ошибки валидации
    } catch (\EvolutionCMS\Exceptions\ServiceActionException $exception) {
        print_r($exception->getMessage()); //Выводим ошибку процесса обработки данных
    }

    undelete - восстановление удаленного документа

    SiteContent \DocumentManager::undelete(array $documentData, bool $events = true, bool $cache = true)

    Функция возвращает объект модели документа SiteContent

    Параметры, которые принимает функция:

    • $documentData - массив содержащий id документа.
    • $events - указатель вызываем ли мы события связанные с восстановлением документа
    • $cache - указатель сбрасываем ли кэш после восстановления документа

    ВНИМАНИЕ Функция может бросить два различных исключения

    • \EvolutionCMS\Exceptions\ServiceValidationException исключение срабатывает в случае если мы передали плохие данные в $documentData.
    • \EvolutionCMS\Exceptions\ServiceActionException исключение срабатывает в ситуации когда возникла ошибка в процессе обработки данных.

    Пример восстановления удалённого документа

    $data = ['id'=> 1];
    try {
        $document = \DocumentManager::undelete($data);
    } catch (\EvolutionCMS\Exceptions\ServiceValidationException $exception) {
        $validateErrors = $exception->getValidationErrors(); //Получаем все ошибки валидации
        print_r($validateErrors); //Выводим все ошибки валидации
    } catch (\EvolutionCMS\Exceptions\ServiceActionException $exception) {
        print_r($exception->getMessage()); //Выводим ошибку процесса обработки данных
    }

    duplicate - копирование документа

    SiteContent \DocumentManager::duplicate(array $documentData, bool $events = true, bool $cache = true)

    Функция возвращает объект модели документа SiteContent

    Параметры, которые принимает функция:

    • $documentData - массив содержащий id копируемого документа.
    • $events - указатель вызываем ли мы события связанные с копированием документа
    • $cache - указатель сбрасываем ли кэш после копирования документа

    ВНИМАНИЕ Функция может бросить два различных исключения

    • \EvolutionCMS\Exceptions\ServiceValidationException исключение срабатывает в случае если мы передали плохие данные в $documentData.
    • \EvolutionCMS\Exceptions\ServiceActionException исключение срабатывает в ситуации когда возникла ошибка в процессе обработки данных.

    Пример функции копирования документа

    $data = ['id'=> 1];
    try {
        $document = \DocumentManager::duplicate($data);
    } catch (\EvolutionCMS\Exceptions\ServiceValidationException $exception) {
        $validateErrors = $exception->getValidationErrors(); //Получаем все ошибки валидации
        print_r($validateErrors); //Выводим все ошибки валидации
    } catch (\EvolutionCMS\Exceptions\ServiceActionException $exception) {
        print_r($exception->getMessage()); //Выводим ошибку процесса обработки данных
    }

    setGroups - назначению документу его группы документа

    SiteContent \DocumentManager::setGroups(array $documentData, bool $events = true, bool $cache = true)

    Функция возвращает объект модели документа SiteContent

    Параметры, которые принимает функция:

    • $documentData - массив содержащий id документа и document_groups массив групп документа. Оба поля обязательны.
    • $events - указатель вызываем ли мы события связанные с назначением группы документа
    • $cache - указатель сбрасываем ли кэш после назначения группы документа

    ВНИМАНИЕ Функция может бросить два различных исключения

    • \EvolutionCMS\Exceptions\ServiceValidationException исключение срабатывает в случае если мы передали плохие данные в $documentData.
    • \EvolutionCMS\Exceptions\ServiceActionException исключение срабатывает в ситуации когда возникла ошибка в процессе обработки данных.

    Пример функции назначения группы документов

    $data = ['id'=> 1, 'document_groups' => [1,2]];
    try {
        $document = \DocumentManager::setGroups($data);
    } catch (\EvolutionCMS\Exceptions\ServiceValidationException $exception) {
        $validateErrors = $exception->getValidationErrors(); //Получаем все ошибки валидации
        print_r($validateErrors); //Выводим все ошибки валидации
    } catch (\EvolutionCMS\Exceptions\ServiceActionException $exception) {
        print_r($exception->getMessage()); //Выводим ошибку процесса обработки данных
    }

    publish - опубликовать документ

    SiteContent \DocumentManager::publish(array $documentData, bool $events = true, bool $cache = true)

    Функция возвращает объект модели документа SiteContent

    Параметры, которые принимает функция:

    • $documentData - массив содержащий id документа. Поле id является обязательным.
    • $events - указатель вызываем ли мы события связанные публикацией документа
    • $cache - указатель сбрасываем ли кэш после публикации документа

    ВНИМАНИЕ Функция может бросить два различных исключения

    • \EvolutionCMS\Exceptions\ServiceValidationException исключение срабатывает в случае если мы передали плохие данные в $documentData.
    • \EvolutionCMS\Exceptions\ServiceActionException исключение срабатывает в ситуации когда возникла ошибка в процессе обработки данных.

    Пример функции публикации документа

    $data = ['id'=> 1];
    try {
        $document = \DocumentManager::publish($data);
    } catch (\EvolutionCMS\Exceptions\ServiceValidationException $exception) {
        $validateErrors = $exception->getValidationErrors(); //Получаем все ошибки валидации
        print_r($validateErrors); //Выводим все ошибки валидации
    } catch (\EvolutionCMS\Exceptions\ServiceActionException $exception) {
        print_r($exception->getMessage()); //Выводим ошибку процесса обработки данных
    }

    unpublish - снять с публикации документ

    SiteContent \DocumentManager::unpublish(array $documentData, bool $events = true, bool $cache = true)

    Функция возвращает объект модели документа SiteContent

    Параметры, которые принимает функция:

    • $documentData - массив содержащий id документа. Поле id является обязательным.
    • $events - указатель вызываем ли мы события связанные со снятием с публикации документа
    • $cache - указатель сбрасываем ли кэш после снятия с публикации документа

    ВНИМАНИЕ Функция может бросить два различных исключения

    • \EvolutionCMS\Exceptions\ServiceValidationException исключение срабатывает в случае если мы передали плохие данные в $documentData.
    • \EvolutionCMS\Exceptions\ServiceActionException исключение срабатывает в ситуации когда возникла ошибка в процессе обработки данных.

    Пример функции снятия с публикации документа

    $data = ['id'=> 1];
    try {
        $document = \DocumentManager::unpublish($data);
    } catch (\EvolutionCMS\Exceptions\ServiceValidationException $exception) {
        $validateErrors = $exception->getValidationErrors(); //Получаем все ошибки валидации
        print_r($validateErrors); //Выводим все ошибки валидации
    } catch (\EvolutionCMS\Exceptions\ServiceActionException $exception) {
        print_r($exception->getMessage()); //Выводим ошибку процесса обработки данных
    }

    clearCart - очистить корзину с удалёнными документами

    SiteContent \DocumentManager::clearCart(array $documentData => [], bool $events = true, bool $cache = true)

    Функция возвращает объект модели первого документа SiteContent

    Параметры, которые принимает функция:

    • $documentData - Необязательное поле
    • $events - указатель вызываем ли мы события связанные очисткой корзины
    • $cache - указатель сбрасываем ли кэш после очистки корзины

    ВНИМАНИЕ Функция может бросить два различных исключения

    • \EvolutionCMS\Exceptions\ServiceValidationException исключение срабатывает в случае если мы передали плохие данные в $documentData.
    • \EvolutionCMS\Exceptions\ServiceActionException исключение срабатывает в ситуации когда возникла ошибка в процессе обработки данных.

    Пример функции очистки корзины

    try {
        $document = \DocumentManager::clearCart();
    } catch (\EvolutionCMS\Exceptions\ServiceValidationException $exception) {
        $validateErrors = $exception->getValidationErrors(); //Получаем все ошибки валидации
        print_r($validateErrors); //Выводим все ошибки валидации
    } catch (\EvolutionCMS\Exceptions\ServiceActionException $exception) {
        print_r($exception->getMessage()); //Выводим ошибку процесса обработки данных
    }