Скрипт для форума поднятие темы


Скрипт для форума поднятие темы

896
10 из 10
Проголосовало: 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));

Автор: мир

Автор публикации: Загрузка
Загрузка
Вовчик, это его n материал
Источник: http://forucoz.com
  • Всего комментариев: 2

Max5
0
Max5 написал: Написано 25 Июля 2011 в 19:03
Комментарий №2
легко обойти ограничение в один день

mdbaner
0
mdbaner написал: Написано 08 Марта 2011 в 11:53
Комментарий №1
да красиво слизано , мир сам готовил оформление и описание..

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 24
Скрипты и модификации для Ucoz 2101
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 429
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
как поставить свою ссылку и логотип
  • Сатурн-1 написал:
  • Похвально.
  • Winston888 написал:
  • Я не говорил что делаю только скрипты. Я делаю шаблоны, скрипты, адаптации с разных движков под ucoz и на оборот + я ещё и сам рисую. В данный момент занимаюсь дизайном для webo4ka сам рисую сам верстаю.
  • Сатурн-1 написал:
  • Заметь, мы делаем почти одну и ту же работу.
    Ты - скрипты, я -шаблон. И каждый делает это бесплатно, НО
    ты делаешь скрипты без шаблона, я делаю шаблон без скриптов (не считая основных).
    Я тоже могу сказать что твои скрипты не идеальны, но не буду т.к. даже не знаю какие из всех существующих твои.
    Поэтому ты не сравнивай скрипты и шаблоны да еще и на Ucoz'e, мы же не на хакатоне каком нибудь.
  • Winston888 написал:
  • Если бы я не добавлял бесплатные адаптации или скрипты бесплатно я бы наверное не стал бы комментировать ваш материал.
    Последние темы
    Опрос
    403
    А
    Р
    Оцените новый дизай:)
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 6
    Гостей: 5
    Пользователей: 1
    0
    Сегодня были
    Топ пользователей: