オープンソースのローコード開発ツールのプリザンター(pleasanter)ブログ

オープンソースのローコード開発ツールのプリザンター(pleasanter)のブログとサービス情報サイトです

カテゴリ : お知らせプリザンターとは?使い方スクリプト・スタイル環境構築事例動画

ナビゲーションメニューを自在に表示制御する方法(NavigationMenus.jsonと拡張ナビゲーションメニュー)

こんにちは。
リーデックス小川です。

今回は、ナビゲーションメニューをパラメータファイル(NavigationMenus.json)と拡張ナビゲーションメニューで制御する方法についてのブログ記事となります。

ナビゲーションメニューを表示をユーザごと、など条件により制御したいことがあるかと思います。今回はナビゲーションメニューにある「APIの利用」の表示を変更した例を書いていきます。

 

サーバスクリプトでAPIを使用する場合

サーバスクリプトでAPIを使用する場合、そのユーザが「APIを使用できる」必要がありあります。

パラメータの設定や管理画面の設定を行う(下記ブログ参照)と、「APIの利用とAPIキーを発行する」ユーザを指定することはできます。

 

デフォルトでは、「APIの利用」の設定を行うと、ナビゲーションメニューの「APIキーの発行」が表示されてしまします。

 

 

指定したユーザのみ「APIキーの発行」が表示されるようにしたいですね。

そこで「APIは利用できる設定だが、指定した組織(ユーザ)のみAPIキーをナビゲーションメニューに表示させる」ように設定していきます。

 

 

 

今回は組織IDが2のユーザのみナビゲーションメニューに表示するよう変更してみました。

パラメータファイル「NavigationMenus.json」を修正する

まずはパラメータファイルを修正します。

[
    ・・・・・・・
    {
        "ContainerId": "AccountMenuContainer",
        "MenuId": "AccountMenu",
        "Name": "{UserName}",
        "Id": "AccountUserName",
        "Icon": "ui-icon ui-icon-person",
        "ChildMenus": [
            ・・・・・・
            {
                "MenuId": "AccountMenu_ApiSettings",
                "Name": "ApiSettings",
                "Icon": "ui-icon ui-icon-link",
                "LinkParams": [ "Users", "EditApi" ],
                "Disabled": true,
            },
           ・・・・・・
        ]
    }
]

 

上記パラメータの "ChildMenus"にある"Disabled"をtrueに設定します(太字部分)。

パラメータ「NavigationMenus.json」についての詳細は、下記マニュアルを御覧ください。

 

拡張ナビゲーションメニューで設定する

次に、拡張ナビゲーションメニューの設定を行います。

{
    "TargetId": "AccountMenu",
    "Action": "Append",
    "DeptIdList":[2],
    "Disabled": false,
    "NavigationMenus": [
        {
            "ContainerId": "ExtendedAPIKeyContainer",
            "MenuId": "ExtendedAPIKeyMenu",
            "Name": "API設定",
            "ChildMenus": [
                {
                    "Name": "APIKey設定",
                    "MenuId": "ChildMenusAPIKey",
                    "LinkParams": [ "Users", "Editapi" ]
                }
            ]
        }
    ]
}

 

ここでは、対象となる組織IDを2("DeptIdList":[2])に設定に設定します。また、"NavigationMenus"以下にAPI設定が表示されるようJSON形式で記載します。

項目の意味などの詳細が知りたい方は、下記拡張ナビゲーションメニューのマニュアルをご覧ください。

 

プリザンターの再起動

上記設定を行い、プリザンターの再起動を行ってください。組織IDが2のユーザのみ下記のような表示になります(図は再掲)。組織IDが2以外のユーザは、拡張ナビゲーションメニュー部分は表示されません。

 

まとめ

今回は、今回は、ナビゲーションメニューをパラメータファイル(NavigationMenus.json)と拡張ナビゲーションメニューで制御する方法について書いてみました。

ナビゲーションメニューがカスタマイズできると、オリジナルメニューの表示もできるのでとても便利です。ぜひ利用してみてください。

弊社では、プリザンターの認定トレーナーとしてトレーニングを実施しています。プリザンターの基礎から応用まで幅広いラインナップを取り揃えていますので、プリザンター初心者はもちろんのこと、効率よくスキルアップしたい方にもオススメです!詳しくはこちらにありますので、気になった方はぜひご覧ください。

それでは、今回はこの辺で。
最後までご覧いただき、ありがとうございました。