Aipoで管理者だけに表示するポートレットを作る方法

Aipoでは管理者だけに表示するポートレットとして管理設定の各項目があります。

これらのアプリはマイページなどのアプリ追加からは追加できないようになっています。

マイページから管理者専用のアプリを追加できるようにしたい場合はGithubのmasterからであれば実現可能です。

https://github.com/aipocom/aipo/commit/a5c72c930c0753c8d1e9f018c1989f6973005ae6

のコミットにより対応をいたしました。

CustomizeUtils.isAdminUserViewメソッドを追加したことにより、

  • 管理者だけ追加アプリ一覧に表示
  • PSMLに含まれていても管理者にだけ表示

されるようになります。

対応するアプリを作りたい場合、xregのsecurity-refパラメータに”admin-user-view”を指定したアプリを作ってあげればOKです。

<registry>
    <portlet-entry name="Hoge" hidden="false" type="ref" parent="Velocity" application="false">
        <security-ref parent="admin-user-view"/>
        <meta-info>
            <title>ほげ</title>
            <description>ほげほげ</description>
        </meta-info>
        <classname>org.apache.jetspeed.portal.portlets.VelocityPortlet</classname>
        <parameter name="template" value="hoge" hidden="true" cachedOnName="true" cachedOnValue="true"/>
        <parameter name="action" value="hoge.HogeAction" hidden="true" cachedOnName="true" cachedOnValue="true"/>
        <media-type ref="html"/>
        <url cachedOnURL="true"/>
    </portlet-entry>
</registry>