Thursday, September 18, 2008

SharePoint List Scalability

One-stop shopping for all things related to SharePoint list scalability and scalability in general.

Link saved for future use.

http://www.sharepointjoel.com/Lists/Posts/Post.aspx?ID=84

Wednesday, September 3, 2008

SearchBoxEx, FireFox and the Enter Key

Here's a problem with SearchBoxEx and FireFox that's easy to reproduce.

1) Create an out-of-the-box Publishing Portal. No customizations required.

2) With FireFox 2 or 3, go to the home page of the new site.

3) In the search box, enter a search phrase and press the enter key.

4) The home page simply refreshes instead of going to the search results page.

With IE 6/7 and Safari 3, everything works as expected. That is, the search results page is displayed.

I've reproduced this bug with three flavors of MOSS: MOSS RTM, with MOSS SP1 installed and finally with MOSS Infrastructure Update installed.

Looking at the traffic in Fiddler, it appears that *two* requests are being generated by FireFox. One to the search results page and one to the home page (in that order).

So...what's the fix?

After using http://www.rotary.com/ as inspiration, we came up with the following JavaScript that replaces the default key press event handler provided by MOSS.

To use the script, you'll need to supply the correct name of the submit method and input control id that is dynamically generated by SharePoint. After you do that, wrap the code in a script tag and place it on the page.

function replaceOnKeyPress()
{
var theFunction = "SDXXXXXXX_Submit();";
var theInputID = "ctl00_PlaceHolderSearchArea_SearchBox_SDXXXXXXX_InputKeywords";

var txt = document.getElementById(theInputID);
var browser=navigator.appName;

if (txt && (browser == "Netscape"))
{
txt.onkeypress = function(e)
{
var key = String.fromCharCode(e.keyCode);

if (key == "\n" key == "\r")
{
eval(theFunction);
return false;
}
}
}
}

replaceOnKeyPress();

Tuesday, July 22, 2008

Why Do My Form Fields Have A Yellow Background?

While this really doesn't have anything to do with SharePoint, both times I've been asked this question, it was in the context of somebody developing and testing a SharePoint list form.

The answer is that the form fields are yellow due to the Google Toolbar Autofill feature.

Monday, July 21, 2008

SharePoint EventID: 8tvn and 8nhi

Are you all of a sudden seeing zillions of messages in the event log with either event id 8tvn or 8nhi? The associated text reads something like:

Unable to retrieve parent node for item at: /SomeSite/SomeSubSite/Pages/Default.aspx of type: Area. This may be expected if changes have been made as the System Account, or if this is a POST request, request type: GET

or

Unable to retrieve parent node for item at: /SomeSite/Pages/SomePage.aspx of type: Page. This may be expected if changes have been made as the System Account, or if this is a POST request, request type: GET

Check and see if you've got more than 50 sites or pages underneath "SomeSite". If so, then you're probably bumping up against the default limit of 50 supported by the MOSS navigation infrastructure and you're getting errors when page/site number 51 and above is accessed. (At least that's what happening on the site I'm working on.)

To make the error go away, you probably need to bump up the value of "DynamicChildLimit" in the relevant NavSiteMapProviderdefinition in web.config. (Set it to zero if you don't want any limit.)

Alternatively, you can define additional NavSiteMapProviders (overriding the default value of "DynamicChildLimit") and reference them in your master page (or whatever is appropriate to your site).

Here are a couple of links to more information on MOSS navigation:

http://blogs.msdn.com/ecm/archive/2007/02/10/moss-navigation-deep-dive-part-1.aspx

http://www.sharepointblogs.com/spsherm/archive/2007/10/22/portalsitemapprovider-properties-includepages-dynamicchildlimit.aspx

Wednesday, July 2, 2008

CSS Reference Chart for SharePoint 2007 Update

Heather Solomon has updated her very handy SharePoint CSS reference chart.

This reference, along with SharePoint Skinner, was a life saver a few months back when I was working on a SharePoint rebranding project.

Indexing PDF Documents on SharePoint

Everything you need to know about installing the PDF iFilter on WSS and MOSS.

http://www.moss2007.be/blogs/vandest/archive/2007/09/19/sharepoint-2007-and-pdf-indexing.aspx

One little hint from the "once bitten, twice shy" department: if after installing this iFilter someone claims that a particular PDF document is still NOT being indexed, double-check to make sure that the document in question doesn't just simply contain a image scan with no text.

Tuesday, July 1, 2008

SharePoint Publishing: Enabling Page Settings and Schedule

Scenario: you have a SharePoint publishing site and the Page dropdown on the Page Editing Toolbar has a menuitem that says "Page Settings", not "Page Settings and Schedule". This is bad because you want to be able to schedule when a page will first appear and end.

How do you (re-)enable the "Page Settings and Schedule" choice?

Click the "Settings/Document Library Settings" menuitem for the Pages document library (http://SomeSite/Pages/Forms/AllItems.aspx).

1) In "versioning settings", ensure that content approval is turned on.

2) In "manage item scheduling", ensure that "enable scheduling of items in this list" is checked.

That should do it.

Update: after writing the above post, I found another post addressing the same issue. You can find it here.