Техническая поддержка SpyBB

Объявление

Ответы на часто задаваемые вопросы  |  FAQ по администрированию форума  |  FAQ по дизайну форума в CSS  |  Абсолютный помощник по дизайну  |  Навигатор по форуму

Перед регистрацией прочтите правила форума
При поиске ответа на заданный вопрос рекомендуем пользоваться «Поиском».
В случае проблемы с форумом, обязательно указывайте его адрес, иначе мы не сможем Вам помочь!

● 24 марта 2012г. - Закрепление первого сообщения
● 23 марта 2012г.: Изменения в форме ответа - Добавлен стандартный спойлер. Доработан функционал кнопок

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

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


Вы здесь » Техническая поддержка SpyBB » Архив » Информационное табло на форум. Бета-версия (c) Duka


Информационное табло на форум. Бета-версия (c) Duka

Сообщений 1 страница 20 из 26

1

В очередной раз, бессоными ночами бороздя просторы Единой техподдержки, я обнаружил интересную вещь от, не побоюсь сказать, javascript-мастера  Duka  :tomato: .  Вот выкладываю цитату с форума.

Информационное табло на форум. Бета-версия (c) Duka

Сразу показываю демо = http://tests.rusff.org.ru/
[реклама вместо картинки]

Код:
<script type="text/javascript">
var news="Новость"
var news1="Нет новости1"
var link1=""
var news2="Нет новости2"
var link2=""
var news3="Нет новости3"
var link3=""
var news4="Нет новости4"
var link4=""
var tablo="<div id=\"pun-category1\" class=\"category\"><h2><div class=\"catleft\"><!-- --></div><span>Информационное табло</span><div class=\"catright\"><!-- --></div></h2><div class=\"container\"><table cellspacing=\"0\"><thead><tr><th scope=\"col\">Новости</th><th scope=\"col\">Статистика сообщений</th><th scope=\"col\">Статистика пользователей</th><th scope=\"col\">4 Новости дня</th></tr></thead><tbody class=\"hasicon\"><td>"+news+"</td><td class=\"tc2\">Не хотите ли просмотреть<br/><a href='/search.php?action=show_24h'>Активные темы</a><br/>или <br/><a href='/search.php?action=show_new'>Новые сообщения</a><br/>с момента вашего последнего визита?<br/></td><td class=\"tc3\"><a title=\"Самые активные пользователи форума\" href=\"statistic.php?action=active_users\">Самые активные</a><br><Br><a title=\"Самые активные пользователи сегодня\" href=\"statistic.php?action=active_users_today\">Активные сегодня</a><br><br><a title=\"Администрация форума\" href=\"statistic.php?action=administration\">Администрация</a><br><br><a title=\"Посмотреть полную статистику\" href=\"statistic.php\">Полная статистика</a></td><td class=\"tcr\"><a href="+link1+">"+news1+"</a><br><a href="+link2+">"+news2+"</a><br><a href="+link3+">"+news3+"</a><br><a href="+link4+">"+news4+"</a></td></tr></tbody></table></div></div>"
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=="main"){
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML=""+tablo+"<br>"+name+""
}
i++
}
</script>

Этот скрипт сделает на вашем форуме Новое усовершенствованое табло, которое будет дополнением к таблице.
Скрипт будет отображаться только на главной странице

Внимательно работайте с ней, никакой защиты от дураков я в нее не поставил, Любая ковычка может сломать скрипт и он работать Не будет!

Желательно ставить в самый верх html-низ.
Как настроить скрипт?
var news="Нет новостей"
Вместо Нет новостей Пишим любой текст, можно и хтмл, но НИКАКИХ КОВЫЧЕК! Заменяйте свои ковычки на ' (апостроф) или же ставьте перед каждой ковычки \ , дабы экранировать их.
Эта часть скрипта будет самой левой частью колонки.

var news1="Нет новости1"
var link1=""
var news2="Нет новости2"
var link2=""
var news3="Нет новости3"
var link3=""
var news4="Нет новости4"
var link4=""
За что отвечают эти строчки?
Эти строки выводят ссылки в самой правой части колонки. Вместо Нет новости1, а также 2,3,4 вводите Заголовки ссылки, а в  var link1="" в сами ковычки добавляете ссылку на тему(или страницу)
т.е. долюно получится примерно так:
var news1="Скрипты от пользователей"
var link1="http://forum.mybb.ru/viewtopic.php?id=6902"
Так же и с остальными ссылками.
Т.е. в скрипте я заранее прописал шаблон примерно такого вида <a href=ссылка>Заголовок</a>, чтобы вы ничего не начудили так, а сразу подставили в поля свои данные.
Это единственное, что можно поменять на свое, не опасаясь за скрипт. Если вы владеете уверенными знаниями в HTML,а также знанием html-структуры форума, то можете смело осторожно глянуть на строчку var tablo= и поменять пару фраз. Что находится во втором столбце? Там находятся 2 ссылки на Новые сообщения, и Активные темы. Что в третем столбце? Там находятся ссылки на функции, которые администратор отключил. Некоторое время они окажутся ненужными, но когда Admin включит полную статистику, то тогда и эти ссылки окажутся нам полезными.

Табло адаптируется под каждый форум автоматически, т.е. срабатывает под каждый стиль. Ненадо беспокоиться о внешних качествах, ведь табло примет все стили форума на себя и станет ее частью)

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

Пользуемся, но помним: Никаких ковычек(либо экранируйте их)

Добавлено:

Обновил скрипт, не работал, сейчас все отлично!

0

2

А как можно добавить новость в разделе Новости?

0

3

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

А как можно добавить новость в разделе Новости?

Т.е. хотел написать, как можно добавить баннер в это табло?

0

4

Dante
В эту строчку: var news="Нет новостей"
Вместо подчеркнутого вставляете код баннера,заменяя в нем кавычки (") на апострофы (')!

0

5

Спасибо!) +1!

0

6

Спасибо все работает!

0

7

Простите, но у меня одна проблема: я поставила к себе на форум "Информационное табло", но когда захожу, например в: "Самые активные", "Активные сегодня", "Администрация", "Полная статистика", мне пишут: Вы не имеете прав для доступа к этой странице. Что мне делать? :huh:

Адрес форума: http://harrypotterworld.spybb.ru

Отредактировано Эмили (29 Авг 2008 19:45:55)

0

8

Эмили

На вашем форуме я почему-то кроме мини-чата, МР3 проигрывателя и погоды больше ничего не вижу оО

0

9

Виллоу
Так таблица же вверху! После шапки.

Отредактировано Эмили (29 Авг 2008 20:04:58)

0

10

Эмили

Проблема в том что кроме того что я сказала выше ничего нет...и форум не прокручиваеться...нет такого "Форум", "Учасники", "Поиск". Не знаю...может это что-то у меня не так?

0

11

Я даже не совсем поняла что вы имеете в виду, но скорее всего у вас что-то не так, потому что, у меня всё есть...

0

12

Эмили
Вы, вероятно с IE заходите? Да, в нем все отображается, а я захожу с Мозиллы и так же как Виллоу не вижу ничего кроме чата :dontknow:
Значит какой-то скрипт у Вас кривой, сейчас посмотрю какой именно.

0

13

Эмили написал(а):

но когда захожу, например в: "Самые активные", "Активные сегодня", "Администрация", "Полная статистика", мне пишут: Вы не имеете прав для доступа к этой странице. Что мне делать?

Администрирование - Настройки - Возможности - Подробная статистика - Да

А в проблеме неотображения форума виновато, похоже, вот это:

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


</body> 
</html><!-- ><!-- "><!-- "><!-- -->

+1

14

Айрин написал(а):

А в проблеме неотображения форума виновато, похоже, вот это:

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


</body> 
</html><!-- ><!-- "><!-- "><!-- -->

Огромное спасибо! +)) Я знаю что вопрос глупый, но не подскажите где находится этот скрипт

0

15

Эмили написал(а):

Я знаю что вопрос глупый, но не подскажите где находится этот скрипт

HTML-верх.

+1

16

Ещё раз огромное спасибо! +

0

17

а куда нужно ставить табло

0

18

конан
Написано же в первом посте:

Желательно ставить в самый верх html-низ.

0

19

Айрин
а если не получается что делать

0

20

конан написал(а):

а если не получается что делать

Что у Вас не получается?

0

Похожие темы


Вы здесь » Техническая поддержка SpyBB » Архив » Информационное табло на форум. Бета-версия (c) Duka