現時点でのEthnaを持ってきて使ってみる。
https://github.com/ethna/ethna/tree/release/2.6.0beta4
ずっと2.5くらいだったので。
インストール
Smarty3を使う。
Ethna_Renderer_Smarty3クラスを見ると、Smarty3/Smarty.class.phpを使うようになってる。えー、普通Smarty/Smarty.class.phpだよねー、そうしてよ・・・と思いつつ、Smarty3ディレクトリに変更したらプラグインとかないと言われる・・・そらそうよ。
Smarty3=>Smartyのシンボリックリンクはってもいいかなと思ったけど、1分くらいコード見て
<?php 'renderer' => array( 'smarty3' => array( 'path' => 'Smarty/Smarty.class.php', ), ),
って感じにした。
Pluginの設置に戸惑う
オレオレGeneratorを使いたかったのだけど、どうも今までの方法だとダメみたい。
http://ml.ethna.jp/pipermail/cvs/2009-April/000807.html
Σ(゚д゚|||)ガーン. Σ
さて・・・なんとなく
app/plugin/Generator/APPID_Plugin_Generator_Action.php
を
app/plugin/Generator/Action.php
とかにしたら読み込むみたいだが・・・・。generateメソッドを通らないorz
Ethna_Plugin::_searchPluginSrc()を読んで、更に命名規則Ethna_Plugin::getPluginNaming($type, $name)から命名側を・・・って、あああああ。これ、AppIDがEthna固定やん・・・。
気を取り直して、
Ethna_Pluginがクソだと思ったら、それをOverrideすればいい。
要するに、Controller::getPlugin();をごにょっと。Controller::classのpluginのところを変更。
自作のEthna_Pluginを継承したClassに書こう。
…と思ったけど、これがどうも駄目っぽい。
ソース追うのも疲れたので、ethnaコマンドにそういえばcreate-pluginっていうのがあったなと思い、作ってみると、Ethna_Plugin_Filter_****** みたいなのができた。
・・・ということは、ダメなんだ。
うーん。面倒なので、もうファイル交換で終わらせた。