Thursday, October 17, 2013

Site Owner Unable to Edit a Page in SharePoint Designer Due to an Inherited Master Page

Ok SharePointers.. I'm wring this blog post to recap a tricky work-around I came up with as result of a Microsoft "feature" in SharePoint 2010.  Here are the details, the problem and finally the solution I came up with.  perhaps this "out-of-the-box" kind of thinking may help you if you encounter the same situation.

The Set Up: Currently on my contract, we have several farms, one of which is an internal portal that is used for employee only collaboration.  It requires an Active Directory account and the layout of the environment consists of a main Site Collection for each bureau and sub sites created for each different department below that as they are requested.

The Problem: A site owner contacted me unable to edit a site page using SharePoint Designer.  he sent me the following screenshots (names have been blurred to protect the innocent):











What this error tells us is that the user does not have permissions to the custom master page that we are using on the site collection.  Since it is a sub site that inherits it's master page from the top level site collection, we are having a permissions issue.

The Details: As you will read in this Microsoft support article: http://support.microsoft.com/kb/2592376
Overall, a user needs to be a member of one of the following groups at the site collection level to be able to use SharePoint Designer and modify SharePoint content:•Site Collection Administrators•Designers•Owners

Since I cannot give this site owner site collection admin, owner or designer permissions to my top-level master page library, and I was unable to get the site to recognize the sub site's master page library in the master page settings, the user was getting the error above.  Simply creating a new site collection for the user and migrating the data was too much effort, so I had to be a bit tricky with how to make this work.  

The Solution: I created a new folder in the top-level master page library and broke inheritance to the folder, giving him designer permissions.  I took a copy of the master page and placed it in that folder, then set the site (and all sub-sites) to inherit this new master page.  He now had the necessary permissions to open site page and edit the content without the master page error, and I was able to maintain security by not allowing him elevated access to the real master page library.

I'm not sure if this is the best way, but this fix took all of 5 minutes to do and the user had all the functionality he needed and was back in business without any impact to the end-user look & feel (or needing to migrate content from one site to a new site collection).  If anyone has any other suggestions or perhaps a better way of being able to get the sub site to recognize it's own master page library (using the "_catalogs/masterpage/Forms/AllItems.aspx" string), please feel free to post a comment in the section below.

Enjoy!

Wednesday, October 9, 2013

Launch a Hyperlink from the Quick Launch Bar or Top Navigation Bar into a new Tab or Window

How many times have you wanted to open a link to a list, library or site from the Quick Launch bar into a new tab, but when you right mouse-click on the link, those options aren't available?  If you're a casual SharePoint user, this is the menu you will get:



My personal work-around to this frustrating function was to duplicate the tab in the browser and then click the link normally.  It didn't take too much time to do this, but it was inconvenient.  I just couldn't understand why Microsoft wouldn't allow me to open a SharePoint link from the navigation to a new tab/new window. But I recently discovered a way to make that menu appear.  It takes some precision clicking, but once you get the hang of it, it will save you time and effort.  Plus you'll have a nifty new trick to show your colleges in the office.  Imagine how cool you will be!

First, you have to find out where the edge of the clickable area ends.  On the Quick Launch bar, it is typically right at the edge of the cell.  On the top navigation, you should be able to see the separator between the navigation items as shown in the image below:


If you hover over the very edge of these, the right mouse-click menu will change to the one we are all familiar with, the one with the option to open in a new tab, open in a new window, save target as, etc:


Now that you have the trick, go perfect your technique.  Go ahead, give it a shot.