Единый форум поддержки

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

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


Вы здесь » Единый форум поддержки » Новые возможности форумов » Скрипты от пользователей 3


Скрипты от пользователей 3

Сообщений 121 страница 140 из 565

1

Администрация MyBB не гарантирует работоспособность данных скриптов, вы ставите их на свой страх и риск.

Для тех кто выкладывает скрипты:
1) Дайте краткое описание скрипта.
2) Обязательно укажите куда его вставлять.
3) Сам скрипт вставьте в bb-коды [сode] [/сode] или в [quotе] [/quotе]

В данной теме запрещено задавать вопросы и просить скрипты. Для этого есть раздел  Запросы по скриптам[10], при нарушение данного правила будет выдаваться предупреждение в профиль.

Отредактировано Alex_63 (Ср, 12 Фев 2020 20:35:57)

+8

121

Линейка: "Нашему форуму.." Автор: Валера с форума: http://magerivenaly.rolevaya.ru/

Многие пользуются линейками с разных ресурсов вида: Нашему форуму: 2 года 5 месяцев 13 дней, часто такие линейки плохо загружаются, перестают отображаться картинки и т.д. Зачем пользоваться чужими ресурсами, если можно своими? Как раз по этому и был разработан этот скрипт (кстати, он точнее показывает дату, чем линейки с сторонних ресурсов):

Код:
<!--Линейка: "Нашему форуму.."-->
<div id="data2">
<div id="data3"><img src="ссылка на вашу картинку" /></div>
</div>
<script type="text/javascript">
$(function(){
$('div#data2').append('<div id="data1"></div>');
var mydate = new Date();
var gf = (1912); //год
var mf = (9); //Месяц
var df = (10); //День
var g = mydate.getFullYear();
var god = (g - gf);
var m = mydate.getMonth();
if (m ==  0) {var k = 31;}
if (m ==  1) {var k = 31;}
if (m ==  2) {var k = 28;}
if (m ==  3) {var k = 31;}
if (m ==  4) {var k = 30;}
if (m ==  5) {var k = 31;}
if (m ==  6) {var k = 30;}
if (m ==  7) {var k = 31;}
if (m ==  8) {var k = 31;}
if (m ==  9) {var k = 30;}
if (m ==  10) {var k = 31;}
if (m ==  11) {var k = 30;}
var m = (m + 1);
var dn0=mydate.getDate();
var dn1 = (dn0 - df);
if (dn1 < 0) {
var dn1 = (k + dn0 - df);
var m = (m-1);
}
var day = dn1;
var mn = (m - mf);
if (mn < 0) {
var mn = (12 + m -4);
var god = (god - 1);
}
var month = mn;
Days = new Array('дней','день', 'дня', 'дня', 'дня', 'дней', 'дней', 'дней', 'дней', 'дней');
var tDay = ((day%100)>=10 && (day%100)<=19) ? 0 : day%10;
var tYear = (god%100>=10 && (god%100)<=19) ? 0 : god%10;
Years = new Array('лет','год', 'года', 'года', 'года', 'лет', 'лет', 'лет', 'лет', 'лет');
Months = new Array('месяцев','месяц', 'месяца', 'месяца', 'месяца', 'месяцев', 'месяцев', 'месяцев', 'месяцев', 'месяцев');   
var tMonth = ((month%100)>=10 && (month%100)<=19) ? 0 : month%10;
$('#data1').append('<span style="font-family: Times New Roman, Times, serif;font-size: 14px;"><b>Нашему форуму: ' + god + ' '+ Years[tYear] +' ' + month + ' '+ Months[tMonth] +' ' + day + ' '+ Days[tDay] +'</b></span>');
});
</script>

Где: <img src="ссылка на вашу картинку" />  - ставим какую нибудь свою красивую картинку, лучше загруженную через Администрирование - Файлы.

Здесь выставляем дату рождения вашего форума:
var gf = (1912); //Год
var mf = (9); //Месяц
var df = (10); //День

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

Отредактировано kolobdur74 (Сб, 21 Сен 2013 02:07:25)

0

122

Фреймы в постах (обновленный вариант) (c) Fover

В Html-низ:

Код:
<script type="text/javascript" src="https://forumstatic.ru/files/0013/54/7f/49819.js"></script>

Alex_63 уведомляет: ссылка на скрипт не работает.

0

123

Fover  :D

Отредактировано Deff (Пт, 27 Сен 2013 04:48:12)

0

124

Скрытие ссылок и изображений от гостей в постах (c) Fover

В Html-низ:

<!--Скрытие ccылок и изображений от гостей (c) Fover -->
<script type="text/javascript">
var flink = "Текст вместо скрытых ссылок";
var fimg = "Текст вместо скрытых изображений";
if(GroupID==3&&document.URL.indexOf("/viewtopic.php")!=-1){
$(".punbb .post .post-content .postimg").replaceWith(""+fimg+"");
$(".punbb .post .post-content a").replaceWith(""+flink+"");
}
</script>

Выделенное красным меняем на свое.

Для блокировки ссылок и изображений при использовании скрипта Онлайн Редактор Объявлений убираем выделенное синим.

Отредактировано Fover (Сб, 28 Сен 2013 19:22:18)

+1

125

Тема - обсуждение

Cкрипт Автопродления Тем

Ссылка в старой теме

http://s5.uploads.ru/qGbXI.jpg

Ссылка в первом сообщении Новой темы

http://s5.uploads.ru/WRl3d.jpg

Необходима Начальная настройка:

1.   Идем в Администрирование - Настройки и выставляем  Время переадресации - 1,   Скриншот => http://s5.uploads.ru/TyAUf.jpg

Скрипт устанавливаем в конец  HTML низ

<script> PostMaximum = 1000;</script>
<script type="text/javascript" src="https://forumstatic.ru/files/0010/b4/f8/82017.js"></script>

Если нужно, есть добавка:

Добавка(в самое начало HTML низ): Открытие этих ссылок в текущей вкладке браузера

<script type="text/javascript">
$('.post-content').find('.quote-box > blockquote')
.find('span[style*="display: block; text-align: center"] > strong')
.find('span[style="font-size: 16px"] > a[href*="/viewtopic.php?pid="]')
.removeAttr('target');
var cnt = "Предыдущая тема:";
$('.post-content').find('.quote-box > blockquote:contains("'+cnt+'")')
.find('span[style="font-size: 15px"] > span[style="color: blue"]')
.parents('blockquote:first').find('strong > span[style="font-size: 15px"] > a[href*="/viewtopic.php?pid="]')
.removeAttr('target');
</script>

Для теста скрипта вместо красного временно ставим, к примеру: 5 и пробуем добавлять сообщения в тему, при достижении 5 ообщений скрипт автосоздаст новую тему со ссылкой на старую! (Естественно для тем с автопродлением в соответствующих форумах должна быть в настройках форума проставлена возможность создания тем!!!
PS: Гость не может создать тему со ссылкой, посколь гостям ссылки запрещены!
т.е для Гостя скрипт не работает

Отредактировано Deff (Вс, 29 Сен 2013 15:35:59)

+8

126

:offtop:
Deff
ух ты! вещь! Только можно обойтись без "время переадресации"? Если честно вообще не понимаю зачем еще существует эта функция на уровне сервиса.

0

127

C3La-NS написал(а):

ух ты! вещь! Только можно обойтись без "время переадресации"?

Наверно нет, ибо она тестит страницу редиректа, и ссылку втыкает в старую тему - скрипт ориентирован на редирект.

Без редиректа:
1. Бывают более частые сбои при отправке
2. Скриптом время ожидания юзера без редиректа, - дольше, ибо редирект возвращается на секунды быстрее самой страницы(страница и значительно длиннее и нужно еще и время на её подготовку сервером)

Отредактировано Deff (Сб, 28 Сен 2013 18:59:09)

0

128

Deff, скрипт отличный, но конфликтует вот с этим скриптом

Код:
<!--Свои картинки вместо:Новая тема;Новый опрос;Ответить;Профиль;ЛС;и т.д. -->
<script>
   pstlnk=new Array(

  ".postlink","Новая тема",
"https://forumstatic.ru/files/0013/0b/24/45774.png","https://forumstatic.ru/files/0013/0b/24/29175.png",

  ".postlink","Новый опрос",
"https://forumstatic.ru/files/0013/0b/24/96356.png","https://forumstatic.ru/files/0013/0b/24/48190.png",

  ".postlink","Ответить",
"https://forumstatic.ru/files/0013/0b/24/12565.png","https://forumstatic.ru/files/0013/0b/24/10101.png",

  ".pl-email","Профиль",
"http://s5.uploads.ru/4yO9g.gif","http://s5.uploads.ru/4yO9g.gif",

  ".pl-email","ЛС",
"http://s4.uploads.ru/UvlW2.gif","http://s4.uploads.ru/UvlW2.gif",

  ".pl-email","E-mail",
"http://s5.uploads.ru/6M8aB.gif","http://s5.uploads.ru/6M8aB.gif",

  ".pl-website","Вебсайт",
"http://s5.uploads.ru/dnr2k.gif","http://s5.uploads.ru/dnr2k.gif",

  ".pl-delete","Удалить",
"https://forumstatic.ru/files/0013/0b/24/35532.png","https://forumstatic.ru/files/0013/0b/24/31609.png",

  ".pl-edit","Редактировать",
"https://forumstatic.ru/files/0013/0b/24/99520.png","https://forumstatic.ru/files/0013/0b/24/47236.png",

  ".pl-quote","Цитировать",
"https://forumstatic.ru/files/0013/0b/24/13306.png","https://forumstatic.ru/files/0013/0b/24/19042.png"// !ПОСЛЕДНИЙ элемент без запятой
 )
function find_and_replace(value){var s0,s1,s2,s3,i; for (i=0; i < pstlnk.length; i=i+4){s0=pstlnk[i+2];
  s1="onmouseover=\"this.src='"+pstlnk[i+3]+"'\"";s2="onmouseout=\"this.src='"+s0+"'\"";
  s3='<img class="pst_lnk" src="'+s0+'" '+s1+' '+s2+' border="0" />';
  var str=$(value).find(pstlnk[i]+":contains('"+pstlnk[i+1]+"')").html();
  if (str!=null) {str=str.replace(pstlnk[i+1],"<span style='display:none'>"+pstlnk[i+1]+"</span>"+s3);
$(value).find(pstlnk[i]+":contains('"+pstlnk[i+1]+"')").html(str);};};}
$("#pun-viewforum .linkst,#pun-viewforum .linksb,#pun-viewtopic .linkst,#pun-viewtopic .linksb,#pun-viewtopic .post .post-links").each(function(){find_and_replace(this);;});
</script>
<!--окончание -->
Deff написал(а):

Поправил... (он тестировал наличие кнопки "Ответить", теперь тестит только наличие ссылки с бывшим "Ответить")
Отредактировано Deff (Сб, 28 Сен 2013 21:08:05)

+1

129

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

Запрет переброса на первую страницу при удалении Тем и сообщений

В Начало HTML верх

<!--Запрет перехода на первую страницу При удалении Тем и сообщений -->
<script type="text/javascript" src="https://forumstatic.ru/files/0010/b4/f8/33839.js"></script>

+3

130

John Warner написал(а):

Уважаемые леди и джентльмены!
Вопрос на засыпку: а из Вконтакте никак у нас на МуВВ музыку не послушать?
Обрыл вроде всё, ничего похожего так и не нашёл.

А этот не подходит:  Автоматический перевод медиа-ссылок в контент при публикации (видео, музыка, изображения) /На форумах часто появляются пользователи из социальных сетей, которые привыкли публиковать контент, простой публикацией ссылок на изображения, ролики из ютуб. Работает с прямыми ссылками на mp3./ (Romych)?

+1

131

ruslan_as

Cкрытое сообщение с добавкой видимости Админу

Устарел, свежая версия => Ссылка


<!-- Cпойлер Персональной Инфы - для Ника(Ников) -->
<script type="text/javascript">
var AdmNick = "
Вася";
(function(){
$('.post-content .quote-box.spoiler-box > div[ onclick*="toggleClass"]:contains("for Nick(s)|")').each(function(){
  var sp=$(this).parent();
  if(!$('#pun-navlinks #navprofile').length){sp.remove();return true}
  var title = $(this).text().replace(/for Nick\(s\)\|/i,'').split(',');
  var pass = false; for(var i=0;i<title.length;i++) if(title[i]==UserLogin){pass=true;break;}
  if(!pass){sp.remove();return true}
  $(this).html('<b style="color:red">Персональная ин-фа для '+UserLogin+' </b>');
  var cnt = sp.find('blockquote:first>p');cnt.text(unescape(cnt.html())) 
});
Wraper_SP = function (){
  var bound = '###spForYOU###';
  var Nam = '';Nam = prompt("Спойлер персональной инфы для следующих Ников\n\nВведите через запятую нужные Ник(и):","");
  Nam = Nam.split(/\s?\s?\s?,\s?\s?\s?/ig).join(',')+','+UserLogin+','+AdmNick;
  var a = "[", b = "]",end =bound+ a +'/spoiler'+b;
  var start = a+'spoiler="for Nick(s)|'+Nam+'"'+b+bound;
  $("#main-reply").focus(); bbcode(start,end);var arr = $("#main-reply").val().split(bound);$("#main-reply").val(arr[0]+escape(arr[1])+arr[2]);
}
if($('#pun-edit,#pun-post,#pun-viewtopic').length){
var tit = "Спойлер Персональной инфы"
$('#form-buttons #button-spoiler').after('<td id="button-sp_for_you" title="'+tit+'" align=center valign=center><img style="height:22px;width:22px;margin:-4px -2px 0 -2px;" src="http://savepic.org/1446271.gif" onclick="Wraper_SP()"/></td>');
}}());
</script>

Исходный скрипт тут => https://forum.mybb.ru/viewtopic.php?pid=813851#p813851

Отредактировано Deff (Чт, 30 Окт 2014 02:28:44)

+1

132

Скрипт радио на форум

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

Сам скрипт:

Код:
<dl id="RP_v2_radio"><span id="RP_v2_radioPlayer"></span><dt><a href="http://radiopotok.ru/" id="RP_v2_link"><span>Онлайн радио</span></a></dt><dd id="RP_v2_content"></dd></dl>
<script type="text/javascript" src="http://yandex.st/jquery/cookie/1.0/jquery.cookie.min.js"></script>
<script type="text/javascript" src="http://radiopotok.ru/f/script2/18139887db16e25ee888882a50f7d618.js" charset="UTF-8"></script>

Вставлять в HTML низ, Объявление, HTML в форме ответа.

Как работает: http://dokfilm.maminforum.com/

Отредактировано 2834911 (Пн, 17 Ноя 2014 11:30:25)

0

133

Иконка вместо названия дополнительного поля (с) Fover

<!-- Название доп. поля картинкой -->
<script>
var fldWord = "Форинты"; //Название поля;
var fldimg = 'http://sa.uploads.ru/7pH05.png' //Иконка;

$('li[class^="pa-fld"]:contains("'+fldWord+':")').each(function (){
var str = $(this).html().replace(/^[^:]*:/,'');
$(this).html('<img title="'+fldWord+'" src="'+fldimg+'">'+str);});
</script>

+1

134

уберите тогда из моего скрипта $(document).ready(function(){
типа так:

Дополнительные медиахостинги v2(.2)

в html-верх:

Код:
<style type="text/css">
/* вкладки */
#media-wrapper {width: 400px;}
ul.media-tabs {height: 25px;line-height: 29px;margin: 0 0 3px;list-style: none;}
ul.media-tabs li {float: left;margin-right: 1px; cursor:pointer;}
ul.media-tabs li a {background: url("http://uploads.ru/i/P/5/Q/P5Q2V.png") no-repeat scroll -652px 0 transparent;color: #444444;cursor: pointer;display: block;margin-bottom: -1px;padding: 0 14px 1px;position: relative;text-decoration: none;width: 95px;}
ul.media-tabs li a:hover {color:#EFEFEF;padding: 0 14px;background: url("http://uploads.ru/i/P/5/Q/P5Q2V.png")no-repeat scroll;background-position: -652px -31px; text-decoration:none;}
ul.media-tabs li.tab-current a {color: #444;padding: 0px 14px 2px;border:medium hidden;line-height: 29px;background-position: -652px -62px;}
ul.media-tabs li.tab-current a:hover {color: #6A5ACD;}
div.media-t2,div.media-t3 {display: none;width: 450px;}
.tipsy-inner {font-size: 14px;}
.media_link { float: left;}
</style>

В HTML низ

Код:
<!--дополнительные медиахостинги 2.2 © Romych-->
<script type="text/javascript">
var media2 = ['kiwi.kz',
'rutv.ru',
'soundcloud.com',
'purevolume.com',
'livestream.com',
'pleer.com',
'video.jampo.tv',
'yapfiles.ru',
'realmusic.ru',
'1plus1.ua',
'jamendo.com',
'mail.ru',
'bandcamp.com',
'coub.com',
'sibnet.ru',
'ato.su',
'rocklab.ru'];

$('.media_link img').tipsy({live: true,gravity: 's',fade: true});
$('#video-area-hsel').addClass('media-t1');
$('#video-area').prepend('<div id="media-wrapper"><ul class="media-tabs tabs1"><li class="media-t1 tab-current"><a>Первый список</a></li><li class="media-t2"><a>Второй список</a></li></ul><br><div class="media-t2"></div></div><br>');
jQuery.each(media2, function(i) {
$('#video-area div.media-t2').append('<a class="media_link" href="javascript:void(0)" onclick="window.open(\'http://'+media2[i]+'\',\''+media2[i]+'\', \'width=640, height=480\');return false;"> <img style="padding: 5px;" alt="'+media2[i]+'" title="'+media2[i]+'" src="https://plus.google.com/_/favicon?domain='+media2[i]+'"> </a>');
});
$('#video-area div.media-t2').append('<br><br><div id="video-area-tcon2"><div id="video-area-thd2">Вставьте  iframe-код медиафайла (аудио, видео)</div><textarea id="video-area-tinp2" onclick="this.select();"></textarea><div id="video-area-msg2" style="margin: 0.5em 0;padding: 0.3em;"></div></div><div id="video-area-actions2"><a class="frame_host" href="javascript:void(0)" >Вставить</a>  <a onclick="changeVisibility(\'video-area\'); return false;"href="#">Закрыть</a></div>');

$('a.frame_host').click(function(e){
var self = $('#video-area-tinp2');
          setTimeout(function(e) {
          var paste = $(self).val();
          paste = paste.replace(/'/gi, '"');
if(paste.indexOf('param name="movie"') !=-1){
          frm = paste.split(/param name=\"movie\" value=\"(.*?)\"/i);
        }
if((paste.indexOf('<iframe') !=-1) || (paste.indexOf('<embed')!=-1)){
          frm = paste.split(/src=\"(.*?)\"/);
        }
if(paste.indexOf('data=') !=-1) {
          frm = paste.split(/data=\"(.*?)\"/);
        }
if(frm[1].slice(frm[1].indexOf('.swf')+4).length<=2){
var fls = paste.split(/param name=\"flashvars\" value=\"(.*?)\"/i);
frm[1]=frm[1]+'?&'+fls[1];

}
          var wd = paste.split(/width=\"(\d{2,3})\"/);
          var hg = paste.split(/height=\"(\d{2,3})\"/);

for (var i=0; i<media2.length; i++) {
if(frm[1].indexOf(media2[i]) !=-1) {

insert('[video2='+wd[1]+'|'+hg[1]+']'+frm[1]+'[/video2]\n');
changeVisibility('video-area');
$(self).val('');
} 
else {
$('#video-area-msg2').text('Неподдерживаемый хостинг.');
$(self).val('');
 }
};
          }, 0);
 });

$('ul.media-tabs.tabs1 li').click(function(){
var thisClass = this.className.slice(0,8);
$('div.media-t1, div.media-t2, div.media-t3').hide();
$('div.' + thisClass).fadeToggle('fast');
$('ul.media-tabs.tabs1 li').removeClass('tab-current');
$(this).addClass('tab-current');
  });  

var ls = document.querySelectorAll(".post-content p");
for (x in ls){
var pst = ls[x].innerHTML;
for (var i=0; i<media2.length; i++) {
if(pst.indexOf(media2[i])!= -1)  {
pst = pst.replace(/\[video2=(.*?)\|(.*?)\](.*?)\[\/video2\]/gi, '<br /><iframe width="$1" height="$2" src="$3" frameborder="0" allowfullscreen></iframe>');
   } 
}
ls[x].innerHTML = pst;
       }
</script>

или в сжатом варианте:

Код:
<!--дополнительные медиахостинги  2.2 © Romych-->
<script type="text/javascript">
var media2=['kiwi.kz','rutv.ru','soundcloud.com','purevolume.com','livestream.com','pleer.com','video.jampo.tv','yapfiles.ru','realmusic.ru','1plus1.ua','jamendo.com','mail.ru','bandcamp.com','coub.com','sibnet.ru','ato.su','rocklab.ru'];
$('.media_link img').tipsy({live:true,gravity:'s',fade:true});$('#video-area-hsel').addClass('media-t1');$('#video-area').prepend('<div id="media-wrapper"><ul class="media-tabs tabs1"><li class="media-t1 tab-current"><a>Первый список</a></li><li class="media-t2"><a>Второй список</a></li></ul><br><div class="media-t2"></div></div><br>');jQuery.each(media2,function(i){$('#video-area div.media-t2').append('<a class="media_link" href="javascript:void(0)" onclick="window.open(\'http://'+media2[i]+'\',\''+media2[i]+'\', \'width=640, height=480\');return false;"> <img style="padding: 5px;" alt="'+media2[i]+'" title="'+media2[i]+'" src="https://plus.google.com/_/favicon?domain='+media2[i]+'"> </a>');});$('#video-area div.media-t2').append('<br><br><div id="video-area-tcon2"><div id="video-area-thd2">Вставьте  iframe-код медиафайла (аудио, видео)</div><textarea id="video-area-tinp2" onclick="this.select();"></textarea><div id="video-area-msg2" style="margin: 0.5em 0;padding: 0.3em;"></div></div><div id="video-area-actions2"><a class="frame_host" href="javascript:void(0)" >Вставить</a>  <a onclick="changeVisibility(\'video-area\'); return false;"href="#">Закрыть</a></div>');$('a.frame_host').click(function(e){var self=$('#video-area-tinp2');setTimeout(function(e){var paste=$(self).val();paste=paste.replace(/'/gi,'"');if(paste.indexOf('param name="movie"')!=-1){frm=paste.split(/param name=\"movie\" value=\"(.*?)\"/i);}
if((paste.indexOf('<iframe')!=-1)||(paste.indexOf('<embed')!=-1)){frm=paste.split(/src=\"(.*?)\"/);}
if(paste.indexOf('data=')!=-1){frm=paste.split(/data=\"(.*?)\"/);}
if(frm[1].slice(frm[1].indexOf('.swf')+4).length<=2){var fls=paste.split(/param name=\"flashvars\" value=\"(.*?)\"/i);frm[1]=frm[1]+'?&'+fls[1];}
var wd=paste.split(/width=\"(\d{2,3})\"/);var hg=paste.split(/height=\"(\d{2,3})\"/);for(var i=0;i<media2.length;i++){if(frm[1].indexOf(media2[i])!=-1){insert('[video2='+wd[1]+'|'+hg[1]+']'+frm[1]+'[/video2]\n');changeVisibility('video-area');$(self).val('');}
else{$('#video-area-msg2').text('Неподдерживаемый хостинг.');$(self).val('');}};},0);});$('ul.media-tabs.tabs1 li').click(function(){var thisClass=this.className.slice(0,8);$('div.media-t1, div.media-t2, div.media-t3').hide();$('div.'+thisClass).fadeToggle('fast');$('ul.media-tabs.tabs1 li').removeClass('tab-current');$(this).addClass('tab-current');});var ls=document.querySelectorAll(".post-content p");for(x in ls){var pst=ls[x].innerHTML;for(var i=0;i<media2.length;i++){if(pst.indexOf(media2[i])!=-1){pst=pst.replace(/\[video2=(.*?)\|(.*?)\](.*?)\[\/video2\]/gi,'<br /><iframe width="$1" height="$2" src="$3" frameborder="0" allowfullscreen></iframe>');}}
ls[x].innerHTML=pst;}
</script>

и испытайте

+5

135

Доступ в форум по паролю (c) Fover

<script type="text/javascript">
var fpass = "Пароль";
var fid = [1,2,3,4,5];
for(var i=0; i<fid.length;i++){
$("#forum_f"+fid[i]+" a").click(function(){
  pass = prompt('Пожалуйста, введите пароль:');
if (pass!=''+fpass+''){
  alert('Пароль неверный.'),
  top.history.back()
}
});
if(document.URL.indexOf("/viewforum.php?id="+fid[i]+"")!=-1) {
  pass = prompt('Пожалуйста, введите пароль:');
if (pass!=''+fpass+''){
  alert('Пароль неверный.'),
  top.history.back()
}}}
</script>

Синим - Id форумов через запятую для которых требуется установка пароля.

0

136

Fover  :D  Ну слабый скрипт... Есть более полноценный  скрипт от sadhaka
Толку в этих добавках, как от козла молока - несерьезно

0

137

Вставка якоря в сообщения (с) (Deff, Fover)

(Вариант с открытыми значками)

http://s4.uploads.ru/t/rPGjz.png

Код:
<script type="text/javascript">
$('#post').find("#button-addition").after('<td id="button-aanchor"><img style="width: 20px!important; height: 20px!important; margin-left: 4px!important;" src="https://forumstatic.ru/files/0012/e8/7a/38504.png" title="Вставить якорь" id="button-aanchor" onclick=\"addanchor()\"></td><td id="button-anchor"><img style="width: 20px!important; height: 20px!important; margin-left: 4px!important;" src="https://forumstatic.ru/files/0012/e8/7a/97990.png" title="Вставить ссылку на якорь" id="button-anchor" onclick=\"anchoru()\"></td>');
function addanchor(){
 var adnchor = '';
 adnchor = prompt("Введите название якоря", "#");
 insert("[url&" + adnchor + "]" + adnchor + "[/url]\n");
}
function anchoru(){
 var anchorp = '';
 anchorp = prompt("Введите название якоря", "#");
 var anchorc = '';
 anchorc= prompt("Введите описание якоря", "Описание");
 insert("[url=http://anchor" + anchorp + "]" + anchorc + "[/url]\n");
}
$('.post-content').each(function(){
 $(this).find('p:contains("[url&#"),div[onclick]:contains("[url&#")').each(function(){
   var str=$(this).html();
   var val = str.replace(/\[url&amp;#[^\[\]]+\]#([^\[\]]+)\[\/url\]/img,'<a name="$1"></a>');
   if(val!=str)$(this).html(val);   
 });
 $(this).find('a[href*="//anchor"]').each(function(){
   var href=$(this).attr('href');
     href = href.split('#')[1];
     if(!!href){$(this).removeAttr('target');$(this)[0].href = '#'+href;
       var str = $(this).text();
       if(str.indexOf('http://')==0)$(this).text(href);
     }
 });
});
$('.post-content').find('a[href^="#"]').live('click', function(){
    var lnk = $(this).attr('href');
    var a=$('.post-content').find('a[name="'+lnk.substr(1)+'"]');
    b = a.parents('.spoiler-box').find('div[onclick]:first').not('.visible');
    if(b.length)b.click();
    setTimeout(function(){location.replace(document.URL.split('#')[0]+lnk)},10)
    return false;
});
</script>

Вставка якоря в сообщения (с) (Deff, Fover)

(Вариант со спрятанными значками под кнопку "Дополнительно")

http://s4.uploads.ru/t/7O1ca.png

Код:
<script type="text/javascript">
var img1 = "https://forumstatic.ru/files/0012/e8/7a/38504.png";
var img2 = "https://forumstatic.ru/files/0012/e8/7a/97990.png";

$('#post').find("#addition-area").prepend('<div onclick="addanchor()"><img style="width: 20px!important; height: 20px!important; margin:5px -3px -5px -14px!important;" src="'+img1+'"/> <span>Вставить якорь</span></div><div onclick="anchoru()" style="padding-bottom:4px"><img style="width: 20px!important; height: 20px!important; margin:5px 0 -5px -14px!important;" src="'+img2+'"/><span>Ccылка на якорь</span></div>');
function addanchor(){
 var adnchor = '';
 adnchor = prompt("Введите название якоря", "#");
 insert("[url&" + adnchor + "]" + adnchor + "[/url]\n");
}
function anchoru(){
 var anchorp = '';
 anchorp = prompt("Введите название якоря", "#");
 var anchorc = '';
 anchorc= prompt("Введите описание якоря", "Описание");
 insert("[url=http://anchor" + anchorp + "]" + anchorc + "[/url]\n");
}
$('.post-content').each(function(){
 $(this).find('p:contains("[url&#"),div[onclick]:contains("[url&#")').each(function(){
   var str=$(this).html();
   var val = str.replace(/\[url&amp;#[^\[\]]+\]#([^\[\]]+)\[\/url\]/img,'<a name="$1"></a>');
   if(val!=str)$(this).html(val);   
 });
 $(this).find('a[href*="//anchor"]').each(function(){
   var href=$(this).attr('href');
     href = href.split('#')[1];
     if(!!href){$(this).removeAttr('target');$(this)[0].href = '#'+href;
       var str = $(this).text();
       if(str.indexOf('http://')==0)$(this).text(href);
     }
 });
});
$('.post-content').find('a[href^="#"]').live('click', function(){
    var lnk = $(this).attr('href');
    var a=$('.post-content').find('a[name="'+lnk.substr(1)+'"]');
    b = a.parents('.spoiler-box').find('div[onclick]:first').not('.visible');
    if(b.length)b.click();
    setTimeout(function(){location.replace(document.URL.split('#')[0]+lnk)},10)
    return false;
});
</script>

Задача: Передвинуть скролл к нужному месту на странице при клике на ссылку.
Актуально при длинных пояснениях к чему либо.

К примеру: В игровых описаниях, в расшифровках неких списков проставленных ссылками, в расшифровках описания ингредиентов и способа их приготовления
Аналог в HTML: http://htmlbook.ru/samhtml/yakorya



якорь - место, в которое будет передвигаться(красный якорёк) - ставим латинскими буквами на нижнем регистре название якоря
Ссылка на якорь (синий якорёк) В ссылку на якорь ставим то же самое слово, что и обозвали якорь, в Описание - своё нужноё слово



Дополнительно есть фича открывания спойлера, если сам якорь внутри спойлера или в описании спойлера


В Принципе имеется возможность переходить к якорю и с произвольной страницы
для этого вид ссылки в Сообщении такой:
[url=https://forum.mybb.ru/viewtopic.php?pid=31044#Name]Описание[/url]
Зеленым - ссылка на форум
синим - последняя группа цифр после #p при клике на дату в сообщении
красным - имя якоря

+5

138

Код:
<iframe name="fantasy" src="http://fantasyflash.ru/clock/c.php?n=17&bcolor=FFF0F5" height="79" width="70" scrolling="no" frameborder="0"></iframe>

Скрипт часов на форум) Часики можно выбрать другие) Стоит у меня. Работает прекрасно)

Отредактировано ღ::..Одино4ка..::ღ (Ср, 16 Окт 2013 09:14:57)

+1

139

Фрейм в Постах c регулируемой высотой

Выделяем ссылку - Давим кнопку (высоту правим под нужную)
В HTML низ

Код:
<!--Фрейм в Постах-->
<style>
#button-frame {background-image:url('http://img265.imageshack.us/img265/9213/frame1.gif'); padding:0; line-height:0; background-position:center; background-repeat:no-repeat; height:26px; width:100%}
</style>
<script type="text/javascript">
function fram_url(){
 bbcode('[frame height=400]','[/frame]');
}
if(form=document.getElementById("form-buttons"))
form.getElementsByTagName("tr")[0].insertCell(19).innerHTML="<img src='/i/blank.gif' title='Вставить фрейм' id='button-frame' onclick=\"fram_url()\">"

function makeFrame(str, height, lnk,offset, s){
if(!height)var height=' height="400"';
str='<iframe src="'+lnk+'" frameborder="0" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="auto" width="100%"'+height+'></iframe>';
return str
}

var fram = "[/frame]";
$('.post-content:contains("'+fram+'") p').each(function(){
 var replac = $(this).html().replace(/\[frame([^\[\]]*)\]([^\[\]]+)\[\/frame\]/igm,makeFrame) // 
 if(replac!=$(this).html())$(this).html(replac);
});
</script>

Отредактировано Deff (Ср, 16 Окт 2013 19:33:43)

+1

140

Таймер игровой Даты

Этот блок - ставим туда, где нужно отражать игровое время:

<div id="clockPlay">&#160</div>

И скрипт:
В HTML низ

<!-- Таймер игровой Даты -->
<script type="text/javascript">(function() {
var startReal = "21 May 2010 10:12" //реальный день смены даты;
var setNewDate = "02 aug 438 10:12"; //Дата игрового дня на день смены(Год не может быть меньше 100)
var rate = 8; //коэффициент замедления (разы), т.е 8 реальных дн. = 1игровому;

function playDate() {
var c = Date.parse(startReal);
var datePlus = Date.parse(setNewDate);
var d = new Date();
d.setTime(parseInt((+d-c)/rate + datePlus));
return d;
}

clock = $("#clockPlay");
var dayArr=new Array("Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота");
var monthArr=new Array("января","февраля","марта","апреля","мая","июля","июня","августа","сентября","октября","ноября","декабря") ;

function timeWrite(d) {var c = d.toString();//alert(c)
var aa = dayArr[d.getDay()]+' '+d.getDate()+' '+monthArr[d.getMonth()]+' '+ c.replace(/^.*?\s(\d{3,4}).*$/ig,"$1").replace(/^0+/ig,'')+' года  '+c.replace(/^.*?(\d{2}:\d{2}:\d{2}).*/g,"$1");
//alert(aa);
clock.html(aa);
setTimeout(function(){timeWrite(playDate())},rate*1000)
} timeWrite(playDate());
}());
</script>

Тестируйте

Отредактировано Deff (Сб, 19 Окт 2013 03:48:06)

+1


Вы здесь » Единый форум поддержки » Новые возможности форумов » Скрипты от пользователей 3