Скрипт автоматического обновления комментариев для сайта uCoz
Отличное решение для сайта созданного в системе uCoz стало появление скрипта -
автоматическое обновление комментариев. Данный
скрипт значительно упростит работу как администратора так и модератора сайта системы uCoz.
Установка скрипта крайне проста и не доставит хлопот, даже новичку системы. Во первых, что бы установить скрипт нужно зайти в панель управления сайтом, раздел управление дизайном, найти модуль "
комментарии", а затем в самый вверх
вида материалов комментариев вставить код:
Код
<div id="apoucomments" apotms="$TIMESTAMP$">
Затем нужно спуститься здесь же в самый низ и вставить закрывающий тег div:
Код
</div>[code]
Далее переходим в раздел - Форма добавления комментариев и в самый низ вставляем:
[code]
<script>
// softkafe.ru
var apocominterval;
$('div#apoucomments:first').before('<input class="apoButtons" style="margin-right:2px;" type="button" value="Проверить комментарии" onclick="aporefcomments()" /> <input class="apoButtons" style="margin-right:2px;" type="button" value="Обновить комментарии" onclick="apofullrefcomments()" /><br><br>');
// Функция простой проверки на наличие новых комментариев
function aporefcomments(s) {
$('div#apoucomments').stop().fadeTo(300, 0.6);
$.get(location.href, function(apogt) {
var apolastcom = $('#apoucomments:first').attr('apotms');
$('div#apoucomments').stop().fadeTo(300, 1);
if(apolastcom == $('#apoucomments:first', apogt).attr('apotms')) {
if(!s) {
_uWnd.alert('Нет новых комментариев', 'Увы', {w:250, h:70});
};
} else {
apofullrefcomments();
if(!s) {
_uWnd.alert('Подгружены новые комментарии', 'Уау!', {w:250, h:70});
};
}
});
}
// Задаём интервал автообновления в 60 секунд
apocominterval = setInterval(function() {
aporefcomments('s');
}, 60000);
// Функция полной подгрузки
function apofullrefcomments() {
clearInterval(apocominterval);
apocominterval = setInterval(function() {
aporefcomments('s');
}, 30000);
$('#allEntries').stop().fadeTo(300, 0.6);
setTimeout(function() {
$.get(location.href, function(apogt) {
$('#allEntries').html($('#allEntries', apogt).html()).stop().fadeTo(300, 1);
$('div#apoucomments:first').before('<input class="apoButtons" style="margin-right:2px;" type="button" value="Проверить комментарии" onclick="aporefcomments()" /> <input class="apoButtons" style="margin-right:2px;" type="button" value="Обновить комментарии" onclick="apofullrefcomments()" /><br><br>');
});
}, 1000);
}
// Модифицированная функция добавления комментариев
function addcom(f){
if (document.getElementById('addcBut')){document.getElementById('addcBut').disabled=true;}else {try{document.addform.submit.disabled=true;}catch(e){}}if (document.getElementById('eMessage')){document.getElementById('eMessage').innerHTML='<span style="color:#8B8B8B"><img src="http://s36.ucoz.net/img/ma/m/i2.gif" border="0" align="absmiddle" width="13" height="13"> Идет передача данных...</span>';}
if($('#apodop1').val().length > 4) {
$('.commFl').val($('.commFl').val() + '\n[url=' + $('#apodop1').val() + ']' + $('#apodop1').val() + '[/url]')
}
_uPostForm('acform',{type:'POST',url:'/index/', success:apofullrefcomments()});
}
// apo-ucoz.com (c) 2013
</script>
<style>
#newEntryB {
display:none;
}
.apoButtons {
transition: all 1s;
-moz-transition: all 1s; /* Firefox 4 */
-webkit-transition: all 1s; /* Safari and Chrome */
-o-transition: all 1s; /* Opera */
background: white;
border: none;
border-bottom: 1px solid #CCC;
border-right: 1px solid #CCC;
}
.apoButtons:hover {
background:#eee;
}
.apoButtons:active {
background:#ddd;
border-bottom: 1px solid #BBB;
border-right: 1px solid #BBB;
}
</style>