<?php
if ( ! defined( 'ABSPATH' ) ) exit;

abstract class YFJ_Base_Module {

    protected $module_id;  // 例如: 'bazi'
    protected $shortcode;  // 例如: 'yfj_bazi'
    protected $api_endpoint; // API 后缀，例如: '/api/v1/bazi'

    public function __construct() {
        add_shortcode($this->shortcode, [$this, 'render_form']);
        add_action("wp_ajax_yfj_action_{$this->module_id}", [$this, 'handle_ajax']);
        add_action("wp_ajax_nopriv_yfj_action_{$this->module_id}", [$this, 'handle_ajax']);
    }

    // 1. 渲染前台表单
    public function render_form() {
        ob_start();
        $module_id = $this->module_id;
        // 载入特定模块的表单视图
        include YFJ_PLUGIN_DIR . "modules/{$this->module_id}/views/form.php";
        return ob_get_clean();
    }

    // 2. 处理 AJAX 请求 (核心逻辑)
    public function handle_ajax() {
        check_ajax_referer('yfj_nonce', 'nonce');

        $env = get_option('yfj_environment', 'sandbox');
        $lang = get_option('yfj_language', 'zh-cn');

        // 收集前端提交的所有业务参数
        $post_data = $_POST['form_data'] ?? [];

        if ($env === 'sandbox') {
            // 沙盒模式：获取模拟数据
            $raw_data = $this->get_demo_data($post_data);
            // 【新增】交给数据处理钩子进行二次加工
            $processed_data = $this->process_api_data($raw_data);
            $this->render_result($processed_data, true);
        } else {
            // Live模式：组装 API 请求
            $api_key = get_option('yfj_api_key');
            if(empty($api_key)) wp_send_json_error('生产环境未配置 API Key');

            $payload = array_merge($post_data, ['api_key' => $api_key, 'lang' => $lang]);
            $api_url = "https://api.yuanfenju.com/index.php" . $this->api_endpoint;

            //将具体的 HTTP 请求剥离到独立方法，方便子类进行缓存拦截(缓存)
            $body = $this->fetch_api_data($api_url, $payload);

            // 修改为校验 errcode == 0
            if(isset($body['errcode']) && $body['errcode'] == 0) {
                // 【新增】将 API 真实的原始数据，交给子类的钩子进行二次加工
                $processed_data = $this->process_api_data($body['data']);
                // 用加工后的数据去渲染
                $this->render_result($processed_data, false);
            } else {
                // 修改为读取 errmsg
                wp_send_json_error('接口返回异常: ' . ($body['errmsg'] ?? 'Unknown Error'));
            }
        }
    }

    /**
     * 【新增】：执行实际的远程 API 请求
     * 将其设为 protected，以便让子类可以重写此方法来实现 Redis/数据库缓存策略
     */
    protected function fetch_api_data($api_url, $payload) {
        $response = wp_remote_post($api_url, ['body' => $payload, 'timeout' => 20]);

        if (is_wp_error($response)) {
            return null;
        }

        return json_decode(wp_remote_retrieve_body($response), true);
    }

    // 3. 渲染结果视图并返回 JSON
    protected function render_result($data, $is_demo) {
        ob_start();
        // 载入特定模块的结果视图，传入 $data 变量供视图使用
        include YFJ_PLUGIN_DIR . "modules/{$this->module_id}/views/result.php";
        $html = ob_get_clean();

        wp_send_json_success([
            'html' => $html,
            'is_demo' => $is_demo
        ]);
    }

    // 4. 强制子类必须实现沙盒数据方法
    abstract protected function get_demo_data($post_data);

    /**
     * 数据处理钩子方法 (模板方法模式)
     * 基类默认原样返回。如果某个测算模块需要对 API 数据进行二次计算或格式转换，请在子类中重写此方法。
     */
    protected function process_api_data($raw_data) {
        return $raw_data;
    }

    /**
     * 轻量级多语言翻译引擎
     */
    public function t($text) {
        $lang = get_option('yfj_language', 'zh-cn');

        // 如果是简体，直接返回原词
        if ($lang === 'zh-cn') return $text;

        // 纯粹的通用 UI 词典 如果是繁体，使用字典匹配替换
        $common_dict = [
            '八字排盘' => '八字排盤',
            '八字流盘' => '八字流盤',
            '八字测算' => '八字測算',
            '八字精算' => '八字精算',
            '八字合婚' => '八字合婚',
            '八字合盘' => '八字合盤',
            '六爻纳甲排盘' => '六爻納甲排盤',
            '梅花易数排盘' => '梅花易數排盤',
            '玄空飞星风水排盘' => '玄空飛星風水排盤',
            '大六壬金口诀起课' => '大六壬金口訣起課',
            '每日一占 · 诚心祈福' => '每日一占 · 誠心祈福',
            '一事一测，心诚则灵。<br>请在心中默念您的所求之事，然后点击下方按钮抽签。' => '一事一測，心誠則靈。<br>請在心中默念您的所求之事，然後點擊下方按鈕抽籤。',

            '输入命主信息与起课条件，系统将自动进行高精度金口诀排盘。'=>'輸入命主資訊與起課條件，系統將自動進行高精度金口訣排盤。',
            '观梅知易，心血来潮皆可成卦，支持多种起卦方式。' => '觀梅知易，心血來潮皆可成卦，支援多種起卦方式。',
            '天机尽泄于六爻之中，支持纳甲起卦、手工摇卦等多种方式。' => '天機盡泄於六爻之中，支援納甲起卦、手工搖卦等多種方式。',
            '输入宅主信息与风水朝向，系统将自动进行三元九运精准排盘。' => '輸入宅主資訊與風水朝向，系統將自動進行三元九運精準排盤。',

            '紫微斗数排盘' => '紫微斗數排盤',
            '紫微斗数流盘' => '紫微斗數流盤',
            '奇门遁甲排盘' => '奇門遁甲排盤',
            '道家阴盘奇门' => '道家陰盤奇門',
            '大六壬神机排盘' => '大六壬神機排盤',
            '袖传一课定乾坤，支持天地盘、四课三传精准推演。' => '袖傳一課定乾坤，支援天地盤、四課三傳精準推演。',
            '输入问测时间，系统将自动进行奇门起局与排盘。' => '輸入問測時間，系統將自動進行奇門起局與排盤。',
            '支持时盘与刻盘，神机暗藏，精准推演阴盘奇门局。' => '支援時盤與刻盤，神機暗藏，精準推演陰盤奇門局。',

            'Sandbox 演示模式说明：' => 'Sandbox 演示模式說明：',
            '当前为沙盒测试环境。下方展示的排盘与解析均为系统预设的固定模拟数据，与您填写的测算信息完全无关，仅供预览界面排版效果。' => '當前為沙盒測試環境。下方展示的排盤與解析均為系統預設的固定模擬數據，與您填寫的測算資訊完全無關，僅供預覽介面排版效果。',
            '输入命主出生信息，系统将自动进行精准的运算。' => '輸入命主出生資訊，系統將自動進行精準的運算。',
            '选择您计划办理的重要事项及查询的时间范围，系统将为您挑选出最适合的黄道吉日。' => '選擇您計劃辦理的重要事項及查詢的時間範圍，系統將為您挑選出最適合的黃道吉日。',
            '输入男女双方出生信息，系统将自动进行精准的合婚运算。' => '輸入男女雙方出生資訊，系統將自動進行精準的合婚運算。',
            '输入甲乙双方出生信息，系统将自动进行精准的合盘运算。' => '輸入甲乙雙方出生資訊，系統將自動進行精準的合盤運算。',
            '男方信息' => '男方資訊',
            '男方命盘' => '男方命盤',
            '女方信息' => '女方資訊',
            '女方命盘' => '女方命盤',
            '甲方信息' => '甲方資訊',
            '甲方命盘' => '甲方命盤',
            '乙方信息' => '乙方資訊',
            '乙方命盘' => '乙方命盤',
            '命主姓名：'   => '命主姓名：',
            '男方姓名：'   => '男方姓名：',
            '宅主性别：'   => '宅主性別：',
            '宅主出生年农历 (阴历)：' => '宅主出生年農曆 (陰曆)：',
            '请输入男方姓名' => '請輸入男方姓名',
            '女方姓名：'   => '女方姓名：',
            '请输入女方姓名' => '請輸入女方姓名',
            '甲方姓名：'   => '甲方姓名：',
            '请输入甲方姓名' => '請輸入甲方姓名',
            '乙方姓名：'   => '乙方姓名：',
            '请输入乙方姓名' => '請輸入乙方姓名',
            '请输入姓名'   => '請輸入姓名',
            '本命年(出生年)：' => '本命年(出生年)：',
            '求测者'      => '求測者',
            '性别：'      => '性別：',
            '男性'        => '男性',
            '女性'        => '女性',
            '日期类型：' => '日期類型：',
            '公历 (阳历)' => '公曆 (陽曆)',
            '农历 (阴历)' => '農曆 (陰曆)',
            '问测日期：' => '問測日期：',
            '问测时辰：' => '問測時辰：',
            '起课日期：' => '起課日期：',
            '起课时辰：' => '起課時辰：',
            '出生日期：' => '出生日期：',
            '年' => '年',
            '第' => '第',
            '个月' => '個月',
            '月' => '月',
            '日' => '日',
            '分' => '分',
            '出生时辰：' => '出生時辰：',
            '未知分' => '未知分',
            '未知时' => '未知時',
            '真太阳时校准：' => '真太陽時校準：',
            '不使用' => '不使用',
            '使用真太阳时' => '使用真太陽時',
            '加载中...' => '載入中...',
            '请选择市' => '請選擇市',
            '请选择区' => '請選擇區',
            '排盘流派：' => '排盤流派：',
            '晚子时日柱算明天 (推荐)' => '晚子時日柱算明天 (推薦)',
            '晚子时日柱算当天' => '晚子時日柱算當天',
            '公历出生年：' => '公曆出生年：',
            '选择起卦方式：' => '選擇起卦方式：',
            '自动起卦 (推荐)' => '自動起卦 (推薦)',
            '自选时间起卦' => '自選時間起卦',
            '终身卦' => '終身卦',
            '手工指定六爻' => '手工指定六爻',
            '指定整数数字起卦' => '指定整數數字起卦',
            '单数起卦' => '單數起卦',
            '双数起卦 (上/下卦数)' => '雙數起卦 (上/下卦數)',
            '第六爻(上)：' => '第六爻(上)：',
            '第五爻：' => '第五爻：',
            '第四爻：' => '第四爻：',
            '第三爻：' => '第三爻：',
            '第二爻：' => '第二爻：',
            '第一爻(初)：' => '第一爻(初)：',
            '少阴' => '少陰',
            '少阳' => '少陽',
            '老阴' => '老陰',
            '老阳' => '老陽',
            '输入数字：' => '輸入數字：',
            '请输入起卦数字 (如: 88)' => '請輸入起卦數字 (如: 88)',
            '上卦数字：' => '上卦數字：',
            '上数' => '上數',
            '下卦数字：' => '下卦數字：',
            '下数' => '下數',
            '动爻计算是否加此时辰数' => '動爻計算是否加此時辰數',
            '起盘时间类型：' => '起盤時間類型：',
            '起盘日期：' => '起盤日期：',
            '起盘时辰：' => '起盤時辰：',
            '正在推演六爻神机...' => '正在推演六爻神機...',
            '正在推演梅花易数...' => '正在推演梅花易數...',
            '正在精算三元九运...' => '正在精算三元九運....',
            '摇卦抽签' => '搖卦抽籤',
            '天机流转，正在为您诚心摇卦...' => '天機流轉，正在為您誠心搖卦...',

            '立即排盘' => '立即排盤',
            '立即合婚' => '立即合婚',
            '立即合盘' => '立即合盤',
            '立即测算' => '立即測算',
            '正在计算中...' => '正在計算中...',

            '- 选择省份 -' => '- 選擇省份 -',
            '城市数据加载失败' => '城市數據載入失敗',
            '- 选择城市 -' => '- 選擇城市 -',
            '- 选择区县 -' => '- 選擇區縣 -',
            '市本级/全区' => '市本級/全區',

            // 地支翻译 (部分繁体写法不同)
            '子时' => '子時', '丑时' => '丑時', '寅时' => '寅時', '卯时' => '卯時',
            '辰时' => '辰時', '巳时' => '巳時', '午时' => '午時', '未时' => '未時',
            '申时' => '申時', '酉时' => '酉時', '戌时' => '戌時', '亥时' => '亥時',

            '排盘结果' => '排盤結果',
            '测算结果' => '測算結果',

            '基本信息' => '基本資訊',
            '星座：' => '星座：',
            '出生公历：' => '出生公曆：',
            '公历：' => '公曆：',
            '出生农历：' => '出生農曆：',
            '农历：' => '農曆：',
            '生肖：' => '生肖：',
            '节气：' => '節氣：',
            '马星：' => '馬星：',
            '月将：' => '月將：',
            '年命：' => '年命：',
            '行年：' => '行年：',
            '上一节气：' => '上一節氣：',
            '下一节气：' => '下一節氣：',
            '刻' => '刻',
            '旬首：' => '旬首：',
            '空亡：' => '空亡：',
            '生肖星座：' => '生肖星座：',
            '四柱八字：' => '四柱八字：',
            '四柱：' => '四柱：',
            '旬空：' => '旬空：',
            '定局：' => '定局：',
            '值符：' => '值符：',
            '值使：' => '值使：',
            '落' => '落',
            '宫' => '宮',
            '奇门遁甲盘' => '奇門遁甲盤',
            '马' => '馬',
            '符号颜色说明：' => '符號顏色說明：',
            '入墓' => '入墓',
            '击刑' => '擊刑',
            '门迫' => '門迫',
            '刑+墓' => '刑+墓',
            '命理格局：' => '命理格局：',
            '起运日期：' => '起運日期：',
            '交运日期：' => '交運日期：',
            '起运/交运：' => '起運/交運：',
            '年柱纳音：' => '年柱納音：',
            '日主天干为' => '日主天干為',
            '同类为' => '同類為',
            '异类为' => '異類為',
            '以' => '以',
            '肖' => '肖',
            '座' => '座',

            '为喜用神' => '為喜用神',
            '为忌神' => '為忌神',
            '五行参考：' => '五行參考：',
            '五行统计：' => '五行統計：',
            '金' => '金',
            '木' => '木',
            '水' => '水',
            '火' => '火',
            '土' => '土',
            '日柱论命' => '日柱論命',
            '暂无数据' => '暫無數據',
            '五行与纳音分析' => '五行與納音分析',
            '先天纳音' => '先天納音',
            '能量五行' => '能量五行',
            '财运分析' => '財運分析',
            '姻缘分析' => '姻緣分析',
            '运程与命运分析' => '運程與命運分析',
            '大运简批' => '大運簡批',
            '总体命运' => '總體命運',

            '主星' => '主星',
            '藏干' => '藏干',
            '衰旺' => '衰旺',
            '天干' => '天干',
            '地支' => '地支',
            '副星' => '副星',
            '星运' => '星運',
            '自坐' => '自坐',
            '空亡' => '空亡',
            '纳音' => '納音',
            '神煞' => '神煞',

            '四柱神煞' => '四柱神煞',
            '年柱：' => '年柱：',
            '月柱：' => '月柱：',
            '日柱：' => '日柱：',
            '时柱：' => '時柱：',
            '大运排盘' => '大運排盤',
            '大运' => '大運',
            '虚岁' => '虛歲',
            '始于' => '始於',
            '止于' => '止於',
            '大运神煞' => '大運神煞',

            '胎元命身：' => '胎元命身：',
            '胎息:' => '胎息:',
            '胎元:' => '胎元:',
            '命宫:' => '命宮:',
            '身宫:' => '身宮:',
            '胎息' => '胎息',
            '胎元' => '胎元',
            '命宫' => '命宮',
            '身宫' => '身宮',
            '年支同气' => '年支同氣',
            '月令合' => '月令合',
            '日干相合' => '日干相合',
            '天干五合' => '天干五合',
            '子女同步' => '子女同步',
            '合作合盘' => '合作合盤',
            '生意合盘' => '生意合盤',
            '财运合盘' => '財運合盤',
            '恋爱合盘' => '戀愛合盤',
            '运势合盘' => '運勢合盤',
            '健康合盘' => '健康合盤',

            '星宿信息：' => '星宿資訊：',
            '命卦信息：' => '命卦資訊：',
            '五行旺度：' => '五行旺度：',
            '起运交运：' => '起運交運：',
            '天干留意：' => '天干留意：',
            '地支留意：' => '地支留意：',
            '卦' => '卦',
            '命' => '命',
            '岁' => '歲',
            '司令:' => '司令:',
            '喜用神与五行能量深度分析' => '喜用神與五行能量深度分析',
            '阴阳参考：' => '陰陽參考：',
            '五行个数：' => '五行個數：',
            '党派分布：' => '黨派分佈：',
            '自党：' => '自黨：',
            '异党：' => '異黨：',
            '五行能量打分：' => '五行能量打分：',
            '金：' => '金：',
            '木：' => '木：',
            '水：' => '水：',
            '火：' => '火：',
            '土：' => '土：',
            '占比' => '佔比',
            '财运与姻缘分析' => '財運與姻緣分析',
            '一生总体命运与运程' => '一生總體命運與運程',
            '运程概括' => '運程概括',
            '命运总批' => '命運總批',
            '十年大运与流年详批' => '十年大運與流年詳批',
            '日柱、五行与纳音解析' => '日柱、五行與納音解析',
            '大运·事业' => '大運·事業',
            '大运·学业' => '大運·學業',
            '大运·财运' => '大運·財運',
            '大运·姻缘' => '大運·姻緣',
            '大运·健康' => '大運·健康',
            '大运·总运' => '大運·總運',
            '流年：' => '流年：',
            '小限：' => '小限：',
            '流年' => '流年',
            '流月' => '流月',
            '属性' => '屬性',
            '事业' => '事業',
            '学业' => '學業',
            '财运' => '財運',
            '姻缘' => '姻緣',
            '健康' => '健康',
            '总运' => '總運',
            '暂无大运流年数据' => '暫無大運流年數據',
            '大运流年流月动态流盘' => '大運流年流月動態流盤',
            '👈 左右滑动查看，点击可进行穿透查询' => '👈 左右滑動查看，點擊可進行穿透查詢',
            '胎命身辅助盘' => '胎命身輔助盤',
            '选大运' => '選大運',
            '选流年' => '選流年',
            '流日流时深度解析' => '流日流時深度解析',
            '正在穿透查询流日流时数据，请稍候...' => '正在穿透查詢流日流時數據，請稍候...',
            '获取数据失败：' => '獲取數據失敗：',
            '此月份暂无流日流时数据' => '此月份暫無流日流時數據',
            '点击展开12时辰' => '點擊展開12時辰',
            '当日留意：' => '當日留意：',
            '当日神煞：' => '當日神煞：',
            '该日暂无流时数据' => '該日暫無流時數據',
            '干支：' => '干支：',
            '纳音：' => '納音：',
            '时辰' => '時辰',
            '干支' => '干支',
            '十神' => '十神',
            '星运/自坐' => '星運/自坐',
            '留意' => '留意',
            '时' => '時',
            '姓名：' => '姓名：',
            '年龄：' => '年齡：',
            '阳历：' => '陽曆：',
            '命局：' => '命局：',
            '命宫：' => '命宮：',
            '头胎：' => '頭胎：',
            '您属于：' => '您屬於：',
            '身宫：' => '身宮：',
            '子斗：' => '子斗：',
            '流斗：' => '流斗：',
            '命四化：' => '命四化：',
            '命宫在：' => '命宮在：',
            '身宫在：' => '身宮在：',
            '命主：' => '命主：',
            '身主：' => '身主：',
            '紫微斗数批断' => '紫微斗數批斷',
            '紫微主曜' => '紫微主曜',
            '天府主曜' => '天府主曜',
            '辅曜批断' => '輔曜批斷',
            '紫微流盘专业设置' => '紫微流盤專業設置',
            '长生顺逆：' =>  '長生順逆：',
            '按年干阴阳 (推荐)' => '按年干陰陽 (推薦)',
            '全部顺排'  => '全部順排',
            '按照男女' => '按照男女',
            '大限顺逆：' => '大限順逆：',
            '阳男阴女顺,阴男阳女逆 (推荐)' => '陽男陰女順,陰男陽女逆 (推薦)',
            '男顺女逆' => '男順女逆',
            '闰月分界：' => '閏月分界：',
            '月中分界 (推荐)' => '月中分界 (推薦)',
            '作下月计算' => '作下月計算',
            '大限' => '大限',
            '童限' => '童限',
            '请先选择大限...' => '請先選擇大限...',
            '等待选择...' => '等待選擇...',
            '先天/大限盘' => '先天/大限盤',
            '流年盘' => '流年盤',
            '流月盘' => '流月盤',
            '流日盘' => '流日盤',
            '流时盘' => '流時盤',
            '获取流盘数据失败：' => '獲取流盤數據失敗：',
            '先天盘' => '先天盤',
            '大限盘' => '大限盤',
            '未找到有效的 gong_pan 数据' => '未找到有效的 gong_pan 數據',
            '合婚详细得分' => '合婚詳細得分',
            '合盘详细得分' => '合盤詳細得分',
            '说明：' => '說明：',
            '详批：' => '詳批：',
            '合盘总分：' => '合盤總分：',
            '合婚总分：' => '合婚總分：',
            '黄历日期：' => '黃曆日期：',
            '正在加载黄历数据，请稍候...' => '正在載入黃曆數據，請稍候...',
            '节气' => '節氣',
            '宜' => '宜',
            '忌' => '忌',
            '五行' => '五行',
            '冲煞' => '沖煞',
            '值神' => '值神',
            '建除十二神' => '建除十二神',
            '二十八星宿' => '二十八星宿',
            '彭祖百忌' => '彭祖百忌',
            '财神方位' => '財神方位',
            '喜神方位' => '喜神方位',
            '福神方位' => '福神方位',
            '贵神方位' => '貴神方位',
            '吉神宜趋：' => '吉神宜趨：',
            '凶神宜忌：' => '凶神宜忌：',
            '今日胎神：' => '今日胎神：',
            '本月胎神：' => '本月胎神：',
            '星宿歌诀：' => '星宿歌訣：',
            '时辰吉凶信息' => '時辰吉凶資訊',
            '时刻' => '時刻',
            '吉凶' => '吉凶',
            '时宜' => '時宜',
            '时忌' => '時忌',
            '财/喜神' => '財/喜神',
            '煞'=> '煞',
            '财:'=> '財:',
            '喜:' => '喜:',
            '吉日查询' => '吉日查詢',
            '查询范围：' => '查詢範圍：',
            '未来 7 天' => '未來 7 天',
            '未来半个月' => '未來半個月',
            '未来 1 个月' => '未來 1 個月',
            '未来 3 个月' => '未來 3 個月',
            '择吉事项：' => '擇吉事項：',
            '立即查询' => '立即查詢',
            '正在推演吉日中...' => '正在推演吉日中...',
            '迁徙 / 搬家' => '遷徙 / 搬家',
            '修造 / 装修' => '修造 / 裝修',
            '入宅' => '入宅',
            '纳采 / 订婚 / 结婚' => '納采 / 訂婚 / 結婚',
            '嫁娶 / 领证' => '嫁娶 / 領證',
            '求嗣 / 剖腹产' => '求嗣 / 剖腹產',
            '纳财' => '納財',
            '开市' => '開市',
            '交易' => '交易',
            '置产' => '置產',
            '动土' => '動土',
            '出行' => '出行',
            '安葬' => '安葬',
            '祭祀' => '祭祀',
            '祈福' => '祈福',
            '沐浴' => '沐浴',
            '订盟' => '訂盟',
            '纳婿' => '納婿',
            '修坟' => '修墳',
            '破土' => '破土',
            '立碑' => '立碑',
            '开生坟' => '開生墳',
            '合寿木' => '合壽木',
            '入殓' => '入殮',
            '移柩' => '移柩',
            '伐木' => '伐木',
            '掘井' => '掘井',
            '挂匾' => '掛匾',
            '栽种' => '栽種',
            '入学' => '入學',
            '理发' => '理髮',
            '会亲友' => '會親友',
            '赴任' => '赴任',
            '求医' => '求醫',
            '治病' => '治病',
            '未获取到有效的吉日数据，请尝试放宽查询范围。' => '未獲取到有效的吉日數據，請嘗試放寬查詢範圍。',
            '吉日查询概述' => '吉日查詢概述',
            '为您精选的黄道吉日' => '為您精選的黃道吉日',
            '在您选择的时间范围内，暂无符合该事项的绝对吉日。建议放宽时间范围重新查询。' => '在您選擇的時間範圍內，暫無符合該事項的絕對吉日。建議放寬時間範圍重新查詢。',
            '冲' => '沖',
            '择日指南' => '擇日指南',
            '查询黄道吉日时，最好先取日之宜忌，确定吉日后，再进一步通过老黄历查看当日各个时辰的吉凶（时之宜忌）。' => '查詢黃道吉日時，最好先取日之宜忌，確定吉日後，再進一步通過老黃曆查看當日各個時辰的吉凶（時之宜忌）。',
            '所谓心诚则灵，吉日测算结果为传统易学逻辑推演，仅供参考。重大事项建议结合自身实际情况统筹安排。' => '所謂心誠則靈，吉日測算結果為傳統易學邏輯推演，僅供參考。重大事項建議結合自身實際情況統籌安排。',
            '生肖流年每日运势' => '生肖流年每日運勢',
            '点击您的属相，精准洞悉今日、本周及本年度的财富、事业与感情走向。' => '點擊您的屬相，精準洞悉今日、本周及本年度的財富、事業與感情走向。',
            '正在推演生肖运势，请稍候...' => '正在推演生肖運勢，請稍候...',
            '今日运势' => '今日運勢',
            '明日运势' => '明日運勢',
            '本周运势' => '本周運勢',
            '本月运势' => '本月運勢',
            '本年运势' => '本年運勢',
            '速配生肖' => '速配生肖',
            '速配星座' => '速配星座',
            '提防星座' => '提防星座',
            '提防生肖' => '提防生肖',
            '幸运颜色' => '幸運顏色',
            '幸运数字' => '幸運數字',
            '幸运宝石' => '幸運寶石',
            '综合指数' => '綜合指數',
            '综合分数' => '綜合分數',
            '综合运势解析' => '綜合運勢解析',
            '爱情指数' => '愛情指數',
            '爱情运势解析' => '愛情運勢解析',
            '事业指数' => '事業指數',
            '事业运势解析' => '事業運勢解析',
            '财富指数' => '財富指數',
            '财富运势解析' => '財富運勢解析',
            '健康指数' => '健康指數',
            '健康运势解析' => '健康運勢解析',
            '八字每日运势' => '八字每日運勢',
            '喜用神分析' => '喜用神分析',
            '当日运势深度分析' => '當日運勢深度分析',
            '幸运首饰' => '幸運首飾',
            '开运宜食' => '開運宜食',
            '幸运方位' => '幸運方位',
            '今日适宜' => '今日適宜',
            '今日不宜' => '今日不宜',
            '综合吉凶' => '綜合吉凶',
            '运势分数' => '運勢分數',
            '今日运势解析' => '今日運勢解析',
            '爱情分数' => '愛情分數',
            '事业分数' => '事業分數',
            '财富分数' => '財富分數',
            '健康分数' => '健康分數',
            '塔罗星象占卜' => '塔羅星象占卜',
            '闭上双眼，在心中默念你的困惑，然后开启你的命运之牌。' => '閉上雙眼，在心中默念你的困惑，然後開啟你的命運之牌。',
            '第一步：选择占卜主题' => '第一步：選擇占卜主題',
            '恋爱婚姻' => '戀愛婚姻',
            '工作学业' => '工作學業',
            '人际财富' => '人際財富',
            '健康生活' => '健康生活',
            '其它综合' => '其它綜合',
            '第二步：选择塔罗牌阵' => '第二步：選擇塔羅牌陣',
            '一张牌占卜法 (1张)' => '一張牌占卜法 (1張)',
            '二选一牌阵 (2张)' => '二選一牌陣 (2張)',
            '圣三角牌阵 (3张 - 推荐)' => '聖三角牌陣 (3張 - 推薦)',
            '时光箭牌阵 (3张)' => '時光箭牌陣 (3張)',
            '四元素牌阵 (4张)' => '四元素牌陣 (4張)',
            '恋人金字塔 (4张)' => '戀人金字塔 (4張)',
            '五行牌阵 (5张)' => '五行牌陣 (5張)',
            '恋人牌阵 (5张)' => '戀人牌陣 (5張)',
            '大十字牌阵 (5张)' => '大十字牌陣 (5張)',
            '六芒星牌阵 (6张)' => '六芒星牌陣 (6張)',
            '复合牌阵 (6张)' => '複合牌陣 (6張)',
            '七行星牌阵 (7张)' => '七行星牌陣 (7張)',
            '九宫格牌阵 (9张)' => '九宮格牌陣 (9張)',
            '恋人关系深度牌阵 (9张)' => '戀人關係深度牌陣 (9張)',
            '凯尔特十字牌阵 (10张)' => '凱爾特十字牌陣 (10張)',
            '生命之树牌阵 (11张)' => '生命之樹牌陣 (11張)',
            '年运周期牌阵 (12张)' => '年運周期牌陣 (12張)',
            '洗牌并抽取卡牌' => '洗牌並抽取卡牌',
            '正在联结宇宙能量，洗牌中...' => '正在聯結宇宙能量，洗牌中...',
            '获取塔罗牌阵失败，请重新抽取。' => '獲取塔羅牌陣失敗，請重新抽取。',
            '时局能量：' => '時局能量：',
            '请依次点击下方的卡牌，揭开你的命运指引' => '請依次點擊下方的卡牌，揭開你的命運指引',
            '综合命运神谕' => '綜合命運神諭',
            '牌阵总览：' => '牌陣總覽：',
            '塔罗神谕：' => '塔羅神諭：',
            '— 卡牌详细启示 —' => '— 卡牌詳細啟示 —',
            '元素' => '元素',
            '牌面意象：' => '牌面意象：',
            '核心关键：' => '核心關鍵：',
            '【基础释义】' => '【基礎釋義】',
            '【主题剖析】' => '【主題剖析】',
            '【命运建议】' => '【命運建議】',
            '结束占卜，重置牌阵' => '結束占卜，重置牌陣',
            '命运之牌已全部揭晓，请查阅下方神谕' => '命運之牌已全部揭曉，請查閱下方神諭',
            '流年财运精批' => '流年財運精批',
            '洞察先天财富格局，精准剖析流年财运起伏与投资时机。' => '洞察先天財富格局，精準剖析流年財運起伏與投資時機。',
            '测算目标流年：' => '測算目標流年：',
            '年流年财运分析' => '年流年財運分析',
            '立即测算财运' => '立即測算財運',
            '正在测算财富格局...' => '正在測算財富格局...',
            '大运流年：' => '大運流年：',
            '八字强弱：' => '八字強弱：',
            '流年财运深度解析' => '流年財運深度解析',
            '流年整体财运指数' => '流年整體財運指數',
            '先天财运格局' => '先天財運格局',
            '流年财星剖析' => '流年財星剖析',
            '类别：' => '類別：',
            '显隐：' => '顯隱：',
            '命理干支作用' => '命理干支作用',
            '大运与流年：' => '大運與流年：',
            '身强与身弱：' => '身強與身弱：',
            '流年与命支：' => '流年與命支：',
            '流年财库信息' => '流年財庫資訊',
            '流年无财库刑冲相关信息' => '流年無財庫刑沖相關資訊',
            '流年每月财运及投资提示' => '流年每月財運及投資提示',
            '财富化解与提升护航' => '財富化解與提升護航',
            '漏财风险防范提示：' => '漏財風險防範提示：',
            '今年财务尚属平稳，正常开销即可。' => '今年財務尚屬平穩，正常開銷即可。',
            '提升财运执行建议：' => '提升財運執行建議：',
            '多劳多得，顺势而为。' => '多勞多得，順勢而為。',
            '大师总评寄语：' => '大師總評寄語：',
            '祝缘主财源广进，万事如意。' => '祝緣主財源廣進，萬事如意。',
            '周易金钱课占卜' => '周易金錢課占卜',
            '古法掷钱，六爻成卦。' => '古法擲錢，六爻成卦。',
            '请静心屏气，在心中默念您的困惑，诚心点击下方按钮起卦。心诚则灵。' => '請靜心屏氣，在心中默念您的困惑，誠心點擊下方按鈕起卦。心誠則靈。',
            '🙏 诚心起卦' => '🙏 誠心起卦',
            '三枚金钱半空舞，正在为您请卦...' => '三枚金錢半空舞，正在為您請卦...',
            '本卦卦象解析' => '本卦卦象解析',
            '象曰' => '象曰',
            '解卦' => '解卦',
            '所问之事断语' => '所問之事斷語',
            '事业谋望' => '事業謀望',
            '经商财运' => '經商財運',
            '求名学业' => '求名學業',
            '外出动向' => '外出動向',
            '婚恋姻缘' => '婚戀姻緣',
            '谋事决策' => '謀事決策',
            '测算告诫' => '測算告誡',
            '返回重新摇卦' => '返回重新搖卦',
            '测算告诫与免责声明' => '測算告誡與免責聲明',
            '命运之说，信而不迷。若测算不如人意，缘主亦无需气馁，正所谓“一命二运三风水，积善修身可转运”。本平台所有排盘与测算均依托传统典籍算法生成，仅供民俗文化交流与休闲娱乐参考，不具备任何法律或专业指导效力。请缘主理性看待，趋吉避凶，顺势而为。' => '命運之說，信而不迷。若測算不如人意，緣主亦無需氣餒，正所謂「一命二運三風水，積善修身可轉運」。本平臺所有排盤與測算均依托傳統典籍算法生成，僅供民俗文化交流與休閒娛樂參考，不具備任何法律或專業指導效力。請緣主理性看待，趨吉避凶，順勢而為。',
            '奇门起局高级设置' => '奇門起局高級設置',
            '阴盘奇门起局设置' => '陰盤奇門起局設置',
            '大六壬起局设置' => '大六壬起局設置',
            '点击展开/收起' => '點擊展開/收起',
            '贵人方式：' => '貴人方式：',
            '甲戊庚牛羊 (默认)' => '甲戊庚牛羊 (預設)',
            '甲羊戊庚牛' => '甲羊戊庚牛',
            '贵人行运：' => '貴人行運：',
            '自动计算 (默认)' => '自動計算 (預設)',
            '自动卯酉分 (默认)' => '自動卯酉分 (預設)',
            '昼贵人' => '晝貴人',
            '夜贵人' => '夜貴人',
            '夜' => '夜',
            '昼' => '晝',
            '定地分方式：' => '定地分方式：',
            '选定' => '選定',
            '报数' => '報數',
            '随机数 (默认)' => '隨機數 (預設)',
            '请输入起课数字（例如：8）' => '請輸入起課數字（例如：8）',
            '立即起课' => '立即起課',
            '正在推演大六壬金口诀...' => '正在推演大六壬金口訣...',

            '三传配干：' => '三傳配干：',
            '日旬遁干 (默认)' => '日旬遁干 (預設)',
            '时旬遁干' => '時旬遁干',
            '是否排行年：' => '是否排行年：',
            '否 (默认)' => '否 (預設)',
            '是' => '是',
            '否' => '否',
            '排演大六壬' => '排演大六壬',
            '六壬神机推演中...' => '六壬神機推演中...',

            '盘类型：' => '盤類型：',
            '时盘 (默认)' => '時盤 (預設)',
            '刻盘 (精确到刻)' => '刻盤 (精確到刻)',
            '刻盘流派：' => '刻盤流派：',
            '从当前时辰第0分钟起刻' => '從當前時辰第0分鐘起刻',
            '从上个时辰尾第55分钟起刻' => '從上個時辰尾第55分鐘起刻',
            '转盘奇门 (默认)' => '轉盤奇門 (預設)',
            '飞盘奇门' => '飛盤奇門',
            '飞盘排法：' => '飛盤排法：',
            '全部顺排 (默认)' => '全部順排 (預設)',
            '阴顺阳逆' => '陰順陽逆',
            '起局方法：' => '起局方法：',
            '拆补法 (默认)' => '拆補法 (預設)',
            '置闰法' => '置閏法',
            '茅山道人法' => '茅山道人法',
            '暗干起法：' => '暗干起法：',
            '值使门起暗干 (默认)' => '值使門起暗干 (預設)',
            '门地盘起暗干' => '門地盤起暗干',
            '手动选局 (非必要不建议)：' => '手動選局 (非必要不建議)：',
            '自动起局 (推荐)' => '自動起局 (推薦)',
            '阳遁' => '陽遁',
            '局' => '局',
            '阴遁' => '陰遁',
            '立即起局排盘' => '立即起局排盤',
            '奇门神机推演中...' => '奇門神機推演中...',
            '排演阴盘奇门' => '排演陰盤奇門',
            '阴盘奇门推演中...' => '陰盤奇門推演中...',
            '排盘简批' => '排盤簡批',
            '宫局' => '宮局',
            '宫局解析' => '宮局解析',
            '落宫解析' => '落宮解析',
            '阴盘奇门局' => '陰盤奇門局',
            '大六壬神机盘' => '大六壬神機盤',
            '天地神盘' => '天地神盤',
            '大六壬四课' => '大六壬四課',
            '大六壬三传' => '大六壬三傳',
            '大六壬简批断语' => '大六壬簡批斷語',
            '课体：' => '課體：',
            '课义：' => '課義：',
            '解曰：' => '解曰：',
            '断曰：' => '斷曰：',
            '天气' => '天氣',
            '谋事' => '謀事',
            '家宅' => '家宅',
            '婚姻' => '婚姻',
            '疾病' => '疾病',
            '怀孕' => '懷孕',
            '求财' => '求財',
            '寻人' => '尋人',
            '失物' => '失物',
            '行人' => '行人',
            '起卦：' => '起卦：',
            '主卦：' => '主卦：',
            '互卦' => '互卦',
            '变卦' => '變卦',
            '错卦' => '錯卦',
            '综卦' => '綜卦',
            '当前' => '當前',
            '发展' => '發展',
            '结果' => '結果',
            '对立' => '對立',
            '另一视角' => '另一視角',
            '变卦：' => '變卦：',
            '卦身：' => '卦身：',
            '神煞：' => '神煞：',
            '驿马' => '驛馬',
            '桃花' => '桃花',
            '日禄' => '日祿',
            '贵人' => '貴人',
            '元运：' => '元運：',
            '山向：' => '山向：',
            '飞星盘' => '飛星盤',
            '九宫飞星批示' => '九宮飛星批示',

            '一运' => '一運',
            '二运' => '二運',
            '三运' => '三運',
            '四运' => '四運',
            '五运' => '五運',
            '六运' => '六運',
            '七运' => '七運',
            '八运' => '八運',
            '九运' => '九運',
            '壬山丙向' => '壬山丙向',
            '子山午向' => '子山午向',
            '癸山丁向' => '癸山丁向',
            '丑山未向' => '丑山未向',
            '艮山坤向' => '艮山坤向',
            '寅山申向' => '寅山申向',
            '甲山庚向' => '甲山庚向',
            '卯山酉向' => '卯山酉向',
            '乙山辛向' => '乙山辛向',
            '辰山戌向' => '辰山戌向',
            '巽山乾向' => '巽山乾向',
            '巳山亥向' => '巳山亥向',
            '丙山壬向' => '丙山壬向',
            '午山子向' => '午山子向',
            '丁山癸向' => '丁山癸向',
            '未山丑向' => '未山丑向',
            '坤山艮向' => '坤山艮向',
            '申山寅向' => '申山寅向',
            '庚山甲向' => '庚山甲向',
            '酉山卯向' => '酉山卯向',
            '辛山乙向' => '辛山乙向',
            '戌山辰向' => '戌山辰向',
            '乾山巽向' => '乾山巽向',
            '亥山巳向' => '亥山巳向',
            '兼向(是否用替)：' => '兼向(是否用替)：',
            '排龙诀：' => '排龍訣：',
            '排龙诀' => '排龍訣',
            '水口方位：' => '水口方位：',
            '流年命盘：' => '流年命盤：',
            '农历流年' => '農曆流年',
            '农历流月' => '農曆流月',
            '水口在' => '水口在',
            '流年流月命盘' => '流年流月命盤',
            '命卦：' => '命卦：',
            '左辅' => '左輔',
            '贪狼' => '貪狼',
            '武曲' => '武曲',
            '巨门' => '巨門',
            '右弼' => '右弼',
            '壬' => '壬',
            '子' => '子',
            '癸' => '癸',
            '丑' => '丑',
            '艮' => '艮',
            '寅' => '寅',
            '甲' => '甲',
            '卯' => '卯',
            '乙' => '乙',
            '辰' => '辰',
            '巽' => '巽',
            '巳' => '巳',
            '丙' => '丙',
            '午' => '午',
            '丁' => '丁',
            '未' => '未',
            '坤' => '坤',
            '申' => '申',
            '庚' => '庚',
            '酉' => '酉',
            '辛' => '辛',
            '戌' => '戌',
            '乾' => '乾',
            '亥' => '亥',
            '六爻排盘' => '六爻排盤',
            '六神' => '六神',
            '伏神' => '伏神',
            '六亲' => '六親',
            '世' => '世',
            '应' => '應',
            '象曰：' => '象曰：',
            '爻辞：' => '爻辭：',
            '解卦：' => '解卦：',
            '梅花神机断' => '梅花神機斷',
            '高级展开：错卦与综卦' => '高級展開：錯卦與綜卦',
            '平' => '平',
            '换将方式：' => '換將方式：',
            '交节换将 (默认)' => '交節換將 (預設)',
            '中气换将' => '中氣換將',
            '神将' => '神將',
            '用爻' => '用爻',
            '旺衰' => '旺衰',
            '四位'  => '四位',
            '人元' => '人元',
            '贵神' => '貴神',
            '将神' => '將神',
            '地分' => '地分',
            '金口诀属于高阶数术体系，本系统提供专业级原盘起课数据，具体吉凶断事请结合易理推演。' => '金口訣屬於高階數術體系，本系統提供專業級原盤起課數據，具體吉凶斷事請結合易理推演。',
            '返回重排' => '返回重排',
            '返回重测' => '返回重測',
            '您掷出随机数：' => '您擲出隨機數：',
            '卦名：' => '卦名：',
            '无' => '無',
            '吉凶：' => '吉凶：',
            '凶吉' => '凶吉',
            '未知' => '未知',
            '卦曰：' => '卦曰：',
            '解曰' => '解曰',
            '解卦信息' => '解卦資訊',
            '运势' => '運勢',
            '财富' => '財富',
            '感情' => '感情',
            '身体' => '身體',
            '神鬼' => '神鬼',
            '佛祖灵签' => '佛祖靈籤',
            '观音灵签' => '觀音靈籤',
            '吕祖灵签' => '呂祖靈籤',
            '妈祖灵签' => '媽祖靈籤',
            '诸葛灵签' => '諸葛靈籤',
            '月老灵签' => '月老靈籤',
            '佛光普照，指引迷途。请清心定神，默念所求之事。' => '佛光普照，指引迷途。請清心定神，默念所求之事。',
            '诚心求签' => '誠心求籤',
            '正在为您求取佛祖灵签...' => '正在為您求取佛祖靈籤...',
            '抽签结果' => '抽籤結果',
            '您抽出佛祖灵签第：' => '您抽出佛祖靈籤第：',
            '签' => '籤',
            '签曰：' => '籤曰：',
            '签诗：' => '籤詩：',
            '签语：' => '籤語：',
            '解签：' => '解籤：',
            '解签信息' => '解籤資訊',
            '返回重求' => '返回重求',
            '岁君' => '歲君',
            '生意' => '生意',
            '谋望' => '謀望',
            '出外' => '出外',
            '开铺' => '開鋪',
            '合伙' => '合夥',
            '大慈大悲，救苦救难。菩萨垂迹，为您解答心中疑惑。' => '大慈大悲，救苦救難。菩薩垂跡，為您解答心中疑惑。',
            '正在为您求取观音灵签...' => '正在為您求取觀音靈籤...',
            '您抽出观音灵签第：' => '您抽出觀音靈籤第：',
            '宫位：' => '宮位：',
            '仙机' => '仙機',
            '详解' => '詳解',
            '剑仙慈悲，黄粱指迷。进退不决之时，求纯阳祖师赐签。' => '劍仙慈悲，黃粱指迷。進退不決之時，求純陽祖師賜籤。',
            '正在为您求取吕祖灵签...' => '正在為您求取呂祖靈籤...',
            '您抽出吕祖灵签第：' => '您抽出呂祖靈籤第：',
            '签文：' => '籤文：',
            '诗曰：' => '詩曰：',
            '钱财' => '錢財',
            '自身' => '自身',
            '开业' => '開業',
            '迁居' => '遷居',
            '六甲' => '六甲',
            '诉讼' => '訴訟',
            '海神护佑，平风息浪。祈求天后圣母保佑平安顺遂。' => '海神護佑，平風息浪。祈求天后聖母保佑平安順遂。',
            '正在为您求取妈祖灵签...' => '正在為您求取媽祖靈籤...',
            '您抽出妈祖灵签第：' => '您抽出媽祖靈籤第：',
            '千里姻缘一线牵。请在心中默念意中人，求月老赐良缘。' => '千里姻緣一線牽。請在心中默念意中人，求月老賜良緣。',
            '正在为您求取月老灵签...' => '正在為您求取月老靈籤...',
            '您抽出月老灵签第：' => '您抽出月老靈籤第：',
            '解签' => '解籤',
            '神机妙算，决胜千里。进退不决之时，借孔明智慧一用。' => '神機妙算，決勝千里。進退不決之時，借孔明智慧一用。',
            '正在为您求取诸葛灵签...' => '正在為您求取諸葛靈籤...',
            '您抽出诸葛灵签第：' => '您抽出諸葛靈籤第：',
            '注解：' => '註解：',
            '功名' => '功名',
            '官司' => '官司',
            '丁口' => '丁口',
            '田畜' => '田畜',

        ];

        return $common_dict[$text] ?? $text;
    }

    /**
     * 输出通用的测算告诫/免责声明 HTML (全局独立样式版)
     */
    protected function get_disclaimer_html() {
        $title = $this->t('测算告诫与免责声明');
        $content = $this->t('命运之说，信而不迷。若测算不如人意，缘主亦无需气馁，正所谓“一命二运三风水，积善修身可转运”。本平台所有排盘与测算均依托传统典籍算法生成，仅供民俗文化交流与休闲娱乐参考，不具备任何法律或专业指导效力。请缘主理性看待，趋吉避凶，顺势而为。');

        // 采用专属的 .yfj-global-disclaimer 命名空间，自带 <style> 隔离，保证在任何模块调用都不变形
        return <<<HTML
<style>
    .yfj-global-disclaimer {
        margin-top: 30px;
        border: 1px solid #e5d9c5;
        border-radius: 6px;
        background: transparent;
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "KaiTi", "STKaiti", serif;
        overflow: hidden;
        clear: both;
    }
    .yfj-global-disclaimer-header {
        color: #8a7b6a;
        background: rgba(229, 217, 197, 0.2);
        font-size: 13px;
        padding: 10px 15px;
        border-bottom: 1px dashed #e5d9c5;
        display: flex;
        align-items: center;
        gap: 6px;
        font-weight: bold;
    }
    .yfj-global-disclaimer-body {
        font-size: 12px;
        color: #8a7b6a;
        line-height: 1.6;
        padding: 12px 15px;
        text-align: justify;
    }
    .yfj-global-disclaimer-body p {
        margin: 0;
        padding: 0;
    }
</style>

<div class="yfj-global-disclaimer">
    <div class="yfj-global-disclaimer-header">
        <span class="dashicons dashicons-shield" style="font-size: 14px; width: 14px; height: 14px; line-height: 14px;"></span> {$title}
    </div>
    <div class="yfj-global-disclaimer-body">
        <p>{$content}</p>
    </div>
</div>
HTML;
    }
}