Вход Регистрация
Файл: plugins/mailbox/components/console_message_item.php
Строк: 176
<?php

class MAILBOX_CMP_ConsoleMessageItem extends PEEP_Component
{
    
/**
     *
     * @var BASE_CMP_ConsoleListItem
     */
    
protected $consoleItem;

    protected 
$convId$opponentId$avatarUrl ''$profileUrl ''$text ''$displayName ''$url ''$mode ''$dateLabel ''$unreadMessageCount 0;

    public function 
__construct$conversationData )
    {
        
parent::__construct();

        
$this->consoleItem = new BASE_CMP_ConsoleListItem();

        
$this->convId $conversationData['conversationId'];

        
$userId PEEP::getUser()->getId();
        
$conversationService MAILBOX_BOL_ConversationService::getInstance();

        
$this->opponentId $conversationData['opponentId'];
        
$avatarUrl BOL_AvatarService::getInstance()->getAvatarUrl($this->opponentId);
        
$this->avatarUrl $avatarUrl $avatarUrl BOL_AvatarService::getInstance()->getDefaultAvatarUrl();
        
$this->profileUrl BOL_UserService::getInstance()->getUserUrl($this->opponentId);
        
$this->displayName BOL_UserService::getInstance()->getDisplayName($this->opponentId);
        
$this->mode $conversationData['mode'];
        
$this->text $conversationData['previewText'];
        
$this->dateLabel $conversationData['dateLabel'];
        
$this->unreadMessageCount $conversationService->countUnreadMessagesForConversation($this->convId$userId);

        if (
$this->mode == 'mail')
        {
            
$this->url $conversationService->getConversationUrl($this->convId);
            
$this->addClass('peep_mailbox_request_item peep_cursor_default');
        }

        if (
$this->mode == 'chat')
        {
            
$this->url 'javascript://';
            
$this->addClass('peep_chat_request_item peep_cursor_default');


            
$js "$('.consoleChatItem#mailboxConsoleMessageItem{$this->convId}').bind('click', function(){
        var convId = $(this).data('convid');
        var opponentId = $(this).data('opponentid');
        PEEP.trigger('mailbox.open_dialog', {convId: convId, opponentId: opponentId, mode: 'chat', isSelected: true});
        PEEP.Console.getItem('mailbox').hideContent();
    });"
;

            
PEEP::getDocument()->addOnloadScript($js);
        }

        if ( 
$conversationData['conversationRead'] == )
        {
            
$this->addClass('peep_console_new_message');
        }
    }

    public function 
setMode$mode )
    {
        
$this->mode $mode;
    }

    public function 
setKey$key )
    {
        
$this->consoleItem->setKey($key);
    }

    public function 
getKey()
    {
        return 
$this->consoleItem->getKey();
    }

    public function 
setIsHidden$hidden true )
    {
        
$this->consoleItem->setIsHidden($hidden);
    }

    public function 
getIsHidden()
    {
        return 
$this->consoleItem->getIsHidden();
    }

    public function 
addClass$class )
    {
        
$this->consoleItem->addClass($class);
    }

    public function 
setAvatarUrl$avatarUrl )
    {
        
$this->avatarUrl $avatarUrl;
    }

    public function 
setProfileUrl$profileUrl )
    {
        
$this->profileUrl $profileUrl;
    }

    public function 
setText$text )
    {
        
$this->text $text;
    }

    public function 
setDisplayName$displayName )
    {
        
$this->displayName $displayName;
    }

    public function 
setUrl$url )
    {
        
$this->url $url;
    }

    public function 
onBeforeRender()
    {
        
parent::onBeforeRender();

        
$this->assign('convId'$this->convId);
        
$this->assign('opponentId'$this->opponentId);
        
$this->assign('mode'$this->mode);
        
$this->assign('avatarUrl'$this->avatarUrl);
        
$this->assign('profileUrl'$this->profileUrl);
        
$this->assign('displayName'$this->displayName);
        
$this->assign('text'$this->text);
        
$this->assign('url'$this->url);
        
$this->assign('dateLabel'$this->dateLabel);
        
$this->assign('unreadMessageCount'$this->unreadMessageCount);
    }

    public function 
render()
    {
        
$this->consoleItem->setContent(parent::render());

        return 
$this->consoleItem->render();
    }
}
Онлайн: 0
Реклама