+ def __getitem__(self, section): #!! READ-ONLY !!
+ return {item: self.config.get(section, item) for item in self.config.options(section)}
+
+ def level(self, cmd):
+ return self.config.get('levels', cmd)
+
+ def setlevel(self, cmd, level):
+ self.config.set('levels', cmd, level)
+
+ def items(self, section='erebus'):
+ return self.config.items(section)
+
+ def get(self, section, key, default=None):
+ try:
+ return self.config.get(section, key)
+ except:
+ return default
+ def getint(self, section, key, default=0):
+ try:
+ return int(self.config.get(section, key))
+ except:
+ return default
+ def getboolean(self, section, key, default=False):
+ val = self.get(section, key, default)
+ if type(val) is bool:
+ return val
+ elif val == "0" or val.lower() == "false":
+ return False
+ else:
+ return True
+
+ def set(self, section, key, value):
+ if not self.config.has_section(section):
+ self.config.add_section(section)
+ self.config.set(section, key, str(value))
+ if self.writeout: self.write()
+
+ def delete(self, section, key):
+ if self.config.has_section(section):
+ self.config.remove_option(section, key)
+ if self.writeout: self.write()