Sergeich |
|
---|---|
Давным давно этот плагин разрабатывался, но не помню довели его до ума или нет.
Хотелось бы глобальный плагин (или даже модуль), который позволит пользователям ставить плюсы-минусы статьям, комментариям, сообщениям на форуме. В общем то, функционал кармы Хабра и Пикабу с оговорками. На базе кармы можно будет выстроить некоторое взаимодействие с юзерами (кармадрочество) и автомодерацию контента. Думаю это могло быть полезным. |
Alex300 |
|
---|---|
Плагин кармы очень давнишний. Свежей версии не попадалось. Сейчас работаю над новой версией плагина Thanks (Like). Но закончу его после очередного релиза т.к. он будет использовать фичи, которые появились в свежей бета версии. Есть миры, не здесь, там, где небеса горят, и моря засыпают, и реки дремлют; люди сделаны из дыма, а города – из песен. Где-то опасность, где-то несправедливость, даже где-то остыл чай. Идем Эйс, у нас много работы!...
...Sorry for my english... Бесплатные расширения для Cotonti: https://lily-software.com/free-scripts/ |
Kabak |
|
---|---|
#48262 Alex300: А можно чтобы он был полностью совместим с предыдущей версией и автоматически похватывал базу данных от предыдущей версии которую допиливал Kort ? ссылка на версию от Kort ( работает на последней версии движка )
|
Sergeich |
|
---|---|
Всё же плагин "Спасибо", это несколько другое, можно сказать - это частный случай Кармы. Рейтинг страниц (звёздочки) - это тоже частный случай Кармы. Было бы прикольно сделать универсальную штуку, которую можно прикручивать к любым сущностям, по необходимости. |
Kabak |
|
---|---|
Thanks можно дописать до нужнонго вам функцилонала
Его уже можно прикручивать к чему угодно. Осталось сделать не только + но и - Но это сомнительная возможность, потому, что кто не ставит + , значит ставит - или вообще не ставит ничего - безразлично и человек не голосует.
+ - вполне достаточно. Добавлено 2 минуты спустя: Вот на моём сайте работает этот планиг |
|
This post was edited by Kabak (2025-02-22 08:36, 2 months ago) |
Sergeich |
|
---|---|
Плагин Карма будет интересен сайтам с достаточно большим и активным сообществом. Игровые или развлекательные сайты. Можно к бирже прикрутить. Плюсы Кармы заключаются в наличии минусов (извините за тафтологию). Каждый объект с кармой имеет два счётика, "+" и "-", - это даёт возможность более точно его оценивать и манипулировать результатом. Варианты использования: Юзеры: - можно автоматически определять "полезность" пользователя и переводить его из группы в группу. Можно на основании кармы присваивать или отбирать те или иные плюшки. К примеру, плашку "Про" на той же бирже. - можно реализовать автобан токсичных пользователей. Комментарии: - можно скрывать заминусованные комментарии, выделять заплюсованные. Страницы: - автоматически снимать статьи с публикации при определёном уровне минусов. Это первое, что в голову пришло.
|
Kabak |
|
---|---|
А можно таким способом бороться с неугоднами пользователями или статьями и минусить карму какому-нибудь конкуренту. Способов много. Поэтому наличия только + устраняет борьбу с неугодными людьми и сообщениями
( мы просто высказываемся о плюсах и минусах всех фич ) |
Sergeich |
|
---|---|
Я понимаю. Можно и войну на сайте устраивать, это факт. Поэтому будет разумно предусмотреть механизм защиты от такого поведения. Добавлено 7 минут спустя: Кстати, а сколько такой плагин будет стоить (ну приблизительно), чтоб порядок цен понимать :) |
|
This post was edited by Sergeich (2025-02-22 14:02, 2 months ago) |
Kabak |
|
---|---|
#48276 Sergeich: А вы предложите механизм защиты сперва, чтобы точнее определить стоимость решения |
Sergeich |
|
---|---|
Первое, что приходит в голову, ограничение заряда минусомёта, по времени или другим параметрам. |
Kabak |
|
---|---|
т.е. велосипед ради велосипеда ? Проще убрать - и закрыть вопрос с накрутками , а заодно стимулировать особо недовольных высказываться, почему они против |
Sergeich |
|
---|---|
Карма анонимна, это и есть её плюс. Допустим я начну творить фигню, ты с этим не согласен и высказался публично, я обиделся и мы вместе развели публичный срач на ровном месте (люди разные бывают), втянув в эту войну окружающих. В конце мы оба друг друга ненавидим и начинаем пакостить по мелочи или просто перестаём конструктивно общаться. Если же мне анонимно накидали минусов и система меня автоматически ограничила, то как бы и претензии некому предъявить :). |
Kabak |
|
---|---|
Как бы есть админы и модераторы. Но, если кто-то сделает плагин в том виде в которм вы его хотите, я только ЗА |
Kopusha |
|
---|---|
"Первое что приходит в голову", "допустим" и тд - так это не работает от слова вообще. Для реализации какой то функциональности пишеться документация, хотя бы основная, после реализации, допиливания и тестирования - финальная документация, и уже по ней делается плагин/код/ что там еще. Нельзя "написать плагин кармы для ядра" который кстроит всех, нельзя даже приблизительно.
Likes and dislikesTable of content
На момент запуска работают два отдельных плагина подсчета лайков - ratings и ukarma. Основное их отличие - плагин ratings служит для оценивания какой либо сущности (комментария, фотографии, истории), изменяя значения рейтинга этой сущности, в то время как ukarma - оценивает автора сущности, изменяя значение ukarma в его профиле. Плагин Ratings умеет оценивать: истории (в диапазоне от 1 до 10) Плагин Ratings позволяет выставить оценку истории в диапазоне от 1 до 10. При оценивании рассчитывается срединий "вес" пользователя, который производит оценку, и данные записываются в таблицы rated, ratings и в таблицу сущности, оценка которой проводилась. В таблицу rated записывается каждая отдельная оценка, с записью того что оценено, кем, ip пользователя, дата оценки, сама оценка, и оценка с учетом "веса" пользователя. Сама оценка - это именно проставляемая оценка в виде 1-10, она же и отображается при завершении оценивания (если это первая оценка, если нет - то отображается средняя оценка). Оценка с учетом веса пользователя - записывается отдельно и именно она принимается во внимание при ранжировании сущностей по рейтингу. В таблицу ratings записывается средняя высчитанная оценка для оцениваемой сущности. Говоря проще - в rated пишуться все оценки для сущности каждая отдельной строкой, в ratings - для каждой сущности одна строка с общим результатом всех оценок. Так же общие результаты записываются в таблицу самой сущности - если это история - то в таблицу stories, если страница - то в pages. Для плагина ratings есть две "надстройки" - ratingsstories и ratingslike. Так как плагин ratings умеет оценивать только страницы (pages) то ratingsstories просто добавляет возможности оценивания историй (stories). Плагин ratingslike не рассчитывает средний вес пользователя - он просто записывает оценки в разрешенных диапазонах (например 1 или -1 для комментария, 1 для изображения или 1 для страницы раздела Questions). Ratingslike имеет другую задачу - он добавляет рейтинги для отдельных комментариев, привязанных к сущностям. При этом после оценки комментария данные про оценку точно так же записываються в таблицы rated, ratings и суммарная оценка - в саму таблицу комментариев (com). При оценивании комментариев оценка может быть только 1 или -1 и именно эти данные записываются в таблицы, тут нет оценок с учетом веса пользователя. При отображении комментариев они отображаются по разному в зависимости от суммы оценок этого комментария. Эти настройки задаються в конфиге плагна комментариев. Так же он добавляет возможность оценки одного файла-изображения, которое привязано к общедоступному альбому пользователя PFS либо к опубликованной истории. При оценивании он отображает сумму предыдущих оценок изображения, разрешает (если пользователь еще не ставил оценку) оценить изображения (только +1), и записывает в таблицы rated, ratings, files оценку для этого изображения. Так же в нем проверяется что страница, которую оценивают имеет родительскую категорию questions, и записывает в таблицы rated, ratings, pages оценку (только +1) для этой страницы.
Плагин Ukarma позволяет оценивать автора какой либо сущности. Плагин Ukarma умеет оценивать: автора истории (только +1) При выставлении оценки ukarma данные самой оценки записываются в таблицу ukrama в том виде в котором оценка была выставлена (то есть 1, -1). При этом для каждой вариации оценки ukarma есть свой коэфициент, то есть за оценку истории автору истории будет изменена карма (значение в его профиле) намного больше, чем за оценку его поста на форуме. А при оценке его статьи или записи блога - еще больше. Эти коэфициенты настраиваються в конфиге плагина. При оценивании будет проверено - разрешена ли оценка для данной сущности и автора а так же - находится ли оценка в разрешенном диапазоне. При соблюдении всех условий - оценка будет записана в таблицу ukrama, получена текущая карма пользователя из его профиля и произведена корректировка кармы в зависимости от выставленной оценки и коэфициента. После новое значение будет записано в профиль оцениваемого пользователя (автора сущности, которую оценивают). В конфигах ukarma задаются значения: минимальная карма для возможности влиять на карму других пользователей Значение кармы пользователя не только влияет на возможность что либо делать (создавать новые темы или посты на форумах) но и на средний "вес" пользователя, который нужен для подсчета в плагине ratings при оценивании историй.
Это только пример документации, она есть вся еще и на английском, и к ней прилагается еще и документация по собственно коду каждого куска логики. Что то типа такого (скопирована из wiki-движка документации потому такое форматирование): # Таблица $db_ratings **В таблице храниться сводная информация по всем оценкам одного элемента** ## **rating_id** auto increment ## **rating_code** **id элемента или код элемента** - для комментариев тут будет 4112 где 4112 это id комментария (com_id) ## **rating_area** **зона в которой оставлен рейтинг (модуль, плагин)** com files stories page ## **rating_state** **всегда 0, для дальнейшего использования** ## **rating_average** **средняя чистая оценка (среднее арифметическое оценок)** decimal(5,2) ## **rating_summ** **сумма всех оценок** int(11) ## **rating_realaverage** **средняя оценка с учетом веса пользователя (среднее арифметическое оценок realrating)** int(11) ## **rating_creationdate** **дата изменения поля (дата последней оценки)** ## **rating_text** **всегда null, для дальнейшего использования** ## **rating_item** **чистый id элемента (для комментариев рейтинги имеют rating_code вида like_com_id, тут хранится только com_id)** int(11) - для комментариев тут будет 667 где 667 это id элемента к которому комментарий (page_id для страниц, item_id для историй и тд) ## **rating_cout** **суммарное кол-во рейтингов данного элемента** int(11) И все это просто не реально сделать "в ядре" так как для логики каждого проекта оно уникально. А делать просто "плагин лайков" - их уже есть с десяток.
|