#!/usr/local/bin/perl # 最終更新時間表示(画像版) # SisterSystem - A2D1(2005/01/05) # 参考:getlog(ログ商人氏) # 取得するファイル $file = "../index.html"; # 時間取得 $ENV{'TZ'} = "JST-9"; ($sec,$min,$hour,$mday,$mon,$year,$wday,$d,$d) = localtime; $fyear = $year + 1900; $ndate = sprintf("$fyear%02d%02d%02d", $mon + 1, $mday, $hour); $fmon = $mon + 1; $fmday = "$mday"; # ログの最終時刻取得 ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,$blksize,$blocks) = stat "$file"; ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime($mtime + 32400); $youbi = ('Sun','Mon','Tue','Wed','Thu','Fri','Sat')[$wday]; $date = sprintf("%02d%02d%02d%02d", $year + 1900, $mon + 1, $mday, $hour); # 年末月末閏年…等の処理 if ($fyear > $year && $fmon < 2 && $fmday < 2) { $date = $date + 1000000; } elsif ($hour > 29 && $fmday < 2 && $mon =~ /01|03|05|07|08|10|12/i) { $date = $date + 9000; } elsif ($hour > 28 && $fmday < 2 && $mon =~ /04|06|09|11/i) { $date = $date + 10000; } elsif ($hour > 27 && $fmday < 2 && $mon eq '02' && $year % 4 == 0) { $date = $date + 11000; } elsif ($hour > 26 && $fmday < 2 && $mon eq '02') { $date = $date + 12000; } # 現時間から最終更新時間を引く if ($ndate - $date < 100) { $neta = "../source/natanasshi0.gif"; } elsif ($ndate - $date < 200) { $neta = "../source/natanasshi.gif"; } elsif ($ndate - $date < 300) { $neta = "../source/natanasshi2.gif"; } elsif ($ndate - $date > 300) { $neta = "../source/natanasshi3.gif"; } # 画像出力 print "Content-type: image/gif\n\n"; open(IMAGE,$neta); binmode(IMAGE); binmode(STDOUT); print ; exit;