<?php

    function decodeSTRING($val){
        // #, &, +  < > などが URI 送信で化けるため encode して送られたものを decode
        $array = explode("%x0;", $val);
        $val = implode("#", $array);
        $array = explode("%x1;", $val);
        $val = implode("&", $array);
        $array = explode("%x2;", $val);
        $val = implode("+", $array);
        $array = explode("%x3;", $val);
        $val = implode("<", $array);
        $array = explode("%x4;", $val);
        $val = implode(">", $array);
        $array = explode("%x5;", $val);
        $val = implode(" ", $array);
        $array = explode("%x6;", $val);
        $val = implode("\n", $array);
        $array = explode("%x7;", $val);
        $val = implode("\"", $array);
        $array = explode("%x8;", $val);
        $val = implode("$", $array);
        $array = explode("%x9;", $val);
        $val = implode("\'", $array);
        return $val;
    }
    
	
	/////////////////////////////
	// print FOLDER with FPDF  //
	// ±Ìt@CÍ S-JIS ÅLq //
	/////////////////////////////
	
	$value = $_GET['value']; $value = htmlspecialchars($value);
    $value = decodeSTRING($value);
    $value = mb_convert_encoding($value, "SJIS", "UTF-8");
    
	define('FPDF_FONTPATH','/Applications/MAMP/htdocs/FPDF/fpdf153/font/');
	require('../FPDF/fpdf153/mbfpdf.php');

    $pdf=new MBFPDF('P', 'mm', array(180, 256)); // B5
	$pdf->AddMBFont(KOZMIN ,'SJIS');
	$pdf->AddMBFont(GOTHIC ,'SJIS');
	$pdf->AddMBFont(BIG5, 'SJIS');
	
	$pdf->Open();
	$pdf->AddPage();
    $pdf->SetFont(KOZMIN,'B', 9);
	
    $x=0;
    $y=0;
    $w=9;
    $h=4.5;
    
    $records = explode(";", $value);
    
    // calendar
    for ($row=0,$rows=count($records); $row < $rows; $row++){
        $record = $records[$row];
        $x = 0;
        if ($row < $rows - 4){
            $array = explode(",", $record);
            // 左側
            for ($col=0,$cols=count($array); $col < $cols; $col++){
                $val = $array[$col];
                $pdf->SetXY($x, $y);
                $pdf->MultiCell($w, $h, $val, 0, 'R');
                $x += $w;
            }
            // 右側
            $x += 15;
            for ($col=0,$cols=count($array); $col < $cols; $col++){
                $val = $array[$col];
                $pdf->SetXY($x, $y);
                $pdf->MultiCell($w, $h, $val, 0, 'R');
                $x += $w;
            }
        } else {
            // コメント：左側のみ
            $x = 3;
            $pdf->SetXY($x, $y);
            $pdf->MultiCell($w * 9, $h, $record, 0, 'L');
        }
        if (($row == 0) || ($row == ($rows - 5)))
            $y += 7;
        else
            $y += $h;
    }
    
    // 下線を引く
    $y += 15;
    $pdf->Line(0, $y, 0 + $w*20, $y);

	$pdf->Output();

?>