0

elFinder の「開く」機能を無効にするか、何らかの方法で変更する方法を知っている人はいますか?

私はこれを ASP.NET MVC サイトで使用しており、ファイルのアクセス許可などのためにサーバー側のフィルタリングを追加しました。そのため、ユーザーはファイルに直接アクセスできず、すべてが elFinder にフィードするサーバー側コンポーネントを通過する必要があります。したがって、誰かがファイルを直接開こうとすると、常に 404 応答が返されます。

これによって影響を受ける UX 要素がいくつかあります。

  • ファイルをダブルクリック - dblclickelFilder イベントをオーバーライドして、簡単にreturn false. ただし、これには、フォルダーをダブルクリックして開くことができないという望ましくない効果があります。
  • 「開く」メニュー項目をクリック -構成'open'からオプションを削除しようとしましcommandsたが、オプションはまだそこにありました。他の多くのアイテムは削除可能でした (名前の変更、アップロード、この場合はユーザーを拒否している読み取り専用アクセス以外のもの) が、これは何らかの理由でそうではありません。
  • 「情報」ポップアップのリンクをクリックします。これに対処する方法がわかりません。テンプレートを使って「info」ポップアップをカスタマイズしてみませんか?

これまでに誰かがこれに遭遇し、新しい解決策を思いついたことがありますか? 私は、最後の手段として elFinder の実際の JavaScript を変更することに反対しているわけではありません (これは、elFinder をアップグレードしたい場合に、操作上の苦痛を与えることになります)。

4

2 に答える 2

3

次のようにgetfilecallbackを追加する別の方法:

$('#finder').elfinder({

    url : 'php/connector.php',
    getFileCallback : function(files, fm) {
            return false;
    }

});

于 2013-01-22T07:24:22.033 に答える
0

open.jsファイルをjs/commandsサブディレクトリからコピーして任意の場所に貼り付けてからhtmlファイルに含めます。次に、コピーしたopen.jsファイルを66行目で編集します。

if(!file.read){

    return dfrd.reject(['errOpen', file.name, 'errPerm']);

}

そしてここに置く:

falseを返します。

于 2013-01-22T07:05:50.807 に答える