mirror of
https://github.com/DSpace/DSpace.git
synced 2025-10-18 07:23:08 +00:00
(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:
@@ -50,6 +50,7 @@ import org.apache.cocoon.caching.CacheableProcessingComponent;
|
|||||||
import org.apache.cocoon.environment.ObjectModelHelper;
|
import org.apache.cocoon.environment.ObjectModelHelper;
|
||||||
import org.apache.cocoon.environment.Request;
|
import org.apache.cocoon.environment.Request;
|
||||||
import org.apache.oro.text.perl.Perl5Util;
|
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.utils.UIException;
|
||||||
import org.dspace.app.xmlui.wing.Message;
|
import org.dspace.app.xmlui.wing.Message;
|
||||||
import org.dspace.app.xmlui.wing.WingException;
|
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.Table;
|
||||||
import org.dspace.app.xmlui.wing.element.Text;
|
import org.dspace.app.xmlui.wing.element.Text;
|
||||||
import org.dspace.authorize.AuthorizeException;
|
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;
|
import org.xml.sax.SAXException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -133,10 +137,17 @@ public class AdvancedSearch extends AbstractSearch implements CacheableProcessin
|
|||||||
/**
|
/**
|
||||||
* Add Page metadata.
|
* 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.addMetadata("title").addContent(T_title);
|
||||||
pageMeta.addTrailLink(contextPath + "/", T_dspace_home);
|
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);
|
pageMeta.addTrail().addContent(T_trail);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -155,7 +166,7 @@ public class AdvancedSearch extends AbstractSearch implements CacheableProcessin
|
|||||||
Division search = body.addDivision("advanced-search","primary");
|
Division search = body.addDivision("advanced-search","primary");
|
||||||
search.setHead(T_head);
|
search.setHead(T_head);
|
||||||
Division query = search.addInteractiveDivision("search-query",
|
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.
|
// Use these fields to change the number of search fields, or change the results per page.
|
||||||
query.addHidden("num_search_field").setValue(numSearchField);
|
query.addHidden("num_search_field").setValue(numSearchField);
|
||||||
|
@@ -270,6 +270,7 @@ public class CollectionViewer extends AbstractDSpaceTransformer implements Cache
|
|||||||
para.addText("query");
|
para.addText("query");
|
||||||
para.addContent(" ");
|
para.addContent(" ");
|
||||||
para.addButton("submit").setValue(T_go);
|
para.addButton("submit").setValue(T_go);
|
||||||
|
query.addPara().addXref(contextPath + "/handle/" + collection.getHandle()+ "/advanced-search", T_advanced_search_link);
|
||||||
|
|
||||||
// Browse by list
|
// Browse by list
|
||||||
Division browseDiv = search.addDivision("collection-browse","secondary browse");
|
Division browseDiv = search.addDivision("collection-browse","secondary browse");
|
||||||
@@ -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=title",T_browse_titles);
|
||||||
browse.addItemXref(url + "/browse?type=author",T_browse_authors);
|
browse.addItemXref(url + "/browse?type=author",T_browse_authors);
|
||||||
browse.addItemXref(url + "/browse?type=dateissued",T_browse_dates);
|
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
|
// Add the reference
|
||||||
|
@@ -291,6 +291,7 @@ public class CommunityViewer extends AbstractDSpaceTransformer implements Cachea
|
|||||||
para.addText("query");
|
para.addText("query");
|
||||||
para.addContent(" ");
|
para.addContent(" ");
|
||||||
para.addButton("submit").setValue(T_go);
|
para.addButton("submit").setValue(T_go);
|
||||||
|
query.addPara().addXref(contextPath + "/handle/" + community.getHandle() + "/advanced-search", T_advanced_search_link);
|
||||||
|
|
||||||
// Browse by list
|
// Browse by list
|
||||||
Division browseDiv = search.addDivision("community-browse","secondary browse");
|
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=title",T_browse_titles);
|
||||||
browse.addItemXref(url + "/browse?type=author",T_browse_authors);
|
browse.addItemXref(url + "/browse?type=author",T_browse_authors);
|
||||||
browse.addItemXref(url + "/browse?type=dateissued",T_browse_dates);
|
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:
|
// Add main reference:
|
||||||
|
Reference in New Issue
Block a user