Javascript前端判断用户是否为某权限组成员

接上一篇使用SPservice的一些实践。当需要做一些低级别的权限管理时,如判断当前用户是否属于某个权限组(Group)来决定UI上的显示。以下是判断的函数code:

function IsMemberOfGroup(strGroupName)
{
 	var rt=0;
	var g_strCurrUser = "";
	$().SPServices({
      		operation: "GetUserProfileByName",
      		AccountName: $().SPServices.SPGetCurrentUser(),
      		async: false,
      		completefunc: function(xData, Status) {
      
        	g_strCurrUser= $(xData.responseXML).find("Name:contains('PreferredName')").first().parent().find("Value").text();
		//alert(g_strCurrUser);
		$().SPServices({
              		operation: "GetUserCollectionFromGroup",
              		groupName: strGroupName,
              		async: false,
              		completefunc: function(xml, Status) {
                  
                    		if($(xml.responseXML).find("User[Name='" + g_strCurrUser + "']").length > 0) 
                    		{
                			//alert($().SPServices.SPGetCurrentUser({fieldName: "UserName"}));     	
                			rt = 1;
                    		}
                    
              		}
            	}); /*close().SPServices({ */
      		}
   	}); /*close().SPServices({ */
	
	return rt;
}
 
先通过Jquery先调用SharePoint的webservice “GetUserProfileByName”来得到用户名,然后传入另外一个webservice “GetUserCollectionFromGroup”来判断是否为该group成员

  

posted @ 2012-03-01 14:55  AutodeskWebDev  阅读(1830)  评论(1编辑  收藏  举报