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

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

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


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


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

Сообщений 541 страница 545 из 545

1

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

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

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

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

+6

541

Тоже самое, что и постом выше, только в другом оформлении. Под другой плагин всплывающей подсказки поэтому код немного короче. Цветовыделение групп присутствует, так что можно раскрашивать через css

.tipsy .usTitle-1 {color: #ed7e1c;}
.tipsy .usTitle-2 {color: #88ffff;}
и так далее

ДЕМО

в html-низ:

Код:
<!--  Привеью темы, рейтинг и подписчики -->
<style>
.tipsy .userInfo img, .tipsy .avatarTop img {border-radius: 50%;width: 52px;height: 52px;float: left;margin: 0 5px 0 0;}
.tipsy .userTitle h3,.tipsy .userTitle h4 {margin: 0;}
.tipsy .userTitle h4 {font-weight: normal;font-style: italic;}
.tipsy .userBlurb p,.tipsy .lastActivity p {margin: 0; word-spacing : 8px;}
.tipsy .topPreview, .tipsy .topicStart {max-width: 400px;overflow: hidden;position: relative;}
.tipsy .topPreview h2 {margin: 0 !important;font-size: 14px;font-weight: normal;}
.tipsy .topPreview h2 span {font-weight: bold;} 
.tipsy .topPreview .reit {color: #10c610;}
.tipsy .topPreview .subs {color: #c66510;}
.tipsy hr {margin: 8px 5px;border: none;height: 1px;background-color: #788593;}
.tipsy .avatarTop {height: 52px;}
.tipsy .topicStart p {margin: 5px 0;}
</style>
<script type="text/javascript" src="https://forumstatic.ru/files/0017/d8/50/86896.js"></script>

На мобильных с разрешением экрана ниже 768 срабатывание подсказки отключено, как и на упомянутых выше платных форумных движках

+6

542

Блок с программируемым лимитом времени отображения

Скриншот:
http://forumfiles.ru/uploads/0000/14/1c/22787/160428.gif

Код вставки в HTML верх:

<!-- Блок с программируемым лимитом времени отображения; -->
<link rel="stylesheet" type="text/css" href="https://forumstatic.ru/files/0014/cc/0a/24229.css" />
<script type="text/javascript" src="https://forumstatic.ru/files/0014/cc/0a/51971.js"></script>

Описание:
   Выделяем контент вставки в блок с ограничением по времени, жмем кнопку в дополнительных тегах в форме ответа: http://forumfiles.ru/uploads/0000/14/1c/22787/77758.jpg
Во всплывающем окне вводим либо дату - время окончания отображения, либо длительность показа часы:минуты ...
Минимально выставляемое  время  - 1-а минута ( вводим:  0:01 ),
Таймер обратного отсчета считает в виде: часы:минуты:секунды

... Тестируйте  :flag:

Отредактировано Deff (Вс, 6 Сен 2020 13:08:58)

+10

543

Пагинатор MyBB


Добавлено функционирование на страницах результатов поиска

Скриншот

https://i.imgur.com/VdA8cb7l.png

В HTML низ:

Код:
<!--- Пагинатор MyBB --->
<style type="text/css">
#paginator{
  opacity:.98;padding:.2em;
  position:absolute;
  left:6em;border:1px solid;
  table-layout:auto!important;
  width:auto!important;
  border-radius:4px;
  border-spacing: 0;
  box-shadow:0 1px 2px rgba(0,0,0,.4),0 1px 0 rgba(255,255,255,.5)inset;
  text-shadow:0 1px 0 rgba(255,255,255,.4);
  z-index:1000;margin-top:1px;
  border-top:solid 1px #eee !important;
}
#paginator:before{
  content:"";display:block;position:relative;
  height:6px;top:-5px;margin-bottom:-6px;
}
#paginator td{
  background:transparent!important;
  padding:0.1em;
  border-style:none!important;
}
#paginator a{
  border:solid 1px transparent;
  display:inline-table;
  width:2em;height:2em;
  line-height:2em;
  text-align:center;
  margin:-.2em;
}
#paginator a:hover{
  opacity:.8;
  background-color: rgba(240, 249, 255, 0.77);
  border:solid 1px;
  border-radius:50%;
}
.second {
  display: none;
  font-size: 0.8em;
}
 
@media screen and (max-width: 540px) {
  #paginator{left: -1em; border-collapse:collapse;}
  .first {font-size: 0.7em;}
  .second{font-size: 0.5em;}
}
 
@media screen and (max-width: 846px) and (orientation: portrait) {
  .first {font-size: 0.95em;}
  .second{font-size: 0.75em;}
  tr.poll div.icon {border-left: solid 3px #7F6A00 !important;}
}
</style>
<script type="text/javascript">
if($('#pun-viewtopic, #pun-viewforum, #pun-searchposts, #pun-searchtopics, #messages, #pun-respect, #pun-positive, #userlist').length&&$('.pagelink a').length)(function(){var tx,tS,Max,bgclr,paginator,Lnk;tx=$('.pagelink a:not(.next):last').html();tS=$('.pagelink strong').html();if(parseInt(tS)>parseInt(tx)){tx=tS;}Max=tx;Lnk=$('.pagelink a:first')[0].href.replace(/&p=.+$/gim,'');bgclr=$('.crumbs:first').css('background-color');brclr=$('.crumbs:first').css('border-bottom-color');function strok(n){if(p%n==0)paginator+='</tr><tr>'};paginator='<div id="pagenav" style="display:none;position:relative"><table id="paginator"><tr>';for(var p=1;p<=Max;p++){var L=p.toString().length,Cs=' class="'+(L>=3?'second"':'first"');paginator+='<td '+Cs+'><a id="pnav" style="text-decoration:none;" href="'+Lnk+'&p='+p+'">&nbsp;'+p+'&nbsp;</a></td>';Max>50?strok(15):strok(10);}paginator+='</tr></table></div>';if(p<=6){return!1}$('.pagelink').append(paginator);$('div[id="pagenav"] table').css({'border-color':brclr,'background-color':bgclr});})();$('.pagelink').hover(function(){$(this).find('#pagenav').toggle();});$('#pagenav').on('mousemove touchmove',function(e){var offset=$(this).offset();var currentY=e.originalEvent.touches?e.originalEvent.touches[0].pageY:e.pageY;var y=parseInt((currentY-offset.top));y>90?$('.second').toggle(true):$('.second').toggle(false);});
</script>

+1

544

Сделал слайдер новостей из определённой темы в Объявлении
у всех ли корректно отображается? ДЕМО на главной странице этого форума в Обявлении

Слайдер новостей из темы в Объявлении

в Объявление

Код:
<style>
.slider_wrap {margin:100px auto 0;width:580px;height:350px;position:relative;overflow:hidden;-webkit-box-shadow: 0px 7px 10px 0px rgba(50, 50, 50, 0.75);-moz-box-shadow: 0px 7px 10px 0px rgba(50, 50, 50, 0.75);box-shadow: 0px 7px 10px 0px rgba(50, 50, 50, 0.75);}
.slider_wrap figure {width:540px;height:auto;display:none;position:absolute;top:0;left:20px;	}
.slider_wrap figure:first-child {display:block;}
.slider_wrap figcaption {background: rgba(250,250,250, .8);bottom: 0;box-sizing: border-box;font-size: 14px;position: absolute;width: 100%;padding: 1rem;-webkit-transition: max-height 0.3s ease-out;overflow: hidden;}
.slider_wrap img {width: 100%;height: 350px;object-fit: contain;}
.datep {filter: contrast(10);}
.slider_wrap span {margin-top:-13px;width:15px;height:26px;display:block;position:absolute;top:50%;cursor:pointer;background:url(https://forumstatic.ru/files/0017/d8/50/94649.png) no-repeat;}
.slider_wrap span.next {right:0;background-position:-15px 0;}
.slider_wrap span.next:hover {background-position:-15px -26px;}
.slider_wrap span.prev {left:0;background-position: 0 0;}
.slider_wrap span.prev:hover {background-position: 0 -26px;}
.publication{width: 100%;text-align: center;position: absolute;font-size: 20px;margin: 0;color: #4682b4;text-shadow: 4px  4px 6px rgba(256, 256, 256, 1), -4px -4px 6px rgba(256, 256, 256, 1), -4px  4px 6px rgba(256, 256, 256, 1), 4px -4px 6px rgba(256, 256, 256, 1);}
@keyframes anim {0%   { opacity: 0; filter: blur(4px)}
  10%  { opacity: 0; }
  90%  { opacity: 1; }
  100% { opacity: 1; filter: blur(0.5px)}}
.publication{animation: anim 4s infinite alternate;}
</style>

<!-- Вывод новостей из темы Обновления -->
<script language="javascript">
var lm = 7,//количество отображаемых сообщений из темы
sort = 'desc',//поубыванию 
si = 37409,//id темы из которой выводим новости
npk ='https://forumstatic.ru/files/0017/d8/50/39531.jpg'; //новостная картинка по-умолчанию
$(function(){var nf='<div id="slider" class="slider_wrap">',text=[],EndSlider=()=>{nf+='<span class="next"></span><span class="prev"></span></div>';$('#news').append(nf);}
$.getJSON('/api.php?method=post.get&topic_id='+si+'&sort_dir='+sort+'&limit='+lm+'&fields=id,message,posted',function(d){var x=d.response;for(var i in x){var mg=x[i].message.match(/(?:src=\")(https?:\/\/.*?\.(png|jpg|gif|jpeg|webp))(?:\")/gi);mg=(!mg)?npk:mg;var sod=x[i].message.replace(/\<img class\=\"postimg\" loading\=\"lazy\" src\=\"https?\:\/\/(.*?)\.(png|jpg|gif|jpeg|webp)\" alt\=\"https?\:\/\/(.*?)\.(png|jpg|gif|jpeg|webp)\" \/\>/g,''),pd=x[i].id,t=x[i].posted,z=(2<=mg.length<47)?mg.toString().replace(/(src\=|\")/g,'').split(/,/)[0]:mg.toString().replace(/(src\=|\")/g,''),v=sod.slice(0,300);if(v.length<sod.length){v+='<a rel="nofollow" href="/viewtopic.php?pid='+pd+'#p'+pd+'"><strong> ... читать подробнее</strong></a>'};t=new Date(t*1e3).toLocaleString('ru');([i]==0)?nf+='<figure class="active"><a rel="nofollow" href="/viewtopic.php?pid='+pd+'#p'+pd+'"><p><p class="datep"><strong class="publication"></p>'+t+'</strong><img src="'+z+'" alt="" /></p></a><figcaption>'+v+'</figcaption></figure>':nf+='<figure><a rel="nofollow" href="/viewtopic.php?pid='+pd+'#p'+pd+'"><p><p class="datep"><strong class="publication"></p>'+t+'</strong><img src="'+z+'" alt="" /></p></a><figcaption>'+v+'</figcaption></figure>';}EndSlider();});$(window).load(function(){var elWrap=$('#slider'),el=elWrap.find('figure'),indexImg=1,indexMax=el.length,changeF=()=>{el.fadeOut(500).filter(':nth-child('+indexImg+')').fadeIn(500);},autoCange=()=>{indexImg++;if(indexImg>indexMax){indexImg=1;};changeF();},interF=setInterval(autoCange,5000);elWrap.on('mouseenter',function(){clearInterval(interF);}).on('mouseleave',function(){interF=setInterval(autoCange,5000);});$('span.next').click(function(){indexImg++;if(indexImg>indexMax){indexImg=1;};changeF();});$('span.prev').click(function(){indexImg--;if(indexImg<1){indexImg=indexMax;};changeF();});});});
</script>
<article id="news"></article>

+5

545

Переписал свой старый скрипт форумного Календаря, спасибо @kernel  за изменения в api, благодаря которым календарь удалось усовершенствовать!!!  :cool:
Отличия от предыдущей версии:

  • 1. Для получения родившихся в определённом месяце больше не требуется делать множество запросов, достаточно одного

  • 2. Список дней рождения теперь полный, ибо в него попадают и те, кто не указал в профиле полную дату своего рождения (без указания года)

  • 3. Помимо возраста теперь отображается и знак зодиака (для любителей гороскопов)

http://forumfiles.ru/uploads/0000/14/1c/15964/889248.jpg

Календарь событий v.2

Версия для установки на отдельной странице /pages/
Создаёте через Админ-меню новую страницу, обзываете как душе угодно и помещаете в ней вот такой код:

Код:
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<style>
#calendar2 {
  width: 100%;
  font: monospace;
  line-height: 1.2em;
  font-size: 15px;
  text-align: center;
}
#calendar2 thead tr:last-child {
  font-size: small;
  color: rgb(85, 85, 85);
}
#calendar2 thead tr:nth-child(1) td:nth-child(2) {
  color: rgb(50, 50, 50);
}
#calendar2 thead tr:nth-child(1) td:nth-child(1):hover, #calendar2 thead tr:nth-child(1) td:nth-child(3):hover {
  cursor: pointer;
}
#calendar2 tbody td {
border-left: 1px solid #ebf0f5 !important;
  border-right: 1px solid #ebf0f5 !important;
  border-bottom: 1px solid #ebf0f5 !important;
  color: rgb(44, 86, 122);
  position: relative;
  width: 95px;
  height: 65px;
}
#calendar2 tbody td:nth-child(n+6), #calendar2 .holiday {
  color: rgb(231, 140, 92);
}
/* Пустой день */
#calendar2 td.pust {
  background: transparent;
  border: none !important;
}
/* Праздничный день */
#calendar2 td.holiday, #calendar2 td:nth-child(6):not(.pust),#calendar2 td:nth-child(7):not(.pust) {
  background: #fafbfc;
}
#calendar2 tbody td.today {
outline: 2px solid #98b0cd;
}
.day_num {
    position: absolute;
    top: 2px;
    left: 6px;
    text-align: center;
    color: #99acbf;
    font-size: 12.5px;
}
#calendar2 td.holiday .day_num, #calendar2 td:nth-child(6) .day_num, #calendar2 td:nth-child(7) .day_num {
    cursor: pointer;
    color: #555;
    background: #FFE082;
    border-radius: 50%;
    border-color: #FF9800 !important;
    border: 1px solid;
    width: 18px;
    height: 17px;
}
#imn {
width: 28px;
height: 28px;
}
</style>

<table id="calendar2">
  <thead>
    <tr><td><i class="material-icons" title="Предыдущий месяц">arrow_back_ios</i><td class="navigation" colspan="5"><td> <i class="material-icons" title="Следующий месяц">arrow_forward_ios</i>
    <tr><td>Пн<td>Вт<td>Ср<td>Чт<td>Пт<td class="holiday">Сб<td class="holiday">Вс
  <tbody>
</table>

<script>
var prazdnik = [{dn: '01-01', celebrate: 'Новый год'},
            {dn: '01-07', celebrate: 'Рождество Христово'},
            {dn: '01-14', celebrate: 'Старый Новый год'},
            {dn: '02-23', celebrate: 'День защитника Отечества'},
            {dn: '03-08', celebrate: 'Международный женский день'},
            {dn: '04-01', celebrate: 'День смеха (День дурака)'},
	{dn: '04-12', celebrate: 'День космонавтики'},
	{dn: '05-01', celebrate: 'День трудящихся'},
	{dn: '05-09', celebrate: 'День Победы'},
	{dn: '06-12', celebrate: 'День России'},
	{dn: '11-07', celebrate: 'День Великой Октябрьской Социалистической революции'}],
timon,znak,twoDigits=(t)=>{return 9>=t?"0"+t:t};function Calendar2(id,year,month){var Dlast=new Date(year,month+1,0).getDate(),D=new Date(year,month,Dlast),DNlast=new Date(D.getFullYear(),D.getMonth(),Dlast).getDay(),DNfirst=new Date(D.getFullYear(),D.getMonth(),1).getDay(),calendar='<tr>',month=['Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'];timon=parseInt(D.getMonth()+1);if(DNfirst!=0){for(var i=1;i<DNfirst;i++)calendar+='<td class="pust">';}else{for(var i=0;i<6;i++)calendar+='<td class="pust">';}
for(var i=1;i<=Dlast;i++){(i==new Date().getDate()&&D.getFullYear()==new Date().getFullYear()&&D.getMonth()==new Date().getMonth())?calendar+='<td class="today"':calendar+='<td';calendar+=' data-iso="'+twoDigits(timon)+'-'+twoDigits(i)+'"><div class="day_num">'+i+'</div>';if(new Date(D.getFullYear(),D.getMonth(),i).getDay()==0){calendar+='<tr>';}}
for(var i=DNlast;i<7;i++)calendar+='<td class="pust">&nbsp;';$('#calendar2 tbody').html(calendar);$('#calendar2 .navigation').html('<strong>'+month[D.getMonth()]+' '+D.getFullYear()+'</strong>').attr('data-month',parseInt(D.getMonth()+1)).attr('data-year',D.getFullYear());}
Calendar2("calendar2",new Date().getFullYear(),new Date().getMonth());function vizov(){$('#imn,.day_num').tipsy({live:!0,gravity:'s',fade:!0,html:!0,opacity:1});$.getJSON('/api.php?method=users.orderedList&sort_by=birthdate&limit=500&sort_dir=desc&fields=user_id,username,avatar,age,birth_date&birth_month='+timon,function(data){var x=data.response.users;for(var i in x){var a=x[i].avatar;if(!a){a='/i/default_avatar.jpg'};var uname=x[i].username;if(uname.match(/"/)){uname=uname.replace(/\"/g,'')};var bdt=x[i].birth_date,mz=bdt.slice(-5,-3),den=(bdt.length==10)?bdt.split(/-/)[2]:bdt.split(/-/)[1];switch(mz){case'01':den<=19?znak='Козерог':znak='Водолей';break;case'02':den<=18?znak='Водолей':znak='Рыбы';break;case'03':den<=20?znak='Рыбы':znak='Овен';break;case'04':den<=19?znak='Овен':znak='Телец';break;case'05':den<=20?znak='Телец':znak='Близнецы';break;case'06':den<=21?znak='Близнецы':znak='Рак';break;case'07':den<=22?znak='Рак':znak='Лев';break;case'08':den<=22?znak='Лев':znak='Дева';break;case'09':den<=22?znak='Дева':znak='Весы';break;case'10':den<=22?znak='Весы':znak='Скорпион';break;case'11':den<=22?znak='Скорпион':znak='Стрелец';break;case'12':den<=21?znak='Стрелец':znak='Козерог'};person='<a href="/profile.php?id='+x[i].user_id+'" style="display:inline;position:relative;text-decoration:none;"><img id="imn" src="'+a+'" original-title="<figure><img src='+a+'><figcaption><strong>'+uname+'</strong> <br> Возраст: '+x[i].age+' <br> Знак: '+znak+'</figcaption></figure>" style="border-radius:50%; border:2px solid currentColor !important;"></a>';$('#calendar2 td[data-iso="'+mz+'-'+den+'"]').append(person);}
for(var j=0;j<prazdnik.length;j++){$('#calendar2 td[data-iso="'+prazdnik[j].dn+'"]').addClass('holiday').children('.day_num').attr('original-title',prazdnik[j].celebrate);}});};vizov();document.querySelector('#calendar2 thead tr:nth-child(1) td:nth-child(1)').onclick=function(){Calendar2("calendar2",document.querySelector('#calendar2 thead td:nth-child(2)').dataset.year,parseFloat(document.querySelector('#calendar2 thead td:nth-child(2)').dataset.month)-2);vizov();}
document.querySelector('#calendar2 thead tr:nth-child(1) td:nth-child(3)').onclick=function(){Calendar2("calendar2",document.querySelector('#calendar2 thead td:nth-child(2)').dataset.year,parseFloat(document.querySelector('#calendar2 thead td:nth-child(2)').dataset.month));vizov();}
</script>

ДЕМО

Вариант для размещения на главной странице виджет
заходите в Администрирование - Форумы, нажимаете Редактировать абсолютно любой форум, допустим самый первый сверху вниз, и в самый низ Описание (HTML) этого форума помещаете код:

Код:
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<style>
#calendar2 {
  width: 100%;
  font: monospace;
  line-height: 1.2em;
  font-size: 15px;
  text-align: center;
}
#calendar2 thead tr:last-child {
  font-size: small;
  color: rgb(85, 85, 85);
}
#calendar2 thead tr:nth-child(1) td:nth-child(2) {
  color: rgb(50, 50, 50);
}
#calendar2 thead tr:nth-child(1) td:nth-child(1):hover, #calendar2 thead tr:nth-child(1) td:nth-child(3):hover {
  cursor: pointer;
}
#calendar2 tbody td {
border-left: 1px solid #ebf0f5 !important;
  border-right: 1px solid #ebf0f5 !important;
  border-bottom: 1px solid #ebf0f5 !important;
  color: rgb(44, 86, 122);
  position: relative;
  width: 95px;
  height: 65px;
}
#calendar2 tbody td:nth-child(n+6), #calendar2 .holiday {
  color: rgb(231, 140, 92);
}
/* Пустой день */
#calendar2 td.pust {
  background: transparent;
  border: none !important;
}
/* Праздничный день */
#calendar2 td.holiday, #calendar2 td:nth-child(6):not(.pust),#calendar2 td:nth-child(7):not(.pust) {
  background: #fafbfc;
}
#calendar2 tbody td.today {
outline: 2px solid #98b0cd;
}
.day_num {
    position: absolute;
    top: 2px;
    left: 6px;
    text-align: center;
    color: #99acbf;
    font-size: 12.5px;
}
#calendar2 td.holiday .day_num, #calendar2 td:nth-child(6) .day_num, #calendar2 td:nth-child(7) .day_num {
    cursor: pointer;
    color: #555;
    background: #FFE082;
    border-radius: 50%;
    border-color: #FF9800 !important;
    border: 1px solid;
    width: 18px;
    height: 17px;
}
#imn {
width: 28px;
height: 28px;
}
#toleft, #toright {cursor: pointer;}
#calendar2 {display:none;
position: absolute;
    top: 10%;
    background: #fff;
    padding: 15px;
    z-index: 9;
    left: 0;
    border-radius: 9px;
-moz-box-shadow: 0px 0px 40px #444;
  -webkit-box-shadow: 0px 0px 40px #444;
  box-shadow: 0px 0px 40px #444;
}
/* Кнопки иконка календаря */
#clndr {
    position: relative;
    float: right;
    top: -10px;
    margin-left: 5px;
    cursor: pointer;
}
</style>

<table id="calendar2">
  <thead>
    <tr><td id="ext"><i class="material-icons" title="Закрыть">close</i></td><td id="toleft"><i class="material-icons" title="Предыдущий месяц">arrow_back_ios</i><td class="navigation" colspan="4"><td id="toright"><i class="material-icons" title="Следующий месяц">arrow_forward_ios</i>
    <tr><td>Пн<td>Вт<td>Ср<td>Чт<td>Пт<td class="holiday">Сб<td class="holiday">Вс
  <tbody>
</table>
<script>
var prazdnik = [{dn: '01-01', celebrate: 'Новый год <br><img src="https://forumstatic.ru/files/0017/d8/50/25273.png">'},
{dn: '01-07', celebrate: 'Рождество Христово'},
{dn: '01-14', celebrate: 'Старый Новый год'},
{dn: '02-23', celebrate: 'День защитника Отечества <br><img src="https://forumstatic.ru/files/0017/d8/50/73171.png">'},
{dn: '03-08', celebrate: 'Международный женский день'},
{dn: '04-01', celebrate: 'День смеха (День дурака)'},
{dn: '04-12', celebrate: 'День космонавтики <br><img src="https://forumstatic.ru/files/0017/d8/50/22066.png">'},
{dn: '05-01', celebrate: 'День трудящихся <br><img src="https://forumstatic.ru/files/0017/d8/50/13433.png">'},
{dn: '05-09', celebrate: 'День Победы <br><img src="https://forumstatic.ru/files/0017/d8/50/77665.png">'},
{dn: '06-12', celebrate: 'День России'},
{dn: '11-07', celebrate: 'День Октябрьской Социалистической революции'}];
</script>
<script>
var timon,znak,twoDigits=(t)=>{return 9>=t?"0"+t:t};function Calendar2(id,year,month){var Dlast=new Date(year,month+1,0).getDate(),D=new Date(year,month,Dlast),DNlast=new Date(D.getFullYear(),D.getMonth(),Dlast).getDay(),DNfirst=new Date(D.getFullYear(),D.getMonth(),1).getDay(),calendar='<tr>',month=['Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'];timon=parseInt(D.getMonth()+1);if(DNfirst!=0){for(var i=1;i<DNfirst;i++)calendar+='<td class="pust">';}else{for(var i=0;i<6;i++)calendar+='<td class="pust">';};for(var i=1;i<=Dlast;i++){(i==new Date().getDate()&&D.getFullYear()==new Date().getFullYear()&&D.getMonth()==new Date().getMonth())?calendar+='<td class="today"':calendar+='<td';calendar+=' data-iso="'+twoDigits(timon)+'-'+twoDigits(i)+'"><div class="day_num">'+i+'</div>';if(new Date(D.getFullYear(),D.getMonth(),i).getDay()==0){calendar+='<tr>';}};for(var i=DNlast;i<7;i++)calendar+='<td class="pust">&nbsp;';$('#calendar2 tbody').html(calendar);$('#calendar2 .navigation').html('<strong>'+month[D.getMonth()]+' '+D.getFullYear()+'</strong>').attr('data-month',parseInt(D.getMonth()+1)).attr('data-year',D.getFullYear());}function vizov(){$('#imn,.day_num').tipsy({live:!0,gravity:'s',fade:!0,html:!0,opacity:1});$.getJSON('/api.php?method=users.orderedList&sort_by=birthdate&limit=500&sort_dir=desc&fields=user_id,username,avatar,age,birth_date&birth_month='+timon,function(data){var x=data.response.users;for(var i in x){var a=x[i].avatar;if(!a){a='/i/default_avatar.jpg'};var uname=x[i].username;if(uname.match(/"/)){uname=uname.replace(/\"/g,'')};var bdt=x[i].birth_date,mz=bdt.slice(-5,-3),den=(bdt.length==10)?bdt.split(/-/)[2]:bdt.split(/-/)[1];switch(mz){case'01':den<=19?znak='Козерог':znak='Водолей';break;case'02':den<=18?znak='Водолей':znak='Рыбы';break;case'03':den<=20?znak='Рыбы':znak='Овен';break;case'04':den<=19?znak='Овен':znak='Телец';break;case'05':den<=20?znak='Телец':znak='Близнецы';break;case'06':den<=21?znak='Близнецы':znak='Рак';break;case'07':den<=22?znak='Рак':znak='Лев';break;case'08':den<=22?znak='Лев':znak='Дева';break;case'09':den<=22?znak='Дева':znak='Весы';break;case'10':den<=22?znak='Весы':znak='Скорпион';break;case'11':den<=22?znak='Скорпион':znak='Стрелец';break;case'12':den<=21?znak='Стрелец':znak='Козерог'};person='<a href="/profile.php?id='+x[i].user_id+'" style="display:inline;position:relative;text-decoration:none;"><img id="imn" src="'+a+'" original-title="<figure><img src='+a+'><figcaption><strong>'+uname+'</strong> <br> Возраст: '+x[i].age+' <br> Знак: '+znak+'</figcaption></figure>" style="border-radius:50%; border:2px solid currentColor !important;"></a>';$('#calendar2 td[data-iso="'+mz+'-'+den+'"]').append(person);}for(var j=0;j<prazdnik.length;j++){$('#calendar2 td[data-iso="'+prazdnik[j].dn+'"]').addClass('holiday').children('.day_num').attr('original-title',prazdnik[j].celebrate);}});};$('#calendar2 #toleft').live('click',function(){Calendar2("calendar2",document.querySelector('#calendar2 .navigation').dataset.year,parseFloat(document.querySelector('#calendar2 .navigation').dataset.month)-2);vizov();});$('#calendar2 #toright').live('click',function(){Calendar2("calendar2",document.querySelector('#calendar2 .navigation').dataset.year,parseFloat(document.querySelector('#calendar2 .navigation').dataset.month));vizov();});$('.status-right a[href="/foundation.php"]').after('<img id="clndr" src="https://forumstatic.ru/files/0017/d8/50/61334.png" title="Календарь">');$('#clndr').live('click',function(){Calendar2("calendar2",new Date().getFullYear(),new Date().getMonth());vizov();$('#calendar2').toggle();});$('#ext').live('click',function(){$('#calendar2').toggle()});
</script>

Иконка календаря появится на главной справа от фонда форума

http://forumfiles.ru/uploads/0000/14/1c/15964/921275.jpg

Набор праздников, иконки к ним можно составить самостоятельно. Они (праздники) отображаются при наведении на жёлтый кружочек с датой праздничного дня. Стиль календаря тоже полностью настраивается. Принцип оформления от предыдущей версии сильно не отличается, так что инструкции можно почитать там


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

+8


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