blob: 01cb8d7e657b1595cb07e09d9b99aad916f213b0 [file] [log] [blame]
Scott Bakere791dc62014-08-28 14:02:54 -07001""" PlusObjectMixin
2
3 Implements fields that are common to all OpenCloud objects. For example,
4 stuff related to backend icons.
5"""
6
7class PlusObjectMixin:
8 def getBackendIcon(self):
Scott Baker664b44d2015-02-10 10:25:03 -08009 if (self.enacted is not None) and self.enacted >= self.updated or self.backend_status.startswith("1 -"):
Scott Bakere791dc62014-08-28 14:02:54 -070010 return "/static/admin/img/icon_success.gif"
11 else:
Scott Baker664b44d2015-02-10 10:25:03 -080012 if ((self.backend_status is not None) and self.backend_status.startswith("0 -")) or self.backend_status == "Provisioning in progress" or self.backend_status=="":
Scott Bakere791dc62014-08-28 14:02:54 -070013 return "/static/admin/img/icon_clock.gif"
14 else:
15 return "/static/admin/img/icon_error.gif"
16
17 def getBackendHtml(self):
18 if (self.enacted is not None) and self.enacted >= self.updated:
19 return '<img src="%s">' % self.getBackendIcon()
20 else:
Scott Baker2c40f292014-08-28 15:08:56 -070021 return '<span title="%s"><img src="%s"></span>' % (self.backend_status, self.getBackendIcon())
Scott Bakere791dc62014-08-28 14:02:54 -070022
Scott Baker664b44d2015-02-10 10:25:03 -080023