Jump to content


Photo
- - - - -

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

submissions jbgallery

Best Answer 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

Go to the full post


  • This topic is locked This topic is locked
4 replies to this topic

#1 Yuriy87

Yuriy87

Posted 25 July 2013 - 08:23

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

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

 



#2 Yuriy87

Yuriy87
  • Topic Starter
  • Members
  • User rate: ~
  • posts: 6
  • topics: 2

Posted 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
  • Topic Starter
  • Members
  • User rate: ~
  • posts: 6
  • topics: 2

Posted 25 July 2013 - 10:06   Best Answer

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

 

/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
  • Topic Starter
  • Members
  • User rate: ~
  • posts: 6
  • topics: 2

Posted 25 July 2013 - 10:43

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



#5 Sliapy

Sliapy
  • JBZoo User (rus)
  • User rate: 50.5
  • posts: 6393
  • topics: 15

Posted 25 July 2013 - 11:45

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


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





Also tagged with one or more of these keywords: submissions, jbgallery

Click to return to top of page in style!