def main(request): resp = framework.ResponseDocument(request, eqedit_constructor) return resp.finalize() def get_equipment_list(filt=None, start=0, end=20, order_by=None): modelclass = models.Equipment if columns is None: q = dbsession.query(modelclass) else: attrlist = [getattr(modelclass, n) for n in columns] q = dbsession.query(*attrlist) # build filter if one is provided as a dictionary if filt is not None: for name, value in filt.items(): attrib = getattr(modelclass, name) q = q.filter(attrib == value) if order_by: q = q.order_by(getattr(modelclass, order_by)) if end is not None: if start is not None: q = q.slice(start, end) else: q = q.limit(end) return q.all() dispatcher = json.JSONDispatcher([get_equipment_list]) dispatcher = auth.need_authentication(webhelpers.setup_dbsession(dispatcher))
resp.doc.append( NM( "UL", None, NM( "LI", None, NM("A", {"href": request.resolver.get_url(testcase_list)}, "Test cases."), ), # NM("LI", None, # NM("A", {"href": request.resolver.get_url(testresults_list)}, "Latest test results."), # ), )) return resp.finalize() # handlers mapped from the config. testcase_list = webhelpers.setup_dbsession(auth.need_login(TestcaseLister())) testcase_view = webhelpers.setup_dbsession(auth.need_login(TestcaseViewer())) testcase_edit = webhelpers.setup_dbsession(auth.need_login(TestcaseEditor())) testcase_create = webhelpers.setup_dbsession(auth.need_login( TestcaseCreator())) testcase_run = webhelpers.setup_dbsession(auth.need_login(TestcaseRunner())) main = auth.need_login(MainHandler()) if __name__ == "__main__": pass
resp = framework.ResponseDocument(request, main_constructor) NM = resp.doc.nodemaker resp.new_para("Test Management.") resp.doc.append( NM("UL", None, NM("LI", None, NM("A", {"href": request.resolver.get_url(testcase_list)}, "Test cases."), ), # NM("LI", None, # NM("A", {"href": request.resolver.get_url(testresults_list)}, "Latest test results."), # ), ) ) return resp.finalize() # handlers mapped from the config. testcase_list = webhelpers.setup_dbsession(auth.need_login(TestcaseLister())) testcase_view = webhelpers.setup_dbsession(auth.need_login(TestcaseViewer())) testcase_edit = webhelpers.setup_dbsession(auth.need_login(TestcaseEditor())) testcase_create = webhelpers.setup_dbsession(auth.need_login(TestcaseCreator())) testcase_run = webhelpers.setup_dbsession(auth.need_login(TestcaseRunner())) main = auth.need_login(MainHandler()) if __name__ == "__main__": pass
def _modelchecker(obj): try: return obj.__class__.__name__ in _tables except AttributeError: return False # Functions exported to javascript via proxy. _exported = [get_tables, get_table_metadata, get_table_metadata_map, get_choices, get_uidata, query, create, updaterow, deleterow, get_row, get_ids, get_rowdisplay, related_add, related_remove] dispatcher = json.JSONDispatcher(_exported) dispatcher.register_encoder("models", _modelchecker, _convert_instance) dispatcher = auth.need_authentication(webhelpers.setup_dbsession(dispatcher)) ##### for server-side markup requests that provide a basic database editor. #### ##### Code below here will eventually disappear. def doc_constructor(request, **kwargs): doc = HTML5.new_document() doc.stylesheets = ["common.css", "ui.css", "db.css"] doc.scripts = ["MochiKit.js", "proxy.js", "ui.js", "sorttable.js", "db.js"] for name, val in kwargs.items(): setattr(doc, name, val) nav = doc.add_section("navigation") NM = doc.nodemaker NBSP = NM("_", None)
NM("A", {"href":".."}, "Up"), NBSP, )) nav.append(NM("P", {"class_": "title"}, kwargs["title"])) nav.append(NM("P", None, NM("A", {"href": "/auth/logout"}, "logout"))) doc.add_section("container", id="content") doc.add_section("container", id="sidebar") doc.add_section("container", id="messages") return doc @auth.need_login @webhelpers.setup_dbsession def config_main(request): resp = framework.ResponseDocument(request, config_page_constructor, title="Config Editor") return resp.finalize() def config_update(xxx): pass _exported = [config_update] dispatcher = auth.need_authentication( webhelpers.setup_dbsession( json.JSONDispatcher(_exported))) if __name__ == "__main__": pass
NBSP, )) nav.append(NM("P", {"class_": "title"}, kwargs["title"])) nav.append(NM("P", None, NM("A", {"href": "/auth/logout"}, "logout"))) doc.add_section("container", id="content") doc.add_section("container", id="sidebar") doc.add_section("container", id="messages") return doc @auth.need_login @webhelpers.setup_dbsession def config_main(request): resp = framework.ResponseDocument(request, config_page_constructor, title="Config Editor") return resp.finalize() def config_update(xxx): pass _exported = [config_update] dispatcher = auth.need_authentication( webhelpers.setup_dbsession(json.JSONDispatcher(_exported))) if __name__ == "__main__": pass
resp = framework.ResponseDocument(request, eqedit_constructor) return resp.finalize() def get_equipment_list(filt=None, start=0, end=20, order_by=None): modelclass = models.Equipment if columns is None: q = dbsession.query(modelclass) else: attrlist = [getattr(modelclass, n) for n in columns] q = dbsession.query(*attrlist) # build filter if one is provided as a dictionary if filt is not None: for name, value in filt.items(): attrib = getattr(modelclass, name) q = q.filter(attrib==value) if order_by: q = q.order_by(getattr(modelclass, order_by)) if end is not None: if start is not None: q = q.slice(start, end) else: q = q.limit(end) return q.all() dispatcher = json.JSONDispatcher([get_equipment_list]) dispatcher = auth.need_authentication(webhelpers.setup_dbsession(dispatcher))