Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Топ 5 сообщений (пять топиков на главную страницу)

Модерирует : Antuan

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Dina



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В "Файловом архиве" можно скачать скрипт, который выставляет 5 популярных сообщений форума на сайт. Подойдёт ли этот скрипт для версии Иконбоарда 2.1.9. ?

Всего записей: 132 | Зарегистр. 16-09-2001 | Отправлено: 17:21 21-07-2002 | Исправлено: lynx, 21:53 17-12-2003
Alexander Ipp



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Dina
Да. И лучше код скрпита не тот, что там, а такой:

Код:
 
use CGI::Carp qw (fatalsToBrowser);
$| = 1;  
#open(FILE,"/home/212/s290/public_html/cgi-bin/ikonboard/data/recentpost.dat");
### Фиксим кривизну рук автора хака. :))  | Alexander Ipp
require "data/boardinfo.cgi"; # Вызываем файл с инфой о борде.
open(FILE,"$ikondir" . "data/recentpost.dat"); # Подставляем абсолютный путь к папке с бордой... И не надо ничего делать ручками. лол  
 
 
@datas = <FILE>;  
close (FILE);  
$ranks = 4;  
 
while ($ranks > -1) {  
  @top5 = split(/\|/,@datas[$ranks]);  
  $top5[3] = substr($top5[3],0,70) . "..." if (length($top5[3]) > 70);  
### Убираем коды IB из текста... | Alexander Ipp
  $top5[3] = join('',split(/<br>/,$top5[3]));
  $top5[3] = join('',split(/<p>/,$top5[3]));
  $top5[3] =~ s/\<p>/<br><br>/isg;
      $top5[3] =~ s|\[\[|\{\{|g;
      $top5[3] =~ s|\]\]|\}\}|g;
      $top5[3] =~ s|\n\[|\[|g;
      $top5[3] =~ s|\]\n|\]|g;
      $top5[3] =~ s|<br>| <br>|g;
      $top5[3] =~ s|\[hr\]\n||g;
      $top5[3] =~ s|\[hr\]||g;
      $top5[3] =~ s/\[q\]\s*(.*?)\s*\[\/q\]/$1/isg;
      $top5[3] =~ s/\[quote\]\s*(.*?)\s*\[\/quote\]/$1/isg;
  $top5[3] =~ s/\[url\](\S+?)\[\/url\]/$1/isg;
      $top5[3] =~ s/\[url=http:\/\/(\S+?)\]/$1/isg;
      $top5[3] =~ s/\[url=(\S+?)\]/$1/isg;
      $top5[3] =~ s/\[\/url\]//isg;
  $top5[3] =~ s/(^|\s|\<br\>)(http:\/\/\S+)/$1 $2 /isg;  
      $top5[3] =~ s/(^|\s|\<br\>)(https:\/\/\S+)/$1 $2 /isg;  
      $top5[3] =~ s/(^|\s|\<br\>)(ftp:\/\/\S+)/$1 $2 /isg;  
      $top5[3] =~ s/(^|\s|\<br\>)(www\.\S+)/$1 $2 /isg;
  $top5[3] =~ s/\[c\](.*?)\[\/c\]/$1/isg;
      $top5[3] =~ s/\[s\](.*?)\[\/s\]/$1/isg;
  $top5[3] =~ s/\[b\]//isg;
      $top5[3] =~ s/\[\/b\]//isg;
      $top5[3] =~ s/\[i\]//isg;
      $top5[3] =~ s/\[\/i\]//isg;
      $top5[3] =~ s/\[size=\s*(.*?)\s*\]\s*(.*?)\s*\[\/size\]/$2/isg;
      $top5[3] =~ s/\[font=\s*(.*?)\s*\]\s*(.*?)\s*\[\/font\]/$2/isg;
      $top5[3] =~ s/\[u\]//isg;
      $top5[3] =~ s/\[br\]//isg;
      $top5[3] =~ s/\[\/u\]//isg;
  $top5[3] =~ s/\[img\](.*?)(script:)(.*?)\[\/img\]/$1$3/isg;
  $top5[3] =~ s/\[img\](.*?)(mailto:)(.*?)\[\/img\]/$1$3/isg;
  $top5[3] =~ s/\[img\](.+?)\[\/img\]/ $1 /isg;
      $top5[3] =~ s/\[color=(\S+?)\]/$1/isg;
      $top5[3] =~ s/\[\/color\]//isg;
      $top5[3] =~ s/\\http:\/\/(\S+)/$1/isg;
      $top5[3] =~ s/(\[list\])(.+?)(\[\/list\])/ $2/isg;
      $top5[3] =~ s/(\[list=)(A|1)(\])(.+?)(\[\/list\])/ $4/isg;
      $top5[3] =~ s/(\[\*\])/ /isg;
      $top5[3] =~ s/\[code\](.+?)\[\/code\]/ $1/isg;      
      $top5[3] =~ s/\[code\](.+?)\[\/code\]/ $1/isg;
  $top5[3] =~ s/\[email=(\S+?)\]/ $1/isg;
      $top5[3] =~ s/\[\/email\]//isg;
      $top5[3] =~ s/(\[FLASH SIZE=1\])(.+?)(\[\/FLASH\])/ $2 /isg;
      $top5[3] =~ s/(\[FLASH SIZE=2\])(.+?)(\[\/FLASH\])/ $2 /isg;
      $top5[3] =~ s/(\[FLASH SIZE=3\])(.+?)(\[\/FLASH\])/ $2 /isg;
      $top5[3] =~ s/(\[FLASH=)(\S+?)(\,)(.+?)(\])(.+?)(\[\/FLASH\])/ $6 /isg;
      $top5[3] =~ s/(\[center\])(.+?)(\[\/center\])/$2/isg;
      $top5[3] =~ s/(\[sound\])(\S+?)(\.mid|\.midi|\.wav)(\[\/sound\])/ $2 $3 /isg;
      $top5[3] =~ s|\{\{|\[|g;
      $top5[3] =~ s|\}\}|\]|g;
######### Убрали коды. лол | Alexander Ipp
  $ranks--;  
 
  $html .= "<font face=\"Garamond\" size=\"3\">&gt;&nbsp;";  
 
#if ($top5[0]) {  
#   $html .= "<a href=\"http://the-sims.pp.ru/cgi-bin/ikonboard/topic.cgi?forum=$top5[0]&topic=$top5[1]\"><b>$top5[2]</b></a><br></font><font face=\"verdana,arial,helvetica\" size=1>&nbsp;&nbsp;&nbsp;\"$top5[3]\"</font><br>";  
#   } else {  
#   $html .= "<a href=\"http://the-sims.pp.ru/cgi-bin/ikonboard/board.cgi\">Forums</a><br>";  
#   }
########### Снова фиксим кривизну рук... | Alexander Ipp
if ($top5[0]) {  
      $html .= "<a href=\"$boardurl/topic.cgi?forum=$top5[0]&topic=$top5[1]\"><b>$top5[2]</b></a><br></font><font face=\"verdana,arial,helvetica\" size=1>&nbsp;&nbsp;&nbsp;\"$top5[3]\"</font><br>";  
      } else {  
      $html .= "<a href=\"$boardurl/board.cgi\">Главная страница конференции</a><br>";  
      }  
}  
 
print "Content-type: text/html\n\n";  
 
print "$html";  
exit;  
 

Для кого-то делал, уже не помню для кого, так или иначе сейчас у него не ИБ2, так что юзайте наздоровье. гы
Этот код всунте в top5.cgi вместо того что там уже лежит.

Всего записей: 1943 | Зарегистр. 20-08-2001 | Отправлено: 19:33 23-07-2002 | Исправлено: Alexander Ipp, 19:34 23-07-2002
Arkan

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А как запретить там приватный форум высвечивать? А то никакой секретности.

Всего записей: 231 | Зарегистр. 29-12-2001 | Отправлено: 19:01 20-09-2002
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arkan
 

Цитата:
А как запретить там приватный форум высвечивать? А то никакой секретности.

 
В самом начале кода, что ты видишь выше ^^
пишешь:
 
unless ($inforum == 2){#начало цикла unless
 
#где, 2 - это номер твоего приватного форума
вышеприведенный код
 
}# конец цикла unless
#то есть закрывающуюся фигурную скобку ставишь после куска кода

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 02:23 21-09-2002
intr0



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Запускаю это - пишет пять раз "Главная страница конференции"..
А где ж 5 последних топиков?
и этого файла: data/recentpost.dat нет

Всего записей: 62 | Зарегистр. 22-10-2001 | Отправлено: 18:32 17-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
intr0
 

Цитата:
Запускаю это - пишет пять раз "Главная страница конференции"..  
А где ж 5 последних топиков?  

 
Оним по мере появления новых постов будут появляться.
 

Цитата:
и этого файла: data/recentpost.dat нет

 
Запости и посмотри, создался он или нет.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 21:45 17-12-2003
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Топ 5 сообщений (пять топиков на главную страницу)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru