- fix: 로그인 API에서 user.role_name 필드 올바르게 사용 (auth.service.js) - refactor: navbar 컴포넌트를 최신 dashboard-header 스타일로 전환 - refactor: 구버전 work-report-header 제거 (6개 페이지) - refactor: load-navbar.js를 최신 헤더 구조에 맞게 업데이트 - style: 파란색 그라데이션 헤더, 실시간 시계, 향상된 프로필 메뉴 - docs: 2026-01-20 개발 로그 추가 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
52 lines
1.4 KiB
JavaScript
52 lines
1.4 KiB
JavaScript
/**
|
|
* 마이그레이션: 게스트 역할 추가
|
|
* 작성일: 2026-01-19
|
|
*
|
|
* 변경사항:
|
|
* - Guest 역할 추가 (계정 없이 특정 기능 접근 가능)
|
|
* - 게스트 전용 페이지 추가 (신고 채널 등)
|
|
*/
|
|
|
|
exports.up = async function(knex) {
|
|
console.log('⏳ 게스트 역할 추가 중...');
|
|
|
|
// 1. Guest 역할 추가
|
|
const [guestRoleId] = await knex('roles').insert({
|
|
name: 'Guest',
|
|
description: '게스트 (계정 없이 특정 기능 접근 가능)',
|
|
created_at: knex.fn.now(),
|
|
updated_at: knex.fn.now()
|
|
});
|
|
console.log(`✅ Guest 역할 추가 완료 (ID: ${guestRoleId})`);
|
|
|
|
// 2. 게스트 전용 페이지 추가
|
|
await knex('pages').insert({
|
|
page_key: 'guest_report',
|
|
page_name: '신고 채널',
|
|
page_path: '/pages/guest/report.html',
|
|
category: 'guest',
|
|
is_admin_only: false,
|
|
created_at: knex.fn.now(),
|
|
updated_at: knex.fn.now()
|
|
});
|
|
console.log('✅ 게스트 전용 페이지 추가 완료 (신고 채널)');
|
|
|
|
console.log('✅ 게스트 역할 추가 완료');
|
|
};
|
|
|
|
exports.down = async function(knex) {
|
|
console.log('⏳ 게스트 역할 제거 중...');
|
|
|
|
// 페이지 제거
|
|
await knex('pages')
|
|
.where('page_key', 'guest_report')
|
|
.delete();
|
|
|
|
// 역할 제거
|
|
await knex('roles')
|
|
.where('name', 'Guest')
|
|
.delete();
|
|
|
|
console.log('✅ 게스트 역할 제거 완료');
|
|
};
|