- 2019
- 1 2 3 4 5 6 7 8 9 10 11 12
<<
2009.6
>>
[d3diary開発日記] |
||||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 | 3 | 5 | ||||
7 | 8 | 10 | 11 | 12 | ||
14 | 16 | 18 | 20 | |||
21 | 23 | 25 | 27 | |||
28 | 29 |
概要
- search.phpのD3対応が漏れていたので、修正。
- テンプレートから言語定数の分離を実行。(ソースファイルのコメントは一部まだ残あるかも)
これに伴い、ja_utf8の言語ファイルも添付。 - minidiaryとd3diaryからのインポート機能を実装(管理画面に)
コメントのインポート、イベント通知のインポートも実装してみた。 - 機能追加予定の内容に関わる、DBテーブルの追加、フィールド追加を先行実施。 アップデートスクリプト追記。
- 画像添付を最大9枚まで可能にした。 管理画面の一般設定に、最大3/6/9枚のセレクトを追加。
- 前回の日記で書き漏らした点として、minidiaryではxpWikiレンダラーモード使用時に文字化け等が発生していたことの対策として、本文以外はtextsanitizerのBBcode変換などを通さないように変更してある。
フォルダ・ファイル構成
html (XOOPS_ROOT_PATH)
├─class
│ └smarty
│ └plugins
│ function.d3comment.php
│ function.d3forum_comment.php
│ function.d3forum_comment_postscount.php
│ function.d3forum_comment_topicscount.php
│ function.xugj_block.php
│
└─modules
│ └(d3forum)
│ └blocks
│ blocks_bcomment.php
│
└─d3diary
│ comment_delete.php、comment_edit.php、comment_new.php (wrapper)
│ comment_post.php、comment_reply.php (wrapper)
│ detail.php、diarylist.php (wrapper for compatibility)
│ index.php (wrapper)
│ module_icon.php (wrapper)
│ mytrustdirname.php
│ notification.php、notification_update.php (wrapper)
│ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ rdf.php、search.php、viewcomment.php (wrapper for compatibility)
│ xoops_version.php
├admin
│ admin_menu.php、index.php (wrapper)
├blocks
│ blocks.php (wrapper)
├cache (777)
├images
│ arrow1.png、、etc..
├include
│ imgresize.php (wrapper)
├preload
│ D3diaryPreload.class.php (wrapper)
└upimg (777)
trust (XOOPS_TRUST_PATH)
└modules
│└d3diary
│ │ admin.php、admin_menu.php
│ │ blocks.php
│ │ main.php
│ │ module_icon.php、module_icon.png
│ │ notification.php
│ │ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ │ preload.php、search.php
│ │ xoops_version.php
│ ├admin
│ │ import.php、index.php、mymenu.php
│ ├blocks
│ │ block_functions.php
│ ├class
│ │ category.class.php、diary.class.php
│ │ diaryconfig.class.php、gtickets.php、photo.class.php
│ │ d3diaryD3commentContent.class.php
│ ├include
│ │ │ comment_view.php、functions.php、header.php
│ │ │ imgresize.php、import_functions.php、mytable.php
│ │ │ x20_keepblockoptions.inc.php
│ │ └magpierss
│ │ │ rss_cache.inc、rss_fetch.inc、rss_parse.inc、rss_utils.inc
│ │ └extlib
│ │ Snoopy.class.inc
│ ├language
│ │ ├japanese
│ │ │ │ admin.php、blocks_common.php、blocks_each.php
│ │ │ │ main.php、modinfo.php
│ │ │ └mail_template
│ │ │ blogger_comment_notify.tpl
│ │ │ blogger_newentry_notify.tpl
│ │ │ global_newentry_notify.tpl
│ │ └ja_utf8 (same as japanese)
│ ├main
│ │ bloggerlist.php、detail.php、diarylist.php
│ │ edit.php、editcategory.php
│ │ index.php
│ │ notification_update.php、other.php
│ │ rdf.php、usr_config.php、viewcomment.php
│ ├sql
│ │ mysql.sql
│ └templates
│ admin_import.html
│ block_bloggerlist.html、block_diarylist.html
│ bloggerlist.html
│ detail.html、diarylist.html
│ edit.html、editcategory.html
│ inc_blog_options.html、inc_open_options.html
│ index.html、other.html、rightarea.html
│ tabmenu.html
│ usr_config.html、viewcomment.html
├ d3forum
│ │ blocks_bcomment.php
│ │
│ └blocks
│ block_functions_bcomment.php
└ d3pipesm
└joints
└block
D3pipesBlockD3diarylist.class.php
テストサイト
テストサイトで、不定期にテスト継続中。
記事毎の公開範囲設定を実装
Tag: 現状報告
概要
- 記事毎の公開範囲設定を実装。
- 但し、日記全体設定の公開範囲より広げる設定はできないこととした。
- 下書き設定(非公開)を記事毎の公開範囲設定に追加。
- テンプレート index.html に日本語直書きが残っていたので修正。
- テンプレート inc_open_options.html を前回追加していたが、あまり意味がないため削除。
フォルダ・ファイル構成
html (XOOPS_ROOT_PATH)
├─class
│ └smarty
│ └plugins
│ function.d3comment.php
│ function.d3forum_comment.php
│ function.d3forum_comment_postscount.php
│ function.d3forum_comment_topicscount.php
│ function.xugj_block.php
│
└─modules
│ └(d3forum)
│ └blocks
│ blocks_bcomment.php
│
└─d3diary
│ comment_delete.php、comment_edit.php、comment_new.php (wrapper)
│ comment_post.php、comment_reply.php (wrapper)
│ detail.php、diarylist.php (wrapper for compatibility)
│ index.php (wrapper)
│ module_icon.php (wrapper)
│ mytrustdirname.php
│ notification.php、notification_update.php (wrapper)
│ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ rdf.php、search.php、viewcomment.php (wrapper for compatibility)
│ xoops_version.php
├admin
│ admin_menu.php、index.php (wrapper)
├blocks
│ blocks.php (wrapper)
├cache (777)
├images
│ arrow1.png、、etc..
├include
│ imgresize.php (wrapper)
├preload
│ D3diaryPreload.class.php (wrapper)
└upimg (777)
trust (XOOPS_TRUST_PATH)
└modules
│└d3diary
│ │ admin.php、admin_menu.php
│ │ blocks.php
│ │ main.php
│ │ module_icon.php、module_icon.png
│ │ notification.php
│ │ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ │ preload.php、search.php
│ │ xoops_version.php
│ ├admin
│ │ import.php、index.php、mymenu.php
│ ├blocks
│ │ block_functions.php
│ ├class
│ │ category.class.php、diary.class.php
│ │ diaryconfig.class.php、gtickets.php、photo.class.php
│ │ d3diaryD3commentContent.class.php
│ ├include
│ │ │ comment_view.php、functions.php、header.php
│ │ │ imgresize.php、import_functions.php、mytable.php
│ │ │ x20_keepblockoptions.inc.php
│ │ └magpierss
│ │ │ rss_cache.inc、rss_fetch.inc、rss_parse.inc、rss_utils.inc
│ │ └extlib
│ │ Snoopy.class.inc
│ ├language
│ │ ├japanese
│ │ │ │ admin.php、blocks_common.php、blocks_each.php
│ │ │ │ main.php、modinfo.php
│ │ │ └mail_template
│ │ │ blogger_comment_notify.tpl
│ │ │ blogger_newentry_notify.tpl
│ │ │ global_newentry_notify.tpl
│ │ └ja_utf8 (same as japanese)
│ ├main
│ │ bloggerlist.php、detail.php、diarylist.php
│ │ edit.php、editcategory.php
│ │ index.php
│ │ notification_update.php、other.php
│ │ rdf.php、usr_config.php、viewcomment.php
│ ├sql
│ │ mysql.sql
│ └templates
│ admin_import.html
│ block_bloggerlist.html、block_diarylist.html
│ bloggerlist.html
│ detail.html、diarylist.html
│ edit.html、editcategory.html
│ inc_blog_options.html
│ index.html、other.html、rightarea.html
│ tabmenu.html
│ usr_config.html、viewcomment.html
├ d3forum
│ │ blocks_bcomment.php
│ │
│ └blocks
│ block_functions_bcomment.php
└ d3pipesm
└joints
└block
D3pipesBlockD3diarylist.class.php
テストサイト
テストサイトで、不定期にテスト継続中。
既知の不具合
- コメントとイベント通知のインポートができない。 → 次の日記分で修正。
- RSS配信が表示されない
- 新着記事ブロックで、xoopsコメント新着数が表示されない
- 各記事表示の「前の記事」「次の記事」に、表示できない記事へリンクされる。
(対策が難しいので、当面はこのままか。。) - その他、こまごまと。
- (追記)minidiaryとd3diaryの両方の記事リストブロックを表示すると、真っ白。 → 次の日記分で修正。
- (追記)外部ブログ分の、全体新着リスト表示が出ない。 → カテゴリ毎の外部ブログ設定機能実装時に見直し
- (追記)本文閲覧権限がおかしい。 d3コメント統合の表示権限、イベント通知権限もおかしい。 → 手元で修正済み、次の日記分で修正。
統合コメント表示権限の悩み・・
本日の開発日記は、進捗報告はありません。
手元での進捗はありますが、公開するレベルのものがない、ということです。
加えて、悩みが増えてしまったので、少し愚痴ります。
d3コメント統合のユーザー単位の記事コメント表示。 現状は、minidiaryのハックで取り入れた、d3forumのブロックを改変したカスタムスクリプトを /trust/modules/d3forum/blocksフォルダ内において、xugj_blockで呼び出しています。
そしてここに、記事毎の公開範囲設定が加わるとどうなるか。 結局、自分のモジュールの各記事リストの権限チェックが必要になってしまい、 ぐるっと回って処理が戻る、というような面倒なことになってくることに、ようやく気付きました。
こうなってくると、今までの方式ではなく、自分の中の関数にd3forumのテーブルを直接呼び出す処理を組み込みたくなります。 ちょうど、元のminidiaryのxoopsコメントリスト表示でやっているような内容です。 おそらくそのほうが、トータルの処理時間を短くできるでしょう。
同様に、d3コメント統合したフォーラムのd3pipesへの表示も、記事単位の権限チェックが必要になってきます。 これはまだ「外部公開設定」だけに絞れるのですが、 こちらも処理としては重くなる一方です。
さて、しばし検討します。。
(2009-06-07追記)
どうやらfnctions.phpの function d3diary_assign_commentlist に手を入れて、実装できた。 これでこの部分はテンプレートでd3commentかどうかの切り替えが要らないし、xugj_blockもd3forum側のカスタムブロックソースも不要。
ただ、d3diary側の表示は良いとしても、d3forum側でトピックリストを表示すると全部見えてしまう。 何か方法はないか、XUGJで質問してみた。
概要
- minidiaryの関数との競合を避けるため、関数名を変更。(thx saya07さん)
- カテゴリ毎の詳細設定画面を作りました。 カテゴリ一覧で「カテゴリ詳細設定」ボタンで開く画面で設定します。
- カテゴリ毎の外部ブログ設定は、現時点ではまだ効きません。(設定できるが中身無し)
- カテゴリ毎の閲覧権限機能を組み込んだ。
- 上記にも関連するが、カテゴリ毎の詳細設定ON/OFF、記事毎の権限設定ON/OFF スイッチを、管理画面に追加した。
- 閲覧権限の関数まわりを全般的に見直し、実行速度にも気を配って修正。
- コメントリストも、元記事の権限を引き継ぐように修正。
参考:XUGJのこのトピ。 そこから更に修正。
今回のパッケージから、html側、trust側ともd3forumディレクトリをそっくり削除。 - d3pipesのブロックジョイント、d3pipes側はラッパーとし、実体をd3diaryのclassフォルダ内に置いた。(xpwiki方式:thx nao-ponさん)
- RSS表示が出ていなかったのを修正。 但し、公開設定の記事のみ
カテゴリ毎の外部ブログ設定実装
やっと実装できました。
その他、多くの不具合を潰したつもりです。 今回からベータ版の扱いとします。
今後、不具合を潰しつつ、次回はリリース候補(RC)版とする予定ですので、テストいただける方、よろしくお願いします。
概要
- カテゴリ毎の外部ブログ設定が可能。
- 友人連携機能に、XSNSに加えてmyfriendモジュールを選択可能とした。 これに伴い、モジュール変数を変更したので、従来のテスト版からのアップデートで設定が初期化されるため、再度設定しなおしていただくようお願いします。
- 閲覧権限の関数まわりを再度見直し。
- RSSのタイトル文字化け、修正したつもり。UTF-8の環境の方、どなたかテスト願います。
- 記事一覧ブロックへの外部ブログ記事表示されない件、修正。
- 本文表示の、前の記事、次の記事 のリンクで閲覧権限の無い記事へリンクされてしまう件、修正。
- RSSの権限チェック実装(公開記事のみ、配信)
- search.phpへの権限反映、実装
概要
- タグ機能の実装
- kilicaさんの「でブクマ君」モジュールのソースをかなり使わせていただきました。 どうもありがとうございます。(thx kilicaさん)
- ユーザー毎のindexリストページと、全体のリストページへの表示/非表示を、管理画面で行います。
- 入力ページでは、自己のタグと全体のタグを表示して、クリックすることで選択/解除が可能。
- 携帯用テンプレートの同梱(正式リリース以降は、モバイルテンプハウスに移動します)
- グローバルサーチで、1つの日記が複数検索されてしまう。 search.phpの不具合、修正済。
- 一度に送信できる画像掲載枚数、 設定した最大枚数-1枚 までしかアップされない不具合、修正済。
- head内の「○○さんの日記」の文字化け、直っていなかったので修正。(thx saya07さん)
- RSSのタイトル文字化け、修正したつもりが直っていなかったので修正。(thx saya07さん)
- block_diarylist.htmlブロックへの記事数設定が反映されない不具合、修正。(thx saya07さん)
- タイトルなしでの投稿防止のため、Javascriptで入力チェックを追加。(thx saya07さん)
加えて、タイトル無しでも「タイトルなし」と表示するよう、各所を変更。 - README.JA.TXTを同梱。
フォルダ・ファイル構成
html (XOOPS_ROOT_PATH)
├─class
│ └smarty
│ └plugins
│ function.d3comment.php
│ function.d3forum_comment.php
│ function.d3forum_comment_postscount.php
│ function.d3forum_comment_topicscount.php
│
└─modules
└─d3diary
│ comment_delete.php、comment_edit.php、comment_new.php (wrapper)
│ comment_post.php、comment_reply.php (wrapper)
│ detail.php、diarylist.php (wrapper for compatibility)
│ index.php (wrapper)
│ module_icon.php (wrapper)
│ mytrustdirname.php
│ notification.php、notification_update.php (wrapper)
│ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ rdf.php、search.php、viewcomment.php (wrapper for compatibility)
│ xoops_version.php
├admin
│ admin_menu.php、index.php (wrapper)
├blocks
│ blocks.php (wrapper)
├cache (777)
├images
│ arrow1.png、、etc..
├include
│ imgresize.php (wrapper)、tag.css、tag.js
├preload
│ D3diaryPreload.class.php (wrapper)
└upimg (777)
trust (XOOPS_TRUST_PATH)
└modules
│└d3diary
│ │ admin.php、admin_menu.php
│ │ blocks.php
│ │ main.php
│ │ module_icon.php、module_icon.png
│ │ notification.php
│ │ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ │ preload.php、README.JA.TXT、search.php
│ │ xoops_version.php
│ ├admin
│ │ import.php、index.php、mymenu.php
│ ├blocks
│ │ block_functions.php
│ ├class
│ │ category.class.php、diary.class.php
│ │ diaryconfig.class.php、gtickets.php、photo.class.php、tag.class.php
│ │ d3diaryD3commentContent.class.php
│ ├include
│ │ │ comment_view.php、d3pipes.inc.php、functions.php
│ │ │ header.php、imgresize.php、import_functions.php
│ │ │ mytable.php、x20_keepblockoptions.inc.php
│ │ └magpierss
│ │ │ rss_cache.inc、rss_fetch.inc、rss_parse.inc、rss_utils.inc
│ │ └extlib
│ │ Snoopy.class.inc
│ ├language
│ │ ├japanese
│ │ │ │ admin.php、blocks_common.php、blocks_each.php
│ │ │ │ main.php、modinfo.php
│ │ │ └mail_template
│ │ │ blogger_comment_notify.tpl
│ │ │ blogger_newentry_notify.tpl
│ │ │ global_newentry_notify.tpl
│ │ └ja_utf8 (same as japanese)
│ ├main
│ │ bloggerlist.php、detail.php、diarylist.php
│ │ edit.php、editcat_config.php、editcategory.php
│ │ index.php
│ │ notification_update.php、other.php
│ │ rdf.php、usr_config.php、viewcomment.php
│ ├sql
│ │ mysql.sql
│ └templates
│ admin_import.html
│ block_bloggerlist.html、block_diarylist.html
│ bloggerlist.html
│ detail.html、diarylist.html
│ edit.html、editcat_config.html、editcategory.html
│ inc_blog_options.html
│ index.html、other.html、rightarea.html
│ tabmenu.html
│ usr_config.html、viewcomment.html
└ d3pipesm
└joints
└block
D3pipesBlockD3diarylist.class.php (wrapper)
概要
- d3コメント統合ブロック2つ
- コメント単位の表示ブロック
- トピック単位の表示ブロック。 簡易表示/詳細表示切替つき。
最新投稿の記事本文アサイン付き(ブロックには表示しません) - いずれも、元記事の閲覧権限チェックを通過したものしか表示されません。
但し、d3forum自体には元記事の権限チェックがありませんので、d3forumのメイン表示トピックリストには全コメントトピックが乗ってしまい回避できません。 タイトルなどは表示されますが、リンクをクリックしてもコメント本文は表示されずにリダイレクトされます。
- d3pipesのブロックジョントとして、統合コメント用のジョイント「D3pipesBlockD3diaryd3com」を追加。
ジョイントのオプションで、コメント単位で表示するかトピック単位かを設定できる。
上記のブロックを呼び出す方式なので、権限チェックもバッチリ。 - 日記ページの「最近のコメント」をリンクした時の飛び先のアンカー形式を、d3forumデフォルトの「post_path」か、テンプレート編集による「post_id」とするかを管理画面で選択するようにした。
- 「post_path」方式でも通常は問題にならないが、 1つの記事にコメントが多数付いた際、モデレーターの判断でトピックを分割した場合に、複数の同じ「post_path」が発生してしまうため、リンク先として不適当となる。
- これの対処として、完全にユニークな「post_path」を使う方法があり、d3forumの「comment_listposts_flat.html」を編集することで飛び先を確保できるので、 d3diaryからその飛び先を指定可能なようにしたもの。 通常は、デフォルトで変更の必要はない。
- ブログタイプのデフォルト値、直したつもりが直っていなかった。「0」に修正。
フォルダ・ファイル構成
html (XOOPS_ROOT_PATH)
├─class
│ └smarty
│ └plugins
│ function.d3comment.php
│ function.d3forum_comment.php
│ function.d3forum_comment_postscount.php
│ function.d3forum_comment_topicscount.php
│
└─modules
└─d3diary
│ comment_delete.php、comment_edit.php、comment_new.php (wrapper)
│ comment_post.php、comment_reply.php (wrapper)
│ detail.php、diarylist.php (wrapper for compatibility)
│ index.php (wrapper)
│ module_icon.php (wrapper)
│ mytrustdirname.php
│ notification.php、notification_update.php (wrapper)
│ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ rdf.php、search.php、viewcomment.php (wrapper for compatibility)
│ xoops_version.php
├admin
│ admin_menu.php、index.php (wrapper)
├blocks
│ blocks.php (wrapper)
├cache (777)
├images
│ arrow1.png、、etc..
├include
│ imgresize.php (wrapper)、tag.css、tag.js
├preload
│ D3diaryPreload.class.php (wrapper)
└upimg (777)
trust (XOOPS_TRUST_PATH)
└modules
│└d3diary
│ │ admin.php、admin_menu.php
│ │ blocks.php
│ │ main.php
│ │ module_icon.php、module_icon.png
│ │ notification.php
│ │ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ │ preload.php、README.JA.TXT、search.php
│ │ xoops_version.php
│ ├admin
│ │ import.php、index.php、mymenu.php
│ ├blocks
│ │ block_functions.php
│ ├class
│ │ category.class.php、diary.class.php
│ │ diaryconfig.class.php、gtickets.php、photo.class.php、tag.class.php
│ │ d3diaryD3commentContent.class.php
│ ├include
│ │ │ comment_view.php、d3pipes.inc.php、d3pipesd3com.inc.php、
│ │ │ functions.php、header.php
│ │ │ imgresize.php、import_functions.php
│ │ │ mytable.php、x20_keepblockoptions.inc.php
│ │ └magpierss
│ │ │ rss_cache.inc、rss_fetch.inc、rss_parse.inc、rss_utils.inc
│ │ └extlib
│ │ Snoopy.class.inc
│ ├language
│ │ ├japanese
│ │ │ │ admin.php、blocks_common.php、blocks_each.php
│ │ │ │ main.php、modinfo.php
│ │ │ └mail_template
│ │ │ blogger_comment_notify.tpl
│ │ │ blogger_newentry_notify.tpl
│ │ │ global_newentry_notify.tpl
│ │ └ja_utf8 (same as japanese)
│ ├main
│ │ bloggerlist.php、detail.php、diarylist.php
│ │ edit.php、editcat_config.php、editcategory.php
│ │ index.php
│ │ notification_update.php、other.php
│ │ rdf.php、usr_config.php、viewcomment.php
│ ├sql
│ │ mysql.sql
│ └templates
│ admin_import.html
│ block_bloggerlist.html、block_diarylist.html
│ block_d3comlist_posts.html、block_d3comlist_topics.html
│ bloggerlist.html、detail.html、diarylist.html
│ edit.html、editcat_config.html、editcategory.html
│ inc_blog_options.html
│ index.html、other.html、rightarea.html
│ tabmenu.html
│ usr_config.html、viewcomment.html
└ d3pipesm
└joints
└block
D3pipesBlockD3diarylist.class.php 、D3pipesBlockD3diaryd3com.class.php (wrapper)
リリースまで
- バグ潰し
- ユーザーメニューの、イベント通知設定済み一覧で、 リンク文字・リンクが出ていなかったバグを修正。 手元で修正済み、次回の版で盛込み。
- ゲストがindexページにreq_user指定でアクセスした際、タグが全員分表示されるバグあり。手元で修正済み、次回の版で盛込み。
- 英語の言語ファイル同梱。 (手元では作成済。)
- d3統合コメントの、d3forumメイン表示トピックへの、元記事閲覧権限フィルターをかけるための関数を、d3comment統合クラスに実装した。 次回の版で盛込み。
元ネタ:(XUGJ)d3forum-d3diary統合元モジュール閲覧権限フィルター
概要
- d3コメント統合ブロック(d3diary元記事の閲覧権限チェック付き)2つの改善
- d3forumの他のforumとの集約表示を可能としました。
- 対象となるd3forumのcategoryとforumは、オリジナルのd3forumのブロックではできなくて面倒だった、categoryとforumの「OR」指定を可能としました。 どちらか片方だけ入力すると、他方は無視、両方入力でOR条件、両方空欄で全forumが対象となります。 forumの閲覧権限フィルターも通す必要があるので、ロジックが面倒でしたが、複雑になりすぎたSQLを少し整理できました。 d3forumのテーブルにはクエリ一発で検索しています。
- 本文をアサインするかどうかのオプションを追加。
- d3pipesの統合コメント用のジョイント「D3pipesBlockD3diaryd3com」の改善。
- 上記のd3forumの他のforumとの集約表示が指定できます。
- 記事タイトルに、[フォーラム名]を付加しました。 不要の場合は、「include/d3pipesd3com.inc.php」を編集します。
- 本文をアサインするかどうかのオプションを追加。
- 英語の言語ファイル同梱。
- d3統合コメントの、d3forumメイン表示トピックへの、元記事閲覧権限フィルターをかけるための関数を、d3comment統合クラスに実装した。 d3forum側のハック要。
元ネタ:(XUGJ)d3forum-d3diary統合元モジュール閲覧権限フィルター - バグ潰し
- ユーザーメニューの、イベント通知設定済み一覧で、 リンク文字・リンクが出ていなかったバグを修正。
- ゲストがindexページにreq_user指定でアクセスした際、タグが全員分表示されるバグ修正。
- (090623追記) 記事一覧ブロックのソートが正しく行われていなかったバグを修正。
- (090623追記) trust側の「functions.php」「other.php」に、EUC=JP決め打ちソースがあったのを修正。
- (090623追記) 各人intexページでcategory指定時の公開範囲画像が正しくなかったのを修正。
- (090623追記) カテゴリ未選択記事のカテゴリ欄の「未選択」が出なかったのを修正。(以上、d3diary_0.01RC_090623.zip)
スクリーンショット
- d3統合コメントのトピック単位の表示ブロックのブロックオプション指定
- d3pipesのd3統合コメント用ブロックジョイント設定
d3pipes側に言語定数を追加定義する方法が、ワカリマセン・・
functionの持ち方変更
RC版とうたっておきながら、再度の変更。
機能追加などはありません。 今テストいただくならこれでお願いします、という程度の意味合いです。
リリースまで「ゆっくり」いけるかと思ったのですが、諸々あって、都度少しずつ変更をかけます。 日々変わるかもしれません、ご容赦ください。
フォルダ・ファイル構成
html (XOOPS_ROOT_PATH)
├─class
│ └smarty
│ └plugins
│ function.d3comment.php
│ function.d3forum_comment.php
│ function.d3forum_comment_postscount.php
│ function.d3forum_comment_topicscount.php
│
└─modules
└─d3diary
│ comment_delete.php、comment_edit.php、comment_new.php (wrapper)
│ comment_post.php、comment_reply.php (wrapper)
│ detail.php、diarylist.php (wrapper for compatibility)
│ index.php (wrapper)
│ module_icon.php (wrapper)
│ mytrustdirname.php
│ notification.php、notification_update.php (wrapper)
│ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ rdf.php、search.php、viewcomment.php (wrapper for compatibility)
│ xoops_version.php
├admin
│ admin_menu.php、index.php (wrapper)
├blocks
│ blocks.php (wrapper)
├cache (777)
├images
│ arrow1.png、、etc..
├include
│ imgresize.php (wrapper)、tag.css、tag.js
├preload
│ D3diaryPreload.class.php (wrapper)
└upimg (777)
trust (XOOPS_TRUST_PATH)
└modules
│└d3diary
│ │ admin.php、admin_menu.php
│ │ blocks.php
│ │ main.php
│ │ module_icon.php、module_icon.png
│ │ notification.php
│ │ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ │ preload.php、README.JA.TXT、search.php
│ │ xoops_version.php
│ ├admin
│ │ import.php、index.php、mymenu.php
│ ├blocks
│ │ block_functions.php、b_bloggerlist.php、b_diarylist.php
│ │ b_d3comlist_posts.php、b_d3comlist_topics.php
│ ├class
│ │ category.class.php、diary.class.php
│ │ diaryconfig.class.php、gtickets.php、photo.class.php、tag.class.php
│ │ d3diaryD3commentContent.class.php
│ ├include
│ │ │ comment_view.php、d3pipes.inc.php、d3pipesd3com.inc.php、
│ │ │ functions.php、header.php
│ │ │ imgresize.php、import_functions.php
│ │ │ mytable.php、x20_keepblockoptions.inc.php
│ │ └magpierss
│ │ │ rss_cache.inc、rss_fetch.inc、rss_parse.inc、rss_utils.inc
│ │ └extlib
│ │ Snoopy.class.inc
│ ├language
│ │ ├japanese
│ │ │ │ admin.php、blocks_common.php、blocks_each.php
│ │ │ │ main.php、modinfo.php
│ │ │ └mail_template
│ │ │ blogger_comment_notify.tpl
│ │ │ blogger_newentry_notify.tpl
│ │ │ global_newentry_notify.tpl
│ │ └ja_utf8 (same as japanese)
│ ├main
│ │ bloggerlist.php、detail.php、diarylist.php
│ │ edit.php、editcat_config.php、editcategory.php
│ │ index.php
│ │ notification_update.php、other.php
│ │ rdf.php、usr_config.php、viewcomment.php
│ ├sql
│ │ mysql.sql
│ └templates
│ admin_import.html
│ block_bloggerlist.html、block_diarylist.html
│ block_d3comlist_posts.html、block_d3comlist_topics.html
│ bloggerlist.html、detail.html、diarylist.html
│ edit.html、editcat_config.html、editcategory.html
│ inc_blog_options.html
│ index.html、other.html、rightarea.html
│ tabmenu.html
│ usr_config.html、viewcomment.html
└ d3pipesm
└joints
└block
D3pipesBlockD3diarylist.class.php 、D3pipesBlockD3diaryd3com.class.php (wrapper)
リリースまで
- バグ潰し、その他
- _cntテーブルに記録されている、日々のアクセスカウント数を削除するコードが無い?(minidiary当時から) ので、これを盛り込む。 → 現状使っていないデータなので、minidiaryからのインポート時のデータ除外と、モジュールappudate時の削除を実施するよう、手元で修正済み。次回の版で公開。
- category削除時や、外部設定/解除時、newentryテーブルから当該カテゴリレコードを削除するコードを書き忘れていたので、盛り込む。 → 外部設定/解除時の削除は取りやめ、category削除時のみ削除するように、手元で修正済み。次回の版で公開。
- notificationの設定一覧の説明語を適切に修正。次回の版で公開。
- 下書きから公開に変更する際に、イベント通知がされていなかった。 「投稿日時を更新する」をチェックした場合のみ、イベント通知するように変更。次回の版で公開。
- 日記自体のイベント通知が、送信されていない? 原因判明、次回の版で公開。
- indexページの各自の日記リストと、blockの日記リストの表示順と記事数制限がおかしい。 → 修正済み、次回の版で公開。
- bloggerリストおよびブロックの表示件数がおかしい。 → 全般的に見直し済、次回の版で公開。
リリース最終候補版
諸々修正を加えまして、本当の意味でのリリース候補版です。
ぜひお試しください。 動作報告(正常/異常とも)お早目に、お願いします。m(..)m
今月中に、正式リリースのつもりですんで。。
概要
- 記事一覧ブロックと、d3pipesブロックジョイントで、本文詳細表示/非表示と、文字数設定を追加。
- バグ潰し、その他
- _cntテーブルに記録されている、日々のアクセスカウント数を削除するコードが無かった(minidiary当時から)。 データは不使用なので、minidiaryからのインポート時の当該データ除外と、モジュールupdate時にテーブルから削除を実施するよう修正。
- category削除時、newentryテーブルから当該カテゴリレコードを削除するように修正。
- notificationの設定一覧の説明語を適切に修正。
- 日記自体のイベント通知が、送信されていなかったのを修正。
- 下書きから公開に変更する際に、イベント通知するコードが無かった。 「投稿日時を更新する」をチェックした場合のみ、イベント通知するように変更。
- indexページの各自の日記リストと、blockの日記リストの表示順と記事数制限がおかしかったのを修正。
- bloggerリストおよびブロックの表示件数がおかしかったのを全般的に見直し修正。
- rssフィードの本文から都合によりタグを除去した。
- 同、タイムゾーンの指定で「+9」を排除。 但しちょっと自信が無いので、後日改めてきちんと修正します。
- (追記)外部ブログ取得用のライブラリ Snoopyが、稀に競合する場合があることが判明。 クラス名や主な関数名を変更した。(d3diary_0.01RC_090627.zip)
フォルダ・ファイル構成
(2009/06/24版から変更なし)
html (XOOPS_ROOT_PATH)
├─class
│ └smarty
│ └plugins
│ function.d3comment.php
│ function.d3forum_comment.php
│ function.d3forum_comment_postscount.php
│ function.d3forum_comment_topicscount.php
│
└─modules
└─d3diary
│ comment_delete.php、comment_edit.php、comment_new.php (wrapper)
│ comment_post.php、comment_reply.php (wrapper)
│ detail.php、diarylist.php (wrapper for compatibility)
│ index.php (wrapper)
│ module_icon.php (wrapper)
│ mytrustdirname.php
│ notification.php、notification_update.php (wrapper)
│ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ rdf.php、search.php、viewcomment.php (wrapper for compatibility)
│ xoops_version.php
├admin
│ admin_menu.php、index.php (wrapper)
├blocks
│ blocks.php (wrapper)
├cache (777)
├images
│ arrow1.png、、etc..
├include
│ imgresize.php (wrapper)、tag.css、tag.js
├preload
│ D3diaryPreload.class.php (wrapper)
└upimg (777)
trust (XOOPS_TRUST_PATH)
└modules
│└d3diary
│ │ admin.php、admin_menu.php
│ │ blocks.php
│ │ main.php
│ │ module_icon.php、module_icon.png
│ │ notification.php
│ │ oninstall.php、onuninstall.php、onupdate.php (wrapper)
│ │ preload.php、README.JA.TXT、search.php
│ │ xoops_version.php
│ ├admin
│ │ import.php、index.php、mymenu.php
│ ├blocks
│ │ block_functions.php、b_bloggerlist.php、b_diarylist.php
│ │ b_d3comlist_posts.php、b_d3comlist_topics.php
│ ├class
│ │ category.class.php、diary.class.php
│ │ diaryconfig.class.php、gtickets.php、photo.class.php、tag.class.php
│ │ d3diaryD3commentContent.class.php
│ ├include
│ │ │ comment_view.php、d3pipes.inc.php、d3pipesd3com.inc.php、
│ │ │ functions.php、header.php
│ │ │ imgresize.php、import_functions.php
│ │ │ mytable.php、x20_keepblockoptions.inc.php
│ │ └magpierss
│ │ │ rss_cache.inc、rss_fetch.inc、rss_parse.inc、rss_utils.inc
│ │ └extlib
│ │ d3diary_Snoopy.class.inc
│ ├language
│ │ ├japanese
│ │ │ │ admin.php、blocks_common.php、blocks_each.php
│ │ │ │ main.php、modinfo.php
│ │ │ └mail_template
│ │ │ blogger_comment_notify.tpl
│ │ │ blogger_newentry_notify.tpl
│ │ │ global_newentry_notify.tpl
│ │ └ja_utf8 (same as japanese)
│ ├main
│ │ bloggerlist.php、detail.php、diarylist.php
│ │ edit.php、editcat_config.php、editcategory.php
│ │ index.php
│ │ notification_update.php、other.php
│ │ rdf.php、usr_config.php、viewcomment.php
│ ├sql
│ │ mysql.sql
│ └templates
│ admin_import.html
│ block_bloggerlist.html、block_diarylist.html
│ block_d3comlist_posts.html、block_d3comlist_topics.html
│ bloggerlist.html、detail.html、diarylist.html
│ edit.html、editcat_config.html、editcategory.html
│ inc_blog_options.html
│ index.html、other.html、rightarea.html
│ tabmenu.html
│ usr_config.html、viewcomment.html
└ d3pipesm
└joints
└block
D3pipesBlockD3diarylist.class.php 、D3pipesBlockD3diaryd3com.class.php (wrapper)
d3diary初版リリース
22日以来、動作報告もありませんがバグ報告も無いようですので、ここにd3diaryをリリース致します。
初版ですが、ver0.02としています。
d3diary ←今後は左のページからお願いします。
もし、バグに遭遇されましたら、お手数ですが、d3diaryサポート板にご使用環境などとともにご報告ください。
なお、今版より 携帯用テーマ下テンプレートは、モバイルテンプハウスにて配布します。
必要な環境
- コア
- XOOPS 2.0.16a-JP (JPEXでも多分、動くと思います。)
- XOOPS Cube Legacy(2.1.6で動作を確認)
- PHP
- PHP4.3.x以上
- PHP5
- MySQL
- MySQL-4.0.x以上 (詳細は未調査)
- (MyISAM)
- Altsys必須
- (コメント統合の場合)d3forum-0.85以上推奨
インストール
パッケージを解凍し、
- html/modules/d3diaryフォルダ内を、xoops_root_path/modules/d3diary/内 に。
(最後のd3diary部分は、半角英数字でお好みのフォルダ名に変更してアップできます。)
アップ後、d3diary/cache と d3diary/upimg フォルダのパーミッションを、777等の書き込み可能に変更します。
- trust/modules/d3diaryフォルダ内を、(xoops_trust_path)/modules/d3diary/内 に アップします。 (xoops_trust_path)はお使いの環境に読み替えてください。
携帯用テンプレート
携帯用テーマ下テンプレートは、モバイルテンプハウスにて配布しています。
D3forumへのコメント統合
- 管理画面で、forum_idとforum_dirnameを指定してください。
- 当該フォーラムの「コメント統合時の参照方法」の項目
d3diary::d3diaryD3commentContent::d3diary
↑この部分はd3diaryのインストールされたディレクトリ名に変更して記載します。
minidiary、d3diaryからのインポート
- 記事データベースのインポート
- xoopsコメントのインポート
d3統合コメントは、インポートの必要はありません。
d3diary、d3forumの相互の設定を行えば、OKです。
また、xoopsコメント→d3forumコメントインポートは、d3forumに機能がありますのでそちらでどうぞ。 - イベント通知設定のインポート
- アップロードされた画像は、手動で移動してください。
XSNSのプロフィールページへの連携
- XSNSの「ブログ」設定で、minidiaryを選択し、d3dairyの設置ディレクトリ名を指定することで、連携できます。
カテゴリ毎の外部ブログ・公開範囲設定
- カテゴリ毎に、設定が可能。
- d3diaryの日記と、外部ブログ設定の同居表示が可能。
(各人indexページと新着日記ブロックでは1件/人まで) - 管理画面で、カテゴリ毎の権限・外部ブログ設定を有効にしてください。
d3コメントブロック2つ
d3コメント統合をする場合には、d3diary元記事の閲覧権限に連動するコメントブロックを2つ用意しました。
- topicsブロックとpostsブロックがあります。
- d3forumの他のフォーラムトピック/投稿をも抽出し、集約表示することも可能としています。このブロックでは
- category+forumOR指定を可能としました。
*どちらかのみが指定してある場合は、他方は無視。
*両方指定してある場合はOR条件
*どちらも空欄なら、全フォーラムが対象となります。 - 「記事本文をアサインする」をYESとすると、トピックの場合も最新記事をアサインします。
必要に応じてテンプレートを編集すれば表示が可能になります。
- category+forumOR指定を可能としました。
- d3forumのメインページに表示される、list表示と、全categorylist 表示への、コメント元記事閲覧権限連動については、別途Tipsとしてサイト上で紹介します。
d3pipesのブロックジョイン2つ。
- 新着日記ジョイントと、上記と同様の統合コメントジョイント。
- いずれも、最大表示件数を指定可能。
- 統合コメントジョイントのほうは、本文を表示する設定を行うだけで、topics表示の場合でも最新コメント本文を表示します。
更新履歴
2009/07/03 ver0.02d indexページ(一覧)で画像が表示されていなかったのでバグを修正。
なお、この一覧ページでは表示幅のことを考慮し、最大2枚の表示とした。
(テンプレート「index.html」の編集で、簡単に変更可能)
2009/07/01 ver0.02c b_diarylistで「もっと読む」リンクが出ていないバグ修正。
xoopsコメントのリスト表示がされないバグの修正。
myfriendモジュールとの連携時、友人まで/友人の友人までが選択できないバグの修正。(thx 30over)
2009/06/30 ver0.02b 日記投稿時に、user投稿数カウントアップ処理を edit.phpに追加。
(thx enmaai)
2009/06/30 ver0.02a templates/inc_blog_options.html 内のマルチバイト文字のゴミを除去。
2009/06/30 ver0.02 初版公開