[Ideas] - Идеи, вопросы, проблемы, предложения. Обратная связь с возможностью голосования.

Идеи, вопросы, проблемы, предложения.


Виджет обратной связи с возможностью голосования для MODX. Своеобразный аналог сервиса reformal.ru.



Виджет крепится сбоку, в виде кнопки



По клику — вызывается модальное окно


Из «коробки» мы сразу получаем приятный, ненавязчивый дизайн, в том числе адаптивную версию.


Дизайн компонента — естественно можно отключить и подготовить свой собственный.

Предлагаемая логика работы:


1. Пользователь сайта — предлагает идею, задает вопрос или сообщает о проблеме в соответствующем окне.

2. Пост сохраняется в базе и получает статус на рассмотрении

3. Администратор получает уведомление о новой записи, модерирует и публикует ее. При необходимости назначает соотвествующий статус, к примеру Запланировано

4. Новые посетители сайта видят опубликованный пост и голосуют кнопками Согласен, Не Согласен. Таким образом мы получаем рейтинг постов и возможность сортировки по рейтингу.

Основные возможности пакета «Идеи»:


  1. Три типа идей из коробки: Идеи, Вопросы, Проблемы. Есть возможность изменения и добавления новых типов

  2. Пять статусов для идей из коробки: На рассмотрении, Запланировано, Отклонено, Выполнено, Делается Легко добавить свои статусы…
  3. Управление постами из админки, в том числе добавление новых постов

  4. Возможность предлагать идеи и голосовать анонимам (опция в системных настройках компонента)

Параметры компонента


  1. Разрешить jquery modal — опция подключает библиотеку, для показа модального окна с компонентом. Также здесь подключается библиотека iziToast — всплывающие уведомления
  2. Разрешить iziToast — опция подключает библиотеку для показа красивых всплывающих уведомлений
  3. Разрешить предлагать идеи анонимам — по умолчанию нет
  4. Публиковать идеи сразу без модерации — по умолчанию нет
  5. Разрешить голосовать анонимам — по умолчанию да
  6. Шаблон письма администратору о новой идее — в комплекте приличный email шаблон
  7. Статус публикации новой идеи — По умолчанию На рассмотрении
  8. Путь к основному css файлу фронтэнда — можно указать свой css
  9. Путь к основному js файлу фронтэнда — можно указать свой js
  10. Email администратора — для отправки уведомлений, по умолчанию emailsender

Установка и использование


В комплекте всего один сниппет и один чанк оформления.

Компонент по задумке работает в модальном окне. Все необходимые библиотеки, скрипты и стили поставляются вместе с компонентом. И простой вызов сниппета на странице — выведет фиксированную кнопку и модальное окно по клику на эту кнопку.

После установки компонента вызовите сниппет ideas — больше ничего делать не нужно.
Сниппет работает на основе pdoTools и использует его классы. Наличие данного компонента, как зависимости — обязательно! При установке компонента — наличие pdoTools будет проверено. В случае его отсутствия — он будет установлен автоматически.

Параметры сниппета:
  • limit — Количество записей, по умолчанию 20
  • sortby — Сортировка. По умолчанию — по дате создания. Для сортировки доступны поля name, status, user_id, createdon, updatedon, type, vote_for, vote_aganist
  • sortdir — направление сортировки. По умолчанию — asc
  • tpl — шаблон оформления — по умолчанию tpl.ideas.tpl
  • resource_id — id страницы, для ограничения вывода идей по заданной странице. По умолчанию ограничений по странице нет
Вызывается виджет очень просто.
В любом месте страницы просто напишите сниппет
[[!ideas]]
Такой пример сгенерирует на странице кнопку, и скрытое модальное окно с виджетом.

Если хотите вызвать идеи, привязанные только к определенной странице пишем так:
[[!ideas?
    &resource_id=`1`
]]
где 1 — это id нужной нам страницы

В случае если вы хотите создать отдельные страницы по типам записей, статусам или пользователям — достаточно немного переписать исходный сниппет, добавив условие выборки. Возможно такой функционал появится в следующих версиях.

Вживую на виджет можно посмотреть здесь megawebs.kz/modx-ideas
Вы всегда можете бесплатно протестировать работу компонента на площадке modx.pro.
modstore.pro/help#help/3/3
Доработать компонент индивидуально под ваш проект тоже возможно — для этого свяжитесь со мной любым удобным способом. Все контакты в профиле.
Николай Савин
25 ноября 2018, 12:09
3
677
+11
Поблагодарить автора Отправить деньги

Комментарии: 19

Sem
Sem
25 ноября 2018, 19:25
+1
Отличный компонент, дизайн не нужен, всё равно переделывать придётся, главное возможность всё оформить по-своему чтобы была.
Иван
25 ноября 2018, 21:04
+3
Привет, Николай.
1. Намётка выглядит шикарно, однозначно перспективная задумка.
2. Дизайн хороший, БЕЗУСЛОВНО, нужен. Всегда и во всём. Посудите сами — красивая админка MODX и, вдруг, убожество в пакете — не смотрится, согласитесь. Однако для дефолтной базы вполне хорош тот, что я вижу на скрине — не думаю, что нужно перекрашивать.
3. Я бы предложил Вам сделать эту приложение более универсальным, алгоритмизировать его под более широкий спектр задач не проблема. Зато на выходе это даст Вам мощный профит в виде широкого спектра решаемых задач === более высокая покупательная перспектива.

Ниже моё мнение, какие реально боевые задачи, на вскидку, стоит-могло бы решать намеченное Вами приложение (включая указанные Вами):
1. Идеи
2. Проблемы
3. Предложения
4. Обратная связь с возможностью голосования.
5. Статьи
6. Отзывы
7. Вопрос-ответ
8. Баг-трекер
9. Нашли ошибку-сообщите нам
10. Комментарии
11. Проблемы и их решения
12. ХауТу
13. Платные-бесплатные консультации

Лично мне на данный момент кажется, что я буду рад реализации данной задумки (если она будет достаточно широко применима).
Степан Прищепенко
26 ноября 2018, 09:07
0
По картинкам понравилось, если добавить древовидную стрктуру, то будет todolist
    Николай Савин
    26 ноября 2018, 09:12
    +1
    А зачем в todolist древовидная структура? Это же простой список дел, если я все верно понял. Или ты имеешь ввиду подпункты?
      Степан Прищепенко
      26 ноября 2018, 09:19
      0
      Да я имел ввиду подпункты, чтоб большое задание разбивать.
        Николай Савин
        26 ноября 2018, 09:34
        +1
        Ну смысл компонента все таки в одиночных предложениях по задумке. Но ок. Предложение я учту, может и правда такое нужно будет кому то
Иван Кизименко
26 ноября 2018, 15:06
+3
Нужен демо сайт
W.H.I.T.E
09 января 2019, 12:33
0
Предлагаю пару идей:
1) В админке хранить дату создания заявки (чтобы потом можно было выбрать период и посмотреть кол-во заявок)
2) Добавить на форму поддержку каптчи
    Николай Савин
    09 января 2019, 12:35
    0
    Дата хранится само собой.
    Капча здесь не нужна, достаточно встроенной проверки на ajax запрос. На крайний случай добавлю поддержку crsf токена.
      W.H.I.T.E
      09 января 2019, 12:54
      0
      Николай, не совсем правильно выразился, хотелось бы видеть дату в самой админке, перед колонкой с ID. Чтобы с в ext js не лезть. Решение из коробки прям.
        Николай Савин
        09 января 2019, 12:57
        0
        Это можно — выберу время добавлю. Спасибо за мнение.
      W.H.I.T.E
      09 января 2019, 12:58
      0
      Как идея для следующего вашего компонента — система управления заявками в IT. Пытаюсь сейчас этот компонент приспособить, но много чего не хватает(
      Если интересно — могу ниже или в ЛС написать идеальный вариант. Уверен будет спрос.
        Николай Савин
        09 января 2019, 13:00
        0
        Да интересно — присылайте ваше видение.
          W.H.I.T.E
          09 января 2019, 13:53
          0
          По сути все тоже самое, что уже есть, только в форме добавить 2 поля:
          1-е Выберите Отдел (отделы задаются в админке)
          2-е Выберите проблему (Или руками вводим, или выбираем из того что есть, примеры — проблема с принтером, замена мыши и т.д), можно добавить эти поля в админке.

          Дальше нужны добавить пару полей в Админку

          1) Заявки_по_дате (выбирается диапазон дат) — для генерации отчета
          2) Ответственное_лицо (тот человек, кто взял на себя заявку, можно выбрать из списка, ну или назначить), а они уже статус будут менять

          В идеале, можно реализовать генерацию отчета для просмотра степени загруженности каждого из сис.админа за указанный период.
          Это максимально упрощенная идея, можно что-то подумать про временные шкалы, в которые необходимо решить проблему. Про уведомление о просроченных заявках. Но как по мне, это уже лишнее, ведь юзверю нужно вчера, а загруженность он не знает.
Maxim
02 февраля 2019, 15:50
0
на мобильных устройствах окно виджета размещено где-то ближе к середине страницы, не так как на десктопе сбоку. По моему — это может мешать просмотру страницы
Андрей
03 февраля 2019, 22:16
0
В дефолтном чанке tpl.ideas.tpl небольшая опечатка, закрывается параграф, которого не должно быть:

<a href="#ideas" id="ideasBtn" rel="modal:open">Идеи и предложения</a></p>
Александр
27 марта 2019, 09:09
0
Было бы классно если была возможность обсуждать идеи, т.е. пользователь создал идею, а другие пользователи ее обсуждают, по сути пишут комментарии к идее.
Николай Савин
27 марта 2019, 19:14
0
@Андрей @Maxim Спасибо поправлю
@Александр  Да нечто подобное в планах было, но компонент не пользуется спросом, как следствие и дорабатывать его желания мало, по крайней мере пока есть работа с более востребованными компонентами. Может быть когда нибудь руки и дойдут
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.