OSDN Git Service

- アプリケーションスケルトン生成時にアプリケーション固有のActionClass, ActionForm, ViewClassも生成するように変更
authorfujimoto <fujimoto@2ef88817-412d-0410-a32c-8029a115e976>
Tue, 22 Aug 2006 15:52:26 +0000 (15:52 +0000)
committerfujimoto <fujimoto@2ef88817-412d-0410-a32c-8029a115e976>
Tue, 22 Aug 2006 15:52:26 +0000 (15:52 +0000)
CHANGES
class/Plugin/Generator/Ethna_Plugin_Generator_Project.php
skel/app.action.default.php
skel/app.actionclass.php [new file with mode: 0644]
skel/app.actionform.php [new file with mode: 0644]
skel/app.controller.php
skel/app.view.default.php
skel/app.viewclass.php [new file with mode: 0644]

diff --git a/CHANGES b/CHANGES
index b884cbb..c12909e 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,7 @@
 
 *** features
 
+- ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥¹¥±¥ë¥È¥óÀ¸À®»þ¤Ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¸ÇÍ­¤ÎActionClass, ActionForm, ViewClass¤âÀ¸À®¤¹¤ë¤è¤¦¤ËÊѹ¹
 - Ethna_SkeltonGenerator¥¯¥é¥¹¤òEthna_Generator¥¯¥é¥¹¤Ë̾¾ÎÊѹ¹
 - Ethna_SkeltonGenerator¥¯¥é¥¹¤Î³Æ¥á¥½¥Ã¥É¤ò¥×¥é¥°¥¤¥ó²½
 - Ethna_Config::get()¤Ç°ú¿ô¤ò»ØÄꤷ¤Ê¤¤¤ÈÁ´ÀßÄê¤ò³ÊǼ¤·¤¿ÇÛÎó¤òÊÖ¤¹¤è¤¦¤ËÊѹ¹
index b9a52b5..8006c89 100644 (file)
@@ -124,6 +124,9 @@ class Ethna_Plugin_Generator_Project extends Ethna_Plugin_Generator
             $this->_generateFile("dot.ethna", "$basedir/.ethna", $macro) == false ||
             $this->_generateFile("app.controller.php", sprintf("$basedir/app/%s_Controller.php", $macro['project_id']), $macro) == false ||
             $this->_generateFile("app.error.php", sprintf("$basedir/app/%s_Error.php", $macro['project_id']), $macro) == false ||
+            $this->_generateFile("app.actionclass.php", sprintf("$basedir/app/%s_ActionClass.php", $macro['project_id']), $macro) == false ||
+            $this->_generateFile("app.actionform.php", sprintf("$basedir/app/%s_ActionForm.php", $macro['project_id']), $macro) == false ||
+            $this->_generateFile("app.viewclass.php", sprintf("$basedir/app/%s_ViewClass.php", $macro['project_id']), $macro) == false ||
             $this->_generateFile("app.action.default.php", "$basedir/app/action/Index.php", $macro) == false ||
             $this->_generateFile("app.plugin.filter.default.php", sprintf("$basedir/app/plugin/Filter/%s_Plugin_Filter_ExecutionTime.php", $macro['project_id']), $macro) == false ||
             $this->_generateFile("app.view.default.php", "$basedir/app/view/Index.php", $macro) == false ||
index e1e10ce..a77d9d9 100644 (file)
@@ -14,7 +14,7 @@
  *     @access         public
  *     @package        {$project_id}
  */
-class {$project_id}_Form_Index extends Ethna_ActionForm
+class {$project_id}_Form_Index extends {$project_id}_ActionForm
 {
     /** @var    bool    ¥Ð¥ê¥Ç¡¼¥¿¤Ë¥×¥é¥°¥¤¥ó¤ò»È¤¦¥Õ¥é¥° */
     var $use_validator_plugin = false;
@@ -55,7 +55,7 @@ class {$project_id}_Form_Index extends Ethna_ActionForm
  *     @access         public
  *     @package        {$project_id}
  */
-class {$project_id}_Action_Index extends Ethna_ActionClass
+class {$project_id}_Action_Index extends {$project_id}_ActionClass
 {
        /**
         *      index¥¢¥¯¥·¥ç¥ó¤ÎÁ°½èÍý
diff --git a/skel/app.actionclass.php b/skel/app.actionclass.php
new file mode 100644 (file)
index 0000000..1842f7b
--- /dev/null
@@ -0,0 +1,55 @@
+<?php
+// vim: foldmethod=marker
+/**
+ *  {$project_id}_ActionClass.php
+ *
+ *  @author     {$author}
+ *  @package    {$project_id}
+ *  @version    $Id$
+ */
+
+// {{{ {$project_id}_ActionClass
+/**
+ *  action¼Â¹Ô¥¯¥é¥¹
+ *
+ *  @author     {$author}
+ *  @package    {$project_id}
+ *  @access     public
+ */
+class {$project_id}_ActionClass extends Ethna_ActionClass
+{
+    /**
+     *  ¥¢¥¯¥·¥ç¥ó¼Â¹ÔÁ°¤Îǧ¾Ú½èÍý¤ò¹Ô¤¦
+     *
+     *  @access public
+     *  @return string  Á«°Ü̾(null¤Ê¤éÀµ¾ï½ªÎ», false¤Ê¤é½èÍý½ªÎ»)
+     */
+    function authenticate()
+    {
+        return parent::authenticate();
+    }
+
+    /**
+     *  ¥¢¥¯¥·¥ç¥ó¼Â¹ÔÁ°¤Î½èÍý(¥Õ¥©¡¼¥àÃÍ¥Á¥§¥Ã¥¯Åù)¤ò¹Ô¤¦
+     *
+     *  @access public
+     *  @return string  Á«°Ü̾(null¤Ê¤éÀµ¾ï½ªÎ», false¤Ê¤é½èÍý½ªÎ»)
+     */
+    function prepare()
+    {
+        return parent::prepare();
+    }
+
+    /**
+     *  ¥¢¥¯¥·¥ç¥ó¼Â¹Ô
+     *
+     *  @access public
+     *  @return string  Á«°Ü̾(null¤Ê¤éÁ«°Ü¤Ï¹Ô¤ï¤Ê¤¤)
+     */
+    function perform()
+    {
+        return parent::perform();
+    }
+}
+// }}}
+?>
diff --git a/skel/app.actionform.php b/skel/app.actionform.php
new file mode 100644 (file)
index 0000000..b32a987
--- /dev/null
@@ -0,0 +1,69 @@
+<?php
+// vim: foldmethod=marker
+/**
+ *  {$project_id}_ActionForm.php
+ *
+ *  @author     {$author}
+ *  @package    {$project_id}
+ *  @version    $Id$
+ */
+
+// {{{ {$project_id}_ActionForm
+/**
+ *  ¥¢¥¯¥·¥ç¥ó¥Õ¥©¡¼¥à¥¯¥é¥¹
+ *
+ *  @author     {$author}
+ *  @package    {$project_id}
+ *  @access     public
+ */
+class {$project_id}_ActionForm extends Ethna_ActionForm
+{
+    /**#@+
+     *  @access private
+     */
+
+    /** @var    array   ¥Õ¥©¡¼¥àÃÍÄêµÁ(¥Ç¥Õ¥©¥ë¥È) */
+    var $form_template = array();
+
+    /** @var    bool    ¥Ð¥ê¥Ç¡¼¥¿¤Ë¥×¥é¥°¥¤¥ó¤ò»È¤¦¥Õ¥é¥° */
+    var $use_validator_plugin = true;
+
+    /**#@-*/
+
+    /**
+     *  ¥Õ¥©¡¼¥àÃ͸¡¾Ú¤Î¥¨¥é¡¼½èÍý¤ò¹Ô¤¦
+     *
+     *  @access public
+     *  @param  string      $name   ¥Õ¥©¡¼¥à¹àÌÜ̾
+     *  @param  int         $code   ¥¨¥é¡¼¥³¡¼¥É
+     */
+    function handleError($name, $code)
+    {
+        return parent::handleError($name, $code);
+    }
+
+    /**
+     *  ¥Õ¥©¡¼¥àÃÍÄêµÁ¥Æ¥ó¥×¥ì¡¼¥È¤òÀßÄꤹ¤ë
+     *
+     *  @access protected
+     *  @param  array   $form_template  ¥Õ¥©¡¼¥àÃͥƥó¥×¥ì¡¼¥È
+     *  @return array   ¥Õ¥©¡¼¥àÃͥƥó¥×¥ì¡¼¥È
+     */
+    function _setFormTemplate($form_template)
+    {
+        return parent::_setFormTemplate($form_template);
+    }
+
+    /**
+     *  ¥Õ¥©¡¼¥àÃÍÄêµÁ¤òÀßÄꤹ¤ë
+     *
+     *  @access protected
+     */
+    function _setFormDef()
+    {
+        return parent::_setFormDef();
+    }
+
+}
+// }}}
+?>
index a4c0d0f..dcef777 100644 (file)
@@ -19,6 +19,9 @@ ini_set('include_path', ini_get('include_path') . PATH_SEPARATOR . implode(PATH_
 /** ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥é¥¤¥Ö¥é¥ê¤Î¥¤¥ó¥¯¥ë¡¼¥É */
 include_once('Ethna/Ethna.php');
 include_once('{$project_id}_Error.php');
+include_once('{$project_id}_ActionClass.php');
+include_once('{$project_id}_ActionForm.php');
+include_once('{$project_id}_ViewClass.php');
 
 /**
  *  {$project_id}¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥³¥ó¥È¥í¡¼¥éÄêµÁ
@@ -128,13 +131,13 @@ class {$project_id}_Controller extends Ethna_Controller
         'config'        => 'Ethna_Config',
         'db'            => 'Ethna_DB_PEAR',
         'error'         => 'Ethna_ActionError',
-        'form'          => 'Ethna_ActionForm',
+        'form'          => '{$project_id}_ActionForm',
         'i18n'          => 'Ethna_I18N',
         'logger'        => 'Ethna_Logger',
         'plugin'        => 'Ethna_Plugin',
         'session'       => 'Ethna_Session',
         'sql'           => 'Ethna_AppSQL',
-        'view'          => 'Ethna_ViewClass',
+        'view'          => '{$project_id}_ViewClass',
         'renderer'      => 'Ethna_Renderer_Smarty',
     );
 
index 53e21a9..c67a8ed 100644 (file)
@@ -14,7 +14,7 @@
  *     @access         public
  *     @package        {$project_id}
  */
-class {$project_id}_View_Index extends Ethna_ViewClass
+class {$project_id}_View_Index extends {$project_id}_ViewClass
 {
        /**
         *      Á«°ÜÁ°½èÍý
diff --git a/skel/app.viewclass.php b/skel/app.viewclass.php
new file mode 100644 (file)
index 0000000..c5fa51b
--- /dev/null
@@ -0,0 +1,32 @@
+<?php
+// vim: foldmethod=marker
+/**
+ *  {$project_id}_ViewClass.php
+ *
+ *  @author     {$author}
+ *  @package    {$project_id}
+ *  @version    $Id$
+ */
+
+// {{{ {$project_id}_ViewClass
+/**
+ *  view¥¯¥é¥¹
+ *
+ *  @author     {$author}
+ *  @package    {$project_id}
+ *  @access     public
+ */
+class {$project_id}_ViewClass extends Ethna_ViewClass
+{
+    /**
+     *  ¶¦ÄÌÃͤòÀßÄꤹ¤ë
+     *
+     *  @access protected
+     *  @param  object  {$project_id}_Renderer  ¥ì¥ó¥À¥é¥ª¥Ö¥¸¥§¥¯¥È
+     */
+    function _setDefault(&$renderer)
+    {
+    }
+}
+// }}}
+?>