#!/usr/bin/env python3
"""Check AJAX content details"""
from playwright.sync_api import sync_playwright
import json

with sync_playwright() as p:
    browser = p.chromium.launch(headless=True)
    context = browser.new_context(
        user_agent='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
    )
    page = context.new_page()
    page.goto('http://www.njls.gov.cn/lsqrmzf/214/228/index_17658.html',
              wait_until='networkidle', timeout=30000)
    
    # Get AJAX data from page 1
    result = page.evaluate("""
        (async function() {
            var params = {
                'index': 'wzqsearch-v20190124',
                'type': 'infomation',
                'siteId': '7',
                'pageSize': '20',
                'orderProperty': 'DOCRELTIME',
                'orderDirection': 'desc',
                'filter[SITEID]': '7',
                'filter[CHANNELID]': '23512',
                'filter[GROUPCAT]': '228',
                'pageNumber': '1'
            };
            var url = 'http://www.njls.gov.cn/igs/front/search/publish/data/list.html?';
            var qs = Object.keys(params).map(k => k + '=' + encodeURIComponent(params[k])).join('&');
            var resp = await fetch(url + qs);
            var data = await resp.json();
            var row = data.rows[0];
            return JSON.stringify({
                title: row.DOCTITLE,
                url: row.DOCPUBURL,
                date: row.DOCRELTIME,
                dept: row.PUBLISHDEPT,
                contentLen: row.DOCCONTENT ? row.DOCCONTENT.length : 0,
                contentStart: row.DOCCONTENT ? row.DOCCONTENT.substring(0, 300) : null,
                docid: row.DOCID
            });
        })()
    """)
    print('ROW1:', result)
    
    # Also visit a detail page to see its structure
    detail = context.new_page()
    detail.goto('http://www.njls.gov.cn/lsqrmzf/202607/t20260706_5872000.html',
                wait_until='networkidle', timeout=30000)
    
    detail_result = detail.evaluate("""
        (function() {
            var info = {};
            var title = document.querySelector('title');
            info.title = title ? title.textContent.trim() : '';
            
            // Look for content div
            var content = document.querySelector('.content, .article-content, .TRS_Editor, #zoomcon, .Custom_UnionStyle, .conTxt');
            if (!content) {
                // Check all divs
                var divs = document.querySelectorAll('div');
                for (var i = 0; i < divs.length; i++) {
                    var cls = divs[i].className || '';
                    if (cls.indexOf('content') !== -1 || cls.indexOf('article') !== -1 || cls.indexOf('TRS') !== -1) {
                        content = divs[i];
                        info.contentClass = cls;
                        break;
                    }
                }
            }
            if (content) {
                info.contentClass = content.className;
                info.contentText = content.textContent.substring(0, 300);
            }
            
            return JSON.stringify(info);
        })()
    """)
    print('DETAIL:', detail_result)
    
    context.close()
    browser.close()
