2007年05月30日

リスト アイテムの編集メニューにカスタムメニューの追加 (お手軽編)

 流石に、これではあんまりなので、メニュー追加のテクニックだけを残しておきます。 (→ リンクメール送信っぽいの)

本格的には、フィーチャー(機能)として定義した上で登録するべきなのですが、今回はお手軽にスクリプトを追加しての実現方法です。
何だか、妙に細かい所で、拡張のための機能が用意されているんですね・・・

ドキュメント ライブラリとリストには、編集メニューを生成する際にある関数が定義されていると、その関数を最初に呼んでくれるコードが書かれています。
具体的には、ライブラリの場合は Custom_AddDocLibMenuItems で、リストの場合は Custom_AddListMenuItems になります。

そこで、リストの Web パーツをサイトのページに組み込み、ビューの列に編集メニューを設定しておき、「コンテンツ エディタ」Web パーツを追加して、「ソース エディタ」に以下のようなスクリプトを埋め込みます。

<script language="JavaScript">
function Custom_AddListMenuItems (m, ctx)
{
var strDisplayText = "リンクメール送信";
var strImagePath = ctx.imagesPath+"gmailnew.gif";

var strAction = "javascript:navigateMailToLink('mailto:')";

// メニューアイテムの追加
CAMOpt (m, strDisplayText, strAction, strImagePath);
// メニュー区切りの追加
CAMSep (m);

return false;
}
</script>

前回は、何も起こりませんと書いていましたが、メールフォームを開く所だけ加えてみました。

ちなみに、参考にしたのはこちらです。

・MOSS2007 - Custom Library and List Menu Items
<http://www.sharepointblogs.com/helloitsliam/archive/2007/02/15/19500.aspx>

banner-tbp-sharepoint.gif
posted by kunitaka at 23:59| Comment(0) | TrackBack(0) | テクニック