def cpexception():
    cherrypy.response.status = 500
    if sys.version_info < (3, 0):
        cherrypy.response.body = bytes(
            pages.get_template('errors/cperror.html').render(
                e=_cperror.format_exc()))
    else:
        cherrypy.response.body = bytes(
            pages.get_template('errors/cperror.html').render(
                e=_cperror.format_exc()), 'utf8')
Exemple #2
0
    def pair(self, mac):
        pages.require("/admin/settings.edit")
        pages.postOnly()

        import bluetoothctl
        bt = bluetoothctl.Bluetoothctl()
        bt.set_agent("NoInputNoOutput")

        time.sleep(0.5)
        try:

            # I think this horriby fussy command needs exactlt this order to work.
            if not bt.pair(mac):
                raise RuntimeError("Pairing failed")

            if not bt.connect(mac):
                raise RuntimeError("Pairing suceeded but connection failed")

            if not bt.trust(mac):
                raise RuntimeError("Trusting failed")
        finally:
            bt.close(force=True)

        devs = []
        paired = bt.get_paired_devices()

        return pages.get_template("settings/bluetooth/scan.html").render(
            devs=devs, paired=paired)
Exemple #3
0
    def remove(self, mac):
        pages.require("/admin/settings.edit")
        pages.postOnly()
        import bluetoothctl
        bt = bluetoothctl.Bluetoothctl()
        time.sleep(0.5)
        try:
            devs = bt.get_discoverable_devices()
            paired = bt.get_paired_devices()
            if not bt.remove(mac):
                raise RuntimeError("Removing failed")
        finally:
            bt.close(force=True)

        return pages.get_template("settings/bluetooth/scan.html").render(
            devs=devs, paired=paired)
Exemple #4
0
    def scan(self):
        pages.postOnly()
        pages.require("/admin/settings.edit")

        import bluetoothctl
        bt = bluetoothctl.Bluetoothctl()

        try:
            bt.start_scan()
            time.sleep(15)
            bt.stop_scan()

            devs = bt.get_discoverable_devices()
            paired = bt.get_paired_devices()
        finally:
            bt.close(force=True)

        return pages.get_template("settings/bluetooth/scan.html").render(
            devs=devs, paired=paired)
Exemple #5
0
 def about(self,*path,**data):
     return pages.get_template('help/about.html').render(myip = MyExternalIPAdress)
Exemple #6
0
def cpexception():
    cherrypy.response.status = 500
    if sys.version_info < (3,0):
        cherrypy.response.body= bytes(pages.get_template('errors/cperror.html').render(e=_cperror.format_exc()))
    else:
        cherrypy.response.body= bytes(pages.get_template('errors/cperror.html').render(e=_cperror.format_exc()),'utf8')
 def license(self, *path, **data):
     return pages.get_template('help/license.html').render()
Exemple #8
0
 def loginerror(self,):
     cherrypy.response.status = 400
     return pages.get_template('errors/loginerror.html').render()
Exemple #9
0
 def wrongmethod(self,):
     cherrypy.response.status = 405
     return pages.get_template('errors/wrongmethod.html').render()
Exemple #10
0
 def license(self,*path,**data):
     return pages.get_template('help/license.html').render()
Exemple #11
0
 def alreadyexists(self,):
     cherrypy.response.status = 400
     return pages.get_template('errors/alreadyexists.html').render()
 def error(self, ):
     cherrypy.response.status = 500
     return pages.get_template('errors/error.html').render(
         info="An Error Occurred")
 def changelog(self, *path, **data):
     return pages.get_template('help/changes.html').render(
         myip=MyExternalIPAdress)
 def loginerror(self, ):
     return pages.get_template('errors/loginerror.html').render()
 def wrongmethod(self, ):
     cherrypy.response.status = 405
     return pages.get_template('errors/wrongmethod.html').render()
 def gosecure(self, ):
     return pages.get_template('errors/gosecure.html').render()
 def alreadyexists(self, ):
     return pages.get_template('errors/alreadyexists.html').render()
 def permissionerror(self, ):
     cherrypy.response.status = 403
     return pages.get_template('errors/permissionerror.html').render()
Exemple #19
0
 def changelog(self,*path,**data):
     return pages.get_template('help/changes.html').render(myip = MyExternalIPAdress)
 def index(self, *path, **data):
     pages.require("/admin/mainpage.view")
     cherrypy.response.cookie['LastSawMainPage'] = time.time()
     return pages.get_template('index.html').render()
Exemple #21
0
 def helpmenu(self,*path,**data):
     return pages.get_template('help/index.html').render()
 def pagelisting(self, *path, **data):
     return pages.get_template('pagelisting.html').render_unicode(
         modules=modules.ActiveModules)
Exemple #23
0
 def permissionerror(self,):
     cherrypy.response.status = 403
     return pages.get_template('errors/permissionerror.html').render()
Exemple #24
0
 def index(self,*path,**data):
     pages.require("/admin/mainpage.view")
     cherrypy.response.cookie['LastSawMainPage'] = time.time()
     return pages.get_template('index.html').render()
Exemple #25
0
 def gosecure(self,):
     cherrypy.response.status = 426
     return pages.get_template('errors/gosecure.html').render()
 def about(self, *path, **data):
     return pages.get_template('help/about.html').render(
         myip=MyExternalIPAdress)
Exemple #27
0
 def nofoldermoveerror(self,):
     cherrypy.response.status = 400
     return pages.get_template('errors/nofoldermove.html').render()
 def makohelp(self, *path, **data):
     return pages.get_template('help/makoreference.html').render()
Exemple #29
0
 def error(self,):
     cherrypy.response.status = 500
     return pages.get_template('errors/error.html').render(info="An Error Occurred")
Exemple #30
0
 def makohelp(self,*path,**data):
     return pages.get_template('help/makoreference.html').render()
Exemple #31
0
 def pagelisting(self,*path,**data):
     return pages.get_template('pagelisting.html').render_unicode(modules = modules.ActiveModules)
 def helpmenu(self, *path, **data):
     return pages.get_template('help/index.html').render()
Exemple #33
0
 def docs(self,*path,**data):
     if path:
         return pages.get_template('help/'+path[0]+'.html').render()
     return pages.get_template('help/help.html').render()
 def docs(self, *path, **data):
     if path:
         return pages.get_template('help/' + path[0] + '.html').render()
     return pages.get_template('help/help.html').render()