Inject Scripts in SharePoint with JavaScript

Mike BerrymanDon’t worry, it’s the good kind of Script Injection!

I was recently working in a SharePoint environment where I wanted to have some JavaScript libraries (like jQuery and moment.js) available across the entire site collection.  The most obvious solution would be to add a reference to each library into the master page(s) used across the sites in the site collection but for this situation editing any master page was not an option.  Instead I wanted to use User Custom Actions to do script injection.

Continue reading “Inject Scripts in SharePoint with JavaScript”

SharePoint, Javascript Client Object Model and Correlation Ids

Mike BerrymanSharePoint has what’s known as the Client Object Model, which allows for code not located on the SharePoint server to access an object model of the SharePoint site.  One of the ways you can use this Client Object Model is by using Javascript.

Continue reading “SharePoint, Javascript Client Object Model and Correlation Ids”

SharePoint Client Object Model “Field does not exist” error

Mike BerrymanI was working with the SharePoint Client Object Model in Javascript a couple days ago and ran into the ever-so-common not-helpful error message of “Field does not exist” whenever any user other than myself would try and create a list item.  The weird part was, despite this error message, the list item was being created perfectly with no issues, with the field in question filled in exactly as entered on the form.  The only reason I knew there was an error was the fail callback function was being triggered, and consequently an alert box popping up with the “Field does not exist” error.

Continue reading “SharePoint Client Object Model “Field does not exist” error”

“The root of the certificate chain is not a trusted root authority”

Scott ZischerkI recently ran into an issue where a web service that I had set up through SharePoint was throwing the error: “The root of the certificate chain is not a trusted root authority”  The web service ultimately sent out an email with an attachment that is retrieved from a SharePoint document library.  The error was occurring when I created a HttpWebRequest and called the GetResponse method.  Initially, I tried to reassign the ServicePointManager.ServerCertificateValidationCallback property to a method that just returns true, but that didn’t seem to work.

Eventually, I found this blog post: that had me download all the certificates in the SSL certificate chain and add them into SharePoint.  After adding the root, intermediate and SSL certificate the web service started working properly.

SharePoint’s Data Form Web Part, Edit Mode, and “Id” Query Parameter

Mike BerrymanSo a few days ago, I stumbled upon a baffling bug in SharePoint while using a data form web part to allow for editing a list item in a custom list.  In the past, whenever I’ve created custom data form web part pages for editing, I’ve always followed SharePoint’s schema of using the “Id” query parameter to indicate which list item is being editted.  In this case, I was already using “Id” in another web part on the same page, so I just modified my data form web part to use some other query parameter, like “ItemId”.  Simple, right?

Continue reading “SharePoint’s Data Form Web Part, Edit Mode, and “Id” Query Parameter”

Help! I’ve enabled anonymous access to my SharePoint 2010 Site, but it’s still prompting me to log in!

Scott ZischerkThere are a couple of steps to enabling anonymous access on a SharePoint 2010 site.  Here are some steps I take to ensure I have everything set up correctly.

Continue reading “Help! I’ve enabled anonymous access to my SharePoint 2010 Site, but it’s still prompting me to log in!”

Rich text columns on document libraries

Mike BerrymanI recently discovered that by default, document libraries in SharePoint don’t allow rich text columns on their list items.  Whether added directly to the list, chosen from site columns or through a content type, rich text columns get demoted to just plain text when on a document library.  This can be infuriating when you really need rich text (in my case, I was trying to construct a web page using the properties of a document to fill in placeholders in the document itself).

Continue reading “Rich text columns on document libraries”