6 from ConfigParser import ConfigParser
8 CONFIG_NAME = 'config.ini'
11 def __init__(self, basedir, database):
12 self.database = database
13 self.cp = ConfigParser()
14 self._path = os.path.join(basedir, CONFIG_NAME)
15 if not os.path.exists(self._path):
17 self.cp.readfp(open(self._path))
23 """Save configuration file content."""
25 self.cp.write(open(self._path, 'w'))
28 """Creates default config file."""
30 self.cp.add_section('fields')
31 self.cp.set('fields', 'show-fields', ','.join( \
32 self.database.get_fields()))
33 self.cp.set('fields', 'fields-order', ','.join( \
34 self.database.get_fields()))
35 self.cp.add_section('general')
36 self.cp.set('general', 'last-active-level', 1)
39 def set_fields(self, fields):
40 """Sets fields, that will be shown for user."""
42 self.cp.set('fields', 'show-fields', ','.join(fields))
45 """Gets fields, that will be shown for user."""
47 return self.cp.get('fields', 'show-fields').split(',')
50 def set_order(self, fields):
51 """Sets fields order."""
53 self.cp.set('fields', 'fields-order', ','.join(fields))
56 """Gets fields order."""
58 return self.cp.get('fields', 'fields-order').split(',')
60 def get_last_active_level(self):
61 """Gets last active level before exit."""
63 return int(self.cp.get('general', 'last-active-level'))
65 def set_last_active_level(self, level):
66 """Sets last active level before exit."""
68 self.cp.set('general', 'last-active-level', level)