Estomel 1 04/03/2020 03:02 AM (edited) Всем привет, все помнят плагин Advanced Reputation System для ipb 3.4 ? подобная система еще стояла на давно умершем pbhack. Так вот, нужен точно такой же плагин но на ips 4.4 ! (уж не знаю масштаб работы, плагин это будет или приложение но факт в том что нужна прям копия по функционалу!) Изменение репутации нажатием пальца вверх или вниз прям на полоске репутации Скрытый текст Если полоска репутации доходит до цифр то они меняют цвет Скрытый текст При нажатии на палец можно указать причину повышения либо понижения репутации Скрытый текст При нажатии на цифры расположенные на полоске репутации чтобы появлялось окно где показаны все изменения репутации этого пользователя которые он когда либо получал разделенные на страницы, короче включена пагинация ( ник того кто поставил репу, его комментарий, время когда было изменение репы, "источник" где эта репутация поставилась и количество поставленной репы ) Скрытый текст Возможность указать в админке сколько ( + плюсов ) или ( - минусов ) будет поставлено за раз в зависимости от количества репутации того кто выставляет репутацию ( Например если у меня репутация больше 20 то я всем буду ставить не +1 а например +5 репутации за раз и т.д. чтобы эти значения можно было менять и значения выделенные красным и значения выделенные синим ) Скрытый текст Возможность указать в админке на выбор выставлять максимальное количество репутации которое можно поставить одному пользователю за 1 день. от одного раза в день одному пользователю и до неограниченного количества раз ( чтобы значение было изменяемым ) Скрытый текст И самое главное, чтобы в админке можно было настроить уровни репутации добавляя или удаляя блоки Например репутация от +1 и до +50 цвет полоски или изображение например зеленый, чтобы мог добавить например второй блок от +51 и до +150 цвет полоски или изображение такой то и чтобы этих блоков можно было добавить бесконечно ( чтобы на любой диапазон репутации у меня была возможность указать цвет заполняемой полоски или изображение ) вполне подойдет система как на Advanced Reputation System когда полупрозрачная серая подложка и под нее добавляется цвет ну как я понял может конечно там и не так Скрытый текст Пишите в тему кто готов взять на себя реализацию данного плагина или приложения уж не знаю что это будет и за сколько готовы выполнить! PS: Данный функционал на 1000% возможно реализовать! я лично своими глазами видел работу данного функционала на своем форуме, данный функционал писал FoLez бесплатно но на скорую руку и не плагином а костылями и прямыми правками в шаблоне и в базе данных но из-за проблем на сервере у меня слетела база и все перестало работать. Вот доказательство, фотка с моего старого сайта (я тогда делал рип pbhack) Скрытый текст FoLez даже графические ники делал для ips 4 Скрытый текст сейчас данный функционал не работает, полоска теперь просто как индикатор репутации без функционала (ее можно увидеть на моем сайте) а при попытке поставить репу через полоску появляется вот такое сообщение Скрытый текст Но факт остается фактом, такое сделать можно и раньше это работало! поэтому знающие люди кто сможет реализовать данный функционал отпишитесь плиз! очень нужен данный плагин для ips 4.4! Edited April 3, 2020 by Estomel привел в чуть более красивый вид Share this post Link to post
siv1987 2,629 04/03/2020 03:38 PM 12 часов назад, Estomel сказал: FoLez бесплатно но на скорую руку и не плагином а костылями и прямыми правками в шаблоне и в базе данных но из-за проблем на сервере у меня слетела база и все перестало работать. Сталкивался я с плагинами данного автора, это был тот еще треш. То что сделать можно никто не сомневается, ничего сложного тут вроде нету. Конечно по уму надо приложение создавать для такого функционала, но если не сильно заморачиваться можно просто допилить уже существующий мод раз такой уже есть, это будет не сильно дорого да и времени много не отнимет, а лично для время это самая большая проблема. 1 Share this post Link to post
Estomel 1 04/03/2020 04:03 PM 11 минут назад, siv1987 сказал: если не сильно заморачиваться можно просто допилить уже существующий мод раз такой уже есть Сможете допилить? доступ к админке, фтп и бд предоставлю если нужно, только из правок Фолза сохранились только полностью измененный код "reputationBadge" из которого я вырезал временно пальцы повышения и понижения с полоски и 2 файла по пути core > global > plugins Один из файлов полная копия "reputationBadge" только не обрезанный мной и называется он "RepThemeEdit" и второй файл по этому же пути называется "AdvRepShow" и на сколько я понял это то самое модальное окно которое появляется при нажатии на полоску и показывает кто и когда изменял репутацию определенному пользователю. напишите в лс если возьметесь и сколько мне это будет стоить) Share this post Link to post
siv1987 2,629 04/04/2020 01:46 PM Покажите что у вас есть, цена будет зависеть от того придется писать с сначала или можно будет обойтись правками. Share this post Link to post
Estomel 1 04/04/2020 07:25 PM 5 часов назад, siv1987 сказал: Покажите что у вас есть, цена будет зависеть от того придется писать с сначала или можно будет обойтись правками. core > global > plugins > RepThemeEdit {{ $member = \IPS\Member::loggedIn(); }} {{ $author = $comment->author(); }} {{if $author->pp_reputation_points < 0 }} {{ $have = 100; }} {{ $colorbg = '/uploads/img/reputation/0bg.jpg'; }} {{elseif $author->pp_reputation_points < 50 }} {{ $percent = 50/100; }} {{ $have = ($author->pp_reputation_points) / $percent; }} {{ $colorbg = '#ff0000'; }} {{elseif $author->pp_reputation_points < 100 }} {{ $percent = 50/100; }} {{ $have = ($author->pp_reputation_points - 50) / $percent; }} {{ $colorbg = '/uploads/img/reputation/2bg.jpg'; }} {{elseif $author->pp_reputation_points < 500 }} {{ $percent = 400/100; }} {{ $have = ($author->pp_reputation_points-100) / $percent; }} {{ $colorbg = '/uploads/img/reputation/3bg.jpg'; }} {{elseif $author->pp_reputation_points < 1000 }} {{ $percent = 500/100; }} {{ $have = ($author->pp_reputation_points-500) / $percent; }} {{ $colorbg = '/uploads/img/reputation/4bg.jpg'; }} {{elseif $author->pp_reputation_points < 10000 }} {{ $percent = 9000/100; }} {{ $have = ($author->pp_reputation_points-1000) / $percent; }} {{ $colorbg = '/uploads/img/reputation/5bg.jpg'; }} {{elseif $author->pp_reputation_points < 50000 }} {{ $percent = 40000/100; }} {{ $have = ($author->pp_reputation_points-10000) / $percent; }} {{ $colorbg = '/uploads/img/reputation/6bg.jpg'; }} {{elseif $author->pp_reputation_points < 100000 }} {{ $percent = 50000/100; }} {{ $have = ($author->pp_reputation_points-50000) / $percent; }} {{ $colorbg = '/uploads/img/reputation/7bg.jpg'; }} {{elseif $author->pp_reputation_points > 100000 }} {{ $have = 100; }} {{ $colorbg = '/uploads/img/reputation/8bg.jpg'; }} {{endif}} {{ $lost = 100 - $have; }} {{ $have = number_format($have, 2, '.', ''); }} {{ $lost = number_format($lost, 2, '.', ''); }} {{$url = base64_encode( $comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->pid ) ) );}} <li style="margin: 5px 0; max-width: 180px; display: inline;"> <div class="a_a_r"> <div class="progress_rep"> <div class="progress" style="width: {$have}%;background: url({$colorbg});"></div> </div> <div class="colorWhite repText" style="width: {$have}%;"> <div class="hideRepText">{$author->pp_reputation_points}</div> </div> <div class="colorBlack repText" style="width: {$lost}%;"> <div class="hideRepText">{$author->pp_reputation_points}</div> </div> <div class="colorNone repText"> <div class="hideRepText" data-controller="plugins.advrep"> {{if $member->member_id != $author->member_id }} <a data-ipsDialog data-ipsDialog-size="medium" data-ipsDialog-title="Понизить репутацию пользователю {$author->name}" href="{url="app=core&module=system§ion=plugins&do=reputationReact&url=$url&author=$author->member_id&pid=$comment->pid&type=down" csrf="1"}" class="repChangeImg"> <i class="fa fa-thumbs-down"></i> </a> {{endif}} <a style="margin: 0 5px;" data-ipsDialog data-ipsDialog-size="medium" data-ipsDialog-title="Репутация пользователя {$author->name}" href="{url="app=core&module=system§ion=plugins&do=reputationShow&author=$author->member_id" csrf="1"}" class='colorNone'>{$author->pp_reputation_points}</a> {{if $member->member_id != $author->member_id }} <a data-ipsDialog data-ipsDialog-size="medium" data-ipsDialog-title="Пвысить репутацию пользователю {$author->name}" href="{url="app=core&module=system§ion=plugins&do=reputationReact&url=$url&author=$author->member_id&pid=$comment->pid&type=up" csrf="1"}" class="repChangeImg"> <i class="fa fa-thumbs-up"></i> </a> {{endif}} </div> </div> </div> </li> core > global > plugins > AdvRepShow <ol class="ipsDataList ipsDataList_zebra ipsClear"> {{if count($historys) > 0 }} {{foreach $historys as $history}} {{ $rep_rating = $history['a_value']; }} {{ $rep_date = $history['a_date']; }} {{ $rep_reason = $history['a_comment']; }} {{ $rep_member = \IPS\Member::load( $history['a_member'] ); }} <li class="ipsDataItem ipsDataItem_responsivePhoto"> <div class="ipsDataItem_icon"> <div class='rep_rating'> {{if intval($rep_rating) > 0}} <div class='rep_rating rep_positive'>{$rep_rating}</div> {{else}} <div class='rep_rating rep_negative'>{$rep_rating}</div> {{endif}} </div> </div> <div class="ipsDataItem_main"> <h4 class="ipsDataItem_title ipsContained_container"> <span class="ipsType_break ipsContained"> {$rep_member->link()|raw} </span> </h4> <div class="ipsDataItem_meta ipsType_reset ipsType_light ipsType_blendLinks"> <span class='rep_reason'> {{if empty( $rep_reason )}} <i>??????? ?? ???????</i> {{else}} {$rep_reason|raw} {{endif}} </span> </div> </div> <div class="ipsDataItem_stats"> {{if $history['a_pid'] > 0 AND $history['a_tid'] > 0 }} {{$url = base64_decode($history['a_url']);}} <span class='rep_date'> <a href="{$url}">????????</a> </span> {{endif}} <span class='rep_date'>{datetime="$rep_date"}</span> </div> </li> {{endforeach}} {{else}} <li class="ipsDataItem ipsDataItem_responsivePhoto"> <div class="ipsDataItem_main"> <h4 class="ipsDataItem_title ipsContained_container"> <span class="ipsType_break ipsContained"> ????? ???????????? ??? ????? ?? ??????? ????????? </span> </h4> </div> </li> {{endif}} </ol> core > global > reputationBadge {{if $author->pp_reputation_points < 0 }} {{ $have = 100; }} {{ $colorbg = '/uploads/img/reputation/0bg.jpg'; }} {{elseif $author->pp_reputation_points < 50 }} {{ $percent = 50/100; }} {{ $have = ($author->pp_reputation_points) / $percent; }} {{ $colorbg = '/uploads/img/reputation/1bg.jpg'; }} {{ $minwidth = 'nomw'; }} {{elseif $author->pp_reputation_points < 100 }} {{ $percent = 50/100; }} {{ $have = ($author->pp_reputation_points - 50) / $percent; }} {{ $colorbg = '/uploads/img/reputation/2bg.jpg'; }} {{elseif $author->pp_reputation_points < 500 }} {{ $percent = 400/100; }} {{ $have = ($author->pp_reputation_points-100) / $percent; }} {{ $colorbg = '/uploads/img/reputation/3bg.jpg'; }} {{elseif $author->pp_reputation_points < 1000 }} {{ $percent = 500/100; }} {{ $have = ($author->pp_reputation_points-500) / $percent; }} {{ $colorbg = '/uploads/img/reputation/4bg.jpg'; }} {{elseif $author->pp_reputation_points < 10000 }} {{ $percent = 9000/100; }} {{ $have = ($author->pp_reputation_points-1000) / $percent; }} {{ $colorbg = '/uploads/img/reputation/5bg.jpg'; }} {{elseif $author->pp_reputation_points < 50000 }} {{ $percent = 40000/100; }} {{ $have = ($author->pp_reputation_points-10000) / $percent; }} {{ $colorbg = '/uploads/img/reputation/6bg.jpg'; }} {{elseif $author->pp_reputation_points < 100000 }} {{ $percent = 50000/100; }} {{ $have = ($author->pp_reputation_points-50000) / $percent; }} {{ $colorbg = '/uploads/img/reputation/7bg.jpg'; }} {{elseif $author->pp_reputation_points > 100000 }} {{ $have = 100; }} {{ $colorbg = '/uploads/img/reputation/8bg.jpg'; }} {{endif}} {{ $lost = 100 - $have; }} {{ $have = number_format($have, 2, '.', ''); }} {{ $lost = number_format($lost, 2, '.', ''); }} <div style="margin: 5px 0;"> <div class="a_a_r"> <div class="progress_rep"> <div class="progress {$minwidth}" style="width: {$have}%;background-image: url({$colorbg});"></div> </div> <div class="colorWhite repText" style="width: {$have}%;"> <div class="hideRepText">{$author->pp_reputation_points}</div> </div> <div class="colorBlack repText" style="width: {$lost}%;"> <div class="hideRepText">{$author->pp_reputation_points}</div> </div> <div class="colorNone repText"> <div class="hideRepText"> <span class='colorNone'>{$author->pp_reputation_points}</span> </div> </div> </div> </div> это все что есть Share this post Link to post
siv1987 2,629 04/09/2020 06:58 AM Ну понятно, этот код еще тянется с третьей версией этого хука. Можно попробовать на основе него что нибудь собрать. Больше ничего не сохранилось? Share this post Link to post
Estomel 1 04/09/2020 12:38 PM 5 часов назад, siv1987 сказал: Ну понятно, этот код еще тянется с третьей версией этого хука. Можно попробовать на основе него что нибудь собрать. Больше ничего не сохранилось? на сколько я знаю больше ничего, хотя есть старая база данных со старого сайта может там он что добавлял в базе, только там половина базы в вопросах из-за кодировки... Share this post Link to post
siv1987 2,629 04/09/2020 12:45 PM База данных не особа интересует. Может файлы плагина /plugins/advrep/ или правки в /applications/core/modules/front/system/plugins.php Share this post Link to post
Estomel 1 04/09/2020 12:52 PM 4 минуты назад, siv1987 сказал: База данных не особа интересует. Может файлы плагина /plugins/advrep/ или правки в /applications/core/modules/front/system/plugins.php нет, файлы сайта не сохранились, только шаблон в котором я нашел правки что указал выше и поломанная бд, больше ничего нет ( Share this post Link to post
siv1987 2,629 04/10/2020 05:36 PM Понятно. Тогда обработчик придется писать с начало. Будет время опробую посмотреть, по цене не знаю, посмотрим как пойдет. 1 Share this post Link to post
Brutalizer 0 06/23/2020 01:40 AM Всем привет! Есть информация по данному ТЗ? Хотелось бы тоже купить... Share this post Link to post