Skip to content
Snippets Groups Projects
Commit bc3bd492 authored by srosse's avatar srosse
Browse files

OO-852: fix warn from logging, add commit every 5 user updates, add link to...

OO-852: fix warn from logging, add commit every 5 user updates, add link to the creator's visit card of a task
parent 894552c9
No related branches found
No related tags found
No related merge requests found
......@@ -36,7 +36,6 @@ public class DefaultFlexiColumnModel implements FlexiColumnModel {
private String headerKey;
private String columnKey;
private int columnIndex;
private String action;
private boolean sortable;
private String sortedKey;
......@@ -53,11 +52,6 @@ public class DefaultFlexiColumnModel implements FlexiColumnModel {
this(true, headerKey, columnIndex, false, null, FlexiColumnModel.ALIGNMENT_LEFT, renderer);
}
public DefaultFlexiColumnModel(String headerKey, int columnIndex, String action) {
this(headerKey, columnIndex, false, null);
this.action = action;
}
public DefaultFlexiColumnModel(String headerKey, int columnIndex, boolean sortable, String sortKey) {
this(true, headerKey, columnIndex, sortable, sortKey, FlexiColumnModel.ALIGNMENT_LEFT, new TextFlexiCellRenderer());
}
......@@ -78,11 +72,7 @@ public class DefaultFlexiColumnModel implements FlexiColumnModel {
@Override
public String getAction() {
return action;
}
public void setAction(String action) {
this.action = action;
return null;
}
@Override
......
......@@ -24,6 +24,7 @@ import java.util.Collections;
import java.util.Date;
import java.util.List;
import org.olat.NewControllerFactory;
import org.olat.core.CoreSpringFactory;
import org.olat.core.commons.services.taskexecutor.Task;
import org.olat.core.commons.services.taskexecutor.TaskExecutorManager;
......@@ -36,10 +37,13 @@ import org.olat.core.gui.components.form.flexible.elements.FormLink;
import org.olat.core.gui.components.form.flexible.impl.FormBasicController;
import org.olat.core.gui.components.form.flexible.impl.FormEvent;
import org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiColumnModel;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiCellRenderer;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableColumnModel;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableDataModelFactory;
import org.olat.core.gui.components.form.flexible.impl.elements.table.SelectionEvent;
import org.olat.core.gui.components.form.flexible.impl.elements.table.StaticFlexiCellRenderer;
import org.olat.core.gui.components.form.flexible.impl.elements.table.StaticFlexiColumnModel;
import org.olat.core.gui.components.form.flexible.impl.elements.table.TextFlexiCellRenderer;
import org.olat.core.gui.components.link.Link;
import org.olat.core.gui.control.Controller;
import org.olat.core.gui.control.Event;
......@@ -50,6 +54,7 @@ import org.olat.core.gui.control.generic.wizard.Step;
import org.olat.core.gui.control.generic.wizard.StepRunnerCallback;
import org.olat.core.gui.control.generic.wizard.StepsMainRunController;
import org.olat.core.gui.control.generic.wizard.StepsRunContext;
import org.olat.core.id.Identity;
import org.olat.core.id.OLATResourceable;
import org.olat.course.CourseFactory;
import org.olat.course.ICourse;
......@@ -111,7 +116,11 @@ public class BulkAssessmentOverviewController extends FormBasicController {
columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel("table.header.comment", Cols.comment.ordinal()));
columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel("table.header.returnFiles", Cols.returnFile.ordinal()));
columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel("table.header.numOfAssessedUsers", Cols.numOfAssessedUsers.ordinal()));
columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel("table.header.owner", Cols.owner.ordinal()));
FlexiCellRenderer renderer = new StaticFlexiCellRenderer("select-owner", new TextFlexiCellRenderer());
columnsModel.addFlexiColumnModel(new StaticFlexiColumnModel("table.header.owner", Cols.owner.ordinal(), "select-owner", renderer));
columnsModel.addFlexiColumnModel(new StaticFlexiColumnModel("edit", translate("edit"), "edit"));
columnsModel.addFlexiColumnModel(new StaticFlexiColumnModel("delete", translate("delete"), "delete"));
......@@ -165,6 +174,12 @@ public class BulkAssessmentOverviewController extends FormBasicController {
doConfirmDelete(ureq, data);
break;
}
case "select-owner": {
TaskData data = taskModel.getObject(se.getIndex());
Identity creator = data.getTask().getCreator();
doOpenCard(ureq, creator);
break;
}
}
}
}
......@@ -198,6 +213,11 @@ public class BulkAssessmentOverviewController extends FormBasicController {
super.event(ureq, source, event);
}
private void doOpenCard(UserRequest ureq, Identity creator) {
String businessPath = "[Identity:" + creator.getKey() + "]";
NewControllerFactory.getInstance().launch(businessPath, ureq, getWindowControl());
}
private void doConfirmDelete(UserRequest ureq, TaskData data) {
String title = translate("delete.task");
String text = translate("delete.task.confirm", new String[]{ data.toString() });
......
......@@ -34,6 +34,8 @@ import org.olat.core.CoreSpringFactory;
import org.olat.core.commons.modules.bc.FolderConfig;
import org.olat.core.commons.modules.bc.vfs.OlatRootFileImpl;
import org.olat.core.commons.modules.bc.vfs.OlatRootFolderImpl;
import org.olat.core.commons.persistence.DB;
import org.olat.core.commons.persistence.DBFactory;
import org.olat.core.commons.services.taskexecutor.LongRunnable;
import org.olat.core.commons.services.taskexecutor.Task;
import org.olat.core.commons.services.taskexecutor.TaskAwareRunnable;
......@@ -176,6 +178,9 @@ public class BulkAssessmentTask implements LongRunnable, TaskAwareRunnable {
public List<BulkAssessmentFeedback> process() {
List<BulkAssessmentFeedback> feedbacks = new ArrayList<>();
try {
LoggingResourceable infos = LoggingResourceable.wrap(getCourseNode());
ThreadLocalUserActivityLogger.addLoggingResourceInfo(infos);
doProcess(feedbacks);
cleanup();
} catch (Exception e) {
......@@ -293,6 +298,7 @@ public class BulkAssessmentTask implements LongRunnable, TaskAwareRunnable {
}
private void doProcess(List<BulkAssessmentFeedback> feedbacks) {
final DB dbInstance = DBFactory.getInstance();
final BaseSecurity securityManager = CoreSpringFactory.getImpl(BaseSecurity.class);
final Identity coachIdentity = securityManager.loadIdentityByKey(coachedIdentity);
final ICourse course = CourseFactory.loadCourse(courseRes);
......@@ -328,6 +334,7 @@ public class BulkAssessmentTask implements LongRunnable, TaskAwareRunnable {
cut = courseNode.getCutValueConfiguration();
}
int count = 0;
List<BulkAssessmentRow> rows = datas.getRows();
for(BulkAssessmentRow row:rows) {
Long identityKey = row.getIdentityKey();
......@@ -335,7 +342,7 @@ public class BulkAssessmentTask implements LongRunnable, TaskAwareRunnable {
feedbacks.add(new BulkAssessmentFeedback("bulk.action.no.such.user", row.getAssessedId()));
continue;//nothing to do
}
Identity identity = securityManager.loadIdentityByKey(identityKey);
IdentityEnvironment ienv = new IdentityEnvironment(identity, studentRoles);
UserCourseEnvironment uce = new UserCourseEnvironmentImpl(ienv, course.getCourseEnvironment());
......@@ -415,6 +422,10 @@ public class BulkAssessmentTask implements LongRunnable, TaskAwareRunnable {
}
}
}
if(count++ % 5 == 0) {
dbInstance.commitAndCloseSession();
}
}
}
......
......@@ -97,8 +97,7 @@ public class UserSearchAndInfoController extends BasicController {
*/
@Override
protected void event(UserRequest ureq, Component source, Event event) {
// TODO Auto-generated method stub
//
}
/**
......@@ -106,8 +105,6 @@ public class UserSearchAndInfoController extends BasicController {
*/
@Override
protected void doDispose() {
// TODO Auto-generated method stub
//
}
}
......@@ -56,7 +56,6 @@ import org.olat.core.util.FileUtils;
import org.olat.core.util.StringHelper;
import org.olat.core.util.Util;
import org.olat.core.util.filter.FilterFactory;
import org.olat.core.util.filter.impl.SmileysCssToDataUriFilter;
import org.olat.core.util.mail.ContactList;
import org.olat.core.util.mail.MailModule;
import org.olat.user.UserManager;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment