Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 6159 | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 www 1
<?php
2
 
1044 efrain 3
use LeadersLinked\Model\UserType;
3639 efrain 4
use LeadersLinked\Model\User;
4467 stevensc 5
use LeadersLinked\Model\Theme;
4842 efrain 6
use LeadersLinked\Model\Network;
1044 efrain 7
 
4964 stevensc 8
$currentUser = $this->currentUserHelper();
3639 efrain 9
 
4526 stevensc 10
$currentNetworkHelper = $this->currentNetworkHelper();
11
$currentNetwork = $currentNetworkHelper->getNetwork();
12
 
3639 efrain 13
$logoForNavbar = $this->networkNavbarHelper();
14
 
4526 stevensc 15
if ($currentUser->hasIdentity()) {
16
    $session_user_id        = $currentUser->getUserId();
17
    $session_usertype_id    = $currentUser->getUserTypeId();
18
    $user = $currentUser->getUser();
6159 stevensc 19
 
20
 
6056 efrain 21
    $acl = $this->viewModel()->getCurrent()->getVariable('acl');
1 www 22
 
4526 stevensc 23
    $link_admin = $session_usertype_id == UserType::ADMIN ? 1 : 0;
1 www 24
 
4526 stevensc 25
    $link_impersonate = $user->is_super_user == User::IS_SUPER_USER_YES ? 1 : 0;
6159 stevensc 26
 
27
    if ($acl->isAllowed($session_usertype_id,  'knowledge-area')) {
28
        $route_knowledge_area = $this->url('knowledge-area');
6056 efrain 29
        $link_knowledge_area = 1;
30
    } else {
6159 stevensc 31
 
6056 efrain 32
        $route_knowledge_area = '';
33
        $link_knowledge_area = 0;
34
    }
6521 efrain 35
 
36
    if ($acl->isAllowed($session_usertype_id,  'my-coach')) {
37
        $route_my_coach = $this->url('my-coach');
38
        $link_my_coach = 1;
39
    } else {
40
 
41
        $route_my_coach = '';
42
        $link_my_coach = 0;
43
    }
3639 efrain 44
 
4842 efrain 45
    //$container = $this->navigation('menuNavigation')->getContainer();
1 www 46
 
6159 stevensc 47
 
4526 stevensc 48
    $menu = [];
4842 efrain 49
    foreach ($pages as $page) {
1 www 50
 
4842 efrain 51
        if (!$page || empty($page['route']) || !$acl->isAllowed($session_usertype_id, $page['route'])) {
4526 stevensc 52
            continue;
53
        }
1044 efrain 54
 
4842 efrain 55
        $ajax = false;
4964 stevensc 56
        if ($page['route'] == 'company' && $currentNetwork->default == Network::DEFAULT_NO) {
1044 efrain 57
 
4964 stevensc 58
            if ($link_company) {
59
                $page['route'] = $this->url($link_company['route'], ['id' => $link_company['id']]);
4842 efrain 60
                $ajax = true;
61
            } else {
62
                continue;
63
            }
64
        }
2900 efrain 65
 
4526 stevensc 66
        $option = [
4842 efrain 67
            'label' => $page['label'],
68
            'href' => $page['route'],
69
            'img' => empty($page['class']) ? '' : $page['class'],
70
            'ajax' => $ajax ? 1 : 0,
4526 stevensc 71
            'childs' => [],
72
        ];
2904 efrain 73
 
4842 efrain 74
        $childs = empty($page['pages']) ? [] : $page['pages'];
4526 stevensc 75
        if ($childs) {
76
            foreach ($childs as $child) {
4842 efrain 77
                if (!$acl->isAllowed($session_usertype_id,  $child['route'])) {
4526 stevensc 78
                    continue;
79
                }
2899 efrain 80
 
4526 stevensc 81
                $childs_level2 = [];
82
 
4842 efrain 83
                $childsLevel2 = empty($child['pages']) ? [] : $child['pages'];
4526 stevensc 84
 
85
                if ($childsLevel2) {
86
                    foreach ($childsLevel2 as $childLevel2) {
4842 efrain 87
                        if (!$acl->isAllowed($session_usertype_id,  $childLevel2['route'])) {
4526 stevensc 88
                            continue;
89
                        }
90
 
91
                        array_push($childs_level2, [
4842 efrain 92
                            'label' => $childLevel2['label'],
93
                            'href' => $childLevel2['route'],
4526 stevensc 94
 
95
                        ]);
96
                    }
97
                }
98
 
99
                array_push($option['childs'], [
4842 efrain 100
                    'label' => $child['label'],
101
                    'href' => $child['route'],
4526 stevensc 102
                    'childs' => $childs_level2,
103
                ]);
104
            }
1044 efrain 105
        }
106
 
4526 stevensc 107
        array_push($menu, $option);
108
    }
109
 
5166 stevensc 110
    $menu = json_encode($menu);
111
    $image = $this->url('storage', ['type' => 'user', 'code' => $user->uuid, 'filename' => $user->image]);
112
    $isChatPage = $this->viewModel()->getCurrent()->getVariable('is_chat');
113
    $routeCheckSession = $this->url('check-session');
114
    $currentUser    = $this->currentUserHelper();
2904 efrain 115
 
5166 stevensc 116
    $js = <<<JS
5695 stevensc 117
 
1 www 118
const navbarVars={
4244 stevensc 119
  menu: $menu,
1 www 120
  isChatPage: '$isChatPage' === '1',
1446 steven 121
  routeCheckSession: '$routeCheckSession',
3639 efrain 122
  linkAdmin : '$link_admin' === '1',
123
  linkImpersonate : '$link_impersonate' === '1',
1445 efrain 124
  image: '$image',
1450 steven 125
  fullName: '$fullname',
1445 efrain 126
  country: '$country',
127
  visits: '$visits',
3639 efrain 128
  connections: '$connections',
129
  logoForNavbar: '$logoForNavbar',
4964 stevensc 130
  defaultNetwork: '$currentNetwork->default',
6159 stevensc 131
  linkKnowledgeArea: $link_knowledge_area === 1,
6062 efrain 132
  routeKnowledgeArea: '$route_knowledge_area',
6521 efrain 133
  linkMyCoach: $link_my_coach === 1,
134
  routeMyCoach: '$route_my_coach',
1 www 135
}
3999 stevensc 136
 
5167 stevensc 137
const MENU_LABELS = {
5173 stevensc 138
  MY_GROUPS: 'LABEL_MY_GROUPS',
139
  GROUPS: 'LABEL_GROUPS',
140
  WHAT_ARE_YOU_THINKING: 'LABEL_WHAT_ARE_YOU_THINKING',
141
  GROUP_VIEW: 'LABEL_GROUP_VIEW',
142
  VIEW_MORE: 'LABEL_VIEW_MORE',
143
  VIEW_LESS: 'LABEL_VIEW_LESS',
144
  WHO_HAS_SEEN_MY_PROFILE: 'LABEL_WHO_HAS_SEEN_MY_PROFILE',
145
  CONNECT_WITH: 'LABEL_CONNECT_WITH',
146
  POSTS: 'LABEL_POSTS',
147
  DATATABLE_EMPTY: 'LABEL_DATATABLE_EMPTY',
148
  CONNECT: 'LABEL_CONNECT',
149
  CANCEL: 'LABEL_CANCEL',
150
  NOT_AVAILABLE_POSTS: 'LABEL_NOT_AVAILABLE_POSTS',
151
  MICRO_LEARNING: 'LABEL_MICRO_LEARNING',
152
  NOT_AVAILABLE_FEEDS: 'LABEL_NOT_AVAILABLE_FEEDS',
153
  SEND: 'LABEL_SEND',
154
  SHARE_A_POST: 'LABEL_SHARE_A_POST',
155
  SHARE_WITH: 'LABEL_SHARE_WITH',
156
  CONNECTIONS: 'LABEL_CONNECTIONS',
157
  PUBLIC: 'LABEL_PUBLIC',
158
  SUGGEST_GROUPS: 'LABEL_SUGGEST_GROUPS',
159
  VIEW_RECOMMENDATIONS: 'LABEL_VIEW_RECOMMENDATIONS',
160
  IMAGE: 'LABEL_IMAGE',
161
  DOCUMENT: 'LABEL_DOCUMENT',
162
  AUDIO: 'LABEL_AUDIO',
163
  VIDEO: 'LABEL_VIDEO',
164
  WRITE_A_POST: 'LABEL_WRITE_A_POST',
165
  DELETE: 'LABEL_DELETE',
166
  DOWNLOAD: 'LABEL_DOWNLOAD',
167
  READ_MORE: 'LABEL_READ_MORE',
168
  READ_LESS: 'LABEL_READ_LESS',
169
  LIKE: 'LABEL_LIKE',
170
  COMMENT: 'LABEL_COMMENT',
171
  SHARE: 'LABEL_SHARE',
5267 stevensc 172
  SHARED: 'LABEL_SHARED',
5173 stevensc 173
  COMMENTS: 'LABEL_COMMENTS',
174
  SENDS: 'LABEL_SENDS',
175
  WRITE_A_COMMENT: 'LABEL_WRITE_A_COMMENT'
5166 stevensc 176
}
177
 
1 www 178
//TODO is_chat
179
JS;
4526 stevensc 180
    $this->inlineScript()->appendScript($js);
1 www 181
 
4526 stevensc 182
    if ($currentNetwork->theme_id == Theme::THEME_LEADERSLINKED_LINKEDIN) {
5265 stevensc 183
        $this->inlineScript()->appendFile('/react-bundles/navbar/linkedin/navbarBundle.js');
4526 stevensc 184
    } else {
5363 stevensc 185
        $this->inlineScript()->appendFile('/react-bundles/navbar/default/navbarBundle.js');
4526 stevensc 186
    }
4467 stevensc 187
 
4526 stevensc 188
    echo <<<EOT
5280 stevensc 189
        <div id="react_navbar"></div>
190
    EOT;
1 www 191
} else {
192
}