Автор Duka

    Новый скрипт наград.
    Аналогии вы видели на форумных движках ipb

    Возможности:
    • Неограниченное количество наград пользователям.
    • Всплывающее окно для каждого пользвоателя
    • Количество наград под аватарой
    • Окошко в стиле форума (свой стиль не сработает)

    Скрипт, ставим в низ
    Код:

    <script type="text/javascript">
    function awardsOpen(str)
    {
    var awardsn = new Array();

    awardsn["moder"] = new Array("Лучший модератор", "http://www.iconsearch.ru/uploads/iconlib/linspireclear/128x128/filesystems/trashcan_empty.png", "За модераторскую помощь")
    awardsn["helper"] = new Array("Помощник месяца", "http://www.iconsearch.ru/uploads/iconlib/crystalclear/128x128/apps/khelpcenter.png", "Неоценимая помощь форуму")
    awardsn["money"] = new Array("Банкир форума", "http://www.iconsearch.ru/uploads/iconlib/crystalclear/128x128/actions/db_add.png", "За материальную помощь форуму")

    str = str.split(",")
    if(str[str.length-1].substring(str[str.length-1].length-1, str[str.length-1].length)==" "){str[str.length-1]=str[str.length-1].substring(0, str[str.length-1].length-1)}
    var msg = new String("");
    msg = "<head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\" /><link rel=\"stylesheet\" type=\"text/css\" href=\"http://forum.mybb.ru/style/"+BoardStyle+"/"+BoardStyle+".css\" /><title>Награды пользователя</title>"
    msg+= "<style type=\"text/css\">html, body, #pun, #pun-main {background-image: none; margin: 2px 2px; width: 99%;}</style><body>"
    msg+="<div id=\"pun\" class=\"punbb\"><div id=\"pun-main\" class=\"main\">"
    msg+="<table class=\"container\"><tr><th width=\"25%\">Название</th><th width=\"25%\">Иконка</th><th>За что</th></tr>";
    for(i=0;i<str.length;i++){
    msg+="<tr><td align=\"center\"><span>"+awardsn[str[i]][0]+"</span></td><td align=\"center\"><img width=\"100px\" height=\"100px\" src=\""+awardsn[str[i]][1]+"\" /></td><td align=\"center\"><span>"+awardsn[str[i]][2]+"</span></td></tr>";
    }
    msg+="</table>";
    msg+="</div></div></body></html>";
    popup = window.open("", "", "height=300, width=700, top=300, left=300, scrollbars=1")
    popup.document.write(msg)
    popup.document.close()
    return false
    }
    var li = document.getElementsByTagName("li");
    for(z=0;z<li.length;z++){
    if(li[z].className=="pa-fld2"){
    nag = li[z].innerHTML.substring(li[z].innerHTML.indexOf(": ")+2)
    nag1 = nag.split(",");
    nag1 = nag1.length;
    li[z].innerHTML = "Награды: <a href=\"javascript: //\" onclick=\"awardsOpen('"+nag+"');\" title=\"Показать награды пользователя\">"+nag1+"</a>"
    }
    }
    </script>

    тобы добавить свою награду, после
    Код:

    var awardsn = new Array();

    добавьте
    Код:

    awardsn["Ключ"] = new Array("Название", "Ссылка_на_иконку", "Описание")

    где Ключ - уникальное название всей награды(латиницей), а Название, Ссылка_на_иконку и Описание - детали награды.

    Как настроить награды?
    Создаем в Администрирование - Поля новое поле
    Обзываем его как Награды
    Регистрация Нет
    Сообщения Да
    Профиль Да
    Заполнение Нет

    В скрипте ищем "pa-fld2" и вместо 2 пишем номер поля

    Как выдавать награды?
    Идем в профиль любому пользователю и пишем через запятую (без пробелов и любых других символов) ключи наград.
    В данном случае, из скрипта выше, можно написать следующее: moder,money
    Тогда на странице сообщений у пользователя отобразится Награды: 2. По клику на "2" откроется окно с табличкой его 2х наград.