dittoでリソースグループを設定したリソースが表示されない

質問全般・改善要望
返信する
ichi
メンバー
メンバー
記事: 4
登録日時: 2015年1月29日(木) 04:06

dittoでリソースグループを設定したリソースが表示されない

投稿記事 by ichi »

グループ管理(ウェブ)でリソースをpublic以外のリソースグループに設定し、
WebLoginでログイン後にdittoで表示しようとした所、表示されません。
アクセスは可能です。

デモサイトで再現しました。
「MODXの主な特徴」下の「メニューとリスト」「コンテンツ管理」をリソースグループ設定しています。
http://161201121801-32630.evo.demo.modx.jp/
ウェブユーザー
ログイン名:modx
パスワード:123qwe

dittoのソースを確認した所、ditto.class.inc.phpの913行付近
-------
if ($docgrp= $modx->getUserDocGroups())
$docgrp= sprintf(' OR dg.document_group IN ({%s})', implode(',', $docgrp));
else $docgrp = '';
$access= $modx->isFrontend() ? "sc.privateweb=0" : sprintf("1='%s' OR sc.privatemgr=0",$_SESSION['mgrRole']) . $docgrp;
-------

-------
if ($docgrp= $modx->getUserDocGroups())
$docgrp= sprintf(' OR dg.document_group IN (%s)', implode(',', $docgrp));
else $docgrp = '';

$access= ($modx->isFrontend() ? "sc.privateweb=0" : sprintf("1='%s' OR sc.privatemgr=0",$_SESSION['mgrRole'])) . $docgrp;
--------
で望む通りの表示になりました。
$docgrpの指定の波括弧を外して、$accessのisFrountend判定から$docgrp指定を外にだしています。
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

dittoでリソースグループを設定したリソースが表示されない

投稿記事 by yama »

{%s}
なるほど、不具合ですね。
もしよければGitHubでプルリクエストいただけたらすぐにマージします。
(フォーラムで報告するほうがラクであればフォーラムでもいいですので)
返信する