Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/errors/127.0.0.1.2010-07-26.20-48-09.a4d32305-5768-49d6-8707-d1030c2cbcfb
diff options
context:
space:
mode:
Diffstat (limited to 'errors/127.0.0.1.2010-07-26.20-48-09.a4d32305-5768-49d6-8707-d1030c2cbcfb')
-rw-r--r--errors/127.0.0.1.2010-07-26.20-48-09.a4d32305-5768-49d6-8707-d1030c2cbcfb17
1 files changed, 17 insertions, 0 deletions
diff --git a/errors/127.0.0.1.2010-07-26.20-48-09.a4d32305-5768-49d6-8707-d1030c2cbcfb b/errors/127.0.0.1.2010-07-26.20-48-09.a4d32305-5768-49d6-8707-d1030c2cbcfb
new file mode 100644
index 0000000..843af4b
--- /dev/null
+++ b/errors/127.0.0.1.2010-07-26.20-48-09.a4d32305-5768-49d6-8707-d1030c2cbcfb
@@ -0,0 +1,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\nimport pickle\nfrom gluon.tools import Service\nservice=Service(globals())\n\n@auth.requires_membership(\'admin\')\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:\n users_list.append(user)\n users_list.sort(cmp=lambda x,y:cmp(x.username.lower(),y.username.lower()))\n users_on_page = users_list[page*10:(page+1)*10]\n pages = len(users_list) / 10\n if len(users_list)%10 > 0: pages += 1\n return dict(users = users_on_page, page=page+1,pages=pages)\n\n@auth.requires_membership(\'admin\')\ndef make_admin():\n if "page" in request.vars.keys(): page = int(request.vars["page"])\n else: page = 1\n if "user" in request.vars.keys(): user = request.vars["user"]\n else: redirect(URL(r=request, f="admin?page="+str(page)))\n auth.add_membership(\'admin\',user)\n redirect(URL(r=request, f="admin?page="+str(page)))\n\n@auth.requires_membership(\'admin\')\ndef remove_admin():\n if "page" in request.vars.keys(): page = int(request.vars["page"])\n else: page = 1\n if "user" in request.vars.keys(): user = request.vars["user"]\n else: redirect(URL(r=request, f="admin?page="+str(page)))\n auth.del_membership(auth.id_group(\'admin\'),user)\n redirect(URL(r=request, f="admin?page="+str(page)))\n\n@auth.requires_membership(\'admin\')\ndef delete_user():\n if "page" in request.vars.keys(): page = int(request.vars["page"])\n else: page = 1\n if "user" in request.vars.keys(): user_to_delete = request.vars["user"]\n else: redirect(URL(r=request, f="admin?page="+str(page)))\n query=(db.auth_user.username==user_to_delete)\n db(query).delete()\n images = db().select(db.image.ALL)\n for image in images:\n if image.creator == user_to_delete:\n query=(db.image.id==image.id)\n db(query).delete()\n comments = db().select(db.comment.ALL)\n for comment in comments:\n if comment.author == user_to_delete:\n query=(db.comment.id==comment.id)\n db(query).delete()\n redirect(URL(r=request, f="admin?page="+str(page))) \n \n\n\ndef index():\n import pdb\n pdb.set_trace()\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 if "favorites" in request.vars.keys(): show_favorites = bool(request.vars["favorites"])\n else: show_favorites = False\n profile_user = None\n favorites = None\n if profile != None:\n users = db().select(db.auth_user.ALL)\n for user in users:\n if user.username == profile:\n profile_user = user\n favorites = pickle.loads(profile_user.favorites)\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 show_favorites:\n if image.id in favorites:\n images.append(image)\n if not show_favorites:\n if image.creator == profile:\n images.append(image)\n else: images.append(image)\n if sort == \'views\':\n images.sort(cmp=lambda x,y:cmp(float(x.views),float(y.views)))\n images.reverse()\n if sort == \'newest\':\n images.sort(cmp=lambda x,y:cmp(float(x.id),float(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_user, show_favorites=show_favorites)\n\n\ndef profile():\n if "profile" in request.vars.keys(): profile = request.vars["profile"]\n else: redirect(URL(r=request,f=\'index\'))\n users = db().select(db.auth_user.ALL)\n for user in users:\n if user.username == profile:\n profile_user = user\n favorite_ids = pickle.loads(profile_user.favorites)\n raw_images = db().select(db.image.ALL)\n images = []\n favorites = []\n for image in raw_images:\n if image.creator == profile:\n images.append(image)\n if image.id in favorite_ids:\n favorites.append(image)\n favorites_table = []\n images_table = []\n row = []\n c = 0\n i = 0\n for image in images:\n if c < 2:\n row.append(image)\n i += 1\n if i == 4:\n images_table.append(row)\n c += 1\n i = 0\n row = []\n if len(images) < 8 and len(images)%4 != 0:\n images_table.append(row)\n row = []\n c = 0\n i = 0\n for image in favorites:\n if c < 2:\n row.append(image)\n i += 1\n if i == 4:\n favorites_table.append(row)\n c += 1\n i = 0\n row = []\n if len(favorites) < 8 and len(favorites)%4 != 0:\n favorites_table.append(row)\n return dict(profile = profile_user, images = images_table, favorites = favorites_table)\n\ndef respond_to_request():\n if "user" in request.vars.keys() and auth.is_logged_in(): username = request.vars["user"]\n else: redirect(URL(r=request,f=\'index\'))\n if "response" in request.vars.keys(): response = bool(request.vars["user"])\n else: redirect(URL(r=request,f=\'index\'))\n users = db().select(db.auth_user.ALL)\n current_user = None\n user_to_add = None\n for user in users:\n if user.username == auth.user.username:\n current_user = user\n if user.username == username:\n user_to_add = user\n if user_to_add == None or current_user == None:\n redirect(URL(r=request,f=\'index\'))\n requests = pickle.loads(current_user.requests)\n real_request = None\n for r in requests:\n if r[1] == user_to_add.username:\n real_request = r\n if real_request == None:redirect(URL(r=request,f=\'index\'))\n requests.remove(real_request)\n db(db.auth_user.username==current_user.username).update(requests = pickle.dumps(requests))\n if response:\n friends = pickle.loads(current_user.friends)\n friends.append(user_to_add.username)\n db(db.auth_user.username==current_user.username).update(friends = pickle.dumps(friends))\n friends = pickle.loads(user_to_add.friends)\n friends.append(current_user.username)\n db(db.auth_user.username==user_to_add.username).update(friends = pickle.dumps(friends))\n redirect(URL(r=request,f=\'requests\'))\n \n \n \n \ndef add_as_friend():\n if "user" in request.vars.keys() and auth.is_logged_in(): username = request.vars["user"]\n else: redirect(URL(r=request,f=\'index\'))\n users = db().select(db.auth_user.ALL)\n for user in users:\n if user.username == username:\n user_to_add = user\n requests = pickle.loads(user_to_add.requests)\n requests.append((\'friend\', auth.user.username))\n db(db.auth_user.username==user_to_add.username).update(requests = pickle.dumps(requests))\n redirect(URL(r=request,f=\'profile?profile=\'+username))\n\n\ndef requests():\n if auth.is_logged_in(): user = auth.user\n else: redirect(URL(r=request,f=\'index\'))\n users = db().select(db.auth_user.ALL)\n for user in users:\n if user.username == auth.user.username:\n current_user = user\n requests = pickle.loads(current_user.requests)\n return dict(requests = requests)\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\',\'small_image\', \'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 user = key.user\n db(db.image.upload_key==upload_key).update(creator = user)\n query=(db.upload_key.upload_key==upload_key)\n db(query).delete()\n images = db().select(db.image.ALL)\n for image in images:\n if image.id == form.vars.id:\n real_image = image\n images = db().select(db.image.ALL)\n for image in images:\n if image.creator == user and image.title.lower() == form.vars.title.lower() and image.upload_key != upload_key:\n db(db.image.upload_key==upload_key).update(views = image.views)\n query=(db.image.id==image.id)\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"""def 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 remove_as_favorite():\n if "id" in request.vars.keys(): image_id = int(request.vars["id"])\n else: redirect(URL(r=request,f=\'index\'))\n if auth.is_logged_in():\n images = db().select(db.image.ALL)\n for image in images:\n if image.id == image_id:\n favorite_users = pickle.loads(image.favorite_users)\n if auth.user.username in favorite_users:\n favorite_users.remove(auth.user.username)\n db(db.image.id==image_id).update(favorite_users = pickle.dumps(favorite_users))\n users = db().select(db.auth_user.ALL)\n for user in users:\n if user.username == auth.user.username:\n favorites = pickle.loads(user.favorites)\n if image_id in favorites:\n favorites.remove(image_id)\n db(db.auth_user.username==auth.user.username).update(favorites = pickle.dumps(favorites))\n redirect(URL(r=request, f=\'image?image=\'+str(image_id)))\n\n\ndef add_as_favorite():\n if "id" in request.vars.keys(): image_id = int(request.vars["id"])\n else: redirect(URL(r=request,f=\'index\'))\n if auth.is_logged_in():\n images = db().select(db.image.ALL)\n for image in images:\n if image.id == image_id:\n favorite_users = pickle.loads(image.favorite_users)\n if auth.user.username not in favorite_users:\n favorite_users.append(auth.user.username)\n db(db.image.id==image_id).update(favorite_users = pickle.dumps(favorite_users))\n users = db().select(db.auth_user.ALL)\n for user in users:\n if user.username == auth.user.username:\n favorites = pickle.loads(user.favorites)\n if image_id not in favorites:\n favorites.append(image_id)\n db(db.auth_user.username==auth.user.username).update(favorites = pickle.dumps(favorites))\n redirect(URL(r=request, f=\'image?image=\'+str(image_id)))\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 users = db().select(db.auth_user.ALL)\n favorite_users = pickle.loads(real_image.favorite_users)\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,favorites = favorite_users)\n\n \ndef testimage():\n\treturn db(db.image.title=="hellotest")\n\n\ndef user(): \n return dict(form=auth())\n\n@auth.requires_membership(\'admin\')\ndef delete_comment():\n comment_id = int(request.vars["id"])\n if "image" in request.vars.keys():\n image_id = request.vars["image"]\n else:image_id = None\n if auth.is_logged_in():\n if auth.has_membership(\'admin\'):\n query=(db.comment.id==comment_id)\n db(query).delete()\n if image_id != None:\n redirect(URL(r=request, f=\'image?image=\'+image_id))\n else:\n redirect(URL(r=request, f=\'index\'))\n\ndef delete_image():\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 or auth.has_membership(\'admin\'):\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(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 411, in <module>\n if image_id != None:\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 63, in index\n else: page = 0\n File "/home/jboisture/Desktop/google_appengine/turtleartsite/applications/turtlesite/controllers/default.py", line 63, in index\n else: page = 0\n File "/usr/lib/python2.6/bdb.py", line 46, in trace_dispatch\n return self.dispatch_line(frame)\n File "/usr/lib/python2.6/bdb.py", line 65, in dispatch_line\n if self.quitting: raise BdbQuit\nBdbQuit\n'
+p8
+s. \ No newline at end of file