0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 314 Просмотров
*

stepan39

  • Захожу иногда
  • 391
  • 23 / 0
Добрый день!
В какой-то момент обнаружил, что материалы в Joomla 3 можно сохранять пустыми. Т.е. валидацию проходит только название материала.
Ну ладно, мне нет резона создавать пустые статьи ...  ;D

Проблема возникла с юзерами - у некоторых есть права добавлять материалы, но запрещено редактирование. Иногда возникает ситуация, когда юзер заполняет название статьи и сохраняет её. Соответственно на фронте мы видим только заголовок.

Вопрос: каким образом можно запретить сохранение "пустых" материалов?

Заранее спасибо.
*

dm-krv

  • Давно я тут
  • 949
  • 21 / 0
Добрый день!
В какой-то момент обнаружил, что материалы в Joomla 3 можно сохранять пустыми. Т.е. валидацию проходит только название материала.
Ну ладно, мне нет резона создавать пустые статьи ...  ;D

Проблема возникла с юзерами - у некоторых есть права добавлять материалы, но запрещено редактирование. Иногда возникает ситуация, когда юзер заполняет название статьи и сохраняет её. Соответственно на фронте мы видим только заголовок.

Вопрос: каким образом можно запретить сохранение "пустых" материалов?

Заранее спасибо.

Элементарно, предварительно проверять поле редактора посредством JavaScript.
Код
if (document.querySelector("iframe").contentWindow.document.querySelector("body").innerText.replace("\n", "") == "")
{ alert("Сначала заполните материал!");
} else { function_save(); }
Утрированный пример.

Если задача для вас чересчур сложная, могу вам плагин написать для валидаци окна с редактором, пишите в личку.
« Последнее редактирование: 24.09.2019, 17:15:25 от dm-krv »
*

stepan39

  • Захожу иногда
  • 391
  • 23 / 0
Если задача для вас чересчур сложная, могу вам плагин написать для валидаци окна с редактором, пишите в личку.

Спасибо, подумаю. Странно, что в 3-й ветке убрали эту проверку, она логична - зачем создавать пустые материалы?
*

ProtectYourSite

  • Завсегдатай
  • 1989
  • 106 / 4
  • Безопасность вебсайтов
А если без редактора поставить и сохранить ?
*

dm-krv

  • Давно я тут
  • 949
  • 21 / 0
Спасибо, подумаю. Странно, что в 3-й ветке убрали эту проверку, она логична - зачем создавать пустые материалы?

Вероятно дело в том, что пустой материал на самом деле нихрена не пустой. Если редактор пуст, то TinyMCE обычно подставляет пустой тег <p> чтобы браузеру было куда вбивать текст, если пользователь захочет что-нибудь написать.
*

stepan39

  • Захожу иногда
  • 391
  • 23 / 0
А если без редактора поставить и сохранить ?
Не совсем понял... Что с редактором, что без редактора - проверки на заполнение поля нет. Если оставить пустым заголовок, то будет ругаться.
Ошибка
Некорректно заполнено поле:  Заголовок
*

stepan39

  • Захожу иногда
  • 391
  • 23 / 0
Вероятно дело в том, что пустой материал на самом деле нихрена не пустой.

С отключенным редактором сохраняет на ура! Данных никаких (визуально)  :o
*

dm-krv

  • Давно я тут
  • 949
  • 21 / 0
С отключенным редактором сохраняет на ура! Данных никаких (визуально)  :o

Прикрутите required к текстовому полю, возможно прокатит, так как если не ошибаюсь даже при включенном редакторе в скрытом виде оно все же присутствует. Если не прокатит, значит надо пилить свою валидацию.
*

stepan39

  • Захожу иногда
  • 391
  • 23 / 0
Прикрутите required к текстовому полю,
Да, работает. Опять, к сожалению, получаются правки ядра. При новом обновлении все затрется.
Для админки (на фронте думаю также все получится) /administrator/components/com_content/models/forms/article.xml добавляем required="true" к articletext
*

voland

  • Легенда
  • 10671
  • 568 / 111
  • Эта строка съедает место на вашем мониторе
Да, работает. Опять, к сожалению, получаются правки ядра. При новом обновлении все затрется.
Так плагинчиком или переопределением
*

stepan39

  • Захожу иногда
  • 391
  • 23 / 0
Так плагинчиком или переопределением
Ага, подумаю. Временно вопрос решен.
*

ChaosHead

  • Гуру
  • 5186
  • 447 / 13
зачем создавать пустые материалы?
Затем, что материал может состоять из названия и заполненных кастомных полей. Потому и не нужна такая проверка. Кому надо - напишет плагин три строчки.
*

stepan39

  • Захожу иногда
  • 391
  • 23 / 0
Затем, что материал может состоять из названия и заполненных кастомных полей. Потому и не нужна такая проверка. Кому надо - напишет плагин три строчки.

Пожалуй Вы правы. У меня основу публикации юзера составляет загруженный им документ (pdf, Word, Excel и т.п.), а текстовое поле (которое часто оставляют пустым) служит для краткого описания публикации.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Пропала кнопка редактирования материала на сайте (не в админке) Joomla!, 3.9.13

Автор DvaIL87

Ответов: 10
Просмотров: 376
Последний ответ 15.11.2019, 13:17:51
от beliyadm
Ошибка после вывода материала в меню

Автор Emiltito

Ответов: 1
Просмотров: 172
Последний ответ 29.09.2019, 14:34:56
от Emiltito
Скрыть блок "Содержание материала"

Автор Mick_20

Ответов: 0
Просмотров: 330
Последний ответ 12.08.2019, 09:50:52
от Mick_20
Метки, сделать лого (фото) в списке, каждого материала....

Автор Igor5

Ответов: 0
Просмотров: 176
Последний ответ 24.04.2019, 15:24:49
от Igor5
Белое окно при сохранении материала

Автор dsafronov

Ответов: 1
Просмотров: 183
Последний ответ 10.12.2018, 16:05:53
от NewUsers