#! /usr/bin/perl # # movies.cgi # 動画のリスト表示と再生。 # # 1.001 : 3/16/08 : デフォルトにloop=falseを指定 # 1.0 : 6/16/06 : Created # # $Id: movies.cgi,v 1.2 2008/03/15 21:11:23 Hideki Kanayama Exp $ # Copyright(c) 2006-2008 Hideki kanayama All rights reserved. use strict; use CGI::Carp qw(fatalsToBrowser); my $version = "1.001"; my $reservedyear = "2006-2008"; my $lang = 0; #### 環境設定 ここから ############## # $script(デフォルトはmovies.cgi)があるサブディレクトリ(SSIを呼び出すshtmlがあるディレクトリからの相対パス) my $subdir = "."; # 動画があるディレクトリ(movies.cgiからみた相対パス)、httpからの指定でも可 my $moviedir = "."; # リストファイル。動画のファイル名、タイトル、コメントをこの中に書く my $file = "movies.lst"; # 戻り先のリンク。 (movies.cgiから見た相対パスとファイル名、絶対パス、httpからの指定でも可) my $back = "movies.shtml"; # 動画表示幅 my $default_x = 330; # 動画表示高さ my $default_y = 300; #### 環境設定 ここまで ############## my $script = "movies.cgi"; my $charset = "Shift_JIS"; my $data; if ($ENV{"REQUEST_METHOD"} eq "POST"){ read(STDIN,$data,$ENV{"CONTENT_LENGTH"}); } else { $data = $ENV{"QUERY_STRING"}; } my @tmparry=split(/&/,$data); my %in; my ($key, $value); foreach my $string (@tmparry){ ($key,$value)=split(/=/,$string); $value =~ tr/+/ /; $in{"$key"}=$value; } if ($in{movie} eq ''){ &linklist; } else { &dispphoto; } sub linklist { print "Content-Type: text/html\n\n"; if (!open(FILE,"< $file")){ print "
ファイルが存在しません。$file
"; exit; } my $i=1; while (){ my ($movie,$title,$comment)=split(/,/); print "$title
\n"; $i = $i + 1; } close(FILE); } sub dispphoto { print "Content-Type: text/html\n\n"; if (!open(FILE,"< $file")){ print "
ファイルが存在しません。$in{file}
"; exit; } my $i=0; my $prevmovie; my $prevtitle; while (){ my ($movie,$title,$comment)=split(/,/); $i = $i + 1; if ("$movie" ne "$in{movie}") { $prevmovie=$movie; $prevtitle="$title"; next; } print < $title

$title

戻る

$comment
END my ($nextmovie,$nexttitle,$nextcomment)=split(/,/,); my ($prevlink, $nextlink); if ($prevmovie eq '') { $prevlink="$back"; $prevtitle = "トップへ" } else { $prevlink = "$script?movie=$prevmovie"; } if ($nextmovie eq '') { $nextlink="$back"; $nexttitle = "トップへ" } else { $nextlink = "$script?movie=$nextmovie"; } print < ←$prevtitle $nexttitle→ BOTTOM ©right; print ""; } close(FILE); } sub copyright { my $mysite = ('http://www.hidekik.com/','http://www.hidekik.com/en/')[$lang]; print "

movies.cgi Ver. $version
\n"; print "
Copyright(C) $reservedyear, hidekik.com
\n"; }