Добавить аватарку

Вопросы и ответы по изменению функционала, смене дизайна, переносу сайта и т.п.

Модераторы: Xpycm, Koduc

Правила форума
ВНИМАНИЕ! Форум не является средством гарантированной поддержки клиентов и пользователей. Поэтому на быстрый ответ тут рассчитывать не нужно, как и на ответ вообще. Сотрудники отвечают по мере своих возможностей.

На форуме действует ограничение в 3 сообщения / сутки.
Если Вы хотите сказать "спасибо", то воспользуйтесь функцией "Повысить репутацию" - зелёная иконка "плюс" под ником ответившего.

Добавить аватарку

Сообщение Aleksander » 13 апр 2016, 08:56

Добрый день.
Подскажите, как правильно вывести аватарку? Первый шаг делал так: в Controller.php:
Код: Выделить всё
if(!Yii::app()->user->isGuest){
            $user = HUser::getModel();
            $this->aData['userCpanelItems'][] = array(
                'label' => '<span class="user-avatar">'.CHtml::image($user->getAvaSrcThumb()). '</span>' .$user->username ,
                'encodeLabel' => false,
                'url' => array('/usercpanel/main/index'),
                'visible' => Yii::app()->user->checkAccess('backend_access') === false,
                'items' => $subItems,
                'itemOptions' => array('class' => 'depth_zero'),
                'submenuOptions'=>array(
                    'class'=>'sub_menu_dropdown'
                ),
        );
        
        
} 

но в таком случае, дефолтная аватарка не выводится.
Такой способ не работает
Код: Выделить всё
$this->ava ? $this->getAvaSrcThumb() : Yii::app()->theme->baseUrl . '/images/ava-default.jpg'; 


И еще вопрос такой, почему пользователь не может удалить неоплаченный платеж? В таблице "Мои платежи" висит строка "Ожидается оплата", а может пользователь передумал платить и чёго теперь ему всю жизнь с этим неоплаченным долгом ходить? :-[ Или может пользователь захочет позже его оплатить и нет возможности нажать на кнопку сделать оплату повторно... :'(
Пока получается так, что только админ может удалить этот платеж... Это нормально? Я видел такой же момент на когда -то irr.ru и было так не удобно с этими зависшими платежами в таблице. Может стоит хотя бы сделать удаление неоплаченных платежей через сутки или как то так...

Спасибо.
Aleksander
Гражданин
Гражданин
 
Сообщения: 90
Зарегистрирован: 19 ноя 2015, 10:22
Очки репутации: 13

Re: Добавить аватарку

Сообщение Xpycm » 13 апр 2016, 09:51

1) $this в контроллере - это экземпляр контроллера, и уж тем более не модели User.

В чём разница:
http://www.yiiframework.com/doc/guide/1 ... controller
http://www.yiiframework.com/doc/guide/1 ... sics.model

А ошибку вы не словили потому что уровень ошибок у вас выставлен не для "разработки", а для "продакшена": http://php.net/manual/ru/function.error-reporting.php

Поэтому вызывайте
Код: Выделить всё
$user = HUser::getModel(); $user->ava ? $this->getAvaSrcThumb() : Yii::app()->theme->baseUrl . '/images/ava-default.jpg'; 


А ещё в модели User есть метод public function renderAva

2) Платежи, это такая вещь, информацию о которых лучше хранить, чем не хранить.
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50

Re: Добавить аватарку

Сообщение Aleksander » 13 апр 2016, 12:07

Спасибо за объяснение и за ссылки, почитал. Но тогда не
Код: Выделить всё
 $this->getAvaSrcThumb(),  

а тоже user
Код: Выделить всё
$user->getAvaSrcThumb() 
Aleksander
Гражданин
Гражданин
 
Сообщения: 90
Зарегистрирован: 19 ноя 2015, 10:22
Очки репутации: 13

Re: Добавить аватарку

Сообщение Xpycm » 13 апр 2016, 13:16

Да вы правы, это я забыл поправить когда писал ответ
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50


Вернуться в Вопросы и помощь по изменениям

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 51

cron