Неофициальная техническая поддержка MyBB

Объявление

Приветствуем ;)

На форуме Неофициальной Технической Поддержки MyBB.

Нам 11 лет 6 месяцев.

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

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



Полезные Скрипты

Сообщений 31 страница 50 из 50

31

Скрипт наград.

Возможности:

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

ВСТАВЛЯЕМ В HTML-НИЗ.

Код:
<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>

Чтобы добавить награду свою награду вставляйте:

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

Это и заменяйте на своё, перед:

Код:
var awardsn = new Array();

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

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

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

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

Обращаю Ваше внимание:
Что в скрипте уже есть набор медалек
Что не надо в проффайле пользователя писать url наградки, а лишь ключ , который Вы написали.
Что надо вставлять в HTML-НИЗ
Что надо создать дополнительное поле.

Приятных наград.

Отредактировано arnsheridan (27.09.2009 18:50:16)

0

32

Если Вы хотите сдвинуть форум вправо или влево то это скрипты для Вас.

Код:
<style>
#pun {float: right;}
</style>
Код:
<style>
#pun {float: left;}
</style>

0

33

"Знак Зодиака на форум!".

Создаём в администрации~поля новое поле - Знак Зодиака.
Если это первое поле то ничего не надо указывать, а если второе или третие , то отыскиваем слова "pa-fld" и вставляем после него без пропусков номер поля.

ВСТАВЛЯЕМ  СКРИПТ В HTML-НИЗ ИЛИ В ФОРМУ ОТВЕТА:

Код:
<script type="text/javascript">
var Vmain=document.getElementById('pun-main').getElementsByTagName("li");
var Vzdk=0;
for (Vzdk=0; Vzdk<=(Vmain.length-1); Vzdk++)
  {
    if (Vmain[Vzdk].className=="pa-fld1")
      {
        if ((Vmain[Vzdk].innerHTML.indexOf("Овен")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("овен")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39180-1.gif' />"
        }
        if ((Vmain[Vzdk].innerHTML.indexOf("Телец")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("телец")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39180-2.gif' />"
        }
        if ((Vmain[Vzdk].innerHTML.indexOf("Близнецы")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("близнецы")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39180-3.gif' />"
        }
        if ((Vmain[Vzdk].innerHTML.indexOf("Рак")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("рак")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39180-4.gif' />"
        } 
        if ((Vmain[Vzdk].innerHTML.indexOf("Лев")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("лев")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39180-5.gif' />"
        } 
        if ((Vmain[Vzdk].innerHTML.indexOf("Дева")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("дева")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39181-1.gif' />"
        }
        if ((Vmain[Vzdk].innerHTML.indexOf("Весы")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("весы")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39181-2.gif' />"
        } 
        if ((Vmain[Vzdk].innerHTML.indexOf("Скорпион")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("скорпион")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39181-3.gif' />"
        } 
        if ((Vmain[Vzdk].innerHTML.indexOf("Стрелец")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("стрелец")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39181-4.gif' />"
        }
        if ((Vmain[Vzdk].innerHTML.indexOf("Козерог")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("козерог")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39181-5.gif' />"
        }
        if ((Vmain[Vzdk].innerHTML.indexOf("Водолей")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("водолей")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39182-1.gif' />"
        } 
        if ((Vmain[Vzdk].innerHTML.indexOf("Рыбы")!=-1)||(Vmain[Vzdk].innerHTML.indexOf("рыбы")!=-1))
        {
          Vmain[Vzdk].innerHTML="Знак Зодиака: "+"<br><img src='http://forumupload.ru/uploads/0000/0a/f2/39182-2.gif' />"
        }             
 
      }
}
</script>

Заходите в профиль~остальное и пишите знак Зодиака в поле "Знак Зодиака" свой знак и в любом сообщении будет видна маленькая картинка, соответствующая написанному Вами  знаку Зодиака. Например: Овен.

0

34

"Автоматизированный помощник по CSS".

Вставляем в администрация~дополнительные пункты меню и вставляем этот скриптик:

Код:
0=<input type='button' value='Сss' onClick=location.href='http://ibtek.ru/mybb/index.php'>

И мы добьёмся кнопочки "CSS" в заголовке форума.
Нажимаем на кнопку и видим следующую картинку:

В первом пункте вводим адрес своего форума. Если Вы хотите отредактировать не главную страницу форума, то пишите адрес нужной страницы. Вы всё поймёте, а тот код , который получится вводите во второе поле.

Отредактировано arnsheridan (28.09.2009 21:16:28)

0

35

"Баннеры".

С помощью этого скрипта Вы сможете создать спойлер "Баннеры", под которым будут баннеры.

ВСТАВЛЯТЬ В HTML-НИЗ.

Код:
<hr>
    <br>
    <div>
    <input type="Button" value="Баннеры" onclick="return showhide(this)">
    <p style="display:none">
 <a href="Адрес форума с http, доменом и всем остальным" <img src="Ссылка на картинку баннера" border="0" alt=" Описание баннера" width="вводите нужное число" height="вводите нужное число" ></a>
    </p></div>
    <script>
    function showhide(b){
    p = b.parentNode.getElementsByTagName("p")[0]
    if(b.value=="Баннеры"){
    b.value="Скрыть баннеры"
    p.style.display="block"}
    else{
    b.value="Баннеры"
    p.style.display="none"}
    return false}
    </script>

Баннеров можно вставлять сколько угодно.

0

36

"Выделяем группы".

Вставлять в HTML-НИЗ.

<script type="text/javascript">
var arr=document.links
var arr1=new Array ("Admin", "Татьяна")
var arr2=new Array ("Ruslan", "WebMaster")
for (x in arr)
{for (y in arr1)
{for (j in arr2)
{if (arr[x].innerHTML==arr1[y])
{var b=arr[x].innerHTML
arr[x].innerHTML="<font color='red'>"+b+"</font>"}
else if (arr[x].innerHTML==arr2[j])
{var c=arr[x].innerHTML
arr[x].innerHTML="<font color='#0000FF'>"+c+"</font>"}}}}
</script>

В красной строчке пишем через запятую имена админов, а в синий через запятую имена админов.

Другой скрипт меняет все ники на форуме.

Код:
<script type="text/javascript">
var arr=document.getElementsByTagName("td")
var arr1=new Array ("Admin", "Татьяна")
var arr2=new Array ("Ruslan", "WebMaster")
var x=0
var j=0
for (x in arr)
{while (x<=(arr.length -1))
{for (j in arr1)
{while (j<=(arr1.length-1))
{if (arr[x].innerHTML.indexOf(arr1[j])!= -1)
{arr[x].innerHTML=arr[x].innerHTML.substring (0, arr[x].innerHTML.indexOf(arr1[j]))+"<font color='red'>"+arr1[j]+"</font>"+arr[x].innerHTML.substr (arr[x].innerHTML.indexOf(arr1[j])+arr1[j].length)}
j=j+1}}
x=x+1}}
for (x in arr)
{while (x<=(arr.length -1))
{for (i in arr2)
{while (i<=(arr2.length -1))
{if (arr[x].innerHTML.indexOf(arr2[i])!= -1)
{arr[x].innerHTML=arr[x].innerHTML.substring (0, arr[x].innerHTML.indexOf(arr2[i]))+"<font color='red'>"+arr2[i]+"</font>"+arr[x].innerHTML.substr (arr[x].innerHTML.indexOf(arr2[i])+arr2[i].length)}
i=i+1}}
x=x+1}}
</script>

0

37

Фух... Вырвался на часок.
Новый скрипт.
Разделяем темы на блоки.

Код:
<script type="text/javascript">
if (document.URL.indexOf("viewforum")!=-1)
{var trs=document.getElementById('pun-main').getElementsByTagName("table")[0].rows
var io=1
for (io=1; io<=(trs.length-1); io++)
{if ((trs[io].className.indexOf("isticky")!=-1)&&(io==1))
{var portant=document.getElementById('pun-main').getElementsByTagName("table")[0].insertRow(1)
var im=portant.insertCell(0)
im.innerHTML="Важные темы"
im.style.color="#0000FF"
im.style.backgroundColor="#FFFFFF"
im.colSpan="4"}
else if ((trs[io].className.indexOf("isticky")!=-1)&&(trs[io+1].className.indexOf('isticky')==-1))
{var normal=document.getElementById('pun-main').getElementsByTagName("table")[0].insertRow(io+1)
var normal1=normal.insertCell(0)
normal1.innerHTML="Темы форума"
normal1.style.color="#0000FF"
normal1.style.backgroundColor="#FFFFFF"
normal1.colSpan="4"
}}}
</script>

Если Вы хотите заменить цвет фона строк "Важных тем" и "Тем форума" ( Вы их можете заменить ), то отыскиваем строчки:

Код:
im.style.backgroundColor="#FFFFFF"
normal1.style.backgroundColor="#FFFFFF"

И то , что в кавычках заменяем на своё ( то, что в кавычках это код цвета ).

Если Вы хотите заменить цвет шрифта в этих строках , то отыскиваем строчки:

Код:
normal1.style.color="#0000FF"
im.style.color="#0000FF"

То, что в кавычках заменяем на своё ( то ,что в кавычках это код цвета шрифта ).

0

38

"Для каждого форума своя иконка."

Код:
<style type="text/css">
#pun-main .category Div.icon {float: left; display: block; border-style: none none none none; height: 45px; width: 45px; background-repeat : no-repeat; background-position: top center; background-color : transparent;}

tr#forum_f30 div.icon {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }
tr#forum_f30 div.inew {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }

tr#forum_f2 div.icon {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }
tr#forum_f2 div.inew {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }

tr#forum_f31 div.icon {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }
tr#forum_f31 div.inew {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }

tr#forum_f3 div.icon {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }
tr#forum_f3 div.inew {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }

tr#forum_f17 div.icon {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }
tr#forum_f17 div.inew {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }

tr#forum_f43 div.icon {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }
tr#forum_f43 div.inew {background-image: url(http://forumupload.ru/uploads/0002/25/06/8547-1.gif);  }

</style>

Заменяем tr#forum_f43 на номер форума.

А http://forumupload.ru/uploads/0002/25/06/8547-1.gif на свой url картинки.

0

39

Студентка написал(а):

arnsheridan

насколько я знаю "Скрипты от пользователей"-название темы предполагает что выкладываемые здесь скрипты -именно ваши, к примеру-Вы написали скрипт-Иконки форума, или Разделение тем на простые и важные??

arnsheridan написал(а):

    Новый скрипт.Разделяем темы на блоки.

просто смешно-новый, этому скрипту уже 2 года)))

Критиковать каждый может.

Студентка написал(а):

насколько я знаю "Скрипты от пользователей"-название темы предполагает что выкладываемые здесь скрипты -именно ваши, к примеру-Вы написали скрипт-Иконки форума, или Разделение тем на простые и важные??

Другие подтянуться.

0

40

переименуем тему в полезные скрипты?)

0

41

~Jess~ написал(а):

переименуем тему в полезные скрипты?)

Как хотите.

0

42

Студентка написал(а):

критика полезное дело, к примеру зайдет  к вам на форум Duka и увидит что вы его скрипты выкладываете как свои

Я говорил, что это мои?

0

43

Скрипт "Никто админов не увидит".

Код:
<script type="text/javascript">
var who=document.getElementById('pun-status').innerHTML
var whi=document.getElementsByTagName("tr")
var s=0
if (document.URL=="Полный адрес форума/online.php")
{for (s=0; s<=(whi.length-1);s++)
{if ((whi[s].innerHTML.indexOf("Ник админа")!=-1)||(whi[s].innerHTML.indexOf("Ник админа")!=-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=="Ник админа")||(def1[f].innerHTML=="Ник админа"))
{def1[f].style.display="none"}}
</script>

Скрипт рассчитан на двух админов.
ВСТАВЛЯТЬ В HTML-НИЗ.

0

44

"Загрузка файлов в форму ответа".

Код:
<script type="text/javascript">
if(form=document.getElementById("form-buttons"))
form.getElementsByTagName("tr")[0].insertCell(19).innerHTML="<a href='javascript:void(0);' onclick=\"window.open('http://www.sharing.ru/upload/partner.php?id=1', 'uploadfile', 'width=500, height=275, top=200, left=200');\"><img title='Вставить файл' src='http://forumupload.ru/uploads/0000/14/a5/12680-1.jpg' width='21' height='20' /></a>"
</script>

"19" заменяем на порядковый номер в форме ответа.
ВСТАВЛЯТЬ В HTML-НИЗ.

+1

45

Большинство скриптов были предоставлены  Duka, Zebra, Karpoff
За что им огромное спасибо и за разрешение использовать их бесплатно

0

46

а вообще что такое скрипты и зачем они нужны?

0

47

Д@ш@
Скрипты улучшают функциональность форума.

0

48

1) и так в html-верх идет вот эта часть

Код:
<script type="text/javascript">
function GET(){
	var a = location.search.slice(1);
	a = a.split('&')
	var i = 0
	var b = new Object;
	while(a[i]) {
a[i] = a[i].split('=')
b[a[i][0]] = a[i][1];
i++;
	}
	return b
}
var GET = GET();
var first_post_key = '·';
var matches = document.cookie.match(new RegExp("(?:^|; )" + 'mybb_ru='.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"))
var cookie = matches ? decodeURIComponent(matches[1]) : ''

if(location.href.indexOf('viewtopic.php?id=')!=-1 && location.href.indexOf('&p=')!=-1)
	document.write("<scr"+"ipt ty"+"pe=\"text/javascr"+"ipt\" src=\"http://nalm-group.net/forums/first_post.php?tid="+GET['id']+"&page="+GET['p']+"&host="+location.hostname+"&cookie="+cookie+"\">"+"</scr"+"ipt>");
else
	first_post = false;
</script>

здесь обращаем внимание вот на такую строку

Код:
var first_post_key = '·';

Если она у вас часто используется в названии тем, то замените на другой каверзный символ или словосочетание
2)в форму ответа ставим эту часть

Код:
<script type="text/javascript">
if(location.href.indexOf('post.php')!=-1) {
	var form = document.getElementById('post');
	var p = document.createElement('p');p.className = 'checkfield';
	p.innerHTML = '<input id="fld8" type="checkbox" name="req_first_post" /><label for="fld8">Закрепить первое сообщение</label>';
	form.getElementsByTagName('fieldset')[0].appendChild(p)
	form.onsubmit = function(){
if(this.req_first_post.checked && process_form(this))
	this.req_subject.value += ' '+first_post_key
if(process_form(this))
	return true;
else
	return false;
}
}
</script>
Код:
<script type="text/javascript">
if(first_post!==false && document.getElementById("pun-main").getElementsByTagName('h1')[0].getElementsByTagName('span')[0].innerHTML.indexOf(first_post_key)!=-1) {
	var div = document.getElementById('pun-main').getElementsByTagName('div');
	for(var i=0;i<div.length;i++) {
if(div[i].className=='post toppost' || div[i].className=='post toppost endpost') {
	div[i].parentNode.innerHTML = first_post+div[i].parentNode.innerHTML;
	break;
}
	}
}

first_post_key = ' '+first_post_key;
if(location.href.indexOf('viewtopic.php')!=-1) {
	document.getElementById("pun-main").getElementsByTagName('h1')[0].getElementsByTagName('span')[0].innerHTML=document.getElementById("pun-main").getElementsByTagName('h1')[0].getElementsByTagName('span')[0].innerHTML.replace(first_post_key, '');
	document.getElementById("pun-crumbs1").getElementsByTagName('p')[0].innerHTML=document.getElementById("pun-crumbs1").getElementsByTagName('p')[0].innerHTML.replace(first_post_key, '');
	document.getElementById("pun-crumbs2").getElementsByTagName('p')[0].innerHTML = document.getElementById("pun-crumbs2").getElementsByTagName('p')[0].innerHTML.replace(first_post_key, '');
}
else if(location.href.indexOf('viewforum.php')!=-1) {
	var a = document.getElementById("pun-main").getElementsByTagName('a')
	for(var i = 0;i<a.length;i++)
a[i].innerHTML = a[i].innerHTML.replace(first_post_key, '');
}
else if(location.href=='http://'+location.hostname+'/' || location.href=='http://'+location.hostname+'/index.php') {
	var a = document.getElementById("pun-main").getElementsByTagName('a')
	for(var i = 0;i<a.length;i++)
a[i].innerHTML = a[i].innerHTML.replace(first_post_key, '');
}
else if(location.href.indexOf('edit.php')!=-1) {
	var form = document.getElementById('post');
	form.onsubmit = function(){
if(this.first_post.checked && process_form(this))
	this.req_subject.value += first_post_key;

if(process_form(this))
	return true;
else
	return false;
	}
	var p = document.createElement('p');p.className = 'checkfield';
	p.innerHTML = '<input id="fld8" type="checkbox" name="first_post" '+(form.req_subject.value.indexOf(first_post_key)!= -1 ? 'checked="checked"' : '')+' /><label for="fld8">Закрепить первое сообщение</label><span id="formkey" style="display: none;"></span><span id="formetc" style="display: none;"></span>';

	form.req_subject.value = form.req_subject.value.replace(first_post_key,'');
	document.getElementById("pun-main").getElementsByTagName('h1')[0].getElementsByTagName('span')[0].innerHTML=document.getElementById("pun-main").getElementsByTagName('h1')[0].getElementsByTagName('span')[0].innerHTML.replace(first_post_key, '');
	document.getElementById("pun-crumbs1").getElementsByTagName('p')[0].innerHTML=document.getElementById("pun-crumbs1").getElementsByTagName('p')[0].innerHTML.replace(first_post_key, '');
	document.getElementById("pun-crumbs2").getElementsByTagName('p')[0].innerHTML = document.getElementById("pun-crumbs2").getElementsByTagName('p')[0].innerHTML.replace(first_post_key, '');

	form.getElementsByTagName('fieldset')[0].getElementsByTagName('div')[0].appendChild(p)
}
</script>

чтобы как-то подукрасить это сообщение используйте селектор

#first_post.topicpost{css}/*или*/#first_post.post{css}

баги
Баг1: не достаются сообщения из закрытых разделов
Баг2: не появляются ссылки цитировать, редактировать и об авторе(Вебсайт, профиль, емаил)
Баг3: Сообщение не вставляется, если на странице только один пост
Баг4: не работает закрепление на странице редактирования

обновления
upd: добавил возможность включения/выключения

Автор: mkusher

0

49

1) html-верх

<script src="http://ferodar.narod.ru/ajax/js/jquery.js"></script>

2) html-низ или форма ответа(если гости не могут просматривать форумы)

Код:
<style>
#button-spoiler {background-image:url('http://forumupload.ru/uploads/0000/12/13/488-1.gif'); padding:0; line-height:0; background-position:center; background-repeat:no-repeat; height:26px; width:100%}
</style>
<script type="text/javascript">
function tag_spoiler(){
	var y = prompt("Введите описание закрытой кнопки",'');
	if(y!='null' && y!='' && typeof(y)!='object' && typeof(y)!='undefined'){
	var x = prompt("Введите описание открытой кнопки",'');
	if(x=='null' || x=='' || typeof(x)=='object' || typeof(x)=='undefined') bbcode('[spoiler='+y+']','[/spoiler]'); else bbcode('[spoiler='+y+'|'+x+']','[/spoiler]');}
	else bbcode('[spoiler]','[/spoiler]')
}
function addSpoiler(str,from,internal){
	var pos=0,pos2=0,pos_c=0,pos_l=0,newpos=0,string='',close='',open='';
	if((pos=str.indexOf("[spoiler",from))==-1) return str;
	if((pos2=str.indexOf("[/spoiler]"),pos+9)==-1) return str;
	if(((pos_c=str.indexOf("]",pos+8))!=-1) && ((pos_c!=pos+8)&&(pos_c!=pos+9))){
	string = str.substring(pos+9,pos_c);
	if((pos_l = string.indexOf("|"))!=-1){
close = string.substring(0,pos_l);
open = string.substring(pos_l+1,string.length);
	}
	else{
close = string;
open = string;
	}
	}
	else{
close = 'Показать спойлер';
open = 'Скрыть спойлер';
	}
	newpos=str.indexOf("[spoiler",pos+9)
	if(newpos<pos2 && newpos!=-1) str=addSpoiler(str,pos+9,true)
	if((pos2=str.indexOf("[/spoiler]",pos+9))==-1) return str;
	str=str.substring(0,pos)+makeSpoiler(str.substring(pos_c+1,pos2),open,close)+str.substring(pos2+10,str.length)
	if( str.indexOf("[spoiler")!=-1 && internal==false) str=addSpoiler(str,0,false)
	return str;
}

function makeSpoiler(txt,open,close){
	txt='<div class="quote-box" style="padding:1px;background: none; border: 0;"><cite style="width:100%;margin:0;"><input id="'+open+'" class="spoiler-button" style="width:140px;font-size:10px; margin:0;" type="button" value="'+close+'"></cite><blockquote class="quote-box" style="display:none; width: 80%;border: 1px solid black;margin:0;">'+txt+'</blockquote></div>'
	return txt;
}

$(document).ready(function(){
	$("div.quote-box > cite > input.spoiler-button").click(function(){
$(this).parents("div.quote-box:first").find("blockquote.quote-box:first").toggle("slow");
var a = $(this).attr('value');$(this).attr('value',$(this).attr('id'));$(this).attr('id',a);
	});
});

if((document.URL.indexOf("viewtopic.php")!=-1) || (document.URL.indexOf("post.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=addSpoiler(post.innerHTML,0,false)
	}
}
if(form=document.getElementById("form-buttons"))
	form.getElementsByTagName("tr")[0].insertCell(16).innerHTML="<img  id=\"button-spoiler\" title=\"Спойлер\" onclick=\"tag_spoiler('[spoiler]','[/spoiler]')\" src=\"/i/blank.gif\" />"
</script>

Автор: mkusher and karpoff

0

50

Подскажите пожалуйста... Вот лазила по многим форумам и видела много всякого. Вот меня интересуют дополнительные кнопочки в форме ответа. Они есть у вас? Что то я полазила и не увидела. Если у вас есть какие-то в запасе, то поделитесь пожалуйста!

0