@@ -201,12 +201,13 @@ class Enumeration(BaseResource):
201201 redmine_version = '2.2'
202202 container_filter = '{resource}'
203203 query_filter = '/enumerations/{resource}.json'
204+ query_url = '/enumerations/{0}/edit'
204205
205206 _resource_set_map = {'custom_fields' : 'CustomField' }
206207
207208 @property
208209 def url (self ):
209- return '{0}/enumerations/{1}/edit' . format ( self .manager .redmine .url , self .internal_id )
210+ return self .manager .redmine .url + self . query_url . format ( self .internal_id )
210211
211212
212213class Attachment (BaseResource ):
@@ -489,58 +490,63 @@ class News(BaseResource):
489490 query_all_export = '/news.{format}'
490491 query_all = '/news.json'
491492 query_filter = '/news.json'
493+ query_url = '/news/{0}'
492494 search_hints = ['news' ]
493495
494496 _repr = [['id' , 'title' ]]
495497 _resource_map = {'project' : 'Project' , 'author' : 'User' }
496498
497499 @property
498500 def url (self ):
499- return '{0}/news/{1}' . format ( self .manager .redmine .url , self .internal_id )
501+ return self .manager .redmine .url + self . query_url . format ( self .internal_id )
500502
501503
502504class IssueStatus (BaseResource ):
503505 redmine_version = '1.3'
504506 container_all = 'issue_statuses'
505507 query_all = '/issue_statuses.json'
508+ query_url = '/issue_statuses/{0}/edit'
506509
507510 _relations = ['issues' ]
508511 _relations_name = 'status'
509512 _resource_set_map = {'issues' : 'Issue' }
510513
511514 @property
512515 def url (self ):
513- return '{0}/issue_statuses/{1}/edit' . format ( self .manager .redmine .url , self .internal_id )
516+ return self .manager .redmine .url + self . query_url . format ( self .internal_id )
514517
515518
516519class Tracker (BaseResource ):
517520 redmine_version = '1.3'
518521 container_all = 'trackers'
519522 query_all = '/trackers.json'
523+ query_url = '/trackers/{0}/edit'
520524
521525 _relations = ['issues' ]
522526 _resource_set_map = {'issues' : 'Issue' }
523527
524528 @property
525529 def url (self ):
526- return '{0}/trackers/{1}/edit' . format ( self .manager .redmine .url , self .internal_id )
530+ return self .manager .redmine .url + self . query_url . format ( self .internal_id )
527531
528532
529533class Query (BaseResource ):
530534 redmine_version = '1.3'
531535 container_all = 'queries'
532536 query_all = '/queries.json'
537+ query_url = '/projects/{0}/issues?query_id={1}'
533538
534539 @property
535540 def url (self ):
536- return '{0}/projects/{1}/issues?query_id={2}' .format (
537- self .manager . redmine . url , self . _decoded_attrs .get ('project_id' , 0 ), self .internal_id )
541+ return self . manager . redmine . url + self . query_url .format (
542+ self ._decoded_attrs .get ('project_id' , 0 ), self .internal_id )
538543
539544
540545class CustomField (BaseResource ):
541546 redmine_version = '2.4'
542547 container_all = 'custom_fields'
543548 query_all = '/custom_fields.json'
549+ query_url = '/custom_fields/{0}/edit'
544550
545551 _resource_set_map = {'trackers' : 'Tracker' , 'roles' : 'Role' }
546552
@@ -566,4 +572,4 @@ def encode(cls, attr, value, manager):
566572
567573 @property
568574 def url (self ):
569- return '{0}/custom_fields/{1}/edit' . format ( self .manager .redmine .url , self .internal_id )
575+ return self .manager .redmine .url + self . query_url . format ( self .internal_id )
0 commit comments