Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 16769 | Rev 16947 | 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
 
16943 efrain 102
 
103
 
104
 
105
 
1 www 106
            $this->layout()->setTemplate('layout/layout-backend.phtml');
107
            $viewModel = new ViewModel();
108
            $viewModel->setTemplate('leaders-linked/dashboard/index.phtml');
109
            return $viewModel ;
110
        }
111
 
112
        return new JsonModel([
113
           'success' => false,
114
           'data' => 'ERROR_METHOD_NOT_ALLOWED'
115
        ]);
116
    }
117
 
118
    public function notificationActions()
119
    {
120
 
121
    }
14692 efrain 122
 
123
    public function csrfAction()
124
    {
125
        $request = $this->getRequest();
126
        if($request->isGet()) {
127
 
128
            $token = md5(uniqid('CSFR-' . mt_rand(), true));
129
            $_SESSION['token'] = $token;
130
 
131
 
132
            return new JsonModel([
133
                'success' => true,
134
                'data' => $token
135
            ]);
136
 
137
 
138
        } else {
139
            return new JsonModel([
140
                'success' => false,
141
                'data' => 'ERROR_METHOD_NOT_ALLOWED'
142
            ]);
143
        }
144
 
145
 
146
    }
1 www 147
 
148
}