Вход Регистрация
Файл: plugins/social_sharing/classes/event_handler.php
Строк: 96
<?php

class SOCIALSHARING_CLASS_EventHandler
{
  
    private static 
$classInstance;

    public static function 
getInstance()
    {
        if ( 
self::$classInstance === null )
        {
            
self::$classInstance = new self();
        }

        return 
self::$classInstance;
    }

    private function 
__construct() { }

    public function 
getSharingButtonsBASE_CLASS_EventCollector $event )
    {
        
$params $event->getParams();

        
$entityId = !empty($params['entityId']) ? $params['entityId'] : null;
        
$entityType = !empty($params['entityType']) ? $params['entityType'] : null;

        if ( !empty(
$entityId) && !empty($entityType) )
        {
            
$sharingInfoEvent = new PEEP_Event('socialsharing.get_entity_info'$params$params);
            
PEEP::getEventManager()->trigger($sharingInfoEvent);

            
$data $sharingInfoEvent->getData();

            
$params array_merge($params$data);
        }

        
$display= isset($params['display']) ? $params['display'] : true;

        if ( !
$display )
        {
            return;
        }

        
$url = !empty($params['url']) ? $params['url'] : null;
        
$description= !empty($params['description']) ? $params['description'] : PEEP::getDocument()->getDescription();
        
$title= !empty($params['title']) ? $params['title'] : PEEP::getDocument()->getTitle();
        
$image= !empty($params['image']) ? $params['image'] : null;
        
$class= !empty($params['class']) ? $params['class'] : null;

        
$displayBlock false;//isset($params['displayBlock']) ? $params['displayBlock'] : true;

        
$cmp PEEP::getClassInstance('SOCIALSHARING_CMP_ShareButtons');
        
$cmp->setCustomUrl($url);
        
$cmp->setDescription($description);
        
$cmp->setTitle($title);
        
$cmp->setImageUrl($image);

        
$cmp->setDisplayBlock($displayBlock);

        if ( !empty(
$class) )
        {
            
$cmp->setBoxClass($class);
        }

        
$event->add($cmp->render());
    }

    public function 
addJsDeclarationsPEEP_Event $e )
    {
        
//Langs
        
PEEP::getLanguage()->addKeyForJs('socialsharing''share_title');
    }

    public function 
genericInit()
    {
        
PEEP::getEventManager()->bind('socialsharing.get_sharing_buttons', array($this'getSharingButtons'));
        
PEEP::getEventManager()->bind(PEEP_EventManager::ON_FINALIZE, array($this'addJsDeclarations'));
    }
}
Онлайн: 2
Реклама