Перейти к содержимому


Фотография
- - - - -

Submissions + JBGallery некорректная работа

submissions jbgallery

Лучший Ответ Yuriy87 , 25 July 2013 - 10:06

Решил проблему

 

/media/zoo/applications/jbuniversal/elements/jbgallery/jbgallery.php

 

 

validateSubmission (функция в самом низу файла)

Было:

 

 public function validateSubmission($value, $params)
    {
        $folder    = $value->get('value');
        $directory = $this->app->path->path('root:' . trim($this->config->get('directory'), '/\\') . '/' . trim($folder, '/\\'));


        if (!$directory) {
            throw new AppValidatorException('This directory does not exist');
        }


        return array(
            'value' => $value
        );
    }


    /**
     * @param array $params
     * @return null|string
     */
    public function renderSubmission($params = array())
    {
        return $this->edit($params);
    }

 

стало:

 

/**
     * Validate submission
     * @param JSONData $value
     * @param JSONData $params
     * @return array
     * @throws AppValidatorException
     */
    public function validateSubmission($value, $params)
    {
        $folder    = $value->get('value');
        $directory = $this->app->path->path('root:' . trim($this->config->get('directory'), '/\\') . '/' . trim($folder, '/\\'));


        if (!$directory) {
            throw new AppValidatorException('This directory does not exist');
        }


        return array(
            'value' => $folder
        );     }     /**      * @param array $params      * @return null|string      */     public function renderSubmission($params = array())     {         return $this->edit($params);     } }

 



криво запостил, отредактировать не могу.

 

вобщем нужно изменить

 

'value' => $value

на 

 

'value' => $folder

Перейти к сообщению


  • Закрытая тема Тема закрыта
Сообщений в теме: 4

#1 Yuriy87

Yuriy87

Отправлено 25 July 2013 - 08:23

Добрый день! Пользуюсь бесплатной версией JBZoo. Столкнулся с проблемой. Создал форму (submission

) для добавления материала зарегистрированными пользователями с frontend сайта. Форма содержит следующие бибилиотеки элементов: название(text), описание(textarea) и галерею картинок(JBZoo Gallery) материала. Когда пользователь добавляет материал через эту форму, независимо от того какую папку галлереи он выбрал(из выпадающего списка), в опубликованном таким образом материале отображаются все картинки из корневого каталога изображений. Если после этого  еще раз перевыбрать каталог картинок для данного материала, через админку сайта, то все отображается правильно.

 



#2 Yuriy87

Yuriy87

Отправлено 25 July 2013 - 09:10

Пораскинув мозгами пришел к выводу, что он вносит некорректную информацию в таблицу zoo_item.

так через админку так:

 

"68c12196-0e98-4379-8b96-c21d0c238cf6":  {
"value": "catalog\/laminat\/classic"
}

 

 

через submission так:

 

"68c12196-0e98-4379-8b96-c21d0c238cf6":  {
"value":  {
"value": "catalog\/laminat\/classic"
}

 

 

 

 

 



Уточняю в таблицу zoo_item в поле elements.

Вопрос где, (в каком файле) происходит обработка этого события?



#3 Yuriy87

Yuriy87

Отправлено 25 July 2013 - 10:06   Лучший Ответ

Решил проблему

 

/media/zoo/applications/jbuniversal/elements/jbgallery/jbgallery.php

 

 

validateSubmission (функция в самом низу файла)

Было:

 

 public function validateSubmission($value, $params)
    {
        $folder    = $value->get('value');
        $directory = $this->app->path->path('root:' . trim($this->config->get('directory'), '/\\') . '/' . trim($folder, '/\\'));


        if (!$directory) {
            throw new AppValidatorException('This directory does not exist');
        }


        return array(
            'value' => $value
        );
    }


    /**
     * @param array $params
     * @return null|string
     */
    public function renderSubmission($params = array())
    {
        return $this->edit($params);
    }

 

стало:

 

/**
     * Validate submission
     * @param JSONData $value
     * @param JSONData $params
     * @return array
     * @throws AppValidatorException
     */
    public function validateSubmission($value, $params)
    {
        $folder    = $value->get('value');
        $directory = $this->app->path->path('root:' . trim($this->config->get('directory'), '/\\') . '/' . trim($folder, '/\\'));


        if (!$directory) {
            throw new AppValidatorException('This directory does not exist');
        }


        return array(
            'value' => $folder
        );     }     /**      * @param array $params      * @return null|string      */     public function renderSubmission($params = array())     {         return $this->edit($params);     } }

 



криво запостил, отредактировать не могу.

 

вобщем нужно изменить

 

'value' => $value

на 

 

'value' => $folder



#4 Yuriy87

Yuriy87

Отправлено 25 July 2013 - 10:43

Возник еще один вопрос, можно ли как-то добавлять категории через FrontEnd?



#5 Sliapy

Sliapy

Отправлено 25 July 2013 - 11:45

Нет, категории в Zoo добавляются только через админку.


  • 0
[color=#aa0000]Не забывайте нажимать кнопку "Вопрос Решён" под сообщением, которое решило Вашу проблему.[/color]





Темы с аналогичным тегами submissions, jbgallery

Click to return to top of page in style!