Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
problem-builder
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenEdx
problem-builder
Commits
00880fcb
Commit
00880fcb
authored
Oct 02, 2014
by
dragonfi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Extract PublishEventMixin to xblock-utils
parent
6f4ea850
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
11 additions
and
18 deletions
+11
-18
mentoring/light_children.py
+3
-1
mentoring/mentoring.py
+8
-17
No files found.
mentoring/light_children.py
View file @
00880fcb
...
...
@@ -38,6 +38,8 @@ from xblock.core import XBlock
from
xblock.fragment
import
Fragment
from
xblock.plugin
import
Plugin
from
xblockutils.publish_event
import
PublishEventMixin
from
.models
import
LightChild
as
LightChildModel
...
...
@@ -166,7 +168,7 @@ class LightChildrenMixin(XBlockWithChildrenFragmentsMixin):
return
fragment
,
named_child_frags
class
XBlockWithLightChildren
(
LightChildrenMixin
,
XBlock
):
class
XBlockWithLightChildren
(
LightChildrenMixin
,
XBlock
,
PublishEventMixin
):
"""
XBlock base class with support for LightChild
"""
...
...
mentoring/mentoring.py
View file @
00880fcb
...
...
@@ -152,21 +152,12 @@ class MentoringBlock(XBlockWithLightChildren, StepParentMixin):
return
fragment
@XBlock.json_handler
def
publish_event
(
self
,
data
,
suffix
=
''
):
try
:
event_type
=
data
.
pop
(
'event_type'
)
except
KeyError
as
e
:
return
{
'result'
:
'error'
,
'message'
:
'Missing event_type in JSON data'
}
return
self
.
_publish_event
(
event_type
,
data
)
def
_publish_event
(
self
,
event_type
,
data
):
data
[
'user_id'
]
=
self
.
scope_ids
.
user_id
data
[
'component_id'
]
=
self
.
url_name
self
.
runtime
.
publish
(
self
,
event_type
,
data
)
return
{
'result'
:
'success'
}
@property
def
additional_publish_event_data
(
self
):
return
{
'user_id'
:
self
.
scope_ids
.
user_id
,
'component_id'
:
self
.
url_name
,
}
@property
def
title
(
self
):
...
...
@@ -262,7 +253,7 @@ class MentoringBlock(XBlockWithLightChildren, StepParentMixin):
raw_score
=
self
.
score
.
raw
self
.
_publish_event
(
'xblock.mentoring.submitted'
,
{
self
.
publish_event_from_python
(
'xblock.mentoring.submitted'
,
{
'num_attempts'
:
self
.
num_attempts
,
'submitted_answer'
:
submissions
,
'grade'
:
raw_score
,
...
...
@@ -327,7 +318,7 @@ class MentoringBlock(XBlockWithLightChildren, StepParentMixin):
event_data
[
'num_attempts'
]
=
self
.
num_attempts
event_data
[
'submitted_answer'
]
=
submissions
self
.
_publish_event
(
'xblock.mentoring.assessment.submitted'
,
event_data
)
self
.
publish_event_from_python
(
'xblock.mentoring.assessment.submitted'
,
event_data
)
return
{
'completed'
:
completed
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment