[Home] [Recent] [Site Map] [SharePoint] [XBOX]
In this post, I’ll show you how to customize the Quick Launch menu to display several levels of data in a dynamic way and use this customized menu for quick access to all Views within a List without consuming space on the Quick Launch.
First, let’s add a List and make sure it shows on the Quick Launch. Let’s call this list “Navigation Test List”, and then add 4 Views to the list.
Next, let’s write some OM code that, when run, adds a link to each of the List’s Views under the List Link on the Quick Launch. Add the following code to a new C# Console Application in Visual Studio .NET or 2005 (and don’t forget to add a reference to Microsoft./folder/sharepoint.htm.dll).
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Navigation;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
SPSite site = new SPSite("http://server");
SPWeb web = site.OpenWeb();
SPList list = web.Lists["Navigation Test List"];
SPNavigationNode rootListLink = web.Navigation.GetNodeByUrl(list.DefaultViewUrl);
SPNavigationNode node = null;
foreach (SPView view in list.Views)
{
node = new SPNavigationNode(view.Title, view.Url, false);
rootListLink.Children.AddAsFirst(node);
}
}
}
}
At this point, we have links to all of the Views under the List, but they cannot be displayed since the menu control ignores the links after the second level. So, let’s modify the menu control to display what we want. Perform the following to accomplish this task:
1. Navigate to the master page gallery: From the home page click on Site Actions, then Site Settings, and then on Master Pages, under the Galleries column
2. Click on the drop down menu for the master page you want to modify, and then click on Edit in Microsoft Office SharePoint Designer
3. Locate the Quick Launch Menu control, and modify the StaticDisplayLevels and MaximumDynamicDisplayLevels attributes:
<SharePoint:AspMenu
id="QuickLaunchMenu"
DataSourceId="QuickLaunchSiteMap"
runat="server"
Orientation="Vertical"
StaticDisplayLevels="2"
ItemWrap="true"
MaximumDynamicDisplayLevels="1"
StaticSubMenuIndent="0"
SkipLinkText="">
4. Save your changes and reload the page from the browser. Hover over the Links on the Quick Launch. The end result should look like this:
5. Optional: Modify other properties in the menu control to match the look and feel of your site. The above steps can also be applied to the Top Link Bar.
Useful Links:
· On MSDN, How to: Customize the Display of Quick Launch.
Luis Angel Mex
SDET
At the Microsoft Hosting Summit about a month ago, the Windows SharePoint Services 3.0 for Hosters Solution Kit was announced. This kit would include the following custom components:
The Solution Kit is now available with full source code and detailed installation documentation at http://www.codeplex.com/SharePointHosters.
The Solution Kit is composed of two integrated applications. The first is the Solution Configurator tool, which a hoster would use to configure solutions based on WSS 3.0 application templates.
The second is the Starter Kit, which a hoster"s end-customer would use to create a site based on solutions that were created though the Solution Configurator.
<Lawrence />
And no, that"s not me in the picture above. :-)
To dispel the rumor... A customer recently asked if their latency was less than 80 ms could they have a farm consume shared services from a farm across the WAN. There is no magic latency at which it"s supported. We do support more than one deployment and indexing across those deployment, but you CANNOT consume or provide shared services over the WAN.
In a test environment you may find that some features or pages work ok, but there are many that will provide a delayed and degraded experience.
From TechNet:
Geographic SSP configuration
Providing shared services over the WAN is not supported. For example, a regional farm in Africa cannot consume shared services from a central farm in Europe. The African farm must host its own SSP. However, users in Africa can connect to a central farm in Europe and consume shared services from the central farm.
While hosting shared services over the WAN is not supported, a central farm can be configured to crawl content across the WAN. For example, a central farm in Europe can crawl the content of a regional farm in Africa. This configuration provides a method of hosting enterprise-wide search. In this scenario, the central farm is not hosting shared services to the regional farm and the regional farm is not consuming shared services from the central farm.
Joel Oleson
In Part 1 of my blog series on Alternate Access Mappings, I gave a brief introduction to the feature and an example of how it can be used. In Part 2, I described some of the common AAM-related problems people run into when deploying SharePoint and how to avoid them. For the final article in our series, I"ll discuss how AAM integrates with some other features in SharePoint.
Authentication Providers
As I mentioned in Part 1 of this blog series, AAM allows you to expose a web application in as many as 5 different AAM zones, with a different IIS Web site backing each zone. (As an aside, some people accidentally refer to this as having up to 5 different web applications sharing the same content database(s). In reality, there is just one web application.) Not only do these zones allow you to use multiple URLs to access the same web application, they allow you to use multiple authentication providers to access the same web application as well.
When extending a web application into a zone, SharePoint only offers you the choice of using Windows authentication provided by Internet Information Services. Once the web application has been extended into the zone, you can modify that zone to use a different type of authentication. To do this, browse to the SharePoint 3.0 Central Administration site and click Application Management --> Authentication providers. Next, select your web application from the Web Application selector on the right side of the page. Finally, select the zone that you wish to modify. Now you change your authentication settings for that zone.
The power of this feature is that it allows you to configure completely independent authentication settings to access the very same content. For example, you might configure some content to be anonymously accessible while other content requires credentials. You could configure one zone to have anonymous access enabled and all other forms of authentication disabled, guaranteeing that only the anonymous content will be accessible. At the same time, another zone can have anonymous access disabled while NTLM authentication is enabled, guaranteeing that only authenticated access will be allowed. Plus, you can even have different types of accounts to access the same content - one zone can be configured to use Windows Active Directory (AD) accounts while another zone can be configured to use non-AD accounts via ASP.NET Forms authentication.
Web Application Policies
Web application policies allow administrators to grant or deny access to accounts and security groups for all sites exposed through a zone. This can be useful for a variety of scenarios.
For example, the SharePoint search crawler must go through the same authorization infrastructure as everyone else - it can only crawl content that it has access to. However, users would still like search to crawl restricted content so that authorized users can find that content in search results. The search service uses a "Full Read" policy on the web applications to give its crawler permission to read all content on that web application. That way, it can crawl and index all existing and future content, even content that the site administrator hasn"t explicitly given it access to.
Another example would be help desk personnel who need administrative access to SharePoint sites so that they can assist users. To do this, you can create a web application policy that grants the help desk staff accounts "Full Control" permission so that they have full administrative access to all current and future sites on the web application.
Because policies are tied to both web applications and their zones, you can ensure that the policy you"ve applied to one zone doesn"t affect other zones. This can be useful if you have content exposed both on the corporate network and to the Internet. For example, suppose you"ve given a help desk staff account Full Control permission over a web application"s zone that has been assigned to the corporate network. If someone were to try and use that account to access the site over the Internet, that Full Control policy wouldn"t apply because it would recognize that the URL is in a different zone. Therefore, the account wouldn"t automatically be given administrative access to the site.
External Resource Mappings
On the Alternate Access Mappings page, you may have noticed a button on the toolbar called "Map to External Resource." It allows you to extend the AAM functionality to content that is not hosted within the SharePoint farm. When you click on this button, you will be asked to create an entry for an external resource, which you could conceptually think of as another web application. Once you have an external resource, you can assign different URLs and zones to it in the same way that you do for SharePoint web applications. This feature isn"t utilized in Windows SharePoint Services 3.0, but third party products that build on top of WSS can make use of it.
For example, Office SharePoint Server 2007"s search technology is able to crawl content external to the SharePoint farm such as file shares and Web sites. If that content is available at different URLs on different networks, then you would want search to return search results using the appropriate URLs for the user"s current network. By using AAM"s external resource mapping technology, search can remap the external URLs in its search results to match the user"s zone.
I hope you"ve found this series on AAM helpful. As always, feel free to ask any questions via the blog comments.
Troy Starr
I"m very proud to announce that the "Microsoft Office Programs and SharePoint Products and Technologies Integration – Fair, Good, Better, Best" white paper is now available for public download here. I"m also very sorry that it has taken so long (about 3 months later than originally planned) to publish this document for which countless people have anxiously awaited since the Office 2007 programs, WSS 3.0, and MOSS 2007 were released last November. I made the decision back in January to rewrite almost completely the content that an outside vendor had helped us develop up to that point. My primary motivation was that the white paper had to have minimal marketing fluff and focus squarely on describing the relevant integration features between Microsoft Office programs and SharePoint. My overall goal for the white paper was that it had to effectively answer the following questions:
So, did I achieve my goal? Is this white paper worth the wait? If you have any feedback or relevant questions that this white paper does not adequately answer, please leave a comment. Thanks!
<Lawrence />
Since the Application Templates for Windows SharePoint Services 3.0 were released a couple of months ago, many people have asked, "Is there any documentation on what each of the templates does or is designed for?" Well, in response, we have just posted the companion sets of two datasheets for each of the templates here. These datasheets provide an in-depth description of the application templates and include one or more screenshots of the templates in action.
For business decision makers, the functional overview (BDM datasheet) describes the scenario for which the template was designed and highlights its features. For IT pros and technical decision makers, the technical overview (TDM datasheet) describes the web parts, relevant workflows, lists, and document libraries that are included in the template.
<Lawrence />
These Master Pages were originally scheduled to be released with the Applications Templates a couple of months ago, but we needed a bit more time to get the "fit and finish" just right. They"re now available for download here.
The Master Pages were built using the new Cascading Style Sheet (CSS) and Master Page editing tools in Office SharePoint Designer 2007, and there are 4 styles (Block, Clarify, Horizon, and Reverse), each with 5 distinctive colors (blue, green, orange, purple, and red).
Here are some live demo instances of the Master Pages:
Master Pages are a feature of ASP.NET 2.0 that work the same way in Windows SharePoint Services 3.0 and Microsoft Office SharePoint Server 2007 as they do in ASP.NET 2.0. Using Master Pages, you can create a single page template and then use that template as the basis for multiple pages in an application instead of having to build each new page from scratch. For more information about Master Pages, go to http://office.microsoft.com/en-us/sharepointdesigner/HA101551701033.aspx.
<Lawrence />
The following guest blog entry is written by Jeffrey Hong, an Architect in Microsoft Consulting Services, who was the Technical Lead for the MOSS-based Hawaiian Airlines website that was launched about a month ago at http://www.HawaiianAir.com. While a formal case study is still in the process of being published (key an eye on it here), Hawaiian Airlines has given us permission to post this blog entry now.
<Lawrence />
How we did it: Mission critical HawaiianAir.com website powered by MOSS 2007
About a year ago, when Hawaiian Airlines planned to redesign the look and feel of their website, http://www.HawaiianAir.com, they wanted a solution that would improve the authoring and management of the website’s content. After an evaluation, they decided to take advantage of MOSS 2007’s Web Content Management (WCM) features even though the product was still in beta. So, they joined the MOSS 2007 Technology Adoption Program (TAP) and engaged Microsoft Consulting Services (MCS) to implement the new website.
The HawaiianAir.com website is mission critical for Hawaiian Airlines because it transacts over $600M of the company’s estimated $880 million in revenue each year. The original website consisted of a mix of “classic” ASP and ASP.Net pages. There were about 250 classic ASP pages. A critical piece of the website for booking tickets (known as the “Danno” application, which you would understand if you were a fan of the Hawaii Five-O TV show) and HawaiianMiles (the frequent flyer program for Hawaiian Airlines) had been developed as ASP.Net 2.0 and 1.1 applications.
Early on, we made a crucial decision to separate the implementation of the project into two websites. The majority of the content heavy “classic” ASP pages would be migrated to MOSS and retain the default HawaiianAir.Com URL (the “MOSS” site). The Danno and HawaiianMiles applications would be implemented with ASP.NET 2.0 in a separate Apps.HawaiianAir.com subdomain (the “Apps” site).
The initial site design was provided through a previous engagement with Frog Design. Hawaiian Airlines" Electronic Marketing Group (EMG) then took Frog’s design and further customized it for the final look. Frog Design and the EMG both developed the site design with Adobe PhotoShop. This caused some grief for the project team in translating the Photoshop images to the way that the website would actually look and function. The final implementation required trade-offs in look/feel/performance.
Here’s a screenshot of the website shortly after it launched:
MOSS 2007’s use of and compatibility with ASP.NET 2.0’s key features allowed us to do joint development of both the MOSS and Apps sites. Shared master pages, the navigation system (based on sitemaps), and forms authentication reduced the team’s ramp up time to learn MOSS and provided a common architectural foundation for both sites.
We customized the master pages using the new “Features” capability in MOSS. We based our navigation on the xmlsitemap provider due to the hybrid nature of the site design. We created a set of page layouts to support end user content authoring. We made extensive use of ASP.NET 2.0 web parts to host various dynamic global components such as the Task Bar, Navigation, and Booking Widget that were used across both sites. Once the master pages and the layouts were ready, we focused on content migration. This portion of the project went fairly smoothly.
We faced some hurdles midway in the project, which was shortly after the RTM of MOSS 2007 in mid November of 2006. Our initial performance testing numbers were not very good. Our baseline implementation had the home page at nearly a 1 MB (megabyte) payload, and it rendered about twice as slow as that of the original site. Other pages were rendering just as slowly. So, we spent more than a few late nights trying various optimization options and managed to reduce the size of the pages by a few hundred kilobytes, but it was still not good enough. Further analysis revealed that some of the heaviest pieces of the page payload were the core.js script file and other related Javascript files added by SharePoint.
This was the perfect opportunity to utilize the “lifeline” that’s one of the key benefits of participating in the TAP. The “SharePoint Rangers” (Steve Peschka and Jon Quist, in particular) came to our rescue. They worked directly with the SharePoint development team to get us a workaround, which deferred the downloading of core.js on the production Internet facing site but retained it for the internal content authoring site. This page optimization technique was later documented (here) on the ECM Team Blog for other customers to leverage. The result was a significant reduction in the load time of the pages before the user could interact with them. The overall performance gains were realized from both the reduction in page size and the addition of the BLOb (binary large object) cache optimization that were suggested by the Rangers. Several pages on the site are still quite hefty, so performance optimization remains a work in progress.
From a server load perspective, the performance of MOSS 2007 exceeded our needs. Our front-end web servers are Dell 2950 PowerEdge boxes with Intel Dual Core 2.0 GHz Xeon processors and 2 GB RAM. We placed a test load using Visual Studio 2005 Team Test Load Agent and saw a throughput of 884 ISAPI requests/second while the target server’s CPUs were running at 37% utilization with 1.5 GB RAM used. This gave us an overall throughput of about 9 MOSS pages/second on a single server, which was well beyond our performance requirements.
Our next hurdle was in configuring the workflow to deploy content from the Development/Authoring environment to Test/Staging and then to Production. Once the workflow issues were solved, we started deploying the MOSS site on regular intervals from the dev/authoring servers to the test/staging servers for quality assurance and verification. We started seeing unexplained behavior with some of the pages showing missing images and incorrect hyperlinks. The content looked fine in the dev environment but had broken references in the test environment. Our analysis narrowed the problem to a few pages sharing some common layouts. These page layouts used the Content Editor Web Part (CEWP). We discovered that when the CEWP’s content is added or modified with the built-in Rich Text Editor, relative URLs in the HTML are converted to absolute URLs. This caused the affected pages to fail in the other environments because the images and hyperlinks referenced content in the dev/authoring environment rather than the environments on which the pages have been deployed. We had to switch out the CEWPs and use Publishing Control RichHTML fields instead. These fields “fix-up” absolute URLs back to relative URLs when content is published. There were a few places where we need to keep the CEWP because we wanted Input tags that the RichHTML field did not support. Unfortunately, in these cases, we had to fix-up the URLs by hand via the Source Code Editor in the CEWP.
Lastly, we needed to provide an integrated customer experience between the MOSS site and Apps site. We got some pointers from Scott Guthrie’s blog on how to share forms authentication cookies and implemented the functionality without a hitch. We did have a few minor issues with testing the sites between various environments with SSL, but we’ll leave that for another blog entry.
The HawaiianAir.com website was quietly launched on March 6, 2007, a Tuesday, without any formal announcements or fanfare. On that first full day, the site had over 48,000 unique visitors! The site has been live now for a little over a month without any major issues, so the project team is very proud of the work that we’ve done. We have already started on the next phase of further enhancing the site, and I will provide more details about that as well as in-depth traffic and transaction metrics in a follow-up blog entry in the near future.
Mahalo!
Jeffrey Hong, Architect
Microsoft Consulting Services
“Where’s the [fill in your favorite language here] version of Microsoft Office SharePoint Server 2007" and "Where"s the [fill in your favorite language here] version of the MOSS 2007 Language Pack" are two of the most frequently asked questions that I"ve seen over the past few months. Due to a variety of factors, which I would divulge only after having had several martinis, it has taken much more time and effort than anyone on the SharePoint team expected to get the SKUs and LPs posted or scheduled to be posted in the download sites listed below.
MOSS 2007 Trial (x86) at Microsoft.com Download Center: http://www.microsoft.com/downloads/details.aspx?FamilyID=2e6e5a9c-ebf6-4f7f-8467-f4de6bd6b831&DisplayLang=en
MOSS 2007 Trial (x64) at Microsoft.com Download Center: http://www.microsoft.com/downloads/details.aspx?FamilyID=3015fde4-85f6-4cbc-812d-55701fbfb563&DisplayLang=en
MOSS 2007 Language Packs (x86) at Microsoft.com Download Center: http://www.microsoft.com/downloads/details.aspx?FamilyID=2447426b-8689-4768-bff0-cbb511599a45&DisplayLang=en
MOSS 2007 Language Packs (x64) at Microsoft.com Download Center
MOSS 2007 Language Packs (x86 and x64) at Microsoft Volume License Services (MVLS): https://licensing.microsoft.com
MOSS 2007 Language Packs (x86 and x64) at eOpen: https://eopen.microsoft.com
MOSS 2007 Language Packs (x86 and x64) at MSDN/Technet Subscriber Download Center
MOSS 2007 (x86 and x64) at Microsoft Volume License Services (MVLS): https://licensing.microsoft.com
MOSS 2007 (x86 and x64) at eOpen: https://eopen.microsoft.com
MOSS 2007 (x86 and x64) at MSDN/Technet Subscriber Download Center
<Lawrence />
The command line tool stsadm.exe is the IT Pro tool for doing a few things that aren"t exposed through the web UI. It"s also great for scripting operations that are repetitive. There are a number of commands, and lots to do.
Kirk Stark from the Tech Writing team has been focused on drilling in and publishing more information on these commands.
Let me point out one of the more critical commands recently added.
PreparetoMove is a new and critical command. This will tell the environment that you plan to disconnect a database. With all the shared services, my sites, userinfo, and membership, it"s important to run this command to tell it "Hey I"m getting ready to disconnect this database." If you don"t run this, you could end up with orphaned data, that eventually should be cleaned up.
TechNet:
Used to prepare sites and content databases before moving to a new Web application by setting up the profile and membership synchronization service. This prevents the synchronization service from failing and losing user privacy settings for those sites after the sites are moved.
The profile and membership synchronization service synchronizes user profile data down to the user information lists for all site collections to ensure consistent user data across the environment. The service also synchronizes site membership data back to the user profiles that store all of the sites where the user is a member. This site membership data is displayed on the user’s My Site.
stsadm -o preparetomove
-contentdb <server name>
-site <URL name>
[-oldcontentdb] <unique identifier>
[-undo]
The reference now includes:
STSADM Search Topics are next...
Osearch, Osearchdiacriticsensitive, Spsearch, and Spsearchdiacriticsensitive
Site List:
>>Xbox Live_s Major Nelson
>>Xbox 360 & SharePoint 2007 Weblog
>>Carsten Keutmann_s Blog
>>Mohamed Zaki_s Blog [Sharepoint MVP]
>>The Mit_s Blog
>>Mart Muller_s Sharepoint Weblog
>>Microsoft SharePoint Products and Technologies Team Blog
>>SharePoint Solutions Blog
>>4GuysFromRolla.com Headlines
>>ASP.NET Blogs
>>SharePoint Blogs
>>SharePoint Blogs
>>Joel on Software
>>ADO Guy_s Rants and Raves
>>Microsoft Live Labs
>>GadgetNews
>>Windows Vista Team Blog
>>VoIP & Gadgets Blog
>>schrankmonster blog
>>Via Virtual Earth Blog
>>Feed
>>MSDN Blogs
>>Mashable!
Links:
Jack's Readings
Month Archives:
Oct 2007
Sep 2007
Top Tags:
social software social networking .NET mashable Sharepoint ASP.NET Web 2.0 Web2.0 Startups Community News Search Marketplace General Software Development AJAX Windows Vista Visual Studio Microsoft myspace Silverlight People Powered! YouTube Vista MOSS Featured News C# Events MOSS 2007 Google WPF Office 2007 Web Community Security General Personal Xbox 360 facebook Tools development SharePoint 2007 Fun Atlas Architecture ASP.NET AJAX myspace codes TheLongTail IIS SQL Server Developers Revenue Sharing Video Pictures WCF Mobile 2.0 Announcements Orcas MIX07 Arcade Team System JavaScript News
@2007 All rights Reserved |