First beta release

This commit is contained in:
Fergal Moran
2010-10-22 19:35:37 +01:00
parent 101ea50b7e
commit dfe11d773c
13 changed files with 526 additions and 99 deletions

View File

@@ -5,6 +5,8 @@ import logging, pdb, traceback
from PdfMaker import PdfMaker
from MailInterface import MailInterface
from HtmlParser import HtmlParser
from django.utils import simplejson
class ExtensionPostHandler(webapp.RequestHandler):
def get(self):
@@ -15,17 +17,26 @@ class ExtensionPostHandler(webapp.RequestHandler):
logging.info("Creating json: " + self.request.body)
payload = simplejson.loads(self.request.body)
logging.info("Parsing url")
url = payload['pageUrl']
url = payload['pageUrl']
destination = payload['kindleAccount']
logging.info("Creating html parser")
pageSize = payload['pageSize']
logging.info("Preparing pdf. Destination: %s Page Size: %s" % (destination, pageSize))
parser = HtmlParser(url)
pageTitle = parser.Title()
pdf = PdfMaker().createFromHtml(url)
pdf = PdfMaker().createFromHtml(url, pageSize)
MailInterface().MailFile(pageTitle, destination, pdf)
jsonResult = {
'code' : '200',
'responseText' : 'PDF Generated succesfully.<br />Should show up on your Kindle soon.'
}
logging.info('JSON Result: ' + simplejson.dumps(jsonResult));
self.response.out.write(simplejson.dumps(jsonResult));
except Exception, ex:
logging.error('Error generating pdf: ' + str(ex.message))
logging.error(traceback.format_exc())
self.response.headers['Content-Type'] = 'text/html'
self.response.out.write('Something went wrong, here\'s some gibberish<br />' + str(ex.message))
self.error(500)
jsonResult = ['{"code" : "500", "responseText" : "' + traceback.format_exc() + '"}']
self.response.out.write(simplejson.dumps(jsonResult));