Показать / Скрыть параметры в раскрывающемся меню в соответствии с привилегиями пользователя - PullRequest
0 голосов
/ 29 мая 2018

У меня на сайте два типа пользователей.Админы и пользователи.Они хранятся в таблице user под именем kind.

. С этим я могу подтвердить сеанс входа в систему:

<body>
      <?php if(isset($_SESSION["user_id"])):?>
      <div class="wrapper">
         <div class="sidebar" data-color="blue">
            <div class="logo">
               <a href="./" class="simple-text">
               INDEX PAGE FOR BOTH ADMINS AND USERS
               </a>
            </div>
            <div class="sidebar-wrapper">
               <ul class="nav">
                  <li class="">
                     <a href="./">
                        <i class="fa fa-home"></i>
                        <p>Home</p>
                     </a>
                  </li>
                  <li>
                     <a href="./?view=tickets">
                        <i class="fa fa-ticket"></i>
                        <p>Tickets</p>
                     </a>
                  </li>
                  <li>
                     <a href="./?view=calendario">
                        <i class="fa fa-ticket"></i>
                        <p>Calendar</p>
                     </a>
                  </li>
                  <li>
                     <a href="./?view=projects">
                        <i class="fa fa-building"></i>
                        <p>Projects</p>
                     </a>
                  </li>
                  <li>
                     <a href="./?view=categories">
                        <i class="fa fa-th-list"></i>
                        <p>Categories</p>
                     </a>
                  </li>
                  <li>
                     <a href="./?view=reports">
                        <i class="fa fa-area-chart"></i>
                        <p>Reports</p>
                     </a>
                  </li>
                  <li>
                     <a href="./?view=users">
                        <i class="fa fa-users"></i>
                        <p>Users</p>
                     </a>
                  </li>
               </ul>
            </div>
         </div>
         <div class="main-panel">
            <nav class="navbar navbar-transparent navbar-absolute">
               <div class="container-fluid">
                  <div class="navbar-header">
                     <button type="button" class="navbar-toggle" data-toggle="collapse">
                     <span class="sr-only">Toggle navigation</span>
                     <span class="icon-bar"></span>
                     <span class="icon-bar"></span>
                     <span class="icon-bar"></span>
                     </button>
                     <a class="navbar-brand" href="./"><b>Desktop IT Manager</b></a>
                  </div>
                  <div class="collapse navbar-collapse">
                     <ul class="nav navbar-nav navbar-right">
                        <li class="dropdown">
                           <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                           <i class="fa fa-user"></i>
                           &nbsp;<?php echo Core::$user->name." ".Core::$user->lastname." ".Core::$user->kind; ?>
                           </a>
                           <ul class="dropdown-menu">
                              <li class="divider"></li>
                              <li><a href="./?view=configuration">Account Settings</a></li>
                              <li class="divider"></li>
                              <li><a href="logout.php">Logout</a></li>
                           </ul>
                        </li>
                     </ul>
                     <!--
                        <form class="navbar-form navbar-right" role="search">
                          <div class="form-group  is-empty">
                            <input type="text" class="form-control" placeholder="Search">
                            <span class="material-input"></span>
                          </div>
                          <button type="submit" class="btn btn-white btn-round btn-just-icon">
                            <i class="fa fa-search"></i><div class="ripple-container"></div>
                          </button>
                        </form>
                        -->
                  </div>
               </div>
            </nav>
            <div class="content">
               <div class="container-fluid">
                  <?php 
                     View::load("login");
                     ?>
               </div>
            </div>
            <footer class="footer">
               <div class="container-fluid">
                  <nav class="pull-left">
                     <ul>
                        <li>
                        </li>
                        <!--
                           <li>
                             <a href="#">
                               Company
                             </a>
                           </li>
                           <li>
                             <a href="#">
                               Portfolio
                             </a>
                           </li>
                           <li>
                             <a href="#">
                                Blog
                             </a>
                           </li>
                           -->
                     </ul>
                  </nav>
                  <p class="copyright pull-right">
                     Developed by <a href="http://wwww.iesahn.com" target="_blank">Imagen Electrónica S.A de C.V</a> &copy; <script type="text/javascript">document.write(new Date().getFullYear());</script> 
                  </p>
               </div>
            </footer>
         </div>
      </div>
      <?php else:?>
      <?php 
         View::load("login"); 
         ?>
      <?php endif;?>
   </body>

Используя <?php echo Core::$user->name." ".Core::$user->lastname." ".Core::$user->kind; ?> Я вытягиваю изв базе данных имя и фамилия пользователя, а с Core::$user->kind я тяну тип пользователя.1 - для администраторов, а 2 - для пользователей.

Теперь я хотел бы ограничить доступ к определенным разделам системы заявок по типу пользователя.

У меня была эта идея, по крайней мере, дляменю:

  <?php if(isset($_SESSION["user_id"])):?>
     <?php if((<?php echo Core::$user->kind; ?>) == 1):?>
        // insert full <div class="wrapper"> here 
     <?php else:?>
        // insert modified <div class="wrapper"> here (limited functions for 
        // normal users
     <?php endif;?>
  <?php else:?>
  <?php 
     View::load("login");
     ?>
  <?php endif;?>

Но ... Это не сработает.Как я могу заставить это работать?

1 Ответ

0 голосов
/ 29 мая 2018

На самом деле это было проще, чем я думал.

  <?php if(isset($_SESSION["user_id"])):?>
     <?php if(Core::$user->kind==1):?>
       //Admin Content
     <?php elseif(Core::$user->kind==2):?>
       //User Content
     <?php endif; ?>    
  <?php else:?>
  <?php 
     View::load("login");         
     ?>
  <?php endif;?>

Это сработало отлично.Я проверю все остальные разделы системы заявок, используя это.

...