Sharepoint學(xué)習(xí)筆記—ECMAScript對象模型系列.doc_第1頁
Sharepoint學(xué)習(xí)筆記—ECMAScript對象模型系列.doc_第2頁
Sharepoint學(xué)習(xí)筆記—ECMAScript對象模型系列.doc_第3頁
Sharepoint學(xué)習(xí)筆記—ECMAScript對象模型系列.doc_第4頁
Sharepoint學(xué)習(xí)筆記—ECMAScript對象模型系列.doc_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

Sharepoint學(xué)習(xí)筆記ECMAScript對象模型系列- 8、組與用戶操作(一) 這里總結(jié)一下關(guān)于使用ECMAscript對象模型來操作Goup與User的常用情況,因?yàn)閮?nèi)容較多,所以拆分為兩個(gè)部分,這部分主要內(nèi)容如下: 1、取得當(dāng)前Sharepoint網(wǎng)站所有的Group 2、獲取當(dāng)前登錄用戶的Title與所屬Group 3、獲取指定Group下的所有Users 4、獲取指定Group下的所有Users的特定信息 5、獲取所有的Group的所有Users的特定信息分別描述如下: 1、取得當(dāng)前Sharepoint網(wǎng)站所有的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、獲取當(dāng)前登錄用戶的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學(xué)習(xí)筆記ECMAScript對象模型系列- 9、組與用戶操作(二) 接著上面的繼續(xù),這里我們描述的關(guān)于User與Group的操作如下: 6、 向指定Group中添加指定User 7、 獲取指定Group的Owner 8、 把當(dāng)前登錄用戶添加到指定Group中 9、 判斷當(dāng)前登錄用戶是否有EditPermission權(quán)限10、判斷當(dāng)前登錄用戶是否在某特定的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、 把當(dāng)前登錄用戶添加到指定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、 判斷當(dāng)前登錄用戶是否有EditPermission權(quán)限/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、判斷當(dāng)前登錄用戶是否在某特定的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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論