Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/model/TaskList.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/model/TaskList.java,v diff -u -r1.9 -r1.10 --- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/model/TaskList.java 15 Apr 2008 11:03:27 -0000 1.9 +++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/model/TaskList.java 16 Apr 2008 01:44:31 -0000 1.10 @@ -162,7 +162,7 @@ // taskListItem. Will need then for making ties beetween conditions' // taskListItems and real ones. HashMap taskListItemsSeq = new HashMap(); - for(Object itemObject:taskListItems) { + for(Object itemObject:taskList.taskListItems) { TaskListItem item = (TaskListItem) itemObject; taskListItemsSeq.put(item.getSequenceId(), item); } Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/service/TaskListServiceImpl.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/service/TaskListServiceImpl.java,v diff -u -r1.10 -r1.11 --- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/service/TaskListServiceImpl.java 15 Apr 2008 11:03:27 -0000 1.10 +++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/service/TaskListServiceImpl.java 16 Apr 2008 01:44:31 -0000 1.11 @@ -502,20 +502,25 @@ } } - boolean result = false; + boolean result = true; if (condition != null) { Iterator it = condition.getTaskListItems().iterator(); while(it.hasNext()) { TaskListItem item = (TaskListItem) it.next(); - TaskListItemVisitLog visitLog = taskListItemVisitDao.getTaskListItemLog(item.getUid(), user.getUid()); + TaskListItemVisitLog visitLog = taskListItemVisitDao.getTaskListItemLog(item.getUid(), userUid); if (visitLog != null) { + //result is being calculated depending on visitLog value result &= visitLog.isComplete(); } else { + //user hadn't complete this task. So this means the condition isn't met. result = false; break; } } + } else { + //there is no such a condition + result = false; } return result;