def __init__(self, debug): self.debug = debug self.dispatch = SharedDataMiddleware(self.dispatch, {"/static": path["static"]}) try: self.document = Document.load("savedir/save.beer") except IOError: self.document = Document() self.document.save(filepath="savedir/save.beer", comment=u"New file")
def _insert(self, id): args = doc_parse.parse_args() doc = Document.query.get(id) if doc: doc.update(**args) else: doc = Document(**args) doc.id = id db.session.add(doc) db.session.commit() _index_document(doc.id) return doc
def view(filename): doc = Document.load("savedir/" + filename) template_response("/page/version/view.mako", filename=filename, date=doc.date, comment=doc.comment )
def rollback(filename): doc = Document.load("savedir/" + filename) doc.save("Rullede tilbage til version '%s'" % (filename.replace("save.beer.", ""), ), "savedir/save.beer") set_document(doc) redirect("version.browse")
class Application(object): def __init__(self, debug): self.debug = debug self.dispatch = SharedDataMiddleware(self.dispatch, {"/static": path["static"]}) try: self.document = Document.load("savedir/save.beer") except IOError: self.document = Document() self.document.save(filepath="savedir/save.beer", comment=u"New file") def dispatch(self, environ, start_response): try: local.request = Request(environ) local.response = Response() local.session = Session(local.request.cookies.get("session")) try: local.url_adapter = url_adapter = url_map.bind_to_environ(environ) try: endpoint, params = url_adapter.match() except NotFound: endpoint = "notfound" params = {} if not endpoint in ("notfound", "misc.enter_title_do") and document().title == None: endpoint = "misc.enter_title_form" local.endpoint = endpoint endpoints[endpoint](**params) except: if self.debug: raise endpoints["error"]() response = local.response local.session.set_cookie(local.response) except: if self.debug: raise response = Response("Fejlsidens fejlside.") return response(environ, start_response) def __call__(self, environ, start_response): local.application = self return self.dispatch(environ, start_response)
def export(filename): doc = Document.load("savedir/" + filename) local.response.mimetype = "application/octet-stream" disp = "attachment; " disp += "filename=export.beer; " rfc822_date = doc.date.strftime("%a, %d %b %Y %H:%M:%S GMT") disp += "modification-date: %s" % (rfc822_date,) local.response.headers.add("Content-Disposition", disp) json.dump(doc.export(), local.response.stream)
def browse(): files = [] for f in filter(lambda x: x != '.placeholder', os.listdir('savedir')): doc = Document.load("savedir/" + f) files.append((f, doc.date, doc.comment)) files.sort(key=lambda x: x[1], reverse=True) template_response("/page/version/browse.mako", files=files )
# -*- coding: utf-8 -*- from app.model.document import Document try: doc = [Document.load("savedir/save.beer")] except IOError: doc = [Document()] doc[0].save(filepath="savedir/save.beer", comment=u"Ny fil") def document(): return doc[0] def usage(): return document().usage def inventory(): return document().inventory def accounts(): return document().accounts def set_document(document): doc[0] = document
def import_file(): data = json.load(local.request.files.get("savefile")) new_doc = Document.create(data) new_doc.save("Importerede dokument", "savedir/save.beer") set_document(new_doc) redirect("version.browse")