| 63 | } |
| 64 | |
| 65 | func (m *Mentor) InitDB() error { |
| 66 | m.do("check table exist", m.checkTableExist) |
| 67 | m.do("sync table", m.syncTable) |
| 68 | m.do("init version table", m.initVersionTable) |
| 69 | m.do("init admin user", m.initAdminUser) |
| 70 | m.do("init config", m.initConfig) |
| 71 | m.do("init default privileges config", m.initDefaultRankPrivileges) |
| 72 | m.do("init role", m.initRole) |
| 73 | m.do("init power", m.initPower) |
| 74 | m.do("init role power rel", m.initRolePowerRel) |
| 75 | m.do("init admin user role rel", m.initAdminUserRoleRel) |
| 76 | m.do("init site info interface", m.initSiteInfoInterface) |
| 77 | m.do("init site info users settings", m.initSiteInfoUsersSettings) |
| 78 | m.do("init site info general config", m.initSiteInfoGeneralData) |
| 79 | m.do("init site info login config", m.initSiteInfoLoginConfig) |
| 80 | m.do("init site info theme config", m.initSiteInfoThemeConfig) |
| 81 | m.do("init site info seo config", m.initSiteInfoSEOConfig) |
| 82 | m.do("init site info user config", m.initSiteInfoUsersConfig) |
| 83 | m.do("init site info privilege rank", m.initSiteInfoPrivilegeRank) |
| 84 | m.do("init site info write", m.initSiteInfoAdvanced) |
| 85 | m.do("init site info write", m.initSiteInfoQuestions) |
| 86 | m.do("init site info write", m.initSiteInfoTags) |
| 87 | m.do("init site info security", m.initSiteInfoSecurityConfig) |
| 88 | m.do("init default content", m.initDefaultContent) |
| 89 | m.do("init default badges", m.initDefaultBadges) |
| 90 | m.do("init default ai config", m.initSiteInfoAI) |
| 91 | m.do("init default MCP config", m.initSiteInfoMCP) |
| 92 | return m.err |
| 93 | } |
| 94 | |
| 95 | func (m *Mentor) do(taskName string, fn func()) { |
| 96 | if m.err != nil || m.Done { |