import datetime, os, re from bottle import error, response, route, run, static_file, template, TEMPLATE_PATH def find_gallery(name): gal = [name] if name == "Aristen": gal.append([["menu.jpg","Aristen's fancy set with bright colors and an obi belt"], ["scarf.jpg", "Newbie Aristen with her orange scarf"], ["marine.jpg","Aristen in the Epheria Marine Classic Set, a goofy marine pinup costume."]]) return gal def prepare_profile(loc, char_name): string = "" with open(loc + char_name) as f: lines = f.readlines() for line in lines: string += line return string def find_year(): now = datetime.datetime.now() return now.strftime('%Y') ## Static ## # Serve CSS @route('/static/css/') def serve_css(filename): return static_file(filename, root='static/css') # Serve images @route('/static/img/') def serve_img(filename): return static_file(filename, root='static/img') # Serve XML @route('/static/xml/') def serve_xml(filename): return static_file(filename, root='static/xml', mimetype='text/xml') ## Routes ## # Error Page @error(404) def error404(error): return "unfortunately, a 404 error. the page you're searching for doesn't exist. (or is it just in hiding?) try another page! " @error(500) def error500(error): return "unfortunately, a 500 error. something is wrong with the page you're trying to find, if it exists at all. try another page! return to blessfrey.me." @error(502) def error502(error): return "unfortunately, a 502 error. this was likely due to website maintenance. usually it'll be back up before you finish reading this, but otherwise, I'll notice something's wrong soon! return to blessfrey.me." @route('/char/') def char(char_name): """character page""" loc = 'char/' info = {'css': 'char', 'title': 'blessfrey - meet ' + char_name, 'year': find_year(), 'profile': prepare_profile(loc, char_name), 'gallery': find_gallery(char_name)} abs_app_dir_path = os.path.dirname(os.path.realpath(__file__)) abs_views_path = os.path.join(abs_app_dir_path, 'views') TEMPLATE_PATH.insert(0, abs_views_path ) return template(os.path.join(abs_views_path,'char.tpl'), info) # Blessfrey Demo Page @route('/demo') def demo(): """demo""" info = {'css': 'demo', 'title': 'blessfrey demo', 'year': find_year()} return template('demo.tpl', info) # Fashion Page @route('/diary') def diary(): """diary""" info = {'css': 'diary', 'title': 'chimchooree\'s diary', 'year': find_year()} return template('diary.tpl', info) # Fashion Page @route('/fashion') def fashion(): """fashion""" info = {'css': 'fashion', 'title': 'blessfrey fashion', 'year': find_year()} return template('fashion.tpl', info) # Home Page - Index Template @route('/') def home(): """home""" info = {'css': 'index', 'title': 'chimchooree\'s dev space - blessfrey', 'year': find_year(), 'news':[["link","website update"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"],["link2","about blessfrey rpg"]]} #list_headlines(sort_files(gather_files(loc))[0:10])} return template('index.tpl', info) # Me Page @route('/me') def me(): """me""" #"Abbey", "Aloin", "Amarr", "Angel", "Aries", "Aristen", "Bijoux", "Bell", "Bless", "Calder", "Cass", "Chandrakant", "Chloe", "Customs", "Dagmar", "Dia", "Eden", "Fifi", "Flambebe", "Freya", "Funwa", "Futura", "Havelock", "Heath", "Heather", "Helia", "Intern", "Juno", "Katherine", "Laguna", "Lise", "Lune", "Moonstone", "Nephele", "Night", "Nymph", "Rune", "Silke", "Tessa", "Una", "Winter", "WISE", "Abbey", "Aloin", "Aristen", "Bell", "Bijoux", "Bless", "Calder", "Cass", "Eponnin", "Faber", "Fifi", "Freya", "Gundrune", "Heather", "Helia", "Leslie", "Lune", "Night", "Rodolphe", "Rune", "Ryada", "Silke", "Tessa", "Tilly", "WISE" info = {'css': 'me', 'title': 'about me', 'year': find_year(), 'chars': ["Helia", "Angel", "Rune", "Tessa", "WISE", "Silke", "Calder", "Aloin", "Fifi", "Lune", "Aristen"]} return template('me.tpl', info) ## Main ## if __name__ == '__main__': run(host='127.0.0.1', port=9001)