Mobile OhYeah!
趣味のブログ
Ajax

(詳細)
タイトル: Pydio の WebDAV サーバで . から始まる隠しファイルを扱う
投稿者: OhYeah!
日付: 2015-1-23(金)
時刻: 00:12
閲覧数: 28600
内容
AjaXplorer で . で始まる隠しファイルを扱うにはファイルシステムのドライバ設定を変更するしかなかったが、Pydio に改名したバージョン 5 以降では、ユーザアカウント毎にパラメータを追加できるようになり、特定ユーザの特定リポジトリのみ . で始まる隠しファイルを扱えるようにするなんてことが可能になった。が、この設定をしたリポジトリであっても、WebDAV クライアントからは . で始まる隠しファイルが扱えないというバグがある。
このバグの修正方法は次のとおり。5.x.x/6.0.x とも同じ。バグ修正の元ネタはここ。ただし、ここに掲載されているコードもそのままでは動作しないので、注意が必要。
https://pyd.io/f/topic/webdav-issues/

修正点は2点。これだけで、SHOW_HIDDEN_FILES パラメータを追加して Yes に設定したユーザ&リポジトリの . で始まる隠しファイルが WebDAV サーバから見えるようになる。

まず、/core/classes/class.AJPX_Plugin.php 138 行目の protected を
    protected function getFilteredOption($optionName, $repositoryScope = AJXP_REPO_SCOPE_ALL)


    public function getFilteredOption($optionName, $repositoryScope = AJXP_REPO_SCOPE_ALL)

と public にする。

次に、/core/classes/sabredav/ajaxplorer/class.AJXP_Sabre_Collection.php 156 行目の
            if ( !$this->repository->getOption("SHOW_HIDDEN_FILES") && AJXP_Utils::isHidden($file)) {


            if ( !$this->getAccessDriver()->getFilteredOption("SHOW_HIDDEN_FILES", $this->repository->getId()) && AJXP_Utils::isHidden($file)) {

に修正する。

<< 1 ..3 (4) 5 ..12 >>