Добавление/редактирование категорий через AJAX

Issue #361 resolved
Oleg Sychev repo owner created an issue

По сути это почти одно и тоже, различаются слегка запросы к серверу и при редактировании надо форму заполнить имеющимися данными.

Редактирование делается через кнопку с шестеренкой; для добавления надо сделать специальные кнопочки с плюсиками (как в режиме редактирования в курсе) внизу или вверху (лучше и внизу и вверху, можно внутри каждого контекста...).

Смысл - вывести во всплывающем окне мини-формочку редактирования категории (она есть внизу для добавления - теперь заменить на кнопку с плюсиком и она же показывается по шестеренке), ввести данные, выполнить через AJAX запрос и подставить в нужное место в списке обновленный результат, чтобы не перезагружать страницу.

Здесь уже нужен полноценный модальный диалог, а не MessageBox как при удалении - подгружающий страницу с формой с сервера. Могут быть проблемы с загрузкой всех скриптов MoodleForms на эту форму (надо проверить вставку картинок в описание категории, там html-редактор) - такой вопрос решался Стрельцовым в форме для инструментов авторинга Preg успешно, можно взять решение оттуда.

С реализацией удаления, добавления и редактирования мы об-айяксим всю форму и плагин приобретет законченный вид.

Comments (8)

  1. Oleg Sychev reporter

    Кстати у нас есть и дополнительная мотивация для этого. Сейчас после редактирования/удаления/добавления категории (а это загрузка отдельной страницы) возвращающаяся ссылка ведет на обычную страницу категорий, не AJAX - что сбивает с толку. Мне кажется проще доделать свое редактирование, чем вносить изменения в Moodle чтобы можно было вернуться на страницу...

  2. Elena Lepilkina

    Вообще-то, если добавление ведется с ajax страницы, то оно и ведет на ajax страницу сейчас.

  3. Oleg Sychev reporter

    Ну хорошо, но страницу он все равно перезагружает. А этого мы стараемся избежать.

  4. anhcx

    Задание добавления и редактирования через ajax выполнил. Этот ссылка к моей работе. Ну возникает конфликт между старым код и новым: кнопка и ссылка для редактирования слушает 2 события одновременно: "drop:mousedown" (для drag&drop) и "click" (нужно для запускать окно редактирования). Исправить могу, но пока я выключил часть код, которая старую событию слушает.

  5. Oleg Sychev reporter
    1. Создайте pull request с тестовыми инструкциями, как положено, для сдачи работы.
    2. С конфликтами между кодом надо разобраться, нарушать работоспособность нельзя. Они же должны слушать эти события в разных местах.
  6. anhcx

    В последнем коммите, конфликты разобрались, пока все функцию с категорий работает (кроме удаление) с AJAX. pull request тоже создал.

  7. Log in to comment