diff --git a/python/educational-core/src/com/jetbrains/edu/learning/checker/StudyCheckTask.java b/python/educational-core/src/com/jetbrains/edu/learning/checker/StudyCheckTask.java index 0c070df1cb99..2db45eeb83e3 100644 --- a/python/educational-core/src/com/jetbrains/edu/learning/checker/StudyCheckTask.java +++ b/python/educational-core/src/com/jetbrains/edu/learning/checker/StudyCheckTask.java @@ -173,7 +173,8 @@ public class StudyCheckTask extends com.intellij.openapi.progress.Task.Backgroun if (reactionPosted) { if (myStatusBeforeCheck != StudyStatus.Solved) { myTask.setStatus(StudyStatus.Solved); - EduAdaptiveStepicConnector.addNextRecommendedTask(myProject, indicator, EduAdaptiveStepicConnector.NEXT_RECOMMENDATION_REACTION); + EduAdaptiveStepicConnector.addNextRecommendedTask(myProject, myTask.getLesson(), indicator, + EduAdaptiveStepicConnector.NEXT_RECOMMENDATION_REACTION); } } else { @@ -203,7 +204,8 @@ public class StudyCheckTask extends com.intellij.openapi.progress.Task.Backgroun if (pair.getFirst()) { onTaskSolved("Congratulations! Remote tests passed."); if (myStatusBeforeCheck != StudyStatus.Solved) { - EduAdaptiveStepicConnector.addNextRecommendedTask(myProject, indicator, EduAdaptiveStepicConnector.NEXT_RECOMMENDATION_REACTION); + EduAdaptiveStepicConnector.addNextRecommendedTask(myProject, myTask.getLesson(), indicator, + EduAdaptiveStepicConnector.NEXT_RECOMMENDATION_REACTION); } } else { diff --git a/python/educational-core/src/com/jetbrains/edu/learning/stepic/EduAdaptiveStepicConnector.java b/python/educational-core/src/com/jetbrains/edu/learning/stepic/EduAdaptiveStepicConnector.java index c8af73b7b3c8..accecb8ad225 100644 --- a/python/educational-core/src/com/jetbrains/edu/learning/stepic/EduAdaptiveStepicConnector.java +++ b/python/educational-core/src/com/jetbrains/edu/learning/stepic/EduAdaptiveStepicConnector.java @@ -26,7 +26,6 @@ import com.jetbrains.edu.learning.courseFormat.tasks.CodeTask; import com.jetbrains.edu.learning.courseFormat.tasks.Task; import com.jetbrains.edu.learning.courseFormat.tasks.TheoryTask; import com.jetbrains.edu.learning.courseGeneration.StudyGenerator; -import com.jetbrains.edu.learning.editor.StudyEditor; import com.jetbrains.edu.learning.navigation.StudyNavigator; import com.jetbrains.edu.learning.ui.StudyToolWindow; import org.apache.http.HttpEntity; @@ -281,12 +280,12 @@ public class EduAdaptiveStepicConnector { } } - public static void addNextRecommendedTask(@NotNull Project project, @NotNull ProgressIndicator indicator, int reactionToPost) { - final StudyEditor editor = StudyUtils.getSelectedStudyEditor(project); + public static void addNextRecommendedTask(@NotNull Project project, + @NotNull Lesson lesson, + @NotNull ProgressIndicator indicator, + int reactionToPost) { final Course course = StudyTaskManager.getInstance(project).getCourse(); - Task selectedTask = StudyUtils.getTaskFromSelectedEditor(project); - if (editor == null || editor.getTaskFile() == null || selectedTask == null || selectedTask.getLesson() == null || - !(course instanceof RemoteCourse)) { + if (!(course instanceof RemoteCourse)) { LOG.warn("Course is in incorrect state"); ApplicationManager.getApplication().invokeLater(() -> StudyUtils.showErrorPopupOnToolbar(project, "Can't get next recommendation: course is broken")); @@ -302,7 +301,6 @@ public class EduAdaptiveStepicConnector { return; } - final Lesson lesson = selectedTask.getLesson(); final boolean reactionPosted = postRecommendationReaction(String.valueOf(lesson.getId()), String.valueOf(user.getId()), reactionToPost); if (!reactionPosted) { LOG.warn("Recommendation reaction wasn't posted"); diff --git a/python/educational-core/src/com/jetbrains/edu/learning/stepic/StepicAdaptiveReactionsPanel.java b/python/educational-core/src/com/jetbrains/edu/learning/stepic/StepicAdaptiveReactionsPanel.java index 6f68839fd936..8aabf57e7144 100644 --- a/python/educational-core/src/com/jetbrains/edu/learning/stepic/StepicAdaptiveReactionsPanel.java +++ b/python/educational-core/src/com/jetbrains/edu/learning/stepic/StepicAdaptiveReactionsPanel.java @@ -148,7 +148,8 @@ public class StepicAdaptiveReactionsPanel extends JPanel { public void run(@NotNull ProgressIndicator indicator) { StepicAdaptiveReactionsPanel.this.setEnabledRecursive(false); ApplicationManager.getApplication().invokeLater(()->setBackground(UIUtil.getLabelBackground())); - EduAdaptiveStepicConnector.addNextRecommendedTask(StepicAdaptiveReactionsPanel.this.myProject, indicator, myReaction); + EduAdaptiveStepicConnector.addNextRecommendedTask(StepicAdaptiveReactionsPanel.this.myProject, task.getLesson(), indicator, + myReaction); StepicAdaptiveReactionsPanel.this.setEnabledRecursive(true); } });