root/config.py

Revision 5, 1.5 kB (checked in by matt_dorn@yahoo.com, 4 years ago)

abstracting the model stuff
"model" is now its own directory, also added some unit tests

Line 
1 #!/usr/bin/env python
2
3 import ConfigParser
4 import os
5
6 class Config:
7
8     def __init__(self):
9         self.parser=ConfigParser.ConfigParser()
10         self.home_dir=os.path.expanduser('~')
11         self.config_path=self.home_dir + "/.gnapsack"
12         self.url=None
13         self.token=None
14         self.db=None
15
16     def get_prefs(self):
17         if os.path.isfile(self.config_path) == 1:
18             file=open(self.config_path, "r")
19             self.parser.readfp(file)
20             if self.parser.has_section("Preferences"):
21                 self.url=self.parser.get("Preferences", "url")
22                 self.token=self.parser.get("Preferences", "token")
23                 self.db=self.parser.get("Preferences", "db")
24                 file.close()
25                 return True
26             else:
27                 file.close()
28                 return False
29         else:
30             return False
31
32     def save_prefs(self, url, token, db):
33         if os.path.isfile(self.config_path) == 0:
34             # config file created for the first time
35             new_file=True
36         else:
37             new_file=False       
38         file=open(self.config_path, "w")
39         if new_file or not self.parser.has_section("Preferences"):
40             self.parser.add_section("Preferences")
41         # add the values
42         self.parser.set("Preferences", "url", url)
43         self.url=url
44         self.parser.set("Preferences", "token", token)
45         self.token=token
46         self.parser.set("Preferences", "db", db)
47         self.db=db
48         self.parser.write(file)
49         file.close()
50        
Note: See TracBrowser for help on using the browser.