Главная Регистрация Вход
Приветствую Вас Гость!

StreeT SporT
StreeT SporT Уличный спорт (//treasers.moy.su) ТуТ ЕсТь ВсЕ
Главная » 2010 » Июнь » 25 » » Скрипт для ucoz: Баллы для uCoz
10:50
» Скрипт для ucoz: Баллы для uCoz
Баллы для uCoz

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

Баллы добавляются за:
# Репутацию (1 балл за 1 единицу репутации)
# Комментарии (0.15 баллов за комментарий)
# Посты на форуме (0.2 балла за 1 сообщение)
# Файлы (0.5 баллов за файл)
# Награды (0.1 балл за награду)
# Если у пользователя есть замечания, то баллы уменьшатся (например: 20% замечаний уменьшают количество баллов на 20%)
# Произвольное повышение/понижение количества баллов за определенные заслуги или нарушения. (функция для админов)
# Все это гибко настраивается. Расценки можно менять.

Требования:
# Свободный модуль Каталог статей.
# 3-5 минут для установки скрипта.

Установка:

Скриншот настроек модуля Каталог статей. !!!КЛИКАЕМ!!!

Далее идем Админка » Пользователи » Группы пользователей » Установка прав для всех групп и убеждаемся, что функции Просматривать историю замечаний пользователей и Просматривать историю репутации пользователей разрешено для всех групп.

Страница поиска и рейтинга материалов:

Code
<html><head></head><body style="margin: 5%; font-family: verdana,arial,helvetica; font-size:8pt;"><h1>403: Forbidden</h1>$BODY$<div style="padding-top:70%; text-align:right">$POWERED_BY$</div></body></html>

Страница добавления/редактирования материалов:

Code
<head></head><body>$BODY$$POWERED_BY$</body></html>

Вид материалов:

Code
<input type="hidden" value="$TITLE$" class="pts">

Шаблон персональная страница пользователя, ищем:

Code

<div id="block5" class="udtb"><div class="udtlb">Имя:</div> $_NAME$ [ $_GENDER_NAME$ ]</div>

после пишем

Code
<div class="udtb"><div class="udtlb">Баллы:</div> <a href="#" onclick="points('$_USERNAME$', $_USER_ID$);return false;" id="points">...</a></div>

и после ставим код:

Code
<script type="text/javascript">$(document).ready(function () {
//site: www.ucoz-scripts.ru
//version: 0.1
$.get("/publ/0-0-$_USER_ID$-0-17", function (w) {ch_ng = $("input.pts:first", w).val(); if (!ch_ng) {ch_ng = 0;} pt = (Number(ch_ng) + Number(<? ($_REPUTATION$ + $_COM_ENTRIES$*0.15 + $_FORUM_ENTRIES$*0.2 + $_LOAD_ENTRIES$*0.5 + $AWARDS$*0.1) - (($_REPUTATION$ + $_COM_ENTRIES$*0.15 + $_FORUM_ENTRIES$*0.2 + $_LOAD_ENTRIES$*0.5 + $AWARDS$*0.1)*$_BAN_PERCENT$/100) ?><? $_REPUTATION$ + $_COM_ENTRIES$*0.15 + $_FORUM_ENTRIES$*0.2 + $_LOAD_ENTRIES$*0.5 + $AWARDS$*0.1 ?>)).toFixed(2);$("#points").html(pt);});}); function inajax(){if (ch_ng == "-0") {$('#thechanges').html("0");} else {$('#thechanges').html(ch_ng);}} function points(name, id) { new _uWnd('points', 'Баллы ' + name, 200, 300, {icon: '/.s/img/icon/dtl.png',autosize: 1,fadespeed: 500,fadeclosespeed: 500,fadetype: 1,fadeclosetype: 1,align: 0,oncontent: function () { inajax() }}, '<fieldset><legend>Баллы [<a href="#" onclick="change();return false;">Изменить</a>]</legend><div style="text-align:left">Комментарии: <b title="0.15 баллов за 1 комментарий" style="cursor:help"></b><br>Посты на форуме: <b title="0.2 баллов за 1 пост" style="cursor:help"></b><br>Репутация: <b title="1 балл за 1 единицу репутации" style="cursor:help"></b><br>Файлы: <b title="0.5 баллов за 1 файл" style="cursor:help"></b><br>Награды: <b title="0.1 балла за 1 награду" style="cursor:help"></b><br>Штраф: <b style="cursor:help" title="Минус $_BAN_PERCENT$% из-за замечаний"><? ($_REPUTATION$ + $_COM_ENTRIES$*0.15 + $_FORUM_ENTRIES$*0.2 + $_LOAD_ENTRIES$*0.5 + $AWARDS$*0.1)*$_BAN_PERCENT$/100 ?></b> <br>Изменения: <b title="Количество ваших баллов изменила администрация. Возможные причины: наказание (за нарушение правил), поощрения (за заслуги), просто так (администрация имеет право)" style="cursor:help" id="thechanges">...</b></div></fieldset>');}; function change() {new _uWnd('change', 'Изменить количество баллов $_USERNAME$', 350, 350, { icon: '/.s/img/icon/edt.png', autosize: 1, fadespeed: 500, modal: 1, fadeclosespeed: 500, fadetype: 1, fadeclosetype: 1, align: 0},'<fieldset><legend>Изменить</legend><div style="text-align:left"><div id="changeType"><input type="radio" name="chng" value="minus" id="minus"><label style="cursor:pointer" for="minus"><img src="http://s40.ucoz.net/img/icon/minus.png" height="13" border="0" align="absmiddle"> Уменьшить</label><br><input type="radio" name="chng" value="plus" id="plus"><label for="plus" style="cursor:pointer"><img src="http://s40.ucoz.net/img/icon/plus.png" height="13" border="0" align="absmiddle"> Увеличить</label><br><div style="text-align:right"><br><br><input type="button" value="Далее" onclick="dalee()"></div></div> <div id="changeNum" style="display:none">Введите число, на сколько нужно изменить количество баллов.<br><input type="text" id="changeTheNum" maxlength="7" style="width:100%"><input type="button" value="Готово" onclick="fChange();"></div> </div></fieldset>');}; function dalee() {if ($('input[name="chng"]').is(':checked')) {$('#changeType').hide();$('#changeNum').show();$("#changeTheNum").focus();}} function fChange() { if ($("#changeTheNum").val().match(/\D/) || $("#changeTheNum").val().match(/\s/) || $("#changeTheNum").val() == '') {alert('Введите числовое значение');return;} else {var type = $('input[name="chng"]:checked').val(); $.get("/publ/0-0-$_USER_ID$-0-17", function (l) {var now = $("input.pts:first", l).val(); if (!now) {var now = 0;} if (type == 'plus') {ress = (Number(now) + Number($("#changeTheNum").val()));} else {ress = (Number(now) - Number($("#changeTheNum").val()));}if (ress == 0) {ress = "-0";}$.get("/publ/0-0-0-0-1", function (b) {$.post("/publ/", {a: 12,jkd428: 1,jkd498: 1,ocat: 1,title: ress,user: '$_USERNAME$',ssid: $("input[name='ssid']", b).val()}, function(){_uWnd.close('change');});});});}}</script>
  

p.s. внимание! Если вы воспользовались функцией "Произвольное повышение/понижение количества баллов", а после обновления страницы баллы не пересчитались - не расстраивайтесь, а подождите 1 минуту и обновите страницу снова.
Этот недостаток скрипта возможно будет исправлен в последующих его версиях. Эта версия — бета-тест.

Категория: Скрипты для uCoz | Просмотров: 541 | Добавил: }{0тt@бь)ч | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:

Категории раздела

Скрипты для uCoz [235]
Шаблоны для Ucoz [0]

Поиск

Профиль

Гость

Сообщения:

Группа:
Гости
Время:09:55

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!

Наш опрос

Оцените мой сайт
Всего ответов: 9

Мини-чат

Реклама

IP адрес

Узнай свой IP адрес

Администрация







Календарь

«  Июнь 2010  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
282930

Статистика

Кнопка

Друзья

zona-x.su - зона-х, хак портал, веб мастеринг, секреты вконтакте, бесплатная раскрутка сайта

Софт

Понедельник
22.07.2024
09:55


}{0тT@бь)ч Produced