(Scott Phillips) SF#1913521 Scoped searching (like scoped browsing)

git-svn-id: http://scm.dspace.org/svn/repo/branches/dspace-1_5_x@2833 9c30dcfa-912a-0410-8fc2-9e0234be79fd
This commit is contained in:
Scott Phillips
2008-03-13 18:01:54 +00:00
parent f536bcbe3b
commit 604cd20193
3 changed files with 16 additions and 9 deletions

View File

@@ -50,6 +50,7 @@ import org.apache.cocoon.caching.CacheableProcessingComponent;
import org.apache.cocoon.environment.ObjectModelHelper;
import org.apache.cocoon.environment.Request;
import org.apache.oro.text.perl.Perl5Util;
import org.dspace.app.xmlui.utils.HandleUtil;
import org.dspace.app.xmlui.utils.UIException;
import org.dspace.app.xmlui.wing.Message;
import org.dspace.app.xmlui.wing.WingException;
@@ -63,6 +64,9 @@ import org.dspace.app.xmlui.wing.element.Select;
import org.dspace.app.xmlui.wing.element.Table;
import org.dspace.app.xmlui.wing.element.Text;
import org.dspace.authorize.AuthorizeException;
import org.dspace.content.Collection;
import org.dspace.content.Community;
import org.dspace.content.DSpaceObject;
import org.xml.sax.SAXException;
/**
@@ -133,10 +137,17 @@ public class AdvancedSearch extends AbstractSearch implements CacheableProcessin
/**
* Add Page metadata.
*/
public void addPageMeta(PageMeta pageMeta) throws WingException
public void addPageMeta(PageMeta pageMeta) throws WingException, SQLException
{
pageMeta.addMetadata("title").addContent(T_title);
pageMeta.addTrailLink(contextPath + "/", T_dspace_home);
DSpaceObject dso = HandleUtil.obtainHandle(objectModel);
if ((dso instanceof Collection) || (dso instanceof Community))
{
HandleUtil.buildHandleTrail(dso,pageMeta,contextPath);
}
pageMeta.addTrail().addContent(T_trail);
}
@@ -155,7 +166,7 @@ public class AdvancedSearch extends AbstractSearch implements CacheableProcessin
Division search = body.addDivision("advanced-search","primary");
search.setHead(T_head);
Division query = search.addInteractiveDivision("search-query",
contextPath+"/advanced-search",Division.METHOD_POST,"secondary search");
"advanced-search",Division.METHOD_POST,"secondary search");
// Use these fields to change the number of search fields, or change the results per page.
query.addHidden("num_search_field").setValue(numSearchField);

View File

@@ -270,7 +270,8 @@ public class CollectionViewer extends AbstractDSpaceTransformer implements Cache
para.addText("query");
para.addContent(" ");
para.addButton("submit").setValue(T_go);
query.addPara().addXref(contextPath + "/handle/" + collection.getHandle()+ "/advanced-search", T_advanced_search_link);
// Browse by list
Division browseDiv = search.addDivision("collection-browse","secondary browse");
List browse = browseDiv.addList("collection-browse", List.TYPE_SIMPLE,
@@ -280,9 +281,6 @@ public class CollectionViewer extends AbstractDSpaceTransformer implements Cache
browse.addItemXref(url + "/browse?type=title",T_browse_titles);
browse.addItemXref(url + "/browse?type=author",T_browse_authors);
browse.addItemXref(url + "/browse?type=dateissued",T_browse_dates);
Division advancedSearchLink = search.addDivision("collection-advanced-search", "secondary advanced-search");
advancedSearchLink.addPara().addXref(contextPath + "/advanced-search", T_advanced_search_link);
}
// Add the reference

View File

@@ -291,6 +291,7 @@ public class CommunityViewer extends AbstractDSpaceTransformer implements Cachea
para.addText("query");
para.addContent(" ");
para.addButton("submit").setValue(T_go);
query.addPara().addXref(contextPath + "/handle/" + community.getHandle() + "/advanced-search", T_advanced_search_link);
// Browse by list
Division browseDiv = search.addDivision("community-browse","secondary browse");
@@ -301,9 +302,6 @@ public class CommunityViewer extends AbstractDSpaceTransformer implements Cachea
browse.addItemXref(url + "/browse?type=title",T_browse_titles);
browse.addItemXref(url + "/browse?type=author",T_browse_authors);
browse.addItemXref(url + "/browse?type=dateissued",T_browse_dates);
Division advancedSearchLink = search.addDivision("community-advanced-search", "secondary advanced-search");
advancedSearchLink.addPara().addXref(contextPath + "/advanced-search", T_advanced_search_link);
}
// Add main reference: