in intellij-plugin/features/social-media/src/com/jetbrains/edu/socialMedia/SocialMediaMultiplePostAction.kt [49:69]
override fun afterCheck(project: Project, task: Task, result: CheckResult) {
val course = task.course
// It doesn't make sense to suggest posting to social media in educator mode or for preview course
if (!course.isStudy || course.isPreview) return
if (result.status != CheckStatus.Solved) return
val courseId = course.id
if (!SocialMediaPostManager.needToAskedToPost(courseId)) return
val previousStatus = PreviousTaskStatusService.getInstance(project).getPreviousStatus(task) ?: return
val activeConfigurators = listOf(XPluginConfigurator.EP_NAME, LinkedInPluginConfigurator.EP_NAME)
.flatMap { it.extensionList }
.filter { it.askToPost(project, task, previousStatus) }
if (activeConfigurators.all { !it.settings.askToPost }) return
if (activeConfigurators.isEmpty()) return
createDialogAndShow(project, activeConfigurators, task)
SocialMediaPostManager.setAskedToPost(courseId)
sendStatistics(course)
}