. Added URL addressability to dashboards

- the External Access servlet now supports jumping to the My Alfresco dashboard for a user
   - pages other than the default are supported
   - URL is of the form /alfresco/navigate/myalfresco or /alfresco/navigate/myalfresco?page=id

. Added configuration so that the web-client can be configured to jump to any of the following start locations:
   My Home (current defaut), Company Home, Guest Home or My Alfresco dashboard
   see the <initial-location> web-client-config element

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@3398 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Kevin Roast
2006-07-25 17:09:10 +00:00
parent f6f2ca6d5b
commit 62c0ecf132
10 changed files with 205 additions and 107 deletions

View File

@@ -42,7 +42,7 @@ import org.dom4j.io.XMLWriter;
*
* @author Kevin Roast
*/
final class PageConfig
public final class PageConfig
{
private static Log logger = LogFactory.getLog(DashboardManager.class);
@@ -55,7 +55,7 @@ final class PageConfig
private static final String ATTR_REFID = "idref";
private List<Page> pages = new ArrayList<Page>(4);
private int currentPageIndex = 0;
private Page currentPage = null;
/**
@@ -86,13 +86,30 @@ final class PageConfig
*/
public Page getCurrentPage()
{
if (currentPageIndex < pages.size())
if (this.currentPage == null)
{
return pages.get(currentPageIndex);
if (this.pages.size() != 0)
{
this.currentPage = pages.get(0);
}
}
else
return this.currentPage;
}
/**
* Set the current Page for the cnfig
*
* @param pageId ID of the page to set as current
*/
public void setCurrentPage(String pageId)
{
for (Page page : pages)
{
return null;
if (page.getId().equals(pageId))
{
this.currentPage = page;
break;
}
}
}