B i t s O f S h a r e P o i n t C o n s u l t i n g L L C > T o p i c P o i n t > TopicPoint-test  

Document Library
T o p i c P o i n t - A centralized place for topics with an Overview, related posts from BlogPoint, specific examples from ExamplePoint, and related internet resources.

 T o p i c P o i n t (select)

BasicTopic: Document LibraryTop

 Overview - Basic

 
There are many features and benefits with SharePoint and document management.  What is outlined here is not a definitive guide to how to use the features of SharePoint document management, but a collection of what I think are best practices.
  • With SharePoint you do not have to use folders to organize your documents.  Folders have an inherent issues that you have to dive into a folder and sub folders to view the documents and if you do not find the document you need, you then have to work your way back to the top.
 
USING COLUMNS/METADATA
  • With SharePoint you can use Columns/metadata to organized your documents. 
    • Allows you to easily group files by the metadata and re group in other ways quickly.
    • Allows you to quickly change a files association.  For example you may have a grouping of Working Document and another grouping of Reference Materials.  A document can be changed very quickly from Working Document to Reference Document just by changing its meta-data.

Check out the examples and links here on this page.

Checking out documents is a change that will take time.  Below is a solution that will force it to happen for the user.
 
Want to print the list of document with out all the other stuff on the page, look below.
None at this time.
 
 
Christophe from PathToSharePoint.wordpress.com was the first site that taught me the value of the calculated column beyond the standard features found using the column to do excel calculations.  He developed a script that allows you to communicate information in a list in new ways.  Think of the many graphical ways on a web site that you communicate information.  Now with the calculated column, Christophe's java script you are able to bring HTML and style sheets to a column and base it on fields in that row.
 
To use and display HTML in a calculated column you will need the following script found at PathToSharePoint.wordpress.com
 
Please follow these steps to be able to use the calculated column with HTML:
  1. To have the HTML calculated column display properly you must add the javascript.  The code can be found below in one of my BlogPoint posts.
  2. I recommend that you have the javascript in text file in a document library, this way you can link the text file to the CEWP.
    • Benefit of this is that if you need to change the javascript to an updated version you only need to update it in one place.
  3. Add a CEWP to the page you want the calculated column HTML to be viewed.  Move it at the end of all your webparts.
  4. Link the javascript file to the CEWP that you added.  Now you can see the result of your HTML.
 
The Calculated Column is great way to extend a list or data and to have many of the functions that Excel has. 
 
You will find links to the right that outline the basic functions that are available to use.  My Blog will show solutions that I have used.
 
To get started look at the links that start with MS, they will give a Microsoft document view of the formula and functions.
 
Calculated Column can also have HTML, look at my TopicPoint on this one to see what undocumented things you can do.
 

Out of the box there are many things that can be done to a Blog that will enhance the experience and specifically for a meeting Minutes Blog. 

  1. First thing to do is review the video below on what a Blog is.
  2. Then take a look at the video on setting up a Blog for meeting minutes.
  3. Then check out my example below and my posts.
None at this time.
None at this time.
 
 
 
Navigation of a website is so critical and is one of the main parts that either makes or breaks a good website.  I will be listing out some solutions and best practices in this matter.
 
Quick Launch:
 
Add to web part pages:
Why is it absent when you create a web part page.  I do not know why Microsoft did not include it in a web part page, but they did not.  In my Blog below I have several solutions for both WSS 3.0 and MOSS.  I have also added links to where I found solutions online.
 
Hide for web part pages:
Now for those pages that have the quick launch bar you can easily hide it if you want.  Add a CEWP and add this code an it will be hidden.
 
<style>
.ms-quicklaunch
{
display:none;
}
.ms-navframe
{
display: none;
}
</style>
 
Customize:
Sometimes it may be nice to have more available on the quick launch bar, but not have it all showing and taking up so much space.  Here is an elegant solution.
 
Here I will begin to capture and organize many solutions using javascript and JQuery.  Paul Grenier at www.endusersharepoint.com has been providing some really wonderful solutions with JQuery.
 

Lists are such a central part of SharePoint.  You can almost think of every area that you setup as each a list. 

Document Library for example is really a list.  If you think of it as a list then you can think of all the ways that you can display an communicate the information.

I will begin to show you some of the many things you can do to enhance lists.

Here are some good solutions that can be done with JQuery and CEWP.
  • Print a list.
  • Highlight the list item you mouse over.
I have found a nice solution that shows how you can have a cascading list where one selection filters down then next. 
 
The Wiki is a great tool for many solutions.  The links here will help you to understand how to best use a Wiki and solutions that are available out there.

 B l o g P o i n t - Related Posts - Basic

expand SharePoint 2007 - Wiki View Solution8/17/2011
expand SharePoint - Global Navigation 2010 Solution In Progress9/23/2010
All,
 
Thank you for the emails and requests for a 2010 version of my 2007 solution to Global Navigation .  I have created a beta version for 2010 and have had a few people test it out.  They found a serious issues when ever you add a calendar web part, navigation no longer shows the pull downs, OUCH. 
 
I have done some preliminary testing but have not found the cause of this.  I am currently on a big SharePoint project that is taking up all my time, got to pay the bills, and so I have not had the time I wanted to look into this.
 
If anyone would like to help me diagnose this issue please feel free to send me an email peter@bitsofsharepoint.com.
 
 
expand SharePoint – A Global Navigation Solution Across Site Collections – Permissions7/1/2010
expand SharePoint - A Global Navigation Solution across Site Collections – Version 2.0 Solution5/15/2010

My solution for A Global Navigation Solution across Site Collections has been upgraded to version 2.0.  If you have not read my previous posts on this topic please check them out:

In version 2.0 I have streamlined the code and reduced the number of lists needed to create the pull downs and now use a list for creating the tabs.  So once you set it up you can easily add tabs and pull downs to a tab, by simply updating the tabs list or the pull down list and all site with this solution will see the changes.

I have also refined the tabs to show the menudark[1] when there is a pull down.  Also, pull downs now can have popup descriptions for each listed item, if you like.  All you need to do is populate the Notes field in your pull down list, unpopulated notes will show nothing.

If you have not implemented this solution yet then follow all the steps listed below.  If you have implement my version 1.0, the changes you will need to make are updating the code in the topnavigation.js file and create two new lists for your tab and pull down.  Your infrastructure, code you added to your masters pages, you created does not need be changed at all.

Let take a look at version 2.0 changes.  Below is an image of how the pull downs can look showing all the features.

image

 

Version 2.0 Global Navigation Features

In version 2.0 I have added MOSS features and as a result the following features were added:

  • Pull Down icon menudark[1] will only appear on those that you indicate have a pull down.  So now you can have a standard tab or a tab with a pull down where the menudark[1] will show indicating there is more to view.
    • image
  • By adding comments in the notes section of the links, they will then become pop-ups when you hover over a link.
    • image
  • New version only requires one list for the tabs and one list for all the pull downs.

When I implemented this on my site www.bitsofsharepoint.com I created a site where I housed all of the lists and libraries.  Below is an image of the what a proper implementation would look like.  You will notice we have the two lists for tabs and pull downs, and we have the Scripts library where our three scripts are housed.

image

View example here: http://www.bitsofsharepoint.com/ExamplePoint/navigation2/default.aspx

Now lets create and implement the solution.  Below are the components that you will need.  Though this may look like a lot, it is very simple.  Add three lists and libraries, add code to your master page, change code in a script file, and add your tabs and pull downs to the lists and that is it.

Components needed:

  1. SharePoint Resource Site
  2. SPServices by Marc Anderson
  3. jQuery
  4. SharePoint Designer to edit Master Pages
  5. SharePoint Links List for Tabs and Pull Downs
  6. Solution Code

1) SharePoint Resource Site

I recommend that if you do not already have a site collection devoted to scripts and lists that will be accessible by all, that you create one.  This site collection will allow you to have document library where you can house your scripts like jQuery and SPServices.  It will also allow you to create lists as needed for example the one we will create to manage the pull down items in our tab.

So there should be a site collection where we house the below files and list and that has permissions set to all authenticated members as read only. For purposes of this article I will call this site collection Resources. I wrote an article along these lines and here it is: http://www.bitsofsharepoint.com/BlogPoint/Lists/Posts/Post.aspx?ID=29

2) SPServices by Marc Anderson

We need to download the SPServices file that Marc Anderson has put together.  You can find it here: http://spservices.codeplex.com/ This file will be used by the script for this solution, so this will need to be added to the document library where you keep scripts.  In my case it would go into the document library in my Resources site collection.

Recommendation is to change the name of the file name so that it does not have a version number and should look like this, “jquery.SPServices-latest.min.js”.  This will allow you to update in the future to Marc’s latest version without having to go back to each master page and change to the new version name.

3) jQuery

There are two ways to work with a jQuery file.  You have a choice of downloading the latest version and putting it in scripts document library or you can point to Google's version which will always be the latest version.  This is a choice that you will make.   You can download jQuery from here: http://jquery.com/

I would then add this script to me document library in my Resources site collection.

4) SharePoint Designer to edit Master Pages

You will need to have access to SharePoint Designer and be able to edit the Master Pages on the sites you want the global navigation tab to show up on.  When you edit a master page you will want to add the following code between the <header></header> tags as diagramed below. 

image

Here is the code you will need to add to each master page.  Make sure that the URL’s point to where you have the files housed.  They do need to be absolute URL’s, as you will be adding this code across site collections, web apps and even servers.

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" src="http://yoursite/SiteCollection/LibraryName/jquery.SPServices-latest.min.js"></script>
<script type="text/javascript" src="http://yoursite/SiteCollection/LibraryName/topnavigation.js"></script>

For example if I put “jquery-latest.js”, “jquery.SPServices-latest.min.js”, and “topnavigation.js” in my Resoures site collection in the document library called ScriptsLibrary, then it would look like this:

<script type="text/javascript" src="http://www.bitsofsharepoint.com/Resources/ScriptsLibrary/jquery-latest.js"></script>
<script type="text/javascript" src="http://www.bitsofsharepoint.com/Resources/ScriptsLibrary/jquery.SPServices-latest.min.js"></script>
<script type="text/javascript" src="http://www.bitsofsharepoint.com/Resources/ScriptsLibrary/topnavigation.js"></script>

5) SharePoint Links List for Tabs and Pull Downs

In version 2.0 we now can pull the tabs and pull downs from just two lists.  This makes it much easier to maintain and deploy.  Now we only need to go to the Tabs list to add another tab.  In the Tab Pull Down list we can associate a pull down to any of the tabs.  This will make it very easy to switch a pull down from one tab to another if needed. 

Tabs List

First lets create the Tabs list.  This list will be a custom list.  This list must be called “Tabs”.  Here are the columns to add.  The columns have to be the same as well for the solution to work.

  • Title – This is the name of the Tab.
    • Description: Name of the Tab.
  • Pull Down – This is a yes/no field.  Selected will the pull down items.  Unselected will show no pull down or menudark[1].  
    • Description: Uncheck the box to indicate the Tab will have NO pull down.  This will eliminate the pull down image.
  • Location – This is a choice field.  The choice is “Left” or “Right”.  This will tell the tab to either be on the left site of the top navigation or the right site.
    • Description: Choose if the tab will be to the left or right of the default taps.
  • Tab Link – This is a single line of text field.  This is where the URL for the tab would go.
    • Description: Enter a url to give the tab a link, otherwise leave blank for no link.  Make sure link has http://
  • Order Tabs – This is a choice field. Make a selection from A to K.  This will be how you order your tabs on the left or right.
    • Description: RIGHT orders in ascending manner. A – Z LEFT orders in descending manner. Z – A

Next lets change the All Items view to sort and Group appropriately.  This view will dictate the the order the tabs show up.

On All Items view you will want to Modify View and make the following changes.

  • Sort – Change the following:
    • Sort by “Order Tab” in “ascending order”.
  • Group By – Change the following:

    • Group by to “Location” in “ascending order”.
    • And set to “Expand”.

     

    Tab Pull Down List

    Next lets add the Tab Pull Down list.  This list will be a standard links list.  This list must be called “Tab Pull Down”.  Here are the columns to add in addition to the standard columns.  The columns have to be the same as well for the solution to work.

    • Tab – This columns is a look up column looking up the “Tab” list with the Title column being looked up.
    • Group – This column will be used to group the links together.  So all “Help” links will be together and all “Features” links will be together. 
      • This is a text field or it can be a choice field if you know all the groups.  
    • LinkType – This column will be used to identify what type of link it is.
      • This is a Choice column. 
      • We have three choice types and each will cause the pull down to display the link in different way:
        • Link – This will display the item as a link within the group.
        • Header – This will display the item as a header without a link.
        • Header Link – This will display the item as a header with a link.
          • (Header and Header Link look them same, but act differently)

    Next you will want to change the default All Links view to the following:

    • Sort – Change the following:
      • All users to order items in this view, set to “No”.
      • Sort by “LinkType” in “ascending order”.
      • And Sort by “URL” in “ascending order”.
    • Group By – Change the following:
      • Group by to “Tab” in “ascending order”.
      • Group by to “Group” in “ascending order”.
      • Show grouping as “Expanded”.

    This new view will be the way the items show in the pull down for the global navigation.  So you can play with the view here to sort and group it as you wish.

    Here is an example of what it should look like once you have lists setup.  You will also notice that I have made a connection between Tabs and Tab Pull down so that I can essentially filter my view to show what the tab and associated pull down items are.

    image

    View example here: http://www.bitsofsharepoint.com/ExamplePoint/navigation2/default.aspx

    6) Solution Code

    In version 2.0 I have made it so that you only have to change one thing and then you never have to touch this file again.  

    In the code below or in the topnavigation.js file you will need to change the following:

        listSiteTabURL = 'http://www.bitsofsharepoint.com/topnav/';

    You will find this code at the top.  Change http://www.bitsofsharepoint.com/topnav/ to the site that your Tab and Pull Down List are located. URL needs to be of the site location NOT of the list location.

    Once you make that change you can save the file in your scripts library and you are done with that file.

    Here is the code to add to the topnavigation.js file or you can download the topnavigation.js file from here: http://www.bitsofsharepoint.com/ExamplePoint/Download/topnavigation.js

    $(document).ready(function(){
        listSiteTabURL = 'http://www.bitsofsharepoint.com/topnav/';
        $().SPServices({
            operation: "GetListItems",
            webURL: listSiteTabURL,
            listName: 'Tabs',
            async: false,
            completefunc: function (xData, Status) {
                $(xData.responseXML).find("[nodeName='z:row']").each(function() {
                    var i = 1;
                    var tabSide = $(this).attr("ows_Location");
                    var titleTabName = $(this).attr("ows_Title");
                    var urlTab = $(this).attr("ows_Tab_x0020_Link");
                    var tabPullDown = $(this).attr("ows_Pull_x0020_Down");
                    var listName = 'Tab Pull Down';
                    var listSiteURL = listSiteTabURL;
                    var titleTabID = 'zz1_TopNavigationMenun' + titleTabName.replace(/[-' ']/g,'');
                    var showTabPD = titleTabID + 'Show';
                    var showTabAppend = titleTabID + 'Append';
                    if (urlTab != null) {
                        var urlTabShow = 'href=' + urlTab;
                    } else {
                        var urlTabShow = '';
                    }

                    if (tabPullDown == true) {
                        var tabImage = '<img style="border-style:none; vertical-align:top;" alt="" src="/_layouts/images/menudark.gif">';
                        var pullDown = '<div style="position:absolute;height: 0px;z-index:1;"><div id="' + showTabPD + '" class="zz1_TopNavigationMenu_8" style="display:none;position:relative;top:0px; clip: rect(auto, auto, auto, auto);z-index:1;"><table cellspacing="0" cellpadding="0" border="0" style="top: 0px;" id="' + showTabAppend + '"></table></div></div>';
                    } else {
                        var tabImage = '';
                        var pullDown = '';
                    }

                    var tableRow = '<td id="' + titleTabID + '" onkeyup="Menu_Key(event)" onmouseout="Menu_Unhover(this)" onmouseover="Menu_HoverRoot(this)"><table  width="100%" cellspacing="0" cellpadding="0" border="0" class="ms-topnav zz1_TopNavigationMenu_4"><tbody><tr id="mouse"><td style="white-space: nowrap;"><a ' + urlTabShow + ' style="border-style: none; font-size: 1em;" class="zz1_TopNavigationMenu_1 ms-topnav zz1_TopNavigationMenu_3">'    + titleTabName + '</a><td valign="top" style="width:0pt;" >'+ tabImage +'</td></tr></tbody></table>'+ pullDown +'</td>';
                    if (tabSide == 'Left') {
                        $('table#zz1_TopNavigationMenu').children().children().prepend(tableRow);
                    } else {
                        $('table#zz1_TopNavigationMenu').children().children().append(tableRow);
                    }

                    $().SPServices({
                        operation: "GetListItems",
                        webURL: listSiteURL,
                        listName: listName,
                        async: false,
                        completefunc: function (xData, Status) {
                            $(xData.responseXML).find("[nodeName='z:row']").each(function() {
                                var URLdataTN1 = $(this).attr("ows_URL").split(',');
                                var linksTN1 = $(this).attr("ows_LinkType");
                                var TabTN1 = $(this).attr("ows_Tab").split('#');
                                var TabC = TabTN1[1];
                                var notesVar = $(this).attr("ows_Comments");
                                if (notesVar == null) {
                                    var notes = '';
                                } else {
                                    var notes = 'title="' + notesVar + '"';
                                }

                                if (titleTabName == TabC) {
                                    if (linksTN1 == 'Header') {
                                        $('#' + showTabAppend).append('<tr id="zz1_TopNavigationMenun' + i + '" onkeyup="Menu_Key(event)" onmouseout="Menu_Unhover(this)" onmouseover="Menu_HoverDynamic(this)"><td><table cellspacing="0" cellpadding="0" border="0" width="100%" class="ms-topNavFlyOuts zz1_TopNavigationMenu_7 ms-topNavFlyOutsHover"><tbody><tr><td style="white-space: nowrap; width: 100%;"><a style="border-style: none; font-size: 1em;" class="zz1_TopNavigationMenu_1 ms-topNavFlyOuts zz1_TopNavigationMenu_6 ms-topNavFlyOutsHover" '+ notes +'><strong>' + URLdataTN1[1] + '</strong></a></td></tr></tbody></table></td></tr>');
                                        i++;
                                    } else if (linksTN1 == 'Header Link') {
                                        $('#' + showTabAppend).append('<tr id="zz1_TopNavigationMenun' + i + '" onkeyup="Menu_Key(event)" onmouseout="Menu_Unhover(this)" onmouseover="Menu_HoverDynamic(this)"><td><table cellspacing="0" cellpadding="0" border="0" width="100%" class="ms-topNavFlyOuts zz1_TopNavigationMenu_7 ms-topNavFlyOutsHover"><tbody><tr><td style="white-space: nowrap; width: 100%;"><a style="border-style: none; font-size: 1em;" href="' + URLdataTN1[0] + '" class="zz1_TopNavigationMenu_1 ms-topNavFlyOuts zz1_TopNavigationMenu_6 ms-topNavFlyOutsHover" '+ notes +'><strong>' + URLdataTN1[1] + '</strong></a></td></tr></tbody></table></td></tr>');
                                        i++;
                                    } else {
                                        $('#' + showTabAppend).append('<tr id="zz1_TopNavigationMenun' + i + '" onkeyup="Menu_Key(event)" onmouseout="Menu_Unhover(this)" onmouseover="Menu_HoverDynamic(this)"><td><table cellspacing="0" cellpadding="0" border="0" width="100%" class="ms-topNavFlyOuts zz1_TopNavigationMenu_7"><tbody><tr><td style="white-space: nowrap; width: 100%;"><a style="border-style: none; font-size: 1em;" href="' + URLdataTN1[0] + '" class="zz1_TopNavigationMenu_1 ms-topNavFlyOuts zz1_TopNavigationMenu_6" '+ notes +'>' + URLdataTN1[1] + '</a></td></tr></tbody></table></td></tr>');
                                        i++;
                                    }
                                } else {
                                }
                            });
                        }
                    });

                    $('#' + titleTabID).mouseover(function(){
                        $('#' + showTabPD).show();
                    });
                    $('#' + titleTabID).mouseleave(function(){
                        $('#' + showTabPD).hide();
                    });
                });
            }
        });

    });

     

    View example here: http://www.bitsofsharepoint.com/ExamplePoint/navigation2/default.aspx

    I will also be coming out with a template version that will allow you to load this without having to create the lists and libraries needed and will have the Script library populated with the needed scripts.

  • Hope version 2.0 helps.

  • expand SharePoint – A Global Navigation Solution Across Site Collections – Version 2.0 Primer and Deployment5/12/2010
    expand Tab Page for SharePoint Version 2.05/7/2010

    About a year ago I created a tabs page that allowed you to have up to 8 tabs on a page and each tab can have multiple web parts added.  One of the features that was missing was that tabs were not sticky.  If you refreshed the page it would always go back to the first tab.  Well, I have found some time to add cookies so that it will remember the last tab you were on.  This now make it much easier to edit web parts and to use tabs with document libraries and lists.

    If you have implemented the solution already then you will need to edit the page with SharePoint Designer to add the code.  Or you can download the latest version and implement with the latest version.

    You can find the latest version and instructions on how to update your current implementation here:  http://www.bitsofsharepoint.com/ExamplePoint/Site/TabPage.aspx

    expand SharePoint - A Global Navigation Solution across Site Collections5/3/2010
    expand Search Lists and Document Libraries by Metadata4/28/2010

    A while back I create a solution that would filter a list by the metadata, but would only do this for items and metadata viewable in the current list view.  Here are the original articles:

    Thanks to all the good feedback and suggestions I have created another solution that will allow you to search any list by its metadata and will search ALL items visible or not.  Another feature I have added into this solution is that it can be placed on any pages and when the person searches it will taken them to results page. 

    In order to do this we will need to have access to SharePoint designer and have permissions to edit with SharePoint designer.  SharePoint designer will be used to create a Data View Web Part where results will be displayed.

    There are two main steps to create this search.

    1. Create a Search Results page.
    2. Add the Search Web Part to any page.

    Let’s go over the process of creating a search page.

    Create a Web Part Page.

    Next edit it in SharePoint Designer.

    Now add a Data View Web Part to a Web Part Zone.  To do this you will need to select the list or library from the Data Source Library.  The list or library you choose will be the one that is search with this solution.

    image

    Then select the what columns want to show. Also add them as a Multiple Item View.

    image

    When you save the file you will get a warning, don’t worry go ahead and say yes.

    image

    Next you will customize how the list is filtered.

    image

    Choose what fields you will filter on or have the search look through.

    image

    For the comparison make sure you select contains so that it is not an exact match.

    image

    Next for Value your are going to select Create a New Parameter.

    image

    Complete the parameter with the following:

    • Name: Search
    • Parameter Source: Query String (this is how it looks at the URL for the search criteria)
    • Query String Variable: Search

    image

    For each field/column that you want to search add another to the list and make sure the And/Or is set to Or.

    image

    When you click OK your list of items will disappear, but that is OK and is expected.

    image

    You are now done with the first major part.  If you want to customize the list more, feel free to do so.  To customize the Data View web part that has nothing showing just check the box under “Common Data View Tasks” called “Show with sample data”.

    The last part is to load the Search Web Part.  This web part is one that I created and will need to be downloaded placed on any page of your SharePoint site.  I would add this to the Search Results page as well.

    Search_List: http://www.bitsofsharepoint.com/ExamplePoint/CodeExamples/Search_List.dwp

    Next edit the Web Part with the Rich Text Editor and change the following:

    • Search Results Location:  This should be the full URL of where the Search Results page you created with the Data View Web Part is.
    • Search Box Location: Designate if it will be on the left, center or right.
    • Search Title:  Name your search so that your end users know what they are searching.

    image

    Then save the changes and you should be able to search your list and view the results.

    Here you can find a working example: List and Document Library Search

    expand SharePoint Information Architecture with MindManager by MindJet4/15/2010
    expand SharePoint Themes – More than Pretty Colors – Information Architecture4/12/2010

    This was first posted at EndUserSharePoint.com: http://www.endusersharepoint.com/2010/04/12/sharepoint-themes-–-more-than-pretty-colors-–-information-architecture/

    There are many issues to deal with when creating the Information Architecture for a SharePoint site.  One of those challenges is making sure that users understand where they are within the SharePoint deployment.  As humans we rely on our senses to help us orient where we are.  One of those five senses is sight/visual cues.  Visual cues can be a critical aspect of how we identify where we are or what to do.  So let’s explore how we can use visual cues to help identify what type of site a user is on in SharePoint.

    Within visual cues, color, is a powerful medium.  Today we use color in many ways.  For example stop lights use of color is second nature, and we all know what GREEN, YELLOW and RED mean.  We use color for fire and police.  We use color for sport teams.  Color is used a lot to help distinguish groups, actions or purpose.

    Something that SharePoint provides out of the box is themes.  You get 18 different themes, color schemes, available to use right away.  Most implementations use themes to provide a different color then the standard blue for their whole deployment.  But we are going to use Themes in a whole different way.

    Before we get into using themes we must setup the scenario of the SharePoint implementation we are talking about.  So, we are working with ABC Company that has a decided they need to share trusted and published information to all employees, they need areas for their departments to collaborate and they need an area where they can have projects that utilize cross functional teams.  So we have 3 major areas for this site.  We have the following:

    1. Intranet
    2. Work Groups
    3. Projects

    Below is a high level diagram showing the SharePoint Information Architecture.  image

     

    Now that we have SharePoint implementation with structure let’s begin to talk about how themes can help users relate and identify where they are in this implementation.  Let’s get back to the example with the stop light. Color helps tremendously with knowing if you can go, need to slow down or stop.  When you look at a stop light you do not think if the color is on top, middle or bottom and have not memorized that a location of the light means something.  Image if color was taken out of stop light.  Difficult to know which light means what.  Does the top light mean stop or go?

     

    image image image

    vs.

     

    So let’s translate this into a SharePoint implementation.  Most SharePoint implementations do not follow the way we implemented a stop light,  they give the same theme (color) to each major group of sites.  It all begins to look the same and users get lost as to where they are and what the content is used for. 

    Below is my example of the standard implementation of SharePoint today and the classic stop light without color. When you look at each one of these three sites they all look the same.  If you look closer, you will see that one says Intranet, another Department A, and the third Projects.  All of these have very different uses, the content is different and who can access is different.  But they do not look different at all, so to a user they must be the same.

     

    image

     

    Now take look at the version below where we have applied themes to each of the three major groups.  Intranet gets a blue theme, Projects gets a red theme, and Departments gets a green theme.

     

    image

     

    Now users will begin to understand the different areas of their SharePoint deployment and understand when they are in the Intranet, in a project site or in their department area.  You will be amazed at how users will be able to find information easier when they know where they are.  They will search in the right areas and understand that they are in the wrong area to even look for the content they need. 

    One thing to avoid is too much use of color. If themes not only get applied to groups, but also different themes are used within the groups it can become very confusing and get you right back to the problems you had with a single theme. 

    Again this is part of your Information Architecture and governance.  Using themes to identify the group that a user is in will improve usability, help the user to association the type of information to be found to color, how to use that information, and better understanding how their SharePoint implementation is designed.

    Using themes is something that can be done out of the box and is as simple as defining what theme will be applied to what groups.

    Hope this helps and enjoy.

    Peter

    expand Site Owners – Display and Manage3/22/2010
    expand SharePoint: ToolTip 2.0 (Posted on EndUserSharePoint.com)3/21/2010

    Well, back in January I posted on www.endusersharepoint.com a solution for adding custom tool tips on a SharePoint page. 

    I forgot to post it on my blog as well.  So here is a link to the article and to my example page:

    Enjoy,

    Peter

    expand jQuery – List and Document Library Filter Version 2.212/29/2009
    expand SharePoint CEWP Solution Interface – Part II12/22/2009
    Well, to follow up on my last post about CEWP Solution Interface, here is the meat to the solution. The second part outlines the basics of what is needed to put this solution in place. Please find all the details at EndUserSharePoint.com.
     
     
    Here is the link to the ExamplePoint where you can find the details for deploying this solution.
    expand SharePoint CEWP Solution Interface – Introduction12/9/2009
    expand jQuery – List and Document Library Filter Version 2.1 - Released11/13/2009
    An updated version to the List Filter solution is now out.  This is a minor update which addes a collapse feature to make it easy to collapse all groups at one.
     
     
    Hope this helps.
     
    Peter
    expand jQuery – List and Document Library Filter Version 2.0 – Part 211/11/2009
    expand What's next? List Filter, Search and CEWP Options Interface11/10/2009
    Things have been moving along well in the last couple of weeks with several solutions that I am going to roll out.  Each solution has a different audience from the end-user, supper-user with designer experience, and CEWP options solution for developers.
     
    So here it is:
    • List Filter 2.0 Update
    • List Search Solution
    • New CEWP Option Interface

    List Filter 2.0

    I will be rolling out an updated version of the list filter I launch last month.  This new version will have the following additions:

    • Speed Improvements – Improve the speed to display the results by 4x for large lists.
    • Grouped Lists – Added a solution to better able grouped list filtering.
    • Add Comments –You can easily add comments to the filter box for the end-user.
    • Filter Box Position – You can now easily position the filter box to the left, center or right on the page.
    • New Options Interface – The new options interface makes it so that any of the above customization can be done code free.

    List Search

    This solution will search the whole list, not just what is showing on the page like List Filter.  This solution is a little more involved since we will need to create a Data View Web Part that can only be done with SharePoint Designer.  So the solution is not as simple as dropping in a CEWP and some code.  The benefit is that the search does not take you away from the page you are on.  So you can add this to any page and the user can search and stay in the same page.  Much better user experience.

    New CEWP Options Interface

    I am really excited about this one.  This is meant for those that have developed solution using the CEWP.  Many of our solutions require that the end-user must change some variables to make it work on their site.  That means they have to edit the code, which is like a foreign language to them.  Wouldn't it be nice if the end-user could do this code free, well they can and we can make that happen.  The solution I have developed uses the Rich Text Editor to make it a code free experience for the end-user.  How you ask, stay tuned.

    Stay tuned as this will all be rolling out in the next week or so.

    expand jQuery - List and Document Library Filtering Solution10/20/2009
    expand Wiki Customization Update: Add List Views to Wiki Content8/26/2009

    By request I have updated the functionality of the Wiki customization solution.  The update allows you to add any list view directly into the wiki content.  You are no longer restricted to add listed to only the end of the wiki page.  In addition, the list can be from any site on your domain.

    So this allows you to include a task list, link list, document library or any other list into any wiki page.  The list does need to be a flat list and will not work with grouped lists at this time.

    This update should really help with the integration of all the great data that you have stored on SharePoint.  Now you can customize the wiki pages to incorporate content from all corners of your SharePoint deployment.

    If you already have the original solution in place then you will need to install the latest wiki.js file and follow the instructions found here.  If you are just now going to install this for the first time follow the instructions found here.

    Here is a screen capture of what can be customized.

    wikilist

    Hope this helps.

    Peter

    1 - 20 Next

     E x a m p l e P o i n t - Related Examples - Basic

    Status/Progress Bar
    <div>This example shows how a progress bar can be created from several fields in a list using javascript and calculated column,</div> 
    Documents Grouped by
    <div>This example shows how using columns/metadata provides a more meaning fully way to viewing documents.</div> 
    Meeting Minutes - Blog
    <div>Here is a different way to keep meeting minutes by using a Blog.  Click for instructions on how to setup a Meeting Minutes Blog.</div> 
    Calendar - With mouseover Preview Pane
    <div>This example shows how using JQuery code from Paul Grenier, http://www.endusersharepoint.com/?p=1223, you can create a preview pain to see all the details without having to click on the calendar item</div> 
    Print Clean Pages and Lists
    <div>Here are tricks to prinitng a clean page or to be able to print a list from a page.</div> 
    Meeting Minutes - Blog - Advance
    <div>Here is a different way to keep meeting minutes by using a Blog.  Click for instructions on how to setup a Meeting Minutes Blog. This example provide solutions that use JQuery and Designer.</div> 
    Tool Tip for Quick Launch and other Link Lists
    <div>This example shows how you can add a tool tip to the Quick Launch links or to any links.</div> 
    List - View a List on any other site
    <div>Here is a great way with JQuery to view a list on any other site.  OOB this cannot be done with SharePoint, but now you can with this script.</div> 
    Pop-up for Lists - Basic
    <div>This is a great JQuery solution that adds a pop-up for any list when you mouse over the title of the item.</div> 
    List - Collapse/Expand Text Field
    <div>Here is a great JQuery solution that will take any text field and collapse it so that it will not take up the whole view.  Then click to expand and read the text.  Wonderful!</div> 
    Pop-up List/Document Library/Calendar - Customize - Advance
    <div>Here I outline how you can customize Paul Grenier&#39;s LoadTip script.</div> 
    Images - SharePoint /_layout/images/ Full List
    <div>Here is a list of all the images found in SharePoint /_layout/images/ directory.</div> 
    Wiki Customization
    <div>Here is a way to customize your Wiki to have a look and feel on each Wiki page.</div> 
    Tab Page
    <div>Add a page with tab functionality that has a web part associated to each one.</div> 
    List and Document Library Filter
    <div>Here is a simple solution to add filtering for any list or document library.  Filter what is showing to find just the info you need.</div> 
    CEWP Solution Interface
    <div>This solution is for coders creating CEWP solutions.  This provides an easy interface for end users to input variables.</div> 
    Site Owner
    <div>Create a central place to manage who the site owners are and be able to diplay them on each site.</div> 
    List and Document Library Search
    <div>This solution provides a way to search a list by metadata and show any items that contain the search parameters.</div> 
    Navigation - Global Navigation Across Site Collections v 1.0
    <div>Here is a global navigation solution across site collections.</div> 
    Navigation - Global Navigation Across Site Collections v 2.0
    <div> <br> <br>Here is a global navigation solution across site collections. <br> <br> <br> <br></div> 
    Wiki View Solution
    <div class=ExternalClass9230D79D7E7C406EBCC849EE3F318483> <div>This solution provides a new way to view and access your wiki.</div></div> 

    Examples Topic: Document LibraryTop
    Status/Progress Bar
    <div>This example shows how a progress bar can be created from several fields in a list using javascript and calculated column,</div> 
    Documents Grouped by
    <div>This example shows how using columns/metadata provides a more meaning fully way to viewing documents.</div> 
    Meeting Minutes - Blog
    <div>Here is a different way to keep meeting minutes by using a Blog.  Click for instructions on how to setup a Meeting Minutes Blog.</div> 
    Calendar - With mouseover Preview Pane
    <div>This example shows how using JQuery code from Paul Grenier, http://www.endusersharepoint.com/?p=1223, you can create a preview pain to see all the details without having to click on the calendar item</div> 
    Print Clean Pages and Lists
    <div>Here are tricks to prinitng a clean page or to be able to print a list from a page.</div> 
    Meeting Minutes - Blog - Advance
    <div>Here is a different way to keep meeting minutes by using a Blog.  Click for instructions on how to setup a Meeting Minutes Blog. This example provide solutions that use JQuery and Designer.</div> 
    Tool Tip for Quick Launch and other Link Lists
    <div>This example shows how you can add a tool tip to the Quick Launch links or to any links.</div> 
    List - View a List on any other site
    <div>Here is a great way with JQuery to view a list on any other site.  OOB this cannot be done with SharePoint, but now you can with this script.</div> 
    Pop-up for Lists - Basic
    <div>This is a great JQuery solution that adds a pop-up for any list when you mouse over the title of the item.</div> 
    List - Collapse/Expand Text Field
    <div>Here is a great JQuery solution that will take any text field and collapse it so that it will not take up the whole view.  Then click to expand and read the text.  Wonderful!</div> 
    Pop-up List/Document Library/Calendar - Customize - Advance
    <div>Here I outline how you can customize Paul Grenier&#39;s LoadTip script.</div> 
    Images - SharePoint /_layout/images/ Full List
    <div>Here is a list of all the images found in SharePoint /_layout/images/ directory.</div> 
    Wiki Customization
    <div>Here is a way to customize your Wiki to have a look and feel on each Wiki page.</div> 
    Tab Page
    <div>Add a page with tab functionality that has a web part associated to each one.</div> 
    List and Document Library Filter
    <div>Here is a simple solution to add filtering for any list or document library.  Filter what is showing to find just the info you need.</div> 
    CEWP Solution Interface
    <div>This solution is for coders creating CEWP solutions.  This provides an easy interface for end users to input variables.</div> 
    Site Owner
    <div>Create a central place to manage who the site owners are and be able to diplay them on each site.</div> 
    List and Document Library Search
    <div>This solution provides a way to search a list by metadata and show any items that contain the search parameters.</div> 
    Navigation - Global Navigation Across Site Collections v 1.0
    <div>Here is a global navigation solution across site collections.</div> 
    Navigation - Global Navigation Across Site Collections v 2.0
    <div> <br> <br>Here is a global navigation solution across site collections. <br> <br> <br> <br></div> 
    Wiki View Solution
    <div class=ExternalClass9230D79D7E7C406EBCC849EE3F318483> <div>This solution provides a new way to view and access your wiki.</div></div> 

    Blog Posts Topic: Document LibraryTop
    expand SharePoint 2007 - Wiki View Solution8/17/2011
    expand SharePoint - Global Navigation 2010 Solution In Progress9/23/2010
    All,
     
    Thank you for the emails and requests for a 2010 version of my 2007 solution to Global Navigation .  I have created a beta version for 2010 and have had a few people test it out.  They found a serious issues when ever you add a calendar web part, navigation no longer shows the pull downs, OUCH. 
     
    I have done some preliminary testing but have not found the cause of this.  I am currently on a big SharePoint project that is taking up all my time, got to pay the bills, and so I have not had the time I wanted to look into this.
     
    If anyone would like to help me diagnose this issue please feel free to send me an email peter@bitsofsharepoint.com.
     
     
    expand SharePoint – A Global Navigation Solution Across Site Collections – Permissions7/1/2010
    expand SharePoint - A Global Navigation Solution across Site Collections – Version 2.0 Solution5/15/2010

    My solution for A Global Navigation Solution across Site Collections has been upgraded to version 2.0.  If you have not read my previous posts on this topic please check them out:

    In version 2.0 I have streamlined the code and reduced the number of lists needed to create the pull downs and now use a list for creating the tabs.  So once you set it up you can easily add tabs and pull downs to a tab, by simply updating the tabs list or the pull down list and all site with this solution will see the changes.

    I have also refined the tabs to show the menudark[1] when there is a pull down.  Also, pull downs now can have popup descriptions for each listed item, if you like.  All you need to do is populate the Notes field in your pull down list, unpopulated notes will show nothing.

    If you have not implemented this solution yet then follow all the steps listed below.  If you have implement my version 1.0, the changes you will need to make are updating the code in the topnavigation.js file and create two new lists for your tab and pull down.  Your infrastructure, code you added to your masters pages, you created does not need be changed at all.

    Let take a look at version 2.0 changes.  Below is an image of how the pull downs can look showing all the features.

    image

     

    Version 2.0 Global Navigation Features

    In version 2.0 I have added MOSS features and as a result the following features were added:

    • Pull Down icon menudark[1] will only appear on those that you indicate have a pull down.  So now you can have a standard tab or a tab with a pull down where the menudark[1] will show indicating there is more to view.
      • image
    • By adding comments in the notes section of the links, they will then become pop-ups when you hover over a link.
      • image
    • New version only requires one list for the tabs and one list for all the pull downs.

    When I implemented this on my site www.bitsofsharepoint.com I created a site where I housed all of the lists and libraries.  Below is an image of the what a proper implementation would look like.  You will notice we have the two lists for tabs and pull downs, and we have the Scripts library where our three scripts are housed.

    image

    View example here: http://www.bitsofsharepoint.com/ExamplePoint/navigation2/default.aspx

    Now lets create and implement the solution.  Below are the components that you will need.  Though this may look like a lot, it is very simple.  Add three lists and libraries, add code to your master page, change code in a script file, and add your tabs and pull downs to the lists and that is it.

    Components needed:

    1. SharePoint Resource Site
    2. SPServices by Marc Anderson
    3. jQuery
    4. SharePoint Designer to edit Master Pages
    5. SharePoint Links List for Tabs and Pull Downs
    6. Solution Code

    1) SharePoint Resource Site

    I recommend that if you do not already have a site collection devoted to scripts and lists that will be accessible by all, that you create one.  This site collection will allow you to have document library where you can house your scripts like jQuery and SPServices.  It will also allow you to create lists as needed for example the one we will create to manage the pull down items in our tab.

    So there should be a site collection where we house the below files and list and that has permissions set to all authenticated members as read only. For purposes of this article I will call this site collection Resources. I wrote an article along these lines and here it is: http://www.bitsofsharepoint.com/BlogPoint/Lists/Posts/Post.aspx?ID=29

    2) SPServices by Marc Anderson

    We need to download the SPServices file that Marc Anderson has put together.  You can find it here: http://spservices.codeplex.com/ This file will be used by the script for this solution, so this will need to be added to the document library where you keep scripts.  In my case it would go into the document library in my Resources site collection.

    Recommendation is to change the name of the file name so that it does not have a version number and should look like this, “jquery.SPServices-latest.min.js”.  This will allow you to update in the future to Marc’s latest version without having to go back to each master page and change to the new version name.

    3) jQuery

    There are two ways to work with a jQuery file.  You have a choice of downloading the latest version and putting it in scripts document library or you can point to Google's version which will always be the latest version.  This is a choice that you will make.   You can download jQuery from here: http://jquery.com/

    I would then add this script to me document library in my Resources site collection.

    4) SharePoint Designer to edit Master Pages

    You will need to have access to SharePoint Designer and be able to edit the Master Pages on the sites you want the global navigation tab to show up on.  When you edit a master page you will want to add the following code between the <header></header> tags as diagramed below. 

    image

    Here is the code you will need to add to each master page.  Make sure that the URL’s point to where you have the files housed.  They do need to be absolute URL’s, as you will be adding this code across site collections, web apps and even servers.

    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
    <script type="text/javascript" src="http://yoursite/SiteCollection/LibraryName/jquery.SPServices-latest.min.js"></script>
    <script type="text/javascript" src="http://yoursite/SiteCollection/LibraryName/topnavigation.js"></script>

    For example if I put “jquery-latest.js”, “jquery.SPServices-latest.min.js”, and “topnavigation.js” in my Resoures site collection in the document library called ScriptsLibrary, then it would look like this:

    <script type="text/javascript" src="http://www.bitsofsharepoint.com/Resources/ScriptsLibrary/jquery-latest.js"></script>
    <script type="text/javascript" src="http://www.bitsofsharepoint.com/Resources/ScriptsLibrary/jquery.SPServices-latest.min.js"></script>
    <script type="text/javascript" src="http://www.bitsofsharepoint.com/Resources/ScriptsLibrary/topnavigation.js"></script>

    5) SharePoint Links List for Tabs and Pull Downs

    In version 2.0 we now can pull the tabs and pull downs from just two lists.  This makes it much easier to maintain and deploy.  Now we only need to go to the Tabs list to add another tab.  In the Tab Pull Down list we can associate a pull down to any of the tabs.  This will make it very easy to switch a pull down from one tab to another if needed. 

    Tabs List

    First lets create the Tabs list.  This list will be a custom list.  This list must be called “Tabs”.  Here are the columns to add.  The columns have to be the same as well for the solution to work.

    • Title – This is the name of the Tab.
      • Description: Name of the Tab.
    • Pull Down – This is a yes/no field.  Selected will the pull down items.  Unselected will show no pull down or menudark[1].  
      • Description: Uncheck the box to indicate the Tab will have NO pull down.  This will eliminate the pull down image.
    • Location – This is a choice field.  The choice is “Left” or “Right”.  This will tell the tab to either be on the left site of the top navigation or the right site.
      • Description: Choose if the tab will be to the left or right of the default taps.
    • Tab Link – This is a single line of text field.  This is where the URL for the tab would go.
      • Description: Enter a url to give the tab a link, otherwise leave blank for no link.  Make sure link has http://
    • Order Tabs – This is a choice field. Make a selection from A to K.  This will be how you order your tabs on the left or right.
      • Description: RIGHT orders in ascending manner. A – Z LEFT orders in descending manner. Z – A

    Next lets change the All Items view to sort and Group appropriately.  This view will dictate the the order the tabs show up.

    On All Items view you will want to Modify View and make the following changes.

  • Sort – Change the following:
    • Sort by “Order Tab” in “ascending order”.
  • Group By – Change the following:

    • Group by to “Location” in “ascending order”.
    • And set to “Expand”.

     

    Tab Pull Down List

    Next lets add the Tab Pull Down list.  This list will be a standard links list.  This list must be called “Tab Pull Down”.  Here are the columns to add in addition to the standard columns.  The columns have to be the same as well for the solution to work.

    • Tab – This columns is a look up column looking up the “Tab” list with the Title column being looked up.
    • Group – This column will be used to group the links together.  So all “Help” links will be together and all “Features” links will be together. 
      • This is a text field or it can be a choice field if you know all the groups.  
    • LinkType – This column will be used to identify what type of link it is.
      • This is a Choice column. 
      • We have three choice types and each will cause the pull down to display the link in different way:
        • Link – This will display the item as a link within the group.
        • Header – This will display the item as a header without a link.
        • Header Link – This will display the item as a header with a link.
          • (Header and Header Link look them same, but act differently)

    Next you will want to change the default All Links view to the following:

    • Sort – Change the following:
      • All users to order items in this view, set to “No”.
      • Sort by “LinkType” in “ascending order”.
      • And Sort by “URL” in “ascending order”.
    • Group By – Change the following:
      • Group by to “Tab” in “ascending order”.
      • Group by to “Group” in “ascending order”.
      • Show grouping as “Expanded”.

    This new view will be the way the items show in the pull down for the global navigation.  So you can play with the view here to sort and group it as you wish.

    Here is an example of what it should look like once you have lists setup.  You will also notice that I have made a connection between Tabs and Tab Pull down so that I can essentially filter my view to show what the tab and associated pull down items are.

    image

    View example here: http://www.bitsofsharepoint.com/ExamplePoint/navigation2/default.aspx

    6) Solution Code

    In version 2.0 I have made it so that you only have to change one thing and then you never have to touch this file again.  

    In the code below or in the topnavigation.js file you will need to change the following:

        listSiteTabURL = 'http://www.bitsofsharepoint.com/topnav/';

    You will find this code at the top.  Change http://www.bitsofsharepoint.com/topnav/ to the site that your Tab and Pull Down List are located. URL needs to be of the site location NOT of the list location.

    Once you make that change you can save the file in your scripts library and you are done with that file.

    Here is the code to add to the topnavigation.js file or you can download the topnavigation.js file from here: http://www.bitsofsharepoint.com/ExamplePoint/Download/topnavigation.js

    $(document).ready(function(){
        listSiteTabURL = 'http://www.bitsofsharepoint.com/topnav/';
        $().SPServices({
            operation: "GetListItems",
            webURL: listSiteTabURL,
            listName: 'Tabs',
            async: false,
            completefunc: function (xData, Status) {
                $(xData.responseXML).find("[nodeName='z:row']").each(function() {
                    var i = 1;
                    var tabSide = $(this).attr("ows_Location");
                    var titleTabName = $(this).attr("ows_Title");
                    var urlTab = $(this).attr("ows_Tab_x0020_Link");
                    var tabPullDown = $(this).attr("ows_Pull_x0020_Down");
                    var listName = 'Tab Pull Down';
                    var listSiteURL = listSiteTabURL;
                    var titleTabID = 'zz1_TopNavigationMenun' + titleTabName.replace(/[-' ']/g,'');
                    var showTabPD = titleTabID + 'Show';
                    var showTabAppend = titleTabID + 'Append';
                    if (urlTab != null) {
                        var urlTabShow = 'href=' + urlTab;
                    } else {
                        var urlTabShow = '';
                    }

                    if (tabPullDown == true) {
                        var tabImage = '<img style="border-style:none; vertical-align:top;" alt="" src="/_layouts/images/menudark.gif">';
                        var pullDown = '<div style="position:absolute;height: 0px;z-index:1;"><div id="' + showTabPD + '" class="zz1_TopNavigationMenu_8" style="display:none;position:relative;top:0px; clip: rect(auto, auto, auto, auto);z-index:1;"><table cellspacing="0" cellpadding="0" border="0" style="top: 0px;" id="' + showTabAppend + '"></table></div></div>';
                    } else {
                        var tabImage = '';
                        var pullDown = '';
                    }

                    var tableRow = '<td id="' + titleTabID + '" onkeyup="Menu_Key(event)" onmouseout="Menu_Unhover(this)" onmouseover="Menu_HoverRoot(this)"><table  width="100%" cellspacing="0" cellpadding="0" border="0" class="ms-topnav zz1_TopNavigationMenu_4"><tbody><tr id="mouse"><td style="white-space: nowrap;"><a ' + urlTabShow + ' style="border-style: none; font-size: 1em;" class="zz1_TopNavigationMenu_1 ms-topnav zz1_TopNavigationMenu_3">'    + titleTabName + '</a><td valign="top" style="width:0pt;" >'+ tabImage +'</td></tr></tbody></table>'+ pullDown +'</td>';
                    if (tabSide == 'Left') {
                        $('table#zz1_TopNavigationMenu').children().children().prepend(tableRow);
                    } else {
                        $('table#zz1_TopNavigationMenu').children().children().append(tableRow);
                    }

                    $().SPServices({
                        operation: "GetListItems",
                        webURL: listSiteURL,
                        listName: listName,
                        async: false,
                        completefunc: function (xData, Status) {
                            $(xData.responseXML).find("[nodeName='z:row']").each(function() {
                                var URLdataTN1 = $(this).attr("ows_URL").split(',');
                                var linksTN1 = $(this).attr("ows_LinkType");
                                var TabTN1 = $(this).attr("ows_Tab").split('#');
                                var TabC = TabTN1[1];
                                var notesVar = $(this).attr("ows_Comments");
                                if (notesVar == null) {
                                    var notes = '';
                                } else {
                                    var notes = 'title="' + notesVar + '"';
                                }

                                if (titleTabName == TabC) {
                                    if (linksTN1 == 'Header') {
                                        $('#' + showTabAppend).append('<tr id="zz1_TopNavigationMenun' + i + '" onkeyup="Menu_Key(event)" onmouseout="Menu_Unhover(this)" onmouseover="Menu_HoverDynamic(this)"><td><table cellspacing="0" cellpadding="0" border="0" width="100%" class="ms-topNavFlyOuts zz1_TopNavigationMenu_7 ms-topNavFlyOutsHover"><tbody><tr><td style="white-space: nowrap; width: 100%;"><a style="border-style: none; font-size: 1em;" class="zz1_TopNavigationMenu_1 ms-topNavFlyOuts zz1_TopNavigationMenu_6 ms-topNavFlyOutsHover" '+ notes +'><strong>' + URLdataTN1[1] + '</strong></a></td></tr></tbody></table></td></tr>');
                                        i++;
                                    } else if (linksTN1 == 'Header Link') {
                                        $('#' + showTabAppend).append('<tr id="zz1_TopNavigationMenun' + i + '" onkeyup="Menu_Key(event)" onmouseout="Menu_Unhover(this)" onmouseover="Menu_HoverDynamic(this)"><td><table cellspacing="0" cellpadding="0" border="0" width="100%" class="ms-topNavFlyOuts zz1_TopNavigationMenu_7 ms-topNavFlyOutsHover"><tbody><tr><td style="white-space: nowrap; width: 100%;"><a style="border-style: none; font-size: 1em;" href="' + URLdataTN1[0] + '" class="zz1_TopNavigationMenu_1 ms-topNavFlyOuts zz1_TopNavigationMenu_6 ms-topNavFlyOutsHover" '+ notes +'><strong>' + URLdataTN1[1] + '</strong></a></td></tr></tbody></table></td></tr>');
                                        i++;
                                    } else {
                                        $('#' + showTabAppend).append('<tr id="zz1_TopNavigationMenun' + i + '" onkeyup="Menu_Key(event)" onmouseout="Menu_Unhover(this)" onmouseover="Menu_HoverDynamic(this)"><td><table cellspacing="0" cellpadding="0" border="0" width="100%" class="ms-topNavFlyOuts zz1_TopNavigationMenu_7"><tbody><tr><td style="white-space: nowrap; width: 100%;"><a style="border-style: none; font-size: 1em;" href="' + URLdataTN1[0] + '" class="zz1_TopNavigationMenu_1 ms-topNavFlyOuts zz1_TopNavigationMenu_6" '+ notes +'>' + URLdataTN1[1] + '</a></td></tr></tbody></table></td></tr>');
                                        i++;
                                    }
                                } else {
                                }
                            });
                        }
                    });

                    $('#' + titleTabID).mouseover(function(){
                        $('#' + showTabPD).show();
                    });
                    $('#' + titleTabID).mouseleave(function(){
                        $('#' + showTabPD).hide();
                    });
                });
            }
        });

    });

     

    View example here: http://www.bitsofsharepoint.com/ExamplePoint/navigation2/default.aspx

    I will also be coming out with a template version that will allow you to load this without having to create the lists and libraries needed and will have the Script library populated with the needed scripts.

  • Hope version 2.0 helps.

  • expand SharePoint – A Global Navigation Solution Across Site Collections – Version 2.0 Primer and Deployment5/12/2010
    expand Tab Page for SharePoint Version 2.05/7/2010

    About a year ago I created a tabs page that allowed you to have up to 8 tabs on a page and each tab can have multiple web parts added.  One of the features that was missing was that tabs were not sticky.  If you refreshed the page it would always go back to the first tab.  Well, I have found some time to add cookies so that it will remember the last tab you were on.  This now make it much easier to edit web parts and to use tabs with document libraries and lists.

    If you have implemented the solution already then you will need to edit the page with SharePoint Designer to add the code.  Or you can download the latest version and implement with the latest version.

    You can find the latest version and instructions on how to update your current implementation here:  http://www.bitsofsharepoint.com/ExamplePoint/Site/TabPage.aspx

    expand SharePoint - A Global Navigation Solution across Site Collections5/3/2010
    expand Search Lists and Document Libraries by Metadata4/28/2010

    A while back I create a solution that would filter a list by the metadata, but would only do this for items and metadata viewable in the current list view.  Here are the original articles:

    Thanks to all the good feedback and suggestions I have created another solution that will allow you to search any list by its metadata and will search ALL items visible or not.  Another feature I have added into this solution is that it can be placed on any pages and when the person searches it will taken them to results page. 

    In order to do this we will need to have access to SharePoint designer and have permissions to edit with SharePoint designer.  SharePoint designer will be used to create a Data View Web Part where results will be displayed.

    There are two main steps to create this search.

    1. Create a Search Results page.
    2. Add the Search Web Part to any page.

    Let’s go over the process of creating a search page.

    Create a Web Part Page.

    Next edit it in SharePoint Designer.

    Now add a Data View Web Part to a Web Part Zone.  To do this you will need to select the list or library from the Data Source Library.  The list or library you choose will be the one that is search with this solution.

    image

    Then select the what columns want to show. Also add them as a Multiple Item View.

    image

    When you save the file you will get a warning, don’t worry go ahead and say yes.

    image

    Next you will customize how the list is filtered.

    image

    Choose what fields you will filter on or have the search look through.

    image

    For the comparison make sure you select contains so that it is not an exact match.

    image

    Next for Value your are going to select Create a New Parameter.

    image

    Complete the parameter with the following:

    • Name: Search
    • Parameter Source: Query String (this is how it looks at the URL for the search criteria)
    • Query String Variable: Search

    image

    For each field/column that you want to search add another to the list and make sure the And/Or is set to Or.

    image

    When you click OK your list of items will disappear, but that is OK and is expected.

    image

    You are now done with the first major part.  If you want to customize the list more, feel free to do so.  To customize the Data View web part that has nothing showing just check the box under “Common Data View Tasks” called “Show with sample data”.

    The last part is to load the Search Web Part.  This web part is one that I created and will need to be downloaded placed on any page of your SharePoint site.  I would add this to the Search Results page as well.

    Search_List: http://www.bitsofsharepoint.com/ExamplePoint/CodeExamples/Search_List.dwp

    Next edit the Web Part with the Rich Text Editor and change the following:

    • Search Results Location:  This should be the full URL of where the Search Results page you created with the Data View Web Part is.
    • Search Box Location: Designate if it will be on the left, center or right.
    • Search Title:  Name your search so that your end users know what they are searching.

    image

    Then save the changes and you should be able to search your list and view the results.

    Here you can find a working example: List and Document Library Search

    expand SharePoint Information Architecture with MindManager by MindJet4/15/2010
    expand SharePoint Themes – More than Pretty Colors – Information Architecture4/12/2010

    This was first posted at EndUserSharePoint.com: http://www.endusersharepoint.com/2010/04/12/sharepoint-themes-–-more-than-pretty-colors-–-information-architecture/

    There are many issues to deal with when creating the Information Architecture for a SharePoint site.  One of those challenges is making sure that users understand where they are within the SharePoint deployment.  As humans we rely on our senses to help us orient where we are.  One of those five senses is sight/visual cues.  Visual cues can be a critical aspect of how we identify where we are or what to do.  So let’s explore how we can use visual cues to help identify what type of site a user is on in SharePoint.

    Within visual cues, color, is a powerful medium.  Today we use color in many ways.  For example stop lights use of color is second nature, and we all know what GREEN, YELLOW and RED mean.  We use color for fire and police.  We use color for sport teams.  Color is used a lot to help distinguish groups, actions or purpose.

    Something that SharePoint provides out of the box is themes.  You get 18 different themes, color schemes, available to use right away.  Most implementations use themes to provide a different color then the standard blue for their whole deployment.  But we are going to use Themes in a whole different way.

    Before we get into using themes we must setup the scenario of the SharePoint implementation we are talking about.  So, we are working with ABC Company that has a decided they need to share trusted and published information to all employees, they need areas for their departments to collaborate and they need an area where they can have projects that utilize cross functional teams.  So we have 3 major areas for this site.  We have the following:

    1. Intranet
    2. Work Groups
    3. Projects

    Below is a high level diagram showing the SharePoint Information Architecture.  image

     

    Now that we have SharePoint implementation with structure let’s begin to talk about how themes can help users relate and identify where they are in this implementation.  Let’s get back to the example with the stop light. Color helps tremendously with knowing if you can go, need to slow down or stop.  When you look at a stop light you do not think if the color is on top, middle or bottom and have not memorized that a location of the light means something.  Image if color was taken out of stop light.  Difficult to know which light means what.  Does the top light mean stop or go?

     

    image image image

    vs.

     

    So let’s translate this into a SharePoint implementation.  Most SharePoint implementations do not follow the way we implemented a stop light,  they give the same theme (color) to each major group of sites.  It all begins to look the same and users get lost as to where they are and what the content is used for. 

    Below is my example of the standard implementation of SharePoint today and the classic stop light without color. When you look at each one of these three sites they all look the same.  If you look closer, you will see that one says Intranet, another Department A, and the third Projects.  All of these have very different uses, the content is different and who can access is different.  But they do not look different at all, so to a user they must be the same.

     

    image

     

    Now take look at the version below where we have applied themes to each of the three major groups.  Intranet gets a blue theme, Projects gets a red theme, and Departments gets a green theme.

     

    image

     

    Now users will begin to understand the different areas of their SharePoint deployment and understand when they are in the Intranet, in a project site or in their department area.  You will be amazed at how users will be able to find information easier when they know where they are.  They will search in the right areas and understand that they are in the wrong area to even look for the content they need. 

    One thing to avoid is too much use of color. If themes not only get applied to groups, but also different themes are used within the groups it can become very confusing and get you right back to the problems you had with a single theme. 

    Again this is part of your Information Architecture and governance.  Using themes to identify the group that a user is in will improve usability, help the user to association the type of information to be found to color, how to use that information, and better understanding how their SharePoint implementation is designed.

    Using themes is something that can be done out of the box and is as simple as defining what theme will be applied to what groups.

    Hope this helps and enjoy.

    Peter

    expand Site Owners – Display and Manage3/22/2010
    expand SharePoint: ToolTip 2.0 (Posted on EndUserSharePoint.com)3/21/2010

    Well, back in January I posted on www.endusersharepoint.com a solution for adding custom tool tips on a SharePoint page. 

    I forgot to post it on my blog as well.  So here is a link to the article and to my example page:

    Enjoy,

    Peter

    expand jQuery – List and Document Library Filter Version 2.212/29/2009
    expand SharePoint CEWP Solution Interface – Part II12/22/2009
    Well, to follow up on my last post about CEWP Solution Interface, here is the meat to the solution. The second part outlines the basics of what is needed to put this solution in place. Please find all the details at EndUserSharePoint.com.
     
     
    Here is the link to the ExamplePoint where you can find the details for deploying this solution.
    expand SharePoint CEWP Solution Interface – Introduction12/9/2009
    expand jQuery – List and Document Library Filter Version 2.1 - Released11/13/2009
    An updated version to the List Filter solution is now out.  This is a minor update which addes a collapse feature to make it easy to collapse all groups at one.
     
     
    Hope this helps.
     
    Peter
    expand jQuery – List and Document Library Filter Version 2.0 – Part 211/11/2009
    expand What's next? List Filter, Search and CEWP Options Interface11/10/2009
    Things have been moving along well in the last couple of weeks with several solutions that I am going to roll out.  Each solution has a different audience from the end-user, supper-user with designer experience, and CEWP options solution for developers.
     
    So here it is:
    • List Filter 2.0 Update
    • List Search Solution
    • New CEWP Option Interface

    List Filter 2.0

    I will be rolling out an updated version of the list filter I launch last month.  This new version will have the following additions:

    • Speed Improvements – Improve the speed to display the results by 4x for large lists.
    • Grouped Lists – Added a solution to better able grouped list filtering.
    • Add Comments –You can easily add comments to the filter box for the end-user.
    • Filter Box Position – You can now easily position the filter box to the left, center or right on the page.
    • New Options Interface – The new options interface makes it so that any of the above customization can be done code free.

    List Search

    This solution will search the whole list, not just what is showing on the page like List Filter.  This solution is a little more involved since we will need to create a Data View Web Part that can only be done with SharePoint Designer.  So the solution is not as simple as dropping in a CEWP and some code.  The benefit is that the search does not take you away from the page you are on.  So you can add this to any page and the user can search and stay in the same page.  Much better user experience.

    New CEWP Options Interface

    I am really excited about this one.  This is meant for those that have developed solution using the CEWP.  Many of our solutions require that the end-user must change some variables to make it work on their site.  That means they have to edit the code, which is like a foreign language to them.  Wouldn't it be nice if the end-user could do this code free, well they can and we can make that happen.  The solution I have developed uses the Rich Text Editor to make it a code free experience for the end-user.  How you ask, stay tuned.

    Stay tuned as this will all be rolling out in the next week or so.

    expand jQuery - List and Document Library Filtering Solution10/20/2009
    expand Wiki Customization Update: Add List Views to Wiki Content8/26/2009

    By request I have updated the functionality of the Wiki customization solution.  The update allows you to add any list view directly into the wiki content.  You are no longer restricted to add listed to only the end of the wiki page.  In addition, the list can be from any site on your domain.

    So this allows you to include a task list, link list, document library or any other list into any wiki page.  The list does need to be a flat list and will not work with grouped lists at this time.

    This update should really help with the integration of all the great data that you have stored on SharePoint.  Now you can customize the wiki pages to incorporate content from all corners of your SharePoint deployment.

    If you already have the original solution in place then you will need to install the latest wiki.js file and follow the instructions found here.  If you are just now going to install this for the first time follow the instructions found here.

    Here is a screen capture of what can be customized.

    wikilist

    Hope this helps.

    Peter

    1 - 20 Next

    Internet Resources Topic: Document LibraryTop
    The Html Calculated Column
    <div>First site you should review with regards to using calculated column for HTML.&nbsp; This is what started it for me.</div>
    Shareesblog - Folders Overview
    <div>This is a great article on how to utilize SharePoints features to make it easier to organize and find documents.</div>
    MS - Examples of common formulas
    <div>Here you find common examples to the calculated column from MS.</div>
    MS - Formulas and Functions
    <div>Here is a list of the Formulas and Functions that can be used with SharePoint.</div>
    Screencast on how to use a Blog for Meeting Minutes
    <div>Mark at EndUserSharePoint.com has a post and screencast on how to use a Blog for meeting minutes.</div>
    Leveraging SharePoint as a Document Management System
    <div>A solid overview of using SharePoint as a Document Management System.</div>
    Quick Launch - Making the Quick Launch appear again on Web Part pages stored in a document library
    <div>Overview on how to get the Quick Launch showing on web part page with designer.</div>
    Quick Launch - Adding the quick launch to team site pages
    <div>How to add it to the template if you have access to the following: &quot;C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\1033\STS\DOCTEMP\SMARTPGS&quot; </div>
    Quick Launch - Hide the Quick Launch Bar
    <div>Todd Bleeker has a good article on how to hide the quick launch.&nbsp; Even though it was written for WSS 2.0 it works for WSS 3.0 and MOSS.</div>
    Quick Launch - Customizing the Quick Launch menu: Adding fly-out menus to SharePoint navigation
    <div>Great way to have a menu for the Quick Launch.</div>
    Quick Launch - Accordion Left Navigation
    <div>Paul Grenier has posted an article on how to make the quick launch an accordion with JQuery code.</div>
    Quick Launch - Customize your Quick Launch with flyouts
    <div>Get the Point Blog by Microsoft has a good article and link on how to change the quick launch to a flyout.</div>
    JQuery Solutions at www.endusersharepoint.com
    <div>At www.endusersharepoint.com Paul Grenier has been developing some really wonderful solutions.&nbsp; A MUST visit.</div>
    Content Types - Articles from www.EndUserSharePoint.com
    <div>Here are really good articles on the many different things you can do with Content Types.</div>
    Content Types - Microsoft Overview
    <div>This is Microsofts overview of content types.</div>
    Document Library - Forced Check Out
    <div>Here is a JQuery script that will prevent the user from opening a document with out checking it out first.</div>
    QuickLaunch - Add to Web Part Pages - No need to Edit Master.Page
    <div>Christophe has done it again.&nbsp; Here is a slick way to add the QuickLaunch with out have to edit any pages.</div>
    EndUserSharePoint - Document Library Overview
    <div>Here is another great article on how to use metadata with the SharePoint Document Library.&nbsp; A must read.</div>
    Wiki-in-the-Box - Is SharePoint Wiki Really that Bad?
    <div>DYNOMITE Article on Wiki&#39;s.&nbsp; A must read!!!!</div>
    Fixing SharePoint’s Wiki by adding a home button and repairing the breadcrumb
    <div>Here is a way to customize the breadcrumbs and add custom buttons to the wiki page.</div>
    Quick Launch - add to web part page
    <div>Here is the code that needs to be taken out to show the Quick Launch.</div>

     

    Videos Topic: Document LibraryTop
    Sample video

    This video shows how you can add video to any multi-text field.
    Blog - Meeting Minute Video

    Great video on how to setup a Blog for meeting minutes.
     
    Mark at EndUserSharePoint.com provided this video.

    Here is a great simple overview of a Blog.  Enjoy.

    Introduction to BitsOfSharePoint
     

    This is a good turorial on a SharePoint Blog by www.sharepointsite.net.

     Filter

    Select
    NormalDocument Library
    NormalCalculated Columns - HTML
    NormalCalculated Columns - Formula
    NormalMeeting Minutes
    NormalSharePoint Add-ons
    Normal.Home
    NormalNavigation
    NormalJavascript/JQuery
    NormalLists
    NormalWiki