示例#1
0
 def get(self):
   enforce_key(self)
   todos = [t.to_dict() for t in ToDo.all().order('-creation_time')]
   self.response.headers['Content-Type'] = "application/json"
   self.response.headers['Content-Disposition'] = (
       "attachment; filename=todos.json")
   self.response.out.write(json.dumps(todos))
示例#2
0
  def post(self):
    enforce_key(self)

    rawEntries = self.request.get("entries")
    entries = json.loads(rawEntries)

    for e in Entry.all():
      e.delete()

    for e in entries:
      newEntry = Entry()
      newEntry.from_json(e)
      newEntry.put()

    rawTodos = self.request.get("todos")
    todos = json.loads(rawTodos)

    for t in ToDo.all():
      t.delete()

    for t in todos:
      newToDo = ToDo()
      newToDo.from_json(t)
      newToDo.put()

    self.response.out.write("Backup successfuly restored.")
示例#3
0
  def get(self):
    todos = defaultdict(list)
    for t in ToDo.all().filter('done_time =', None).order('-creation_time'):
      todos[t.category].append(t)
    for t in ToDo.all().filter('done_time >', datetime.datetime.now() -
                               datetime.timedelta(days=7)):
      todos[t.category].append(t)

    body_text = ""
    for category, items in todos.iteritems():
      body_text += "<h2>%s</h2>\n<ul class='todo'>" % category
      for t in items:
        if t.done_time:
          body_text += "\t<li class='done'>%s</li>\n" % t.content
        else:
          body_text += "\t<a href='/todo/finish/%s'><li>%s</li></a>\n" % (
            t.key(), t.content)
      body_text += "</ul>"

    self.response.out.write(indexTemplate.render({
        'title': 'To-Do',
        'body': body_text,
        'active_page': 'todo'
    }))