pnbp

a terrible but reliable site builder
Log | Files | Refs | README

admin.py (1353B)


      1 import os, yaml
      2 
      3 def getPages(template,settings,name,page):
      4 	blogdb = getBlogDB(settings)
      5 	if settings['root'][-1] != "/": settings['root'] = settings['root'] + "/"
      6 	settings['pass'] = settings.get("pass",settings['root'] + "data/.htpasswd")
      7 
      8 	d = os.path.dirname(__file__)
      9 	index    = file(os.path.join(d, "data/admin/index.template")).read()
     10 	edit     = file(os.path.join(d, "data/admin/edit.template")).read()
     11 	post     = file(os.path.join(d, "data/admin/post.template")).read()
     12 	htaccess = file(os.path.join(d, "data/admin/htaccess.template")).read()
     13 
     14 	return {
     15 		"index.php":index.replace("%db%",blogdb[0][:-1]).replace("%dbn%",blogdb[1][:-1]),
     16 		"edit.php":edit,
     17 		"post.php":post.replace("%root%",settings['root']).replace("%destination%",settings['dest']),
     18 		".htaccess.raw":htaccess.replace("%pass%",settings['pass']).replace("%user%",settings['user'])
     19 	}
     20 
     21 def getBlogDB(s):
     22 	dbs = ""
     23 	dbn = ""
     24 	data = yaml.load(file("pages.yml").read())
     25 
     26 	for k,v in data.items():
     27 		for m,md in v['pagemod'].items():
     28 			if md['mod'] == "blog":
     29 				if md['settings']['data'][0:2] == "./" or md['settings']['data'][0] != "/":
     30 					if s['root'][-1] != "/": s['root'] = s['root'] + "/"
     31 					dbs = dbs + "\""+s['root']+md['settings']['data'][2:]+"\","
     32 
     33 				else:
     34 					dbs = dbs + "\""+md['settings']['data']+"\","
     35 
     36 				dbn = dbn + "\""+k+"\","
     37 
     38 	return [dbs,dbn]
     39