Документация LMS версия 0.1.0

Документация/Оформление/Аварийный выключатель

Аварийный выключатель

Если вы попали сюда из поиска, потому что школа сломалась после применения темы, — вот короткий ответ.

Добавьте к адресу любой страницы ?theme=off. Она откроется без темы.

https://school.example.com/admin/settings/appearance?theme=off

Дальше — в раздел «Оформление» и либо откатите к предыдущей редакции, либо верните стандартное оформление одной кнопкой.

Почему это вообще существует #

Первое, что произойдёт в живой школе: технический специалист напишет display: none не на том селекторе и потеряет доступ к настройкам. Не «может произойти» — произойдёт.

Если при этом закрыт вход в настройки, единственный выход — лезть в базу. Это обращение в поддержку по вине продукта, а не школы. Поэтому выключатель обязателен, а не «хорошо бы».

Три места, где тема не применяется никогда #

Даже если очень постараться.

  1. Экран входа. Сломать вход в школу нельзя в принципе.
  2. Настройки школы и настройки аккаунта, включая сам раздел «Оформление». То есть экран, на котором тему чинят, темой не оформляется.
  3. Любая страница с ?theme=off.

Обратите внимание, чего в этом списке нет: всей остальной админки. Разделы курсов, пользователей, заказов школа вправе перекрашивать — это её рабочие экраны, и запрещать там нечего.

Предупреждение до сохранения, а не после #

Если тема прячет элементы навигации — display: none или visibility: hidden на якорях меню, — предупреждение показывается до применения, а не после.

Тема, применённая вслепую, и тема, применённая с предупреждением «вы сейчас спрячете боковое меню», — разные события: во втором случае человек либо остановится, либо будет знать, что делает.

Порядок восстановления #

  1. Откройте любую страницу с ?theme=off.
  2. Перейдите в настройки школы, раздел «Оформление» — он и так открывается без темы.
  3. Откатите к предыдущей редакции. История правок хранится, и в большинстве случаев этого достаточно: сломала последняя правка.
  4. Если непонятно, какая именно редакция сломала, — вернитесь к стандартному оформлению одной кнопкой. Тема при этом не удаляется, только перестаёт применяться.
  5. Найдите ошибку в поле CSS, посмотрите предпросмотр, и только потом применяйте снова.

Как не попадать сюда #

  • Пользуйтесь предпросмотром. Он показывает настоящие экраны школы, а не абстрактный пример.
  • Меняйте переменные, а не селекторы. Переопределение переменной не может спрятать элемент — оно может сделать его некрасивым, но не недоступным.
  • display: none — самое опасное, что можно написать в теме. Если он вам нужен, примените тему и сразу пройдите по школе: вход, список курсов, урок, настройки.

Эта страница в Markdown