Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 4631 | Rev 4634 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
4623 stevensc 1
<?php
2
 
1 www 3
use LeadersLinked\Model\UserType;
4
 
5
$currentUserPlugin = $this->currentUserHelper();
6
$currentUser = $currentUserPlugin->getUser();
4623 stevensc 7
$currentCompany = $currentUserPlugin->getCompany();
1 www 8
 
4621 stevensc 9
 
4623 stevensc 10
if ($currentCompany) {
11
  $menu = getAclMenuCompany();
1 www 12
} else {
4623 stevensc 13
  $menu = getAclMenuSystem();
1 www 14
}
15
 
4621 stevensc 16
 
17
 
18
 
4623 stevensc 19
$usertype_id = $currentUser->usertype_id;
4621 stevensc 20
 
1 www 21
//[REQUEST_URI] => /settings/company-sizes/
22
$request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';
23
 
24
 
4623 stevensc 25
if ($request_uri) {
26
  if (substr($request_uri, 0, 1) == '/') {
27
    $request_uri = substr($request_uri, 1);
28
  }
29
  if (substr($request_uri, strlen($request_uri) - 1, 1) == '/') {
30
    $request_uri = substr($request_uri, 0, strlen($request_uri) - 1);
31
  }
4621 stevensc 32
}
1 www 33
 
34
$acl = $this->viewModel()->getCurrent()->getVariable('acl');
35
/*
36
$this->inlineScript()->captureStart();
37
  echo <<<JS
38
    const redirectToDashboard = () => {
39
      console.log('>>: redirect > ')
40
      document.location.href = '/dashboard';
41
    }
4633 stevensc 42
    JS;
43
    $this->inlineScript()->captureEnd();
44
    */
45
 
46
$jsonMenu = json_encode($menu);
4629 stevensc 47
$js = <<<JS
4630 stevensc 48
const backendVars= {
4633 stevensc 49
  data: JSON.parse('$jsonMenu')
4630 stevensc 50
}
4629 stevensc 51
JS;
52
$this->inlineScript()->appendFile('/react-bundles/menu/menuBundle.js');
1 www 53
?>
4623 stevensc 54
<nav class="mt-2">
55
  <div id="menu-sidebar"></div>
56
  <ul class="nav nav-pills nav-sidebar flex-column" data-widget="treeview" role="menu" data-accordion="false">
57
    <?php foreach ($menu as $levelOne) :
1 www 58
 
4621 stevensc 59
 
60
 
4623 stevensc 61
      if (!$levelOne || !$levelOne['route'] || !$acl->isAllowed($usertype_id, $levelOne['route'])) {
62
        continue;
63
      }
4621 stevensc 64
 
65
 
4623 stevensc 66
      if (empty($levelOne['pages'])) :
4621 stevensc 67
 
4623 stevensc 68
 
69
    ?>
70
        <li class="nav-item">
71
          <a href="/<?php echo $levelOne['route'] ?>" class="nav-link">
72
 
73
            <i class="nav-icon <?php echo $levelOne['class'] ?>"></i>
74
            <p><?php echo $levelOne['label'] ?></p>
75
          </a>
76
        </li>
77
      <?php else :
78
 
79
        if (strpos($request_uri, $levelOne['route']) === false) {
80
          echo '<li class="nav-item">';
81
        } else {
82
          echo '<li class="nav-item menu-is-opening menu-open">';
83
        }
84
 
85
 
86
 
87
 
88
      ?>
89
 
90
 
91
 
92
        <a href="/dashboard" class="nav-link">
93
          <i class="nav-icon <?php echo $levelOne['class'] ?>"></i>
94
 
95
          <?php echo $levelOne['label'] ?>
96
          <i class="fa fa-angle-left right"></i>
97
 
98
        </a>
99
        <?php
100
        if (strpos($request_uri, $levelOne['route']) === false) {
101
          echo '<ul class="nav nav-treeview" style="display: none;">';
102
        } else {
103
          echo '<ul class="nav nav-treeview" style="display: block;">';
104
        }
105
        ?>
106
 
107
 
108
        <?php
109
        foreach ($levelOne['pages']  as $levelTwo) :
110
          if (!$acl->isAllowed($usertype_id,  $levelTwo['route'])) {
111
            continue;
112
          }
113
 
114
          if (empty($levelTwo['pages'])) :
115
        ?>
116
 
117
 
118
 
119
            <li class="nav-item">
120
              <a href="/<?php echo $levelTwo['route']  ?>" class="nav-link">
121
                <i class="fa fa-circle nav-icon"></i>
122
                <p><?php echo $levelTwo['label']  ?></p>
123
              </a>
124
            </li>
125
          <?php else :
126
 
127
            if (strpos($request_uri, $levelTwo['route']) === false) {
128
              echo '<li class="nav-item">';
4621 stevensc 129
            } else {
4623 stevensc 130
              echo '<li class="nav-item menu-is-opening menu-open">';
131
            }
132
          ?>
133
            <a href="#" class="nav-link">
134
              <i class="fa fa-circle nav-icon"></i>
135
              <p>
136
                <?php echo $levelTwo['label']  ?>
137
                <i class="right fa fa-angle-right"></i>
4621 stevensc 138
 
4623 stevensc 139
              </p>
140
            </a>
141
            <ul class="nav nav-treeview">
142
              <?php foreach ($levelTwo['pages'] as $levelThree) : ?>
4621 stevensc 143
                <li class="nav-item">
4623 stevensc 144
                  <a href="/<?php echo $levelThree['route'] ?>" class="nav-link">
145
                    <i class="fa fa-circle-o nav-icon"></i>
146
                    <p><?php echo $levelThree['label'] ?></p>
147
                  </a>
148
                </li>
4621 stevensc 149
              <?php endforeach; ?>
150
            </ul>
151
          <?php endif; ?>
4623 stevensc 152
        <?php endforeach; ?>
4621 stevensc 153
 
4623 stevensc 154
  </ul>
155
  </li>
156
<?php endif; ?>
157
<?php endforeach; ?>
158
</ul>
159
</nav>