This is a DebugToPinPoint project. Please see the blog: http://debugtopinpoint.wordpress.com

Project Description

The solution provides a webpart which adds to the OOB Advanced Search web part to allow the use of dropdown lists in the property restrictions in place of the free text box, which can source options from SharePoint lists or static values (in the web part configuration). Supports parent-child relationship (eg category/sub category - sub-category populated based on category selection made). Also provides security trimming of properties. SharePoint 2007 & 2010 compatible. - see features section.

Please see the two detailed screenshot attachments below.

1.    2.

 

Background

The OOB advanced search web part provides the ability to search against specific properties (property restrictions), but the users must enter in to a plain text input box. The purpose of this web part is to extend the OOB Advanced Search web's functionality to allow the plain text box to be replaced with other controls. It is a separate web part, which attaches itself to the OOB Advanced search, and therefore the Advanced Search webpart does not need any changes.

 

Features

  • Replace the plain text input box in the search property restrictions with a dropdownlist
  • Dropdown lists can have hard coded values or source their items from sharepoint lists
  • Parent / child relationships are supported: eg, "category" and "sub-category" - selection of category will cause a callback to occur which populates the child dropdown depending on the option selected by the parent
  • Security-trim property restriction properties based on SharePoint group membership. ie, hide the available options in the property restriction dropdown (such as sub-category) if the user isn't a member of a group. This can be used to hide property restrictions which may not be relevant to most users.
  • SharePoint SP2007 and SP2010 compatible
  • Browser compatability: Works with IE6+, FireFox, Chrome, Safari, Opera; others not tested.

 

Limitations

  • If the user does not have access to the list items or the list, they will not populate for that user
  • Only one level of parent-child relationship is supported: eg: there can not be a third-level sub-category
  • Parent-child relationships must be configured through a list with folders as the first-level items, and items in sub-folders as second level items
  • Once a proprty has been mapped to use a dropdownlist, it can not be selected more than once on the interface (eg, two property restrictions, set to the same property)

Last edited May 24, 2011 at 1:19 AM by Rsteller, version 34