Skip to content

Commit

Permalink
add view on site on detail pages
Browse files Browse the repository at this point in the history
  • Loading branch information
fredkingham committed Mar 14, 2017
1 parent ef4a698 commit ab92689
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 12 deletions.
26 changes: 20 additions & 6 deletions opal/admin.py
Expand Up @@ -53,7 +53,7 @@ class EpisodeAdmin(reversion.VersionAdmin):
'active',
'date_of_admission',
'discharge_date',
'episode_detail_url'
'episode_detail_link'
]
list_filter = ['active', ]
search_fields = [
Expand All @@ -63,14 +63,21 @@ class EpisodeAdmin(reversion.VersionAdmin):
]

def episode_detail_url(self, obj):
url = "/#/patient/{0}/{1}".format(obj.patient_id, obj.id)
return format_html("<a href='{url}'>{url}</a>", url=url)
return "/#/patient/{0}/{1}".format(obj.patient_id, obj.id)

def episode_detail_link(self, obj):
return format_html(
"<a href='{url}'>{url}</a>", url=self.episode_detail_url(obj)
)

def view_on_site(self, obj):
return self.episode_detail_url(obj)

episode_detail_url.short_description = "Episode Detail URL"


class PatientAdmin(reversion.VersionAdmin):
list_display = ('__str__', 'patient_detail_url')
list_display = ('__str__', 'patient_detail_link')

search_fields = [
'demographics__first_name',
Expand All @@ -79,8 +86,15 @@ class PatientAdmin(reversion.VersionAdmin):
]

def patient_detail_url(self, obj):
url = "/#/patient/{0}".format(obj.id)
return format_html("<a href='{url}'>{url}</a>", url=url)
return "/#/patient/{0}".format(obj.id)

def patient_detail_link(self, obj):
return format_html(
"<a href='{url}'>{url}</a>", url=self.patient_detail_url(obj)
)

def view_on_site(self, obj):
return self.patient_detail_url(obj)

patient_detail_url.short_description = "Patient Detail Url"

Expand Down
30 changes: 24 additions & 6 deletions opal/tests/test_admin.py
Expand Up @@ -42,18 +42,36 @@ def setUp(self):


class EpisodeAdminTestCase(AdminTestCase):
def test_episode_detail_url(self):
admin = EpisodeAdmin(Episode, self.site)
def setUp(self):
super(EpisodeAdminTestCase, self).setUp()
self.admin = EpisodeAdmin(Episode, self.site)

def test_episode_detail_link(self):
self.assertEqual(
admin.episode_detail_url(self.episode),
self.admin.episode_detail_link(self.episode),
"<a href='/#/patient/1/1'>/#/patient/1/1</a>"
)

def test_view_on_site(self):
self.assertEqual(
self.admin.view_on_site(self.episode),
'/#/patient/1/1'
)


class PatientAdminTestCase(AdminTestCase):
def test_patient_detail_url(self):
admin = PatientAdmin(Patient, self.site)
def setUp(self):
super(PatientAdminTestCase, self).setUp()
self.admin = PatientAdmin(Patient, self.site)

def test_patient_detail_link(self):
self.assertEqual(
admin.patient_detail_url(self.patient),
self.admin.patient_detail_link(self.patient),
"<a href='/#/patient/1'>/#/patient/1</a>"
)

def test_view_on_site(self):
self.assertEqual(
self.admin.view_on_site(self.patient),
'/#/patient/1'
)

0 comments on commit ab92689

Please sign in to comment.