#!/usr/bin/perl
BEGIN{ $| = 1; print "Content-type: text/xml\n\n"; open(STDERR, ">&STDOUT"); }


#----------------------------------------
#初期ライブラリ読み込み
$initfile='./cgi/init.cgi';

if($initfile){
	if(!-e $initfile){
		&error($initfile.'がありません。');
	}
	require "$initfile";
} 



#----------------------------------------
#sitemap更新
my @sitemap=();


#----------------------------------------
#メインカテゴリ
open FILE,"./cgi/log/category.log" || &error("categorylogが開けません。");
$hd=<FILE>;
while(<FILE>){
	($no,$tm,$file_name)=split(/,/,$_);
	if($file_name eq "index"){
		push(@sitemap,"$site");
	}elsif($file_name){
		push(@sitemap,"$site$file_name.html");
	}
}
close FILE;
open FILE,"./cgi/log/free.log" || &error("freelogが開けません。");
$hd=<FILE>;
while(<FILE>){
	my ($no,$tm,$file_name,$cate_name,$midasi,$msize,$des,$key,$glink,$gwin,$img5,$gtxt,$gname,$blockname,$blockimg,$blockkiji,$show,$waku,$ptitle,$textlink,$motoimg,$motoonm_img,$cate_txt,$syurui,$imghtml1,$imghtml2,$imgset1,$imgset2,$imghtml1src,$imghtml2src,$smart_show,$htmlhead,$htmlbodyup,$htmlbodydw,$catchcopy,$catchcolor,$catchback,$catchcopylcr,$catchsize,$catchffamily,$imgcatch,$imgcatch2,$titletype,$catchcopysp,$catchcolorsp,$catchbacksp,$catchcopylcrsp,$catchsizesp,$catchffamilysp,$imgcatchsp,$imgcatchsp2,$titletypesp,$smart_show_link,$block_show_link,$imgcatch2_name,$imgcatchsp2_name,$freenum,$snsbutton,$snslink)=split(/,/,$_);

	if($file_name && $smart_show eq 'sp'){
		push(@sitemap,$site."smartphone/$file_name.html");
	}else{
		push(@sitemap,"$site$file_name.html");
	}
}
close FILE;

#----------------------------------------
#子カテゴリ
foreach $line ( @CATEGORY ) { 
	$catecnt++;
	my ($name,$clink) = split(/\=\>/,$line);
	if($name eq '基本カテゴリ'){next;}
	$clink =~ s/$site//ig;
	$clink =~ s/\/cgi\/admin\.cgi//ig;
	
	#navi
	open FILE,"./$clink/cgi/log/category.log" || &error("categorylogが開けません。");
	$hd=<FILE>;
	while(<FILE>){
		my ($no,$tm,$file_name,$cate_name,$cate_img,$cate_txt,$syurui,$midasi,$msize,$onm_img,$onc_img,$nolimg,$des,$key,$glink,$gwin,$img5,$gtxt,$gname,$blockname,$blockimg,$blockkiji,$show,$waku,$ptitle,$textlink,$imghtml1,$imghtml2,$imgset1,$imgset2,$imghtml1src,$imghtml2src,$smart_show,$htmlhead,$htmlbodyup,$htmlbodydw)=split(/,/,$_);
		if($file_name && $smart_show eq 'sp'){
			if($file_name eq "index"){
				push(@sitemap,$site."smartphone/$clink/");
			}elsif($file_name){
				push(@sitemap,$site."smartphone/$clink/$file_name.html");
			}
		}elsif($file_name){
			if($file_name eq "index"){
				push(@sitemap,"$site$clink/");
			}elsif($file_name){
				push(@sitemap,"$site$clink/$file_name.html");
			}
		}
		
	}
	close FILE;
	#free
	open FILE,"./$clink/cgi/log/free.log" || &error("freelogが開けません。");
	$hd=<FILE>;
	while(<FILE>){
		my ($no,$tm,$file_name,$cate_name,$midasi,$msize,$des,$key,$glink,$gwin,$img5,$gtxt,$gname,$blockname,$blockimg,$blockkiji,$show,$waku,$ptitle,$textlink,$motoimg,$motoonm_img,$cate_txt,$syurui,$imghtml1,$imghtml2,$imgset1,$imgset2,$imghtml1src,$imghtml2src,$smart_show,$htmlhead,$htmlbodyup,$htmlbodydw,$catchcopy,$catchcolor,$catchback,$catchcopylcr,$catchsize,$catchffamily,$imgcatch,$imgcatch2,$titletype,$catchcopysp,$catchcolorsp,$catchbacksp,$catchcopylcrsp,$catchsizesp,$catchffamilysp,$imgcatchsp,$imgcatchsp2,$titletypesp,$smart_show_link,$block_show_link,$imgcatch2_name,$imgcatchsp2_name,$freenum,$snsbutton,$snslink)=split(/,/,$_);
		if($file_name && $smart_show eq 'sp'){
			push(@sitemap,$site."smartphone/$clink/$file_name.html");
		}elsif($file_name){
			push(@sitemap,"$site$clink/$file_name.html");
		}
	}
	close FILE;
}

#----------------------------------------
#news
open FILE,"cgi/log/news.log";
my @news=<FILE>;
close FILE;

$newsmax = @news;
if($newsmax>1){
	push(@sitemap,$site."news.cgi");
}


#----------------------------------------
#blog
if($linksystem_domain){


	if(-f "./businessblog"){
		opendir(DIR,'./cgi/log/accessup/comment');
		my @LOGLIST = readdir(DIR);
		closedir(DIR);

		foreach $line(@LOGLIST){
			if (! -f "./cgi/log/accessup/comment/$line" || $line !~ /log$/ || $line eq 'lot.log'){next;}
			open BLOG,"./cgi/log/accessup/comment/$line";
			my @commentlog=<BLOG>;
			close BLOG;
			$line =~ s/\.log|\n//ig;
			
			my $parmalink = $commentlog[4];
			$parmalink =~ s/\n//ig;
			if($parmalink){
				push(@sitemap,$site."businessblog/$parmalink");
			}else{
				push(@sitemap,$site."businessblog/$line.html");
			}
			$blogmode=1;
		}

		if($blogmode){
			push(@sitemap,$site."businessblog/");
			push(@sitemap,$site."businessblog/list");
		}
	}

	if($BLOGLIST[1]){
		foreach $line ( @BLOGLIST ) { 
			my ($name,$clink) = split(/\=\>/,$line);
			if($clink eq 'business'){undef $clink;}
			if(!$clink){next;}
			
			my $blogdir = "./cgi/log/".$clink."blog";
			my $bloguri = $clink."blog";
			
			if(-f "$bloguri"){
			
				opendir(DIR,"$blogdir/comment");
				my @LOGLIST = readdir(DIR);
				closedir(DIR);

				foreach $line(@LOGLIST){
					if (! -f "$blogdir/comment/$line" || $line !~ /log$/ || $line eq 'lot.log'){next;}
					
					open BLOG,"$blogdir/comment/$line";
					my @commentlog=<BLOG>;
					close BLOG;
					$line =~ s/\.log|\n//ig;
					
					my $parmalink = $commentlog[4];
					$parmalink =~ s/\n//ig;
					if($parmalink){
						push(@sitemap,$site."$bloguri/$parmalink");
					}else{
						push(@sitemap,$site."$bloguri/$line.html");
					}
					
					$blogmode=1;
				}

				if($blogmode){
					push(@sitemap,$site."$bloguri/");
					push(@sitemap,$site."$bloguri/list");
				}
			}
		}
	}





}

#----------------------------------------
#展開オープン
$sitemapxml ='<?xml version="1.0" encoding="UTF-8"?>'."\n";
$sitemapxml.='<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" >'."\n";
foreach $line ( @sitemap ) { 
	$sitemapxml.='<url><loc>'.$line.'</loc></url>'."\n";
}
$sitemapxml.='</urlset>'."\n";


print $sitemapxml;
exit;

