<?php
require_once(SITE_LOGICS . 'history/logic.php');

class ControlHistory extends LogicHistory {

	/*-------------------------------------------------------------------------
	* @ メンバ変数
	-------------------------------------------------------------------------*/

	/*-------------------------------------------------------------------------
	* @function_name: ロジックのコンストラクタ
	* @parameter	: なし
	* @return		: なし
	-------------------------------------------------------------------------*/
	function __construct() {
		parent::__construct();
	}

	/*-------------------------------------------------------------------------
	* @function_name: コントロールパネルシステム動画データ編集ロジック（各クラス共通）
	* @parameter	: なし
	* @return		: なし
	-------------------------------------------------------------------------*/
	function action() {
		// 変数宣言部
		$result = NO_STRING;
		
		try {
		    $this -> checkAvailability("site", function(){
		        require_once $this -> getUserHTML('TEMPLATE_MAINTENANCE_MODE_SITE_PATH');
		        exit();
		    });
		    
			// アクション実行
			$result = $this -> logic();

            if($this -> getType() == TYPE_EXPORT_COMMON) {	// 共通エクスポート

                $fileName = 'Transaction List_' . str_replace("/", "", 
                        $this -> getDataPost(PARAM_FROM, true, true, true) . '-' 
                        . $this -> getDataPost(PARAM_TO, true, true, true)
                    ) . '_' . $this -> getDataPost(PARAM_CURRENCY, true, true, true);

				header('Content-Encoding: UTF-8');
				header("Content-type: text/csv; charset=UTF-8");
				header('Content-Disposition: attachment; filename="' . $fileName . '.csv"');
				header('Content-Transfer-Encoding: binary');

                echo "\xEF\xBB\xBF";
				echo trim($this -> getExportDataCommon());
                exit();

			} else{
                require_once($this -> getUserHTML('TEMPLATE_HISTORY_PATH', $this -> dispHTML()));
            }

		} catch (Exception $e) {
			header('Location: /' . $this ->  getLangage() . '/login');
		}
	}
}
?>