Приветствуем Вас на новом каталоге ролевых форумов Role catalogue! У нас Вы сможете прорекламировать свою ролевую, а также подобрать игру себе по вкусу.
Кроме рекламы, Вы также сможете заказать критику для своего форума, необходимую графику для себя, найти нужный вам скрипт, список полезных сайтов для начинающего и не очень форума.

Правила форума

Правила размещения форума в каталоге

Баннерообмен
Правила критики форумов

Заказать графику

Полезности для форумов
Рейтинг Ролевых Ресурсов - RPG TOP

Role catalogue

Информация о пользователе

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


Вы здесь » Role catalogue » Полезности для форумов » Каталог скриптов


Каталог скриптов

Сообщений 1 страница 30 из 73

1

Абсолютный помощник по дизайну

Возможность удаления только последнего сообщения. Impuls 101 (по аналогии KAFLAN)
Всплывающий поиск
Возможность Редактирования только последнего сообщения темы by Deff
Выпадающее меню на форум. rps

"Горячие клавиши". Duka
Георгиевская ленточка

Дополнительные символы в форуму ответа

Замена "мужской/женский" (пол) на картинки
Замена всех ссылок под сообщением на кнопки (ЛС, профиль, мыло, цитировать, редактировать, удалить)
Замена надписей Профиль - ЛС - Email картинками
Замена надписей Самые активные и прочие в Статистике. Duka

Информационная панель с данными пользователей. Duka
Изменение слова "Позитив" на свое
Индивидуальный статус картинкой
Изменение шрифта на форуме

Кнопки Оформления Диалогов
Кубики (Дайсы). Duka
Кнопка "Вверх" в каждом сообщении справа от Цитировать.
Копирование  картинок и смайлов в постах по кнопке цитирования сообщения by Deff
Кнопка обтекания изображений текстом

Легенда иконок форума by rps

Меняющийся текст
Модераторские теги. Duka
Модификация скрытого текста. Duka

Недокументированые возможности: Дополнительные кнопки в BB-панель. Duka
Новые иконки в форме ответа
Новые шрифты в форме быстрого ответа by rps
Надпись "Отредактировано" видна только администрации
Новый скрипт наград

Окантовка профиля в сообщении. Duka
Оповещение о новой ЛС со звуком

Профиль справа (Опционально для каждого пользователя). Duka
Подсвечиваем разделы при наведении мышью. Duka
Переливающиеся ссылки
Профилактика форума by Zebra
Переход на Авторский пост по клику на Ник в цитате by Deff и rps
Подпись по умолчанию
Показывает поисковых ботов на главной
Последние 10 сообщений в статистику.
Портал или главная страница на форум (с) mkusher
Пиар-вход одним нажатием

Разделение важных и обычных тем на блоки
Реклама после первого поста
Реклама во втором посте. Duka
Регулирование размера формы ответа. rps

Скрываем посты с отрицательным рейтингом. Duka
Скрытия Админского ника или пребывание Админа на форуме
Сокрытие информации под аватаром с помощью кнопки. (с) Karpoff
Сделать все ссылки в сообщениях невидимыми для гостей
Скрипт, запрещающий писать личные сообщения администратору простым пользователям
Своё Описание к каждой теме, отображаемое в соответствующем форуме by Deffв
Спойлер
Скрипт рекомендаций "Это интересно!"

Убрать "Важно:" возле названия темы
Убираем пользователя из списка модеров
Установка пароля на раздел. Duka
Удобный вход
Убираем промежуточную страницу

Форма быстрого перехода между разделами (либо перехода куда угодно)

Цитирование с BB-кодами (Ответить автору). Duka

+1

2

Регулирование размера формы ответа. rps

Данный скрипт позволяет увеличивать или уменьшать размер поля для ввода текста в форме ответа. В ХТМЛ-низ добавьте:

<script type="text/javascript">
if ((document.URL.indexOf("viewtopic.php") != -1) || (document.URL.indexOf("post.php") != -1) || (document.URL.indexOf("edit.php") != -1)) {
var imgb = document.createElement("img");
var imgs = document.createElement("img");
imgb.title='Увеличить';
imgs.title='Уменьшить';
imgb.src='http://i060.radikal.ru/1008/9e/c3d4d47a3df4.png';
imgs.src='http://s60.radikal.ru/i170/1008/e2/07b91996e8e2.png';
imgb.setAttribute("style", "width: 15px; height: 15px; cursor: pointer !important; margin-left: 15px; margin-bottom: -10px;");
imgs.setAttribute("style", "width: 15px; height: 15px; cursor: pointer !important; margin-bottom: -10px;");
var m = document.getElementById("post").getElementsByTagName("span");
for(j in m) {
if(m[j].className == "input") {
m[j].appendChild(imgs);
m[j].appendChild(imgb);
}}
imgb.onclick = function() {
var rr = document.getElementById("main-reply");
rr.rows = parseInt(rr.rows) + 1;
}
imgs.onclick = function() {
var rr = document.getElementById("main-reply");
if (rr.rows > 1)
rr.rows = parseInt(rr.rows) - 1;
}}
</script>

Две выделенные красным цифры - размер, на который будет увеличиваться форма ответа. Можно ставить абсолютно любое число.

0

3

Кнопки Оформления Диалогов

Можно поиграцо с оформлением.. но функционально работает,  -
http://s58.radikal.ru/i161/1008/d0/5c2f2b18cc37t.jpg

Вставляем в HTML в форме ответа

Код:
	<!-- Кнопки Оформления диалогов -->
<div class="container" id="my_replic" width:200px">
    <table cellspacing="0" height="118px">
   <tr><td><span style="color: fuchsia"><span style="font-size: 14px"><strong><u>Кнопки выделения реплик</u></strong></span></span><br/><b><u>*Пост не менее 25 строчек</u> !</b><br/><br/></td></tr><tr>
<td style="background-color:#B4B4B4;" height:15px" onclick="bbcode('[color=#EE17ED][b]', '[/b][/color]'); return changeVisibility('my_replic', this)"><span style="color: fuchsia"><b>Жирным и цветом</b>- своя речь</span></td></tr><tr>
<td style="background-color:#B4B4B4;" height:15px" onclick="bbcode('[color=#EE17ED][i]', '[/i][/color]'); return changeVisibility('my_replic', this)"><span style="font-family: Times New Roman"><span style="font-style: italic"><span style="font-size: 14px"><span style="color: fuchsia"><span style="font-style: italic">Курсивом и цветом- свои мысли</span> </span></td></tr><tr>
<td style="background-color:#B4B4B4;" height:15px" onclick="bbcode('[b][u]', '[/u][/b]'); return changeVisibility('my_replic', this)"><b><u>Подчёркнутым жирным</u></b> - чужая речь</td></tr><tr>
<td style="background-color:#B4B4B4;" height:15px" onclick="bbcode('[u][i]', '[/i][/u]'); return changeVisibility('my_replic', this)"><span style="font-family: Times New Roman"><u><span style="font-style: italic"><span style="font-size: 14px">Подчёркнутым курсивом</span></span></u></span> - мысли других героев <span style="font-size: 9px"> 
</span></td>
</tr>
</table>
	</div>
<!-- Конец Оформления диалогов -->

0

4

Дополнительные символы в форуму ответа.
Вставляем в HTML в форме ответа

Код:
<div class="main" id="spo_all">
<div id="spoiler4" style="display: none;">
<input type="button" value="¢" name="H" title="¢" onclick="bbcode('¢','')" />
<input type="button" value="£ " name="H" title="£ " onclick="bbcode('£','')" />
<input type="button" value="€ " name="H" title="€" onclick="bbcode('€','')" />
<input type="button" value="₪" name="H" title="₪" onclick="bbcode('₪','')" />
<input type="button" value="¤" name="H" title="¤ " onclick="bbcode('¤','')" />
<input type="button" value="¥ " name="H" title="¥" onclick="bbcode('¥','')" />
<input type="button" value="¦" name="H" title="¦ " onclick="bbcode('¦','')" />
<input type="button" value="§" name="H" title="§" onclick="bbcode('§','')" />
<input type="button" value="¨" name="H" title="¨ " onclick="bbcode('¨','')" />
<input type="button" value="©" name="H" title="©" onclick="bbcode('©','')" />
<input type="button" value=" ª " name="H" title=" ª " onclick="bbcode(' ª ','')" />
<input type="button" value=" º " name="H" title=" º " onclick="bbcode(' º ','')" />
<input type="button" value="«" name="H" title="«" onclick="bbcode('«','')" />
<input type="button" value="» " name="H" title="»" onclick="bbcode('»','')" />
<input type="button" value="¬ " name="H" title="¬ " onclick="bbcode('¬','')" />
<input type="button" value="®" name="H" title="®" onclick="bbcode('®','')" />
<input type="button" value="¯" name="H" title="¯" onclick="bbcode('¯','')" />
<input type="button" value="‰" name="H" title="‰" onclick="bbcode('‰','')" />
<input type="button" value=" µ " name="H" title=" µ " onclick="bbcode(' µ ','')" />
<input type="button" value="¶" name="H" title="¶" onclick="bbcode('¶','')" />
<input type="button" value="•" name="H" title="•" onclick="bbcode('•','')" />
<input type="button" value="¹" name="H" title="¹" onclick="bbcode('¹','')" />
<input type="button" value="¿" name="H" title="¿" onclick="bbcode('¿','')" />
<input type="button" value="←" name="H" title="←" onclick="bbcode('←','')" />
<input type="button" value="↑" name="H" title="↑" onclick="bbcode('↑','')" />
<input type="button" value="→" name="H" title="→" onclick="bbcode('→','')" />
<input type="button" value="↓" name="H" title="↓" onclick="bbcode('↓','')" />
<input type="button" value="↔" name="H" title="↔" onclick="bbcode('↔','')" />
<input type="button" value="⇒" name="H" title="⇒" onclick="bbcode('⇒','')" />
<input type="button" value="⇐" name="H" title="⇐" onclick="bbcode('⇐','')" />
<input type="button" value="⇔" name="H" title="⇔" onclick="bbcode('⇔','')" />
<input type="button" value="⇑" name="H" title="⇑" onclick="bbcode('⇑','')" />
<input type="button" value="⇓" name="H" title="⇓" onclick="bbcode('⇓','')" />
<input type="button" value="↵" name="H" title="↵" onclick="bbcode('↵','')" />
<input type="button" value="♠" name="H" title="♠" onclick="bbcode('♠','')" />
<input type="button" value="♣" name="H" title="♣" onclick="bbcode('♣','')" />
<input type="button" value="♥" name="H" title="♥" onclick="bbcode('♥','')" />
<input type="button" value="♦" name="H" title="♦" onclick="bbcode('♦','')" />
<input type="button" value="◊" name="H" title="◊" onclick="bbcode('◊','')" />
<input type="button" value="○" name="H" title="○" onclick="bbcode('○','')" />
<input type="button" value="●" name="H" title="●" onclick="bbcode('●','')" />
<input type="button" value="◄" name="H" title="◄" onclick="bbcode('◄','')" />
<input type="button" value="▼" name="H" title="▼" onclick="bbcode('▼','')" />
<input type="button" value="►" name="H" title="►" onclick="bbcode('►','')" />
<input type="button" value="▲" name="H" title="▲" onclick="bbcode('▲','')" />
<input type="button" value="■" name="H" title="■" onclick="bbcode('■','')" />
<input type="button" value="▪" name="H" title="▪" onclick="bbcode('▪','')" />
<input type="button" value="▫" name="H" title="▫" onclick="bbcode('▫','')" />
<input type="button" value="♀" name="H" title="♀" onclick="bbcode('♀','')" />
<input type="button" value="♂" name="H" title="♂" onclick="bbcode('♂','')" />
<input type="button" value="™" name="H" title="™" onclick="bbcode('™','')" />
<input type="button" value="≤" name="H" title="≤" onclick="bbcode('≤','')" />
<input type="button" value="≥" name="H" title="≥" onclick="bbcode('≥','')" />
<input type="button" value="≈ " name="H" title="≈" onclick="bbcode('≈','')" />
<input type="button" value="≠" name="H" title="≠" onclick="bbcode('≠','')" />
<input type="button" value="≡" name="H" title="≡" onclick="bbcode('≡','')" />
<input type="button" value="±" name="H" title="±" onclick="bbcode('±','')" />
<input type="button" value="²" name="H" title="²" onclick="bbcode('²','')" />
<input type="button" value="³" name="H" title="³" onclick="bbcode('³','')" />
<input type="button" value="∀" name="H" title="∀" onclick="bbcode('∀','')" />
<input type="button" value="∃" name="H" title="∃" onclick="bbcode('∃','')" />
<input type="button" value="∅" name="H" title="∅" onclick="bbcode('∅','')" />
<input type="button" value="∴" name="H" title="∴" onclick="bbcode('∴','')" />
<input type="button" value="≅" name="H" title="≅" onclick="bbcode('≅','')" />
<input type="button" value="⊕" name="H" title="⊕" onclick="bbcode('⊕','')" />
<input type="button" value="⊗" name="H" title="⊗" onclick="bbcode('⊗','')" />
<input type="button" value=" " name="H" title=" " onclick="bbcode(' ','')" />
</div>
<input type="button" value="Дополнительные символы" onclick="obj=this.parentNode.childNodes[1]; tmp=(obj.style.display!='block') ? 'block' : 'none'; obj.style.display=tmp; return false;">
</div>

Выглядит всё это так:
http://i060.radikal.ru/1009/8d/12377c86e708t.jpg

0

5

Скрываем посты с отрицательным рейтингом. Duka

Вместо сообщений с отрицательным рейтингом будет показано предупреждение, что сообщение "плохое". Открыть текст можно кликнув на предупреждение.
Вы сами можете изменить глубину репутации, при котором пост будет считаться плохим.

Код:
<script type="text/javascript">
var ratingPostMsgHide = -1; // репутация, при которой пост будет считаться плохим

document.getElementByClassName = function(clsName){
    var retVal = new Array();
    var elements = document.getElementsByTagName("*");
    for(var i = 0;i < elements.length;i++){
        if(elements[i].className.indexOf(" ") >= 0){
            var classes = elements[i].className.split(" ");
            for(var j = 0;j < classes.length;j++){
                if(classes[j] == clsName)
                    retVal.push(elements[i]);
            }
        }
        else if(elements[i].className == clsName)
            retVal.push(elements[i]);
    }
    return retVal;
}
var pozitive = document.getElementByClassName("post-rating")
for( i=0; i<pozitive.length; i++)
{

   rating = pozitive[i].getElementsByTagName("p")[0].getElementsByTagName("a")[0].innerHTML
   rating = parseInt(rating)
   if( rating <= ratingPostMsgHide )
   {
      postMsg = document.getElementByClassName("post-content")[i].innerHTML;
      document.getElementByClassName("post-content")[i].innerHTML = "<div class=\"quote-box\"><blockquote><p><a href=\"javascript: void(0);\" onclick=\"document.getElementById('postMsgID" + i + "').style.display = 'block'\">Данное сообщение имеет отрицательный рейтинг. Для его отображения нажмите сюда</a></p></blockquote></div><div id=\"postMsgID" + i + "\" style=\"display: none;\" class=\"quote-box\"><blockquote><p>" + postMsg + "</p></blockquote></div>"
   }

}
</script>

http://forumupload.ru/uploads/0000/14/1c/538885-1-f.jpg

0

6

Профиль справа (Опционально для каждого пользователя). Duka

Помнится, многие спрашивали как сделать профиль справа как на phpbb и спорили, что некоторым пользователям на форуме может это не понравиться.
Набросал скрипт, который для каждого пользователя покажет выпадающее менюю с 2мя опциями - Слева, Справа. При выборе одного из них посты сразу же принимают нужны вид. При гулянии на форуме действие его сохраняется.
Ставим в HTML-верх

Код:
<div id="profileSide"></div>
<script type="text/javascript">
function saveCookie(side){
 var c_date = new Date();
 c_date.setTime(c_date.getTime()+99999999999)
 date = c_date.toGMTString();
 document.cookie="profileSide="+side+"; expires="+date
}

function getSide(side){
 if(side==0 && document.cookie.indexOf("profileSide")!=-1){
    side = document.cookie.substring(document.cookie.indexOf("profileSide=")+12, document.cookie.indexOf("profileSide=")+13)
 }
 if(side=="L"){
    document.getElementById("profileSide").innerHTML="";
 } else if(side=="R"){
    document.getElementById("profileSide").innerHTML="<s"+"tyle type=\"text/css\">.punbb .post h3 span {border-right: 1px solid transparent;border-left: none;padding: 0.5em 1em;display: block; text-align: right;margin-right: 19em;margin-left: 0;}.punbb .post h3 strong {float: left;text-align: left;}.punbb .post .post-author, .pl-email, .pl-website {float: right;}.punbb .post-body {margin-right: 19em;margin-left: 0;border-right: 1px solid;border-left: none;}.punbb .post-links {margin-right: 19em;margin-left: 0em;border-right: 1px solid transparent;border-left: none;}.punbb .post-links ul {margin-right: -19em;margin-left: 0em;text-align: left;}.post-rating {float: left;}</st"+"yle>";
 }
}
getSide(0)
</script>

Ставим в форму ответа

Код:
<select>
<option selected="selected">--Отображение профиля--</option>
<option onclick="saveCookie('L'); getSide('L')">|--Слева</option>
<option onclick="saveCookie('R'); getSide('R')">Справа--|</option>
</select>

Нужно найти оптимальный вариант css.
Вместо transparent писать цвет бордеров блока сообщений, ибо сам он в файлике вынесен в .css, а не в _cs.css, где ему положено быть, но, по каким-то причинам, он в .css

0

7

Возможность удаления только последнего сообщения. Impuls 101 (по аналогии KAFLAN)

Скрипт оставляет у пользователей кнопку "удалить" только для последнего сообщения.
У модераторов и администраторов кнопка остается.

Код:
<script>
document.getElementsByClassName = function(clsName){
    var retVal = new Array();
    var elements = document.getElementsByTagName("*");
    for(var i = 0;i < elements.length;i++){
        if(elements[i].className.indexOf(" ") >= 0){
            var classes = elements[i].className.split(" ");
            for(var j = 0;j < classes.length;j++){
                if(classes[j] == clsName)
                    retVal.push(elements[i]);
            }
        }
        else if(elements[i].className == clsName)
            retVal.push(elements[i]);
    }
    return retVal;
}

if (GroupID && GroupID >= 4)
{
   var arr = document.getElementsByClassName('pl-delete');

   if (arr && arr.length > 1)
   {

      for (var i = 0; i < arr.length - 1; i++)
      {
         arr[i].innerHTML = '';
      }
   }

}
</script>

Вставлять в HTML - низ или HTML - в форме ответа

0

8

Модификация скрытого текста. Duka

Данный скрипт увеличивает возможности стандартного "скрытого текста".

Возможности использования по нескольким условиям:
• количеству репутации(уважения);
• количеству позитива;
• сообщение для группы;
• сообщение для пользователя;
• ограничение по возрасту.

Смело ставим в HTML-в форме ответа. Если планируется использовать в закрытых темах -> HTML-низ.

Как работает?
Используем стандартный хайд , в теле хайда, в самом начале, пишем одно из следующих условий
user=56; //Для пользователя с id=56 (смотреть ссылку профиля)
group=3; //Для группы. id смотреть в параметре show_group= в адресной строке при выборе группы на странице Участники
respect=50; //Для пользователей, у которых суммарное уважение(+/-) больше 50
positive=20; //Для пользователей, у которых суммарный позитив(+/-) больше 20
age=18; //Для пользователей старше 18 лет
Например,

Код:
[hide]group=2; Сообщение модераторам...[/hide]

Вместе с условием по количеству сообщений

Код:
[hide=20]group=2; Сообщение модераторам, набравшие 20 сообщений...[/hide]

Сам скрипт

Код:
<script type="text/javascript">
var quote = document.getElementsByTagName("blockquote")
var n, condition;
var typet = new Array("respect", "group", "positive", "user", "age");
var typer = new Array((UserRespectPlus-UserRespectMinus).toString(), (GroupID).toString(), (UserPositivePlus-UserPositiveMinus).toString(), (UserID).toString(), (UserAge).toString());
for(q=0;q<typet.length;q++){
for(i=0;i<quote.length;i++){
if(quote[i].previousSibling.innerHTML.indexOf("Скрытый текст")!=-1){
if(quote[i].innerHTML.indexOf(typet[q]+"=")!=-1){
n=parseInt(quote[i].innerHTML.substring(quote[i].innerHTML.indexOf(typet[q]+"=")+(typet[q].length+1), quote[i].innerHTML.indexOf(";")))
if(isNaN(n)==false){
if(q==0){condition = parseInt(typer[0]) < n;}
else if(q==1){condition = parseInt(typer[1]) != n;}
else if(q==2){condition = parseInt(typer[2]) < n;}
else if(q==3){condition = parseInt(typer[3]) != n;}
else if(q==4){condition = parseInt(typer[4]) < n;}
	if(condition){
if(q==0){
	quote[i].innerHTML="Для просмотра скрытого текста нужно иметь "+n+" очков репутации. Осталось набрать "+(n-parseInt(typer[q]))
}else if(q==1){
	quote[i].innerHTML="Вашей группе запрещено просматривать данное сообщение"
}else if(q==2){
	quote[i].innerHTML="Для просмотра скрытого текста нужно иметь "+n+" очков позитива. Осталось набрать "+(n-parseInt(typer[q]))
}else if(q==3){
	quote[i].innerHTML="Данный текст предназначен для <a href='profile.php?id="+n+"'>этого</a> пользователя."
}else if(q==4){
	quote[i].innerHTML="Вам должно испольниться "+n+" лет(года)."
}
	} else {
quote[i].innerHTML=quote[i].innerHTML.substring(quote[i].innerHTML.indexOf(typet[q]+"="+n+";")+((typet[q].length+2)+n.toString().length))
	}
}
}
}
}
}
</script>

Скрипт на данный момент не умеет совмещать в себе несколько условий разом, так что скрещивать хайды не имеет смысла

0

9

Подсвечиваем разделы при наведении мышью. Duka

Код:
<script type="text/javascript">
var td = document.getElementsByClassName("tcl")
for(i=0;i<td.length;i++){
td[i].setAttribute("onmouseover", "this.style.backgroundColor='red'")
td[i].setAttribute("onmouseout", "this.style.backgroundColor=''")
}
</script>

red - нужный цвет

Второй способ. Стилем. От Пети (Матрикса)

Код:
<style type="text/css">
td.tcl:hover {background: #ccc !important;}
</style>

0

10

Кубики (Дайсы). Duka

Скрипт позволит "кидать кубики" прямо на форуме.
Полезно для ролевых форумов.

Ставить в HTML в форме ответа

Вариант 1.

Код:
<input type="button" onclick="dice()" value="Кинуть кубики" />
<script type="text/javascript">
function dice()
{
	var FoundErrors = '';
	var diceRes=""
	var CountCube = prompt("Количество кубиков", "3");
	var SideCube = prompt("Сколько граней у кубика?", "6");
	if(CountCube>9){
	alert("Нельзя бросать столько кубиков"); 
	return false;}
	if(SideCube>9){
	alert("Не бывает таких кубиков"); 
	return false;}
	if (!CountCube)
	{return false;}
	if (!SideCube)
	{return false;}
	for(i=0; i<CountCube;i++){
	var dice = (Math.round(Math.random()*SideCube))
	if(dice==0) dice=1;
	diceRes += dice*1936+"-"
	}
	smile('[dice='+diceRes+CountCube+SideCube+']')
}
</script>
<script>
function addDice(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("[dice=",from))==-1) return str;
if((pos2=str.indexOf("]"),pos+6)==-1) return str;
newpos=str.indexOf("]",pos+6)
if(newpos<pos2 && newpos!=-1) str=addDice(str,pos+6,true)
if((pos2=str.indexOf("]",pos+6))==-1) return str;
str=str.substring(0,pos)+makeDice(str.substring(pos+6,pos2))+str.substring(pos2+1,str.length)
if( str.indexOf("[dice=")!=-1 && internal==false) str=addDice(str,0,false)
return str}

function makeDice(dice){
diceMass = dice.split("-")
diceC = dice.substring(dice.length-2, dice.length-1)
diceS = dice.substring(dice.length-1, dice.length)
var diceR=0, diceRu="";
for(i=0;i<diceMass.length-1;i++){diceR+=diceMass[i]/1936;}
for(i=0;i<diceMass.length-1;i++){if(diceMass[i]==diceMass[diceMass.length-2]){diceRu+=diceMass[i]/1936;}else{diceRu+=parseInt(diceMass[i]/1936)+"+";}}
txt="<div class=\"quote-box\"><blockquote><p><b>Количество кубиков</b>: "+diceC+"<br /><b>Граней в кубике</b>: "+diceS+"<br /><br /><b>Результаты броска</b>: ("+diceRu+")="+diceR+"</p></blockquote></div>"
return txt}

if(document.URL.indexOf("viewtopic.php")!=-1){
elm=document.getElementById("pun-main").getElementsByTagName("div")
for(x in elm) if(elm[x].className=="post-content"){
var post=elm[x]
post.innerHTML=addDice(post.innerHTML,0,false)}}
</script>

Вариант 2.

Код:
<input type="button" onclick="dice()" value="Кинуть кубики" />
<script type="text/javascript">
function dice()
{
	var FoundErrors = '';
	var diceRes=""
	var CountCube = prompt("Количество кубиков", "3");
	var SideCube = prompt("Сколько граней у кубика?", "6");
	if(CountCube>9){
	alert("Нельзя бросать столько кубиков"); 
	return false;}
	if(SideCube>9){
	alert("Не бывает таких кубиков"); 
	return false;}
	if (!CountCube)
	{return false;}
	if (!SideCube)
	{return false;}
	for(i=0; i<CountCube;i++){
	var dice = (Math.round(Math.random()*SideCube))
	if(dice==0) dice=1;
	diceRes += dice*1936+"-"
	}
	smile('[dice='+diceRes+CountCube+SideCube+']')
}
</script>
<script>
function addDice(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("[dice=",from))==-1) return str;
if((pos2=str.indexOf("]"),pos+6)==-1) return str;
newpos=str.indexOf("]",pos+6)
if(newpos<pos2 && newpos!=-1) str=addDice(str,pos+6,true)
if((pos2=str.indexOf("]",pos+6))==-1) return str;
str=str.substring(0,pos)+makeDice(str.substring(pos+6,pos2))+str.substring(pos2+1,str.length)
if( str.indexOf("[dice=")!=-1 && internal==false) str=addDice(str,0,false)
return str}

function makeDice(dice){
diceMass = dice.split("-")
diceC = dice.substring(dice.length-2, dice.length-1)
diceS = dice.substring(dice.length-1, dice.length)
var diceR=0, diceRu="";
for(i=0;i<diceMass.length-1;i++){diceR+=diceMass[i]/1936;}
for(i=0;i<diceMass.length-1;i++){if(diceMass[i]==diceMass[diceMass.length-2]){diceRu+=diceMass[i]/1936;}else{diceRu+=parseInt(diceMass[i]/1936)+"+";}}
txt="<div class=\"quote-box\"><blockquote><p><b>Исходный бросок</b>: "+diceC+"d"+diceS+"<br /><br /><b>Результаты броска</b>: ("+diceRu+")="+diceR+"</p></blockquote></div>"
return txt}

if(document.URL.indexOf("viewtopic.php")!=-1){
elm=document.getElementById("pun-main").getElementsByTagName("div")
for(x in elm) if(elm[x].className=="post-content"){
var post=elm[x]
post.innerHTML=addDice(post.innerHTML,0,false)}}
</script>

0

11

Модераторские теги. Duka
http://i022.radikal.ru/0804/4f/a48e47179683.jpg
Скрипт тега предупреждения

Код:
<script>
function addMod(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("[mod]",from))==-1) return str;
if((pos2=str.indexOf("[/mod]"),pos+5)==-1) return str;
newpos=str.indexOf("[mod]",pos+5)
if(newpos<pos2 && newpos!=-1) str=addMod(str,pos+5,true)
if((pos2=str.indexOf("[/mod]",pos+5))==-1) return str;
str=str.substring(0,pos)+makeMod(str.substring(pos+5,pos2))+str.substring(pos2+6,str.length)
if( str.indexOf("[mod]")!=-1 && internal==false) str=addMod(str,0,false)
return str}

function makeMod(txt){
txt="<br><div style=\"margin: 0px; padding: 0px; background-color:#F1F1FD; border-left: 0px solid #6060FF; border-top: 0px dotted #000; border-right: 1px dotted #000; border-bottom: 1px dotted #000;\"><TABLE cellpadding='0' cellspacing='0'><TD align='middle' bgColor='#6060ff' vAlign='center' width='8%'><FONT color='#ffffff' size='+3' style='FONT-FAMILY: Times' title='Предупреждение'><B>&nbsp;i&nbsp;</B></FONT></TD></TD><TD vAlign='middle'>"+txt+"</TD></TABLE></div><br>"
return txt}


if(document.URL.indexOf("viewtopic.php")!=-1){
elm=document.getElementById("pun-main").getElementsByTagName("div")
for(x in elm) if(elm[x].className=="post-content"){
var post=elm[x]
post.innerHTML=addMod(post.innerHTML,0,false)}}
</script>

Скрипт тега нарушения

Код:
<script>
function addEx(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("[ex]",from))==-1) return str;
if((pos2=str.indexOf("[/ex]"),pos+4)==-1) return str;
newpos=str.indexOf("[ex]",pos+4)
if(newpos<pos2 && newpos!=-1) str=addEx(str,pos+4,true)
if((pos2=str.indexOf("[/ex]",pos+4))==-1) return str;
str=str.substring(0,pos)+makeEx(str.substring(pos+4,pos2))+str.substring(pos2+5,str.length)
if( str.indexOf("[ex]")!=-1 && internal==false) str=addEx(str,0,false)
return str}

function makeEx(txt){
txt="<br><div style=\"margin: 0px; padding: 0px; background-color:#FEF2F2; border-left: 1px solid #FF6060; border-top: 1px dotted #000; border-right: 1px dotted #000; border-bottom: 1px dotted #000;\"><TABLE cellpadding='0' cellspacing='0'><TD align='middle' bgColor='#ff6060' vAlign='center' width='8%'><FONT color='#ffffff' size='+3' style='FONT-FAMILY: Times' title='Грубое нарушение'><B>&nbsp;!&nbsp;</B></FONT></TD></TD><TD vAlign='middle'>"+txt+"</TD></TABLE></div><br>"
return txt}


if(document.URL.indexOf("viewtopic.php")!=-1){
elm=document.getElementById("pun-main").getElementsByTagName("div")
for(x in elm) if(elm[x].className=="post-content"){
var post=elm[x]
post.innerHTML=addEx(post.innerHTML,0,false)}}
</script>

Оптимальнее всего ставить в форму ответа, тогда скрипты будут срабатывать быстрее, чем загрузится страница с остальными скриптами, но гости не будут видеть эффекта. Можно поставить и в html-низ.

Кнопки в форму ответа (Доступны только Администраторам и модераторам)
Для предупреждения

Код:
<style>
#button-mod {background-image:url('http://i029.radikal.ru/0804/26/e430252a0faf.png'); padding:0; line-height:0; background-position:center; background-repeat:no-repeat; height:26px; width:100%}
</style>
<script type="text/javascript">
if((document.getElementById("navadmin")) && (form=document.getElementById("form-buttons")))
form.getElementsByTagName("tr")[0].insertCell(18).innerHTML="<img src='/i/blank.gif' title='Предупреждение' id='button-mod'  onclick=\"bbcode('[mod]', '[/mod]');\"/>"
</script>

Для нарушения

Код:
<style>
#button-ex {background-image:url('http://i007.radikal.ru/0804/c8/e7c48348a35e.png'); padding:0; line-height:0; background-position:center; background-repeat:no-repeat; height:26px; width:100%}
</style>
<script type="text/javascript">
if((document.getElementById("navadmin")) && (form=document.getElementById("form-buttons")))
form.getElementsByTagName("tr")[0].insertCell(18).innerHTML="<img src='/i/blank.gif' title='Предупреждение' id='button-ex'  onclick=\"bbcode('[ex]', '[/ex]');\"/>"
</script>

0

12

Цитирование с BB-кодами (Ответить автору). Duka

Скрипт позволит процитировать сообщение вместе с исходными BB-кодами. После клика на Ответить, произойдет редирект на страницу написания нового сообщения с полной цитатой выбранного Вами сообщения. Позволяет прокомментировать одного автора.

Код:
<script type="text/javascript">
var a=document.getElementsByTagName("a")
for (i = 0; i<a.length; i++){
   if(a[i].href.indexOf("post.php?tid=") != -1){
      t = a[i].href.substring(a[i].href.indexOf('=')+1)
   }
}
var m = new Array();
var z = new Array();
for (w = 0; w<a.length; w++){
   if(a[w].href.indexOf("#p") != -1){
        m[w] = a[w].href.substring(a[w].href.indexOf('#p')+2)
           for (e=0; e<w; e++){
              m.shift()
           }
	z.push(m[0])
   }
}
var c = new Array();
q=0
var arr=document.getElementsByTagName("li")
while(q<arr.length){
   if(arr[q].className=="pl-quote"){
        c.push(q)
   }
   q++
}
var cv = new Array ();
  for(y=0;y<c.length;y++){
    cv.push(y)
}
for(w=0; w<cv.length; w++){
	name=arr[c[w]].innerHTML
	arr[c[w]].innerHTML=name+" <a href='/post.php?tid="+t+"&qid="+z[w]+"' title='Ответить на сообщение'>Ответить</a> "; 
}
</script>

Скрипт ставить в HTML-в форме ответа

0

13

"Горячие клавиши". Duka

Простой скрипт быстрых клавиш.
По определенной комбинации клавиш вызывает определенную функцию.
Ctrl + b - добавляет теги [b.][/b.]
Ctrl + i - добавляет теги [i.][/i.]
Ctrl + s - добавляет теги [s.][/s.]
Ctrl + u - добавляет теги [u.][/u.]
Ctrl + Enter - Быстрая отправка сообщения.

Внимание! В некоторых браузерах вместе с функцией может вызвать свои браузерные функции.
К примеру, при комбинации Ctrl + s в Opera "Сохраняет документ".
Идей на другие комбинации у меня не хватило.

Код:
<script type="text/javascript">
document.onkeydown=function(e){
if (e) event=e
if ((event.keyCode==73)&&(event.ctrlKey)){
bbcode('[i]', '[/i]');
}
if ((event.keyCode==66)&&(event.ctrlKey)){
bbcode('[b]', '[/b]');
}
if ((event.keyCode==83)&&(event.ctrlKey)){
bbcode('[s]', '[/s]');
}
if ((event.keyCode==85)&&(event.ctrlKey)){
bbcode('[u]', '[/u]');
}
if ((event.keyCode==13)&&(event.ctrlKey)){
document.getElementById('post').submit.click();
}}
</script>

Отдельно ctrl+Enter(отправка сообщения)

Код:
<script type="text/javascript">
document.onkeydown=function(e){
if (e) event=e
if ((event.keyCode==13)&&(event.ctrlKey)){
document.getElementById('post').submit.click();
}}
</script>

Вставлять в HTML-в форме ответа

0

14

Информационная панель с данными пользователей. Duka

Наверняка вы видели такую штуку на форумах IPB, vBulletin и прочих.
Появляется блок с информацией: Ник, Имя, Аватар, Статус, Возраст, Дата рождения, уважение, позитив, время на форуме, дата регистрации и прочее.
Скрипт может неким образом заставить пользователя заполнить недостающие поля в профиле, иначе он будет лицезреть надписи вида "не поределено".
Пользователям показывает одну информацию, Гостям - другую.

Код:
<script type="text/javascript">
var mon_array = new Array("", "Января", "Февраля", "Марта", "Апреля", "Мая", "Июня", "Июля", "Августа", "Сентября", "Октября", "Ноября", "Декабря");
Tm = new Date();
Tm.setTime(1000*UserRegistered);
m=Tm.getMonth()+1;
if (m<10) m=m;
hh=Tm.getHours();
mm=Tm.getMinutes()+'';
if (mm<10) mm=mm;
tm='<strong>'+Tm.getDate()+'&nbsp;'+mon_array[m]+'</strong>&nbsp;в&nbsp;<strong>'+hh+':'+mm+'</strong>';
var UserTotalReg = Math.floor(UserTotalTime/86400)
var UserTotalPost = Math.floor(UserPosts/60)
var sex_array = new Array("Пол неопределен. Войдите в <a href='/profile.php?section=personal&id="+UserID+"'>Профиль</a> и установите пол", "Ваш пол: <strong>Муж</strong>", "Ваш пол: <strong>Жен</strong>");
var sex = sex_array[UserSex]
if (UserAvatar == ""){UserAvatar = "http://s54.radikal.ru/i145/0808/84/e1fbc11ac605.png"}
if (UserBirthDate == ""){UserBirthDate = "Дата не выставлена"}
if (UserAge == "0"){UserAge = "[Нет сведений]"}
var user=", <strong>"+UserName+"</strong>";
if (user == ", <strong></strong>"){user = ""}
var arr=document.getElementsByTagName("div")
i=0
while(arr[i] ){
if(arr[i].id=="pun-main") {
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML="<div class=category><h2>Информационное табло</h2><div class=container><table border=0><tr><td><a href='/profile.php?section=avatar&id="+UserID+"' title='Изменить аватару'><img src="+UserAvatar+"></a><br /><strong>"+UserTitle+"</strong></td><td width=40%>Приветствуем на форуме"+user+"!<br />"+sex+"<br />Вы используете стиль: <strong>"+BoardStyle+"</strong><br />Вы в группе  <strong>"+GroupTitle+"</strong><br />На форуме Вами было оставлено <strong>"+UserPosts+"</strong> сообщений<br />Ваш возраст: <strong>"+UserAge+"</strong>.<Br />Ваш день рождения: <strong>"+UserBirthDate+"</strong><br /><br />Профиль <a href='/profile.php?id="+UserID+"'>"+UserLogin+"</a> | Ваши <a href='/userlist.php?&show_group="+GroupID+"'>соучастники</a></td><td width=40%><strong>Отношения</strong><br /><br /><a href='/respect.php?id="+UserID+"'>Уважение</a>: <strong>"+UserRespectPlus+"</strong>/<strong>"+UserRespectMinus+"</strong><br /><a href='/positive.php?id="+UserID+"'>Позитив</a>: <strong>"+UserPositivePlus+"</strong>/<strong>"+UserPositiveMinus+"</strong><Br /><Br />Вы зарегистрировались "+tm+" и провели на форуме <strong>"+UserTotalReg+"</strong> дней</td></tr></table></div></div><br />"+name
}i++}
</script>
<script type="text/javascript">
var arr=document.getElementsByTagName("div")
i=0
str=document.URL
while(arr[i] ){
if(arr[i].id=="pun-main" && GroupID == "3") {
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML="<div class=category><h2>Информационное табло</h2><div class=container><table border=0><tr><td><img src=http://s54.radikal.ru/i145/0808/84/e1fbc11ac605.png></td><td width=80%>Приветствуем тебя на форуме, Гость.<br />Для участия в конференциях просьба <a href='login.php'>войти</a> или <a href='register.php'>зарегистрироваться</a>.</td></tr></table></div></div><Br />"+name
}
i++
}
</script>

Менять в скрипте ничего не нужно. По желанию (опытным) можно изменить структуру вывода, все надписи, порядок и адреса картинки [нет_аватара]

Данный скрипт ставить в HTML-низ.
http://s55.radikal.ru/i147/0808/a4/ae0ba574fcd6.jpg
http://s50.radikal.ru/i129/0808/43/8b4c3383e761.jpg

0

15

Реклама во втором посте. Duka

Скрипт писался мной исключительно для форума поддержки RusFF, но т.к. его уже расхватали с исходников, посмею выложить его сюда.

Код:
<script type="text/javascript">
var content="<center><a href='http://rusff.ru/new.php' target='_blank'><img src=http://i.rusff.ru/f/ru/rusff/rusff_banner_red1.gif></a></center>";
var namead="RusFF Agent";
var ava="<br /> Реклама";
var sup="Advert agent - block1";
var sub="Advert agent - block2";

var arr=document.getElementsByTagName("div")
i=0
while(arr[i] ){
if((arr[i].className=="post topicpost") || (arr[i].className=="post toppost") || (arr[i].className=="post topicpost endpost")){
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML=name+"<div class=post><h3><span><strong>#</strong>"+sup+"</span></h3><div class=container><div class=post-author><ul><li class=pa-author><a href=javascript:to('Agent')>"+namead+"</a></li><li class=pa-avatar item2>"+ava+"</li></ul></div><div class=post-body><div class=post-box><div class=post-content><p>"+content+"</p></div></div></div><div class=post-links><ul><li>"+sub+"<span class=acchide>г</span></li></ul></div></div></div>"
}i++}
</script>

Надписи ставить свои.
Если виден всем - ставить в HTML-низ.
Пользователям - HTML в форме ответа
http://s44.radikal.ru/i104/0808/f8/aeded508e4e1.jpg

0

16

Установка пароля на раздел. Duka

Простенький скрипт на установку пароля для определенного форума.
За безопасность я не отвечаю. Скрипт легко обходится путем отключения яваскрипта или просмотра пароля через исходный код страницы

<script type="text/javascript">
var forum = "http://tests.rusff.org.ru"
var arr=document.links
for (j in arr){
if (arr[j].href==forum+"/viewforum.php?id=x")
{arr[j].href="javascript: pass()"}
}
function pass()
{
  if (prompt('Администратор установил пароль на этот форум', '') == "qwerty"){
    alert('Пароль принят. Нажмите "ОК" для редиректа');
    location.href = forum+"/viewforum.php?id=x";
}
else alert('Введенный пароль неверен');
}
</script>

где x - номер раздела, а qwerty - пароль раздела

Ставить в HTML-низ

0

17

Георгиевская ленточка
В html верх.
Код добавит ленту в верхний левый угол вашего форума.
Простой вариант.

Код:
<div style="position:absolute; left:0%; top:0px;"><img src="http://i032.radikal.ru/0805/f4/2408db727ee2.png" border="0" /></div>

Картинка с ссылкой

Код:
<div style="position:absolute; left:0%; top:0px;"><a href="http://forum.mybb.ru/viewtopic.php?pid=266769" title="День Победы"><img src="http://i032.radikal.ru/0805/f4/2408db727ee2.png" border="0" /></a></div>

ссылку поменять на свою.

0

18

Замена надписей Самые активные и прочие в Статистике. Duka

Вставлять в html низ

<script type="text/javascript">
var link="http://forum.domen.ru"
function changeLink()
{var arr=document.links
for (j in arr)
{
if (arr[j].href==""+link+"/statistic.php?action=active_users")
{arr[j].innerHTML="Самые активные"}
else if (arr[j].href==""+link+"/statistic.php?action=active_users_today")
{arr[j].innerHTML="Активные сегодня"}
else if (arr[j].href==""+link+"/statistic.php?action=administration")
{arr[j].innerHTML="Администрация"}
else if (arr[j].href==""+link+"/statistic.php")
{arr[j].innerHTML="Полная статистика"}
}}
changeLink()
</script>

0

19

Реклама после первого поста
В html-низ

Код:
<script type="text/javascript">
var advert="Скрипт рекламы после первого поста"
var arr=document.getElementsByTagName("div")
i=0
str=document.URL
while(arr[i] ){
if(arr[i].className=="post topicpost") {
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML=""+name+"</div><div style=\"padding: 8px; text-align: center;\">"+advert+"</div>"
}
i++
}
</script>

0

20

Окантовка профиля в сообщении. Duka

В html-верх

Код:
<style>
#pun #pun-index #pun-announcement h2 span {display: none;}
.post-author online, .pa-adnote, .pa-from, .pa-reg, .pa-posts, .pa-reputation, .pa-sex, .pa-icq, .pa-ip, .pa-online, .pa-age, .pa-mailagent, .pa-reg, .pa-avatar, .pa-title, .pa-author, .pa-time-visit, .pa-last-visit, .pa-fld1, .pa-fld2, .pa-fld3, {
   background: #fafcfe;
   border: 1px solid #cdd6e2;
   border-bottom-width: 2px;
   border-right-width: 2px;
   margin: 3px 1px 3px 1px;
}
</style>

Результат увидите сами.
Будет что-то типа этого:
[реклама вместо картинки]

0

21

Переливающиеся ссылки

Ставим в хтмл верх

Код:
<script language="JavaScript">
var rate = 20;
var obj;
var act = 0;
var elmH = 0;
var elmS = 128;
var elmV = 255;
var clrOrg;
var TimerID;
if (navigator.appName.indexOf("Microsoft",0) != -1 && parseInt(navigator.appVersion) >= 4) {
Browser = true;
} else {
Browser = false;}
if (Browser) {
document.onmouseover = doRainbowAnchor;
document.onmouseout = stopRainbowAnchor;}
function doRainbow(){
if (Browser && act != 1) {
act = 1;
obj = event.srcElement;
clrOrg = obj.style.color;
TimerID = setInterval("ChangeColor()",100);}}
function stopRainbow(){
if (Browser && act != 0) {
obj.style.color = clrOrg;
clearInterval(TimerID);
act = 0;}}
function doRainbowAnchor(){
if (Browser && act != 1) {
obj = event.srcElement;
while (obj.tagName != 'A' && obj.tagName != 'BODY') {
obj = obj.parentElement;
if (obj.tagName == 'A' || obj.tagName == 'BODY')
break;}
if (obj.tagName == 'A' && obj.href != '') {
act = 1;//osw
clrOrg = obj.style.color;
TimerID = setInterval("ChangeColor()",100);}}}
function stopRainbowAnchor(){
if (Browser && act != 0) {
if (obj.tagName == 'A') {
obj.style.color = clrOrg;
clearInterval(TimerID);
act = 0;}}}
function ChangeColor(){
obj.style.color = makeColor();}
function makeColor(){
if (elmS == 0) {
elmR = elmV; elmG = elmV; elmB = elmV;}
else {
t1 = elmV;
t2 = (255 - elmS) * elmV / 255;
t3 = elmH % 60;
t3 = (t1 - t2) * t3 / 60;
if (elmH < 60) {
elmR = t1; elmB = t2; elmG = t2 + t3;}
else if (elmH < 120) {
elmG = t1; elmB = t2; elmR = t1 - t3;}
else if (elmH < 180) {
elmG = t1; elmR = t2; elmB = t2 + t3;}
else if (elmH < 240) {
elmB = t1; elmR = t2; elmG = t1 - t3;}
else if (elmH < 300) {
elmB = t1; elmG = t2; elmR = t2 + t3;}
else if (elmH < 360) {
elmR = t1; elmG = t2; elmB = t1 - t3;}
else {
elmR = 0; elmG = 0; elmB = 0;}}
elmR = Math.floor(elmR);//fantasyflash.ru
elmG = Math.floor(elmG);
elmB = Math.floor(elmB);
clrRGB = '#' + elmR.toString(16) + elmG.toString(16) + elmB.toString(16);
elmH = elmH + rate; if (elmH >= 360) elmH = 0;
return clrRGB;}</script>

0

22

Скрытия Админского ника или пребывание Админа на форуме

Код:
<script type="text/javascript">
var who=document.getElementById('pun-status').innerHTML
var whi=document.getElementsByTagName("tr")
var s=0
if (document.URL=="http://forum.mybb.ru/online.php")
{for (s=0; s<=(whi.length-1);s++)
{if ((whi[s].innerHTML.indexOf("Zebra")!=-1)||(whi[s].innerHTML.indexOf("Artefact")!=-1))
{whi[s].style.display="none"}}}
</script>
<script type="text/javascript">
var def=document.getElementById('onlinelist')
var def1=def.getElementsByTagName("a")
for (f in def1)
{if ((def1[f].innerHTML=="Zebra")||(def1[f].innerHTML=="Artefact"))
{def1[f].style.display="none"}}
</script>

Рассчитан для двух Администраторов.
Вместо выделенного жирным вставляете свои данные и вуаля Вы пропадаете с форума,  Вас и нету вроде вовсе.
Скрипт ставится в ХТМЛ-низ.... Работает хорошо под Эксплорер под другие браузеры не проверял.
Увы не на всех форумах может сработать скрытия ника Админского, но вот скрытия где находится Админ работает Стабильно

0

23

Всплывающий поиск
Может кому нибудь пригодится такой скриптик.
Его функциональность:
При нажатии на ссылку в меню Поиск, страница с поиском не загружается, а появляется только окошко  с двумя полями: слова для поиска или автор.
При повторном нажатии, оно исчезает.
Также в окошке есть ссылка Расширенный поиск, которая ведёт к полной странице поиска.
Это нужно, чтобы не грузить каждый раз полную страницу с поиском.

Код:
<script language="JavaScript">
document.getElementById("pun-navlinks").style.position = "relative"

function showDiv()
{
if(  document.getElementById("searchDiv").style.display == 'none' )
     document.getElementById("searchDiv").style.display = ''
else document.getElementById("searchDiv").style.display = 'none'

return false;
}

str  = "<a href=\"search.php\" onclick=\"return showDiv()\"><span>Поиск</span></a>"
str += "<div id=searchDiv style=\"display: none; \">"

str += " <form method=\"get\" action=\"search.php\">"
str += "    <input type=\"hidden\" name=\"action\" value=\"search\">"
str += "    <p class=\"inputfield\">"
str += "    <label for=\"fld1\">Ключевые слова</label><br />"
str += "    <span class=\"input\"><input type=\"text\" name=\"keywords\" size=\"25\" maxlength=\"100\" /></span>"
str += "    </p>"
str += "    <p class=\"inputfield\">"
str += "    <label for=\"fld2\">Поиск автора</label><br />"
str += "    <span class=\"input\"><input type=\"text\" name=\"author\" size=\"25\" maxlength=\"25\" /></span>"
str += "    </p> <br>"

str += "    <input type=\"hidden\" name=\"forum\" value=\"-1\">"
str += "    <input type=\"hidden\" name=\"search_in\" value=\"all\">"
str += "    <input type=\"hidden\" name=\"sort_by\" value=\"0\">"
str += "    <input type=\"hidden\" name=\"sort_dir\" value=\"DESC\">"
str += "    <input type=\"hidden\" name=\"show_as\" value=\"topics\">"

str += "    <p><input type=\"submit\" class=\"button\" name=\"search\" value=\"Отправить\" accesskey=\"s\" title=\"Accesskey:s\" /></p>"
str += " </form>"

str += "    <a href=\"search.php\">Расширенный поиск</a> "
str += "</div>"

document.getElementById('navsearch').innerHTML = str
</script>
<style>
#searchDiv{
position:absolute; 
background-color : Gray; 
border : solid;
padding-bottom : 5px;
padding-left : 5px;
padding-right : 5px;
padding-top : 5px;
z-index:2;
}
</style>

Внимание!
Этот скрипт надо вставлять в html-низ!!!
Но в разных браузерах он будет отображаться по-разному.
Cмена цвета  -  Gray

Есть параметр background-color
вместо Gray указывай любой какой захочешь:

Код:
<style>
#searchDiv{
position:absolute; 
background-color : Gray; 
border : solid;
padding-bottom : 5px;
padding-left : 5px;
padding-right : 5px;
padding-top : 5px;
z-index:2;
}
</style>

0

24

Форма быстрого перехода между разделами (либо перехода куда угодно)

Код:
<FORM>
<SELECT size=1 name='navigation'> 
  <OPTION value='http://forum.mybb.ru/viewforum.php?id=1' selected>Информация сервиса</OPTION>
  <OPTION value='http://forum.mybb.ru/viewforum.php?id=2'>Комментарии и предложения</OPTION>
  <OPTION value='http://forum.mybb.ru/viewforum.php?id=3'>Вопросы по работе сервиса</OPTION>
  <OPTION value='http://forum.mybb.ru/viewforum.php?id=4'>Вопросы по устройству форумов</OPTION>
  <OPTION value='http://forum.mybb.ru/viewforum.php?id=5'>Вопрсы по оформлению форумов</OPTION>
  <OPTION value='http://forum.mybb.ru/viewforum.php?id=6'>Ваши форумы</OPTION>
  <OPTION value='http://forum.mybb.ru/viewforum.php?id=7'>Оффтопик</OPTION>
  <OPTION value='http://forum.mybb.ru/viewforum.php?id=8'>Корзина</OPTION>
</SELECT>
<INPUT class=but onclick="location.href = this.form.navigation.options[this.form.navigation.selectedIndex].value" type=button value="ВПЕРЁД!" name=button>
</FORM>

Сцылки и названия меняем на свое
Красным - надпись на кнопке
selected - дефолтная позиция формы при рефреше окна

0

25

Последние 10 сообщений в статистику.
В html-низ.

Код:
<script src="/export.php?type=js&max=10" type="text/javascript"></script>
<script type="text/javascript">
var html='';
var ts = '';
var mo = '';
var hh = '';
var mm = '';
var i = 0;
for(i=0;i<content.length;i++) {
	ts = new Date();
	ts.setTime(1000*content[i][0]);
	mo = ts.getMonth()+1;
	if (mo<10) mo='0'+mo;
	hh = ts.getHours();
	mm = ts.getMinutes()+'';
	if (mm<10) mm='0'+mm;
	ts = ts.getDate()+'.'+mo+' '+hh+':'+mm;
html2="</tr></tbody></table></div>"
html1="<h2>Последние 10 сообщений форума</h2><div class=\"container\"><table cellspacing=\"0\" width=100%><thead><tr><th scope=\"col\">Автор</th><th scope=\"col\">Время</th><th scope=\"col\">Последнее сообщение</th></tr></thead><tbody class=\"hasicon\">"
html+='<tr><td>'+content[i][1]+'</td><td class=\"tc2\">'+ts+'<td class=\"tcr\"><a href=\"'+content[i][2]+'\" target=\"_blank\">'+content[i][3]+'</a><br /></td></tr>';
}

var arr=document.getElementsByTagName("div")
i=0
str=document.URL
while(arr[i] ){
if((str.substring(str.lastIndexOf('/')+1)=="" || str.substring(str.lastIndexOf('/')+1)=="index.php") && arr[i].className=="statscon"){
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML=""+html1+""+html+""+html2+"<br><h2>Общая статистика</h2>"+name+""
}
i++
}
</script>

Скрипт добавит в статистику оформленную табличку для 10 последних сообщений, который форум сгенерирует сам(с помощью яваскрипта на экспорт файлов).
Что можно поменять в скрипте?
Первая строка - export.php?type=js&max=10, 10 можете поменять на свое, в зависимости от того, сколько новых сообщений должно выводиться на главной.

0

26

Недокументированые возможности: Дополнительные кнопки в BB-панель. Duka
Скрипт добавит в вашу панель кнопки 2х категорий:
1) Работа с таблицей - т.е. кнопку Таблицы, ячейки, строки
2) BB-коды - Добавлено [add*][/add*]
предварительно форматированый текст [pre*][/pre*]
желтый фон [h*][/h*]
горизонтальная линия [hr*]

Вставлять в верх или форму ответа.

Код:
<script type="text/javascript">
var name2="'[/add]')\" /></fieldset></td><td style=\"border: 0;\"><fieldset style=\"padding: 3px;\"><legend>Таблица</legend><input type=\"button\" value=\" Таблица \" title=\"Создать скелет таблицы\" name=\"TABLE\" onclick=\"bbcode('[table]','[/table]')\" /><input type=\"button\" value=\" Строка \" name=\"TR\" title=\"Добавить строку в вашу таблицу\"  onclick=\"bbcode('[tr]','[/tr]')\" /><input type=\"button\" value=\"Ячейка\" name=\"TD\" onclick=\"bbcode('[td]','[/td]')\" title=\"Добавит ячейку в строку\"  /></fieldset></td></table></div>"
var arr=document.getElementsByTagName("div")
i=0
str=document.URL
while(arr[i] ){
if(arr[i].className=="fs-box hashelp"){
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML="<div class=\"inform\" id=\"q1Span\" ><table style=\"border: 0;\"><tr><td style=\"border: 0;\"><fieldset style=\"padding: 3px;\"><legend>Текст</legend><input type=\"button\" value=\"Желтый фон\" name=\"H\" title=\"Добавит желтый фон к вашему тексту\" onclick=\"bbcode('[h]','[/h]')\" /><input type=\"button\" value=\" PRE \" name=\"PRE\" title=\"Предварительно отформатированый текст\" onclick=\"bbcode('[pre]','[/pre]')\" /><input type=\"button\" value=\"Линия\" name=\"H\" title=\"Добавит горизонтальную линию к вашему тексту\" onclick=\"bbcode('[hr]',' ')\" /><input type=\"button\" value=\"Добавлено\" name=\"add\" title=\"Если вы хотите добавить комментарий к вашему же сообщению, отредактируйте свое сообщение и внесите свой текст. После этого выделите и нажмите на эту кнопку.\" onclick=\"bbcode('[add]',"+name2+""+name+""
}
i++
}
</script>

Что такое PRE?
#-----------------------------------------------------------
# For MyBB
#-----------------------------------------------------------
# http://rmcreative.ru/article/programming/typograph/
#-----------------------------------------------------------
# «Типограф» — средство подготовки текстов к web-изданию.
# Форматирует текст для приведения его к более правильному
# с точки зрения типографики виду.
#-----------------------------------------------------------
# Для того чтобы введённый текст проверился Типографом,
# его необходимо будет заключить в теги [pre*] [/pre*] без звездочек
#-----------------------------------------------------------
# Изначально этот тег был вмонтирован в движок
#-----------------------------------------------------------

0

27

Новые иконки в форме ответа
В форму ответа.

Код:
<style>
#form-buttons table, .punbb .formal textarea {width:99%}
#form-buttons td {padding:0; line-height:0; background-position:center; background-repeat:no-repeat}
#form-buttons td img {height:26px; width:100%}
#button-font {background-image:url('картинка шрифт')}
#button-size {background-image:url('картинка размер')}
#button-bold {background-image:url('картинка жирность')}
#button-italic {background-image:url('картинка курсив')}
#button-underline {background-image:url('картинка подчеркивание')}
#button-strike {background-image:url('картинка зачеркивание')}
#button-left {background-image:url('картинка влево)}
#button-center {background-image:url('картинка центр')}
#button-right {background-image:url('картинка вправо')}
#button-link {background-image:url('картинка ссылок')}
#button-email {background-image:url('картинка мыла')}
#button-image {background-image:url('картинка картинок')}
#button-youtube {background-image:url('картинка картинок')}
#button-hide {background-image:url('картинка скрытого текста')}
#button-quote {background-image:url('картинка цитаты')}
#button-code {background-image:url('картинка кода')}
#button-color {background-image:url('картинка цветов')}
#button-smile {background-image:url('картинка смайлов')}
#button-keyboard {background-image:url('картинка клавиатуры')}
#button-imageup {background-image:url('картинка загрузки изображений')}
</style>

0

28

Кнопка "Вверх" в каждом сообщении справа от Цитировать.
В html-верх

Код:
<script type="text/javascript">
var arr=document.getElementsByTagName("li")
i=0
while(arr[i] ){
if(arr[i].className=="pl-quote"){
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML=""+name+" &ensp;&ensp; <a href=\"javascript:scroll(0,0);\">Вверх</a> "
}
i++
}
</script>

Тот же вариант, но с переносом к первому сообщению

Код:
<script type="text/javascript">
var arr=document.getElementsByTagName("li")
i=0
while(arr[i] ){
if(arr[i].className=="pl-quote"){
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML=""+name+" &ensp;&ensp; <a href=\"#pun-main\">Вверх</a> "
}
i++
}
</script>

0

29

Сокрытие информации под аватаром с помощью кнопки. (с) Karpoff

Код:
<script>
function HideInfo(id,but){
if(but.value=="+"){
  but.value = "-";document.getElementById(id).style.display = ""}
else{
  but.value = "+";document.getElementById(id).style.display = "none"}
  return false}

d = document.getElementsByTagName("div")

for (i=0;d[i]; i++){
if (d[i].className.indexOf("post-author")!=-1){t = d[i].innerHTML
   if((j = t.toLowerCase().indexOf("<li class=pa-from>"))!=-1 || (j = t.toLowerCase().indexOf("<li class=\"pa-from\">"))!=-1 || (j = t.toLowerCase().indexOf("<li class=pa-reg>"))!=-1 || (j = t.toLowerCase().indexOf("<li class=\"pa-reg\">"))!=-1)
    d[i].innerHTML = t.substring(0,j)+"<input type='Submit' onClick=\"return HideInfo('info"+i+"',this)\" value='+'><br><div id='info"+i+"' style='display:none'>"+t.substring(j,t.length)+"</div>"}}
</script>

Вставляем в html-низ или в форму ответа
Если вставить в форму ответа, то скрипт не будет лишний раз грузиться на главной странице, на странице просмотра тем итд, но при этом скрипт будет работать только для зарегистрированных пользователей которые могут отвечать в данной теме. Так что куда вставлять выбираем сами

0

30

Изменение слова "Позитив" на свое

Код:
<script type="text/javascript">
function changeLink()
{var arr=document.links
for (j in arr)
{
if (arr[j].innerHTML=="Позитив")
{arr[j].innerHTML="Ваше слово"}

}}
changeLink()
</script>

HTML низ соответственно

0


Вы здесь » Role catalogue » Полезности для форумов » Каталог скриптов


Сервис форумов BestBB © 2016-2024. Создать форум бесплатно