Время:
Новых сообщений: Нет
Вы на форуме дней
Ваша группа: Гость
Ваш IP: 18.188.202.89
Logical-Portal — молодежный портал со своей изюминкой, каждый сможет найти что-то интересное и полезное для себя, например наш форум общения с которым вам обязательно нужно ознакомиться.
  • Страница 1 из 1
  • 1
Скрипт для форума поднятие темы
Сообщение оставлено 08.03.2011 в 20:54:00 | Сообщение #1

При установке данного скрипта есть возможность автору только темы апать свою тему, то есть поднимать на верх.
скрипт сделан на куках, и запрещает пользователю апать более 1 темы в 24 часа, эти настройки можно изменять на время и количество раз
как выглядит работа скрипта:
при клике по кнопки которая указана скрине , ее скрипт выводит автоматом в строку в название темы

после появляется окно с диалогом

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

Установить очень просто
Установка:
Вставляем в страницу форума перед </body>
Code
<script type="text/javascript">   
locationh = '$HOME_PAGE_LINK$/forum/'+location.href.split('/')[4].split('-')[0]+'-'+location.href.split('/')[4].split('-')[1]+'-1';   
$.get(locationh,function(data){   
if($('.postUser:first',data).text() == 'mdbaner'){$('.gTopCornerRight:first').after('<div style="float:right;cursor:pointer;margin-right:10px;" class="upTheme"><img src="http://ucozon.ru/SCRIN7/1/up.png"></div>');   
function setCookie(name, value, days) {   
   if (days) {   
   var date = new Date();   
   date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));   
   var expires = "; expires=" + date.toGMTString();   
   }   
   else var expires = "";   
   document.cookie = name + "=" + value + expires + "; path=/";   
}   

function getCookie(name) {   
   var nameEQ = name + "=";   
   var ca = document.cookie.split(';');   
   for (var i = 0; i < ca.length; i++) {   
   var c = ca[i];   
   while (c.charAt(0) == ' ') c = c.substring(1, c.length);   
   if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);   
   }   
   return null;   
}   

function eraseCookie(name) {   
   setCookie(name, "", -1);   
}   
upth = location.href.split('/')[4].split('-')[0]+'uptheme';   
$('.upTheme').click(function() {   
if (getCookie(location.href.split('/')[4].split('-')[0]+'uptheme')) {   
   _uWnd.alert('<center><font color="red">Вы уже воспользовались функцией <b>сегодня</b></font><br><div style="font-size:10">Попробуйте позднее</div></center>', 'Оповещение',{w:300, h:70});_uWnd.close('uptheme')   
}   
else{   
new _uWnd('uptheme',' ',400,80,{align:0,shadow:0,close:1,autosize:1,maxh:400,minh:80,resize:0,oncontent:function() {   
$.get(location.href, function(data){   
seckey = $('input[name="seckey"]',data).val();   
img_seckey = $('#secImgForum',data).attr('src');   
r_seckey = $('#secImgForum',data).attr('onclick');   
if(seckey){$('#capID').html('<img src='+img_seckey+' style="cursor:pointer;" id="r_seckey" align="absmiddle"> <input class="capIDmE" type="text" autocomplete="off" style="font-size:20px;padding:4px;width:60px; type="text">');_uWnd.getbyname('uptheme').checksize()}   
else{$('.capID').hide();setTimeout("_uWnd.getbyname('uptheme').checksize()",500)}   
$('#r_seckey').click(r_seckey);   
$('#upThemeF').click(function() {   
$('.securityCode').val($('.capIDmE').val())   
$('#bodyUp').html('<div id="resUp" style="padding:25px;"><center>Пожалуйста, подождите...</center></div>');   
_uWnd.getbyname('uptheme').checksize();   
var ssid = $('input[name="ssid"]', data).val();   
$.post('/forum/', {   
a: '7',p: '0',jkd428: '1', jkd498: '1',message: 'upTheme',signature_on: '1',fid: location.href.split('/')[4].split('-')[0],tid:location.href.split('/')[4].split('-')[1],seckey:seckey,code:$('.securityCode').val(),ssid: ssid   
}, function(q){   
errorT = $(q).find('.gTableError').text();   
if(errorT){$('#resUp').html('<div style="color:red;text-align:center;">'+errorT+'</div>');_uWnd.close('uptheme');_uWnd.alert('<center><font color="red">'+errorT+'</font></center>', 'Ошибка',{w:400, h:70});}   
else{$('#resUp').html('<div style="color:blue;text-align:center;">Действие выполнено <b>успешно</b></div>');_uWnd.close('uptheme');_uWnd.alert('<center><font color="blue">Действие <b>успешно</b> выполнено</font></center>', 'Успешно',{w:400, h:70});setCookie(upth,'my content', 1)}   
});   
});   

});   
}}, '<div id="bodyUp" align="left"><fieldset style="padding:6px;">С помощью данной функции вы сможете приподнять тему вверх не более, чем <b>1</b> раз в день.</fieldset><fieldset class="capID" style="padding:6px;"><div id="capID"></div></fieldset><fieldset style="padding:6px;"><div align="right"><div style="display:inline-block;">'+_uButton('', 'b', {style: 3,text: 'Продолжить', id: 'upThemeF'})+'</div> <div style="display:inline-block;">'+_uButton('', 'b', {style: 1,text: 'Отмена',content: 'onclick="alert(\'' + this.href + '\')"'})+'</div></div></fieldset></div>' )   
};   
});   
}   
else{$('.upTheme').hide()}   
});   

$('.gTopCornerRight:last').parent().css({paddingLeft:'16px'})   
$('.gTopCornerRight:first').parent().css({paddingLeft:'16px'})   
$('td[class^="postRest"]').css({backgroundColor:'#FFF'})   
String.prototype.rett=function(){return this.replace(/[:()]/g,'').substr(14)*1;};   
var teq = 7, tej = 5, tep = 0, ten = $('.gDivLeft:eq('+teq+') .forumThreadTd').length, tec = {a: 0, b: 0, c: 0, d: 0};   
for(i = 0; i <= teq; i++) {   
tec.a += ($('.gDivLeft:eq('+teq+') .forumThreadTd').eq(i).text())*1;   
tec.b += ($('.gDivLeft:eq('+teq+') .forumPostTd').eq(i).text())*1;   
tec.c += $('.gDivLeft:eq('+teq+') .forumViewed').eq(i).text().rett();   
};   
tec.d = $('.gDivLeft:eq('+teq+') .forumLastPostTd:eq(0)').html();   
$('.gDivLeft:eq('+tej+') .forumThreadTd:eq('+tep+')').text(tec.a);   
$('.gDivLeft:eq('+tej+') .forumPostTd:eq('+tep+')').text(tec.b);   
$('.gDivLeft:eq('+tej+') a.forum:eq('+tep+')').after('<span class="forumViewed">(просматривают: '+ tec.c +')');   
$('.gDivLeft:eq('+tej+') .forumLastPostTd:eq('+tep+')').html($('.gDivLeft:eq('+teq+') .forumLastPostTd').eq(0).html());   
$('.gDivLeft').eq(teq).hide();   
</script>

если вы хотите к примеру изменить на 12 часов запрета а не 24 то изменяем даную строчку скрипта
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
таким образом 24 на 12
date.setTime(date.getTime() + (days * 12 * 60 * 60 * 1000));

 
 
   
Сообщение оставлено 11.03.2011 в 13:26:23 | Сообщение #2
То что нужно) сюда бы
 
 
   
  • Страница 1 из 1
  • 1
Поиск:
 
Графика от: Megas, GraFOS | Дизайн сверстал E.A.
Хостинг от uCoz
Яндекс.Метрика