class OpenVPNPlugin(CategoryPlugin): """OpenVPN plugin @ivar _b: Backend instance""" text = "OpenVPN" icon = "/dl/openvpn/icon.png" folder = "servers" def on_init(self): self._b = OpenVPNBackend(self.app) @event("button/click") def on_button_click(self, event, params, vars=None): try: if params[0] == "disconnect": # Disconnect tooltip clicked self.put_message("info", self._b.killbyaddr(params[1])) elif params[0] == "condRestart": # "Condional Restart" button clicked self.put_message("info", self._b.restartcond()) sleep(2) # Give OpenVPN some time to reload elif params[0] == "hardRestart": # "Hard Restart" button clicked self.put_message("info", self._b.restarthard()) sleep(2) # Give OpenVPN some time to reload except Exception, e: self.put_message("err", e)
class OpenVPNWidget(Plugin): """OpenVPN Widget @ivar _b: Backend instance""" implements(apis.dashboard.IWidget) icon = "/dl/openvpn/icon.png" name = "OpenVPN" title = "OpenVPN" style = "normal" def __init__(self, *args, **kwargs): self._b = OpenVPNBackend(self.app) def get_ui(self, cfg, id = None): s = self._b.getstats() ui = self.app.inflate("openvpn:widget") ui.find("nclients").set("text", s["nclients"]) ui.find("bytesin").set("text", str_fsize(float(s["bytesin"]))) ui.find("bytesout").set("text", str_fsize(float(s["bytesout"]))) return ui def get_config_dialog(self): return None def handle(self, event, params, cfg, vars=None): pass def process_config(self, vars): pass
class OpenVPNWidget(Plugin): """OpenVPN Widget @ivar _b: Backend instance""" implements(apis.dashboard.IWidget) icon = "/dl/openvpn/icon.png" name = "OpenVPN" title = "OpenVPN" style = "normal" def __init__(self, *args, **kwargs): self._b = OpenVPNBackend(self.app) def get_ui(self, cfg, id=None): s = self._b.getstats() ui = self.app.inflate("openvpn:widget") ui.find("nclients").set("text", s["nclients"]) ui.find("bytesin").set("text", str_fsize(float(s["bytesin"]))) ui.find("bytesout").set("text", str_fsize(float(s["bytesout"]))) return ui def get_config_dialog(self): return None def handle(self, event, params, cfg, vars=None): pass def process_config(self, vars): pass
def init(self): self.title = _('OpenVPN') self.icon = 'globe' self.category = _('Software') self.append(self.ui.inflate('openvpn:main')) def disconnect(u, c): try: self.backend.killbyaddr(u.raddress) time.sleep(1) except Exception as e: self.context.notify('error', e.message) self.refresh() self.find('clients').delete_item = disconnect self.binder = Binder(None, self) self.backend = OpenVPNBackend.get()
def init(self): self.title = _("OpenVPN") self.icon = "globe" self.category = _("Software") self.append(self.ui.inflate("openvpn:main")) def disconnect(u, c): try: self.backend.killbyaddr(u.raddress) time.sleep(1) except Exception as e: self.context.notify("error", e.message) self.refresh() self.find("clients").delete_item = disconnect self.binder = Binder(None, self) self.backend = OpenVPNBackend.get()
def __init__(self, *args, **kwargs): self._b = OpenVPNBackend(self.app)
def on_init(self): self._b = OpenVPNBackend(self.app)