@@ -100,6 +100,7 @@ def iter_nodes(self):
100100 event_key_field = event .get (".. event_key_field:" , "" )
101101 event_key_literal = nodes .literal (text = event_key_field )
102102 event_description = event [".. event_description:" ]
103+ event_trigger_repository = event .get (".. event_trigger_repository:" )
103104
104105 event_section = nodes .section ("" , ids = [f"openedxevent-{ event_type } " ])
105106 event_section += nodes .title (text = event_type , ids = [f"title-{ event_type } " ])
@@ -114,10 +115,42 @@ def iter_nodes(self):
114115 )
115116 event_section += nodes .paragraph ("" , "Event data: " , event_data_literal )
116117 event_section += nodes .paragraph (
117- text = f"Defined at: { event ['filename' ]} (line"
118- f" { event ['line_number' ]} )"
118+ "" ,
119+ "Defined at: " ,
120+ nodes .reference (
121+ text = "{} (line {})" .format (
122+ event ["filename" ], event ["line_number" ]
123+ ),
124+ refuri = "{}/blob/{}/{}#L{}" .format (
125+ self .env .config .openedxevents_repo_url ,
126+ self .env .config .openedxevents_repo_version ,
127+ event ["filename" ],
128+ event ["line_number" ],
129+ ),
130+ ),
131+ ids = [f"definition-{ event_name } " ],
119132 )
120133
134+ if event_trigger_repository :
135+ event_trigger_repository = event_trigger_repository .split (" " )
136+ event_section += nodes .paragraph (text = "Triggered by:" , ids = [f"triggers-{ event_name } " ])
137+ triggers_bullet_list = nodes .bullet_list ()
138+ for repository in event_trigger_repository :
139+ search_url = f"https://github.com/search?q=repo:{ repository } +{ event_name } .send_event&type=code"
140+ triggers_bullet_list += nodes .list_item (
141+ "" ,
142+ nodes .paragraph (
143+ "" ,
144+ "" ,
145+ nodes .reference (
146+ text = repository ,
147+ refuri = search_url ,
148+ ),
149+ ),
150+ )
151+
152+ event_section += triggers_bullet_list
153+
121154 if event .get (".. event_warning:" ) not in (None , "None" , "n/a" , "N/A" ):
122155 event_section += nodes .warning (
123156 "" , nodes .paragraph ("" , event [".. event_warning:" ]), ids = [f"warning-{ event_name } " ]
0 commit comments