layout_make.php 9.61 KB
<?PHP 
//*****************************************************************************
//* 
//* プログラム名:e-イベント
//* プログラムID:layout_make.php
//* 機能        :イベント表示画面
//* 作成者      :
//* 
//*****************************************************************************
header("Content-type: text/html; charset=shift-jis");

include('./include/smarty.conf');

//セッション開始
require_once("./include/session_start.inc");

include("./ini.php");
$o_smarty->assign('_USR_ROOT_URL_', $_USR_ROOT_URL_."/".$_SESSION["PHP_CAL_FOLDER"]."/calendar.php");

include("./include/dbcon.inc");

//*** データ取得 ***//
if (($_POST["cboTemplate"]!="") && ($_POST["cboColor"]!="")){
		$cboTemplate_Chk = $_POST["cboTemplate"];
		$cboColor_Chk    = $_POST["cboColor"];

		//* テンプレート *//
		$strSQL  = "SELECT ";
		$strSQL .= " * ";
		$strSQL .= "FROM ";
		$strSQL .= " mst_template ";
		$strSQL .= "WHERE";
		$strSQL .= " temp_id = ".$cboTemplate_Chk;
		$objRec = pg_exec($strSQL);
		if($objRec==false){
				echo("エラー(SELECT)");
				exit;
		}
		$objData   = pg_fetch_object($objRec, 0);
		$template_name = $objData->temp_name;

		//* 背景色 *//
		$strSQL  = "SELECT ";
		$strSQL .= " * ";
		$strSQL .= "FROM ";
		$strSQL .= " mst_style ";
		$strSQL .= "WHERE";
		$strSQL .= " style_id = ".$cboColor_Chk;
		$objRec = pg_exec($strSQL);
		if($objRec==false){
				echo("エラー(SELECT)");
				exit;
		}
		$objData   = pg_fetch_object($objRec, 0);
		$color_css = $objData->style_name;

}else{
		//* カレンダー表示スタイル取得 *//
		$strSQL  = "SELECT ";
		$strSQL .= " style_id  , ";
		$strSQL .= " style_name, ";
		$strSQL .= " temp_id   , ";
		$strSQL .= " temp_name   ";
		$strSQL .= "FROM ";
		$strSQL .= " mst_group      , ";
		$strSQL .= " group_style_tbl, ";
		$strSQL .= " mst_style      , ";
		$strSQL .= " mst_template     ";
		$strSQL .= "WHERE";
		$strSQL .= " mst_group.group_cd             = group_style_tbl.group_cd        AND ";
		$strSQL .= " mst_group.group_cd             = '".$_SESSION["PHP_CAL_CODE"]."' AND ";
		$strSQL .= " group_style_tbl.group_style    = mst_style.style_id              AND ";
		$strSQL .= " group_style_tbl.group_template = mst_template.temp_id ";
		$objRec = pg_exec($strSQL);
		if($objRec==false){
				echo("エラー(SELECT)");
				exit;
		}
		if(pg_numrows($objRec) <= 0){
				$cboTemplate_Chk = "1";
				$cboColor_Chk    = "1";
				$color_css       = "color1.css";
				$template_name   = "calendar01.tpl";
		}else{
				$objData = pg_fetch_object($objRec, 0);
				$cboColor_Chk    = $objData->style_id;
				$cboTemplate_Chk = $objData->temp_id;
				$color_css       = $objData->style_name;
				$template_name   = $objData->temp_name;
		}
}
$o_smarty->assign('color_css', $color_css);

//*** プルダウン作成(テンプレート) ***//
//* テンプレート *//
$strSQL  = "SELECT ";
$strSQL .= " * ";
$strSQL .= "FROM ";
$strSQL .= " mst_template ";
$strSQL .= "ORDER BY ";
$strSQL .= " temp_id ";
$objRec = pg_exec($strSQL);
if($objRec==false){
		echo("エラー(SELECT)");
		exit;
}
for ($intI = 0; $intI < pg_numrows($objRec); $intI++) {
		$objData = pg_fetch_object($objRec, $intI);
		$Template_Data .= '<OPTION value="'.$objData->temp_id.'" ';
		if ($cboTemplate_Chk==$objData->temp_id){
				$Template_Data.="selected"; 
		}
		$Template_Data.='>'.mb_convert_encoding($objData->temp_dp_name, "SJIS", "EUC-JP" ).'</OPTION>';
}
$o_smarty->assign('Template_Data', $Template_Data);

//* 色 *//
$strSQL  = "SELECT ";
$strSQL .= " * ";
$strSQL .= "FROM ";
$strSQL .= " mst_style ";
$strSQL .= "ORDER BY ";
$strSQL .= " style_id ";
$objRec = pg_exec($strSQL);
if($objRec==false){
		echo("エラー(SELECT)");
		exit;
}
for ($intI = 0; $intI < pg_numrows($objRec); $intI++) {
		$objData = pg_fetch_object($objRec, $intI);
		$Color_Data .= '<OPTION value="'.$objData->style_id.'" ';
		if ($cboColor_Chk==$objData->style_id){
				$Color_Data.="selected"; 
		}
		$Color_Data.='>'.mb_convert_encoding($objData->style_dp_name, "SJIS", "EUC-JP" ).'</OPTION>';
}
$o_smarty->assign('Color_Data'   , $Color_Data);

//*** トップ画像の取得 ***//
$cboColor_Chk = "";
if ($_POST["cboHeader"]!=""){
		switch($_POST["cboHeader"]){
		case "H01":
		case "H02":
		case "H03":
		case "H04":
				$header_memo  = '<img src="'.$_ROOT_URL_.'/image/base_header'.(int)substr($_POST["cboHeader"],1,2).'.jpg" />';
				break;
		default:
				$strSQL  = "SELECT ";
				$strSQL .= " * ";
				$strSQL .= "FROM ";
				$strSQL .= " group_file_tbl ";
				$strSQL .= "WHERE";
				$strSQL .= " group_cd = '".$_SESSION["PHP_CAL_CODE"]."' AND ";
				$strSQL .= " file_id  =  ".(int)$_POST["cboHeader"]." ";
				$objFileRec = pg_exec($strSQL);
				if($objFileRec==false){
						echo("エラー(SELECT)");
						exit;
				}
				$objFileData = pg_fetch_object($objFileRec, 0);

				$header_memo  = '<img src="'.$_ROOT_URL_.'/image/header_'.$_SESSION["PHP_CAL_CODE"]."_".(int)$_POST["cboHeader"].'.'.$objFileData->file_type.'" />';
				break;
		}
		$cboColor_Chk = $_POST["cboHeader"];
}else{
		$strSQL  = "SELECT ";
		$strSQL .= " * ";
		$strSQL .= "FROM ";
		$strSQL .= " group_header_tbl ";
		$strSQL .= "WHERE";
		$strSQL .= " group_cd     = '".$_SESSION["PHP_CAL_CODE"]."' ";
		$objRec = pg_exec($strSQL);
		if($objRec==false){
				echo("エラー(SELECT)");
				exit;
		}

		if(pg_numrows($objRec) <= 0){
				$header_memo = '<img src="'.$_ROOT_URL_.'/image/base_header1.jpg" />';
				$cboColor_Chk = "H01";
		}else{
				$objData = pg_fetch_object($objRec, 0);
				$cboColor_Chk = $objData->header_memo;
				switch($objData->type){
				case "1":
						$header_memo = '<img src="'.$_ROOT_URL_.'/image/base_header'.(int)substr($cboColor_Chk,1,2).'.jpg" />';
						break;
				case "2":
						$strSQL  = "SELECT ";
						$strSQL .= " * ";
						$strSQL .= "FROM ";
						$strSQL .= " group_file_tbl ";
						$strSQL .= "WHERE";
						$strSQL .= " group_cd = '".$_SESSION["PHP_CAL_CODE"]."' AND ";
						$strSQL .= " file_id  =  ".(int)$cboColor_Chk." ";
						$objFileRec = pg_exec($strSQL);
						if($objFileRec==false){
								echo("エラー(SELECT)");
								exit;
						}

						$objFileData = pg_fetch_object($objFileRec, 0);
						$header_memo  = '<img src="'.$_ROOT_URL_.'/image/header_'.$_SESSION["PHP_CAL_CODE"]."_".(int)$cboColor_Chk.'.'.$objFileData->file_type.'" />';
						break;

				case "3":
					break;

				default:
					break;

				}
		}
}
$o_smarty->assign('header_memo',$header_memo);

//* 共通ヘッダ画像 *//
$Header_Data = '<OPTION value="H01" ';
if ($cboColor_Chk=="H01"){ $Header_Data .="selected"; }
$Header_Data .= '>標準ヘッダ1</OPTION>';

$Header_Data .= '<OPTION value="H02" ';
if ($cboColor_Chk=="H02"){ $Header_Data .="selected"; }
$Header_Data .= '>標準ヘッダ2</OPTION>';

$Header_Data .= '<OPTION value="H03" ';
if ($cboColor_Chk=="H03"){ $Header_Data .="selected"; }
$Header_Data .= '>標準ヘッダ3</OPTION>';

$Header_Data .= '<OPTION value="H04" ';
if ($cboColor_Chk=="H04"){ $Header_Data .="selected"; }
$Header_Data .= '>標準ヘッダ4</OPTION>';


$strSQL  = "SELECT ";
$strSQL .= " * ";
$strSQL .= "FROM ";
$strSQL .= " group_file_tbl ";
$strSQL .= "WHERE ";
$strSQL .= " group_cd = '".$_SESSION["PHP_CAL_CODE"]."' ";
$strSQL .= "ORDER BY ";
$strSQL .= " file_id ";
$objRec = pg_exec($strSQL);
if($objRec==false){
		echo("エラー(SELECT)");
		exit;
}
for ($intI = 0; $intI < pg_numrows($objRec); $intI++) {
		$objData = pg_fetch_object($objRec, $intI);
		$Header_Data .= '<OPTION value="'.$objData->file_id.'" ';
		if ($cboColor_Chk==$objData->file_id){
				$Header_Data.="selected"; 
		}
		$Header_Data.='>ユーザーヘッダー'.$objData->file_id.'</OPTION>';
}
$o_smarty->assign('Header_Data'   , $Header_Data);


//*** カレンダー情報 ***//
$main_year = date("Y");
$main_mon  = date("n");

//MAX日付取得
$main_day = "01";
$dateMax  = date("j", mktime (0,0,0,$main_mon+1,$main_day-1,$main_year));

//カレンダー空白数(前)
$intbefor = date("w", mktime (0,0,0,$main_mon,$main_day,$main_year));

//カレンダー空白数(後)
$intafter = date("w", mktime (0,0,0,$main_mon,$dateMax,$main_year));
$intafter = 6-$intafter;

//ループ基準日取得
$strWkDate = date("Y/m/d", mktime (0,0,0,$main_mon,$main_day-$intbefor,$main_year));
list($chk_year,$chk_mon,$chk_day)=split("/", $strWkDate);

for($intCnt = 0; $intCnt < $intbefor+$dateMax+$intafter ; $intCnt++) {
		$strWkDate=date("Y/m/d", mktime (0,0,0,$chk_mon,$chk_day+$intCnt,$chk_year));
		$strcalender[$intCnt]=$strWkDate;
}

$strCalData = array();
$intRow    = 0;
$intCol    = 0;
for($intI = 0; $intI < count($strcalender) ; $intI++) {
		list($chk_year,$chk_mon,$chk_day)=split("/", $strcalender[$intI]);
		$intYoubi=date("w", mktime (0,0,0,$chk_mon,$chk_day,$chk_year));

		//テーブル開始
		if (($intI % 7 == 0) && ($intI!=0)){
				$intRow = $intRow + 1;
				$intCol = 0;
		}

		//日付表示
		if ($chk_mon==$main_mon){
				//日付編集
				if (substr($chk_mon,0,1) == 0){
					$input_mon = substr($chk_mon,1,1);
				}else{
					$input_mon = $chk_mon;
				}
				if (substr($chk_day,0,1) == 0){
					$input_day = substr($chk_day,1,1);
				}else{
					$input_day = $chk_day;
				}

				$strCalData[$intRow][$intCol]  = $chk_day;
				$strCalData[$intRow][$intCol] .= '<img src="'.$_ROOT_URL_.'/image/write.gif" width="17" height="19" border="0" alt="イベントを登録する">';
				$strCalData[$intRow][$intCol] .= "<ul>";
				$strCalData[$intRow][$intCol] .= "</ul>\n\n";
		}else{
				$strCalData[$intRow][$intCol] = "";
		}
		$intCol = $intCol+1;
}

$o_smarty->assign('mode_disabled' ," disabled");
$o_smarty->assign('strCalData'    ,$strCalData);

$o_smarty->assign('PHP_CAL_NAME',$_SESSION["PHP_CAL_NAME"]);
$o_smarty->assign('PHP_manual_NM',"<a href='../e-manual/layout/' target='_blank'>");



$o_smarty->display('layout_make_h.tpl');
$o_smarty->display('header.tpl');

$o_smarty->display('layout_make_h2.tpl');

$o_smarty->display($template_name);
$o_smarty->display('layout_make_f.tpl');

?>