from storm.locals import *
from svgruler import SVGRuler
+ from jinja import Environment, FileSystemLoader
+ jinja_env = Environment('<%', '%>', '<%=', '%>', '<%#', '%>',
+ loader=FileSystemLoader('templates/'))
+
+ def render(filename, vars):
+ web.header("Content-Type","text/html; charset=utf-8")
+ tmpl = jinja_env.get_template(filename + '.tmpl')
+ print tmpl.render(vars)
+ web.debug(web.ctx)
+
# the url map for the application
-urls = ( '/', 'index',
+urls = ( '/?', 'index',
'/ruler_([0-9\.]+)px_([0-9\.]+)([A-Za-z]+).(svg|png|jpg)', 'ruler_img',
'/show/(.*(svg|png|jpg))', 'show_ruler',
'/gallery(.*)', 'gallery',
'/delete/(\d+)', 'delete',
'/undelete/(\d+)', 'undelete')
-database = create_database("sqlite:yourule.db")
+database = create_database("sqlite:%s/db/yourule.db" %
+ os.path.dirname(__file__))
+
store = Store(database)
class Ruler(object):
class index:
def GET(self):
- web.header("Content-Type","text/html; charset=utf-8")
- web.render('index.tmpl')
+ render('index', locals())
def POST(self):
input = web.input()
pixel_width = input['pixel_width']
unit_width = input['unit_width']
units = input['units']
- web.render('index.tmpl')
+ render('index', locals())
else:
ruler = Ruler(pixel_width = input['pixel_width'],
unit_width = input['unit_width'],
class show_ruler:
def GET(self, ruler_url, ext):
- web.debug('test test')
if web.input().has_key('fromgallery'):
fromgallery = True
else:
other_unit, other_unit_url = get_other_unit(ruler_url)
- web.header("Content-Type","text/html; charset=utf-8")
- web.render('show_ruler.tmpl')
-
+ render('show_ruler', locals())
class ruler_img:
def GET(self, pixel_width=None, unit_width=None, units=None, ext=None):
rulers = store.find(Ruler, Ruler.show == 1)
rulers.order_by(Ruler.model)
- web.render('gallery.tmpl')
+ render('gallery', locals())
def POST(self, ruler_url):
input = web.input()
rulers = store.find(Ruler, Ruler.show == 1)
rulers.order_by(Ruler.model)
- web.render('gallery.tmpl')
+ render('gallery', locals())
class delete:
def GET(self, id):
return(errormsg)
- # render the site template here so that i can use it later
- web.render('site.tmpl', None, True, 'site')
web.webapi.internalerror = web.debugerror
if __name__ == "__main__":