def show(id): try: item = store[int(id)] except (ValueError, KeyError): return redirect('/', 302) owner = bool(request.get_cookie('edit-%s' % id, '', secret=SECRET)) lexer = request.GET.get('as') or item['lexer'] if lexer == 'ansi': item['html'] = ansi2html(item['raw']) elif lexer == 'json' and 'pretty' in request.GET: try: data = json.dumps(json.loads(item['raw']), sort_keys=True, indent=4) item['html'] = highlight(data, lexer)[0] except ValueError: pass elif lexer != item['lexer']: item['html'] = highlight(item['raw'], lexer)[0] return template('show', item=item, owner=owner, lexer=lexer, lexers=lexerlist(), date=fromepoch(item.get('date', 0)))
def paste(item, data, lexer): '''actually store data''' response.set_cookie('lexer', lexer, **COOKIE) response.set_cookie('edit-%s' % item.id, item.id, secret=SECRET, **COOKIE) item['raw'] = data result, lexer = highlight(data, lexer) item['lexer'] = lexer item['html'] = result item['date'] = toepoch(dt.now()) item.save()
def show(id): try: item = store[int(id)] except (ValueError, KeyError): return redirect('/', 302) owner = bool(request.get_cookie('edit-%s' % id, '', secret=SECRET)) lexername = request.GET.get('as') or item['lexer'] lexer = lexers.get_lexer_by_name(lexername) if 'pretty' in request.GET and lexer.name == 'JSON': try: data = json.dumps(json.loads(item['raw']), sort_keys=True, indent=4) item['html'] = highlight(data, lexer)[0] except ValueError: pass elif lexername != item['lexer']: item['html'] = highlight(item['raw'], lexer)[0] return template('show', item=item, owner=owner, lexer=lexer, lexers=lexerlist(), date=fromepoch(item.get('date', 0)))
def regenerate(): for k in store: with store[k] as i: i['html'] = highlight(i['raw'], i['lexer'])[0]