Главная » Файлы » Для uCoz » Скрипты PHP для Ucoz

Автоматические баллы на uCoz PHP
[ Скачать с сервера (10.0 Kb) ] 04.02.2012, 15:34


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

Стандартные модули:
- Возможность передачи баллов, при этом пользователю приходит ЛС о том что ему зачислили баллы
- Покупка награды за баллы
- Ротатор ссылок, за n кол-во баллов ссылка появляется в блоке (в самом верху), при этом самая нижняя исчезает если ссылок больше 5.
- Возможность изменения баллов прямо с профиля пользователя (Появляется кнопочка "Изменить" у администратора с id 1)
- Повышение репутации, бот ставит от себя + купившему услугу

Установка:

===== Настройка 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>

P.S. К этому скрипту можно легко подключать свои модули (просто заливая модуль в папку "moduls"), для тех кто знает PHP вот небольшая справка
Категория: Скрипты PHP для Ucoz | Добавил: Jeep  | Теги: PHP баллы для Ucoz |
Просмотров: 1130 | Загрузок: 84 | Жаловаться на материал | Рейтинг: 5.0/9
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]