<template>
  <view :class="['app-container', `theme-${themeStore.currentTheme}`]">
    <router-view />
  </view>
</template>
<script>
  import config from './config'
  import { getToken } from '@/utils/auth'
import { useThemeStore } from '@/stores/theme'
import { onLaunch, onShow } from '@dcloudio/uni-app'
//import { useThemeStore } from '@/stores/theme'
import { useUserStore } from '@/stores/user'
import { useVipStore } from '@/stores/vip'
import { useReminder } from '@/utils/reminder'
import { readingService } from '@/services/readingService'
// 初始化主题
onLaunch(() => {
  // 登录成功后同步进度
  uni.$on('loginSuccess', async () => {
    await readingService.syncAllLocalProgress()
    uni.showToast({ title: '阅读进度已同步', icon: 'success' })
  })
	  // 初始化签到提醒
	  useReminder.init()
	  
  const themeStore = useThemeStore()
  themeStore.initTheme()
})
// 每次启动时加载用户和VIP状态
onShow(async () => {
  const userStore = useUserStore()
  const vipStore = useVipStore()
  
  // 检查登录状态
  if (uni.getStorageSync('token')) {
    // 加载用户信息
    await userStore.initUser()
    
    // 加载VIP状态
    if (userStore.userId) {
      await vipStore.loadVipStatus(userStore.userId)
    }
  }
})
  export default {
    onLaunch: function() {
      this.initApp()
    },
    methods: {
      // 初始化应用
      initApp() {
        // 初始化应用配置
        this.initConfig()
        // 检查用户登录状态
        //#ifdef H5
        this.checkLogin()
        //#endif
      },
      initConfig() {
        this.globalData.config = config
      },
      checkLogin() {
        if (!getToken()) {
          this.$tab.reLaunch('/pages/login') 
        }
      }
    }
  }
</script>

<style lang="scss">
  @import '@/static/scss/index.scss'
@import '@/styles/themes/default.scss';
@import '@/styles/themes/aydz-blue.scss';

.app-container {
  font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
  height: 100vh;
  background-color: var(--bg-color);
  color: var(--text-color);
}

/* 全局主题变量 */
:root {
  --primary-color: #1890ff;
  --bg-color: #f8f9fa;
  --text-color: #333;
  --card-bg: #ffffff;
  --header-bg: #ffffff;
  /* 确保所有页面继承主题 */
  background-color: var(--bg-color);
  color: var(--text-color);
}

/* 哎呀科技蓝主题变量覆盖 */
.theme-aydzBlue {
  --primary-color: #2a5caa;
  --bg-color: #e6f7ff;
  --text-color: #1a3353;
  --card-bg: #d0e8ff;
  --header-bg: #2a5caa;
}

/* 深色模式主题变量覆盖 */
.theme-darkMode {
  --primary-color: #52c41a;
  --bg-color: #1a1a1a;
  --text-color: #e6e6e6;
  --card-bg: #2a2a2a;
  --header-bg: #1a1a1a;
}

/* 公共组件样式 */
.card {
  background-color: var(--card-bg);
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.primary-button {
  background-color: var(--primary-color);
  color: white;
  border: none;
  border-radius: 24px;
  padding: 10px 20px;
  font-weight: bold;
}/* 全局主题变量 */
:root {
  --primary-color: #1890ff;
  --bg-color: #f8f9fa;
  --text-color: #333;
  --card-bg: #ffffff;
  
  /* 确保所有页面继承主题 */
  background-color: var(--bg-color);
  color: var(--text-color);
}

/* 哎呀科技蓝主题变量覆盖 */
.theme-aydzBlue {
  --primary-color: #2a5caa;
  --bg-color: #e6f7ff;
  --text-color: #1a3353;
  --card-bg: #d0e8ff;
}

/* 深色模式主题变量覆盖 */
.theme-darkMode {
  --primary-color: #52c41a;
  --bg-color: #1a1a1a;
  --text-color: #e6e6e6;
  --card-bg: #2a2a2a;
}

/* 公共组件样式 */
.card {
  background-color: var(--card-bg);
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.primary-button {
  background-color: var(--primary-color);
  color: white;
  border: none;
  border-radius: 24px;
  padding: 10px 20px;
  font-weight: bold;
}
/* 全局样式 */
page {
  background-color: var(--bg-color);
  color: var(--text-color);
  font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
}

</style>
