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

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

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

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

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

Ausw



Moderator
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Эксклюзивные аватары пользователям

 
 
Сабж уже не один раз обсуждался, но оригинального решения не было.  
2 предложенных ранее варианта:
 1) Руками заюзать файл имяuserа.cgi - но при обновлении профайла затирается, и юзер остается без аватара.  
2) Писать в topic.cgi - неактуально, ибо каждый раз  туда лезть, если юзеров будет несколько, кроме того, в мемберлисте (и где либо еще) - будет байда с аватарами ..... Я  тут нашел небольшой хак, сие и опубликую, ставится за 2 минуты:
 
profile.cgi
 

Код:
 
           $cleanavatar =  $_;
           $cleanavatar =~ s/.gif//i;
 
           # Skip, if it's an admin/moderator only avatar
 
           if (($cleanavatar =~ /admin_/) && ($membercode eq "me")) { next; }
 

меняем на  

Код:
 
           $cleanavatar =  $_;
           $cleanavatar =~ s/.gif//i;
 
           $inmemberspace = $inmembername;
           $inmemberspace =~ s/ /\_/isg;
 
           # Skip, if it's an admin / moderator / personal only avatar
 
           if ( (($cleanavatar =~ /admin_/) && ($membercode eq "me")) || (($cleanavatar =~ /pers_/) && (pers_.$inmemberspace ne "$cleanavatar")) ) { next; }

 
register.cgi

Код:
 
if ($cleanavatar =~ /admin_/) { next; }

на  

Код:
 
 if ( ($cleanavatar =~ /admin_/) || (($cleanavatar =~ /pers_/) && (pers_.$inmembername ne "$cleanavatar")) ) { next; }
 

 
Теперь берем аватарчик юзера, переименовываем его как pesr_имяusera.gif
и бросаем в общую папку..... этот аватар будет только у этого юзера, у других он отображаться не будет, т.е. никто не выберет его. Юзеру нужно будет самому зайти и выбрать свой аватар.  
 
 
Также читайте про хак PersonalAvatar.
 
 
 
##################
Часть II (должна быть выполнена часть I).
 
Если вы хотите запретить участнику, имеющему персональный аватар, его менять.  
 
profile.cgi  
 
sub modify  
 
Находим код:
 

Код:
 
        foreach (@images) {
 
            $cleanavatar =  $_;
            $cleanavatar =~ s/.gif//i;
 
            # Skip, if it's an admin/moderator only avatar
 
            if (($cleanavatar =~ /admin_/) && ($membercode eq "me")) { next; }
             
            if ($cleanavatar eq "$useravatar") {            
            $selecthtml .= qq~<option value="$cleanavatar" selected>$cleanavatar</option>\n~;
                $currentface = "$cleanavatar";
                }
                elsif (($cleanavatar eq "noavatar") && (!$useravatar)) {
                    $selecthtml .= qq~<option value="noavatar" selected>noavatar</option>\n~;
                    $currentface = "$cleanavatar";
                    }  
                else {
                        $selecthtml .= qq~<option value="$cleanavatar">$cleanavatar</option>\n~;
                        }
                    } # end foreach
 
               
 
            $avatarhtml = qq~
            <script language="javascript">
            function showimage()
            {
            //alert("$imagesurl/avatars/"+document.creator.useravatar.options[document.creator.useravatar.selectedIndex].value+".gif");
                document.images.useravatars.src="$imagesurl/avatars/"+document.creator.useravatar.options[document.creator.useravatar.selectedIndex].value+".gif";
                }
            </script>
            <tr>
                <td bgcolor=$miscbackone valign=top><font face="$font" color=$fontcolormisc size=$dfontsize1><b>$ibtxt{'1833'}</b><br>$ibtxt{'1834'}</td>
                <td bgcolor=$miscbackone>
                    <select name="useravatar" size=6 onChange="showimage()">
                    $selecthtml
                    </select>
                    <img src="$imagesurl/avatars/$currentface.gif" name="useravatars" width="64" height="64" border=0 hspace=15>
                </td>
            </tr>
            ~;
            } # end avatar if
 

 
И меняем на этот:  
 

Код:
 
 
        foreach (@images) {  
 
            $cleanavatar =  $_;  
            $cleanavatar =~ s/.gif//i;  
 
   if ($cleanavatar eq "$useravatar") {              
    $selecthtml .= qq~<option value="$cleanavatar" selected>$cleanavatar</option>\n~;  
    $currentface = "$cleanavatar";  
                }  
   elsif (($cleanavatar eq "noavatar") && (!$useravatar)) {  
   $selecthtml .= qq~<option value="noavatar" selected>noavatar</option>\n~;  
   $currentface = "$cleanavatar";  
                }    
   else {  
$selecthtml .= qq~<option value="$cleanavatar">$cleanavatar</option>\n~;  
                        }  
                    } # end foreach  
 
 
if ($useravatar =~ /pers_/) {  ##start если перс. аватар  
 
 $avatarhtml = qq~  
 <tr>  
 <td bgcolor=$miscbackone valign=top><font face="$font" color=$fontcolormisc size=$dfontsize1><b>Аватар:</b></font></td>  
 <td bgcolor=$miscbackone>  
<font face="$font" color=$fontcolormisc size=$dfontsize1>У Вас персональный аватар</font><p>  
 <img src="$imagesurl/avatars/$currentface.gif" name="useravatars" width="32" height="32" border=0 hspace=15>  
   
  </td>  
  </tr>  
            ~;  
}   ##end если перс. аватар              
 
 
else {  
 
 $avatarhtml = qq~  
            <script type="text/javascript">  
            function showimage()  
            {  
 //alert("$imagesurl/avatars/"+document.creator.useravatar.options[document.creator.useravatar.selectedIndex].value+".gif");  
                document.images.useravatars.src="$imagesurl/avatars/"+document.creator.useravatar.options[document.creator.useravatar.selectedIndex].value+".gif";  
                }  
            </script>  
 
 <tr>  
 <td bgcolor=$miscbackone valign=top><font face="$font" color=$fontcolormisc size=$dfontsize1><b>Аватар:</b><p>  
 Можете выбрать картинку (аватар), которая будет показана под Вашим именем на форуме. </font></td>  
 <td bgcolor=$miscbackone>  
<select name="useravatar" size=6 onChange="showimage()">  
$selecthtml  
</select>  
<img src="$imagesurl/avatars/$currentface.gif" name="useravatars" width="32" height="32" border=0 hspace=15>  
 
  </td>  
  </tr>  
            ~;  
}              
            } # end avatar if  
 
           

Всего записей: 7371 | Зарегистр. 12-07-2001 | Отправлено: 17:00 08-12-2001 | Исправлено: lynx, 15:58 25-06-2003
Fredboy



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
А где можно глянуть, как это работает?

Всего записей: 576 | Зарегистр. 29-06-2001 | Отправлено: 17:04 08-12-2001
Ausw



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

Всего записей: 7371 | Зарегистр. 12-07-2001 | Отправлено: 17:19 08-12-2001
sapr2000



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо за легкое и изящное решение проблемы. Попробовал - работает без запинки. Можно вопрос ламера - каков размер аватара (х*у) и можно ли использовать анимированные гифы?

Всего записей: 86 | Зарегистр. 13-12-2001 | Отправлено: 07:53 14-12-2001
pechalny



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

Цитата:
каков размер аватара

Который определен у тебя изначально - 32x32

Цитата:
можно ли использовать анимированные гифы?

Вроде да.

----------
cynicism is the only thing that keeps me sane

Всего записей: 1852 | Зарегистр. 29-07-2001 | Отправлено: 10:36 14-12-2001
Alexander Ipp



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

Цитата:
Который определен у тебя изначально - 32x32  
Можно в topic.cgi поменять...

Всего записей: 1943 | Зарегистр. 20-08-2001 | Отправлено: 10:51 14-12-2001
Ausw



Moderator
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
можно, все можно, и гифы анимированные и аватары с 800х600 даже можно прилепить, представь, что ты залепил себе гифку в кило 20, другой залепил в кило 30, и вот напостило вас там народу, тока поймите, люди не за тормозами ходить будут на вашу конфу.

Всего записей: 7371 | Зарегистр. 12-07-2001 | Отправлено: 13:37 14-12-2001
sapr2000



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я захожу в форум как администратор. Файл аватара для меня создан. Однако, в профайле я его не вижу и выбрать не могу.  C другой стороны для остальных пользователей("особенно приближенных к телу комиссара") аватары типа pers_dd.gif  и т.п. индивидуально выбираются в опции "Лицо" управления профилем.... Это что, так хак написан или я где то ошибся?

Всего записей: 86 | Зарегистр. 13-12-2001 | Отправлено: 14:31 14-12-2001
Ausw



Moderator
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
sapr2000 ты где-то ошибся. ты сосдаешь файл например  
pers_sapr2000.gif имеет значение верхний и нижний регистр. в окне выбора аватара - наряду со всеми - отыскивай свой и ставь себе его.
И никому другим он отображаться не будет. тоже самое если pers_кореш_saprа - у тебя отображаться не будет.  
 
попробуй еще раз, ты явно гдето намутил, он без ошибок и не должен глючить

Всего записей: 7371 | Зарегистр. 12-07-2001 | Отправлено: 04:28 16-12-2001
j0k3r



Advanced Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ausw
Спасибо, хороший хак!
Осталось только аватар найти... лол


----------
Музыка, Фильмы, Программы :: FunkySouls
Музыкальный форум

Всего записей: 2499 | Зарегистр. 08-09-2001 | Отправлено: 09:14 16-12-2001
sapr2000



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемые, коллеги.
 
Аватары в данной версии форума имеют размер 32*32, но в третьей версии (на сайте разработчика) я увидел аватары 64*64. Можно и как изменить размер аватаров в версии 2.9.1 Кромет того, у админа или модератора орденские планки рисуются бордовыми пуговками...Можно и где изменить и этe фичу?
 
 

Всего записей: 86 | Зарегистр. 13-12-2001 | Отправлено: 13:37 18-12-2001
Ausw



Moderator
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
sapr2000 изменить размеры -  тут уже много раз этот вопрос задавали, и не однокартно, кароче в topic.cgi ищи где этот аватар прикрепляется, там примерно вот такой вид будет

Цитата:
.. width=32 height=32...
просто удали эти два значения, и хоть завешайся аватарами с 800х600
 
что касется  

Цитата:
Кромет того, у админа или модератора орденские планки рисуются бордовыми пуговками...Можно и где изменить и этe фичу?

на что ее изменить?  
открывай фотошоп и рисуй хоть пуговки хоть квалратики, хоть стаканы с вилками, а потом сохраняй в соответственные файлы - pips1.gif и т.д.

Всего записей: 7371 | Зарегистр. 12-07-2001 | Отправлено: 13:51 18-12-2001
pechalny



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

Цитата:
на что ее изменить?  
открывай фотошоп и рисуй хоть пуговки хоть квалратики, хоть стаканы с вилками, а потом сохраняй в соответственные файлы - pips1.gif и т.д.  

не, ты его неправильно понял.Он хочет сделать спец пипсы для админов и модеров.
sapr2000
Такой хак есть.Поищи сам.

Цитата:
Уважаемые, коллеги.  



----------
cynicism is the only thing that keeps me sane

Всего записей: 1852 | Зарегистр. 29-07-2001 | Отправлено: 14:06 18-12-2001
sapr2000



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Большое спасибо, все получилось.
Особенно радует быстрая реакция на вопрос. Молодцы!!!

Всего записей: 86 | Зарегистр. 13-12-2001 | Отправлено: 14:09 18-12-2001
BigMac



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Оригинальный хак... довольно удобно...

Всего записей: 444 | Зарегистр. 31-05-2001 | Отправлено: 17:14 18-12-2001
HJ



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прикольно, но когда их будет 1000 и более, где на всех набрать аватаров?
Есть конечно вариант присылать фотки, но все ли будут это делать?
   

Всего записей: 207 | Зарегистр. 13-09-2001 | Отправлено: 18:49 18-12-2001
Ausw



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

Цитата:
Есть конечно вариант присылать фотки, но все ли будут это делать?  

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

Всего записей: 7371 | Зарегистр. 12-07-2001 | Отправлено: 19:20 18-12-2001
BigMac



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

Цитата:
а кто будет сопротивляться и уворачиваться - банить насмерть!

Хороший подход

Всего записей: 444 | Зарегистр. 31-05-2001 | Отправлено: 19:30 18-12-2001
DimoN



Tech administrator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ausw
А если человек захочет другой аватар или сменить его захочет. Все равно ручками придется лазить и ставить.

----------
Мы Баним с улыбкой :) ™

Всего записей: 7528 | Зарегистр. 19-04-2001 | Отправлено: 04:33 19-12-2001
alexei



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

Цитата:
Ausw  
А если человек захочет другой аватар или сменить его захочет. Все равно ручками придется лазить и ставить.

Ausw
Ага нужно еще хак модернизировать.

Всего записей: 647 | Зарегистр. 06-07-2001 | Отправлено: 17:03 19-12-2001
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru