Веб-Программирование

Все лабораторные должны быть выполнены на helios.
Возможно, требования будут меняться и/или пополняться с течением времени, так что перед тем, как делать лабораnорную, лучше зайти и проверить :)

ЛР1-4

  1. таблица должна сохраняться при перезагрузке страницы
  2. фронтенд должен быть доступен через se.ifmo.ru/~sXXXXXX/...
  3. не допускается использование alert для вывода сообщений об ошибках
  4. обработка значений с запятой вместо точки, наличие человекочитаемых сообщений об ошибке при вводе некорректных значений
  5. валидация значений и на клиентской, и на серверной стороне
  6. обработка числовых значений с большой точностью. Ограничение числа знаков после запятой - не решение!
  7. компоненты ввода X, Y, R должны соответствовать тому, что написано в варианте

ЛР2-4

  1. используем wildfly в качестве сервера приложений
  2. при нажатии на график, а не только на кнопку, обязательно производить отправку и добавление в таблицу
  3. если у Вас для ввода какой-то из координат используется не input, то при нажатии на график должна оставаться возможность отправлять числа с любой координатой (например, если x: Button [-2, -1,5, -1, -0,5, 0], то с графика можно отправить точку с координатой x=-0.666)
  4. если компонент для координаты подразумевает возможность множественного выбора нескольких элементов, то при выборе нескольких чекбоксов необходимо отправлять несколько точек
  5. при смене радиуса необходимо либо отрисовывать точки только с выбранным радиусом, либо отрисовывать все точки, но с учетом нового масштабирования
  6. таблица должна быть на той же странице, где график и форма

ЛР3

  1. Должен быть настроен datasource

ЛР4

  1. так как прецеденты уже были, то обращаю внимание, что если в варианте написано использовать компоненты React Toolbox/Prime React/что-то_другое, то Вы обязаны использовать его, а не то, что Вам больше понравилось
  2. если в варианте есть отрицательный радиус, необходимо это обрабатывать как корректный случай — например, перерисовывать фигуру симметрично относительно начала координат.
  3. возможность либо зайти в двух разных пользователей с двух разных вкладок одного и того же браузера, либо, если такой возможности нет, то корректно обрабатывать действия в разных окнах с одного аккаунта
  4. Кейсы:
    1. если во вкладке_1 пользователь залогинен, то при открытии вкладки_2 мы попадаем в аккаунт того же пользователя без необходимости выполнять авторизацию дополнительно
    2. если в вкладке_1 пользователь вышел из аккаунта, то во вкладке_2 необходимо либо разлогинить сразу, либо при совершении какого-то действия выводить сообщение о том, что был совершен выход из аккаунта/вы не авторизованы/что-то_в_этом_духе и производить редирект на страницу логина
  5. при попытке зайти с разных браузеров в одного и того же пользователя: либо автоматическое обновление точек во втором окне, либо запрет заходить с разных мест одному пользователю