mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
- Added dynamic title and description support to dialog and wizard framework
- Rationalised debugging through workfllow pages git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@3651 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -93,12 +93,11 @@
|
|||||||
|
|
||||||
<dialog name="manageTask" page="/jsp/workflow/manage-task-dialog.jsp"
|
<dialog name="manageTask" page="/jsp/workflow/manage-task-dialog.jsp"
|
||||||
managed-bean="ManageTaskDialog" icon="/images/icons/manage_workflow_task_large.gif"
|
managed-bean="ManageTaskDialog" icon="/images/icons/manage_workflow_task_large.gif"
|
||||||
title-id="manage_task_title" description-id="manage_task_desc" />
|
description-id="manage_task_desc" />
|
||||||
|
|
||||||
<dialog name="viewCompletedTask" page="/jsp/workflow/view-completed-task-dialog.jsp"
|
<dialog name="viewCompletedTask" page="/jsp/workflow/view-completed-task-dialog.jsp"
|
||||||
managed-bean="ViewCompletedTaskDialog" icon="/images/icons/completed_workflow_task_large.gif"
|
managed-bean="ViewCompletedTaskDialog" icon="/images/icons/completed_workflow_task_large.gif"
|
||||||
title-id="view_completed_task_title" description-id="view_completed_task_desc"
|
description-id="view_completed_task_desc" show-ok-button="false" />
|
||||||
show-ok-button="false" />
|
|
||||||
|
|
||||||
<dialog name="cancelWorkflow" page="/jsp/workflow/cancel-workflow-dialog.jsp"
|
<dialog name="cancelWorkflow" page="/jsp/workflow/cancel-workflow-dialog.jsp"
|
||||||
managed-bean="CancelWorkflowDialog" icon="/images/icons/cancel_workflow_large.gif"
|
managed-bean="CancelWorkflowDialog" icon="/images/icons/cancel_workflow_large.gif"
|
||||||
|
@@ -130,6 +130,16 @@ public abstract class BaseDialogBean implements IDialogBean
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getTitle()
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDescription()
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param browseBean The BrowseBean to set.
|
* @param browseBean The BrowseBean to set.
|
||||||
*/
|
*/
|
||||||
|
@@ -140,7 +140,13 @@ public final class DialogManager
|
|||||||
*/
|
*/
|
||||||
public String getTitle()
|
public String getTitle()
|
||||||
{
|
{
|
||||||
String title = this.currentDialogState.getConfig().getTitleId();
|
// try and get the title directly from the dialog
|
||||||
|
String title = this.currentDialogState.getDialog().getTitle();
|
||||||
|
|
||||||
|
if (title == null)
|
||||||
|
{
|
||||||
|
// try and get the title via a message bundle key
|
||||||
|
title = this.currentDialogState.getConfig().getTitleId();
|
||||||
|
|
||||||
if (title != null)
|
if (title != null)
|
||||||
{
|
{
|
||||||
@@ -148,8 +154,10 @@ public final class DialogManager
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
// try and get the title from the configuration
|
||||||
title = this.currentDialogState.getConfig().getTitle();
|
title = this.currentDialogState.getConfig().getTitle();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return title;
|
return title;
|
||||||
}
|
}
|
||||||
@@ -161,7 +169,13 @@ public final class DialogManager
|
|||||||
*/
|
*/
|
||||||
public String getDescription()
|
public String getDescription()
|
||||||
{
|
{
|
||||||
String desc = this.currentDialogState.getConfig().getDescriptionId();
|
// try and get the description directly from the dialog
|
||||||
|
String desc = this.currentDialogState.getDialog().getDescription();
|
||||||
|
|
||||||
|
if (desc == null)
|
||||||
|
{
|
||||||
|
// try and get the description via a message bundle key
|
||||||
|
desc = this.currentDialogState.getConfig().getDescriptionId();
|
||||||
|
|
||||||
if (desc != null)
|
if (desc != null)
|
||||||
{
|
{
|
||||||
@@ -169,8 +183,10 @@ public final class DialogManager
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
// try and get the description from the configuration
|
||||||
desc = this.currentDialogState.getConfig().getDescription();
|
desc = this.currentDialogState.getConfig().getDescription();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return desc;
|
return desc;
|
||||||
}
|
}
|
||||||
|
@@ -65,4 +65,22 @@ public interface IDialogBean
|
|||||||
* @return true if the button should be disabled
|
* @return true if the button should be disabled
|
||||||
*/
|
*/
|
||||||
public boolean getFinishButtonDisabled();
|
public boolean getFinishButtonDisabled();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the title to be used for the dialog
|
||||||
|
* <p>If this returns null the DialogManager will
|
||||||
|
* lookup the title via the dialog configuration</p>
|
||||||
|
*
|
||||||
|
* @return The title or null if the title is to be acquired via configuration
|
||||||
|
*/
|
||||||
|
public String getTitle();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the description to be used for the dialog
|
||||||
|
* <p>If this returns null the DialogManager will
|
||||||
|
* lookup the description via the dialog configuration</p>
|
||||||
|
*
|
||||||
|
* @return The title or null if the title is to be acquired via configuration
|
||||||
|
*/
|
||||||
|
public String getDescription();
|
||||||
}
|
}
|
||||||
|
@@ -58,9 +58,6 @@ public class TransientNode extends Node
|
|||||||
|
|
||||||
// initialise the node
|
// initialise the node
|
||||||
initNode(data);
|
initNode(data);
|
||||||
|
|
||||||
if (logger.isDebugEnabled())
|
|
||||||
logger.debug("Constructed transient node: " + this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -12,7 +12,6 @@ import javax.faces.event.ActionEvent;
|
|||||||
import org.alfresco.error.AlfrescoRuntimeException;
|
import org.alfresco.error.AlfrescoRuntimeException;
|
||||||
import org.alfresco.web.app.Application;
|
import org.alfresco.web.app.Application;
|
||||||
import org.alfresco.web.app.servlet.FacesHelper;
|
import org.alfresco.web.app.servlet.FacesHelper;
|
||||||
import org.alfresco.web.bean.dialog.DialogState;
|
|
||||||
import org.alfresco.web.config.WizardsConfigElement.ConditionalPageConfig;
|
import org.alfresco.web.config.WizardsConfigElement.ConditionalPageConfig;
|
||||||
import org.alfresco.web.config.WizardsConfigElement.PageConfig;
|
import org.alfresco.web.config.WizardsConfigElement.PageConfig;
|
||||||
import org.alfresco.web.config.WizardsConfigElement.StepConfig;
|
import org.alfresco.web.config.WizardsConfigElement.StepConfig;
|
||||||
@@ -152,7 +151,13 @@ public final class WizardManager
|
|||||||
*/
|
*/
|
||||||
public String getTitle()
|
public String getTitle()
|
||||||
{
|
{
|
||||||
String title = this.currentWizardState.getConfig().getTitleId();
|
// try and get the title directly from the wizard
|
||||||
|
String title = this.currentWizardState.getWizard().getTitle();
|
||||||
|
|
||||||
|
if (title == null)
|
||||||
|
{
|
||||||
|
// try and get the title via a message bundle key
|
||||||
|
title = this.currentWizardState.getConfig().getTitleId();
|
||||||
|
|
||||||
if (title != null)
|
if (title != null)
|
||||||
{
|
{
|
||||||
@@ -160,8 +165,10 @@ public final class WizardManager
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
// try and get the title from the configuration
|
||||||
title = this.currentWizardState.getConfig().getTitle();
|
title = this.currentWizardState.getConfig().getTitle();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return title;
|
return title;
|
||||||
}
|
}
|
||||||
@@ -173,7 +180,13 @@ public final class WizardManager
|
|||||||
*/
|
*/
|
||||||
public String getDescription()
|
public String getDescription()
|
||||||
{
|
{
|
||||||
String desc = this.currentWizardState.getConfig().getDescriptionId();
|
// try and get the description directly from the dialog
|
||||||
|
String desc = this.currentWizardState.getWizard().getDescription();
|
||||||
|
|
||||||
|
if (desc == null)
|
||||||
|
{
|
||||||
|
// try and get the description via a message bundle key
|
||||||
|
desc = this.currentWizardState.getConfig().getDescriptionId();
|
||||||
|
|
||||||
if (desc != null)
|
if (desc != null)
|
||||||
{
|
{
|
||||||
@@ -181,8 +194,10 @@ public final class WizardManager
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
// try and get the description from the configuration
|
||||||
desc = this.currentWizardState.getConfig().getDescription();
|
desc = this.currentWizardState.getConfig().getDescription();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return desc;
|
return desc;
|
||||||
}
|
}
|
||||||
|
@@ -60,11 +60,11 @@ public class ManageTaskDialog extends BaseDialogBean
|
|||||||
protected String[] itemsToAdd;
|
protected String[] itemsToAdd;
|
||||||
protected boolean isItemBeingAdded = false;
|
protected boolean isItemBeingAdded = false;
|
||||||
|
|
||||||
|
protected final Log logger = LogFactory.getLog(getClass());
|
||||||
|
|
||||||
protected static final String ID_PREFIX = "transition_";
|
protected static final String ID_PREFIX = "transition_";
|
||||||
protected static final String CLIENT_ID_PREFIX = AlfrescoNavigationHandler.DIALOG_PREFIX + ID_PREFIX;
|
protected static final String CLIENT_ID_PREFIX = AlfrescoNavigationHandler.DIALOG_PREFIX + ID_PREFIX;
|
||||||
|
|
||||||
private static final Log logger = LogFactory.getLog(ManageTaskDialog.class);
|
|
||||||
|
|
||||||
// ------------------------------------------------------------------------------
|
// ------------------------------------------------------------------------------
|
||||||
// Dialog implementation
|
// Dialog implementation
|
||||||
|
|
||||||
@@ -117,8 +117,11 @@ public class ManageTaskDialog extends BaseDialogBean
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (logger.isDebugEnabled())
|
if (logger.isDebugEnabled())
|
||||||
logger.debug("Found workflow package for task '" +
|
{
|
||||||
this.task.id + "': " + this.workflowPackage );
|
logger.debug("Task: " + this.task);
|
||||||
|
logger.debug("Trasient node: " + this.taskNode);
|
||||||
|
logger.debug("Workflow package: " + this.workflowPackage );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -143,6 +146,9 @@ public class ManageTaskDialog extends BaseDialogBean
|
|||||||
// prepare the edited parameters for saving
|
// prepare the edited parameters for saving
|
||||||
Map<QName, Serializable> params = WorkflowBean.prepareTaskParams(this.taskNode);
|
Map<QName, Serializable> params = WorkflowBean.prepareTaskParams(this.taskNode);
|
||||||
|
|
||||||
|
if (logger.isDebugEnabled())
|
||||||
|
logger.debug("Saving task with parameters: " + params);
|
||||||
|
|
||||||
// remove any items the user selected to remove
|
// remove any items the user selected to remove
|
||||||
if (this.workflowPackage != null && this.packageItemsToRemove != null &&
|
if (this.workflowPackage != null && this.packageItemsToRemove != null &&
|
||||||
this.packageItemsToRemove.size() > 0)
|
this.packageItemsToRemove.size() > 0)
|
||||||
@@ -211,6 +217,20 @@ public class ManageTaskDialog extends BaseDialogBean
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getTitle()
|
||||||
|
{
|
||||||
|
String titleStart = Application.getMessage(FacesContext.getCurrentInstance(), "manage_task_title");
|
||||||
|
|
||||||
|
return titleStart + ": " + this.task.title;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getDescription()
|
||||||
|
{
|
||||||
|
return this.task.description;
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------------------------------------------------
|
// ------------------------------------------------------------------------------
|
||||||
// Event handlers
|
// Event handlers
|
||||||
|
|
||||||
@@ -220,7 +240,7 @@ public class ManageTaskDialog extends BaseDialogBean
|
|||||||
String outcome = getDefaultFinishOutcome();
|
String outcome = getDefaultFinishOutcome();
|
||||||
|
|
||||||
if (logger.isDebugEnabled())
|
if (logger.isDebugEnabled())
|
||||||
logger.debug("Transitioning task: " + this.taskNode.getId());
|
logger.debug("Transitioning task: " + this.task.id);
|
||||||
|
|
||||||
// to find out which transition button was pressed we need
|
// to find out which transition button was pressed we need
|
||||||
// to look for the button's id in the request parameters,
|
// to look for the button's id in the request parameters,
|
||||||
@@ -252,6 +272,9 @@ public class ManageTaskDialog extends BaseDialogBean
|
|||||||
// prepare the edited parameters for saving
|
// prepare the edited parameters for saving
|
||||||
Map<QName, Serializable> params = WorkflowBean.prepareTaskParams(this.taskNode);
|
Map<QName, Serializable> params = WorkflowBean.prepareTaskParams(this.taskNode);
|
||||||
|
|
||||||
|
if (logger.isDebugEnabled())
|
||||||
|
logger.debug("Transitioning task with parameters: " + params);
|
||||||
|
|
||||||
// update the task with the updated parameters
|
// update the task with the updated parameters
|
||||||
this.workflowService.updateTask(this.task.id, params, null, null);
|
this.workflowService.updateTask(this.task.id, params, null, null);
|
||||||
|
|
||||||
|
@@ -129,6 +129,9 @@ public class StartWorkflowWizard extends BaseWizardBean
|
|||||||
// prepare the parameters from the current state of the property sheet
|
// prepare the parameters from the current state of the property sheet
|
||||||
Map<QName, Serializable> params = WorkflowBean.prepareTaskParams(this.startTaskNode);
|
Map<QName, Serializable> params = WorkflowBean.prepareTaskParams(this.startTaskNode);
|
||||||
|
|
||||||
|
if (logger.isDebugEnabled())
|
||||||
|
logger.debug("Starting workflow with parameters: " + params);
|
||||||
|
|
||||||
// create a workflow package for the attached items and add them
|
// create a workflow package for the attached items and add them
|
||||||
if (this.packageItemsToAdd.size() > 0)
|
if (this.packageItemsToAdd.size() > 0)
|
||||||
{
|
{
|
||||||
|
@@ -37,4 +37,12 @@ public class ViewCompletedTaskDialog extends ManageTaskDialog
|
|||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getTitle()
|
||||||
|
{
|
||||||
|
String titleStart = Application.getMessage(FacesContext.getCurrentInstance(), "view_completed_task_title");
|
||||||
|
|
||||||
|
return titleStart + ": " + this.task.title;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -199,9 +199,6 @@ public class WorkflowBean
|
|||||||
params.put(assocQName, (Serializable)targets);
|
params.put(assocQName, (Serializable)targets);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (logger.isDebugEnabled())
|
|
||||||
logger.debug("Prepared parameters: " + params);
|
|
||||||
|
|
||||||
return params;
|
return params;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user