Автоматические баллы
2395 просмотров || Скачали 0 раз || Оставили 2 комментария


Баллы пользователя - это модуль с помощью которого можно автоматически буквально за пару секунд заказать различные услуги.
Баллы можно получить за активность на сайте (добавление новостей, файлов, фоток, постов и т.д.), баллы можно передать другому пользователю, купить награду за них.
И ещё есть несколько интересных функций:
- Ротатор ссылок, за n кол-во баллов ссылка появляется в блоке (в самом верху), при этом самая нижняя исчезает если ссылок больше .
- Повышение репутации, бот ставит от себя + купившему услугу

Баллы может изменить только администратор с id1

Установка:

Настройка PHP :
Создаем на сайте пользователя (пароль по сложней) и переносим его в группу администраторов, это будет ваш бот.
В папке "ball" открываем "config.php" в любом текстовом редакторе (советую "Notepad++") и редактируем под себя.
Готово! Заливаем папку "ball" в папку "scripts" через FTP.

Работа с шаблонами :
Заходим в панель управления "Настройки" -> "Общие настройки" -> "Разрешить использование API" -> Ставим галочку ("API key" - НЕ надо).

Открываем код "Персональная страница пользователя" и после

Code
<?if($AWARDS_READ_URL$ || $_REP_READ_URL$)?>.....<?endif?>


Ставим:

Code
<!--uBall<<?$AWARDS$*5 + $_REPUTATION$*3 + $_FORUM_ENTRIES$*2 + $_RANK$*10 + $_COM_ENTRIES$?>>-->  
<style>  
.ball-tacles {width:100%;}  
.ball-tacles .theads {width:130px;background:#FBFBFB;color:#888888;font: 11px Tahoma}  
.ball-tacles, .ball-tacles td {border:1px solid #E4E4E4;font: 11px Tahoma}  
.ball-tacles {border-width:1px 0px 0px 1px}  
.ball-tacles td {border-width:0px 1px 1px 0px; height:26px; padding:0px 7px 0px 7px;}  
.xt-uHelp {background-position: 0 -300px;}  
.xt-uHelp-over {background-position: -15px -300px;}  
.ibl{float:left;width:35px}  
.ibl img{opacity:0.5}  
.cbl{margin-left:35px}  
.hbl{padding:5px}  
.b0{opacity:0.0}  
</style>  
<div class="udtb"><div class="udtlb">Баллы:</div> <span id="balls">Загрузка...</span></div>  
<script type="text/javascript">  
// by ВэйДлин - uPost.su  
var balls = <?$AWARDS$*5 + $_REPUTATION$*3 + $_FORUM_ENTRIES$*2 + $_RANK$*10 + $_COM_ENTRIES$?>, dt, dtm;  
function bls(){  
  new _uWnd('ball','Баллы пользователя ('+dt+declOfNum(dt, [" балл", " балла", " баллов"])+')',300,100,{align:'left',autosize:1,resize:0,customButtons: {  
  'uHelp': [true, function(){  
  new _uWnd('bHelp','Помощь',300,200,{align:'left',autosize:1,resize:0},'<fieldset><legend><b>Баллы пользователя</b></legend>Баллы пользователя - это модуль с помощью которого можно автоматически буквально за пару секунд заказать различные услуги. Баллы выдаются за активность на сайте, в профиле можно посмотреть за что и сколько баллов вы можете получить.</fieldset>');  
  }]  
  }},'<table class="ball-tacles" cellspacing="0" cellpadding="0"><tr><td><center><b>За что</b></center></td><td><center><b>Сколько</b></center></td></tr><tr><td class="theads"><b>$AWARDS$</b> '+declOfNum($AWARDS$, ["награда", "награды", "наград"])+':</td><td> <?$AWARDS$*5?></td></tr><tr><td class="theads"><b>$_REPUTATION$</b> '+declOfNum(<?$_REPUTATION$?>, ["единица", "еденицы", "единиц"])+' репутации:</td><td> <?$_REPUTATION$*3?></td></tr><tr><td class="theads"><b>$_FORUM_ENTRIES$</b> '+declOfNum($_FORUM_ENTRIES$, ["пост", "поста", "постов"])+' на форуме:</td><td> <?$_FORUM_ENTRIES$*2?></td></tr><tr><td class="theads"><b>$_COM_ENTRIES$</b> '+declOfNum($_COM_ENTRIES$, ["комментарий", "комментария", "комментариев"])+':</td><td> $_COM_ENTRIES$</td></tr><tr><td class="theads"><b>$_RANK$</b> ранг:</td><td> <?$_RANK$*10?></td></tr><tr><td class="theads"><b>Изменено:</b></td><td> '+dtm+'</td></tr></table>');  
}  
<?if($USER_ID$==1)?>function redball(){  
  new _uWnd('rbl','Изменение баллов',400,240,{align:'left',autosize:1,resize:0,oncontent:function(){  
  $('#rbl').click(function(){  
  $(this).attr('disabled', true);  
  $('#rblc').html('<img src="http://s54.ucoz.net/.s/img/wd/1/ajaxs.gif" border="0">');  
  $.get('/php/ball/index.php?w=change&i=$_USER_ID$&'+$('#whwr').val()+'='+$('#rbli').val(), function(data){  
  getball();  
  $('#rblc').html(data);  
  $('#rbl').attr('disabled', false);  
  });  
  });  
  }},'<fieldset><legend><b>Что сделать</b></legend><select size="1" id="whwr"><option value="p">Прибавить</option><option value="m">Отнять</option></select></fieldset><fieldset><legend><b>На сколько</b></legend><input style="width:100%" value="" id="rbli" type="text"></fieldset><fieldset><div id="rblc" style="float:left"></div><input type="button" id="rbl" style="float:right" value="Готово"></fieldset>');  
}<?endif?>  
function ballmod(){  
  new _uWnd('ballmod','Услуги сайта',400,340,{autosize:1,align:'left',oncontent:function(){  
  $('.hbl').mouseover(function(){  
  $(this).css('background', '#EDEDED');  
  $(this).children('div.ibl').children('img').stop().animate({'opacity':'1.0'},100);  
  $(this).children('div.cbl').children('span.b0').stop().animate({'opacity':'1.0'},160);  
  }).mouseout(function(){  
  $(this).css('background', '').children('div').children('img').stop().animate({'opacity':'0.5'},100);  
  $(this).children('div.cbl').children('span.b0').stop().animate({'opacity':'0.0'},100);  
  });  
  }},{url:'/php/ball/index.php?w=listmod',xml:false});  
}  

function declOfNum(number, titles){  
  number = number<0 ? -1*number : number;  
  cases = [2, 0, 1, 1, 1, 2];  
  return titles[ (number%100>4 && number%100<20)? 2 : cases[(number%10<5)?number%10:5] ];  
}  
function getball(){  
  $.get('/php/ball/index.php?w=get&i=$_USER_ID$', function(data){  
  dt = + data, dtm = dt, dt = dt + balls;  
  $('#balls').html('<a href="javascript://" onclick="bls()">'+dt+'</a><?if($_IS_OWN_PROFILE$)?> [ <a href="javascript://" onclick="ballmod()">Услуги</a> ]<?endif?><?if($USER_ID$==1)?> [ <a href="javascript://" onclick="redball()">Изменить</a> ]<?endif?>');  
  });  
}  
getball();  
</script>  
<script type="text/javascript" src="/php/ball/index.php?w=datamod&m=allmod"></script>


Теперь передача баллов, после

Code
<?if($_PM_SEND_URL$)?>.....<?endif?>


Ставим:

Code
<?if(!$_IS_OWN_PROFILE$ && $USER_LOGGED_IN$)?>  
  <div style="padding-top:4px;"">[ <a href="javascript://" onclick="b_send()">Отправить баллы</a> ]</div>  
  <script type="text/javascript">var USER_ID = $_USER_ID$;</script>  
  <script type="text/javascript" src="/php/ball/index.php?w=datamod&m=send"></script>  
<?endif?>


------- Ротатор ссылок
Вы покупаете ссылку за баллы и она появляется в самом верху блока, при этом самая нижняя исчезает если ссылок больше 5 (значение меняеться).

Установка очень проста, вставляем код в блок на сайте, сохраняем и готово! Код можно вставить в любое место на сайте где хотите видеть ссылки.

Code
<div id="blk">Загрузка...</div>  
<?if($USER_LOGGED_IN$)?>  
  <hr> [ <a href="javascript://" onclick="b_links()">Добавить ссылку</a> ]  
  <script type="text/javascript" src="/php/ball/index.php?w=datamod&m=links"></script>  
<?endif?>  
<script type="text/javascript">$('#blk').load('/php/ball/index.php?w=links&t=get');</script>


Все!

Кстати, чтобы скрипт работал - нужно оплатить использование PHP для вашего сайта

Автор: ВэйДлин
Сайт автора: http://upost.su



Категория: Пользователи | Добавил: Endless | Теги: баллы, автоматические
Всего комментариев: 2
2 Endless   (27.02.2012 13:36)
[Материал]
cryengen3,
+1   Спам
1 cryengen3   (23.02.2012 17:01)
[Материал]
последняя строчка обламывает...обламывает тех у кого нет 65 рублей в месяц king