いつも御世話になっています。
以前、「添付ファイルをグループ分けして表示する」という質問で、御世話になりました。教えていただいた方法でコンテンツを充実させていっているところなのですが、ロールによってアクセス制限を掛けたいと思っています。
やりたい事は下記のようなことです。Drupalは6です。
(1)商品というノード(親)に、仕様書や図面などの添付ファイルを子ノードとして、親ノードに関連付けます。
(2)Viewsで、親ノードに関連付けられた子ノードの添付ファイルリストをブロック出力します。
(3)これらのブロックは、認証したユーザには見られるようにします。
(4)ユーザのロールに海外ユーザと国内ユーザを作り、海外ユーザには一部の添付ファイルがダウンロードできないようにしたい。
(5)一部のコンテンツは、親ノード(商品)に関連付けられるタクソノミーで判断したい。
例えば、
商品(親ノード)に「海外参照」というタクソノミを作って関連付けていて
商品Aは、「海外参照=OK」。商品Bは、「海外参照=NG」。となっているとします。
ロールに「海外ユーザ」。「国内ユーザ」を作ります。
認証ユーザの所属ロールが、「国内ユーザ」だった場合、商品Aも商品Bも表示され添付ファイルもダウンロードできる。
「海外ユーザ」だった場合、商品Aも商品Bも表示はされるが商品Bの添付ファイルのダウンロードは出来ない。
どうやって実現できるか、皆目見当がつかないので、何かアドバイスをお願いしたいです。
・node_accessというモジュールがあって、これをつかうと、親ノードの表示は制御できるが、添付ファイルは表示されてしまう。
・Taxonomy Access Controlというモジュールを使ってみたら、これはうまく動作してくれなかった。
・Viewsの設定でAccessにロールを指定すると、そのロールの人は全部みられなくなってしまう。
ダウンロードだけ出来ないようにする、というのが難しい場合は、Viewsのブロック表示を全部見られなくしてしまっても良いです。
でも、この方法もわからないです。
すみませんがよろしくお願いします。