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


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

Два вопроса по заголовку материала (Name)


Лучший Ответ SmetDenis , 29 November 2014 - 14:04


Валидация и чистка имени материала происходит тут
media\zoo\elements\itemname\itemname.php validateSubmission()

y1lo_200x0.png

Это тип валидатора/фильтра можно попробовать заменить на string, либо вовсе убрать валидатор

    public function validateSubmission($value, $params)
    {
        return array('value' => $value->get('value'));
    }

Как и говорил выше, фильтрация происходит с помощью Joomla

В итоге переменные проходят через эту функцию.
u523_200x0.png

Судя по всему используется com_content либо его настройки. Перейти к сообщению


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

#1 Likur

Likur

Отправлено 24 November 2014 - 19:07

Недавно заметил на сайте две проблемы связанные с заголовком материала:

 

1. Если с фронта редактируем материал и в заголовке есть кавычки "", то они обрезаются автоматом. Более того всё, что было написано после них тоже обрезается. Т.е., у нас есть некий заголовок. Ну скажем - Жилой комплекс "Да Винчи" http://joxi.ru/MAjp7g6hjZD4me Так вот если мы попытаемся редактировать этот материал с фронта и нажмём на карандашик, то нам откроется форма редактирования. Но в этой форме в поле заголовка будет только то, что до кавычек. Всё остальное обрезается! http://joxi.ru/EA46ngluoZYKmb Как это исправить? Добавлю, что если снова дописать название комплекса в кавычках и сохранить, то всё сохраняется. Проблема возникает именно в момент нажатия на "Редактировать".

 

 

2. И второе. Когда мы редактируем заголовок материала с фронта, то меняется его алиас и соответственно адрес на сайте. Это влечёт за собой 404-ю. Как это убрать и сделать так, что бы алиас не пересохранялся каждый раз при редактировании заголовка с фронта?


  • 0

#2 SmetDenis

SmetDenis

Отправлено 25 November 2014 - 09:17

1.Кавычки - это потенциально опасный символ.
Если у группы пользователя нет прав в фильтрации (настройки Joomla и режим доверия), то все это будет вырезано.
Скорее всего это реализовано где-то глубоко в Zoo.

2. Похоже это ограничение функционала самой формы редактирования.
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#3 Likur

Likur

Отправлено 25 November 2014 - 10:06

Если у группы пользователя нет прав в фильтрации (настройки Joomla и режим доверия), то все это будет вырезано.

 

Пробовал включать режим доверия. Не помогло. Ситуация та же. Кавычки и всё что после обрезаются.

 

 

Похоже это ограничение функционала самой формы редактирования.

 

И как это исправить?


  • 0

#4 SmetDenis

SmetDenis

Отправлено 25 November 2014 - 10:11

Проверили настройки фильтрации Joomla ?
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#5 CEMEH

CEMEH

Отправлено 25 November 2014 - 15:30

Пробовал включать режим доверия. Не помогло. Ситуация та же. Кавычки и всё что после обрезаются.

 

Попробуйте вместо двойных кавычек ( "слово") использовать одинарные ( 'слово' )

У меня была аналогичная проблема при импортировании из csv. Данное решение помогло.


  • 0

#6 Likur

Likur

Отправлено 27 November 2014 - 18:15

Проверили настройки фильтрации Joomla ?

 

Проверил - http://joxi.ru/vAWyRdBFgxLLmW Но дело в том, что даже, если я захожу под суперадмином, то результат такой же. Всё равно обрезает. Т.е. проблема не в фильтрации Joomla.

 

Попробуйте вместо двойных кавычек ( "слово") использовать одинарные ( 'слово' )

У меня была аналогичная проблема при импортировании из csv. Данное решение помогло.

 

С одинарными кавычками действительно срабатывает. Но дело в том, что для меня это рецепт не подходит. У меня сайт с регистрацией, добавлением объявлений пользователями и т.д. и т.п. Поэтому решение проблемы путём замены одних кавычек на другие не подходит. Но за совет спасибо)


Сообщение отредактировал Likur: 27 November 2014 - 18:18

  • 0

#7 CEMEH

CEMEH

Отправлено 28 November 2014 - 02:09

Еще как вариант - замена на лету кавычек на "

Т.е. юзер пишет с кавычками, а при нажатии на submit происходит замена.

Но это, видимо, надо править форму подачи.


  • 0

#8 SmetDenis

SmetDenis

Отправлено 29 November 2014 - 14:04   Лучший Ответ


Валидация и чистка имени материала происходит тут
media\zoo\elements\itemname\itemname.php validateSubmission()

y1lo_200x0.png

Это тип валидатора/фильтра можно попробовать заменить на string, либо вовсе убрать валидатор
    public function validateSubmission($value, $params)
    {
        return array('value' => $value->get('value'));
    }

Как и говорил выше, фильтрация происходит с помощью Joomla

В итоге переменные проходят через эту функцию.
u523_200x0.png

Судя по всему используется com_content либо его настройки.
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.





Click to return to top of page in style!