Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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