Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 16768 | Rev 16943 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 www 1
<?php
2
declare(strict_types=1);
3
 
4
namespace LeadersLinked\Controller;
5
 
6
use Laminas\Db\Adapter\AdapterInterface;
16768 efrain 7
 
1 www 8
use Laminas\Mvc\Controller\AbstractActionController;
9
use Laminas\Log\LoggerInterface;
10
use Laminas\View\Model\ViewModel;
11
use Laminas\View\Model\JsonModel;
12
use Laminas\Db\Sql\Expression;
13
use LeadersLinked\Model\Job;
14
use LeadersLinked\Mapper\JobSkillMapper;
15
use LeadersLinked\Mapper\SkillMapper;
16
use LeadersLinked\Mapper\UserMapper;
17
use LeadersLinked\Model\User;
18
use LeadersLinked\Mapper\CompanyLocationMapper;
19
use LeadersLinked\Mapper\CompanySizeMapper;
20
use LeadersLinked\Mapper\CompanyFollowerMapper;
21
use LeadersLinked\Model\Company;
22
use LeadersLinked\Mapper\GroupMapper;
23
use LeadersLinked\Mapper\GroupMemberMapper;
24
use LeadersLinked\Mapper\GroupTypeMapper;
25
use LeadersLinked\Model\Group;
26
use LeadersLinked\Model\Notification;
27
use LeadersLinked\Mapper\NotificationMapper;
28
use LeadersLinked\Mapper\UserProfileMapper;
29
use LeadersLinked\Mapper\ProfileVisitMapper;
30
use LeadersLinked\Mapper\ConnectionMapper;
31
use LeadersLinked\Model\CompanyFollower;
32
 
33
 
34
 
35
class DashboardController extends AbstractActionController
36
{
37
    /**
38
     *
16769 efrain 39
     * @var \Laminas\Db\Adapter\AdapterInterface
1 www 40
     */
41
    private $adapter;
42
 
43
    /**
44
     *
16769 efrain 45
     * @var \LeadersLinked\Cache\CacheInterface
1 www 46
     */
16769 efrain 47
    private $cache;
48
 
49
 
50
    /**
51
     *
52
     * @var \Laminas\Log\LoggerInterface
53
     */
1 www 54
    private $logger;
55
 
56
    /**
57
     *
16766 efrain 58
     * @var array
59
     */
60
    private $config;
61
 
16769 efrain 62
 
16766 efrain 63
    /**
64
     *
16769 efrain 65
     * @var \Laminas\Mvc\I18n\Translator
66
     */
67
    private $translator;
68
 
69
 
70
    /**
71
     *
72
     * @param \Laminas\Db\Adapter\AdapterInterface $adapter
73
     * @param \LeadersLinked\Cache\CacheInterface $cache
74
     * @param \Laminas\Log\LoggerInterface LoggerInterface $logger
1 www 75
     * @param array $config
16769 efrain 76
     * @param \Laminas\Mvc\I18n\Translator $translator
1 www 77
     */
16769 efrain 78
    public function __construct($adapter, $cache, $logger, $config, $translator)
1 www 79
    {
16769 efrain 80
        $this->adapter      = $adapter;
81
        $this->cache        = $cache;
82
        $this->logger       = $logger;
83
        $this->config       = $config;
84
        $this->translator   = $translator;
1 www 85
    }
86
 
87
 
88
    public function indexAction()
89
    {
90
 
91
 
92
        $currentUserPlugin = $this->plugin('currentUserPlugin');
93
        $currentUser = $currentUserPlugin->getUser();
94
 
95
 
96
        $request = $this->getRequest();
97
        if($request->isGet()) {
98
 
99
 
100
 
101
 
102
            $this->layout()->setTemplate('layout/layout-backend.phtml');
103
            $viewModel = new ViewModel();
104
            $viewModel->setTemplate('leaders-linked/dashboard/index.phtml');
105
            return $viewModel ;
106
        }
107
 
108
        return new JsonModel([
109
           'success' => false,
110
           'data' => 'ERROR_METHOD_NOT_ALLOWED'
111
        ]);
112
    }
113
 
114
    public function notificationActions()
115
    {
116
 
117
    }
14692 efrain 118
 
119
    public function csrfAction()
120
    {
121
        $request = $this->getRequest();
122
        if($request->isGet()) {
123
 
124
            $token = md5(uniqid('CSFR-' . mt_rand(), true));
125
            $_SESSION['token'] = $token;
126
 
127
 
128
            return new JsonModel([
129
                'success' => true,
130
                'data' => $token
131
            ]);
132
 
133
 
134
        } else {
135
            return new JsonModel([
136
                'success' => false,
137
                'data' => 'ERROR_METHOD_NOT_ALLOWED'
138
            ]);
139
        }
140
 
141
 
142
    }
1 www 143
 
144
}