ぐらめぬ・ぜぷつぇんのはてダ(2007 to 2011)

2007年~2011年ごろまで はてなダイアリー に書いてた記事を引っ越してきました。

YakiBiki

検索機能周り、ほぼ完了。

こんな感じ。 「関連記事を新規作成」「スレッドに関連記事を新規作成」など、データのView時に、refd/reftパラメータを付けるリンク表示。 →「スレッドに〜」は保留で現段階では未実装。無くても、まぁ・・・困らないと思う。 伴い、データのスレッドがREAD…

最初の山の、中腹・・・位、までは登れたかな。

最初の山を、「まともに動くProof of Consept」で 0.0.1 とナンバリングするのであれば、現在はおよそその中腹まで到達している。記事の本体データ、属性、バージョン、カテゴリ、メモにACL制御を実装した。いよいよ、待望のACL機能が実際に動いているのを、…

buttonタグ on IE6, どうしてくれようか・・・。

ずっと、なぜかIEではログインが動かなかった。で、いよいよACLやスレッドが動き出すので、そろそろ1ブラウザでの動作確認は面倒くさい。2種類のブラウザを併用し、片方で編集し、片方でACLチェックをする・・・みたいにしないと1ブラウザでログインして編…

う〜ん・・・駄目だ・・・。CSRF防げなかった・・・。

駄目だな。Xhwlay。 どうも、画面が2つ以下の場合に弱い。多分、IDの破棄と新規作成が同タイミングになってしまうからだろう。 すなおにcatalogの時と同じく、unique-idを入れよう。

スレッド管理画面とりあえず上がった・・・。

個人的には、Xhwlayとbuttonタグの兼ね合いでちょっと不満足な部分もあったけど、とりあえず動き出したので良しとする。 それよりもカテゴリ管理が今更ながら書き直したくなってきた(笑。というのも、実はスレッド管理画面はカテゴリ画面をコピーして直して…

Daoをsingletonに・・・しきれてなかった。

いえ、testcase系の中身は未だにnewしてるんですよ。数が多かったし、まぁいいじゃん、って思ってたんですが。全然良くねぇよ。 constructorはprivate扱いにしてるんだから。_| ̄|○いつか直そう。

変な機能追加。あと、お風呂入りながらつらつら考えていたことのメモ。

まず変な機能追加から。

今更ながら、PHP4でのSingletonデザパタで参照絡みで思いっきり嵌った。

。゚(゚´Д`゚)゚。PHP4の参照機構で嵌ったの、何度目でしょう。 もうね、こうね、本当にね、 PHP4の参照機構って(自主規制) だと思うの。 いや、reference counterのオーバーフローがどうのとかじゃなくて、なんかもう、 特に代入時の言語仕様として「( ´゚д゚`)…

ACLキャッシュの初期実装、終了。あとDAO系をsingletonに統一した。

諸事情で最近symfonyを勉強しています。で、そこで使われているPropelというO/RMapperでは、レコードのEntityを操作するクラスと、CRUD操作を担当するクラスとをきっちり分けています。Entityのクラスは基本的にインスタンス化された状態で使用します。一方…

ACLキャッシュ、諦めます。考え直し。

えっと、つまりですね。YB_LOGINED_UID(ログインしているユーザー全てを表す仮想ユーザー), YB_GUEST_ID(ログインしていないユーザー全てを表す仮想ユーザー), YB_ALL_UID (YB_LOGINED_UIDとYB_GUEST_UIDの和。つまりybにアクセスしてくる全ユーザー)に関す…

FormBuilderのsingletonの話だけど・・・

ちょっと試してみたら、うまくいかなかった。うーん、さほど体感として遅いわけでもないので、singletonは後回しにして、このまま進んじゃう。

遊んでないよ? というわけでACLの管理画面できた。

ええ、遊んでたわけでは御座いません。計算間違って休職中に現金がそこをつきそうになってマジヤヴァイ((((;゚Д゚)))ガクガクブルブル ということになって、某社でPHPのバイトを始めたためにyakibikiの時間が細切れになり、commitするまで時間がかかるようになっ…

Aclのトランザクションとりあえず。

なんかWikiとかHTML周りの実装が飽きてきたので、ACL管理とかAclキャッシュとかに入る。 で、Aclのトランザクションクラスをとりあえずテストケースと併せて実装。但し例によりAclキャッシュの処理は入れていない。 引き続き、ACL管理の画面系に入る。それが…

WikiとHTMLの関係について

昨日一日色々考えてて(いや、実際はCentOS5.1DLしたりインストールしてたり、Amazonから届いたCDをmp3に変換してたり、note-pcをウィルスバスター2007にupgradeしてたり、DVDコピーしてたりとかいろいろしつつだったのですが)、どうにもKinoWikiをそのまま…

Plugin周りについて

HtmlConverterを弄っていたら、必然的にPluginも触ることになった。 で、KinoWikiの場合は (プラグインのクラス) -> Plugin -> Controllerという継承関係になってる。で、 http://kinowiki.net/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3/%E4…

AutoLinkの扱い

をどうするか・・・なのだけれど。これ、daoやidx周りが絡んでくるので、今少し実装は待ちたいところ。というか自分自身としてAutoLinkが好きでない、というのがある。 まぁ、自分以外のユーザーの多数から要望が上がるようであれば実装する、という感じで、…

KinoWikiのHTML変換部分をPHP4のybクラスにバックポート中。

ヤバイ。量が多い。いや、マジで力技。量の問題になってきてる。 しかもおまけに、PHP5からPHP4へ戻す訳なので、オブジェクトや配列の参照渡しの部分をわざわざ"&"付きに戻さなければならない。 mb_stringが入っていない環境(非マルチバイト圏でのレンタル…

とある事情でPukiWikiのKinoWikiのHTML変換部分のコードを眺めているわけですが。

昨晩から。なんとなく流れは分かってきました。で、結局どっちをどうRemixしてYakiBikiに応用しようか(いや、実際は劣化コピーになるわけですが)というところなんですが。YakiBikiって、Apache License Version 2.0 なのです。・・・PukiWikiはGPLだから使…

groupモジュールとりあえず作成。

但しACLCacheの更新処理は埋め込んでいない。 とりあえず1日かけてできあがり。あと、yb_Xhwlayを少しまとめ直した。で、ちょっとhタグ系でborder-bottomが効いてしまうのが出てきてる。うーん、例により適当にh2 - h5まで使ってるからなぁ。まぁ、HTMLデザ…

GroupのTransactionでメモ。

グループ一覧・情報の取得にはdaoのGroupではなくて、TransactionのGroupを叩く事。Transactionのfind_by_id(), find_allはエラーは発生しない。只、アクセス制御に引っ掛かればそのデータを返さないだけ。 find_all()は基本的にgroup権限であれば全て取得す…

PEAR::Error_Stackについて復習

GroupのTXのテストケースを書き始めて、いよいよエラーハンドリングについて抜き差しならない状況に追い込まれつつある。 というのも、TXの性格からして、内部で context userのroleやownerの判別をする。当然。となると、ファイルが壊れたとか以外の、論理…

データを操作する時の権限について

つらつら考えながら、昨日寝る直前にこんなのを書いていた。 http://www.glamenv-septzen.net/pukiwiki/index.php?YakiBiki%A5%E1%A5%E2%2F2007-12-11 こーゆーのは、やっぱりWikiのシンプルで軽量なI/Fが良い。なんかはてダって、長文を書いていくとJavaScr…

検索画面と通常表示画面をモジュールで分離した。

えっと、YakiBikiで「モジュール」というのは、いわゆる一機能単位の画面分割名みたいな感じです。 http://.../?mdl=register : 新規アカウント登録 http://.../?mdl=user : ユーザー管理画面 http://.../?mdl=category : カテゴリ管理画面 http://.../ : (…

いくつかのPOSTフォームで

actionで、デフォルトURLを指定し待っている為、幾つかのPOSTフォームでは、POST後のURLが http://yb-test/ みたく、モジュールやパラメータの指定が無いURLになってアドレスバーで表示されてしまっている。 この状態でALT+Dとかでアドレスバー直打ち+RETUR…

HTMLデザイナにはなれそうにない・・・。

セルフモチベーションを高める為、ちょっと混乱気味なりつつあるCSSやHTML、ヘッダー部分を弄りだしたんだけど、マヂで気が狂いそう。 指定したとおりにならねぇ。多分、どっかでどっかがどうにか干渉して思った通りにならないのは確かなんだけど、どういう…

リスト画面、まだ途中だけど例によりcommit。

しておきます。まだ検索条件を指定するsearchboxが出来上がっていない。いや、先ほどのcommitで含ませてはいるのだけれど、submitボタンを入れてないし。デフォルト値の設定はまだだし。HTMLはひどいし・・・ではあるけれど、まぁ、外面は出来たかも知れない…

携帯機種変更、あとyb_Cacheの導入

携帯の機種を昨日変更したわけだが、最近のはFelicaやらモバイルSuicaやらワンセグTVなど機能盛りだくさんで、正直なところ、なんと半日も、端末の使い方を覚えたり前の端末のデータをクリアするのに費やした。 というか前の端末自体、デザインが気に入りす…

category, memo, infoコマンド実装。

I'm back. 家の都合で4日ほどこちらには来れなかったが、帰ってきたぜ。これで、基本的なデータ編集ができるようになった。但し例により、ACLの評価やrole/ownerによるアクセスコントロールは全然実装していない。 とりあえずこれで、GroupとAcl機能をスポイ…

基本検索画面、作成途中でcommit。

とりあえずざっくりした処理の流れを作って、作りかけだけど・・・何があるか分かんないので、念のためリポジトリにcommitしておく。明日も引き続き、基本検索画面を頑張る。そろそろ、Dataに絡むdaoのCacheが必要になってきた感じ。基本検索画面でCategory/…

diffコマンド実装

出がけの隙を見てレストランやら昼休みの間に、たぶん正味2時間くらいででっち上げられた。 txt/html/wiki、image、attachそれぞれでdiffコマンド実装終了。基本的にversionコマンドのぱくりですんだので、助かった。