Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Нужен сайт, стимулирующий некое сообщество людей писать толковые статьи и обсуждать их, дополнять.

Можно самописные, но лучше в виде модулей к уже существующим системам.

Выбор технологий на ваше усмотрение, но желательно php+mysql.

Требования к оформлению кода: http://habrahabr.ru/blogs/complete_code/120719/

Тех. задание:

1. html5, css3

2. В статьях должна быть возможность вставки формул, сносок, изображений с подписями.

Изображений должны корректно располагаться в тегах figure и legend.

Должна быть возможность редактирования формул и сносок, желательно wiki-разметкой.

3. К каждой статье возможность комментирования на форуме.

4. Навигация в CMS - все статьи являются элементами дерева. Глубина дерева до 10 уровней.

5. У каждой статьи до 10 тегов. Возможность навигации по облаку тегов.

6. За каждую статью и комментарий можно голосовать "+", "-". Система рейтинга.

При определенном рейтинге у пользователя, он проголосовать не может.

Исключение - пользователь находится в определённой группе.

7. При голосовании учитывается текущий рейтинг голосующего.

С учётом весовых коэффициентов, одни голос может принести дробное число баллов рейтинга.

8. Пользователь может проголосовать определённое количество раз за 24 часа. Количество голосов - в зависимости от рейтинга. Например:

от 5 до 15 баллов рейтинга - 3 голоса в день,

от 15 до 25 баллов рейтинга - 5 голосов в день,

от 25 и более баллов рейтинга - 10 голосов в день.

8. Алгоритм системы рейтингов, расчёта и учёта весовых коэффициентов должны предполагать возможность дальнейших изменений.

Можно прямо в коде, но весь необходимый код должен быть вынесен одним отдельным файлом.

9. При разработке алгоритма рейтинга учесть большое количество объектов (статей, комментариев, до 1 000 000) и субъектов (пользователей, до 1 000) системы.

Требования к быстродействию и пересчёту весовых коэффициентов, продумать оптимизацию и кэширование.

10. В системе (CMS+forum) должен быть единый механизм авторизации пользователей.

Неавторизованные посетители видят только статьи с главной страницы сайта и их комментарии. Статьи и обсуждения других разделов форума скрыты.

11. Регистрация пользователей по электронной почте. Интеграция с другими системами (соц. сети, openid и т.п.) не нужна.

12. Механизм регистрации предлагает пользователю зарегистрироваться в одну или несколько групп:

"обычный пользователь",

"специалист в области А",

"специалист в области Б",

"специалист в области В",

13. Для каждой из групп действуют свои правила модерации на форуме. Настройка этих правил - средствами самого форума.

14. Пользователь может создавать темы в определённых разделах форума. Но эти темы никогда не будут на главной сайта. Статьи с главной страницы сайта и их комментарии – по сути одна из тем форума в главном разделе.

"обычный пользователь" может создавать темы общем разделе, "специалист в области А" - в общем разделе и разделе А, "специалист в области Б" - в общем и в разделе Б.

15. При регистрации в группу "обычный пользователь" достаточно чтобы пользователь ввел правильно капчу. Несколько видов капчи. Защита от ботов.

16. При регистрации в группу "специалист в области А" пользователь должен ввести капчу(защита от перебора правильных ответов) и успешно сдать тест по специальности "А".

9 вопросов из 10. Значение должно быть настраиваемым.

При не сдаче теста количество правильно отвеченных вопросов должно остаться неизвестным для пользователя. Но для администратора такая статистика должна собираться.

17. Механизм тестирования предполагает наличие пулов вопросов:

пул вопросов по теме Т1 - К1 (1000) вопросов,

пул вопросов по теме Т2 - К2 вопросов,

...

пул вопросов по теме Т10 - К10 вопросов.

18. Тест по специальности "А" на 10 вопросов состоит:

40% вопросов по теме Т1 (=4 шт.),

30% вопросов по теме Т2 (=3 шт.)

30% вопросов по теме Т3 (=3 шт.)

19. После успешного завершения регистрации, новый пользователь получает первоначальное количество кармы:

"обычный пользователь" - X баллов,

"специалист в области А"- Y баллов,

"специалист в области Б"- Z баллов,

20. Если комментарий набирает отрицательное число баллов рейтинга, то к нему применяется один из цветовых эффектов:

от 0 до -5 - эффект1,

от -5 до -15 - эффект2,

от -15 и ниже - эффект3.

Диапазон должен быть настраиваемым. Вид эффектов, тоже (отправной точкой можно считать применение определённого стиля css, цвет текста).

21. Если комментарий написан пользователем из группы "обычный пользователь", он по умолчанию имеет эффект1.

Если этот комментарий наберёт положительный рейтинг - эффект1 убирается.

Если в течении времени положительный рейтинг становиться отрицательным - применяются эффекты описанные в предыдущем пункте.

Всё, что не оговорено, выполняется на усмотрение исполнителя.

Приёмка результата работы:

1. Вы запускаете сайт на своём хостинге.

2. Вы предоставляете доступ (учётные записи).

3. Я логинюсь, проверяю выполнение каждого пункта.

4. Вы попутно отвечаете на возникающие вопросы.

5. Если всё хорошо - вы получаете деньги.

6. Вы передаёте весь код и сопутствующие материалы.

7. Вы получаете отзыв о качестве вашей работы.

Готов рискнуть своим временем и рассмотреть кандидатов без портфолио и положительных отзывов.

12 лет назад
piviak
44 годаРоссия
12 лет в сервисе
Был
12 лет назад