Skip to main content

Mark Wagner - Cogitation Blog

Go Search
Blog
SPDev
SharePoint
Governance
  

Welcome
Mark Wagner works for Microsoft as a Consultant working in the West Region.
My old blog
Mark Wagner - Cogitation Blog > Posts > How To: Hide/Remove the View All Site Content link in SharePoint
How To: Hide/Remove the View All Site Content link in SharePoint

by Mark Wagner
Article: http://www.crsw.com/mark/Lists/Posts/Post.aspx?ID=36

Summary
This article covers how to hide (remove) the View All Site Content link and/or the Recycle Bin link from the quick launch navigation without having to customize the master page.  Additionally, I cover how I accomplished along with other options, all using the standard functionality provided in Windows SharePoint Services 3.0.

Important:  This solution is not an answer for security.  The user will still have access to the View All Site Content page.  The View All Site Content link is simply removed or hidden from the page.

Applies To

- Windows SharePoint Services 3.0
- Microsoft Office SharePoint Server 2007

Licensing

  • There is no license required to use the Hide View All Site Content feature.
  • This is available to the public (business or personal) for free.
  • There is no support.
  • There is no implied or explicit warranty.
  • Use at your own risk.

Downloads

Hide View All Site Content - Solution Package
Hide View All Site Content - Solution Package and Source Code

Installation and Activation
(Very easy, no coding required)

For those interested in how to install this solution, it is very easy and does not require any coding, compiling, or editing.

Basic Install Steps:

Note: This command must be executed on the (only one) SharePoint web server, and you must be a local administrator.

  1. Add the solution using the STSADM command: stsadm -o addsolution -filename [path]\VASCSiteAction.wsp
  2. Deploy the solution using the STSADM command: stsadm -o deploysolution -name VASCSiteAction.wsp -allowgacdeployment -immediate -allcontenturls
  3. Optional - to restart IIS: iisreset /noforce

Using (Activating) the new feature:

  1. Navigate to the site you want to hide the View All Site Content link.
  2. Go to the Site Settings for that site (Site Actions > Site Settings).
  3. Click the Site Features (not the Site Collection Features) link under the Site Administration section.
  4. Activate the new feature named "Hide the View All Site Content link".

Your View All Site Content link should now be hidden and the View All Site Content link should now appear in the Site Actions menu.

For those only interested in using this solution, you do not need to read any further.  However, for those who are interested in how this is accomplished, the rest of this article discusses just that.

 

So, How'd You Do That?

Update

This solution can also be used to hide the Recycle Bin.  Simply add the following code to the custom core.css file in the sample solution project and your Recycle Bin will also be hidden.

#ctl00_PlaceHolderLeftNavBar_idNavLinkRecycleBin
{
       Visibility:hidden;
}
 

Overview
Windows SharePoint Services (WSS) 3.0 has provided a tremendous leap forward from WSS 2.0 in securing and dynamically rendering links to the user based on their access.  This much needed improvement is also applied to the View All Site Content link in SharePoint 3.0.  The View All Site Content link will only be rendered to users who have at least a minimum level of access to a given site such as adding items to any list or document library on the site.  For sites that allow anonymous access users to have only read access, this View All Site Content link will not appear.  However, there are times when a user’s level of access causes the View All Site Content link to appear, even when the site designers or administrators would rather not volunteer this link so freely to the user.  For this reason it is sometimes desired to have this link removed from the page for all users except maybe for site administrators or designers.  This is when the old adage of “Out of sight, out of mind” is an option site administrators would like to have.

The result of this article is to hide View All Site Content link from the users.  An additional View All Site Content menu item is added to the Site Action menu and is accessible only to users having the AddAndCustomizePages right.

Here is a picture of the typical View All Site Content link as it appears on a SharePoint web site and how it looks after it is hidden.

Before (Normal)
After (Hidden)
 
 

Additionally I add a new custom menu item to the Site Action menu.  Here is the result of the new link.  This link will only appear for users having the AddAndCustomizePages right such as designers and administrators.

And finally, this functionality is wrapped up into feature allowing it to be activated or deactivated for each site as needed.  Here is the new feature that will appear in the list of Site Features for a web site.

All of this is wrapped in to a single SharePoint solution package (.wsp) file and can easily be installed on a SharePoint farm by a server administrator.

Note:  From this point forward in the document, any reference to the View All Site Content link will be abbreviated to VASC.

Consideration

There are a couple ways to in which to accomplish this.  The first and most obvious method is to modify the master page that contains this link.  This involves a fairly simple process of modifying the master page and removing the VASC link, then redeploying the new master page.  The drawback from this is that you do have to modify the master page which is sometime not desirable, plus the master page is likely to have more than one site based on it, and it may be desirable to have this View All Site Content link remain on those sites.

However, if you are willing to modify the master page, there is another posting you may find of value.  Keep in mind the security you define in the master page will be the same for all sites on your SharePoint farm.  If that is desirable, you may find this post on SPSecurityTrimmedControl: Conditionally display contents by security of use.

My Approach

I had a couple goals I wanted to my solution to meet.  They were:

1.       To be able to selectively choose the sites where the VASC link is hidden.

2.       Avoid having to modify the master page if possible.

3.       Provide a simple way for users to hide/remove the VASC link.

After a little investigation, a few things about SharePoint (3.0/2007) surfaced that allowed me to achieve all of my goals and provide a solution that can easily be implemented. 

Hidden by Style

The approach I have decided to use is to simply hide the VASC link using a style sheet modification.  The VASC link for most, if not all of the sites assigns an ID (ctl00_PlaceHolderLeftNavBar_idNavLinkViewAll) to the anchor tag containing the VASC link.  This makes it easy pretty darn easy hide this link by simply adding a bit of style code to the page.  In fact, just for giggles, you can copy the following style sheet code into a Content Editor Web Part.  This web part can even be strategically placed at the bottom of the page; optionally hide the title bar and nobody would even know it was there.  Here is the sample style to try it just for fun.  This will hide the View All Site Content link on your page.

#ctl00_PlaceHolderLeftNavBar_idNavLinkViewAll
{
       Visibility:hidden;
}

But this is not really good enough.  At least, not alone this isn’t. 

I needed a way to do this for every page on a given site.  And copying this code to each and every page on a site is not only extremely tedious; it is almost guaranteed to be incomplete and error prone.  Microsoft Office SharePoint Server (MOSS) 2007 does provide an easy way to do this, but Windows SharePoint Services (WSS) 3.0 does not.  Using MOSS 2007, you can apply a custom style sheet to a web site and optionally apply it to every sub site.  For SharePoint servers where this is desired, and if you are using MOSS 2007, this will work for you.  Also keep in mind; you just removed the VASC link for every user – including your site designers and administrators.  Although this is not the worst of all problems, it is probably not the absolute desired solution either. 

I still like the idea of using the custom style code to hide my VASC link.  But I also need to place a link on the page for users who will need easy access to the VASC link such as designers and administrators.  I know I can easily accomplish this by adding an access controlled link to the Site Actions menu, but I will come back to this in a moment.  I still need to address how to easily apply a customized style to every page on a given site.

CustomizeCss

So how can I apply a custom style to every page on a given site?  SharePoint provides a way to do this using the SharePoint object model.  With a bit of custom C# code I use the SPWeb.CustomizeCss method to specify a custom style sheet to be used on every page of my site.

The CustomizeCss method on the SPWeb class provides way to specify the style sheet file name of an existing style sheet used by SharePoint.  SharePoint utilizes a number of different style sheet files.  The one we are interested in is the style sheet file that is applied to each and every page on the site.  One such style file is the core.css file, and this will do just for our needs.  The standard default core.css file is located in …\12\TEMPLATE\LAYOUTS\1033\STYLES.  This STYLES folder is a virtually mapped via the /_layouts virtual directory that is mapped to each and every site in SharePoint.  So, the core.css file is accessible to every site by simply using the URL of “[site-root-url]/_layouts/1033/styles/core.css”.  For every page that SharePoint renders, it renders a link to the core.css using this path. 

However, for any site that has been configured to use a custom core.css style sheet via the CustomizeCss method on the SPWeb class, the URL rendered in each page references a core.css file located in a different location.  This is accomplished in C# by the following code where web is an instance of the SPWeb class for the web site of your choice.

web.CustomizeCss(“core.css”);
web.Update();

The CustomizeCss(“core.css”) statement tells SharePoint to use a custom copy of the SharePoint core.css file.  Once this CustomizeCss method is executed, a copy of the core.css file found in the …\12\TEMPLATE\LAYOUTS\1033\STYLES folder is copied to the folder (not a document library) named _styles on the applied site.  The resulting URL to this new core.css file can be found at
“[site-root-url]/_styles/core.css”.  Modifying this core.css file will affect only the current site. 

Reverting this site back to using the original global (un-customized) copy of the core.css file can be accomplished just a easy using the following code.

web.RevertCss(“core.css”);
web.Update();

Executing the RevertCss method does not remove the custom core.css file on the web site’s “/_styles” folder.  It simply tells the site to no longer use it and to use the original core.css found in the C:\…\12\TEMPLATE\LAYOUTS\1033\STYLES folder; which is the same folder as the as the “[site-root-url]/_layouts/1033/styles” folder.

So we now know how to use the CustomizeCss and the RevertCss methods on the SPWeb class provide an easy way to point the site to a new custom style sheet file.  Now that we have an easy way to point our site to a custom core.css file, all we need to do is copy our custom core.css file that contains all the original core.css contents plus the extra style code to hide the VASC link and copy it into the _styles folder of the site.  All of this can easily be implemented using a SharePoint feature.  Using a feature provides a standard way to enable or disable functionality with a site in a safe and secure manner.  I won’t cover all the details on how to create the feature here, but the source code provides all the code you need.

Now that we know how to hide the View All Site Content link easily using a feature and the CustomizeCss and RevertCss methods, we need to provide an easy way to allow site designers and administrators to quickly and easily use the View All Site Content link.

Site Action Link

To provide web managers such as designers and administrators with a convenient link equal to the View All Site Content link, we will add a new custom action menu item.  I won’t go into the details of the code and how to create the feature here, but I will briefly cover the expected functionality.  Again, the source code is available for those interested in the technical details.

The Site Action is usually located in the upper right corner of the web site and contains links used by site administrators such as the Site Settings link.  The nice thing about the Site Actions menu is that it is collapse and consumes a minimal amount of screen real estate.  So, adding an additional menu option to the Site Actions menu will not only be convenient for site administrators, it’s pretty easy to implement in a SharePoint feature.  This new View All Site Content link on the Site Action can be secured in a manner that best suits your needs.  In the solution sample I provide, this new View All Site Content link on the Site Actions menu is only visible to users who have the “AddAndCustomizePages” right which allows designers and administrators to see it, but is not visible to typical users of a site.

There are plenty of examples on how to add a custom item to the Site Action menu so I will not cover that in any detail here, but the solution sample I provide does include all the code – and the nice thing is, it isn’t much code.

Installation and Activation

Basic Install Steps:
1 - Add the solution using the STSADM command: stsadm -o addsolution -filename [path]\VASCSiteAction.wsp
2 - Deploy the solution using the STSADM command: stsadm -o deploysolution -name VASCSiteAction,wsp -allowgacdeployment -immediate -allcontenturls
3 - Optional - to restart IIS: iisreset /noforce

Activating the new feature:
1 - Navigate to the site you want to hide the View All Site Content link.
2 - Go to the Site Settings for that site (Site Actions > Site Settings).
3 - Click the Site Features (not the Site Collection Features) link under the Site Administration section.
4 - Activate the new feature named "Hide the View All Site Content link".

Your View All Site Content link should now be hidden and the View All Site Content link should now appear in the Site Actions menu.

Conclusion

The result is a single feature that a site administrator can activate and deactivate on any web site to hide and show the standard View All Site Content link in the quick launch navigation.  Additionally, it adds a useful new View All Site Content to the Site Actions menu that is visible only to users having the AddAndCustomizePages right on that site.

References:

Comments

Great posting!

This is terrific on two levels. It provides an answer to the question, "How do I remove View All Site Actions" and then improves by answer the next question, "how do I add it only when I need it".

Great stuff.

--Paul Galvin
at 11/4/2007 6:46 AM

Re: Great posting!

Thanks Galvin!
Mark at 11/4/2007 8:35 AM

But you can apply custom style sheets to WSS 3.0 too

This is great, really it is...but you state that you cannot apply a custom style sheet to WSS 3.0, only MOSS.  You can create custom Themes and custom style sheets in WSS just as you can in MOSS.
at 11/6/2007 11:39 AM

Re: But you can apply custom style sheets to WSS 3.0 too

Thanks for your reply.  Can you be more specific on how this can be done?  I am only aware that you can "create custom theme and custom styles sheet in WSS" by creating your own custom style and applying it using SharePoint Designer, or by creating and deploying a custom theme.  But, WSS does not allow this to be done via the user interface and is not on option in site settings as it is in MOSS. 

Please let me know what I am missing - I would like to learn any other options I am forgetting or not aware of.  Thanks again for your reply.
Mark at 11/7/2007 7:47 AM

Can i do this too the recycle bin too? &.......

i want to thank u for this posting article, but i would like to do it by my self,

what is this .wsp file & the .rpt & ddf?
the rest of files i know but those i don't know

so if that won't bather.. i need ur help..

When i go to visual studio 2005, what type of project should i choose when creating to do as u did in the VASC?

at 11/13/2007 3:21 AM

RE: Can i do this too the recycle bin too?

It appears you could do this to the Recycle Bin as well.  The id assigned to the Recycle Bin link is ctl00_PlaceHolderLeftNavBar_idNavLinkRecycleBin.  You can use the existing project I created very easily.  In fact, the only thing you would need to do is add an addtional style entry into the custom core.css file.  What is even easier, the style modification for this new ctl00_PlaceHolderLeftNavBar_idNavLinkRecycleBin style would be identicle to the style used for the View All Site Content link.  Here is the style code you would need to add to the core.css, recompile the project, and you should be done.

#ctl00_PlaceHolderLeftNavBar_idNavLinkRecycleBin
{
       Visibility:hidden;
}

As for your question about what the .ddf, .rpt, and .wsp file are.  Ingnore the .rpt file, it is a byproduct of using the .ddf file.  The .ddf is a packaging description file used to bundle the necessary files into a .cab file format using the makecab.exe utility.  The .wsp file is a SharePoint solution file, which is nothing more than a .cab file with the .wsp extension name that contains the files necessary to deploy a given SharePoint solution.  There is quite a bit more to understand about SharePoint in order to create a solution package, and I'm not sure where you are on that learning path.  But, here is a link to get you started on creating a solution package:

http://msdn2.microsoft.com/en-us/library/bb466225.aspx

Mark at 11/13/2007 8:17 AM

Two copies of "View all site content"

GREAT solution -- small question -- we're seeing two copies of the "View all site content" link in the site actions menu after doing this.  On sites with the feature disabled, there is no link to view all site content at all, but as soon as we enable the feature we see two links.  Have you seen this behavior before?
at 11/14/2007 7:30 AM

RE: Two copies of "View all site content"

I have not seen that specific situation happen.  However, you will see two appear if the site is a publishing site on MOSS 2007 since the publishing feature (if enabled) will create Site Action link as well.

As for the sample solution I have provided, you should only see one View All Site Content link added to the Site Action menu.  I did make a small change the other day.  I will reconfirm I haven't introduced this adverse result.
Mark at 11/14/2007 1:44 PM

ME TOO.. 2 copies of VASC !!!

it happened with me too..

installing it for the first time, worked fine & great & it was one copy..

i made changes then i saw my change but the first one still there... why??? like this i have two copies my changes & the first one.. !!!

no way.. i uninstalled the feature, my changes that i did to the VASC isn't there but the first is there & i tried again to unistall it but the cmd told me that the feature doesn't exits while it exits in the site actions.. !!!!!

oh plz help me..
at 11/14/2007 1:58 PM

Not Seeing VASC In Site Collection Features?

Hi,

Great Idea, but not working for me.

I deployed with:
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN>stsadm -o addsolution -filename "D:\Installs\Microsoft.com\Server\sharepoint v3\crsw
.com\VASCSiteAction-Binary\VASCSiteAction.wsp"

The "Operation completed successfully", but I have nothing that  I can Activate and it does not appear in Site Actions.

Any Idea?
at 11/15/2007 11:20 AM

Re: Not Seeing VASC In Site Collection Features?

This feature is specific to every web site, so you should find it in the Site Features, not the Site Collection Features.
Mark at 11/15/2007 1:42 PM

Not Seeing VASC in Site Features

I don't see the feature in Site Features.  I've used the same syntax to install as the one above, but I'm not seeing the option in Site Features.  Is there a reset command that I would need to run?
at 11/16/2007 9:23 AM

Re: Not Seeing VASC in Site Features

Make sure you have activated this new hide VASC solution in Central Administration > Operations > Solution Management for the correct Web Application.
Mark at 11/17/2007 9:43 AM

Site Hierarchy

Will this also work with the Site Hierarchy link when working with the Treeview for navigation?
at 11/27/2007 9:16 AM

Works great! but...

if I want it activated for all sites, I will have to do it individually.  Is there a way when it's activated it applies for all subsites?

Thanks!
Ringo
at 11/28/2007 12:32 PM

Re: Works great! but...

The setting will keep if you save the current site as a template.  You can then base all future subsites on this one.
at 11/29/2007 8:05 AM

Could you hide the 'Site Actions' menu via this process?

Great article... Just getting my feet wet with SharePoint...

I see lots of sites that have the 'site action' menu removed (or hidden) from the users.

I can't find a easy way to hide (or remove) the 'Site Actions' menu.  Is there one?.. or does it involve work like you have done here? (is this even the right approach)

I have a group that I want to view, add and edit entries/ documents in lists and libraries.

But, I want to have it so the Site Actions menu does not appear to this particular user group.

I have tried playing with permissions to get rid of 'it' but it always appears on the page.

The ugly part is that even with limited permissions, if I click on something like 'Create Page', I get the Create Page screen and can sort of go on creating a page.  Finally it will show me access denied when I finally click OK for creating the page.
From an end user perspective, this is not a polished solution.

Thanks  Curtis
at 12/5/2007 12:05 PM

WIll not work

I cannot make htis work.  I have the extra View all Content menu in the site settings but I do not have the feature to turn off the other one.  I have check everywhere.

Thanks,

Anthony
at 1/10/2008 10:50 AM

But it does work

You will have an extra View All Site Content link in the Site Actions menu if you also have Publishing features enabled. 

As for the Hide View All Site Content feature is a site feature and not a site collection feature, make sure you look in the Site Collection Features.
Mark at 1/11/2008 1:58 PM

It does work, but...

Yeah, it works for me without problems, but...
There is always a but!

You hided VASC but there is still space there it was and it's kind of ugly. Is there any way to remove that unneded space?

Tnx for solution!
at 1/16/2008 7:56 AM

Yes, there almost always is a but :)

The space that is left (the box) can only be collapsed or removed by modifying the actual page code.  This Hide View All Site Content feature uses a custom style, which prevents any modification of the original page, and it can be applied (enabled/disabled) to many different sites easily. 

The problem is because that "empty box" does not have any ID associated with the HTML tag.  If it did have an ID, I could apply a new style or even hide it, but it doesn't.  Sorry.  :)  I would prefer to have it completely removed also.  But hey, the link is gone. :)
Mark at 1/17/2008 3:04 PM

Source Code

Just wondering, you touch a little bit on creating a feature for copying and deploying a custom core.css. Then you state you aren't going to go into detail on this but that we can view the source code for more details. Where do I find this source code? I have been trying to figure out how to create a feature that does this.
at 1/30/2008 10:18 AM

Re: Souce Code

Near the top of this article under the Downloads section you will find two links you can use to download files.  One of the files contains the source code.  In the source code zip you will find a folder (VASCSiteAction\FEATURES\VASCSiteAction) that contains a Feature.xml and a Elements.xml file.  These two files define the Hide View All Site Content feature and the associated files (the .css file) that is deployed when the feature is activated. 

A third file (Receiver.cs) in the source is a the "feature receiver", which is an event handler (written in C#) that is executed when the feature is activated and deactivated.  The feature receiver performs the necessary update to the current web site telling it to use a custom .css file.

I cannot cover the details about SharePoint Features here, but these three files provide the definition of the Hide View All Site Content feature and the files that are deployed when the feature is activated, and how the site is updated to use the new .css file.

Hope this helps.
Mark at 1/30/2008 11:30 AM

RE: Could you hide the 'Site Actions' menu via this process?

Here's the best way to hide the “View All Site Content” link on the Site Actions menu from unauthorized users when the Publishing feature is enabled.

When the Publishing feature is enabled on a site the Site Actions menu is controlled by a file named SiteAction.xml located in the SharePoint LAYOUTS\EditingMenu folder.

1. Open the SiteAction.xml file in Notepad from
"C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS\EditingMenu\SiteAction.xml"

2. Find the ConsoleNode element that defines the “View All Site Content” link (look for Action="cms:ViewAllSiteContentAction").

3. Add “UserRights” and “RequiredRightsMode” attributes to define the permission levels that a user must have to see the link. For an example, see the ConsoleNode element for the Site Settings link.

4. Run "iisreset /noforce" on the web server to make the change visible.

5. Repeat for each web server on the farm.
at 2/18/2008 8:36 AM

Great Article

Thanks Mark - this is a fantastic features!
at 2/20/2008 11:12 AM

Not Working for me

I don't see it in 'Site Actions'.  I must be missing a step.
1. stsadm -o addsolution -filename [path]\VASCSiteAction.wsp
'Operation completed successfully.' was returned.
2. stsadm -o deploysolution -name VASCSiteAction,wsp -allowgacdeployment -immediate -allcontenturls
'Timer job successfully created'
3. iisreset /noforce to restart iis

From Central Administration -> Operations -> Solution Management, the status of the solution is deployed but I don't see it in Site Actions.  What did I miss?
at 2/22/2008 4:30 PM

Re: Not Wroking for me

Sorry for the delay in responding.  You need to activate the feature for the site before the link will be hidden and the new menu item is added to the Site Actions menu.

1 - Navigate to the site you want to hide the View All Site Content link.
2 - Go to the Site Settings for that site (Site Actions > Site Settings).
3 - Click the Site Features (not the Site Collection Features) link under the Site Administration section.
4 - Activate the new feature named "Hide the View All Site Content link".

Your View All Site Content link should now be hidden and the View All Site Content link should now appear in the Site Actions menu.

Note: Sorry this was not more clear.  I also added a section to my original posting that now covers this.
Mark at 2/25/2008 1:00 PM

Requesting Registry access is not allowed.

Hi Mark - I attempted to deploy your packaged solution and I am seeing this in the WSS Solution Properties
Name: vascsiteaction.wsp
Type: Core Solution
Contains Web Application Resource: Yes
Contains Global Assembly: Yes
Contains Code Access Security Policy: No
Deployment Server Type: Front-end Web server
Deployment Status: Error
Deployed To: None
Last Operation Result: The installation of features failed during deployment of the solution.
Last Operation Details: servername : Requested registry access is not allowed.
servername : Requested registry access is not allowed.
 
Last Operation Time: 3/11/2008 7:19 PM

Any thoughts on what I am doing wrong?
at 3/11/2008 4:27 PM

Ignore my previous post

Hey Mark, eue

Thank you for the great solution!!
Becca
at 3/11/2008 4:39 PM

Great solution!

Thanks a lot.

Greetings from Holland
at 3/12/2008 7:47 AM

To remove the empty box

what about this:
.ms-quicklaunchheader
{
margin:-10px;
}
if you set the margin to negative, the entire menu moves up and deletes the space....Can you think of a downside to this?

Now, how to update the feature with this new style now that it is already deployed...? 
at 3/12/2008 12:14 PM

Re: To remove the empty box

I like the idea.  I will have to try it and see.  Thanks for the suggestion.
Mark at 3/12/2008 8:30 PM

Unable to activate

Getting an error:

Name: vascsiteaction.wsp
Type: Core Solution
Contains Web Application Resource: Yes
Contains Global Assembly: Yes
Contains Code Access Security Policy: No
Deployment Server Type: Front-end Web server
Deployment Status: Error
Deployed To: None
Last Operation Result: The installation of features failed during deployment of the solution.
Last Operation Details: servername : Requested registry access is not allowed.
servername : Requested registry access is not allowed.
 

How do I get this resolved?
at 3/13/2008 3:04 PM

Multiple web applications

Hi Mark,
I successfully deployed your solution on my first web application.  My second web application states it is deployed but I do not see the feature in the "Sites Action" drop down list.

Any thoughts?
Becky
at 3/16/2008 7:09 AM

Force the job to run

This worked well for me, but I had to force the update job to run using this command:

stsadm -o execadmsvcjobs

Thanks for the neat solution
at 3/17/2008 1:56 PM

Re: Force the job to run

Keep in mind that there is a daylight savings time bug in SharePoint (WSS and MOSS) where timer jobs are delayed for an hour.  This is due to incorrect daylight savings time logic/data in SharePoint.  I believe this is fixed in Service Pack 1 for WSS and MOSS - but not certain.

Your suggestion to execute the stsadm command with the execadmsvcjobs option is a good since it will force all pending timer jobs to execute immediately.  Your comment will likely be helpful to others since daylight savings recently started.  Thanks for your comment.
Mark at 3/17/2008 4:47 PM

Removing boxes on the left nav.

Here is a fairly simple solution to remove all the boxes from the left navigation.

First, I modified the default master page slightly.  I know this is not ideal, but it was a minor customization to add an id to the tag above NavLinkViewAll. 

<Sharepoint:SPSecurityTrimmedControl id="idNavLinkViewAll2"

This allowed me to reference the control from the css.  Below are the css entries I made to the vasc-core.css. 

I added the following code to vasc-core.css. 

/* Hide the View All link */
#ctl00_PlaceHolderLeftNavBar_idNavLinkViewAll
{
display:none;
visibility:hidden;
}
/* Hide the view all box */
#ctl00_PlaceHolderLeftNavBar_idNavLinkViewAll2
{
visibility:hidden;
display:none;
}
/* Hide the recycle bin link */
#ctl00_PlaceHolderLeftNavBar_idNavLinkRecycleBin
{
display:none;
visibility:hidden;
}
/* Hide the recycle bin box */
div.ms-quicklaunch table.ms-recyclebin {
display: none;
visibility:hidden;
}
/* Hide the quick launch box border */
.ms-quicklaunchouter{
display: none;
visibility:hidden;
}
at 3/17/2008 8:12 PM

Registry access is not allowed.

I am having the same problem when I deploy the solution.

"Last Operation Details: servername : Requested registry access is not allowed.
servername : Requested registry access is not allowed."

How do I get pass this error?

/Niax
at 3/31/2008 1:26 AM

RE: Requesting Registry access is not allowed

Mark,

I found the solution to my problem and would like to share it.

My WSS 3.0 was installed on a Domain controller and thats why I was getting this error.
The solution was to give the account running the Timer service Domain Admin user rights and then restart the service.
Then I redeployed the solution, and it went straight through!
After that I reset the user rights for the account.

BTW
Nice work!
/Nicklas
at 3/31/2008 7:26 AM

Great solution!!!

I can tell that you spent alot of time creating this solution.  This was very well thought out and worked for me perfectly.

Thanks again for saving me days of work to even come close to the solution you have already created.

Todd
at 4/10/2008 12:12 PM

Excellent Feature

Very handy feature to have.

I found that the best way to hide the VASC box was to change the ms.quicklaunchheader in the VASC-Core.css file as follows

.ms-quicklaunchheader
{
  padding:0px 0px 0px 0px;
  font-weight:normal;
  color:#003399;
  background-image:url("/_layouts/images/quickLaunchHeader.gif");
  background-repeat:repeat-x;
  background-color:#d6e8ff;
  border-left:solid 1px #f2f8ff;
  font-size:8pt;
  line-height:0px
}

Change padding to 0px on all 4 sides and specify the line-height attribute to 0px (as it inherits a 10pt line hight from another arrtribute).

Only other change i made was to add

#ctl00_PlaceHolderLeftNavBar_idNavLinkViewAll
{
visibility:hidden;
}

to the bottom of the sheet.

Repackage and deploy to the server.

The Recycle bin has better visibility properties already coded into sharepoint and as such will only be displayed when the user has admin rights on the page.  it is invisible to Reader groups by default so i didnt bother specifically hiding it using this feature unless you really need to.  i would advise testing your usergroups to see who can view it before trying to make the recycle bin disappear via css.

Cheers,

Andy
at 6/4/2008 3:53 AM

Re: Excellent Feature

Thanks Andy for sharing this.  I may try what you have suggested and updated my solution files.  I will post back here IF and when I do that.  Thanks again.
Mark at 6/6/2008 3:00 PM

Superb Solution Mark

This worked perfectly for me without complication and makes the page look better too.  I will have a look at Andy's idea from getting rid of the VASC box which shouldn't be an issue really as my background there is white!!

Not knowing how to add the option for the Recycle Bin addition is a bit of a complication for me though.  Does this need repackaging afterwards and if so how is this done?

at 7/4/2008 2:11 AM

Left nav box.

Thanks. This feature is excellent. I am having problem with hiding the left box of "View all site content". This box is not visible on firefox but on IE the box appears. How can I hide this box. I tried changing the CSS as the comments added in this article but no use.

Your help is appreaciated.
at 7/14/2008 4:39 PM

2 copies of VASC

Mark,
Thank you so much for this solution. It's great. I'm also getting two copies of the VASC link. I went to site actions to try to deactivate the feature, but I got this error message:

  
 
Feature 'fc5e2840-0b48-42eb-9ad7-076f5add58ad' could not be installed because the loading of event receiver assembly "VASCSiteAction, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c3d77e0415d83b05" failed: System.IO.FileNotFoundException: Could not load file or assembly 'VASCSiteAction, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c3d77e0415d83b05' or one of its dependencies. The system cannot find the file specified.
File name: 'VASCSiteAction, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c3d77e0415d83b05'
   at System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
   at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
   at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
   at System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
   at System.Reflection.Assembly.Load(String assemblyString)
   at Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog]. 
 
 Any help would be appreciated!!
at 7/20/2008 12:27 PM

Great feature: pingback

at 7/26/2008 7:50 AM

Re: 2 copies of VASC

The only thing I can think of regarding the existence of 2 copies of the View All Site Content (VASC) would be if you are using Microsoft Office SharePoint Server 2007 (MOSS) and have the Hide View All Site Content feature activated and also have the Publishing features activated (which are only available on MOSS 2007, not on WSS 3.0).  If this is the case, this is known situation and a minor side effect that only maintenance users will see.

If this is not the case, I'm not sure what could be the problem.  I suggest removing the solution from SharePoint and then re-install the VASC solution.  Sorry I could not be of more help.

Best Regards,
Mark
Mark at 7/28/2008 5:02 PM

Awesome

I Googled "how to hide view all site content" and wala! How can we thank you enough, Mark? This solution is simple and works perfectly. Thanks, and hugs!
Christine
at 8/22/2008 7:08 AM

Thanks so much!!

This is a great tool you have created. The fact it is deployed as a feature is really good, anyone with the requisite authority can hide the view all site content link without involving IT

I chose to deploy to all web apps on the server, but one could choose to deploy to just one web app.

Worked first time like a charm!!
at 8/22/2008 8:20 AM

My Site; I can't hide it 'View All Site Content'

I went every site in SharePoint and hide 'View All Site Content' except in My Site I don't see the option Site Actions >Site Settings. Where do I go for this?

Email Add: Alex.Aquino@flysfo.com
at 8/22/2008 5:22 PM

Received Error In Solution Manager

This sounds like a great solution, and I am eager to get this to work.  When we deployed this solution, we are getting this error in the Solution Manager:

Name: vascsiteaction.wsp
Type: Core Solution
Contains Web Application Resource: Yes
Contains Global Assembly: Yes
Contains Code Access Security Policy: No
Deployment Server Type: Front-end Web server
Deployment Status: Error
Deployed To: None
Last Operation Result: The installation of features failed during deployment of the solution.
Last Operation Details: servername : Requested registry access is not allowed.
servername : Requested registry access is not allowed.

This is deployed on Sharepoint MOSS 2007. Any suggestions?
at 8/26/2008 9:34 AM

Received Error In Solution Manager

This sounds like a great solution, and I am eager to get this to work.  When we deployed this solution, we are getting this error in the Solution Manager:

Name: vascsiteaction.wsp
Type: Core Solution
Contains Web Application Resource: Yes
Contains Global Assembly: Yes
Contains Code Access Security Policy: No
Deployment Server Type: Front-end Web server
Deployment Status: Error
Deployed To: None
Last Operation Result: The installation of features failed during deployment of the solution.
Last Operation Details: servername : Requested registry access is not allowed.
servername : Requested registry access is not allowed.

This is deployed on Sharepoint MOSS 2007. Any suggestions?
at 8/26/2008 10:00 AM

Hide VASC in My Site:

Hi Mark,
After I had hidden the “VASC” in My Site. And when my colleague login to MOSS in My Site he sees VASC.

How to implement this to all who logs in to SharePoint in My Site?
Thanks Alex
at 8/26/2008 3:21 PM

Solution to "Requested registry access is not allowed"

I can't promise if this will work for you, but I was able to deploy the solution using the web interface in central admin, even when getting the reg access problem when doing it with stsadm

Central Administration > Operations > Solution Management > Solution Properties  > Deploy Solution
at 8/28/2008 1:34 PM

Re: Solution to "Requested registry access is not allowed"

Using the Manage Solutions page in SharePoint Central Administration to activate/deactivate a solution submits the solution to be deployed via the SharePoint Timer service.  The Timer service (via the service account) should have the necessary permissions to successfully deploy your solutons.  I suggest anyone having difficulty using the STSADM command to try using this Central Administration method.
at 8/29/2008 3:00 PM

Great Solution!!

This solution works great, when I go to my MySite and activate the hide feature it hides my VASC in my home only. How can I do this to all my customers in their MySite My Home without me doing it manually for them?
at 9/8/2008 5:21 PM

Re: Solution to "Requested registry access is not allowed"

I had to run this stsadm command to get it to work:

stsadm -o deploysolution -name vascsiteaction.wsp -allcontenturls -immediate -allowgacdeployment -force
at 9/15/2008 11:25 AM

Solution Manager

This add on is great as is your msi but i found this tool to be better when adding solutions.
http://www.theartofsharepoint.com/2007/06/sharepoint-2007-solution-upload-manager.html

It has been abandoned by the looks of it but it does work with MOSS & WSS 3.0
at 9/23/2008 4:53 AM

Works great but it..

Thanks, the install worked smoothly for a WSS 3.0 installation.  I used the Solutions Manager that someone recommended in the 9/23/08 post.

The problem I did experience, however, is that your app changed the colors to the right & left of my content (content is center screen, vertical "background" color to the left & right of center content changed to white).  How do I change the color back to what is was?  I have several subsites that still show the correct color but I know that if I activate VASC it'll change the color to white.  It does not revert back if I deactivate VASC after activating it.  Is there a simple cut & paste of text that I could use to fix the source?  If so, where & what are the entries?

Any help would be appreciated.  Thanks
at 10/1/2008 11:43 AM

Right solution at the right time!

just deployed two applications last week, and after-the-fact needed a quick solution to address this issue, and your solution came through like a champ!  thanks so much for your work on this to assist the larger community.
at 10/7/2008 9:09 AM

Great!

Works sweet, great job! Thanks alot :)
at 10/9/2008 10:17 AM

Hide Inherit permissions

mark

Can you please suggest a solution as how to hide "InhertiPermissions" menu option

Thanks
Srujan.N
at 10/14/2008 1:42 AM

How to remove completely the 'View All Site Content' link

In your example above, 'Before Norma' and 'After Hidden' screen shots, how do you completely remove the 'View Site Content' link because a space is left since the data is hidden.
at 10/17/2008 12:39 PM

Deployment Typo

In step 2 of the deployment instructions, replace "VASCSiteAction,wsp" with "VASCSiteAction.wsp"
at 10/30/2008 1:11 AM

Thanks Mark!

Exactly what i needed.  New to SharePoint I'm grateful for your solution.

Jerry
at 11/11/2008 1:22 PM

Great topic!

Good job done very clear and easy to follow.
at 11/26/2008 3:03 AM

Implemented it in a Snap... Great!!

This Solution package is Cool. Kudos for sharing it with the needy.

Happy Thanksgiving!!
at 11/26/2008 3:35 PM

Works great on WLID site

This package is what I needed. Thanks a lot!
Bearry
at 12/12/2008 9:07 AM

thanks

thanks!
at 12/19/2008 4:48 AM

Can't add the solution

I tried to run the command but it doesn't work for me
I copied the .wsp file to the bin folder

"C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN>stsadm -o addsolution -filename VASCSiteAction.wsp

Object reference not set to an instance of an object.
VASCSiteAction.wsp: The Solution installation failed.
"
at 12/30/2008 1:34 AM

Awesome

Just what I was looking for.

Eric
at 1/8/2009 9:58 AM

Great solution to how to remove VASC.

Thank you
at 1/8/2009 6:31 PM

How would I apply this to all sites?

Is there a way to script activating this on all sites?

Thanks,
David
at 1/13/2009 7:33 PM

Error

I got the following error in
 
Name: vascsiteaction.wsp
Type: Core Solution
Contains Web Application Resource: Yes
Contains Global Assembly: Yes
Contains Code Access Security Policy: No
Deployment Server Type: Front-end Web server
Deployment Status: Error
Deployed To: None
Last Operation Result: The installation of features failed during deployment of the solution.
Last Operation Details: DC-VM-SHAREPNT : The source was not found, but some or all event logs could not be searched.  Inaccessible logs: Security.
DC-VM-SHAREPNT : The source was not found, but some or all event logs could not be searched.  Inaccessible logs: Security.
 
Last Operation Time: 1/23/2009 1:53 AM
at 1/23/2009 3:00 AM

THANK YOU

Thank you thank you thank you! 
I don't even know how to describe how much nicer you've made my job as a Sharepoint Admin with no design experience :) 
Thank you!
at 2/3/2009 2:21 PM

solution for de deploy error

If you have the following error:
"Deployment Status: Error"

you must do an innemdiate deploy:
stsadm -o execadmsvcjobs
at 2/9/2009 10:00 AM

CustomizeCSS not working

Hi all,

I have a question! Until now, i deployed this solution on three different moss machines and its only working on one machine :-(

The two others do not create the _styles/core.css copy, which means, the web.CustomizeCSS(core.css) does not create the stylesheet copy :-(

Has anyone an idea, why this happen?

greets
Flo
at 2/16/2009 5:44 AM

Hide the MySite Link

I want to create a feature exactly like this one, but that it hides the mysite link from the specific sites. So that seems simple enough except when someone activates both my new feature and the vascsiteaction feature. Which ever one is activated last does not seem to work which I imagine has to do with both using the core.css stylesheet, so is there another style sheet that can be used in my feature or is there a way around both features using the same core.css file?
at 4/23/2009 7:24 PM

Re: Hide the MySite Link

The problem is the modified core.css file needs to contain the modifications for both the Hide View All Site Content and your Hide My Site link in one core.css file, and then have that file deployed.  The only other option, that I need to do for other reasons, is to have the modified styles dynamically added/modified into the existing core.css file.  The original core.css file would still be preserved and restored when the feature is deactivated.  If only the changed styles were added dynamically, then each feature would add just the changes it needs to the existing core.css.
Mark Wagner at 4/23/2009 10:18 PM

RE: Hide the MySite Link

"The only other option, that I need to do for other reasons, is to have the modified styles dynamically added/modified into the existing core.css file."

So how do you go about doing that?
at 4/24/2009 9:22 AM

Great

Thanks for this. Great 'get it done now' as well as tutorial.
at 5/8/2009 1:26 PM

how do hide create and site settings option from site actions menu

Hi,

YOu have a great blog here, thanks for the same. I have a question on how to hide Create and Site settings option form Site Action menu for an administrator?

Thanks and appreciate your feed back.
AK
at 5/14/2009 11:06 AM

View all site content

Hi!

As mentioned above I installed "Hide View All Site Content - Solution Package and Source Code"

But "Hide the View All Site Content Link" did not appear.

Can you advice what can I do in this case?

Thanks in advance
at 5/18/2009 6:21 AM

Thank you

Just wanted to give props to a simple and ellegant solution. Worked great for me. Thanks!
at 5/19/2009 12:26 PM

Thanks!!! Worked a charm

Hey Mark,

Thanks for this - I deployed it following your instructions to the letter and it worked perfectly!!! I am now looking at trying to hide the empty box it left and I think I like Andy's suggestions. Anyway - thanks again - your hard work is not unrecognised :)
at 5/19/2009 7:14 PM

Change To Right To left

Hi
I Have Arabic Language  .When I Active The feature My site change to the Left To right & I want to change the page  to the right to left .
What am I doing.
at 5/22/2009 10:56 PM

Are there any terms of use or license requirement for this View All Site Content Feature?

Mark,

I downloaded the solution package from your article on this page.  What are the terms of use for this SharePoint feature?

Si Pham
at 5/26/2009 7:54 AM

Re: Are there any terms of use or license requirement for this View All Site Content Feature?

There is no license required to use the Hide View All Site Content feature.  There is also no support, and no implied or explicit warranty.  This is available to the public for free.  I will update the main body of this article to make this information more visible.
Mark Wagner at 5/26/2009 4:30 PM

WSP file is zipped  and PSW protected.

How to unprotect? What is PSW? THX. Marian
at 6/23/2009 2:13 AM

THANK YOU!

I just started working with SharePoint and so I am still green at doing things like this.  This solution and even better the directions were EXACTLY what I needed.  Thank you so much for distributing this.  Keep up the good work!
at 7/1/2009 2:59 PM

Object reference not set to an instance of an object.  ????

The same error as one of above during addsolution:

Object reference not set to an instance of an object.
VASCSiteAction.wsp: The Solution installation failed

Thx in advance.
Fab
at 7/6/2009 11:04 AM

Rebuild platform?

Hey Mark,

I was curious what platform did you rebuild your solution on? I am trying to add the comments that get rid of the VASC box entirely, but I get compile error when trying to rebuild the solution. I am not a programmer by any stretch of the means so I was wondering how to get the solution rebuilt?
Great article thanks!
BJ
at 7/20/2009 11:43 AM

success to hide view all site content link but

succes to View All Site Content link but appllied themes changed to default thems from  breeze themes
at 7/20/2009 11:40 PM

Thanks works well

Thanks a lot! meets my initial requirement, like rest now I am looking at removing the blank space. Any one helping on that made a great help!

Dilip
at 7/23/2009 2:16 AM

Thank You

Very clear and easy to understand.  Worked like a charm and I am so thankful for the following explanation.
at 7/29/2009 8:38 PM

Re: How To: Hide/Remove the View All Site Content link in SharePoint

Does it work for 1065?! I mean persian (farsi) site collection!
at 8/15/2009 4:59 AM

Hide the MySite Link

First off, thanks for a great application.

We have used it on our site for a few months and is ideal for our site.

One issue we are having now is that we don't use MySite and if you click any employee name it goes to a dead page. Can you turn off the MySite link.

Thanks

Chris Reilly
at 8/19/2009 8:37 AM

Quick solution via javascript

Add a content editorwebpart to your page and paste the following code:

<script type="text/javascript"> var returnVar = document.getElementById("ctl00_PlaceHolderLeftNavBar_idNavLinkViewAll"); returnVar.style.visibility = "hidden"; </script>

Note: you need to do this on every page. It's usefull if you have granted users access to onlu one webpart page.
at 8/26/2009 4:22 AM

re: Quick solution via javascript

This will likely work - I have not tested this specific code.  But I have done similar tweeks for other needs. One important thing to be aware of is this will have to be done on every single page in your site - that makes this not so "quick" or easy. But if you only want to hide this for a page or two, then this should work just fine.
Mark Wagner at 9/2/2009 10:49 AM

How to Hide/Remove VASC

Thanks for a wonderful simple solution!!

Ron Maffrand
at 9/16/2009 2:06 PM

Add Comment

Items on this list require content approval. Your submission will not appear in public views until approved by someone with proper rights. More information on content approval.

Title


Body *


Today's Date *

Please enter today's date. This will help prevent blog spam. Thank you.
Attachments