From 3ea8e6fabdd2b055a057d70d7017d2886f0cd28d Mon Sep 17 00:00:00 2001 From: srosse <none@none> Date: Mon, 17 Mar 2014 19:50:44 +0100 Subject: [PATCH] OO-1018: pass event from "new controller" to the toc + structure controller --- .../ui/EPArtefactPoolRunController.java | 1 + .../ui/structel/EPAddElementsController.java | 40 ++++++++++--------- 2 files changed, 23 insertions(+), 18 deletions(-) diff --git a/src/main/java/org/olat/portfolio/ui/EPArtefactPoolRunController.java b/src/main/java/org/olat/portfolio/ui/EPArtefactPoolRunController.java index 9aae9a47071..02793e274f0 100755 --- a/src/main/java/org/olat/portfolio/ui/EPArtefactPoolRunController.java +++ b/src/main/java/org/olat/portfolio/ui/EPArtefactPoolRunController.java @@ -262,6 +262,7 @@ public class EPArtefactPoolRunController extends BasicController implements Acti // some artefacts were added, refresh view if (event.equals(Event.DONE_EVENT)) { initTPAllView(ureq); + fireEvent(ureq, event); } } else if (event instanceof EPArtefactChoosenEvent) { // an artefact was choosen, pass through the event until top diff --git a/src/main/java/org/olat/portfolio/ui/structel/EPAddElementsController.java b/src/main/java/org/olat/portfolio/ui/structel/EPAddElementsController.java index 3a8a3f1a381..57429a2c48e 100644 --- a/src/main/java/org/olat/portfolio/ui/structel/EPAddElementsController.java +++ b/src/main/java/org/olat/portfolio/ui/structel/EPAddElementsController.java @@ -133,28 +133,32 @@ public class EPAddElementsController extends BasicController { @Override protected void event(UserRequest ureq, Controller source, Event event) { super.event(ureq, source, event); - if (source == artefactPoolCtrl && event instanceof EPArtefactChoosenEvent) { - // finally an artefact was choosen - EPArtefactChoosenEvent artCEv = (EPArtefactChoosenEvent) event; - artefactBox.deactivate(); - AbstractArtefact choosenArtefact = artCEv.getArtefact(); - // check for a yet existing link to this artefact - if (ePFMgr.isArtefactInStructure(choosenArtefact, portfolioStructure)) { - showWarning("artefact.already.in.structure"); - } else { - boolean successfullLink = ePFMgr.addArtefactToStructure(getIdentity(), choosenArtefact, portfolioStructure); - if (successfullLink) { - getWindowControl().setInfo( - getTranslator().translate("artefact.choosen", new String[] { choosenArtefact.getTitle(), portfolioStructure.getTitle() })); - ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapPortfolioOres(choosenArtefact)); - ThreadLocalUserActivityLogger.log(EPLoggingAction.EPORTFOLIO_ARTEFACT_SELECTED, getClass()); + if (source == artefactPoolCtrl) { + if(event instanceof EPArtefactChoosenEvent) { + // finally an artefact was choosen + EPArtefactChoosenEvent artCEv = (EPArtefactChoosenEvent) event; + artefactBox.deactivate(); + AbstractArtefact choosenArtefact = artCEv.getArtefact(); + // check for a yet existing link to this artefact + if (ePFMgr.isArtefactInStructure(choosenArtefact, portfolioStructure)) { + showWarning("artefact.already.in.structure"); } else { - showError("restrictions.not.conform"); + boolean successfullLink = ePFMgr.addArtefactToStructure(getIdentity(), choosenArtefact, portfolioStructure); + if (successfullLink) { + getWindowControl().setInfo( + getTranslator().translate("artefact.choosen", new String[] { choosenArtefact.getTitle(), portfolioStructure.getTitle() })); + ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapPortfolioOres(choosenArtefact)); + ThreadLocalUserActivityLogger.log(EPLoggingAction.EPORTFOLIO_ARTEFACT_SELECTED, getClass()); + } else { + showError("restrictions.not.conform"); + } + fireEvent(ureq, new EPStructureChangeEvent(EPStructureChangeEvent.ADDED, portfolioStructure)); } + } else if(event == Event.DONE_EVENT) { + artefactBox.deactivate(); fireEvent(ureq, new EPStructureChangeEvent(EPStructureChangeEvent.ADDED, portfolioStructure)); } - - } + } } public void setShowLink(String... types) { -- GitLab