Proyectos de Subversion LeadersLinked - Services

Rev

Rev 119 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |

<?php
/**
 * 
 * Controlador: Microlearning
 * 
 */
declare(strict_types=1);

namespace LeadersLinked\Controller;

use Laminas\Db\Adapter\AdapterInterface;

use Laminas\Mvc\Controller\AbstractActionController;
use Laminas\Log\LoggerInterface;
use Laminas\View\Model\ViewModel;
use Laminas\View\Model\JsonModel;
use LeadersLinked\Mapper\MicrolearningUserLogMapper;
use LeadersLinked\Model\MicrolearningUserLog;
use LeadersLinked\Mapper\MicrolearningCapsuleUserMapper;
use LeadersLinked\Mapper\MicrolearningUserProgressMapper;
use LeadersLinked\Mapper\MicrolearningSlideMapper;

class ProfileMicrolearningController extends AbstractActionController
{
    /**
     *
     * @var \Laminas\Db\Adapter\AdapterInterface
     */
    private $adapter;
    
    /**
     *
     * @var \LeadersLinked\Cache\CacheInterface
     */
    private $cache;
    
    
    /**
     *
     * @var \Laminas\Log\LoggerInterface
     */
    private $logger;
    
    /**
     *
     * @var array
     */
    private $config;
    
    
    /**
     *
     * @var \Laminas\Mvc\I18n\Translator
     */
    private $translator;
    
    
    /**
     *
     * @param \Laminas\Db\Adapter\AdapterInterface $adapter
     * @param \LeadersLinked\Cache\CacheInterface $cache
     * @param \Laminas\Log\LoggerInterface LoggerInterface $logger
     * @param array $config
     * @param \Laminas\Mvc\I18n\Translator $translator
     */
    public function __construct($adapter, $cache, $logger, $config, $translator)
    {
        $this->adapter      = $adapter;
        $this->cache        = $cache;
        $this->logger       = $logger;
        $this->config       = $config;
        $this->translator   = $translator;
    }
    
    /**
     * 
     * Generación del listado de perfiles
     * {@inheritDoc}
     * @see \Laminas\Mvc\Controller\AbstractActionController::indexAction()
     */
    public function indexAction()
    {
        //$currentUserPlugin = $this->plugin('currentUserPlugin');
        //$currentUser = $currentUserPlugin->getUser();
        
        $request = $this->getRequest();
        if($request->isGet()) {
            

            return new JsonModel([
                'activities' => [
                    'ACTIVITY_SIGNIN' =>  MicrolearningUserLog::ACTIVITY_SIGNIN,
                    'ACTIVITY_SIGNOUT' => MicrolearningUserLog::ACTIVITY_SIGNOUT,
                    'ACTIVITY_START_TOPIC' => MicrolearningUserLog::ACTIVITY_START_TOPIC,
                    'ACTIVITY_START_CAPSULE' => MicrolearningUserLog::ACTIVITY_START_CAPSULE,
                    'ACTIVITY_VIEW_SLIDE' => MicrolearningUserLog::ACTIVITY_VIEW_SLIDE,
                    'ACTIVITY_TAKE_A_TEST' => MicrolearningUserLog::ACTIVITY_TAKE_A_TEST,
                    'ACTIVITY_RETAKE_A_TEST' => MicrolearningUserLog::ACTIVITY_RETAKE_A_TEST,
                    'ACTIVITY_APPROVED_TEST' => MicrolearningUserLog::ACTIVITY_APPROVED_TEST,
                    'ACTIVITY_COMPLETED_CAPSULE' => MicrolearningUserLog::ACTIVITY_COMPLETED_CAPSULE,
                    'ACTIVITY_COMPLETED_TOPIC' => MicrolearningUserLog::ACTIVITY_COMPLETED_TOPIC
                ]
            ]);

            
            
        } else {
            return new JsonModel([
                'success' => false,
                'data' => 'ERROR_METHOD_NOT_ALLOWED'
            ]);
        }
    }
    
    
   
    
    
    
}