comparison manage.py @ 13:30ae685b86df

Added support for authentatication - Added `.wikirc` config file. - Added login, logout. - Added users and groups. - CLI command to generate user. - CLI command to reset the index.
author Ludovic Chabant <ludovic@chabant.com>
date Sun, 30 Dec 2012 19:57:52 -0800
parents c946f4facfa2
children 420ff74c2e28
comparison
equal deleted inserted replaced
12:ff0058feccf5 13:30ae685b86df
1 import os.path 1 import os.path
2 from flask.ext.script import Manager, Command 2 import logging
3 from wikked import app 3 from flask.ext.script import Manager, Command, prompt, prompt_pass
4 from wikked import app, wiki
5
4 6
5 manager = Manager(app) 7 manager = Manager(app)
6 8
9
7 @manager.command 10 @manager.command
8 def stats(): 11 def users():
9 """Prints some stats about the wiki.""" 12 """Lists users of this wiki."""
10 pass 13 print "Users:"
14 for user in wiki.auth.getUsers():
15 print " - " + user.username
16 print ""
17
18 @manager.command
19 def new_user():
20 """Generates the entry for a new user so you can
21 copy/paste it in your `.wikirc`.
22 """
23 username = prompt('Username: ')
24 password = prompt_pass('Password: ')
25 password = app.bcrypt.generate_password_hash(password)
26 print "[users]"
27 print "%s = %s" % (username, password)
28
29
30 @manager.command
31 def reset_index():
32 """ Re-generates the index, if search is broken
33 somehow in your wiki.
34 """
35 wiki.index.reset(wiki.getPages())
11 36
12 37
13 if __name__ == "__main__": 38 if __name__ == "__main__":
14 manager.run() 39 manager.run()
15 40