Sharepoint学习笔记—ECMAScript对象模型系列.doc_第1页
Sharepoint学习笔记—ECMAScript对象模型系列.doc_第2页
Sharepoint学习笔记—ECMAScript对象模型系列.doc_第3页
Sharepoint学习笔记—ECMAScript对象模型系列.doc_第4页
Sharepoint学习笔记—ECMAScript对象模型系列.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Sharepoint学习笔记ECMAScript对象模型系列- 8、组与用户操作(一) 这里总结一下关于使用ECMAscript对象模型来操作Goup与User的常用情况,因为内容较多,所以拆分为两个部分,这部分主要内容如下: 1、取得当前Sharepoint网站所有的Group 2、获取当前登录用户的Title与所属Group 3、获取指定Group下的所有Users 4、获取指定Group下的所有Users的特定信息 5、获取所有的Group的所有Users的特定信息分别描述如下: 1、取得当前Sharepoint网站所有的Group/GetAllTheSiteGroupsinSharePointUsingECMAScriptvargroupCollection;functiongetAllSiteGroups()varclientContext=newSP.ClientContext();this.groupCollection=clientContext.get_web().get_siteGroups();clientContext.load(groupCollection);clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceededgetAllSiteGroups),Function.createDelegate(this,this.onQueryFailedgetAllSiteGroups); functiononQuerySucceededgetAllSiteGroups()vargroupName=SiteGroups:n;vargroupsEnumerator=this.groupCollection.getEnumerator();while(groupsEnumerator.moveNext()vargroup=groupsEnumerator.get_current();groupName+=Title:+group.get_title()+ID:+group.get_id()+n;alert(groupName);functiononQueryFailedgetAllSiteGroups(sender,args)alert(Requestfailed.+args.get_message()+n+args.get_stackTrace(); 2、获取当前登录用户的Title与所属Group/retrievecurentloggedinuserandtheusresGROUPvaruser;varvisitorsGroup;functionretrieveCurrLgUserAndGrp()varclientContext=newSP.ClientContext();vargroupCollection=clientContext.get_web().get_siteGroups();/Getthevisitorsgroup,assumingitsIDis4.visitorsGroup=groupCollection.getById(4);user=clientContext.get_web().get_currentUser();varuserCollection=visitorsGroup.get_users();userCollection.addUser(user);clientContext.load(user);clientContext.load(visitorsGroup);clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceededretrieveCurrLgUserAndGrp),Function.createDelegate(this,this.onQueryFailedretrieveCurrLgUserAndGrp); functiononQuerySucceededretrieveCurrLgUserAndGrp()alert(user.get_title()+addedtogroup+visitorsGroup.get_title();functiononQueryFailedretrieveCurrLgUserAndGrp(sender,args)alert(Requestfailed.+args.get_message()+n+args.get_stackTrace(); 3、获取指定Group下的所有UsersvarsiteUrlretrieveAllUsersInGroup=/;functionretrieveAllUsersInGroup(groupID)/debugger;varclientContext=newSP.ClientContext.get_current();/varclientContext=newSP.ClientContext(siteUrlretrieveAllUsersInGroup);varcollGroup=clientContext.get_web().get_siteGroups();varoGroup=collGroup.getById(groupID);/Specifywhichgroupyouwanttoretrieve/varoGroup=collGroup.getByTitle(DevpTestVisitor);this.collUser=oGroup.get_users();clientContext.load(collUser);clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceededretrieveAllUsersInGroup),Function.createDelegate(this,this.onQueryFailedretrieveAllUsersInGroup);functiononQuerySucceededretrieveAllUsersInGroup()/debugger;varuserInfo=;varuserEnumerator=collUser.getEnumerator();while(userEnumerator.moveNext()varoUser=userEnumerator.get_current();userInfo=userInfo+nUserTitle:+oUser.get_title()+nID:+oUser.get_id()+nEmail:+oUser.get_email()+nLoginName:+oUser.get_loginName();alert(userInfo);functiononQueryFailedretrieveAllUsersInGroup(sender,args)alert(Requestfailed.+args.get_message()+n+args.get_stackTrace(); 4、获取指定Group下的所有Users的特定信息/GetUserSpecificInformationsvarsiteUrlSpecificUserProperties=/;functionretrieveSpecificUserProperties(groupID)/varclientContext=newSP.ClientContext(siteUrlSpecificUserProperties);varclientContext=newSP.ClientContext.get_current();varcollGroup=clientContext.get_web().get_siteGroups();varoGroup=collGroup.getById(groupID);this.collUser=oGroup.get_users();clientContext.load(collUser,Include(Title,LoginName,Email);clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceededretrieveSpecificUserProperties),Function.createDelegate(this,this.onQueryFailedretrieveSpecificUserProperties);functiononQuerySucceededretrieveSpecificUserProperties()varuserInfo=;varuserEnumerator=collUser.getEnumerator();while(userEnumerator.moveNext()varoUser=userEnumerator.get_current();userInfo+=nUser:+oUser.get_title()+nEmail:+oUser.get_email()+nLoginName:+oUser.get_loginName();alert(userInfo);functiononQueryFailedretrieveSpecificUserProperties(sender,args)alert(Requestfailed.+args.get_message()+n+args.get_stackTrace(); 5、获取所有的Group的所有Users的特定信息/RetrieveallgroupsallusersspecificinformationsvarsiteUrlAllUsersAllGroupsSpecificProperties=/;functionretrieveAllUsersAllGroupsSpecificProperties()/varclientContext=newSP.ClientContext(siteUrlAllUsersAllGroupsSpecificProperties);varclientContext=newSP.ClientContext.get_current();this.collGroup=clientContext.get_web().get_siteGroups();clientContext.load(collGroup,Include(Title,Id,Users.Include(Title,LoginName);clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceededretrieveAllUsersAllGroupsSpecificProperties),Function.createDelegate(this,this.onQueryFailedretrieveAllUsersAllGroupsSpecificProperties);functiononQuerySucceededretrieveAllUsersAllGroupsSpecificProperties()varuserInfo=;vargroupEnumerator=collGroup.getEnumerator();while(groupEnumerator.moveNext()varoGroup=groupEnumerator.get_current();varcollUser=oGroup.get_users();varuserEnumerator=collUser.getEnumerator();while(userEnumerator.moveNext()varoUser=userEnumerator.get_current();userInfo+=nGroupID:+oGroup.get_id()+nGroupTitle:+oGroup.get_title()+nUser:+oUser.get_title()+nLoginName:+oUser.get_loginName();alert(userInfo);functiononQueryFailedretrieveAllUsersAllGroupsSpecificProperties(sender,args)alert(Requestfailed.+args.get_message()+n+args.get_stackTrace();Sharepoint学习笔记ECMAScript对象模型系列- 9、组与用户操作(二) 接着上面的继续,这里我们描述的关于User与Group的操作如下: 6、 向指定Group中添加指定User 7、 获取指定Group的Owner 8、 把当前登录用户添加到指定Group中 9、 判断当前登录用户是否有EditPermission权限10、判断当前登录用户是否在某特定的Group中 分别描述如下: 6、 向指定Group中添加指定UservarsiteUrl=/;functionaddUserToSharePointGroup(groupID)/varclientContext=newSP.ClientContext(siteUrl);varclientContext=newSP.ClientContext.get_current();varcollGroup=clientContext.get_web().get_siteGroups();varoGroup=collGroup.getById(groupID);varuserCreationInfo=newSP.UserCreationInformation();userCreationInfo.set_email(helpdeskGLSTAR.COM.AU);userCreationInfo.set_loginName(GLSTARhelpdesk);userCreationInfo.set_title(helpdesk);this.oUser=oGroup.get_users().add(userCreationInfo);/adduserintogroup/varuserInfo=nUser:+oUser.get_title()+/nEmail:+oUser.get_email()+/nLoginName:+oUser.get_loginName();/alert(userInfo);clientContext.load(oUser);clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceededaddUserToSharePointGroup),Function.createDelegate(this,this.onQueryFailedaddUserToSharePointGroup);functiononQuerySucceededaddUserToSharePointGroup()alert(this.oUser.get_title()+added.);functiononQueryFailedaddUserToSharePointGroup(sender,args)alert(Requestfailed.+args.get_message()+n+args.get_stackTrace(); 7、 获取指定Group的Owner/GetTheGroupOwnerNameinSharePoint2010UsingECMAScriptvargroup;functiongetGroupOwnerName(groupID)varclientContext=newSP.ClientContext();vargroupCollection=clientContext.get_web().get_siteGroups();group=groupCollection.getById(groupID);clientContext.load(group);clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceededgetGroupOwnerName),Function.createDelegate(this,this.onQueryFailedgetGroupOwnerName);functiononQuerySucceededgetGroupOwnerName()alert(GroupTitle:+group.get_title()+nGroupOwnerTitle:+group.get_ownerTitle();functiononQueryFailedgetGroupOwnerName(sender,args)alert(Requestfailed.+args.get_message()+n+args.get_stackTrace();8、 把当前登录用户添加到指定Group中/addsthecurrentusertothespecificgrouponthecurrentwebsitevarcurrentUser;varvisitorsGroup;functionaddUserToSpecificGroupInCurrWeb(groupID)varclientContext=newSP.ClientContext();vargroupCollection=clientContext.get_web().get_siteGroups();visitorsGroup=groupCollection.getById(groupID);currentUser=clientContext.get_web().get_currentUser();varuserCollection=visitorsGroup.get_users();userCollection.addUser(currentUser);clientContext.load(currentUser);clientContext.load(visitorsGroup);clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceededaddUserToSpecificGroup),Function.createDelegate(this,this.onQueryFailedaddUserToSpecificGroup);functiononQuerySucceededaddUserToSpecificGroup()alert(currentUser.get_title()+addedtogroup+visitorsGroup.get_title();functiononQueryFailedaddUserToSpecificGroup(sender,args)alert(Requestfailed.+args.get_message()+n+args.get_stackTrace(); 9、 判断当前登录用户是否有EditPermission权限/CheckcurrentuserhasEditPermissionvartheCurrentUser;vartheWeb;functioncheckifUserHasEditPermissions()/debugger;varcontext=newSP.ClientContext.get_current();theWeb=context.get_web();theCurrentUser=theWeb.get_currentUser();context.load(theCurrentUser);context.load(theWeb,EffectiveBasePermissions);context.executeQueryAsync(Function.createDelegate(this,this.onSuccessMethodcheckEditPermissions),Function.createDelegate(this,this.onFailureMethodcheckEditPermissions);functiononSuccessMethodcheckEditPermissions()/debugger;if(theWeb.get_effectiveBasePermissions().has(SP.PermissionKind.editListItems)/UserHasEditPermissionsalert(theCurrentUser.get_loginName()+HasEditPermissiononcurrentwebsite);elsealert(NoEditPermission);functiononFailureMethodcheckEditPermissions()alert(Failedtocheckpermission); 10、判断当前登录用户是否在某特定的Group中varIsInThisGroupFlag=false;/ThebelowchecksiftheuserexistsinthegroupfunctioncheckIfCurrentUserIsInGroup(groupID)varcontext=SP.ClientContext.get_current();/IgotoparentsiteifIminasubsite!varsiteColl=context.get_site();varweb=siteColl.get_rootWeb(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论