Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/errors/127.0.0.1.2010-07-22.17-39-33.02930942-2e25-4966-a9e0-c6435a26a7b2
blob: c3916362368f4db60a93f44545c78b6abf394ea0 (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\nfrom gluon.tools import Service\nservice=Service(globals())\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] ]  +  sort_by_views( [ ge for ge in L[1:] if ge.views >= L[0].views ] )\n\ndef sort_by_id(L):\n    if len(L) <= 1: return L\n    return sort_by_id( [ lt for lt in L[1:] if lt.id < L[0].id ] )  +  [ L[0] ]  +  sort_by_id( [ ge for ge in L[1:] if ge.id >= L[0].id ] )\n\n\ndef admin():\n  if "page" in request.vars.keys(): = page = int(request.vars["page"])-1\n  else: page = 0\n  users = db().select(db.auth_user.ALL)\n  users_list=[]\n  for user in users: users_list.append(users)\n  users_on_page = users_list[page*20,(page+1)*20]\n  return dict(users = users_on_page, page=page+1)\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  c = 1\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:\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\n\ndef upload():\n    upload_key = request.vars["upload_key"]\n    title = request.vars["title"]\n    form = SQLFORM(db.image, fields = [\'title\', \'file\', \'newimage\', \'description\',\'upload_key\'])\n    if form.accepts(request.vars):\n      keys = db().select(db.upload_key.ALL)\n      for key in keys:\n          if key.upload_key == upload_key:\n              db(db.image.upload_key==upload_key).update(creator = key.user)\n      query=(db.upload_key.upload_key==upload_key)\n      db(query).delete()\n    else:\n      import logging\n      logging.error("form not accepted")\n      raise HTTP(400,"failed to upload")\n    return dict(form=form)\n\n\n@service.xmlrpc\ndef login_remote(username,password):\n   logged_in = auth.login_bare(username,password)\n   if logged_in:\n      db.upload_key.insert(user=username)\n      keys = db().select(db.upload_key.ALL)\n      for key in keys:\n          if key.user == username:\n               return str(key.upload_key)\n      return False\n   else: return False\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           try:\n               views = int(real_image.views) + 1\n           except: 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\n\ndef user(): \n  return dict(form=auth())\n\n\ndef delete():\n   images = db().select(db.image.ALL)\n   image_id = int(request.vars["id"])\n   for image in images:\n       if image.id == image_id:\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\n\ndef call(): return service()\n\nresponse._vars=response._caller(admin)\n'
p6
sS'traceback'
p7
S'Traceback (most recent call last):\n  File "/home/jboisture/Desktop/google_appengine/turtleartsite/gluon/restricted.py", line 176, in restricted\n    ccode = compile2(code,layer)\n  File "/home/jboisture/Desktop/google_appengine/turtleartsite/gluon/restricted.py", line 163, in compile2\n    return compile(code.rstrip().replace(\'\\r\\n\',\'\\n\')+\'\\n\', layer, \'exec\')\n  File "/home/jboisture/Desktop/google_appengine/turtleartsite/applications/turtlesite/controllers/default.py", line 15\n    if "page" in request.vars.keys(): = page = int(request.vars["page"])-1\n                                      ^\nSyntaxError: invalid syntax\n'
p8
s.