Current Path : /data/web/virtuals/51568/virtual/www/menu/ |
Current File : /data/web/virtuals/51568/virtual/www/menu/menu-rekurze-uziv.php |
<?php if (IsSet($_REQUEST["kodmenu"])) { $kodmenu = $_REQUEST["kodmenu"]; } else { $kodmenu = 0; } if (file_exists("funkce/DbConnect.php")){ require_once("funkce/DbConnect.php"); } else { require_once("../funkce/DbConnect.php"); } function MenuTree($rodic, $uroven, $urceni) { global $kodmenu; global $conn; $prikaz = "SELECT id, menu, anchor FROM menu WHERE parentid = $rodic and urceni = '$urceni' order by poradi"; if ($result = mysqli_query($conn, $prikaz)){ if ($radek = mysqli_fetch_object($result)) { do { $aktID = $radek->id; $prikazDeti = "select count(id) as pocetdeti from menu km where km.parentid = $aktID and urceni = '$urceni'"; $resultDeti = mysqli_query($conn, $prikazDeti); if ($radekDeti = mysqli_fetch_object($resultDeti)) { $pocetDeti = $radekDeti->pocetdeti; echo $uroven.": ".$radek->menu." = ".$radek->anchor."<br>"; if ($pocetDeti > 0){ MenuTree($aktID, $uroven + 1); } } } while ($radek = mysqli_fetch_object($result)); } } } function GenerujMenu($rodic, $uroven, $urceni) { global $kodmenu; global $conn; global $bgcolor_rodic; $prikaz = "SELECT id, menu, anchor, target, barva, alias, druhmenu, clanek_id, sada_id FROM menu WHERE parentid = $rodic and urceni = '$urceni' and opravneni_id < 1 and disabled='0' order by poradi"; if ($result = mysqli_query($conn, $prikaz)){ if ($radek = mysqli_fetch_object($result)) { do { $aktID = $radek->id; $barva = trim($radek->barva); $bgcolor = ($barva > ' ') ? "background-color: #$barva" : "background-color: 888888"; $prikazDeti = "select count(id) as pocetdeti from menu km where km.parentid = $aktID and urceni = '$urceni'"; $resultDeti = mysqli_query($conn, $prikazDeti); if ($radekDeti = mysqli_fetch_object($resultDeti)) { $pocetDeti = $radekDeti->pocetdeti; $target = ' '; if ($radek->druhmenu == '0') { if ($radek->target > ' ') { $odkaz = $radek->anchor; $target = ' target="'.$radek->target.'"'; } else { $odkaz = $radek->anchor.'&i='.$radek->id; } } else if ($radek->druhmenu == '1') { $odkaz = 'index.php?a='.$radek->clanek_id.'&i='.$radek->id; $odkaz .= ($radek->target > ' ') ? "&t=$radek->target" : ""; } else { $odkaz = 'index.php?u='.$radek->sada_id.'&i='.$radek->id; $odkaz .= ($radek->target > ' ') ? "&t=$radek->target" : ""; } if ($uroven == 0) {$bgcolor_rodic = $bgcolor;} // echo $uroven.": ".$radek->menu." = ".$radek->anchor."<br>"; if ($pocetDeti == 0){ if ($uroven == 0) {?> <li id="mainMenu<?=$radek->id;?>" class="nav-item"> <a class="nav-link" style="<?= $bgcolor?> ; padding: 20px 15px;" href="<?php echo $odkaz ?>" <?= $target?>> <?php echo $radek->menu;?></a> </li> <?php } else { //deti == 0 uroven > 0 ?> <a id="mainMenu<?=$radek->id;?>" class="dropdown-item" style="<?= $bgcolor_rodic;?>" href="<?php echo $odkaz ?>" <?= $target?>><?php echo $radek->menu;?></a> <?php } ?> <?php } else { // deti > 0 if ($uroven == 0) { ?> <li class="nav-item dropdown"> <!-- href="#" --> <a href="#" class="nav-link" data-toggle="dropdown" id="navbarDropdownMenu<?=$radek->id;?>" style="<?= $bgcolor?>; padding: 20px 15px;"> <?php echo $radek->menu;?><span class="fas caret-level1"></span></a> <div class="dropdown-menu level1" aria-labelledby="navbarDropdownMenu<?=$radek->id;?>" style="padding: 0px"> <?php } else { //deti > 0 uroven > 0?> <div class="nav-link dropright dropdown" style="padding: 1px; "> <a class="dropdown-item" href="#" data-toggle="dropdown" style="<?= $bgcolor_rodic;?>" id="navbarDropdownMenu<?=$radek->id;?>"><?=$radek->menu;?><span class="fas caret-level2"></span> </a> <div class="dropdown-menu level2" aria-labelledby="navbarDropdownMenu<?=$radek->id;?>"> <?php } GenerujMenu($aktID, $uroven + 1, $urceni); if ($uroven == 0) { ?> </div> </li> <?php } else { ?> </div> </div> <?php } ?> <?php } // deti > 0 } } while ($radek = mysqli_fetch_object($result)); } } } // ************ HLAVNI MENU *************** function ZobrazMenu($urceni){ global $conn; $prikaz = "SELECT id FROM `menu` WHERE parentid is NULL and urceni = '$urceni'"; $result = mysqli_query($conn, $prikaz); $radek = mysqli_fetch_object($result); $parent = $radek->id; $account = unserialize($_SESSION["account"]); $jePrihlasen = ($account->isAuthenticated()) ? true : false; $user = $account->getLongname(); $userID = $account->getID(); ?> <nav class="navbar navbar-expand-xl sticky-top navbar-main mb-2"> <div class="container-fluid"> <a href="index.php" class="navbar-brand mr-auto" title="Domů"> <span class="fa fa-home nav-home mr-2" aria-hidden="true"></span></a> <div class="navbar-nav d-flex flex-row justify-content-end order-1 order-lg-2"> <?php if ($jePrihlasen) {?> <div class="border rounded-0 text-white p-2 mr-1"> <?= $account->getName();?> </div> <?php }?> <button type='button' class="btn btn-login " id="btnLoginModal" title="<?php echo ($jePrihlasen) ? 'ODHLÁSIT' : 'PŘIHLÁSIT';?>" onclick="dlgLoginLogoutShow(<?php echo $jePrihlasen;?>)"> <?php echo ($jePrihlasen) ? '<i class="fas fa-sign-out-alt" style="font-size: 20px; "></i>' : '<i class="fas fa-sign-in-alt" style="font-size: 20px; "></i>'; ?> </button> <button class="navbar-toggler ml-1 rounded-0" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="true" aria-label="Toggle navigation"> <span><i class="fas fa-bars"></i> </span> </button> </div> <div class="collapse navbar-collapse order-2 order-lg-1" id="navbarNav"> <ul class="navbar-nav mr-auto" style="list-style-type:none;"> <?php GenerujMenu($parent, 0, $urceni); ?> <?php // if ($jePrihlasen && ($urceni == 'www')) { if ($jePrihlasen) { $mojeMenuDotaz = "SELECT `id`, `menu`, `alias`, `parentid`, `poradi`, `target`, `urceni`, `anchor` from `menu` menu where menu.urceni = 'www' and disabled='0' and menu.opravneni_id in ( select opr_accounts.opravneni_id from opr_accounts where opr_accounts.account_id = $userID and opr_accounts.stav='1') order by menu.poradi"; ?> <li class="nav-item dropdown"> <a href="#" class="nav-link" data-toggle="dropdown" id="navbarDropdownMenu99999999" style="padding: 20px 15px;"> Uživatel <span class="fas caret-level1"></span></a> <div class="dropdown-menu level1" aria-labelledby="navbarDropdownMenu<?=$radek->id;?>" style="padding: 0px"> <a class="dropdown-item" id="btnChangePass" onclick="dlgChangePass('<?= $user?>')">Změna hesla </a> <?php if ($resultMojeMenu = mysqli_query($conn, $mojeMenuDotaz)){ while ($radekMojeMenu = mysqli_fetch_object($resultMojeMenu)) {?> <a class="dropdown-item" id="mojeMenu<?= $radekMojeMenu->id?>" onclick="" href="<?= $radekMojeMenu->anchor?>"> <?= $radekMojeMenu->menu?> </a><?php } } ?> </div> </li> <?php } ?> </ul> </div> </div> </nav> <?php // -- ************ KONEC MENU *************** --> } ?> <script> function dlgLoginLogoutShow(jeprihlasen) { if (jeprihlasen !== undefined) { $("#menu-logout").modal("show"); } else { $("#menu-login").modal("show"); } } function dlgChangePass(user) { $("#pass-change").modal("show"); } </script>