Описание проекта
Виджет нужен и под товаром, и в общем разделе отзывов. Посетитель ставит оценку, пишет текст и при желании прикладывает фотографию. Сразу в публикацию не уходит ничего: отзыв ждёт в очереди, мы читаем его, смотрим снимок и либо публикуем, либо скрываем с записанной причиной. Под каждым опубликованным отзывом магазин должен иметь возможность ответить — именно от имени магазина, заметно, а не ещё одной безымянной репликой. Читателю нужны сортировка по дате и по оценке и фильтр, чтобы тот, кто хочет прочитать трёхзвёздочные, нашёл их одним нажатием. В карточке товара — средний балл и число отзывов, и оба числа должны быть честной арифметикой по тому, что действительно опубликовано.
Три правила обсуждению не подлежат, и я хочу видеть их в коде, а не в обещании. Отзывы не выдумываются и не удаляются за низкую оценку — скрывается только оскорбление и спам, а правило модерации публикуется рядом с виджетом, чтобы любой читатель видел, что именно мы убираем и почему. Фотографии проверяются до публикации, чтобы в кадр не попадали чужие документы и чужие лица. Отзыв публикуется с согласия автора, а его контакты остаются у нас: посетитель видит имя или прозвище и никогда — адрес или номер.
Что жду в работе:
— форма отзыва с оценкой, текстом и загрузкой фотографии, рабочая на телефоне;
— очередь модерации: публикация, скрытие, записанная причина и опубликованный текст правила;
— ответ магазина под тем отзывом, которому он отвечает;
— сортировка по дате и оценке, фильтр по оценке, постраничный вывод длинных списков;
— средний балл и счётчик в карточке товара, пересчитанные по опубликованным;
— разметка для поисковых систем на страницах товара и отзывов;
— тихая защита от спама — без картинок-головоломок для покупателя;
— выгрузка всех отзывов с оценками и датами для отчёта.