pantalaimon-ut/src/config.py

50 lines
1.4 KiB
Python

import configparser
import json
import logging
import os
logging.basicConfig(level=logging.DEBUG)
CONFDIR = '/home/phablet/.config/pantalaimon/'
CONFFILE = 'pantalaimon.conf'
def load():
entries = []
if os.path.exists(CONFDIR + CONFFILE):
config = configparser.ConfigParser()
config.read_file(open(CONFDIR + CONFFILE))
for instance in config.sections():
item = {'name': instance}
item['homeserver'] = config[instance].get('homeserver')
item['listenaddress'] = config[instance].get('listenaddress')
item['listenport'] = config[instance].get('listenport')
item['ignoreverification'] = config[instance].get('ignoreverification')
item['usekeyring'] = config[instance].get('usekeyring')
entries.append(item)
return entries
def save(data):
logging.debug("save config")
dataobj = json.loads(data)
config = configparser.ConfigParser()
for item in dataobj:
config[item['name']] = {}
config[item['name']]['homeserver'] = item['homeserver']
config[item['name']]['listenaddress'] = "127.0.0.1"
config[item['name']]['listenport'] = item['listenport']
config[item['name']]['ignoreverification'] = "true"
config[item['name']]['usekeyring'] = "false"
if not os.path.exists(CONFDIR):
os.makedirs(CONFDIR)
with open(CONFDIR + CONFFILE,'w') as configfile:
config.write(configfile)