4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
Откуда: Москва Всего сообщений: 2994 Рейтинг пользователя: 79 Дата регистрации на форуме: 29 сен. 2001
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 24 октября 2003 18:12
TOP-X Label - хак для вывода меток (картинок) рядом с сообщениями пользователей, отправивших наибольшее количество сообщений. (Данная версия выводит метки для первых 5 пользователей). Для его использования надо иметь установленный хак TOP-XX (файл topuser.cgi). Хак написан XXXX Pro для проекта Russian Ikonboard (http://ikonboard.xxxxpro.ru) 1. Файл topuser.cgi: После <br> @sortarray = sort numerically @sortarray;<br> @sortarray = reverse(@sortarray);<br> добавить следующий код: <br>if ($criteria eq "numberofposts") {<br> open(FILE,">$ikondir"."data/bestuser.dat");<br>foreach (@sortarray[0..4]) {<br> ($trash,$membername,$trash)=split(/\|/,$_);<br> print FILE ("$membername\n");<br> }<br> close(FILE);<br>}<br> 2. Файл topic.cgi: После <br>#------- END HTML<p> $editpostnumber = $startarray; $editpostnumber++; $postcountnumber = 0;<br> <br> $inavatarshow = $showavatars;<br> <br> if ($inmembername eq "Guest") { $inavatarshow = "yes"; }<br> вставить:<br>open(FILE,"<$ikondir"."data/bestuser.dat");<br>flock(FILE,1);<br>@bestusers=<FILE>;<br>close(FILE);<br> Далее нужно найти: <br> &getmember("$membername");<br> $m_membername = $membername;<br> $m_membername =~ s/ /_/g;<br> $userreg = "yes";<br> if (!-e $ikondir . 'members/'.$m_membername.'.cgi') {<br> $userreg = "no"; &set_up_guest();<br> } <br> и после этого добавить: <br>$found = 0;<br>$position = 1;<br>foreach (@bestusers) {<br> if ($membername eq $_) {<br> $found = 1;<br> last; <br> } else { $position++; }<br>}<br>if ($found) {<br>$awardmsg = qq~<img src="$imagesurl/images/award$position.gif">~;<br>} else {<br>undef $awardmsg;<br>}<br> Далее надо вставить $awardmsg куда-нибудь в ту часть скрипта, которая формирует вывод: <br> $output .= qq~<br><tr><br><td bgcolor="$postbackcolor"><br><table width=100% cellpadding=4 cellspacing=0> <br><tr><td valign=top width=20% rowspan=2><br><a href="javascript:AddName('$membername')"><br><font face=$posternamefont color=$posterfontcolor size=$dfontsize2><br><b>$membername $team</b></a><br><br>$useravatar<br><br>$membergraphic<br><font face=$font color=$postfontcolor size=$dfontsize1>$membertitle</font><br></td><br><td valign=top width=80%><br>$editgraphic $partition $profilegraphic $homepagegraphic $emailgraphic $privatemessagegraphic $aolgraphic $icqgraphic $part2 $replygraphic<br><hr size=1 width=100% color=$tablebordercolor><br><font face=$font color=$postfontcolor size=$dfontsize2><br>$post<br></td></tr><br><tr><td class="bottomline" ><br><hr size=1 width=100% color=$tablebordercolor><br><font face=$font color=$postfontcolor size=$dfontsize1>Всего сообщений: <b>$numberofposts</b> | Присоединился: <b>$joineddate</b> | Отправлено: <b>$postdate</b> | <a href="$viewipprog?forum=$inforum&topic=$intopic&postno=$editpostnumber">IP</a><br></td></tr></table><br></td></tr><br>~;<br>
--- Каждый человек всегда может найти, чем он может быть полезен окружающим. Проблема только в одном: слишком многие не хотят это искать.
|