<?

$path = ".";
require_once("$path/assets/func/funcGlobal.php");
require_once("$path/assets/func/funcRegionPreview.php");
header('Content-Type: application/xml; charset=utf-8');

// 지역 허브/서브 페이지(26개)는 golftours_mainmenu의 날짜가 아니라 실제 콘텐츠 테이블
// (golftours_mkt_region/_intro)의 날짜를 써야 한다 — 메뉴 날짜는 실제 소개글/SEO 수정과
// 무관해서 2025-12-31 같은 오래된 값이 그대로 남아있던 문제가 있었다(2026-10-21 발견).
// 아래 두 메뉴 루프에서는 이 경로들을 건너뛰고, 대신 맨 끝에서 rpSitemapUrls()로 추가한다.
$regionManagedPaths = array();
foreach(rpSitemapUrls() as $ru){ $regionManagedPaths[] = $ru['path']; }

// 메인메뉴
$qr = $mysqli->query(" select url,date,m_date,LEFT(date,10) as date_w,LEFT(m_date,10) as date_m from golftours_mainmenu where url!='#' and c_val='1' ");
while($col = mysqli_fetch_array($qr)){

	if(in_array(urldecode(parse_url($col[url], PHP_URL_PATH)), $regionManagedPaths, true)){ continue; }

	$s = new DateTime($col[date_w]);
	$m = new DateTime($col[date_m]);

	$loc = htmlspecialchars($col[url], ENT_XML1);

	if( $m >= $s ){

		$date_m = explode(" ",$col[m_date]);
		$update = $date_m[0]."T".$date_m[1];

		$list .="
		<url>
		  <loc>$loc</loc>
		  <lastmod>$update+09:00</lastmod>
		</url>
		";
	}else{
		$date_w = explode(" ",$col[date]);
		$update = $date_w[0]."T".$date_w[1];

		$list .="
		<url>
		  <loc>$loc</loc>
		  <lastmod>$update+09:00</lastmod>
		</url>
		";
	}

}

// 서브메뉴
$qr = $mysqli->query(" select url,date,m_date,LEFT(date,10) as date_w,LEFT(m_date,10) from golftours_mainmenu where url!='#' and c_val!='1' ");
while($col = mysqli_fetch_array($qr)){

	if(in_array(urldecode(parse_url($col[url], PHP_URL_PATH)), $regionManagedPaths, true)){ continue; }

	$s = new DateTime($col[date_w]);
	$m = new DateTime($col[date_m]);

	$loc = htmlspecialchars($col[url], ENT_XML1);

	if( $m >= $s ){

		$date_m = explode(" ",$col[m_date]);
		$update = $date_m[0]."T".$date_m[1];

		$list .="
		<url>
		  <loc>$loc</loc>
		  <lastmod>$update+09:00</lastmod>
		</url>
		";
	}else{

		$date_w = explode(" ",$col[date]);
		$update = $date_w[0]."T".$date_w[1];

		$list .="
		<url>
		  <loc>$loc</loc>
		  <lastmod>$update+09:00</lastmod>
		</url>
		";
	}

}

// 상품 url
$qr = $mysqli->query(" select no,date,m_date,LEFT(date,10) as date_w,m_date,LEFT(m_date,10) as date_m,ukey,cate1,cate2,filename from golftours_tour where brand='vietnam' and visible='Y' order by no desc ");
$count = mysqli_num_rows($qr);

$i = 0;

while($col = mysqli_fetch_array($qr)){

	$s = new DateTime($col[date_w]);
	$m = new DateTime($col[date_m]);
	
	$cate1 = $col[cate1];
	$cate2 = $col[cate2];

	$ukey = $col[ukey];
	$filename = $col[filename];
	if($filename == ""){ $mainkey = $ukey;}else{ $mainkey = $filename;}

	$loc = htmlspecialchars("$homeurl/$cate1/$cate2/$mainkey", ENT_XML1);

	if( $m >= $s ){

		$date_m = explode(" ",$col[m_date]);
		$update = $date_m[0]."T".$date_m[1];

		$list .="
		<url>
		  <loc>$loc</loc>
		  <lastmod>$update+09:00</lastmod>
		</url>
		";

	}else{

		$date_w = explode(" ",$col[date]);
		$update = $date_w[0]."T".$date_w[1];

		$list .="
		<url>
		  <loc>$loc</loc>
		  <lastmod>$update+09:00</lastmod>
		</url>
		";
	}

	$i++;
}

// 지역 허브/서브 페이지(26개) - 위 메뉴 루프에서는 건너뛰고 여기서 실제 콘텐츠 날짜로 추가
foreach(rpSitemapUrls() as $ru){
	$loc = htmlspecialchars("$homeurl".$ru['path'], ENT_XML1);
	$list .="
	<url>
	  <loc>$loc</loc>
	  <lastmod>{$ru['lastmod']}</lastmod>
	</url>
	";
}

$xml_start = '<?xml version="1.0" encoding="UTF-8"?>';
echo("$xml_start");

?>

<urlset
      xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9
            http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
<?
echo("$list");
?>

</urlset>