Agavi
社内では携帯向けAgavi拡張(KtaiAgavi/非公開)を作って利用しているけども、どうも使いにくいので設計を見直してみたい。折角なので公の場で開発しようかと思う。 キャリア判定 KtaiAgaviではキャリア判定をRequest初期化時にUserAgentを元に行っている。け…
id:yoyaさんが発表内容に触れてくれていたんですが、きちんと伝えられていなかったようなので補足させていただきます。 冒頭のフレームワーク話しは XSS対策で入力バリデート強化って時点で…なんていうか、サニタイズ言うなや的な… XSS脆弱性の報告によって…
via: http://blog.agavi.org/post/81642413/its-finally-done-agavi-1-0-0-has-arrived リリースアナウンスおよびリリースノートは近日中に翻訳して公開します。
NetBeansでAgavi利用のコードを書くときに便利なコードテンプレート public function execute${Target}(AgaviRequestDataHolder $rd) { ${cursor} } これをexあるいはetという省略名で入れておくとexecuteWrite,executeRead,executeJson,executeXmlなんかを…
RFC 3986に従っていない一部のブラウザ(Microsoft Internet Explorer 6,7)からのリクエストによりREQUEST_URIやQUERY_STRINGが汚染される問題により、下記のメソッドの戻り値が汚染される問題が判明しました。 AgaviWebRouting::gen(null) 'bar') )などは除…
factories.xmlで定義されるシステムクラスの初期化のタイミングが気になったので調べてみた。以下はfactories.xmlのコンパイルキャッシュです。 databaseManager = new AgaviDatabaseManager(); $this->databaseManager->initialize($this, array ()); $this…
Agaviのコマンドで生成される.htaccessに書かれているmod_rewirteは RewriteRule ^$ index.php?/ [QSA,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule (.*) index.php?/$1 [QSA,L]これだとディレクトリが存在して…
なかったので作ってみた * * @version $Id$ */ class BooleanValidator extends AgaviValidator { /** * Validates the input. * * @return bool * * @author MugeSo <mugeso@mugeso.com> */ protected function validate…</mugeso@mugeso.com>
Agaviに関する誤った脆弱性報告が出回っていたようです。ref:False Agavi Vulnerability Reports 簡単に言うとフランスのある代理店がAgavi-0.11を用いて制作した複数のサイトでディレクトリトラバーサル脆弱性が見つかり、これはフレームワーク外の実装に問…
ドイツのマインツで行われる国際PHPカンファレンス2008(International PHP Conference 2008)でAgaviの公演が行われるそうです。 是非とも行きたいところですが、何せドイツは遠い。 あと、参加するAgaviユーザのためにAgaviTシャツも用意しているそうです。…
Agavi-0.11.4がリリースされました。 以下リリースアナウンスの邦訳 今日は皆さんAgavi 0.11.4 がでました!これは0.11.3で導入されたサンプルアプリの問題やautoload.xmlへのクラス記入漏れといった諸問題の修正をおこなったメンテナンスリリースです。 ま…
Agavi-0.11でデフォルトアクション、ログインアクション、セキュアアクション、Error404アクションなどのシステムアクション(system-actions)の定義はsetting.xmlで行うが、ここではcontextによる分岐は例外テンプレートを除いては利用できない。 そこで、ど…
やあ、みんなAgavi 0.11.3RC1 がでたよ!このメンテナンスリリースはPEARパッケージ生成やgettextの複数形の取り扱いといった幾つかの小さな問題の修正と幾つかの新しい機能追加がなされています。 データベースハンドラは接続後に任意のSQL文を送れるように…
やあ、皆さん。1.0.0 beta 2 がでました!beta1リリースでの諸問題の修正と幾つかの変更や改良を行いました。大きい事柄を列挙します: モデルでアクション形式のドット記法(Foo.Bar.Baz)の追加 モジュール毎のconfig_handlers.xmlの追加 モジュール毎のオート…
0.11.3RC1と1.0beta2がそろってリリースされたようです。1.0beta2からはアクション・ビュー・モデルのそれぞれの命名規則が厳密化され、たとえばmodules/Foo/action/Bar/BazAction.class.phpに配置されるアクションの場合はFoo_Bar_BazActionという名前にす…
ついに1.0系が来ました。とりあえずBETA1です。では早速アナウンスメール邦訳です。(一部、文が長かったので箇条書きに改めてあります。) こんにちは皆さん。3年強の開発の末、Agaviはついに最初の1.0マイルストーン 1.0.0 beta 1のリリースを迎えました! h…
今日は技術的な話は置いておいて、Agaviの名前に関するお話。 Agaviという名前はAgave(英語名。和名ではリュウゼツラン)から来ている。Agaveはモハーヴェ砂漠(Mojave Desert)など北アメリカ南西部に自生している植物だそう。そしてモハーヴェ砂漠はAgaviの前…
slotとして呼び出されたviewやテンプレートから外側のviewのattributeあるいはテンプレート変数に値を入れたい。具体的にはcssやjavascriptを指定したい。javascriptはbody内でも呼び出せるけどできればヘッダに配置したほうがきれいじゃない。あと同じの2回…
Agavi-0.11系でテンプレートから$viewを使えるように設定している場合、$view->setAttribute()を呼び出すことでそれ以降に呼び出されるレイヤでそのアトリビュートが有効になり$templateからアクセスできるようになる。 これを使うとデコレータで用いるMaste…
この記事を修正翻訳したものをagaviのuser-MLにpostしました。そちらもあわせてご覧ください。 Agaviにはoutput_type.xmlで設定するレイアウトというのがある。これをViewで$this->loadLayout($name);するとテンプレートやらスロットやらを読み込んでくれる…
Agavi-0.11.2がリリースされました。このリリースでは0.11.1から使い勝手が大幅に向上していると思います。 まずは、毎度のリリースアナウンス邦訳を。(やたら短いので少し砕けた日本語にしてみた) やあ みんなAgavi 0.11.2 でました!今回はRC2から2つだけマ…
Agavi-0.11.2RC2がリリースされました。例によってアナウンスメールを邦訳しました。 こんにちは皆さん、 Agavi 0.11.2 RC2 が出ました! http://trac.agavi.org/browser/tags/0.11.2RC2/CHANGELOG にRC1からの3つの細かな修正についての詳細があります。 で…
リリースアナウンスから やあ、みんな Agavi 0.11.2 RC1 がでました! この保守リリースでは少しのバグフィックスと幾つかの機能追加を行っています。 注目すべきは、1.0からもいくつか機能がバックポートされた点です。 レイアウトを伴ったものも含めてView…
リリースアナウンスは後で訳します
http://trac.agavi.org/changeset/2503 RHEL/CentOS5.1だとそのままは動かせなくなるね。
agavi-0.11.1まではerror_class_mapで指定したXPathは、XPathで指定した要素が存在するかをチェックするためだけに使われています。 以前書いたマインドマップではこれを誤ってXPathで指定した要素に指定されたクラスを追加すると書いてしまいました。ごめん…
Agaviのルーティングではルートのパターンを正規表現で指定します。その際、回数指定の繰り返しをあらわす{}を使った記法がそのままでは通りません。 なぜうまくいかないのかといえば、agavi内で正規表現を拡張してパラメータ指定を行えるようにしたりしてい…
agavi-0.11.1がリリースされました。このリリースはagaviの最新安定版となります。 下記にリリースアナウンスの邦訳を掲載します。 やあ、みんな。 Agavi 0.11.1のさし当たっての有用性についてアナウンスしたいと思います。 0.11.0から100以上の修正と改良…
代わりにhttp://agaviproject.org/をご利用ください。 復活したようです。
リリースアナウンス邦訳を掲載します。 思っていたよりも時間が掛かってしまいましたが、ついにできました。 Agavi 0.11.1 RC3 は多くの小さな問題の修正と最新のタイムゾーンデータベースを伴っています。 注目すべきは、キャッシングに関する2つの問題が…