Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 5050 | Rev 6521 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 5050 Rev 6388
Línea 1... Línea 1...
1
<?php
1
<?php
2
/**
-
 
3
 * 
-
 
4
 * Controlador: Mis Perfiles 
-
 
5
 * 
-
 
6
 */
-
 
7
declare(strict_types=1);
2
declare(strict_types=1);
Línea 8... Línea 3...
8
 
3
 
Línea 9... Línea 4...
9
namespace LeadersLinked\Controller;
4
namespace LeadersLinked\Controller;
10
 
5
 
11
use Laminas\Db\Adapter\AdapterInterface;
6
use Laminas\Db\Adapter\AdapterInterface;
12
use Laminas\Cache\Storage\Adapter\AbstractAdapter;
7
use Laminas\Cache\Storage\Adapter\AbstractAdapter;
13
use Laminas\Mvc\Controller\AbstractActionController;
8
use Laminas\Mvc\Controller\AbstractActionController;
14
use Laminas\Log\LoggerInterface;
9
use Laminas\Log\LoggerInterface;
15
use Laminas\View\Model\ViewModel;
10
use Laminas\View\Model\ViewModel;
16
use Laminas\View\Model\JsonModel;
-
 
17
use LeadersLinked\Mapper\CompanyLocationMapper;
11
use Laminas\View\Model\JsonModel;
18
use LeadersLinked\Mapper\CompanyFollowerMapper;
-
 
19
use LeadersLinked\Mapper\CompanyUserMapper;
-
 
20
use LeadersLinked\Mapper\CompanyMapper;
-
 
21
use LeadersLinked\Mapper\IndustryMapper;
-
 
22
use LeadersLinked\Mapper\CompanySizeMapper;
-
 
23
use LeadersLinked\Model\CompanyFollower;
-
 
24
use LeadersLinked\Mapper\UserBlockedMapper;
12
use LeadersLinked\Mapper\MyCoachCategoryMapper;
25
use LeadersLinked\Mapper\UserMapper;
-
 
26
use LeadersLinked\Model\Company;
-
 
27
use LeadersLinked\Model\CompanyUser;
13
use LeadersLinked\Mapper\MyCoachCategoryUserMapper;
28
use LeadersLinked\Mapper\QueryMapper;
-
 
Línea 29... Línea 14...
29
use LeadersLinked\Mapper\NotificationMapper;
14
use LeadersLinked\Model\MyCoachCategory;
30
use LeadersLinked\Model\Network;
15
use LeadersLinked\Form\MyCoach\MyCoachQuestionForm;
31
 
16
 
32
class MyCoachController extends AbstractActionController
17
class MyCoachController extends AbstractActionController
33
{
18
{
34
    /**
19
    /**
35
     *
20
     *
36
     * @var AdapterInterface
21
     * @var AdapterInterface
37
     */
22
     */
38
    private $adapter;
23
    private $adapter;
39
    
24
 
40
    
25
 
41
    /**
26
    /**
42
     *
27
     *
43
     * @var AbstractAdapter
28
     * @var AbstractAdapter
44
     */
29
     */
45
    private $cache;
30
    private $cache;
46
    
31
 
47
    /**
32
    /**
48
     *
33
     *
Línea 49... Línea 34...
49
     * @var  LoggerInterface
34
     * @var  LoggerInterface
50
     */
35
     */
51
    private $logger;
36
    private $logger;
52
 
37
 
53
    
38
 
54
    /**
39
    /**
55
     *
40
     *
56
     * @var array
41
     * @var array
57
     */
42
     */
58
    private $config;
43
    private $config;
59
    
44
 
60
    /**
45
    /**
61
     *
46
     *
62
     * @param AdapterInterface $adapter
47
     * @param AdapterInterface $adapter
63
     * @param AbstractAdapter $cache
48
     * @param AbstractAdapter $cache
64
     * @param LoggerInterface $logger
49
     * @param LoggerInterface $logger
65
     * @param array $config
50
     * @param array $config
66
     */
51
     */
67
    public function __construct($adapter, $cache , $logger,  $config)
52
    public function __construct($adapter, $cache, $logger,  $config)
68
    {
53
    {
69
        $this->adapter      = $adapter;
-
 
70
        $this->cache        = $cache;
54
        $this->adapter      = $adapter;
71
        $this->logger       = $logger;
55
        $this->cache        = $cache;
72
        $this->config       = $config;
56
        $this->logger       = $logger;
73
 
57
        $this->config       = $config;
74
    }
58
    }
75
    
59
 
76
    /**
60
    /**
77
     * 
61
     * 
78
     * Generación del listado de perfiles
62
     * Generación del listado de perfiles
79
     * {@inheritDoc}
63
     * {@inheritDoc}
80
     * @see \Laminas\Mvc\Controller\AbstractActionController::indexAction()
64
     * @see \Laminas\Mvc\Controller\AbstractActionController::indexAction()
81
     */
65
     */
-
 
66
    public function indexAction()
-
 
67
    {
-
 
68
        $currentUserPlugin = $this->plugin('currentUserPlugin');
82
    public function indexAction()
69
        $currentUser = $currentUserPlugin->getUser();
83
    {
70
 
84
        //$currentUserPlugin = $this->plugin('currentUserPlugin');
71
        $currentNetworkPlugin = $this->plugin('currentNetworkPlugin');
-
 
72
        $currentNetwork = $currentNetworkPlugin->getNetwork();
-
 
73
 
-
 
74
        $request = $this->getRequest();
-
 
75
        if ($request->isGet()) {
-
 
76
 
-
 
77
                $category_ids = [];
-
 
78
                $categories = [];
-
 
79
 
-
 
80
 
-
 
81
                $myCoachCategoryUserMapper = MyCoachCategoryUserMapper::getInstance($this->adapter);
-
 
82
                $records =  $myCoachCategoryUserMapper->fetchAllByUserId($currentUser->id);
-
 
83
                foreach ($records as $record) {
-
 
84
                    array_push($category_ids, $record->category_id);
-
 
85
                }
-
 
86
 
-
 
87
                $myCoachCategoryMapper = MyCoachCategoryMapper::getInstance($this->adapter);
-
 
88
 
-
 
89
                if ($category_ids) {
-
 
90
                    $records =  $myCoachCategoryMapper->fetchAllByIds($category_ids);
-
 
91
                    foreach ($records as $record) {
-
 
92
                        if ($record->status == MyCoachCategory::STATUS_ACTIVE) {
-
 
93
 
-
 
94
                            $categories[$record->id] = [
-
 
95
                                'uuid' => $record->uuid,
-
 
96
                                'name' => $record->name,
-
 
97
                            ];
-
 
98
                        }
-
 
99
                    }
-
 
100
                }
-
 
101
 
-
 
102
                $records =  $myCoachCategoryMapper->fetchAllPublicByNetworkId($currentNetwork->id);
-
 
103
                foreach ($records as $record) {
-
 
104
                    if ($record->status == MyCoachCategory::STATUS_ACTIVE) {
-
 
105
 
-
 
106
                        if (!isset($categories[$record->id])) {
-
 
107
 
-
 
108
                            $categories[$record->id] = [
-
 
109
                                'uuid' => $record->uuid,
-
 
110
                                'name' => $record->name,
-
 
111
                            ];
-
 
112
                        }
-
 
113
                    }
-
 
114
                }
-
 
115
 
-
 
116
 
-
 
117
                $categories = array_values($categories);
-
 
118
                usort($categories, function ($a, $b) {
-
 
119
                    return $a['name'] <=> $b['name'];
-
 
120
                });
-
 
121
 
-
 
122
                
-
 
123
                $categories_question_available = [];
-
 
124
                foreach($categories as $cartegory)
-
 
125
                {
-
 
126
                    $categories_question_available[ $cartegory['uuid'] ] = $cartegory['name'];
-
 
127
                 }
85
        //$currentUser = $currentUserPlugin->getUser();
128
                
-
 
129
 
-
 
130
                 $formQuestion = new MyCoachQuestionForm($categories_question_available);
-
 
131
 
-
 
132
 
-
 
133
                $this->layout()->setTemplate('layout/layout.phtml');
-
 
134
                $viewModel = new ViewModel();
-
 
135
                $viewModel->setTemplate('leaders-linked/my-coach/index.phtml');
-
 
136
                $viewModel->setVariables([
Línea 86... Línea -...
86
        
-
 
87
        $request = $this->getRequest();
-
 
88
        if($request->isGet()) {
-
 
89
            
-
 
90
 
-
 
91
            $this->layout()->setTemplate('layout/layout.phtml');
-
 
92
            $viewModel = new ViewModel();
137
                    'categories' => $categories,
93
            $viewModel->setTemplate('leaders-linked/my-coach/index.phtml');
138
                    'formQuestion' => $formQuestion,
94
            return $viewModel ;
139
                ]);
95
            
140
                return $viewModel;
96
            
141
 
97
        } else {
142
        } else {
98
            return new JsonModel([
143
            return new JsonModel([
99
                'success' => false,
-
 
100
                'data' => 'ERROR_METHOD_NOT_ALLOWED'
144
                'success' => false,
101
            ]);
-
 
102
        }
145
                'data' => 'ERROR_METHOD_NOT_ALLOWED'