From e124e1e5b4ff47c352662a13423aacbbd9c709cb Mon Sep 17 00:00:00 2001 From: Max Usachev Date: Fri, 11 Jun 2010 12:28:19 +0300 Subject: [PATCH] updated Config --- config.py | 38 +++++++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/config.py b/config.py index 4ee9db3..196e66c 100644 --- a/config.py +++ b/config.py @@ -7,7 +7,7 @@ from ConfigParser import ConfigParser CONFIG_NAME = 'config.ini' -class Config: +class MeabookConfig: def __init__(self, basedir, database): self.database = database self.cp = ConfigParser() @@ -16,41 +16,53 @@ class Config: self.new() self.cp.readfp(open(self._path)) + def __del__(self): + self.save() + + def save(self): + """Save configuration file content.""" + + self.cp.write(open(self._path, 'w')) + def new(self): """Creates default config file.""" self.cp.add_section('fields') - self.cp.set('fields', 'fields', ','.join( \ + self.cp.set('fields', 'show-fields', ','.join( \ self.database.get_fields())) - self.cp.set('fields', 'order', ','.join( \ + self.cp.set('fields', 'fields-order', ','.join( \ self.database.get_fields())) - self.cp.write(open(self._path, 'w')) + self.cp.add_section('general') + self.cp.set('general', 'last-active-level', 1) + self.save() def set_fields(self, fields): """Sets fields, that will be shown for user.""" - self.cp.set('fields', 'fields', ','.join(fields)) - self.save() + self.cp.set('fields', 'show-fields', ','.join(fields)) def get_fields(self): """Gets fields, that will be shown for user.""" - return self.cp.get('fields', 'fields').split(',') + return self.cp.get('fields', 'show-fields').split(',') def set_order(self, fields): """Sets fields order.""" - self.cp.set('fields', 'order', ','.join(fields)) - self.save() + self.cp.set('fields', 'fields-order', ','.join(fields)) def get_order(self): """Gets fields order.""" - return self.cp.get('fields', 'order').split(',') + return self.cp.get('fields', 'fields-order').split(',') - def save(self): - """Save configuration file content.""" + def get_last_active_level(self): + """Gets last active level before exit.""" - self.cp.write(open(self._path, 'w')) + return int(self.cp.get('general', 'last-active-level')) + + def set_last_active_level(self, level): + """Sets last active level before exit.""" + self.cp.set('general', 'last-active-level', level) -- 1.7.9.5