<?php
// vpnlink_platform_notice_api.php - 앱 전용 통신판매중개 플랫폼 안내문 반환 API
// 원본은 g5_content(내용관리)의 vplat_* 항목이며, 관리자모드 > 환경설정 > 내용관리에서 수정하면
// 웹(extend/vpnlink_notice.php)과 이 API를 통해 앱에 동일하게 반영된다.
header('Content-Type: application/json; charset=utf-8');
include_once('./_common.php');

// 안내문 HTML을 앱 TextView용 플레인텍스트로 변환 (목록 항목은 "• " 글머리표 유지)
function vplat_html_to_plain($html)
{
    if (!$html) return '';
    $html = preg_replace('/<style[^>]*>.*?<\/style>/si', '', $html);
    $html = preg_replace('/<script[^>]*>.*?<\/script>/si', '', $html);
    $html = preg_replace('/<li[^>]*>/i', "\n• ", $html);
    $html = preg_replace('/<\/?(h[1-6]|p|div|ul|ol|br|tr)[^>]*>/i', "\n", $html);
    $html = strip_tags($html);
    $html = html_entity_decode($html, ENT_QUOTES | ENT_HTML5, 'UTF-8');
    $html = preg_replace('/[ \t]+/', ' ', $html);
    $html = preg_replace('/\n[ \t]+/', "\n", $html);
    $html = preg_replace('/[ \t]+\n/', "\n", $html);
    $html = preg_replace('/\n{2,}/', "\n", $html);
    return trim($html);
}

$response = array('success' => false, 'notices' => array(), 'lang' => 'ko');

if (!function_exists('vpnlink_platform_notice_defaults') || !function_exists('vpnlink_platform_notice_row')) {
    $response['message'] = 'notice library unavailable';
    echo json_encode($response);
    exit;
}

$defaults = vpnlink_platform_notice_defaults();
$keys = array('list', 'item', 'cart', 'order', 'orderdone', 'role');

foreach ($keys as $key) {
    if (!isset($defaults[$key])) continue;
    $def = $defaults[$key];
    $row = vpnlink_platform_notice_row('vplat_'.$key, $def['subject'], $def['content']);

    $subject = trim($row['co_subject']) !== '' ? $row['co_subject'] : $def['subject'];
    $content = trim($row['co_content']) !== '' ? $row['co_content'] : $def['content'];
    if (isset($row['co_html']) && !$row['co_html']) {
        $text = trim($content);
    } else {
        $text = vplat_html_to_plain($content);
    }

    $response['notices'][$key] = array(
        'subject' => strip_tags($subject),
        'text'    => $text,
    );
}

$response['success'] = count($response['notices']) > 0;
echo json_encode($response);
