CCM NG: Tab Veröffentlichen wirft Exception wenn keine Standard Lifecycle vorhanden ist. (#2797)
git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@5299 8810af33-2d31-482b-a856-94f89814c4df
Former-commit-id: 5d1a33e6af
pull/2/head
parent
59be6c3389
commit
f0e3f25b0b
|
|
@ -144,7 +144,8 @@ class ItemLifecycleAdminController implements Serializable {
|
|||
}
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public LifecycleDefinition getDefaultLifecycle(final ContentItem item) {
|
||||
public Optional<LifecycleDefinition> getDefaultLifecycle(
|
||||
final ContentItem item) {
|
||||
|
||||
final ContentItem contentItem = itemRepo
|
||||
.findById(item.getObjectId())
|
||||
|
|
@ -156,9 +157,14 @@ class ItemLifecycleAdminController implements Serializable {
|
|||
.getContentType()
|
||||
.getDefaultLifecycle();
|
||||
|
||||
return lifecycleDefRepo
|
||||
.findById(definition.getDefinitionId())
|
||||
.get();
|
||||
if (definition == null) {
|
||||
return Optional.empty();
|
||||
} else {
|
||||
return Optional
|
||||
.of(lifecycleDefRepo
|
||||
.findById(definition.getDefinitionId())
|
||||
.get());
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
|
|
|
|||
|
|
@ -41,7 +41,6 @@ import com.arsdigita.bebop.parameters.IntegerParameter;
|
|||
import com.arsdigita.bebop.parameters.NumberInRangeValidationListener;
|
||||
import com.arsdigita.cms.CMS;
|
||||
import com.arsdigita.cms.ui.BaseForm;
|
||||
import com.arsdigita.cms.ui.ContentItemPage;
|
||||
import com.arsdigita.cms.ui.item.ContentItemRequestLocal;
|
||||
import com.arsdigita.cms.ui.item.ItemWorkflowRequestLocal;
|
||||
import com.arsdigita.cms.ui.workflow.WorkflowRequestLocal;
|
||||
|
|
@ -67,16 +66,9 @@ import org.libreccm.workflow.WorkflowRepository;
|
|||
import org.librecms.CmsConstants;
|
||||
import org.librecms.contentsection.ContentItem;
|
||||
import org.librecms.contentsection.ContentItemManager;
|
||||
import org.librecms.contentsection.ContentItemRepository;
|
||||
import org.librecms.contentsection.ContentSection;
|
||||
import org.librecms.contentsection.privileges.ItemPrivileges;
|
||||
import org.librecms.lifecycle.Lifecycle;
|
||||
import org.librecms.lifecycle.LifecycleDefinition;
|
||||
import org.librecms.lifecycle.LifecycleDefinitionRepository;
|
||||
import org.librecms.lifecycle.LifecycleManager;
|
||||
import org.librecms.lifecycle.Phase;
|
||||
import org.librecms.lifecycle.PhaseDefinition;
|
||||
import org.librecms.lifecycle.PhaseRepository;
|
||||
import org.librecms.workflow.CmsTask;
|
||||
import org.librecms.workflow.CmsTaskManager;
|
||||
import org.librecms.workflow.CmsTaskType;
|
||||
|
|
@ -88,6 +80,7 @@ import java.math.BigDecimal;
|
|||
import java.util.Calendar;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Optional;
|
||||
import java.util.TimeZone;
|
||||
import java.util.TooManyListenersException;
|
||||
|
||||
|
|
@ -320,19 +313,17 @@ class ItemLifecycleSelectForm extends BaseForm {
|
|||
// associated lifecycle.
|
||||
|
||||
final LifecycleDefinition definition = controller
|
||||
.getDefinitionOfLifecycle(item);
|
||||
.getDefinitionOfLifecycle(item);
|
||||
// final LifecycleDefinition definition = item
|
||||
// .getLifecycle()
|
||||
// .getDefinition();
|
||||
cycleSelect.setValue(state, definition.getDefinitionId());
|
||||
} else {
|
||||
// Set the default lifecycle (if it exists).
|
||||
final LifecycleDefinition definition = controller
|
||||
.getDefaultLifecycle(item);
|
||||
|
||||
if (definition != null) {
|
||||
cycleSelect.setValue(state, definition.getDefinitionId());
|
||||
}
|
||||
controller
|
||||
.getDefaultLifecycle(item)
|
||||
.ifPresent(definition -> cycleSelect.setValue(state,
|
||||
definition));
|
||||
}
|
||||
|
||||
// Set the default start date.
|
||||
|
|
@ -390,8 +381,8 @@ class ItemLifecycleSelectForm extends BaseForm {
|
|||
final ContentItem item = itemRequestLocal.getContentItem(state);
|
||||
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
||||
final ItemLifecycleAdminController controller = cdiUtil
|
||||
.findBean(ItemLifecycleAdminController.class);
|
||||
|
||||
.findBean(ItemLifecycleAdminController.class);
|
||||
|
||||
final Publisher publisher = new Publisher(state);
|
||||
if (CMSConfig.getConfig().isThreadPublishing()) {
|
||||
final Runnable threadAction = new Runnable() {
|
||||
|
|
@ -730,10 +721,10 @@ class ItemLifecycleSelectForm extends BaseForm {
|
|||
|
||||
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
||||
final ItemLifecycleAdminController controller = cdiUtil
|
||||
.findBean(ItemLifecycleAdminController.class);
|
||||
|
||||
.findBean(ItemLifecycleAdminController.class);
|
||||
|
||||
controller.publish(itemUuid, defID, endDate, workflowUuid, user);
|
||||
|
||||
|
||||
// final ContentItemRepository itemRepo = cdiUtil.findBean(
|
||||
// ContentItemRepository.class);
|
||||
// final ContentItemManager itemManager = cdiUtil.findBean(
|
||||
|
|
|
|||
|
|
@ -452,7 +452,7 @@ cms.ui.item.lifecycle=Lifecycle
|
|||
cms.ui.item.lifecycle.start_date=Start date
|
||||
cms.ui.item.lifecycle.end_date=End date
|
||||
cms.ui.item.lifecycle.start_time=Start time
|
||||
cms.ui.item.lifecycle.end_time\ =End time
|
||||
cms.ui.item.lifecycle.end_time=End time
|
||||
cms.ui.item.notification_period=Notify in advance
|
||||
cms.ui.item.days=days
|
||||
cms.ui.item.hours=hours
|
||||
|
|
|
|||
|
|
@ -449,7 +449,7 @@ cms.ui.item.lifecycle=Ver\u00f6ffentlichungszyklus
|
|||
cms.ui.item.lifecycle.start_date=Beginnt am
|
||||
cms.ui.item.lifecycle.end_date=Endet am
|
||||
cms.ui.item.lifecycle.start_time=Beginnt um
|
||||
cms.ui.item.lifecycle.end_time\ =Endet um
|
||||
cms.ui.item.lifecycle.end_time=Endet um
|
||||
cms.ui.item.notification_period=Vorab Benachrichtigung
|
||||
cms.ui.item.days=Tage
|
||||
cms.ui.item.hours=Stunden
|
||||
|
|
|
|||
|
|
@ -408,7 +408,7 @@ cms.ui.item.lifecycle=Lifecycle
|
|||
cms.ui.item.lifecycle.start_date=Start date
|
||||
cms.ui.item.lifecycle.end_date=End date
|
||||
cms.ui.item.lifecycle.start_time=Start time
|
||||
cms.ui.item.lifecycle.end_time\ =End time
|
||||
cms.ui.item.lifecycle.end_time=End time
|
||||
cms.ui.item.notification_period=Notify in advance
|
||||
cms.ui.item.days=days
|
||||
cms.ui.item.hours=hours
|
||||
|
|
|
|||
Loading…
Reference in New Issue