Lithiumのプラグインli3_designの不具合を報告。

Lithiumプラグインli3_designの不具合を報告してマージされました!

https://github.com/UnionOfRAD/li3_design/pull/3
たった1行なんだけど。

どんな不具合?

li3_designプラグインとli3_flash_messageプラグインを使用してた時に、viewで下記のソースを実行するとエラーが発生した。

<?php //echo $this->flashMessage->output(); ?>


原因は、li3_flash_messageプラグイン内でelementパスのviewを使う際にelementのパスが設定されていなくてエラーが起っていました。

Lithium内(lithium/net/http/Media.php)ではelementパスが下記の様に設定されています。

<?php
        $handlers = static::$_handlers + array(
            'default' => array(
                'view'     => 'lithium\template\View',
                'encode'   => false,
                'decode'   => false,
                'cast'     => false,
                'paths'    => array(
                    'template' => '{:library}/views/{:controller}/{:template}.{:type}.php',
                    'layout'   => '{:library}/views/layouts/{:layout}.{:type}.php',
                    'element'  => '{:library}/views/elements/{:template}.{:type}.php'
                )
            ),
            'html' => array(),
            'json' => array('cast' => true, 'encode' => 'json_encode', 'decode' => function($data) {
                return json_decode($data, true);
            }),
            'text' => array('cast' => false, 'encode' => function($s) { return $s; }),
            'form' => array('cast' => true, 'encode' => 'http_build_query')
        );
?>

しかし、li3_design内ではgithubで報告した様にMedia::type設定時のpaths内に、elementが含まれていなかった為エラーが発生していました。


他のプラグインへ影響を与えないプラグインを作る意識が必要だなと感じました。


[PR]Spreeの情報を集めています。

ECを持ちたい方、仕事でECを使いたい方向けのコミュニティサイトです。
このサイトでは世界で最も使用されているECの1つであるSpreeについての情報を提供しています。
http://spreecommerce.jp/