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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2

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

shishkov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1. Поскльку ссылка с сайта идет на топик, а не на конкретный пост то была идея сделать, чтобы новое сообщение которое добавляется в тему добавлялось бы на место старого из этой темы. (если этого не сделать - форум "треп" часто забивает все остальное)  
2. Избавиться от запуска перла при загрузке главной страницы, использовать только SSI.
3. Для того, чтобы было нельзя изуродовать дизайн сайта написав_длинное_слово - сделать, чтобы слово больше определенной длины разрезалось на несколько слов.
4. Выводить на гл. стр последнее сообщение по новой теме - сверху.
 
в порядке изучения перла сделал следующее:
 
в post.cgi найти
sub addnewthread { # start routine
вместо

Код:
 
    ### RECENT POST HACK BEGIN  
     if ($privateforum ne "yes"){
    if("$ikondir" . "data/allforums.cgi"){
    open(FILE, "$ikondir" . "data/recentpost.dat");
    @recentposts=<FILE>;
    close(FILE);
    chmod(0666,"$ikondir" . "data/recentpost.dat");
    if (@recentposts > 4){   # число топиков на гл. страницу минус один
    # Remove First Item
    $temp = shift(@recentposts);
    }
    open (FILE, ">$ikondir" . "data/recentpost.dat") || die("Can't open recentpost.dat");
    foreach $current (@recentposts){
    print FILE "$current";
    }
    print FILE "$inforum|$newthreadnumber|$intopictitle|$inpost|$inpostno\n";
    close(FILE);
    chmod(0666,"$ikondir" . "data/recentpost.dat");
    }
    else
    {
    open (FILE, ">$ikondir" . "data/recentpost.dat") || die("Can't open recentpost.dat");
    print FILE "$inforum|$newthreadnumber|$intopictitle|$inpost|$inpostno\n";
    close(FILE);
    chmod(0666,"$ikondir" . "data/recentpost.dat");
    }
    } #end    if ($privateforum ne "yes"){
    ### END HACK  
 

 
сделал  
 

Код:
 
    ### RECENT POST HACK BEGIN  
      if ($privateforum ne "yes"){
       if("$ikondir" . "data/recentpost.dat"){
        open(FILE, "$ikondir" . "data/recentpost.dat");
          flock (FILE, 2);
         @recentposts=<FILE>;
        close(FILE);
        chmod(0666,"$ikondir" . "data/recentpost.dat");
        $added=0;
        foreach $post_f(@recentposts){
         ($inforum_f,$newthreadnumber_f,$intopictitle_f,$inpost_f,$inpostno_f)=split(/\|/,$post_f);
         if($inforum_f eq $inforum and $newthreadnumber eq $newthreadnumber_f){
          $post_f="$inforum|$newthreadnumber|$intopictitle|$inpost|$inpostno\n";
          $added=1;
          last;
         };
        };
        open (FILE, ">$ikondir" . "data/recentpost.dat") || die("Can't open recentpost.dat");
          flock (FILE, 2);
        if (@recentposts > 4 and not $added){ # число топиков на гл. страницу минус один
         # Remove First Item
         $temp = shift(@recentposts);
         push @recentposts,"$inforum|$newthreadnumber|$intopictitle|$inpost|$inpostno\n";  
        }elsif(@recentposts > 4 and $added){  # число топиков на гл. страницу минус один
         $tmp_po='';
        }else{  
         push @recentposts,"$inforum|$newthreadnumber|$intopictitle|$inpost|$inpostno\n";
 };  
         print FILE @recentposts;
          close(FILE);
         chmod(0666,"$ikondir" . "data/recentpost.dat");
        }
       else
       {
        open (FILE, ">$ikondir" . "data/recentpost.dat") || die("Can't open recentpost.dat");
          flock (FILE, 2);
         push @recentposts,"$inforum|$newthreadnumber|$intopictitle|$inpost|$inpostno";  
         print FILE @recentposts;
        close(FILE);
        chmod(0666,"$ikondir" . "data/recentpost.dat");
       }
      &atop5(@recentposts);    
      }  #end$privateforumneyes
       ### END HACK  
 

 
в
 
sub addreply { # start routine
 
вместо  
 

Код:
 
    ### RECENT POST HACK BEGIN  
    if ($privateforum ne "yes"){  
    if("$ikondir" . "data/allforums.cgi"){
    open(FILE, "$ikondir" . "data/recentpost.dat");
    @recentposts=<FILE>;
    close(FILE);
    chmod(0666,"$ikondir" . "data/recentpost.dat");
    if (@recentposts > 4){
    # Remove First Item
    $temp = shift(@recentposts);
    }
    open (FILE, ">$ikondir" . "data/recentpost.dat") || die("Can't open recentpost.dat");
    foreach $current (@recentposts){
    print FILE "$current";
    }
    print FILE "$inforum|$intopic|$topictitle|$inpost|$inpostno\n";
    close(FILE);
    chmod(0666,"$ikondir" . "data/recentpost.dat");
    }
    else
    {
    open (FILE, ">$ikondir" . "data/recentpost.dat") || die("Can't open recentpost.dat");
    print FILE "$inforum|$intopic|$topictitle|$inpost|$inpostno\n";
    close(FILE);
    chmod(0666,"$ikondir" . "data/recentpost.dat");
    }
    }##end if ($privateforum ne "yes"){  
    ### END HACK  
 

 
сделал  

Код:
 
    ### RECENT POST HACK BEGIN  
    # Форум "тусовка" - не писать.
      if ($privateforum ne "yes"){
       if("$ikondir" . "data/recentpost.dat"){
        open(FILE, "$ikondir" . "data/recentpost.dat");
          flock (FILE, 2);
         @recentposts=<FILE>;
        close(FILE);
        chmod(0666,"$ikondir" . "data/recentpost.dat");
        $added=0;
        foreach $post_f(@recentposts){
         ($inforum_f,$intopic_f,$topictitle_f,$inpost_f,$inpostno_f)=split(/\|/,$post_f);
         if($inforum_f eq $inforum and $intopic eq $intopic_f){
          $post_f="$inforum|$intopic|$topictitle|$inpost|$inpostno\n";
          $added=1;
          last;
         };
        };
        open (FILE, ">$ikondir" . "data/recentpost.dat") || die("Can't open recentpost.dat");
          flock (FILE, 2);
 
        if (@recentposts > 4 and not $added){
         # Remove First Item
         $temp = shift(@recentposts);
         push @recentposts,"$inforum|$intopic|$topictitle|$inpost|$inpostno\n";  
        }elsif(@recentposts > 4 and $added){  
         $tmp_po='';
        }else{  
         push @recentposts,"$inforum|$intopic|$topictitle|$inpost|$inpostno\n";
 };  
         print FILE @recentposts;
          close(FILE);
         chmod(0666,"$ikondir" . "data/recentpost.dat");
        }
       else
       {
        open (FILE, ">$ikondir" . "data/recentpost.dat") || die("Can't open recentpost.dat");
          flock (FILE, 2);
         push @recentposts,"$inforum|$intopic|$topictitle|$inpost|$inpostno";  
         print FILE @recentposts;
        close(FILE);
        chmod(0666,"$ikondir" . "data/recentpost.dat");
       }
      &atop5(@recentposts);    
      }  #end$privateforumneyes
        ### END HACK  
 

 
В конец post.cgi
добавить:

Код:
 
sub atop5{
 my (@datas,$string,@top5,$html);
 @datas=@_;
 @datas=reverse @datas;
 foreach $string(@datas) {  
  @top5 = split(/\|/,$string);  
  $top5[3] = join(' ',split(/<br>/,$top5[3]));
  $top5[3] = join(' ',split(/<p>/,$top5[3]));
  $top5[3] = join(' ',split(/&gt;/,$top5[3]));
  $top5[3] = join(' ',split(/&quote;/,$top5[3]));
  $top5[3] = join(' ',split(/&nbsp;/,$top5[3]));
  $top5[3] = join(' ',split(/&lt;/,$top5[3]));
  $top5[3] = join('',split(/\[b\]/,$top5[3]));
  $top5[3] = join('',split(/\[\/b\]/,$top5[3]));
  $top5[3] = join('',split(/\[i\]/,$top5[3]));
  $top5[3] = join('',split(/\[\/i\]/,$top5[3]));
  $top5[2]=devides("$top5[2]");
  $top5[3]=devides("$top5[3]");
  $top5[3] = substr($top5[3],0,30) . "..." if (length($top5[3]) > 30);  
  $top5[2] = substr($top5[2],0,20) . "..." if (length($top5[2]) > 20);  
 
  if ($top5[0]) {  
# здесь можно отформатировать сообщение записав $html .="<b>" итп
   $html.="<li><a href=\"$boardurl"."/$threadprog?forum=$top5[0]&topic=$top5[1]\">$top5[2]: $top5[3]</a><br>\n";  
  }  
 }  
 open(TOP5,">$imagesdir"."top5.html") || die "Ошибка при открытии файла"."$imagesdir".'top5.html:'."$!";  # $imagesdir это путь на сервере!
 flock (TOP5, 2);
  print TOP5 "$html";  
 close TOP5;
#exit;
 
} #sub atop5
 

 
и  
 

Код:
 
sub devides{  
# режет длинное непрерывное слово
 my($string) = @_;
 
 my(@tmp5,$stmp5,$lng,$ng,$i,$stmp52, $wordl);
$wordl=14; # максимальная длина слова
 @tmp5 = split(/ /,$string);
 foreach $stmp5(@tmp5){
  $lng=length($stmp5);
  if ($lng > $wordl) {  
   $ng=$lng/$wordl;
   $stmp52=substr($stmp5,0,$wordl)." ";
    for ($i=1 ; $i<=$ng ; $i++){  
     $stmp52 .= substr($stmp5,$i*$wordl,$wordl)." "  
    };
   $stmp5=$stmp52;                  
  };
 };
 $string=join(" ",@tmp5);                                        
 return $string;
}#### sub devides
 

 
теперь вместо вставки на главную страницу  

<!--#include virtual="[ваш_путь к top5.cgi]/top5.cgi" -->

поставить например.

<!--#include virtual="[то что стоит в boardinfo.cgi в $imagesurl URL на  тоже место что и $imagesdir ]/top5.html" -->

 

Всего записей: 44 | Зарегистр. 15-06-2002 | Отправлено: 19:29 12-07-2004 | Исправлено: shishkov, 19:42 30-07-2004
shishkov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А как бы так сделать, чтобы ссылка была на последнюю страницу темы, чтобы после перехода с главной страницы не пролистывать каждый раз тему до конца.

Всего записей: 44 | Зарегистр. 15-06-2002 | Отправлено: 16:24 13-07-2004
shishkov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ошибку нашел у себя  

Код:
       }  
      }  #end$privateforumneyes  
      &atop5(@recentposts);      

надо  

Код:
       }  
&atop5(@recentposts);      
}  #end$privateforumneyes  
           


Всего записей: 44 | Зарегистр. 15-06-2002 | Отправлено: 13:32 27-07-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Видоизменяю стандартный слегка пофиксенный вариант top5 из файлового архива II
 
 
Задача стояла такая. Помимо запрета вывода постов из закрытых форумов, еще сделать запрет вывода из форумов типа Теста и вообще, задать те форумы, которые надо.
 
Это решилось очень просто.
 
Вместо:
 

Код:
 
if (($privateforum ne "yes"){ #start if
 

 
Код смотреть по ссылке выше
 
Надо написать:
 

Код:
if (($privateforum ne "yes")&&($inforum ne "3")){ #start if
 
 

 
Где 3 - номер форума Тест
 
Либо, можно четко прописать, из каких форумов выводить темы, тогда так.
Например, выводим из форумов 1, 2 и 3:
 

Код:
if (($inforum eq "1")||($inforum eq "2")||($inforum eq "3")){ #start if
 
 

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

Код:
   print FILE "$inforum|$intopic|$topictitle|$inpost\n";
 

 
Пишем:
 

Код:
 print FILE "$inforum|$topicid|$topictitle|$forumname|$topicdescription\n";

 
Таким образом, записываем номер форума, номер топика, тему топика, имя форума, описание топика. Не совсем в логичной последовательности, но не суть.
 
Теперь это все надо выводить.
 
Открываем файло top5.cgi
 
Вместо:
 

Код:
 
$html .= "<font face=\"verdana,arial,helvetica\" size=1>&gt;&nbsp;";  
 
 
### EDIT ###
# modify the two urls in the code below to point to your Ikonboard.
# This must be a URL not path.
 
if ($top5[0]) {  
$html .= "<a href=\"http://www.darkslay.co.uk/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://www.darkslay.co.uk/cgi-bin/ikonboard/ikonboard.cgi\">Forums</a><br>";  
}  
}  
 
 
### EDIT ###
# for some reason this appeared on the page as well, so i edited it  
# out. I left it here cos Scott must have had a reason for putting  
# it there in the first place. But i dont know why
#  
# print "Content-type: text/html\n\n";  
 
print "$html";  
 

 
Пишу так:
 

Код:
 
if ($top5[0]) {  
$html .= qq~
<tr><td class=base2>
Форум: <a target=_blank class=main1 href=/cgi-bin/ib/forums.cgi?forum=$top5[0]>$top5[3]</a><br>
Тема: <a target=_blank class=main1  href=/cgi-bin/ib/topic.cgi?forum=$top5[0]&topic=$top5[1]>$top5[2]</a><br>
</td></tr>~;
 
}  
 
}  
 
print "Content-type: text/html; charset=windows-1251\n\n";  
print "<center><table bgcolor=#f3f0ff cellpadding=3 border=1 bordercolor=#ffffff><tr><td bgcolor=#440099><div class=razdel>Последние темы на форуме</div></td></tr>";  
print "$html";  
print "</table></center>";
 

 
то есть, что тут есть?  
Если ни одной темы пока не обновилось, то не выводится дурацкое слово Forums. Вообще ничего выводиться не будет на самом деле.
Дизайн подстроен под мои нужды.
Название темы залинковано на нее, название форума - на него.
 
 
 
Однако я хочу описание выводить.
 
Пишу:
 

Код:
 
if ($top5[0]) {  
$html .= "
<tr><td class=base2>
Форум: <a target=_blank class=main1 href=/cgi-bin/ib/forums.cgi?forum=$top5[0]>$top5[3]</a><br>
Тема: <a target=_blank class=main1  href=/cgi-bin/ib/topic.cgi?forum=$top5[0]&topic=$top5[1]>$top5[2]</a><br>
Описание: $top5[4]
</td></tr>
";  
 

 
 
но если автор темы не придумал для нее описание (имеет право), то будет некрасиво: слово "Описание" есть, а описания нет.
 
тогда делаю так:
 
 

Код:
 
if ($top5[0]) {  
$html .= qq~
<tr><td class=base2>
Форум: <a target=_blank class=main1 href=/cgi-bin/ib/forums.cgi?forum=$top5[0]>$top5[3]</a><br>
Тема: <a target=_blank class=main1  href=/cgi-bin/ib/topic.cgi?forum=$top5[0]&topic=$top5[1]>$top5[2]</a><br>
~;  
if($top5[4]){
html .= qq~Описание: $top5[4] ~ ;
}

$html .= qq~</td></tr>~;
 
}  
 
}  
 

 
И натыкаюсь на 500-ю ошибку с руганью в логах:
 

Код:
 
[Thu Oct 21 02:24:46 2004] [error] [client 127.0.0.1] Premature end of script headers: f:/data/wwwsite/cgi-bin/ib/top5.cgi
[Thu Oct 21 02:24:46 2004] [error] [client 127.0.0.1] Can't modify constant item in concatenation (.) or string at f:\data\WWWsite\cgi-bin\ib\top5.cgi line 85, near "qq~Описание: $top5[4] ~ ;"
 
[Thu Oct 21 02:24:46 2004] [error] [client 127.0.0.1] Execution of f:\data\WWWsite\cgi-bin\ib\top5.cgi aborted due to compilation errors.
 
 

 
 
Где я ошибаюсь?

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 02:54 21-10-2004 | Исправлено: lynx, 03:06 21-10-2004
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx Он пишет, как я понимаю, что не может модифицировать константу в 85 строке.
Может из-за : html = $html ?

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 03:41 21-10-2004
lynx



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

Цитата:
Может из-за : html = $html ?  

 
Ну, конечно, это моя вечная ошибка - знак переменной не поставить и удивляться, что не работает.
 
Потестировать тут не могу, но по коду выше ошибка очевидна. Спасибо.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 18:35 21-10-2004
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx Не за что!!!

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 01:40 22-10-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shishkov
А можно уточнить, вот это зачем:
 
 

Код:
elsif(@recentposts > 4 and $added){  # число топиков на гл. страницу минус один  
         $tmp_po='';  


Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 22:14 06-11-2004
trew

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

Цитата:
 
Код:  
sub atop5{  
 сократил  
} #sub atop5  
 

 
Вот пытаюсь немного переделать этот код, но что-то самому не получается...
 1. Хотелось бы все таки, чтоб  то что записывается в посте в виде http:// выводилось нормальной ссылкой уже при вставке?
2. Как преобразовать кода иконборда в нормальные , чтоб они при инклуде отображались как хтмл-ные?
3.

Цитата:
# здесь можно отформатировать сообщение записав $html .="<b>" итп  
   
Хочется сделать без этого(и ниже), но при вырезании перестает работать вообще?

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 02:50 31-01-2005
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Вопрос снимаю, разобрался сам.




А рассказать всем? lynx.

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 13:49 31-01-2005 | Исправлено: lynx, 20:45 04-02-2005
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
У меня получился некий альтернативный вариант, который можно использовать и с дефолтным хаком.
Что хотелось:  
1. Меньше нагружать кодом  сами скрипты форума.
2. Хотелось бы все таки, чтоб  то что записывается в посте в виде http:// выводилось нормальной ссылкой уже при вставке
3. Преобразовать кода иконборда в нормальные , чтоб они при инклуде отображались как хтмл-ные, то есть так же красиво, как на форуме.
4. Все таки вынести дизайн из post.cgi...
 
Итак, для дефолтного хака:
1. Вы устанавливаете дефолтный(по-фиксенный) хак  целиком.
2. Открываем top5.cgi:
 Находим строчки:

Код:
$top5[3] = join('',split(/<br>/,$top5[3]));
$top5[3] = join('',split(/<p>/,$top5[3]));

 
Заменяем их на:

Код:
 
$top5[3] =~ s/\\http:\/\/(\S+)/<a href=\"http:\/\/$1\"\ target=\"_blank\">http:\/\/$1<\/a>/isg;
$top5[3] =~ s/(\[list\])(.+?)(\[\/list\])/<UL>$2<\/UL>/isg;
$top5[3] =~ s/(^|\s|\<br\>)(http:\/\/\S+)/$1<a href="$2" target=_blank>$2<\/a> /isg;  
$top5[3] =~ s/(^|\s|\<br\>)(https:\/\/\S+)/$1<a href="$2" target=_blank>$2<\/a> /isg;  
$top5[3] =~ s/(^|\s|\<br\>)(ftp:\/\/\S+)/$1<a href="$2" target=_blank>$2<\/a> /isg;  
$top5[3] =~ s/(^|\s|\<br\>)(www\.\S+)/$1<a href="http:\/\/$2" target=_blank>$2<\/a> /isg;
$top5[3] =~ s/\[url\](\S+?)\[\/url\]/<a href=\"$1\"\ target=\"_blank\">$1<\/a>/isg;
$top5[3] =~ s/\[url=http:\/\/(\S+?)\]/<a href=\"http:\/\/$1\"\ target=\"_blank\">/isg;
$top5[3] =~ s/\[url=(\S+?)\]/<a href=\"http:\/\/$1\"\ target=\"_blank\">/isg;
$top5[3] =~ s/\[\/url\]/<\/a>/isg;
$top5[3] =~ s/\[c\](.*?)\[\/c\]/<center>$1<\/center>/isg;
$top5[3] =~ s/\[s\](.*?)\[\/s\]/<span class=s>$1<\/span>/isg;
$top5[3] =~ s/\[b\]/<b>/isg;
$top5[3] =~ s/\[\/b\]/<\/b>/isg;
$top5[3] =~ s/\[i\]/<i>/isg;
$top5[3] =~ s/\[\/i\]/<\/i>/isg;
$top5[3] =~ s/\[u\]/<u>/isg;
$top5[3] =~ s/\[br\]/<br>/isg;
$top5[3] =~ s/\[\/u\]/<\/u>/isg;
$top5[3] =~ s/\<p>/<br><br>/isg;
$top5[3] =~ s/(\[size=)(\d+)\](.+?)(\[\/size\])/<font size=\"$2\">$3<\/font>/isg;    
$top5[3] =~ s/(\[font=)([A-Z a-z]+)\](.+?)(\[\/font\])/<font face=\"$2\">$3<\/font>/isg;    
$top5[3] =~ s/(\[color=)([A-Za-z]+|[#\dA-F]+)\](.+?)(\[\/color])/<font color=\"$2\">$3<\/font>/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|\<hr width=40\% align=left>|g;
    $top5[3] =~ s|\[hr\]|\<hr width=40\% align=left>|g;
    while ($top5[3] =~ m!(\[q\])[\S\s](.+?)[\S\s](\[/q\])!ig){  
    $top5[3] =~ s/\[q\]\s*(.*?)\s*\[\/q\]/<span class=s><b>Цитата:<\/b><\/span><table border=1 bordercolor=\"#cccccc\"  width=85% cellpadding=3 cellspacing=0 bgcolor=\"#eeeeee\"><tr><td class=n2>$1<\/td><\/tr><\/table>/isg;  
                                                      }  
    while ($top5[3] =~ m!(\[quote\])[\S\s](.+?)[\S\s](\[/quote\])!ig){  
    $top5[3] =~ s/\[quote\]\s*(.*?)\s*\[\/quote\]/<span class=s><b>Цитата:<\/b><\/span><table border=1 bordercolor=\"#cccccc\"  width=85% cellpadding=3 cellspacing=0 bgcolor=\"#eeeeee\"><tr><td class=n2>$1<\/td><\/tr><\/table>/isg;  
                                                      }

Почему надо заменять те верхние строчки? Уж очень некрасиво они убирают отступы  и  если пользователь пишет некий красивый пост, то вся табуляция пропадает...
 
Дальше мы берем код из поста lynx:
находим:

Код:
 
if ($top5[0]) {  
$html .= "<a href=\"http://www.darkslay.co.uk/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://www.darkslay.co.uk/cgi-bin/ikonboard/ikonboard.cgi\">Forums</a><br>";  
}  
}  

и заменяем его на:

Код:
 
if ($top5[0]) {  
$html .= qq~  
<tr><td class=base2>  
Форум: <a target=_blank class=main1 href=/cgi-bin/ib/forums.cgi?forum=$top5[0]>$top5[3]</a><br>  
Тема: <a target=_blank class=main1  href=/cgi-bin/ib/topic.cgi?forum=$top5[0]&topic=$top5[1]>$top5[2]</a><br>  
~;  
if($top5[4]){  
$html .= qq~Описание: $top5[4] ~ ;  
}  
$html .= qq~</td></tr>~;  
 
}  
 
}

 
2. Берем хак shishkov:
1.  Вырезаем или коментируем из обоих кусков
Код:
&atop5(@recentposts);

2.  Удаляем или коментируем весь код от  sub atop5{ до } #sub atop5
3.   Удаляем или коментируем весь код от  sub devides { до }#### sub devides
4. Ставим то, что написанно чуть выше как для дефолтного хака.
       
 
 
Добавлено:
Сорри, забыл Если будут вопросы, с удовольствием отвечу на них.

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 23:14 04-02-2005 | Исправлено: trew, 23:24 04-02-2005
BigMurzik



Местный кот
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
М... Вопросик такой у меня стоит модифицированя (не рубордовская) версия форума, не буду пока называть название. Так вот там очень много всего прикручено и я боюсь что без изменений я этот хак не смогу установить. Кто может помочь в этом?

----------
В Калининграде лета нет и похоже уже не будет :(

Всего записей: 1967 | Зарегистр. 23-10-2001 | Отправлено: 13:56 01-03-2005
alexei



ibhacker
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
BigMurzik
По идее этот хак станет на любую версию лишь бы файлы на серваке были.  
 

P.S. Не советовал бы тебе переходить на так называемую модифеную версию потому что она распостраняется незаконно и скоро начнется разбирательство с ворами которые выкладывают и юзают чужую работу на уровне документов и свидетельств.

Всего записей: 647 | Зарегистр. 06-07-2001 | Отправлено: 02:59 02-03-2005 | Исправлено: alexei, 03:00 02-03-2005
Gram



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

Цитата:
стоит модифицированя (не рубордовская) версия форума

Если стоит версия от Объединенного Открытого Проекта, то сможем помочь. Иначе - увы

Всего записей: 388 | Зарегистр. 22-01-2004 | Отправлено: 21:54 02-03-2005
BigMurzik



Местный кот
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
alexei

Цитата:
P.S. Не советовал бы тебе переходить на так называемую модифеную версию потому что она распостраняется незаконно и скоро начнется разбирательство с ворами которые выкладывают и юзают чужую работу на уровне документов и свидетельств.

Хм. а в чем заключается воровство? Копирайт автора сохранен.

Цитата:
По идее этот хак станет на любую версию лишь бы файлы на серваке были.  

за это спасибо.

----------
В Калининграде лета нет и похоже уже не будет :(

Всего записей: 1967 | Зарегистр. 23-10-2001 | Отправлено: 20:25 04-03-2005
Grey2002



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
BigMurzik
какая версия стоит?

----------
Мой Блог

Всего записей: 1325 | Зарегистр. 24-12-2001 | Отправлено: 20:41 04-03-2005
FAF222

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Официально заявляю:
[удалено (Руборд не место для разборок.)]
 
AlexanderIpp

Всего записей: 2 | Зарегистр. 04-03-2005 | Отправлено: 21:38 04-03-2005
Bunker



BigGreen Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
FAF222
слышь, ты на психа похож




без этого, плиз

Всего записей: 1884 | Зарегистр. 02-02-2001 | Отправлено: 22:58 04-03-2005 | Исправлено: Xnom, 11:24 05-03-2005
Xnom



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

Цитата:
Хм. а в чем заключается воровство? Копирайт автора сохранен.  

распространение модифицированной версии без разрешения авторов запрещено. Тем более, такая настойчивость распространения своей версии более похожа на привлечение к своему ресурсу новых пользователей за счет популярности руборда %) Популярности хотят

Всего записей: 778 | Зарегистр. 09-10-2002 | Отправлено: 11:31 05-03-2005
Bunker



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

Цитата:
без этого, плиз

да-да, конечно  
 
FAF222
продолжай плиз  

Всего записей: 1884 | Зарегистр. 02-02-2001 | Отправлено: 15:50 05-03-2005
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru