66from typing import Any , Dict
77
88import tomlkit
9- from django .conf import settings
9+ from django .contrib . auth . models import User as UserType # pylint: disable=imported-auth-user
1010
1111from openedx_learning .apps .authoring .collections .models import Collection
1212from openedx_learning .apps .authoring .publishing import api as publishing_api
@@ -18,13 +18,18 @@ def toml_learning_package(
1818 learning_package : LearningPackage ,
1919 timestamp : datetime ,
2020 format_version : int = 1 ,
21- user : str | None = None
21+ user : UserType | None = None ,
22+ origin_server : str | None = None
2223 ) -> str :
2324 """
2425 Create a TOML representation of the learning package.
2526
2627 The resulting content looks like:
27- # Datetime of the export: 2025-09-03 12:50:59.573253
28+ [meta]
29+ format_version = 1
30+ created_by = "dormsbee"
31+ created_at = 2025-09-03T17:50:59.536190Z
32+ origin_server = "http://cms.test"
2833
2934 [learning_package]
3035 title = "Components Test Case Learning Package"
@@ -46,9 +51,11 @@ def toml_learning_package(
4651 # Learning package metadata
4752 metadata = tomlkit .table ()
4853 metadata .add ("format_version" , format_version )
49- metadata .add ("created_by" , user or "unknown" )
54+ if user :
55+ metadata .add ("created_by" , user .username )
5056 metadata .add ("created_at" , timestamp )
51- metadata .add ("origin_server" , getattr (settings , "CMS_BASE" , "unknown" ))
57+ if origin_server :
58+ metadata .add ("origin_server" , origin_server )
5259
5360 doc .add ("meta" , metadata )
5461 doc .add ("learning_package" , section )
0 commit comments