#!/usr/local/bin/perl
# ↑１行目に、サーバに設置されているPerlのパスを記述してください。
# 不明な場合には、サーバ管理者へ問い合わせてください。
# （当スクリプトはPerl5用に製作されています。）


##
## このファイルについて
##    「GETまたはPOSTメソッドでアクセスする為の管理用実行ファイル」
##
## (C) AppsPage / 飛田 益夫丸
##


package admin_cgi; BEGIN {
	#_cgitest.plユーティリティ
	#if(-e './_cgitest.pl') { require('./_cgitest.pl'); import _cgitest; }
	
	#ini.cgiを要求
	require( "./ini.cgi" );
	import ini;
};
#use strict;

admin_cgi::main();


## メイン
## @return void
sub main {
	
	#アラーム
	require( LIB_DIR."classes/DataAlarm.pl" );
	my $alrm = new DataAlarm::( DF_LIMIT );
	
	#各クラス要求
	require( "MTRequestMP.pl" );
	require( "MTResponse.pl" );
	require( "MTFileLock.pl" );
	require( LIB_DIR."classes/DataFile.pl" );
	require( LIB_DIR."classes/Controller.pl" );
	
	#コントローラへ渡すオブジェクト
	my $req = new MTRequestMP::( "sjis", 1, 1 );
	my $res = new MTResponse::();
	my $lock = new MTFileLock::(
		LOCK_METHOD, LOCK_DIR, "flock.cgi", "flock",
		LOCK_SH, LOCK_EX, LOCK_UN
	);
	my $data = new DataFile::( DATA_DIR, DATA_DIR, "check.cgi", SU_MODE );
	
	#未定義のパラメータを設定
	if( !$req->existsParam("mode") ) { $req->setParam( "mode", "admin" ); }
	if( !$req->existsParam("action") ) { $req->setParam( "action", "sertif" );}
	
	#コントローラ
	my $ctl = new Controller::( $req, $res, $lock, $data, $alrm );
	
	
	#このファイルのヘッダを設定
	#コンテンツ用レスポンスヘッダ
	$ctl->setContentTypeHeaders();
	#キャッシュ無効用レスポンスヘッダ
	#$res->setHeader( "Pragma", "no-cache" );
	#$res->setHeader( "Cache-Control", "no-cache" );
	#$res->setExpiresHeader( -1 );
	#ロボット用レスポンスヘッダ（キャッシュ禁止）
	$res->setHeader( "Robots", "noindex,follow" );
	
	
	#処理
	$ctl->start( "admin" );
	$ctl->stop();
}




0;
