<?php
/** 
 * サンプルクラス
 *
 * 1. ページ遷移とパラメータの受け渡し 
 *
 * @package   SyL
 * @author    k.watanabe <k.watanabe@syl.jp>
 * @copyright 2006 k.watanabe
 * @license   http://www.opensource.org/licenses/lgpl-license.php
 * @version   CVS: $Id: index.php,v 1.2 2007/01/03 11:16:50 seasonstream Exp $
 * @link      http://www.syl.jp/
 */
class Example1_Index
{
    var $parameter1;
    var $parameter2;
    var $parameter3;

    /**
     * コンストラクタ
     *
     * @access public
     */
    function Example1_Index()
    {
        // アクションの初期処理が記述できます。
        // /examples.php/example1/ にアクセスした場合は、アクションメソッドを定義していないので、
        // この処理で終了し、$template_dir/example1/index.html テンプレートが読み出されます。
    }

    /**
     * アクションパラメータがget1の場合のアクションメソッド
     *
     * @access public
     * @param object リクエストオブジェクト
     * @param object データ管理オブジェクト
     */
    function executeGet1(&$request, &$dm)
    {
        // ビューに渡すパラメータをセット
        $this->parameter1 = $request->getParameter('parameter1');

        // $template_dir/example1/get1.html テンプレートへ遷移
        $dm->setTemplateFile('example1/get1.html');
    }

    /**
     * アクションパラメータがget2の場合のアクションメソッド
     *
     * @access public
     * @param object リクエストオブジェクト
     * @param object データ管理オブジェクト
     */
    function executeGet2(&$request, &$dm)
    {
        // ビューに渡すパラメータをセット
        $this->parameter1 = $request->getParameter('parameter1');
        $this->parameter2 = $request->getParameter('parameter2');

        // $template_dir/example1/get2.html テンプレートへ遷移
        $dm->setTemplateFile('example1/get2.html');
    }

    /**
     * アクションパラメータがget3の場合のアクションメソッド
     *
     * @access public
     * @param object リクエストオブジェクト
     * @param object データ管理オブジェクト
     */
    function executeGet3(&$request, &$dm)
    {
        // ビューに渡すパラメータをセット
        $this->parameter1 = $request->getParameter('parameter1');
        $this->parameter2 = $request->getParameter('parameter2');
        $this->parameter3 = $request->getParameter('parameter3');

        // $template_dir/example1/get3.html テンプレートへ遷移
        $dm->setTemplateFile('example1/get3.html');
    }

    /**
     * アクションパラメータがpost1の場合のアクションメソッド
     *
     * @access public
     * @param object リクエストオブジェクト
     * @param object データ管理オブジェクト
     */
    function executePost1(&$request, &$dm)
    {
        // ビューに渡すパラメータをセット
        $this->parameter1 = $request->getParameter('parameter1');

        // $template_dir/example1/post1.html テンプレートへ遷移
        $dm->setTemplateFile('example1/post1.html');
    }

    /**
     * アクションパラメータがpost2の場合のアクションメソッド
     *
     * @access public
     * @param object リクエストオブジェクト
     * @param object データ管理オブジェクト
     */
    function executePost2(&$request, &$dm)
    {
        // ビューに渡すパラメータをセット
        $this->parameter1 = $request->getParameter('parameter1');
        $this->parameter2 = $request->getParameter('parameter2');

        // $template_dir/example1/post2.html テンプレートへ遷移
        $dm->setTemplateFile('example1/post2.html');
    }

    /**
     * アクションパラメータがpost3の場合のアクションメソッド
     *
     * @access public
     * @param object リクエストオブジェクト
     * @param object データ管理オブジェクト
     */
    function executePost3(&$request, &$dm)
    {
        // ビューに渡すパラメータをセット
        $this->parameter1 = $request->getParameter('parameter1');
        $this->parameter2 = $request->getParameter('parameter2');
        $this->parameter3 = $request->getParameter('parameter3');

        // $template_dir/example1/post3.html テンプレートへ遷移
        $dm->setTemplateFile('example1/post3.html');
    }
}

?>
