Thursday, February 26, 2009

No searchresults for content available in welcome pages

I wrote a custom multilingual searchwebpart which uses the FullTextSqlQuery class to execute a search query. The webpart is used in a WCM scenario and his task was to find all publishing pages related with the given keyword.

After a while I noticed something weird... the webpart could find all keywords available in various fieldcontrols except for those content available in welcome pages.

After some research, it seems to be a SP bug. Thank goodness, MS has already released a hotfix package for this.

Monday, February 2, 2009

Peekaboo Bug: IE7

I ran across an ugly IE bug while developing a page layout. After some research it seems to be a crazy-making "peekaboo" IE bug.

Peekaboo (also spelled Peek-a-boo) is a game similar to hide and seek, but played with babies. In the game, one child, teenager, or adult hides their face, pops back into the baby's view, and says — to the baby's amusement Peekaboo! I see you!

Symtoms:
Certain content mysteriously disappears when you take some mouse action.

In my case it looks like this:










Cause
:
Setup of floating elements

Fix:
You have to set the "Layout" for the DIV element. You can set "Layout" in different manners eg. position, zoom, height,... attribute.

The hasLayout MS-property is a sort of flag: when it is set, the element has this layout “quality”, which includes special capabilities — for instance, on the floating and stacking — for the element itself and for its non-layouted child elements.

Some more information about hasLayout: The concept of hasLayout in IE/Win.

How To: Manipulate Navigation Settings Programmatically

__ Global navigation



__ Current navigation



Global navigation

1) web.Navigation.UseShared = true; web.Update();
2) web.Navigation.UseShared = false; web.Update();

Current navigation

1) publishingWeb.InheritCurrentNavigation = true;
publishingWeb.NavigationShowSiblings = false;
publishingWeb.Update();

2) publishingWeb.InheritCurrentNavigation = false;
publishingWeb.NavigationShowSiblings = true;
publishingWeb.Update();

3) publishingWeb.InheritCurrentNavigation = false;
publishingWeb.NavigationShowSiblings = false;
publishingWeb.Update();

Note: InheritCurrentNavigations value is "false" by default.

PS. Thanks to Robin's post for pointing me in the right direction and for his help ;)