編集フォームでコンテンツタイプのドロップダウンを非表示にする

SharePoint 2010のお話。
ちょっとしたワークフローをカスタムリストで作成したときのことです。

申請部門から管理部門へ申請が渡ったとき、管理部門でリストのコンテンツタイプを切り替えて、管理用のフィールドを表示させる仕様にしたのですが、そのまま何もしないと、申請部門の人がフォームを編集状態にしたときにもコンテンツタイプ切り替え用のドロップダウンが表示されてしまいます。

contentType

さわんなよー!という運用でもよかったのですが、できるものなら隠したい。というのでJavaScriptでがんばってみました。
管理部門グループ以外のメンバがフォームを編集状態にすると非表示になる仕組みです。

あっと、以下のコードjQueryと私の愛してやまないSPServices使ってますので・・・

var currentuser = $().SPServices.SPGetCurrentUser();
var ct_str;
if (_spPageContextInfo.currentLanguage == "1041") {
    ct_str = "コンテンツ タイプ";
} else{
    ct_str = "Content Type";
};

var groupname = ”管理部門グループ名”;
$().SPServices({
    operation: "GetGroupCollectionFromUser",
    userLoginName: currentuser,
    async: false,
    completefunc: function (xData, Status) {
        if ($(xData.responseXML).find("Group[Name=\'" + groupname + "\']").length == 0) {
                $("tr:has(select[title=\'" + ct_str + "\'])").not("tr:has(tr)").hide();
        }
    }
});

P.S.
こちらに参加してみようかと・・・
SharePointの入門~活用~Enterprise までの濃い1か月間の勉強会Monthly第一弾

いい年して人見知りなので、その場にフリーズしてそうですが。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中