Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 637 | Rev 1056 | 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;
4
 
1 www 5
$currentUser            = $this->currentUserHelper();
6
if( $currentUser->hasIdentity() ) {
7
 
8
$session_user_id        = $currentUser->getUserId();
9
$session_usertype_id    = $currentUser->getUserTypeId();
10
$user = $currentUser->getUser();
11
 
1044 efrain 12
$link_admin = $session_usertype_id == UserType::ADMIN ? 1 : 0;
1 www 13
 
1044 efrain 14
 
15
$container = $this->navigation('menuNavigation')->getContainer();
16
 
1 www 17
$acl = $this->viewModel()->getCurrent()->getVariable('acl');
18
 
19
 
1044 efrain 20
$menu = [];
21
foreach($container as $page) {
1 www 22
 
1044 efrain 23
    if(!$page || !$page->getRoute() || !$acl->isAllowed($session_usertype_id , $page->getRoute())) {
24
        continue;
25
    }
26
 
27
 
28
    $option = [
29
        'label' => $page->getLabel(),
30
        'href' => $page->getHref(),
31
        'childs' => [],
32
    ];
33
 
34
 
35
    $childs = $page->getPages();
36
    if($childs) {
37
        foreach($childs as $child) {
38
            if(!$acl->isAllowed($session_usertype_id ,  $child->getRoute())) {
39
    		      continue;
40
    	    }
41
 
42
    	    array_push($option['childs'], [
43
    	        'label' => $child->getLabel(),
44
    	        'href' => $child->getLabel()
45
    	    ]);
46
 
47
        }
48
    }
49
 
50
    array_push($menu, $option);
51
}
52
 
53
$menu = json_encode($menu);
54
 
55
 
1 www 56
$image = $this->url('storage', ['type' => 'user', 'code' => $user->uuid, 'filename' => $user->image]);
57
 
58
$isChatPage = $this->viewModel()->getCurrent()->getVariable('is_chat');
637 steven 59
$routeCheckSession = $this->url('check-session');
60
$currentUser    = $this->currentUserHelper();
1 www 61
$js = <<<JS
62
const navbarVars={
1044 efrain 63
  menu: '$menu',
1 www 64
  image: '$image',
65
  isChatPage: '$isChatPage' === '1',
66
  link_admin : '$link_admin',
637 steven 67
  routeCheckSession: '$routeCheckSession'
1 www 68
}
69
//TODO is_chat
70
JS;
71
$this->inlineScript()->appendScript($js);
72
$this->inlineScript()->appendFile('/react-bundles/navbar/navbarBundle.js');
73
 
74
echo <<<EOT
75
<link rel="stylesheet" href="/react-bundles/navbar/main.css">
76
<div id="react_navbar"></div>
61 steven 77
<div id="react_navbar_2"></div>
1 www 78
EOT;
79
} else {
80
 
81
}