Code Monkey home page Code Monkey logo

custom-learning-office-365's Introduction

page_type products languages extensions
sample
office-sp
csharp
contentType createdDate
samples
7/26/2014 7:08:15 PM

Patterns and Practices

ARCHIVED - Notice that many of the samples in this repository are for legacy add-in model. You should be using SharePoint Framework for UX layer extensibility for SharePoint and Microsoft Teams. You can find SPFx web part and SPFx extension samples from different repository. You can use Azure AD and Microsoft Teams Solution model as replacement for the provider hosted add-in model. Please see https://aka.ms/m365pnp for the up to date guidance and samples.

This is the main repository for the community driven Microsoft 365 Patterns and Practices (PnP) initiative. If you are looking for latest news around PnP or related topics, please have a look on our one pager at http://aka.ms/m365pnp.

PnP initiative has numerous GitHub repositories, so that you can more easily find what's relevant for you depending on your interest. Easiest way to follow up on latest changes is our landing page at http://aka.ms/m365pnp.

"Sharing is caring"

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

custom-learning-office-365's People

Contributors

dcashpeterson avatar jhwang-ms avatar jsuddsjr avatar juliemturner avatar kevmcdonk avatar krsanty avatar loryanstrant avatar loufarho avatar peterjkrebs avatar stfbauer avatar sympmarc avatar toddklindt avatar tomresing avatar vesajuvonen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

custom-learning-office-365's Issues

'Content' option on stand-alone web part throws 'Leaving site' message

If I add the stand-alone web part to a new or existing page AND I select the 'Content Only' Webpart mode, whenever I click into any of the playlists, I get the 'Leave site? Changes you made may not be saved.' pop-up. As soon as I switch to Webpart mode 'Full', I don't get this message.

I'm using Full as an option now, but thought I'd log this. Not sure how the 'Content Only' option should behave? Should it just go to the CustomLearningViewer.aspx page without that popup?

periodically we are getting the following error for the custom learning webpart when accessing the page from IE

Not sure what is going on, but periodically we are getting the following error for the custom learning webpart when accessing the page from IE. I never see it when using Chrome. It’s random, sometime I can close my browser and reopen and the webpart displays fine. It‘s not just when I have the webpart configured to display a custom playlist, it occurs when I display Microsoft articles for a product as well. I don’t know why sometimes it works and other times does not. Right now it is not working and nothing I do resolves the issue: clear cache, private browsing mode, …
image

Add support for the Language German

Category

  • Question
  • Typo
  • Bug
  • Additional article idea

Im really happy to see this solution, because it allows us to use up to date content and filter and customize it,

We have one issue why we currently cannot use this solution, because we are forced to provide trainings also in German language. I have found all this trainings in German, but im not able to address them in O365 Custom Larning.

I mean the content is there, the custom webpart is there, we just miss a connection.

For me it even wouldnt be an issue if i have 2 sites (one english and one german)

So i would really appriciate it if this also would Work for the German Language.

Something went wrong - Custom Learning Office 365

Provisioned the custom learning through the SPO Provisioning Service Setup after creating the tenant app catalog. No errors during the provisioning, but once I received the notification email, I am unable to view any of the pages. Here is what I see when browsing the training or trying to access the Custom Learning Administration:
2019-04-23_15-45-14

customlearning.sppkg source code

Category

  • [x ] Question
  • Typo
  • Bug
  • Additional article idea

Expected or Desired Behavior

First of all, thank you for these great contents. It will for sure support adoption in multiple organization.

I currently work for different french speaking clients who would greatly benefit from this webpart if it could be localized. I do understand that it migth be in the plans ( #12) but in the meantime, would it be possible from you to release the source code of the customlearning.sppkg's webpart?

It would enable us to contribute or at least fork the project to meet our clients' language AND content needs. To be completely transparent, I was thinking about creating a content provider based a custom SharePoint list instead of relying on a remote json file, this would enable me to easily import new content from assets.json file's updates and at the same time modify the url to match the french rendition of the content (ie: translate support.office.com/en-us/client/0cf0055d-49f8-464e-9dfa-8f582b32453b?embed=true&ns=trainingservices&version=1 to support.office.com/fr-ca/client/0cf0055d-49f8-464e-9dfa-8f582b32453b?embed=true&ns=trainingservices&version=1).

Would that be doable?

Regards

Adding Custom Technologies

We are trying to add some extra products to be displayed in the web part. For example, Microsoft Project and Visio.

We can create new sub-categories under products and playlists for these items but they never show with the other products in the web part.

It looks like because they are not part of a Technology they don't show in the CL web part?

If we can't implement this at present can you please propose how we might show these items in the Learning Centre ?

after manual deployment, CustomLearningAdmin.aspx error

Using tenant admin that has site owner and site admin rights, I am getting this error when visiting the customlearningadmin.aspx page.

The CustomLearningAdminWebPart has not been properly configured and you do not have Owner rights to complete the operation. Please contact the site administrator.

And here is the web call error:

(anonymous) @ CustomLearningAdmin.aspx:88
custom-learning-admin-web-part_e27bb1fbb909d3ee73c638c6169985bb.js:24 Message: [5e4f9bb0-8ad4-4aa6-ab69-b768143c85a4] (1552501512969) Completing GET request. Data: {}
custom-learning-admin-web-part_e27bb1fbb909d3ee73c638c6169985bb.js:24 Message: [5e4f9bb0-8ad4-4aa6-ab69-b768143c85a4] (1552501512980) Returning result from pipeline. Set logging to verbose to see data. Data: {}
custom-learning-admin-web-part_e27bb1fbb909d3ee73c638c6169985bb.js:24 Message: Microsoft Custom Learning Admin is not in the web defined by the tenant property MicrosoftCustomLearningSite: 'https://customlearningdemo.sharepoint.com/sites/O365CL3'. If the tenant property is correct than this web part cannot run in this web.
e.log @ custom-learning-admin-web-part_e27bb1fbb909d3ee73c638c6169985bb.js:24

CLO unable to open in IE 11

CLOIE

CLO is unable to be opened in IE 11, image details what happens with the error "The CustomLearningWebPart has not been properly configured and you do not have Owner rights to complete the operation. Please contact the site administrator."

Custom categories not displaying correctly

We've managed to deploy the custom Learning site beautifully using the PnP Provisioning service.

We're now trying to set up custom categories and playlists but this isn't working for us as we'd expect. We can create the custom playlist and this works fine within a Microsoft category. However, when we create a custom category, it the category doesn't appear in the main list and the playlist doesn't consistently appear when we use the Web part to filter to the new category - I have to keep changing the category name and re-saving playlists to get them to appear.

Specific scenario details

  • Custom playlist created in existing Microsoft category (successful)
  • Custom sub-category created (successful)
  • Custom playlist created in custom sub-category (successful)
  • Custom sub-category displayed in un-filtered Web Part (failed - sub-category not listed)
  • Custom sub-category displayed when Web Part filtered to custom category (intermittent - filter applied but playlist doesn't always appear on first save attempt. This is sometimes resolved by re-applying the list to the custom category in at admin section)

Current work around for getting custom playlists to show

  • Rename the sub-category
  • Edit each playlist to apply new sub-category name
  • Refresh web page with filtered web part
  • Custom playlists appear

Screenshots
CustomPlaylist-ExistingSubCategory
CustomPlaylist-CustomSubCategory-Fail
CustomPlaylist-CustomSubCategory-Reapplied
CustomSubCategory-MissingFromList

AAD permissions to be granted for solution

I want to know exactly what resources AAD admin should grant to the user when consent to the application on behalf of the organization. After selecting "add to tenant", there isn't a display of what kind of resources it consent to. AAD admin needs to know what to grant before doing anything.

subcategories

Repro steps:

  1. Using Chrome on Windows 10. Visit CustomLearningAdmin.aspx, add a new Sub Category: Foo Cat
  2. Click Save
  3. Add new Playlist: Foo List
  4. Add new Asset to Foo List: Foo Asset1. Pick adding new site page, publish.
  5. Save Asset
  6. Close Playlist
  7. Refresh Office 365 Training page (Get-started-with-Office-365.aspx). Ctrl+F5.

Foo Cat does not appear on the Get-stared..aspx page. Please advise.

Webpart UX Feedback (MVP)

From SMCollier in Teams MVP chat: The only feedback I would say is whether the arrows for the next item in the lesson playlist aren't that obvious if you looking for the first time, will people miss that there's more than one page? Could that be made more clear, for example with a coachmark?

Could not find Custom Learning Web Parts

It appears that CustomLearninViewer.aspx is being created but CustomLearningAdmin.aspx is not being created... what could I be missing here?

When running the manual installation of the custom learning center I receive this error.

Get-PnPAvailableClientSideComponents : Object reference not set to an instance of an object.
At line:155 char:13

  •     if (Get-PnPAvailableClientSideComponents -page CustomLearning ...
    
  •         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    • CategoryInfo : WriteError: (:) [Get-PnPAvailableClientSideComponents], NullReferenceException
    • FullyQualifiedErrorId : EXCEPTION,SharePointPnP.PowerShell.Commands.ClientSidePages.GetAvailableClientSideComponents

and this error

Get-PnPAvailableClientSideComponents : Object reference not set to an instance of an object.
At line:164 char:11

  • if (!(Get-PnPAvailableClientSideComponents -page CustomLearningAd ...
    
  •       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    • CategoryInfo : WriteError: (:) [Get-PnPAvailableClientSideComponents], NullReferenceException
    • FullyQualifiedErrorId : EXCEPTION,SharePointPnP.PowerShell.Commands.ClientSidePages.GetAvailableClientSideComponents

The CustomLearningWebPart has not been properly configured and you do not have Owner rights to complete the operation. Please contact the site administrator

Still having issues when trying to go to the CustomLearningAdmin.aspx after I have setup the custom learning site for the first time. I have used the SharePoint PnP provisioning option 3 times now and have 3 new sites setup but still unabel to run the .aspx. I have tried 3 different browsers, IE11, Chrome and Edge, same result 

"The CustomLearningAdminWebPart has not been properly configured and you do not have Owner rights to complete the operation. Please contact the site administrator".

Custom learning site provisioning failed

We did the provisioning procedure until the end 2 times. URL should be: https://rbinternational.sharepoint.com/sites/nwowlc but nothing is available.
I got an error message "Access denied. You do not have permission to perform this action or access this resource." Details see below. I am a global admin in our tenant.

Unfortunately, your request to provision
"Custom learning for Office 365"
template failed.

Here is the exception that occurred: Type = System.Exception Message = {"error":{"code":"-2147024891, System.UnauthorizedAccessException","message":{"lang":"en-US","value":"Access denied. You do not have permission to perform this action or access this resource."}}} Source = OfficeDevPnP.Core TargetSite = Void MoveNext() StackTrace = at OfficeDevPnP.Core.ALM.AppManager.d__39.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at OfficeDevPnP.Core.ALM.AppManager.d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at OfficeDevPnP.Core.ALM.AppManager.Add(Byte[] file, String filename, Boolean overwrite, AppCatalogScope scope, Int32 timeoutSeconds) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.Utilities.TenantHelper.ProcessApps(Tenant tenant, ProvisioningTenant provisioningTenant, FileConnectorBase connector, TokenParser parser, PnPMonitoredScope scope, ProvisioningTemplateApplyingInformation applyingInformation, ProvisioningMessagesDelegate messagesDelegate) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.ObjectHierarchyTenant.ProvisionObjects(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, TokenParser parser, ProvisioningTemplateApplyingInformation applyingInformation) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.SiteToTemplateConversion.ApplyProvisioningHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation provisioningInfo) at Microsoft.SharePoint.Client.TenantExtensions.ApplyProvisionHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation applyingInformation) at SharePointPnP.ProvisioningApp.WebJob.ProvisioningFunction.d__0.MoveNext() in C:\github\sp-provisioning-service\SharePointPnP.ProvisioningApp\SharePointPnP.ProvisioningApp.WebJob\ProvisioningFunction.cs:line 337 HResult = -2146233088 Here is the exception that occurred: Type = System.Exception Message = {"error":{"code":"-2147024891, System.UnauthorizedAccessException","message":{"lang":"en-US","value":"Access denied. You do not have permission to perform this action or access this resource."}}} Source = OfficeDevPnP.Core TargetSite = Void MoveNext() StackTrace = at OfficeDevPnP.Core.ALM.AppManager.d__39.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at OfficeDevPnP.Core.ALM.AppManager.d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at OfficeDevPnP.Core.ALM.AppManager.Add(Byte[] file, String filename, Boolean overwrite, AppCatalogScope scope, Int32 timeoutSeconds) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.Utilities.TenantHelper.ProcessApps(Tenant tenant, ProvisioningTenant provisioningTenant, FileConnectorBase connector, TokenParser parser, PnPMonitoredScope scope, ProvisioningTemplateApplyingInformation applyingInformation, ProvisioningMessagesDelegate messagesDelegate) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.ObjectHierarchyTenant.ProvisionObjects(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, TokenParser parser, ProvisioningTemplateApplyingInformation applyingInformation) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.SiteToTemplateConversion.ApplyProvisioningHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation provisioningInfo) at Microsoft.SharePoint.Client.TenantExtensions.ApplyProvisionHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation applyingInformation) at SharePointPnP.ProvisioningApp.WebJob.ProvisioningFunction.d__0.MoveNext() in C:\github\sp-provisioning-service\SharePointPnP.ProvisioningApp\SharePointPnP.ProvisioningApp.WebJob\ProvisioningFunction.cs:line 337 HResult = -2146233088
Here is the exception that occurred: Type = System.Exception Message = {"error":{"code":"-2147024891, System.UnauthorizedAccessException","message":{"lang":"en-US","value":"Access denied. You do not have permission to perform this action or access this resource."}}} Source = OfficeDevPnP.Core TargetSite = Void MoveNext() StackTrace = at OfficeDevPnP.Core.ALM.AppManager.d__39.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at OfficeDevPnP.Core.ALM.AppManager.d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at OfficeDevPnP.Core.ALM.AppManager.Add(Byte[] file, String filename, Boolean overwrite, AppCatalogScope scope, Int32 timeoutSeconds) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.Utilities.TenantHelper.ProcessApps(Tenant tenant, ProvisioningTenant provisioningTenant, FileConnectorBase connector, TokenParser parser, PnPMonitoredScope scope, ProvisioningTemplateApplyingInformation applyingInformation, ProvisioningMessagesDelegate messagesDelegate) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.ObjectHierarchyTenant.ProvisionObjects(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, TokenParser parser, ProvisioningTemplateApplyingInformation applyingInformation) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.SiteToTemplateConversion.ApplyProvisioningHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation provisioningInfo) at Microsoft.SharePoint.Client.TenantExtensions.ApplyProvisionHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation applyingInformation) at SharePointPnP.ProvisioningApp.WebJob.ProvisioningFunction.d__0.MoveNext() in C:\github\sp-provisioning-service\SharePointPnP.ProvisioningApp\SharePointPnP.ProvisioningApp.WebJob\ProvisioningFunction.cs:line 337 HResult = -2146233088

SharePoint PNP (Custom Learning for Office 365) app

  1. Issue Category: SharePoint PNP (Custom Learning for Office 365) app.

  2. Question: how to get Custom Learning for Office 365 App in French language.

  3. Expected or Desired Behavior: When I add Playlist on SharePoint modern Communication site for French site collection, then playlist appears in English only, not in French. Although the language has been chosen as French while creating the SharePoint Modern Communication site.

  4. Current Version we are using: VERSION | 2.0.13.0 | RELEASE DATE | May 2019

PlayListNotAppearsFrench_crop

Can you install web part in Site Collection App Catalog

We installed the app to the Site Collection App Catalog and now we are getting messages when we try and add the web part. -The CustomLearningWebPart has not been properly configured and you do not have Owner rights to complete the operation.

Can you deploy this at the Site Collection level or does this have to go in the global app catalog?

Stream not display properly within the Custom Learning webpart in IE

Category

  • Question
  • Typo
  • [ X] Bug
  • Additional article idea

Expected or Desired Behavior

Creation of custom article which is a page containing the Stream webpart configured to display a single video should display the selected video

Observed Behavior

For everyone but me, the webpart displays with with the following text in IE. (see attached screen shot)
screen shot

                              Microsoft Stream
                         To see this content, sign in
                      New to Microsoft Stream? Sign-up

For me, the owner of the Stream content and the site, it displays fine in IE. For everyone it displays fine in Chrome.

Steps to Reproduce

Create a new page
Add Stream webpart configured for a single video
Save page
Add the created page to a playlist
Add playlist to a page
View page in IE, have others with read only access to the Stream channel and Sharepoint site view the page in IE

Submission Guidelines

Thanks for your contribution! Sharing is caring.

Manual Deployment vs Automated Provisioning issue

I used the automated provisioning in a trial tenant and worked fine. Then I moved to the production tenant doing the manual deployment and the script worked fine as well, but the "Site Assets" library and "Site Pages" are not deployed (except for CustomLearningx2 and Home pages). What step I'm I missing or what I'm a doing wrong? Thanks!

CustomLearningAdmin.aspx blank after provisioning

After receiving the provisioning is complete email, navigating to my custom learning url//SitePages/CustomLearningAdmin.aspx the page loads the title and search bar for a second and after just loads a blank page.

Chapters are hard to identify

Many users are not aware that other chapters exist in playlists. The only idetifier is a small triangle located top right of the page.

Make this more prominent - maybe include a table of contents for each playlist at the top of each chapter.

Adding New Content?

I noticed in the admin section in the Technology Tab there is a section for Windows 10.

I have created a Windows 10 page but how do I go about configuring the web part to automatically pull Windows 10 content through ?

I created a new Windows 10 sub-category but it doesn't seem to connect to any Windows 10 content.

Provisioned 2 CLP sites in a same tenant,both point to the same admin Page

Repro steps:

  1. Run PnP provisioning on site collection#1 https://contoso.sharepoint.com/sites/clp1
  2. Run manual web part installation on site collection#2 https://contoso.sharepoint.com/sites/clp2

Access file https://contoso.sharepoint.com/sites/clp2/sitepages/CustomLearningAdmin.aspx

Redirected to https://contoso.sharepoint.com/sites/clp1/sitepages/CustomLearningAdmin.aspx

  1. Would like to understand the reason of this
  2. How to do if customer has pilot and production sitecollections

Thanks.

Provisioning Service Fails (customer Realogy)

### Unfortunately, your request to provision "Custom learning for Office 365" template failed.

Here is the exception that occurred:
Type = System.Exception Message = Scope of template does not match target Source = OfficeDevPnP.Core TargetSite = Void ApplyRemoteTemplate(Microsoft.SharePoint.Client.Web, OfficeDevPnP.Core.Framework.Provisioning.Model.ProvisioningTemplate, OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.ProvisioningTemplateApplyingInformation, Boolean, OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.TokenParser) StackTrace = at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.SiteToTemplateConversion.ApplyRemoteTemplate(Web web, ProvisioningTemplate template, ProvisioningTemplateApplyingInformation provisioningInfo, Boolean calledFromHierarchy, TokenParser tokenParser) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.ObjectHierarchySequenceSites.ProvisionObjects(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, TokenParser tokenParser, ProvisioningTemplateApplyingInformation applyingInformation) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.SiteToTemplateConversion.ApplyProvisioningHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation provisioningInfo) at Microsoft.SharePoint.Client.TenantExtensions.ApplyProvisionHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation applyingInformation) at SharePointPnP.ProvisioningApp.WebJob.ProvisioningFunction.d__0.MoveNext() in C:\github\sp-provisioning-service\SharePointPnP.ProvisioningApp\SharePointPnP.ProvisioningApp.WebJob\ProvisioningFunction.cs:line 337 HResult = -2146233088

How is content updated automatically?

My understanding is that the custom learning webpart will automatically pull information through to the correct sub-categories i.e. MS Team, Outlook.

Are playlists automatically added when new content is available ?

Install Script Fails

Customer has Tenant App Catalog
Tenant has Site Collection Admin Rights
Tenant Admin runs CustomConfig Script
Script throws the following error.

Add-PnPClientSideWebPart : Value cannot be null.
Parameter name: Passed in component cannot be null
At line:147 char:13

  •         Add-PnPClientSideWebPart -Page $clvPage -Component "Custo ...
    
  •         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    • CategoryInfo : WriteError: (:) [Add-PnPClientSideWebPart], ArgumentNullE
      xception
    • FullyQualifiedErrorId : EXCEPTION,SharePointPnP.PowerShell.Commands.WebParts.AddC
      lientSideWebPart

Add-PnPClientSideWebPart : Value cannot be null.
Parameter name: Passed in component cannot be null
At line:159 char:13

  •         Add-PnPClientSideWebPart -Page $claPage -Component "Custo ...
    
  •         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    • CategoryInfo : WriteError: (:) [Add-PnPClientSideWebPart], ArgumentNullE
      xception
    • FullyQualifiedErrorId : EXCEPTION,SharePointPnP.PowerShell.Commands.WebParts.AddC
      lientSideWebPart

Site owner can add the webpart to the page. However, I only see the pink error message below.

image

The Tenant Admin can see the webpart that Owner added. He published from his end but Owner still sees the message above. When Tenant Admin clicks Playlist Administration, he sees a 404 error.

Web part icon wrapping issue in Edge

This is relatively minor but w're experiencing an icon wrapping issue in the Microsoft Edge browser - see image below.

The issue seems to be caused by the .category-item width calculation in the style sheet:

.customLearning_dd144b57 .category-item {
width: calc(32px + ((100% - 352px)/ 12 * 2));
}

In Edge, the 100/12 * 2 calculation is resolving to 16.6667% which is then causing an issue as the 6th icon div is pushed to the lower line, causing an overall wrapping issue.

.customLearning_dd144b57 .category-item {
width: calc(-26.6667px + 16.6667%);
}

You can of course do what you like to resolve this but changing the calculation to calc(32px + ((99% - 352px)/ 12 * 2) resolves the issue.

In my tests, this has only been an issue in Edge, Chrome resolves the calculation correctly. The other width options for different resolutions are all OK as it's only the 12 * 2 option that's being rounded up.

Edge category icon wrapping issue
EdgeWrappingIssueFromWidthCalc

Edge category icon wrapping with calc(32px + ((99% - 352px)/ 12 * 2)
EdgeWrappingIssueFromWidthCalc-fixed

Custom Learning Webpart fails to size properly

Category

  • Question
  • Typo
  • [X ] Bug
  • Additional article idea

Expected or Desired Behavior

Text does not get cutoff based on the sizing percentage chosen on the browser.

Observed Behavior

When using Chrome, the amount of content displayed within the Custom Learning Webpart varies based on browser sizing. At 100% the bottom of letters are cut off. Any other %, as well as IE, appear to display fine.

See screen shots of two different sizings of the same content
bad
good

Steps to Reproduce

  1. Create a page
  2. Add an embbeded web part using the following code
<iframe src="https://support.office.com/en-us/client/meetings-and-calls-d92432d5-dd0f-4d17-8f69-06096b6b48a8?ui=en-US&rs=en-US&ad=US#ID0EAABAAA=Set_up_a_meeting &embed=true&ns=trainingservices&version=1" style="border:0px #ffffff none;" name="myiFrame" scrolling="no" frameborder="1" marginheight="0px" marginwidth="0px" height="100%" width="600px" allowfullscreen=""></iframe> 3. Save page 4. add this page to a playlist 5. Add playlist to a page and view page using Chrome at 100% and 110% to notice how the link to "Whiteboard" is missing the bottom part of its letter when viewed at 100%

Submission Guidelines

Thanks for your contribution! Sharing is caring.

The CustomLearningWebPart has not been properly configured and you do not have Owner rights to complete the operation. Please contact the site administrator

Hello,
After installing the Custom learning for Office 365 in SharePoint, we have faced 1 annoying issue that prevents users from using the portal.
When users try to use the learning portal, the sometimes receive the error:
“The CustomLearningWebPart has not been properly configured and you do not have Owner rights to complete the operation. Please contact the site administrator.”

Any ideas what can it be?
Side note: I have tried modifying the site (removed some web parts) before receiving the notification email.

tenant admin privileges?

Question:
The provisioning service pages says the requirement is a "Tenant Admin",
does this really must be a global tenant admin?
or would it be sufficient to sign-in and use a dedicated "SharePoint Online Admin"?

Reason:
Customer with a highly regulated environment and very restrictive "least privilege model" do have an issue with this sicne they may have only a dedicated set of Admins defiend as the global tenant admins and may limit down the SharePoint Admin tasks to only that subset of users.

If it really needs a global tenant admin, pls can you give us the details on why and what actually is installed/changed on a tenant level that requires these elevated permissions vs. what is it that a normal SharePoint admin would miss out while installing/provisioning the Custom learning sites.

Also does it means that even if the global tenant admin is required, that this is a one-off (just for installing it) requirement and a regular Sharepoint Admin would then be able to normally maintain and administer the portal?

Impact:
There is a customer currently planning the deployment with 5k users very soon but might be blocked if that really needs a "global tenant admin" sicne they will not give to a SharePoint admin the global admin creds.

Thanks and kr
Steve

mixed languages in consent

Some of information in consent window is in Polish (language set for tenant) some in English
PnPConsent.
Not an issue for me, just for information.

Images for Office 365 Training

Category

  • Question
  • Typo
  • Bug
  • Additional article idea

Product images are not displaying on our deployed solution. They were at one time, but now they are not. For example, the Outlook training icon appears to point to this location: https://pnp.github.io/custom-learning-office-365/v2/images/categories/outlook_training.png
but the page is not available and as a result, the image is not displayed on the site. I am seeing this for Outlook, Word, Excel, PowerPoint, Office 365, Forms and others. However, after deployment, these images rendered fine.
CustomLearningImages.docx

Adding youtube video asset

Hi when I add a new asset that points to a youtube video URL, I get an error that content cannot be shown in frame. If instead I create a new asset page(instead of url) and add the same url from youtube to embed the video in the new page, then the new assets works. Any idea why? thanks

Customize the playlist administration playlist assets

The playlist administration lists allow you to customize the lists; hide or show playlists depending on what you want to train your users on or have configured in your tenant. But within an each playlist asset, there are some "steps" that we may not have yet release or configured in our tenant that we do not want to train our users on. I would expect that the playlist assets are configurable as well. to hide/show. Instead, I need to create an entire new playlist even if there is a set of 8 steps in the playlist asset and only 1 is not needed; I need to create one with the 7.

example: Playlist Details: OneDrive QuickStart
Playlist Asset - step 4: Set up your mobile apps ( not everyone is licensed for mobile so we do not want this but we would need to recreate the entire Playlist without this step)

How to update the metadata.json file please?

My users do not like "End User" which I can see is in "metadata.json". Is it possible to update this please? I've had a pretty good look but without the actual source code (is that available?) I can't reverse engineer where it might be.

provisioning service fails

https://customlearningdemo.sharepoint.com

PnP provisioning fails to work on this new tenant. Provisioning started and then sent the admin this exception email:

Type = System.Exception Message = {"error":{"code":"-1, Microsoft.SharePoint.Client.ResourceNotFoundException","message":{"lang":"en-US","value":"Cannot find resource for the request SP.RequestContext.current/web/tenantappcatalog/."}}} Source = OfficeDevPnP.Core TargetSite = Void MoveNext() StackTrace = at OfficeDevPnP.Core.ALM.AppManager.d__39.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at OfficeDevPnP.Core.ALM.AppManager.d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at OfficeDevPnP.Core.ALM.AppManager.Add(Byte[] file, String filename, Boolean overwrite, AppCatalogScope scope, Int32 timeoutSeconds) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.Utilities.TenantHelper.ProcessApps(Tenant tenant, ProvisioningTenant provisioningTenant, FileConnectorBase connector, TokenParser parser, PnPMonitoredScope scope, ProvisioningTemplateApplyingInformation applyingInformation, ProvisioningMessagesDelegate messagesDelegate) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.ObjectHierarchyTenant.ProvisionObjects(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, TokenParser parser, ProvisioningTemplateApplyingInformation applyingInformation) at OfficeDevPnP.Core.Framework.Provisioning.ObjectHandlers.SiteToTemplateConversion.ApplyProvisioningHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation provisioningInfo) at Microsoft.SharePoint.Client.TenantExtensions.ApplyProvisionHierarchy(Tenant tenant, ProvisioningHierarchy hierarchy, String sequenceId, ProvisioningTemplateApplyingInformation applyingInformation) at SharePointPnP.ProvisioningApp.WebJob.ProvisioningFunction.d__0.MoveNext() in C:\github\sp-provisioning-service\SharePointPnP.ProvisioningApp\SharePointPnP.ProvisioningApp.WebJob\ProvisioningFunction.cs:line 333 HResult = -2146233088

Note: After the PnP process failed. I followed the manual steps and was able to deploy the custom learning web part, ps1 and access the viewer/admin aspx pages.

Navigation and technology specific content

 I have a question on the navigation. I see technology specific page created  e.g 
 - Getting started with Microsoft teams
 - Getting started with OneDrive
 So if you are on ' Getting started with Microsoft teams' and then click 'product' (under breadcrumb navigation) and then select 'OneDrive' , you notice that the page remain the same but it load content related to OneDrive. So what is the need of 'Getting started with OneDrive' page if it cannot be linked.
I wanted to add OOB webpart e.g contact webpart for each technology pages as it will be different for each technology area , doing so by creating multiple page ends with above issue

Is it possible to add new categories?

My customer loves the idea of technical training being provided from Microsoft for all things Microsoft, but they're wanting to extend the site to all things training, e.g. new employee on-boarding, annual refresher training, etc. In order to do so we thought we'd want to add new categories for content not related to O365. Is that even possible? Thanks! Love the offering!

custom learning homepage

After successful manual provisioning, what are the steps to get the custom learning homepage that pnp provisioning sets up?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.