edit

Корзина наше всё

event Mon 01 Feb '10
label жизненное, pnut, disaster
language ru
code code

Сегодня зашёл на свой уютненький и переср испугался. Сайт был девственно пуст. Вообще. Сначала до меня не дошло: думал, может сломал меня кто? А потом наступило просветление: с моей тягой к юзабилити вся функциональность, сделанная через JS, корректно продублирована обычными ссылками на случай отсутствия у юзера этого самого JS. Сюда включаются все функции админки, в том числе удаление записей/разделов и т.п. А вчера вечером я решил побаловаться линкчекером и натравил его на свой сайт с админской авторизацией. Он честно проверил всё, пройдясь кроме всего прочего по админке... И заодно потёр всё содержимое.

В первую секунду просветления мне стало нехорошо. Потом я начал вспоминать, что в своё время не поленился сделать «Корзину», зашёл в неё (благо админскую учётку удалить из-под неё самой нельзя) и возрадовался: всё было на месте! Пара кликов мышей и сайт оживлён. Единственное, что не убалось пока восстановить (надо будет посмотреть старые бекапы, если хостер такие делает), так это «Поток сознания»: там я намеренно упростил реализацию, так что корзина его не обслуживает. Ну да это не очень жалко.

В общем морали две:

  1. Админ! Не пускай косого юзера к рутовой админки! Никогда и ни за что! От дураков 100% защиты нет! А дурость есть у всех. Включая создателя сайта.
  2. Разработчик! Помни: лень — смертный грех! Фича, отложенная на потом, может стоить юзеру массива данных. И ещё чего-нибудь в довесок.

P.S. Теги тоже пострадали. Их реально жалко. Пошёл искать пароль от админки хостинга и искать бекапы...