Avatar on Memberlist - аватары в списке пользователей

Поддержка старых модов или модов, созданных авторами не из нашего сообщества, а также любые вопросы, связанные с модами для phpBB 3.0.x, кроме относящихся к форуму Для авторов (phpBB 3.0.x).
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Jons
phpBB 2.0.4
Сообщения: 418
Стаж: 18 лет
Благодарил (а): 65 раз
Поблагодарили: 2 раза

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение Jons »

Прошу помощи по строке 1738 файла memberlist.php:

Код: Выделить всё

$sql = 'SELECT user_gender FROM '. USERS_TABLE . ' WHERE user_id = '. $user->data['user_id'] ;
                   $result = $db->sql_query($sql);
                   $gender=mysql_fetch_array($result);

	// Dump it out to the template
	return array(
    	'USER_AVATAR'		=> get_user_avatar($data['user_avatar'], $data['user_avatar_type'], $data['user_avatar_width'], $data['user_avatar_height']),

1738   'USER_AVATAR_THUMB'	=> ($data['user_avatar']) ? get_user_avatar($data['user_avatar'], $data['user_avatar_type'], ($data['user_avatar_width'] > $data['user_avatar_height']) ? 25 : (25 / $data['user_avatar_height']) * $data['user_avatar_width'], ($data['user_avatar_height'] > $data['user_avatar_width']) ? 25 : (25 / $data['user_avatar_width']) * $data['user_avatar_height']) : '',
Как мне в последней строке добавить проверку условия, что если ещё и ($gender['user_gender']==1), перед : '', (в конце строки)

я непросто не понимаю что значит в этой строке операторы типа ?, && - помогите пожалуйста
Аватара пользователя
Garret_Dark
phpBB 2.0.16
Сообщения: 1097
Стаж: 17 лет 8 месяцев
Откуда: root/world/russia/
Благодарил (а): 126 раз
Поблагодарили: 206 раз

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение Garret_Dark »

Код: Выделить всё

'USER_AVATAR_THUMB'	=> ($data['user_avatar'] && $gender['user_gender'] == '1') ? get_user_avatar($data['user_avatar'], $data['user_avatar_type'], ($data['user_avatar_width'] > $data['user_avatar_height']) ? 25 : (25 / $data['user_avatar_height']) * $data['user_avatar_width'], ($data['user_avatar_height'] > $data['user_avatar_width']) ? 25 : (25 / $data['user_avatar_width']) * $data['user_avatar_height']) : '',

Код: Выделить всё

$var = (условие1 && условие2) || условие3 ? true : false;
&& - "и"
|| - "или"
после ? указывается значение используемое при истинности условия
после : значение в противном случае
Скобками можно группировать условия для правильного построения и/или

Добавлено спустя 1 минуту 6 секунд:
А причем тут пол? Аватарки выводятся только у одного пола? половая дискриминация? :)
belyi
phpBB 1.4.4
Сообщения: 126
Стаж: 15 лет 5 месяцев
Благодарил (а): 40 раз

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение belyi »

Народ, помогите плиз, после установки мода на данной странице http://stalker.by/forum/memberlist.php?g=11&mode=group появилась ошибка:

Код: Выделить всё

[phpBB Debug] PHP Warning: in file [ROOT]/memberlist.php on line 1758: Division by zero
[phpBB Debug] PHP Warning: in file [ROOT]/memberlist.php on line 1758: Division by zero
Добавлено спустя 20 минут 22 секунды:
вот 1758 строка:

Код: Выделить всё

'USER_AVATAR_THUMB'	=> ($data['user_avatar']) ? get_user_avatar($data['user_avatar'], $data['user_avatar_type'], ($data['user_avatar_width'] > $data['user_avatar_height']) ? 50 : (50 / $data['user_avatar_height']) * $data['user_avatar_width'], ($data['user_avatar_height'] > $data['user_avatar_width']) ? 50 : (50 / $data['user_avatar_width']) * $data['user_avatar_height']) : '',
Аватара пользователя
c61
phpBB 2.0.6
Сообщения: 506
Стаж: 13 лет 9 месяцев
Благодарил (а): 42 раза
Поблагодарили: 251 раз

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение c61 »

belyi, в моде есть деление на $data['user_avatar_width'] и $data['user_avatar_height'] без проверки на нулевое значение. Вовсе не обязательно, чтобы в таблицах БД был прописаны ненулевые размеры аватарки))

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

Код: Выделить всё

'USER_AVATAR_THUMB'	=> ($data['user_avatar'] && $data['user_avatar_width'] && $data['user_avatar_height']) ? get_user_avatar($data['user_avatar'], $data['user_avatar_type'], ($data['user_avatar_width'] > $data['user_avatar_height']) ? 50 : (50 / $data['user_avatar_height']) * $data['user_avatar_width'], ($data['user_avatar_height'] > $data['user_avatar_width']) ? 50 : (50 / $data['user_avatar_width']) * $data['user_avatar_height']) : '',
belyi
phpBB 1.4.4
Сообщения: 126
Стаж: 15 лет 5 месяцев
Благодарил (а): 40 раз

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение belyi »

c61
спасибо большое)

Добавлено спустя 37 минут 17 секунд:
а еще вопрос, может кто-нибудь подскажет как организовать вывод аватаров в модуле:
'Advanced Similar Topics' version 1.2.5
и
'NV recent topics' version 1.0.6 ?
belyi
phpBB 1.4.4
Сообщения: 126
Стаж: 15 лет 5 месяцев
Благодарил (а): 40 раз

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение belyi »

ап
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение Пчелкин »

А поискать? Или будем апать до умопомрачения?
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
belyi
phpBB 1.4.4
Сообщения: 126
Стаж: 15 лет 5 месяцев
Благодарил (а): 40 раз

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение belyi »

Пчелкин не нашел..
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение Пчелкин »

О хоспадя... Для этог надо установить Avatar Index Viewforum и правки от мода втуливать и в другие необходимые навороты, типа твоих
belyi писал(а):'Advanced Similar Topics' version 1.2.5
и
'NV recent topics' version 1.0.6 ?
NV advanced last topic titles 1.3.0 мдя....
Аддон: Avatar index viewforum for NV recent topics
Аддон: Avatar index viewforum for NV recent topics и далее...
Avatar_index_viewforum121a [Авы топистартера и ответившего]
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 13158
Стаж: 15 лет 1 месяц
Благодарил (а): 236 раз
Поблагодарили: 3750 раз

Re: Avatar on Memberlist - аватары в списке пользователей

Сообщение Татьяна5 »

Avatar on Memberlist 1.0.3
Вычисляются нецелые значения ширины и высоты уменьшенных аватар.
fix:

memberlist.php
Найти

Код: Выделить всё

'USER_AVATAR_THUMB'   => ($data['user_avatar']) ? get_user_avatar($data['user_avatar'], $data['user_avatar_type'], ($data['user_avatar_width'] > $data['user_avatar_height']) ? 25 : (25 / $data['user_avatar_height']) * $data['user_avatar_width'], ($data['user_avatar_height'] > $data['user_avatar_width']) ? 25 : (25 / $data['user_avatar_width']) * $data['user_avatar_height']) : '',
Заменить на

Код: Выделить всё

'USER_AVATAR_THUMB'   => ($data['user_avatar']) ? get_user_avatar($data['user_avatar'], $data['user_avatar_type'], ($data['user_avatar_width'] > $data['user_avatar_height']) ? 25 : round((25 / $data['user_avatar_height']) * $data['user_avatar_width']), ($data['user_avatar_height'] > $data['user_avatar_width']) ? 25 : round((25 / $data['user_avatar_width']) * $data['user_avatar_height'])) : '',

Вернуться в «Поддержка модов для phpBB 3.0.x»