Module function receive only re.match.groups as arguments, not url
[kisspi.git] / kisspi.py
1 # -*- coding: utf-8 -*-
2
3 import os
4 import sys
5 import re
6 import web
7
8 MODULES = {}
9
10 def load_modules(path='modules'):
11     global MODULES
12     sys.path += [path]
13     modules = os.listdir(path)
14     MODULES = dict([(i, __import__(i)) for i in modules])
15
16     return MODULES
17
18 def parse_url(module, path):
19     for url, function in module.urls:
20         match = re.match(url, path)
21         if match:
22             return function(), match.groups()
23     return None, None
24
25 def get_session():
26     return web.ses
27
28 def get_input(**args):
29     return web.input(**args)
30
31 def redirect(path):
32     raise web.seeother(path)