Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main' into yusuf-musleh/content-…
Browse files Browse the repository at this point in the history
…library-collections-signals
  • Loading branch information
pomegranited committed Sep 6, 2024
2 parents ef00ede + f790bd4 commit 6f45aa4
Show file tree
Hide file tree
Showing 7 changed files with 390 additions and 7 deletions.
12 changes: 5 additions & 7 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,8 @@ Change Log

.. There should always be an "Unreleased" section for changes pending release.
Unreleased
__________
-----------



Expand All @@ -24,8 +22,8 @@ __________
Added
~~~~~

* Adds event ``CONTENT_OBJECT_ASSOCIATIONS_CHANGED``
* Adds ``ContentObjectChangedData``, which inherits from ContentObjectData and adds an optional list of string ``changes``.
* Added new ``LIBRARY_COLLECTION_CREATED``, ``LIBRARY_COLLECTION_UPDATED``, ``LIBRARY_COLLECTION_DELETED``,
and ``CONTENT_OBJECT_ASSOCIATIONS_CHANGED`` events in content_authoring.

Deprecated
~~~~~~~~~~
Expand All @@ -37,9 +35,9 @@ Deprecated
---------------------

Added
~~~~~
~~~~~~~

* Added new ``LIBRARY_COLLECTION_CREATED``, ``LIBRARY_COLLECTION_UPDATED`` and ``LIBRARY_COLLECTION_DELETED`` events in content_authoring.
* Added new IDV events ``LEARNER_CREDIT_COURSE_ENROLLMENT_REVOKED``, ``IDV_ATTEMPT_CREATED``, ``IDV_ATTEMPT_PENDING``, ``IDV_ATTEMPT_APPROVED``, and ``IDV_ATTEMPT_DENIED`` in learning.

[9.12.0] - 2024-07-31
---------------------
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
{
"name": "CloudEvent",
"type": "record",
"doc": "Avro Event Format for CloudEvents created with openedx_events/schema",
"fields": [
{
"name": "idv_attempt",
"type": {
"name": "VerificationAttemptData",
"type": "record",
"fields": [
{
"name": "attempt_id",
"type": "long"
},
{
"name": "user",
"type": {
"name": "UserData",
"type": "record",
"fields": [
{
"name": "id",
"type": "long"
},
{
"name": "is_active",
"type": "boolean"
},
{
"name": "pii",
"type": {
"name": "UserPersonalData",
"type": "record",
"fields": [
{
"name": "username",
"type": "string"
},
{
"name": "email",
"type": "string"
},
{
"name": "name",
"type": "string"
}
]
}
}
]
}
},
{
"name": "status",
"type": "string"
},
{
"name": "name",
"type": [
"null",
"string"
],
"default": null
},
{
"name": "expiration_date",
"type": [
"null",
"string"
],
"default": null
}
]
}
}
],
"namespace": "org.openedx.learning.idv_attempt.approved.v1"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
{
"name": "CloudEvent",
"type": "record",
"doc": "Avro Event Format for CloudEvents created with openedx_events/schema",
"fields": [
{
"name": "idv_attempt",
"type": {
"name": "VerificationAttemptData",
"type": "record",
"fields": [
{
"name": "attempt_id",
"type": "long"
},
{
"name": "user",
"type": {
"name": "UserData",
"type": "record",
"fields": [
{
"name": "id",
"type": "long"
},
{
"name": "is_active",
"type": "boolean"
},
{
"name": "pii",
"type": {
"name": "UserPersonalData",
"type": "record",
"fields": [
{
"name": "username",
"type": "string"
},
{
"name": "email",
"type": "string"
},
{
"name": "name",
"type": "string"
}
]
}
}
]
}
},
{
"name": "status",
"type": "string"
},
{
"name": "name",
"type": [
"null",
"string"
],
"default": null
},
{
"name": "expiration_date",
"type": [
"null",
"string"
],
"default": null
}
]
}
}
],
"namespace": "org.openedx.learning.idv_attempt.created.v1"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
{
"name": "CloudEvent",
"type": "record",
"doc": "Avro Event Format for CloudEvents created with openedx_events/schema",
"fields": [
{
"name": "idv_attempt",
"type": {
"name": "VerificationAttemptData",
"type": "record",
"fields": [
{
"name": "attempt_id",
"type": "long"
},
{
"name": "user",
"type": {
"name": "UserData",
"type": "record",
"fields": [
{
"name": "id",
"type": "long"
},
{
"name": "is_active",
"type": "boolean"
},
{
"name": "pii",
"type": {
"name": "UserPersonalData",
"type": "record",
"fields": [
{
"name": "username",
"type": "string"
},
{
"name": "email",
"type": "string"
},
{
"name": "name",
"type": "string"
}
]
}
}
]
}
},
{
"name": "status",
"type": "string"
},
{
"name": "name",
"type": [
"null",
"string"
],
"default": null
},
{
"name": "expiration_date",
"type": [
"null",
"string"
],
"default": null
}
]
}
}
],
"namespace": "org.openedx.learning.idv_attempt.denied.v1"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
{
"name": "CloudEvent",
"type": "record",
"doc": "Avro Event Format for CloudEvents created with openedx_events/schema",
"fields": [
{
"name": "idv_attempt",
"type": {
"name": "VerificationAttemptData",
"type": "record",
"fields": [
{
"name": "attempt_id",
"type": "long"
},
{
"name": "user",
"type": {
"name": "UserData",
"type": "record",
"fields": [
{
"name": "id",
"type": "long"
},
{
"name": "is_active",
"type": "boolean"
},
{
"name": "pii",
"type": {
"name": "UserPersonalData",
"type": "record",
"fields": [
{
"name": "username",
"type": "string"
},
{
"name": "email",
"type": "string"
},
{
"name": "name",
"type": "string"
}
]
}
}
]
}
},
{
"name": "status",
"type": "string"
},
{
"name": "name",
"type": [
"null",
"string"
],
"default": null
},
{
"name": "expiration_date",
"type": [
"null",
"string"
],
"default": null
}
]
}
}
],
"namespace": "org.openedx.learning.idv_attempt.pending.v1"
}
20 changes: 20 additions & 0 deletions openedx_events/learning/data.py
Original file line number Diff line number Diff line change
Expand Up @@ -589,3 +589,23 @@ class BadgeData:
uuid = attr.ib(type=str)
user = attr.ib(type=UserData)
template = attr.ib(type=BadgeTemplateData)


@attr.s(frozen=True)
class VerificationAttemptData:
"""
Attributes defined for the Open edX IDV attempt data object.
Arguments:
attempt_id (int): the id of the verification attempt
user (User): the user (usually a learner) performing the verification attempt.
status (string): the status of the verification attempt.
name (string): the name being ID verified. Defaults to None.
expiration_datetime (datetime, optional): When the verification attempt expires. Defaults to None.
"""

attempt_id = attr.ib(type=int)
user = attr.ib(type=UserData)
status = attr.ib(type=str)
name = attr.ib(type=str, default=None)
expiration_date = attr.ib(type=datetime, default=None)
Loading

0 comments on commit 6f45aa4

Please sign in to comment.