「
EBtシェル 2010年6月13日版.zip」をダウンロード
アクセスしてきたユニークユーザをリスト化し、アクセス権を制御するためのパーミッション管理機能を追加しました。
ユーザを「管理者ユーザ」「一般ユーザ」「書き込み禁止ユーザ」「クローラ」に分別し、新しいユーザさんは「一般ユーザ」としてリストに追加します。管理者ユーザがアクセスログを表示すると、エージェント名/リモートホストと一緒にリンク付きのユーザ名が表示され、ユーザ情報編集パネルを呼び出せます。
ちょっと前に海外のドメインからスパムな書き込みがあったので、そうしたアクセスに機能制限を加えるために追加した機能です。
ローカルCGIとして利用する場合は無条件に管理者ユーザとして扱われますので、ローカルで使う方に不便を強いるものではありません。
このサイトでは、一般ユーザの皆さんに対して機能制限を行うようなことはできるだけしないつもりでしたが、設定画面の利用とファイル削除は制限させていただきました。
あと、既存メモの書き換えは書き込んだ本人だけができるようにし、それ以外のユーザさんの書き換えを制限しています。
その機能の実現のために、メモ本文の続きに更新時刻と作成したユーザのIDを追記するようになっています。(ローカル利用の場合は追記しません)
また、この機会にブログ風のコメント欄を設置しました。
コメントといっても、書き込んだコメントは新規メモとして作られ、そのメモファイル名をメモ本文の続きに追記します。
「このメモとのリンク」の内容と関係なく、本文内に追記されたメモの内容を読み込み時に展開表示してコメントとして見せる仕組みです。
追記部分はEBtシェルで見る分にはコメントとして整形されて見えますが、同じテキストをEBtやEBtW等で見ると
タイトル
本文
----------lastupdate----------
/2010/06/07000940 ←更新時刻
投稿者ID
----------comment----------
/2010/06/04220658000 ←メモファイル名
投稿者ID
というフォーマットになっています。はい。EBtの流儀からいえば明らかに邪道です。
ただ、EBtシェルにコメント欄を追加するにあたって、コメントもメモとして扱うのがEBtの本懐だという思いがあったのと、メモ同士の主従関係をこれで表現できるかなと思ったんです。
あるメモを親メモとしてそこに子メモを作るというEBtのデフォルト挙動に沿うかぎり、二つのメモの関係は対等ではなく明らかに文脈上の主従関係があるものだと思うんですが、相互リンクしてしまうとそれがわかりにくくなるんですよね。
今回はそれを、親メモの方に子メモのファイル名を追記するという形で表現したわけですが、新規メモ作成時に子メモの方へ親メモファイル名を追記するのもアリですね。どうせ邪道なら。
文脈上の主従関係を表現する方法としては「リンク一覧の表示順を編集する機能」というのを元々は考えていたんですが、そちらはまだ実現していません。
先頭行を親メモへのリンクを置く定位置として、その下のリンクを重要度などで並べ変えられる、というようなイメージです。
そっちの方がうれしいというEBtユーザさんもいらっしゃるかも知れませんね。
ちなみに、現状のEBtシェルでは「このメモとのリンク」のリンク一覧は古い順にソートして表示しています。自分でも忘れているような古いメモほど思い出す価値が高い、という考え方からです。
あと、手書きメモ機能を実現すべく、商用以外完全フリーだという手書きフォームのJavascriptライブラリ「inputdraw.non-commercial.package.v1.5」をパッケージに同梱し、ファイルメニューにも「手書きメモを登録」という項目を追加しているんですが、ルーチンの方はうまく動かずまだ実装できていません。
Posted : 2010/06/13 17:31:53 上垣内
Comments (2)