diff --git a/src/Site/Controller/BlogPost.php b/src/Site/Controller/BlogPost.php
index 18b842f..1a072c1 100644
--- a/src/Site/Controller/BlogPost.php
+++ b/src/Site/Controller/BlogPost.php
@@ -7,7 +7,7 @@ class BlogPost {
*
* @return array 投稿の配列
*/
- public function getPosts(string $section, ?\stdClass $user): array {
+ public function getPosts(string $section, ?\stdClass $user = null): array {
$path = ROOT.$section;
$posts = [];
$isMember = $user !== NULL && $user->role !== \Roles::BANNED;
@@ -45,6 +45,7 @@ class BlogPost {
$articleBody = trim($parts[1]);
$preview = mb_substr(strip_tags($articleBody), 0, 50).'...';
$slug = basename($file, '.md');
+ if (isset($metadata['draft']) && !$isStaff) continue;
$posts[] = [
'title' => $metadata['title'] ?? '',
diff --git a/src/Site/Controller/Home.php b/src/Site/Controller/Home.php
index 2537f54..fe09f4d 100644
--- a/src/Site/Controller/Home.php
+++ b/src/Site/Controller/Home.php
@@ -134,6 +134,7 @@ class Home extends BlogPost {
if (!$isMember && in_array('memberonly', $meta->category)) goto denyaccess;
if (!$isStaff && in_array('staffonly', $meta->category)) goto denyaccess;
+ if (isset($meta->draft) && !$isStaff) goto denyaccess;
showpage:
$tmpl->addCss('news-article');
diff --git a/src/Site/Lib/Auth.php b/src/Site/Lib/Auth.php
index 8e3f5ec..c0e1671 100644
--- a/src/Site/Lib/Auth.php
+++ b/src/Site/Lib/Auth.php
@@ -6,7 +6,6 @@ class Auth {
/**
* 性別: -1 = 不明, 0 = 男性, 1 = 女性
- * ロール: -1 = BAN, 0 = ユーザー, 1 = スタッフ
*/
private \stdClass $user;
private \stdClass $pubUser;
diff --git a/util.php b/util.php
index 93cf04b..f3ba8c3 100644
--- a/util.php
+++ b/util.php
@@ -302,8 +302,8 @@ function namecolor(\stdClass $userData): string {
$showname = $userData->displayname ?: $userData->username;
$color = "{$showname}";
- if ($userData->role & (Roles::ADMIN | Roles::STAFF)) $color .= "✓";
-
+ if ($userData->role & (Roles::ADMIN | Roles::STAFF))
+ $color .= "✓";
$suffix = $userData->gender === 0 ? 'くん' : ($userData->gender === 1 ? 'ちゃん' : 'さん');
return $color.$suffix;