modified database structure
[meabook] / meabook
1 #!/usr/bin/python
2
3 import os
4 import sys
5 from optparse import OptionParser
6
7 # add meabook directory to Python path in debug mode
8 if os.path.basename(sys.argv[0]).endswith("debug"):
9     sys.path.insert(0, "../../")
10     sys.path.insert(0, "../")
11
12 from meabook.factory import app_factory
13 from meabook.config import MeabookConfig
14 from meabook.database.SQLite import SQLite
15 from meabook.controller import MeabookController
16
17 try:
18     import osso
19 except ImportError:
20     pass
21 else:
22     #SERV = osso.Context("org.maemo.meabook", version, False)
23     pass
24
25
26 def parse_command_line(argv):
27     """Parse command line options."""
28
29     parser = OptionParser(usage='%prog [options]')
30     parser.add_option('-u', '--ui', action='store', \
31         help='set user interface type', default='hildon')
32     return parser.parse_args(argv)
33
34
35 def main(argv):
36     opts, argv = parse_command_line(argv)
37
38     if 'MYDOCSDIR' in os.environ and os.path.exists(os.path.join(\
39         os.environ['MYDOCSDIR'], '.documents')):
40         basedir = os.path.join(os.environ['MYDOCSDIR'], '.documents/meabook')
41     elif os.path.exists(os.path.join(os.getcwdu(), '.meabook')):
42         basedir = os.path.abspath(os.path.join(os.getcwdu(), '.meabook'))
43     else:
44         basedir = os.path.join(os.environ['HOME'], '.meabook')
45
46     model = SQLite(basedir)
47     view = app_factory(opts.ui)
48     config = MeabookConfig(basedir, model)
49     controller = MeabookController(model, view, config)
50
51
52 if __name__ == "__main__":
53     sys.exit(main(sys.argv))