Nucleus(JP)フォーラム

NucleusCMS日本語版ユーザーのためのサポートフォーラムです。疑問が生じたらまずは記事検索をご利用ください。

ログインしていません。

#1 2007-02-17 12:25:19

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

Mocchiです。

NP_ImprovedMediaを公開します。これは、記事にファイルを追加するときにポップアップする「Nucleus Media」のインターフェースを改良し、削除機能と名前変更機能を追加したものです。バージョン3.0.0からはフォルダ2階層でファイルを管理できる機能を追加してあります。

PHPファイルの上書きではなく、プラグインとして導入する事ができます。削除、名前変更、そしてファイルの記事への挿入時に必ず確認画面がでてきますので、慣れている人には少し回りくどいかと思います。

開発の経緯は、私の抱えているユーザから、やっぱり「Nucleus Media」使いにくいよね。何とかならない?という要望が多数寄せられたためです。開発の際は、NP_ImageManager(extraheadに関して)とmedia_tocu(削除・名前変更機能)を参考にさせていただきました。

最新はver.2.2.1 (2010/02/28)とver.3.0.1 (2010/02/28)です。圧縮ファイルの中にはPHP4用とPHP5用が同梱されているため、サーバ環境に適した方をご利用ください。

2008/12/17のメディアマネージャにおける脆弱性についてで報告された脆弱性は、2009/01/17に修正。また、ver.2.2.0からNP_EachBlogDirを統合し、オプションとして利用可能としました。

動作確認ブラウザとOS
Microsoft Windows XP
Mozila Firefox 3.0, Internet Explorer 8
Microsoft Windows 2000
Mozilla Firefox 2, Internet Explorer 6
Ubuntu 9.10
Mozilla Firefox 3.5, Opera 10.10

※Internet Explorer 7においては環境が準備できず、未確認

それでは。


Attachments:
zip NP_ImprovedMedia(ver.3.0.1).zip, Size: 129.13 KiB, Downloads: 852
zip NP_ImprovedMedia(ver.2.2.1).zip, Size: 129.6 KiB, Downloads: 655

オフライン

#2 2007-06-15 00:34:14

きっちゃん
メンバー
登録日: 2007-06-15
投稿: 1

Re: NP_ImprovedMedia

Mocchiさん、こんにちは。

最近Nucleusをいじりはじめたものです。
このプラグインを作られた、Mocchiさんの思ったことと同じくアップロードした画像ファイルの扱いに不便を感じてプラグインを探していたところ、このNP_ImprovedMediaをみつけ、早速導入してみました。

経験不足で、なにか不足しているのかも知れないのですが、、(勘違いであったらご容赦ください(笑))
Nucleus3.3(UTF-8版)で動かしたところ、
(1)ファイルのアップロードを行おうとしたとき、WindowsのFirefoxで使った場合、エラーメッセージのページでXMLのパースエラーで、ページがきちんと表示されない
   IE6では表示されます。
   メッセージは「ファイルをアップロードするディレクトリを選択してください。」でした。
(2)メディアのフォルダにあるはずのファイルが一覧に表示されない(ファイルが一つもない状態に見える)
という現象がありました。

僭越ながら、ソースを眺めさせていただき勝手にいじってみたところなんとかうまく治ったようです。
但し、、短時間でさくっと修正してみただけですので深いところで間違っているかも知れないという不安があります。
最初、(2)の問題を認識していたのですがファイルをアップロードした場合の挙動を見ようとしたときに(1)の現象を確認しました。そこで、(1)の対処をし、(2)の修正を行ったところ(1)の「ディレクトリを選択してください」の問題も同時に解決されたようです。
お手数ですが、自分の遭遇した現象がNucleus3.3では再現される性質のものなのか、また修正した内容が妥当なものであるのかご返答いただければ幸いです。

修正した内容は下記の通りです。
修正したファイルは、いずれもmedia.phpになります。
(1)について
NP_ImprovedMedia media.php885行目の
<?php echo htmlspecialchars(_THIS_COLLECTION_DESC) ?></p>
の行を
<p><?php echo htmlspecialchars(_THIS_COLLECTION_DESC) ?></p>
に変更

(2)について
NP_ImprovedMedia media.phpの563行目
$keys = array_keys($collections);
を削除、もしくはコメントアウト
NP_ImprovedMedia media.phpの564行目
$currentCollection = $collections[$keys[0]];

$currentCollection = $member->getID();
に変更

以上です。
(2)は、Nucleus3.3のmedia.phpの内容を参考に、変更(ほぼコピーですね(笑))しただけです。

最後になりましたが、このような便利なプラグインを開発し、ご提供していただいているMocchiさんに感謝します。
ありがとうございます。

オフライン

#3 2007-06-21 12:21:22

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

きっちゃんさま

ご意見どうもありがとうございます。
つたないプラグインでユーザもつかないかなと思っていたので、ご意見いただけるなんてとても感激しています☆

実は私、Private Collectionディレクトリ(ユーザのID番号でプライベートに外部ファイルを管理しているディレクトリ)を使わずに
共有ディレクトリ(ディレクトリ名が番号ではない)でのみ利用しているので
Private Collection部分の作りこみが甘くなってしまい、報告していただいたバグとなっています。

現在その部分のバグを修正中ですので、2~3日お待ちください。
さしあたり、きっちゃんさまの対策で十分使用することができること、確認しておきました。
ご安心ください。

オフライン

#4 2007-06-22 15:49:07

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

プラグイン更新しました。
お手数ですが、前回バージョンだったRC1との差し替えをお願いします。
(ファイルはこのスレッドの初めの記事にあります。)

ダウンロードしたら解凍してください。
NP_ImprovedMediaフォルダができると思います。
内容物(NP_ImprovedMedia.phpとimprovedmediaフォルダ)をプラグイン・ディレクトリにコピー。
Nucleus管理画面のプラグイン管理画面の下部で、インストールしてください。

ファイル構成は変更していないので、使わないファイルが残ることはありません。

最後となって申し訳ありませんが、バグ報告を下さったきっちゃんさまとNucleus関係者に感謝します。

オフライン

#5 2007-08-17 14:46:25

megumi
メンバー
登録日: 2006-11-30
投稿: 23

Re: NP_ImprovedMedia

さっそく利用させていただいております。

削除機能がついたので、大変助かりました!

一つ教えていただきたいことがあります。
Media Control のページでFile name一覧のリストの順序を変更したいのですが(新しい順などなど)、
select文のクエリーはどこに記述されているのでしょうか?(デフォルトでは古い順に一覧表示されていると思います。)

以前同じような変更をしたことがあったのですが、すっかり忘れてしまい、
こまっています。

私事で大変申し訳ありません。

時間があるときで結構ですので、よろしくお願いします。

meg

オフライン

#6 2007-09-24 22:23:08

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

megさま

ファイル一覧において、ファイルの表示される順番は、improvedmedia/media.phpの617行目で指定しています。

[616] $arr = MEDIA::getMediaListByCollection($currentCollection, $filter);
[617] rsort($arr);
[618] $allowedtypes = explode (',', $CONF['AllowedTypes']);

私の環境ですと、ファイル一覧において、ファイルは作成された日付順に
下に向かって古くなる順番で表示されています。
ひょっとしてここの部分に関して私の解釈に問題があり、私の環境ではOKでも
megさまの環境では、下に向かって新しくなる順番となっているのかもしれません。

今は私事に時間を割かなければならないので、時間をください。
もしくは、解決法が見つかりましたら、お手数ですが書き込みをよろしくお願いします。

次回に、Nucleus3.3のmedia.phpに追加された、アップロードエラーを表示する機能
そして extraheadを利用する、管理画面Tweak系プラグインについて で指摘されているバグも含めて、対応したいと考えています。

オフライン

#7 2007-11-01 22:13:19

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

Mocchiです。

NP_ImprovedMediaのバージョン1.2を公開いたします。
プラグイン関連のディレクトリ構成を変更したのと、オプションを新規に追加したので
お手数ですが、旧バージョンからのアップデートの際は
一度アンインストールして旧バージョンのファイルを全て削除し
今回のバージョンをプラグイン・ディレクトリに配置、インストールしてください。

改善点は以下です。
1.ファイルの並び順を、登録が新しいものを上に配置
2.extraheadを利用する、管理画面Tweak系プラグインについての報告に従い、修正
3.Nucleus3.3のmedia.phpに追加された、アップロードエラーを表示する機能を追加
4.オプション(プライベート・ディレクトリのオン・オフとファイル表示数)を追加
5.ディレクトリ構成を変更
6.HTMLの改善

オフライン

#8 2007-11-06 23:27:01

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

Mocchiです。

ImprovedMedia1.2にGreyBoxユーティリティをバンドリングしてみました。
といっても、サムネイル画像を表示するなんてことはできません。
ただたんに、Media ControlウィンドウがGreyBox効果で表示されるだけです。
それ以外の使い勝手は変わりません。

BookmarkletでMedia Controlウィンドウを利用した場合はウィンドウからはみ出てしまう
全体の動作が緩慢になる(JavaScriptはローカルマシンの性能によっているため)
非同期性通信は、どこまで信頼できるのだろう
GreyBoxはインラインフレームを使って実装しているため、文章型に合わない
(Media ControlウィンドウはXHTML1.0 Strict DTDを適用)
といった問題を感じるので、正規のバージョンの継続ではなく、あくまでもバンドルという形にしました。

オプションでGreyBox効果を利用するかどうか選択できるようにしてあるので
(デフォルトはno)。yesにしてお試しください。

IE6、IE7、FireFox 2、Opera9で動作確認してあります。
動作の不具合などありましたら、ご報告をよろしくお願いします。

オフライン

#9 2008-01-20 18:40:45

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

Mocchiです。

NP_ImprovedMediaのコードを見直して再開発しました。バージョン2.0として公開します。

修正点は以下です。
[list=]
[*]スキン変数の実装[/*]
[*]ファイル・アップロード、ファイル名変更、ファイル削除の各プラグイン・イベントを設定。[/*]
[*]プラグイン・イベントに関するNucleus CMSのバージョン間での違いを吸収するために、ファイル・アップロードに関するコードをマージ。[/*]
[*]Internet Explorerでファイルを開く際に、ポップアップしないJavaScriptのバグを修正。[/*]
[*]GreyBoxを同梱[/*]
[*]プラグイン関連のディレクトリ構造の変更。[/*]
[*]ヘルプの更新。[/*][/list]

JavaScript関連のバグは私が愛用しているFireFoxでは発生しなかったので、発見が遅れてしまいました。
詳細はWIKIを参照してください。

オフライン

#10 2008-01-21 01:26:37

boff
メンバー
From: Fukuoka
登録日: 2006-10-11
投稿: 149
ウェブサイト

Re: NP_ImprovedMedia

上書きで1.2から2.0へバージョンアップしました。
アイテム投稿画面から画像管理アイコン(ImprovedMedia)をクリックしても「エラー 1ページの表示ファイル数を、5件から50件の間で指定してください。」というウィンドウが出て画像のアップロードができません。 :cry:
プラグインの編集画面の「一つの画面にいくつのファイルを表示しますか?(5から50まで)」で、「5」、「10」、あるいは「50」としても上記エラーメッセージが出て何もできませんでした。
「プライベート・コレクション・フォルダを使いますか?」の意味がよくわからないのですが、mediaフォルダ内にはマルチユーザーのために個別のフォルダを作っています。
どうしたらいいでしょうか?


・Nucleus CMS v3.41RC
・PHP 5.2.17
・MySQL 4.1.25
・Apache/1.3.41 (Unix) mod_ssl/2.8.31 OpenSSL/0.9.8e

オフライン

#11 2008-01-21 01:29:20

boff
メンバー
From: Fukuoka
登録日: 2006-10-11
投稿: 149
ウェブサイト

Re: NP_ImprovedMedia

プラグインを新規にインストールしたらできました。
お騒がせしました。 :oops:


・Nucleus CMS v3.41RC
・PHP 5.2.17
・MySQL 4.1.25
・Apache/1.3.41 (Unix) mod_ssl/2.8.31 OpenSSL/0.9.8e

オフライン

#12 2008-01-21 10:33:44

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

お騒がせしています。

すっかり忘れていましたが、ソース・コードの見直しに伴い、プラグイン・オプションの名前を変更していたのでした。。。
すみません。やはり旧バージョンからのアップグレードは、アンインストールののちにインストールしなおしてください。

以上、よろしくお願いします。

オフライン

#13 2008-01-21 12:21:39

yama
Administrator
登録日: 2005-07-07
投稿: 1,265
ウェブサイト

Re: NP_ImprovedMedia

試してみました。これだけ高機能だと画像の管理のためだけに使うこともあると思うので、
管理画面左側のクイックバーからも直接アクセスできるといいなと思いました。

オフライン

#14 2008-01-21 23:25:33

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

Mocchiです。

わぉ。yama.kymsさん、こんばんは。
NP_ImprovedMediaはmedia-tocu-dirsを参考にして始まりました。
いまさらながら、どうもありがとうございます。

yama.kyms さんの発言:

試してみました。これだけ高機能だと画像の管理のためだけに使うこともあると思うので、
管理画面左側のクイックバーからも直接アクセスできるといいなと思いました。

それも少し考えていたのですが、あんまりQuickMenuを増やすのも使い勝手が悪くなっていやだなぁというのがあったので、追加しませんでした。
もともと、NP_ImprovedMediaが開発のベースにしているNP_EachBlogDirが、仕様としてどうしてもQuickMenuから呼び出せないという影響があるのですけれども。
私は個人のウェブログにスキン変数を実装して、ウェブページから呼び出して使ってます。

次の開発ではマウスオーバーによるサムネイル・ポップアップを実装したいと考えているところです。
が、CSSのdisplay: none;切り替えを使って読み込んでおいたサムネイルをポップアップさせると
Media Controlボックス展開の待ち時間が増えるのが心配(サムネイルを10とか生成・読み込む必要がある)
かといってポップアップ・ウィンドウをオープンしてからサムネイル自動生成させると、それはそれで待ち時間が発生して私ならすぐにマウスアウトしちゃうと思う(笑)
まぁ、私的な事情により、次の開発は今年の末から来年の初めにかけてになってしまうのですけれども。

オフライン

#15 2008-01-29 16:27:30

tmiz
メンバー
登録日: 2008-01-24
投稿: 4

Re: NP_ImprovedMedia

Mocchiさん初めまして。
プラグインをありがたく使わせて頂いております。

NP_ImprovedMedia(ver.2.0)を使用させていただいたところ、以下のような状況です。

GreyBoxを「いいえ」にしたところ、アイテム追加画面で「文章に挿入」が行えない。
「文章に挿入」ボタンを押下すると子画面が閉じずに
最初の子画面(画像一覧)に遷移します。

GreyBoxを「はい」にすると、「文章に挿入」が行える。

IE6、Fx2ともに同じ状態です。

現状、GreyBoxを「はい」にして使用しておりますので不都合はないのですが
念のためご報告をさせていただきました。

初投稿ゆえ至らない点もあるかもしれませんが
ご容赦ください。

以上

オフライン

#16 2008-01-31 12:34:58

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

tmizさん、確認どうもありがとうございます。

tmiz さんの発言:

GreyBoxを「いいえ」にしたところ、アイテム追加画面で「文章に挿入」が行えない。
「文章に挿入」ボタンを押下すると子画面が閉じずに
最初の子画面(画像一覧)に遷移します。
GreyBoxを「はい」にすると、「文章に挿入」が行える。
IE6、Fx2ともに同じ状態です。

plugins/improvedmedia/media.phpのJavaScriptが不完全でした。
修正を加えたバージョン2.0.1を公開します。

バージョン2.0をご利用の方は、先述のmedia.phpを差し替えるだけで正常動作します。

オフライン

#17 2008-01-31 13:40:29

tmiz
メンバー
登録日: 2008-01-24
投稿: 4

Re: NP_ImprovedMedia

Mocchiさん
迅速な対応感謝です big_smile

2.01にアップデートし正常に動作いたしました。
ありがとうございました。

オフライン

#18 2009-01-06 19:06:53

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

NP_ImprovedMediaのすべてのバージョンに脆弱性があります。
詳細はメディアマネージャにおける脆弱性についてを参照してください。
1週間以内に修正版を公開いたします。
修正版公開までは、Nucleus CMSコアをversion 3.31 SP3にアップグレードした上でNP_ImprovedMediaをアンインストールし、コアに付随のメディア・マネジャーを利用してください。

2008/12/11 Katsumiさまときゃしゃさまから連絡があり
2008/12/16 Nucleus CMS フォーラムにおいて脆弱性の報告と脆弱性を修正したNucleus CMS ver.3.31 SP3の公開
2009/01/06 Mocchiが脆弱性の報告に(ようやく)気づく

Katsumiさまときゃしゃさま、脆弱性に関するご連絡、どうもありがとうございます。
そして、私的な事情でこの2ヶ月間フォーラムを閲覧しなかったために、気づくのが遅れてしまったこと、ユーザのみなさまにはご了承いただきたいと思います。正直、なんで見なかったんだろうと、へこんでいます。。。

さて、脆弱性を修正しなきゃね☆

オフライン

#19 2009-01-17 17:56:46

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

バージョン2.1.0を公開いたします。旧バージョンをお使いの方は、プラグイン・オプションは3つだけなので、一度アンインストールの後に旧ファイル群を削除した上で新ファイルをアップロードし、再びインストールするのがよいでしょう。もちろんファイル構造やプラグイン設定に関する変更はないので、ファイルの上書きでも動作します。

今回の変更点は以下です。

  • URL内の任意の文字列を渡すことによってディレクトリ操作が可能になる脆弱性を防ぐため、ファイル名とディレクトリに関する処理を修正。

  • インターフェースを改善。

  • フィルタを適用した状態でページ切り替えが出来ない不具合を修正。

  • グローバル設定のAllowUploadを反映するように修正。

  • プラグインの利用をウェブログ・グループに所属しているユーザに限定。

  • Ver 2.0でマージしたファイル・アップロードに関するコードを削除。アップロードに関しても、コアの機能を最大限に利用する方針です。

  • ヘルプファイルを更新。

ここから先はちょい技術的なお話です。
今回の修正はディレクトリ・トラバーサルと呼ばれている脆弱性に関するものです。これまでのバージョンでは、特定の文字列をform要素でサーバに送信することで、任意のフォルダの閲覧もしくは操作(削除や名前変更)が可能となってしまっていました:( Cookieを利用したセッション管理やチケット管理をこのプラグイン公開時から導入していたので、登録されていないユーザがこのようなことをすることは防げていたのは幸いでした。対策として、入力された変数$collectionと$filenameが適切かどうか、常に確認するように修正してあります。またそれ以外の入力に関しても、適切な値となっているかどうか、必ず評価を加えるように修正しました。

今回の脆弱性を報告してくださったKatsumiさまときゃささま、どうもありがとうございました。

オフライン

#20 2009-01-19 23:32:21

boff
メンバー
From: Fukuoka
登録日: 2006-10-11
投稿: 149
ウェブサイト

Re: NP_ImprovedMedia

いつもお世話になっています。

さっそく、旧バージョン(2.0.1)をアンインストールして、2.10をインストール(過去のバージョンのファイルをサーバー上から削除したのち)しました。

当方、複数(2つ)のブログを、複数のメンバーで運営しているのですが、2.10をインストールしたところ、ブログチームのメンバーでファイルがアップロードできなくなりました。
ファイルをアップロードしようとすると、「このアクションの実行が許可されていません」というエラーメッセージが表示されます。
「最高管理者」だけがアップロードできる状態です。

以前のバージョン(2.0.1)では問題なく運用できていたのですが、何か設定を変える必要があるんでしょうか?

Nucleusのバージョンは、3.31SP3です。


・Nucleus CMS v3.41RC
・PHP 5.2.17
・MySQL 4.1.25
・Apache/1.3.41 (Unix) mod_ssl/2.8.31 OpenSSL/0.9.8e

オフライン

#21 2009-01-20 13:31:46

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

boffさま

本日付でバージョン2.1.1を公開しました。こちらに上書きしてください。アンインストールは必要ありません。
権限の把握を勘違いしていた私の間違いでした。申し訳ありません。

$member->isAdmin()によりこのプラグインを利用できるユーザを制限していましたが、これだとSuper Admin権限を持つユーザしか利用できませんでした。現在は$ImprovedMedia->isEditor()というメソッドを新規に作成し、少なくともひとつのウェブログ・チームに所属しているユーザに制限しました。

ご意見どうもありがとうございました。

オフライン

#22 2009-01-20 13:51:11

boff
メンバー
From: Fukuoka
登録日: 2006-10-11
投稿: 149
ウェブサイト

Re: NP_ImprovedMedia

Mocchiさんへ

できました!
ありがとうございました。 lol


・Nucleus CMS v3.41RC
・PHP 5.2.17
・MySQL 4.1.25
・Apache/1.3.41 (Unix) mod_ssl/2.8.31 OpenSSL/0.9.8e

オフライン

#23 2009-01-20 18:02:30

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

Mocchiです。

NP_ImprovedMediaのバージョン3.0.0のBetaを公開します。
このバージョンから、サブ・ディレクトリ管理機能を利用できます。
コレクション・ディレクトリの中にサブ・ディレクトリを作り、そこにファイルをアップロードして、記事に埋め込むといった使い方ができます。もちろん、サブ・ディレクトリを作らなくても従来どおり使えます。サブ・ディレクトリはコレクション・ディレクトリの下、1階層だけです。

ファイルやサブ・ディレクトリの削除・名前変更機能がついているので、セキュリティの穴が心配。それからページのインターフェースにも使いにくさを感じてます。ファイル削除・名前変更処理に関係する変数に関して必ずチェックを入れるように作っていますが、見落としがないと言い切ることができません。なのでBetaな評価版です。時間をかけてじっくり確認してから、RCを出ししたいと思います。何かお気づきの点ありましたら、このフォーラムによろしくお願いします。

ここのところ立て続けの投稿。どうも毎年、1月の出現率が高いみたい。

2009/01/21 9:00更新しました。
media_remove_dorectory()とmedia_rename_directory()が$subdirが空文字列でも動作するのを修正し、$subdirが空の場合はエラーを返すようにしました。

2009/02/09 18:00 新バージョン公開につき,削除しました。

オフライン

#24 2009-01-20 20:17:12

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

ちなみにこのプラグイン,MEDIAクラスをそのまま利用しています。備忘録も兼ねて。

MEDIAクラスに含まれるメソッドは以下です。
MEDIA::getCollectionList()
MEDIA::getMediaListByCollection($collection, $filter='')
MEDIA::isValidCollection($collectionName)
MEDIA::addMediaObject($collection, $uploadfile, $filename)
MEDIA::addMediaObjectRaw($collection, $filename, $&$data)

このうち,最後のMEDIA::addMediaObjectRaw($collection, $filename, $&$data)は現在は使われてないようです。

さて,サブ・ディレクトリ管理にこういったメソッドを使うには,$collectionもしくは$filenameにサブ・ディレクトリを示す変数(今回は$subdir)を含める必要があります。ここでネックになるのが,MEDIA::isValidCollection()です。このメソッドはおそらく次のバージョン(ver.3.4)では,$collectionNameとMEDIA::getCollectionList()を比較して合否を評価するようになると思います。なので,$collectionに$subdirを含めると,はねられてしまいます。

ところが調べてみると,MEDIA::isValidCollection()はMEDIA::addMediaObject()でしか呼び出されていないので,MEDIA::getMediaListByCollection()の$collectionに$subdirを含めることで,サブ・ディレクトリ内のファイルのリストを取得することができます。また,MEDIA::addMediaObject()は,$filenameの合否判定はしていないので,$filenameに$subdirを含めることで,ファイルのアップロードができます。

こんなわけで,サブ・ディレクトリ管理機能を追加しました。もしMEDIAクラスの仕様が変わったら,そのときはプラグイン側にこれらのメソッドを用意すればよいでしょう。

オフライン

#25 2009-01-30 09:43:17

Mocchi
メンバー
登録日: 2006-11-19
投稿: 438

Re: NP_ImprovedMedia

ver.2.1.1において、グローバル設定の「アップロードするファイル名の頭に日付を付加する」をNOにした状態で、ファイル名変更をしたとき、ファイル名の先頭に日付が付加されるという不具合があります。

improvedmedia/media.phpを以下のように修正してください。

361:  $newfilename = $fileProfiles[0] . '-' . $newfilename . '.' . $fileProfiles[2];

これを

361: if($EachBlogDir->getMediaPrefix())
362:  $newfilename = $fileProfiles[0] . '-' . $newfilename . '.' . $fileProfiles[2];
363: else
364:  $newfilename = $newfilename . '.' . $fileProfiles[2];


ヘルプファイルに「ファイル名変更時に、ファイル名の先頭に日付を付加する事はありません。」と、ちゃんと書いてありました。チェック時に見落としていました。すみません。

2月上旬に、上記不具合とそれ以外の不具合を修正したver.2.1.2をリリースします。

オフライン

Board footer