sitemap을 위하여 메뉴를 php에서 직접 출력하도록 변경
This commit is contained in:
@@ -217,8 +217,8 @@ $result = Util::generateFileUsingSimpleTemplate(
|
|||||||
);
|
);
|
||||||
|
|
||||||
$result = Util::generateFileUsingSimpleTemplate(
|
$result = Util::generateFileUsingSimpleTemplate(
|
||||||
__dir__.'/templates/menu.orig.js',
|
__dir__.'/templates/menu.orig.json',
|
||||||
ROOT.'/d_shared/menu.js',
|
ROOT.'/d_shared/menu.json',
|
||||||
[],
|
[],
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,8 +0,0 @@
|
|||||||
window.sammo_menu = [
|
|
||||||
['/bbs/board', '삼모게시판', '_blank'],
|
|
||||||
['/bbs/tip', '팁/강좌', '_blank'],
|
|
||||||
['/bbs/news', '삼국 일보', '_blank'],
|
|
||||||
['/bbs/history2', '개인 열전', '_blank'],
|
|
||||||
['/bbs/history3', '국가 열전', '_blank'],
|
|
||||||
['/bbs/patch', '패치 내역', '_blank']
|
|
||||||
];
|
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
[
|
||||||
|
["/bbs/board", "삼모게시판", "_blank"],
|
||||||
|
["/bbs/tip", "팁/강좌", "_blank"],
|
||||||
|
["/bbs/news", "삼국 일보", "_blank"],
|
||||||
|
["/bbs/history2", "개인 열전", "_blank"],
|
||||||
|
["/bbs/history3", "국가 열전", "_blank"],
|
||||||
|
["/bbs/patch", "패치 내역", "_blank"]
|
||||||
|
]
|
||||||
@@ -12,6 +12,7 @@ $db = RootDB::db();
|
|||||||
$notice = $db->queryFirstField('SELECT `NOTICE` FROM `system` WHERE `NO`=1');
|
$notice = $db->queryFirstField('SELECT `NOTICE` FROM `system` WHERE `NO`=1');
|
||||||
$userGrade = $session->userGrade;
|
$userGrade = $session->userGrade;
|
||||||
$acl = $session->acl;
|
$acl = $session->acl;
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
@@ -34,8 +35,6 @@ $acl = $session->acl;
|
|||||||
<?=WebUtil::printJS('../e_lib/bootstrap.bundle.min.js')?>
|
<?=WebUtil::printJS('../e_lib/bootstrap.bundle.min.js')?>
|
||||||
<?=WebUtil::printJS('../js/func.js')?>
|
<?=WebUtil::printJS('../js/func.js')?>
|
||||||
<?=WebUtil::printJS('../js/entrance.js')?>
|
<?=WebUtil::printJS('../js/entrance.js')?>
|
||||||
<?=WebUtil::printJS('../d_shared/menu.js')?>
|
|
||||||
<?=WebUtil::printJS('../js/title.js')?>
|
|
||||||
|
|
||||||
<?php if ($userGrade >= 5 || $acl): ?>
|
<?php if ($userGrade >= 5 || $acl): ?>
|
||||||
<!-- 운영자 -->
|
<!-- 운영자 -->
|
||||||
@@ -53,6 +52,7 @@ $acl = $session->acl;
|
|||||||
</button>
|
</button>
|
||||||
<div class="collapse navbar-collapse" id="navbarNav">
|
<div class="collapse navbar-collapse" id="navbarNav">
|
||||||
<ul class="navbar-nav">
|
<ul class="navbar-nav">
|
||||||
|
<?=WebUtil::drawMenu(ROOT.'/d_shared/menu.json')?>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|||||||
@@ -26,8 +26,6 @@ require(__dir__.'/../vendor/autoload.php');
|
|||||||
<?=WebUtil::printJS('../e_lib/moment.min.js')?>
|
<?=WebUtil::printJS('../e_lib/moment.min.js')?>
|
||||||
<?=WebUtil::printJS('../js/func.js')?>
|
<?=WebUtil::printJS('../js/func.js')?>
|
||||||
<?=WebUtil::printJS('../js/user_info.js')?>
|
<?=WebUtil::printJS('../js/user_info.js')?>
|
||||||
<?=WebUtil::printJS('../d_shared/menu.js')?>
|
|
||||||
<?=WebUtil::printJS('../js/title.js')?>
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<nav class="navbar navbar-expand-lg navbar-light bg-light">
|
<nav class="navbar navbar-expand-lg navbar-light bg-light">
|
||||||
@@ -37,6 +35,7 @@ require(__dir__.'/../vendor/autoload.php');
|
|||||||
</button>
|
</button>
|
||||||
<div class="collapse navbar-collapse" id="navbarNav">
|
<div class="collapse navbar-collapse" id="navbarNav">
|
||||||
<ul class="navbar-nav">
|
<ul class="navbar-nav">
|
||||||
|
<?=WebUtil::drawMenu(ROOT.'/d_shared/menu.json')?>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|||||||
@@ -30,10 +30,8 @@ if ($session->isLoggedIn()) {
|
|||||||
<?=WebUtil::printJS('e_lib/bootstrap.bundle.min.js')?>
|
<?=WebUtil::printJS('e_lib/bootstrap.bundle.min.js')?>
|
||||||
<?=WebUtil::printJS('e_lib/jquery.validate.min.js')?>
|
<?=WebUtil::printJS('e_lib/jquery.validate.min.js')?>
|
||||||
<?=WebUtil::printJS('e_lib/sha512.min.js')?>
|
<?=WebUtil::printJS('e_lib/sha512.min.js')?>
|
||||||
<?=WebUtil::printJS('d_shared/menu.js')?>
|
|
||||||
<?=WebUtil::printJS('js/common.js')?>
|
<?=WebUtil::printJS('js/common.js')?>
|
||||||
<?=WebUtil::printJS('js/login.js')?>
|
<?=WebUtil::printJS('js/login.js')?>
|
||||||
<?=WebUtil::printJS('js/title.js')?>
|
|
||||||
<?=WebUtil::printCSS('e_lib/bootstrap.min.css')?>
|
<?=WebUtil::printCSS('e_lib/bootstrap.min.css')?>
|
||||||
<?=WebUtil::printCSS('css/login.css')?>
|
<?=WebUtil::printCSS('css/login.css')?>
|
||||||
<meta name="description" content="실시간으로 진행되는 삼국지 웹게임(삼모전)입니다">
|
<meta name="description" content="실시간으로 진행되는 삼국지 웹게임(삼모전)입니다">
|
||||||
@@ -141,6 +139,7 @@ function postOAuthResult(result){
|
|||||||
</button>
|
</button>
|
||||||
<div class="collapse navbar-collapse" id="navbarNav">
|
<div class="collapse navbar-collapse" id="navbarNav">
|
||||||
<ul class="navbar-nav">
|
<ul class="navbar-nav">
|
||||||
|
<?=WebUtil::drawMenu(ROOT.'/d_shared/menu.json')?>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|||||||
-15
@@ -1,15 +0,0 @@
|
|||||||
jQuery(function($){
|
|
||||||
$.each(window.sammo_menu, function(idx){
|
|
||||||
var href = this[0];
|
|
||||||
var name = this[1];
|
|
||||||
var target = (this.length > 2)?this[2]:null;
|
|
||||||
|
|
||||||
var $a = $('<a class="nav-link" href="{0}">{1}</a>'.format(href, name));
|
|
||||||
if(target){
|
|
||||||
$a.attr('target', target);
|
|
||||||
}
|
|
||||||
var $li = $('<li class="nav-item"></li>').append($a);
|
|
||||||
$('#navbarNav .navbar-nav').append($li);
|
|
||||||
console.log(this);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
@@ -135,4 +135,26 @@ class WebUtil
|
|||||||
$purifier = new \HTMLPurifier($config);
|
$purifier = new \HTMLPurifier($config);
|
||||||
return $purifier->purify($text);
|
return $purifier->purify($text);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function drawMenu(string $path): string{
|
||||||
|
$json = Json::decode(file_get_contents($path));
|
||||||
|
|
||||||
|
$result = [];
|
||||||
|
foreach($json as $menuItem){
|
||||||
|
if (count($path) == 2) {
|
||||||
|
[$url, $title] = $menuItem;
|
||||||
|
$targetAttr = '';
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
[$url, $title, $target] = $menuItem;
|
||||||
|
$target = htmlspecialchars($target);
|
||||||
|
$targetAttr = "target='$target' ";
|
||||||
|
}
|
||||||
|
$title = htmlspecialchars($title);
|
||||||
|
$url = htmlspecialchars($url);
|
||||||
|
$result[] = "<a class='nav-link' href='$url' $targetAttr>$title</a>";
|
||||||
|
}
|
||||||
|
|
||||||
|
return join("\n", $result);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user