Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/errors/127.0.0.1.2010-07-13.16-44-30.36c1dbc5-f098-4eaf-bbf3-5ba7cd8031b5
blob: 6dd406b6e5c1bf9e708b09975e688cecfb53f892 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
(dp1
S'output'
p2
S''
sS'layer'
p3
S'/home/jboisture/Desktop/google_appengine/turtleartsite/applications/turtlesite/controllers/default.py'
p4
sS'code'
p5
S'import os\n\ndef sort_by_views(L):\n    if len(L) <= 1: return L\n    return sort_by_views( [ lt for lt in L[1:] if lt.views < L[0].views ] )  +  [ L[0] ]  +  qsort( [ ge for ge in L[1:] if ge.views >= L[0].views ] )\n\n\ndef index():\n  sorts = ["newest", "views"]\n  if "page" in request.vars.keys(): page = int(request.vars["page"]) - 1\n  else: page = 0\n  if "sort" in request.vars.keys(): sort = request.vars["sort"]\n  else: sort = \'newest\'\n  if sort not in sorts:\n      sort = "newest"\n  if "profile" in request.vars.keys(): profile = request.vars["profile"]\n  else: profile = None\n  table = []\n  raw_images = db().select(db.image.ALL)\n  i = 0\n  row = []\n  count = 0\n  images = []\n  for image in raw_images:\n      if profile != None:\n          if image.creator == profile:\n              images.append(image)\n      else: images.append(image)\n  if sort == \'views\':\n      images = sort_by_views(images)\n      images.reverse()\n  if sort == \'newest\':\n      images.sort(cmp=lambda x,y:cmp(x.id,y.id))\n      images.reverse()\n  for image in images: print image.views, image.id\n  for image in images:\n      if count >= page * 12 and page*12+12 > count:\n          if i == 4:\n              table.append(row)\n              row = []\n              i = 0\n          i += 1\n          row.append(image)\n      count += 1\n  table.append(row)\n  pages = count / 12\n  if count%12 > 0: pages += 1\n  page += 1\n  return dict(images=table, pages=pages, page=page, sort=sort, profile=profile)\n\ndef upload():\n    form = SQLFORM(db.image, fields = [\'title\', \'file\', \'newimage\', \'description\'])\n    if form.accepts(request.vars, session):\n      session.new_image_title = form.vars.title\n      db(db.image.title==session.new_image_title).update(creator = auth.user.username)\n      db(db.image.title==session.new_image_title).update(views = 0)\n      redirect(URL(r=request, f=\'index\')) \n    return dict(form=form)\n\n\ndef image():\n   images = db().select(db.image.ALL)\n   image_id = int(request.vars["image"])\n   for image in images:\n       if image.id == image_id:\n           real_image = image\n   title=real_image.title\n   if real_image == None:\n       redirect(URL(r=request, f=\'index\'))\n   if auth.is_logged_in():\n       if auth.user.username != real_image.creator:\n           views = int(real_image.views) + 1\n           db(db.image.title==real_image.title).update(views = views)\n   form = SQLFORM(db.comment, fields = [\'body\'])\n   if form.accepts(request.vars, session):\n       db(db.comment.id==form.vars.id).update(author = auth.user.username)\n       db(db.comment.id==form.vars.id).update(image_id = real_image.id)\n   comments=db().select(db.comment.ALL)\n   image_comments = []\n   for comment in comments:\n       if comment.image_id == real_image.id:\n            image_comments.append(comment)\n   return dict(image = real_image, form= form,comments=image_comments)\n   \n  \ndef testimage():\n\treturn db(db.image.title=="hellotest")\n\ndef user(): \n  return dict(form=auth())\n\ndef delete():\n   images = db().select(db.image.ALL)\n   title = request.vars["title"].replace(\'*\',\' \')\n   for image in images:\n       if image.title == title:\n           real_image = image\n   if auth.is_logged_in():\n       if auth.user.username == real_image.creator:\n           query=(db.image.id==real_image.id)\n           db(query).delete()\n   redirect(URL(r=request, f=\'index\')) \n  \n  \ndef download():\n  return response.download(request, db)\n\nresponse._vars=response._caller(index)\n'
p6
sS'traceback'
p7
S'Traceback (most recent call last):\n  File "/home/jboisture/Desktop/google_appengine/turtleartsite/gluon/restricted.py", line 178, in restricted\n    exec ccode in environment\n  File "/home/jboisture/Desktop/google_appengine/turtleartsite/applications/turtlesite/controllers/default.py", line 108, in <module>\n  File "/home/jboisture/Desktop/google_appengine/turtleartsite/gluon/globals.py", line 96, in <lambda>\n    self._caller = lambda f: f()\n  File "/home/jboisture/Desktop/google_appengine/turtleartsite/applications/turtlesite/controllers/default.py", line 30, in index\n    images = sort_by_views(images)\n  File "/home/jboisture/Desktop/google_appengine/turtleartsite/applications/turtlesite/controllers/default.py", line 5, in sort_by_views\n    return sort_by_views( [ lt for lt in L[1:] if lt.views < L[0].views ] )  +  [ L[0] ]  +  qsort( [ ge for ge in L[1:] if ge.views >= L[0].views ] )\nNameError: global name \'qsort\' is not defined\n'
p8
s.