Скрипт баллов для uCoz с возможностью передачи баллов


Скрипт баллов для uCoz с возможностью передачи баллов

2903
7.8 из 10
Проголосовало: 7




Отнятие/прибавление баллов пользователям очень простое (1 клик). Пользователь заполняет форму заказа услуги, вам в ЛС приходит такое сообщение

Вы выполняете услугу, переходите по ссылке, делаете 1 клик и все, готово. Баллы у пользователя отнялись/прибавились.

Требования:
— Модуль Блог
— 10 минут

Приступим:

1. Заходим в модуль Блог » настройки модуля. Настраиваем как на скрине.
2. Вид материалов блога

Code
<span class="ballEdit"><span class="plus">$OTHER1$</span><span class="minus">$OTHER2$</span><span class="log">$MESSAGE$</span></span>$MODER_PANEL$

Страница архива материалов в блоге, меняем $BODY$ на

Code
<div id="bFast">$BODY$</div>

3. Персональная страница пользователя перед </body>:

Code
<script type="text/javascript">balli = {table: function(all) {var res = "", tt = ["балл", "балла", "баллов"]; for (var i=0; i<all.length; i++) { var n = all[i][0], n2 = all[i][1], t2 = all[i][2], bans = all[i][3]; if (!bans) {res+='<tr><td width="50%"><b>' + n2 + '</b> ' + all[i][2][n2%10==1&&n2%100!=11?0:n2%10>=2&&n2%10<=4&&(n2%100<10||n2%100>=20)?1:2] + '</td><td width="50%"><b>' + n + '</b> ' + tt[n%10==1&&n%100!=11?0:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?1:2] + '</td></tr>';} else {res+='<tr><td width="50%"><b>' + n2 + '</b> ' + all[i][2][n2%10==1&&n2%100!=11?0:n2%10>=2&&n2%10<=4&&(n2%100<10||n2%100>=20)?1:2] + '</td><td width="50%"><b>- ' + n + '%</b> ' + tt[n%10==1&&n%100!=11?0:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?1:2] + '</td></tr>';}}; return res;}, open: function(){ var atbl = balli.table([[<?$_COM_ENTRIES$*2?>, $_COM_ENTRIES$, ["комментарий", "комментария", "комментариев"]], [<?$_FORUM_ENTRIES$*2?>, $_FORUM_ENTRIES$, ["сообщение на форуме", "сообщения на форуме", "сообщений на форуме"]], [<?$_LOAD_ENTRIES$*4?>, $_LOAD_ENTRIES$, ["файл", "файла", "файлов"]], [<?$_REPUTATION$*3?>, $_REPUTATION$, ["единица репутации", "единицы репутации", "единиц репутации"]], [<?$AWARDS$*3?>, $AWARDS$, ["награда", "награды", "наград"]]<?if($_BAN_PERCENT$)?>,[$_BAN_PERCENT$, <?$_BAN_PERCENT$/20?>, ["замечание", "замечания", "замечаний"], true]<?endif?>]), ee = balli.edit?'<tr><td width="50%">Изменено администрацией</td><td width="50%"><b>' + balli.edit + '</b> ' + ["балл", "балла", "баллов"][Math.abs(balli.edit)%10==1&&Math.abs(balli.edit)%100!=11?0:Math.abs(balli.edit)%10>=2&&Math.abs(balli.edit)%10<=4&&(Math.abs(balli.edit)%100<10||Math.abs(balli.edit)%100>=20)?1:2] + '</td></tr>':''; new _uWnd('b', 'Баллы', 360, 180, {customButtons: {<?if($GROUP_ID$='4' or $GROUP_ID$='3')?>'edit': [true, function(){ balli.changek(); }],<?endif?>'log': [true, function(){ _uWnd.alert(balli.log?balli.log:"Отсутствует", 'Лог изменения баллов', {w: 300, h: 100, tm: 40000}); }]}}, '<table id="tableball" width="100%" cellpadding="0" cellspacing="0"><tr><td width="50%">За что</td><td width="50%">Сколько</td></tr>' + atbl + ee + '</table>');},getEdit: function(num){<?if($_BLOG_ENTRIES$)?>$.get("$_BLOG_ACTIVITY_URL$?"+Math.random(), function(data){ var plus = parseInt($("#bFast .ballEdit:first .plus", data).text() || 0); var minus = parseInt($("#bFast .ballEdit:first .minus", data).text() || 0); balli.log = $("#bFast .ballEdit:first .log", data).html().replace(/\n/g, "<br>");$("#ballov").html(num+plus-minus);balli.edit = plus-minus;});<?else?>$("#ballov").html(num);balli.edit=0;<?endif?>},changek: function(type, numb, comment){ new _uWnd('c', 'Изменить баллы', 390, 130, {oncontent: function(){ setTimeout(function(){_uWnd.getbyname('c').checksize();},1000); if(type && numb && comment){ $("#commentChange").val(decodeURIComponent(comment)); $("#typechange option").eq(type=='plus'?0:1).attr("selected", true); $("#skolko").val(numb); } }}, '<fieldset><div class="rdv"><div class="ldv">Тип:</div> <select id="typechange"><option value="1">Прибавить</option><option value="2">Отнять</option></select></div><div class="rdv"><div class="ldv">На сколько:</div> <input type="text" id="skolko"></div><div class="rdv"><div class="ldv">Комментарий:</div><textarea id="commentChange" style="height: 40px;"></textarea></div><div class="rdv"><div class="ldv" id="statusChange"> </div><input type="button" onclick="balli.changeBall();" value="Изменить"></div></fieldset>');},changeBall: function(){$("#statusChange").html(""); if (! /^\d+$/.test($("#skolko").val()) ) {$("#statusChange").html("<img src='http://ucodes.ru/upload/icons/error.png' border='0' align='absmiddle'> Вы ввели не число");return;} if (parseInt($("#ballov").text())<parseInt($("#skolko").val()) && $("#typechange").val()==2) {$("#statusChange").html("<img src='http://ucodes.ru/upload/icons/error.png' border='0' align='absmiddle'> Недостаточно баллов");return;} $("#statusChange").html("<img src='http://ucodes.ru/upload/icons/load.gif' border='0' align='absmiddle'> Загрузка..."); $.get("/blog/0-0-0-0-17-$_USER_ID$?"+Math.random(), function(data){ var log = $("#bFast .ballEdit:first .log", data).text() || "", plus = parseInt($("#bFast .ballEdit:first .plus", data).text() || 0), minus = parseInt($("#bFast .ballEdit:first .minus", data).text() || 0); typ = $("#typechange").val(), vv = parseInt($("#skolko").val() || 0); if (typ==1) {plus=plus+vv;}else {minus=minus+vv;} $.get("/blog/0-0-0-0-1", function(addData) {$.post("/blog", {user: '$_USERNAME$',other1: plus,other2: minus,brief: log.replace(/<br>/g, '\n')+ '\n' + $("#commentChange").val(),a: 2,ssid: $("input[name='ssid']", addData).val()}, function(re){if ($(re).text().indexOf("успешно") != -1) { $("#statusChange").html("<img src='http://ucodes.ru/upload/icons/ok.png' border='0' align='absmiddle'> Баллы изменены");}else { $("#statusChange").html("<img src='http://ucodes.ru/upload/icons/error.png' border='0' align='absmiddle'> Error");}});});});}}; balli.getEdit(<?ifnot($_BAN_PERCENT$)?><?$_COM_ENTRIES$*2 + $_FORUM_ENTRIES$*2 + $_LOAD_ENTRIES$*4 + $_REPUTATION$*3 + $AWARDS$*3?><?else?><?($_COM_ENTRIES$*2 + $_FORUM_ENTRIES$*2 + $_LOAD_ENTRIES$*4 + $_REPUTATION$*3 + $AWARDS$*3)/100*(100-$_BAN_PERCENT$)?><?endif?>); (function(l){ if (l) { var typ = l.match(/type=(\S+?)\;/), num = l.match(/num=(\d+?)\;/), comm = l.match(/comm=(.+?)\&/); if (l && num && comm) { balli.changek(typ[1], num[1], decodeURIComponent(comm[1]));}}})(location.search);</script>

в этом же шаблоне, в нужное место:

Code
<div class="udtb"><div class="udtlb">Баллы пользователя:</div><a href="#" onclick="balli.open();return false;" id="ballov">…</a></div>

и в head этого же шаблона

Code
<style type="text/css">.gold1 {text-align:left;padding:3px;} .gold2 {clear:left;float:left;width:150px;} #goldI {display: none}  
.etitle{background:#f1f1f1;border:1px solid #cdcbcb;text-shadow: 0.1em 0.1em 0.05em #FFF;padding:7px;}  
#tableball tr td{background: #fafafa; border: 1px solid #bdbdbd; padding: 4px 10px;} .xt-edit{background-position:0 -90px;} .xt-edit-over{background-position:-15px -90px;} .xt-log{background-position:0 -315px;} .xt-log-over{background-position:-15px -315px;} .rdv {text-align:left;padding:6px;} .ldv {clear:left;float:left;width:150px;}  
</style>

4. в нужное место. Это скрипт Услуг

Code
<style type="text/css">.ulb{text-align:left; margin: 2px;} .lbl{clear:left;float:left;width:170px;} .field_Y{width:145px;} #infa_y {display: none; font-size: 9px;} #infa_y label {cursor: pointer; font-size: 9px;}</style>  
<script type="text/javascript" src="http://webo4ka.ru/Ucoz/yslygi.js"></script>  
<script type="text/javascript">  
_y.href = "$HOME_PAGE_LINK$"; _y.idSender = "$USER_ID$"; _y.date = "$DAY$.$MONTH$.$YEAR$"; _y.admin = "Bogggdan";  
</script>  
<a href="javascript:_y.all();">Услуги сайта</a>

Заменяете свой ник, файл скрипта можете перезалить к себе.

Примечания: Скрипт услуг выполняет отправку заказа в ЛС. Группы, у которых включена каптча, отправлять не смогут. Предварительно отключите каптчу нужным группам в правах групп.

Автор: uCodes.Ru

Автор публикации: Загрузка
Загрузка
Вовчик, это его n материал
  • Всего комментариев: 16

Dixes
0
Dixes написал: Написано 29 Апреля 2016 в 10:40
Комментарий №15
почему ... пишет?(


Вовчик
0
Вовчик написал: Написано 29 Апреля 2016 в 17:43
Комментарий №16
что пишет?

forwebo4ka
0
forwebo4ka написал: Написано 16 Февраля 2016 в 12:14
Комментарий №14
Не изменяет количество баллов! Пишет Error

Вовчик
0
Вовчик написал: Написано 09 Октября 2015 в 00:41
Комментарий №13
скрипт мог устареть... и поэтому не выводит...

Max3764
0
Max3764 написал: Написано 08 Октября 2015 в 12:28
Комментарий №12
Ребят что делать если скрипт баллов не показывает баллы, а просто точки? biggrin

Xgibit
0
Xgibit написал: Написано 01 Июля 2012 в 13:29
Комментарий №11
а у меня пользователи не могут отправлять,просит код безопасности,хотя я откл эту функцию

народ
1. Заходим в модуль Блог » настройки модуля. Настраиваем как на скрине.
2. Вид материалов блога
может не работать,если модуль не блог а другой.

Black8226
0
Black8226 написал: Написано 01 Июля 2012 в 12:26
Комментарий №10
почему пишет 'Error' когда я прибавляю или отнимаю баллы? пожалуйста помогите)с меня репа +)

Black8226
0
Black8226 написал: Написано 01 Июля 2012 в 11:12
Комментарий №9
а из каталог сайтов можно это замутить?

Xgibit
0
Xgibit написал: Написано 01 Июля 2012 в 00:34
Комментарий №8
а почему он не выводит всего баллов?

Voker
0
Voker написал: Написано 10 мая 2012 в 09:57
Комментарий №7
Его под другой модуль переделать реально?

S9va
0
S9va написал: Написано 09 Апреля 2012 в 23:24
Комментарий №6
Сделайте кто то из модуля Онлайн Игры! Очень надо!))) biggrin

Admin8738
0
Admin8738 написал: Написано 27 Февраля 2012 в 21:44
Комментарий №5
У меня неработает посмотрите пожайлуста [реклама]

Admin8738Ответ от Администрации:

устное


МªZλнАĸ_а
0
МªZλнАĸ_а написал: Написано 26 Июня 2011 в 16:52
Комментарий №4
Отпадный скрипт забираю

eXtrimal
0
eXtrimal написал: Написано 29 Января 2011 в 20:05
Комментарий №1
Сорри, а что за каптча? и как ее выключить?

Вовчик
+2
Вовчик написал: Написано 29 Января 2011 в 20:11
Комментарий №2
ПУ => Пользователи => Группы пользователей => заходишь в группу где надо убрать капчу=> Опции группы: => Разное => Не показывать код безопасности => и убери галку

eXtrimal
0
eXtrimal написал: Написано 29 Января 2011 в 20:38
Комментарий №3
А как изменить цвет, бо у меня все белое в окошке "Баллы"

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 24
Скрипты и модификации для Ucoz 2101
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 429
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
Поставил ваш код он начинает считать от 0 до 100 и останавливаеться. я думал он будет в случайном порядке показывать цыфры
как поставить свою ссылку и логотип
  • Сатурн-1 написал:
  • Похвально.
  • Winston888 написал:
  • Я не говорил что делаю только скрипты. Я делаю шаблоны, скрипты, адаптации с разных движков под ucoz и на оборот + я ещё и сам рисую. В данный момент занимаюсь дизайном для webo4ka сам рисую сам верстаю.
  • Сатурн-1 написал:
  • Заметь, мы делаем почти одну и ту же работу.
    Ты - скрипты, я -шаблон. И каждый делает это бесплатно, НО
    ты делаешь скрипты без шаблона, я делаю шаблон без скриптов (не считая основных).
    Я тоже могу сказать что твои скрипты не идеальны, но не буду т.к. даже не знаю какие из всех существующих твои.
    Поэтому ты не сравнивай скрипты и шаблоны да еще и на Ucoz'e, мы же не на хакатоне каком нибудь.
    Последние темы
    Опрос
    205
    А
    Р
    Что произойдёт: $("#...
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 2
    Гостей: 2
    Пользователей: 0
    0
    Сегодня были
    Топ пользователей: