@@ -163,7 +163,8 @@ def search(self, user, since, until, target_type, action_name):
163
163
class Issue (object ):
164
164
""" GitLab Issue """
165
165
166
- def __init__ (self , data , gitlabapi ):
166
+ def __init__ (self , data , gitlabapi , parent ):
167
+ self .parent = parent
167
168
self .data = data
168
169
self .gitlabapi = gitlabapi
169
170
self .project = self .gitlabapi .get_project (data ['project_id' ])
@@ -176,9 +177,18 @@ def iid(self):
176
177
177
178
def __str__ (self ):
178
179
""" String representation """
179
- return "{0}#{1} - {2}" .format (
180
- self .project ['path_with_namespace' ],
181
- str (self .id ).zfill (PADDING ), self .title )
180
+ if self .parent .options .format == "md" :
181
+ return "[{1}#{3}]({0}/{1}/-/{2}/{3}) - {4}" .format (
182
+ self .gitlabapi .url ,
183
+ self .project ['path_with_namespace' ],
184
+ ("issues"
185
+ if self .data ['target_type' ] == 'Issue'
186
+ else "merge_requests" ),
187
+ str (self .id ), self .title )
188
+ else :
189
+ return "{0}#{1} - {2}" .format (
190
+ self .project ['path_with_namespace' ],
191
+ str (self .id ).zfill (PADDING ), self .title )
182
192
183
193
184
194
class MergeRequest (Issue ):
@@ -223,7 +233,7 @@ def fetch(self):
223
233
self .user .login , self .options .since , self .options .until ,
224
234
'Issue' , 'opened' )
225
235
self .stats = [
226
- Issue (issue , self .parent .gitlab )
236
+ Issue (issue , self .parent .gitlab , self . parent )
227
237
for issue in results ]
228
238
229
239
@@ -237,7 +247,7 @@ def fetch(self):
237
247
self .user .login , self .options .since , self .options .until ,
238
248
'Note' , 'commented on' )
239
249
self .stats = [
240
- Note (issue , self .parent .gitlab )
250
+ Note (issue , self .parent .gitlab , self . parent )
241
251
for issue in results
242
252
if issue ['note' ]['noteable_type' ] == 'Issue' ]
243
253
@@ -252,7 +262,7 @@ def fetch(self):
252
262
self .user .login , self .options .since , self .options .until ,
253
263
'Issue' , 'closed' )
254
264
self .stats = [
255
- Issue (issue , self .parent .gitlab )
265
+ Issue (issue , self .parent .gitlab , self . parent )
256
266
for issue in results ]
257
267
258
268
@@ -266,7 +276,7 @@ def fetch(self):
266
276
self .user .login , self .options .since , self .options .until ,
267
277
'MergeRequest' , 'opened' )
268
278
self .stats = [
269
- MergeRequest (mr , self .parent .gitlab )
279
+ MergeRequest (mr , self .parent .gitlab , self . parent )
270
280
for mr in results ]
271
281
272
282
@@ -280,7 +290,7 @@ def fetch(self):
280
290
self .user .login , self .options .since , self .options .until ,
281
291
'Note' , 'commented on' )
282
292
self .stats = [
283
- Note (issue , self .parent .gitlab )
293
+ Note (issue , self .parent .gitlab , self . parent )
284
294
for issue in results
285
295
if issue ['note' ]['noteable_type' ] == 'MergeRequest' ]
286
296
@@ -295,7 +305,7 @@ def fetch(self):
295
305
self .user .login , self .options .since , self .options .until ,
296
306
'MergeRequest' , 'accepted' )
297
307
self .stats = [
298
- MergeRequest (mr , self .parent .gitlab )
308
+ MergeRequest (mr , self .parent .gitlab , self . parent )
299
309
for mr in results ]
300
310
301
311
@@ -309,7 +319,7 @@ def fetch(self):
309
319
self .user .login , self .options .since , self .options .until ,
310
320
'MergeRequest' , 'approved' )
311
321
self .stats = [
312
- MergeRequest (mr , self .parent .gitlab )
322
+ MergeRequest (mr , self .parent .gitlab , self . parent )
313
323
for mr in results ]
314
324
315
325
0 commit comments