Rev1510, Fix site save without loaded SiteManager
This commit is contained in:
parent
d9bbb20743
commit
a6c4a77e13
4 changed files with 19 additions and 16 deletions
|
@ -13,8 +13,8 @@ log = logging.getLogger("ZeronamePlugin")
|
||||||
class SiteManagerPlugin(object):
|
class SiteManagerPlugin(object):
|
||||||
site_zeroname = None
|
site_zeroname = None
|
||||||
|
|
||||||
def load(self):
|
def load(self, *args, **kwargs):
|
||||||
super(SiteManagerPlugin, self).load()
|
super(SiteManagerPlugin, self).load(*args, **kwargs)
|
||||||
if not self.get(config.bit_resolver):
|
if not self.get(config.bit_resolver):
|
||||||
self.need(config.bit_resolver) # Need ZeroName site
|
self.need(config.bit_resolver) # Need ZeroName site
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ class Config(object):
|
||||||
|
|
||||||
def __init__(self, argv):
|
def __init__(self, argv):
|
||||||
self.version = "0.4.1"
|
self.version = "0.4.1"
|
||||||
self.rev = 1509
|
self.rev = 1510
|
||||||
self.argv = argv
|
self.argv = argv
|
||||||
self.action = None
|
self.action = None
|
||||||
self.config_file = "zeronet.conf"
|
self.config_file = "zeronet.conf"
|
||||||
|
|
|
@ -68,7 +68,6 @@ class Site(object):
|
||||||
self.settings["wrapper_key"] = CryptHash.random()
|
self.settings["wrapper_key"] = CryptHash.random()
|
||||||
self.log.debug("New wrapper key: %s" % self.settings["wrapper_key"])
|
self.log.debug("New wrapper key: %s" % self.settings["wrapper_key"])
|
||||||
|
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return "Site %s" % self.address_short
|
return "Site %s" % self.address_short
|
||||||
|
|
||||||
|
@ -99,8 +98,11 @@ class Site(object):
|
||||||
|
|
||||||
# Save site settings to data/sites.json
|
# Save site settings to data/sites.json
|
||||||
def saveSettings(self):
|
def saveSettings(self):
|
||||||
if not SiteManager.site_manager.get(self.address):
|
if not SiteManager.site_manager.sites:
|
||||||
|
SiteManager.site_manager.sites = {}
|
||||||
|
if not SiteManager.site_manager.sites.get(self.address):
|
||||||
SiteManager.site_manager.sites[self.address] = self
|
SiteManager.site_manager.sites[self.address] = self
|
||||||
|
SiteManager.site_manager.load(False)
|
||||||
SiteManager.site_manager.save()
|
SiteManager.site_manager.save()
|
||||||
|
|
||||||
# Max site size in MB
|
# Max site size in MB
|
||||||
|
|
|
@ -23,10 +23,10 @@ class SiteManager(object):
|
||||||
atexit.register(self.save)
|
atexit.register(self.save)
|
||||||
|
|
||||||
# Load all sites from data/sites.json
|
# Load all sites from data/sites.json
|
||||||
def load(self):
|
def load(self, cleanup=True):
|
||||||
self.log.debug("Loading sites...")
|
self.log.debug("Loading sites...")
|
||||||
from Site import Site
|
from Site import Site
|
||||||
if not self.sites:
|
if self.sites is None:
|
||||||
self.sites = {}
|
self.sites = {}
|
||||||
address_found = []
|
address_found = []
|
||||||
added = 0
|
added = 0
|
||||||
|
@ -40,6 +40,7 @@ class SiteManager(object):
|
||||||
address_found.append(address)
|
address_found.append(address)
|
||||||
|
|
||||||
# Remove deleted adresses
|
# Remove deleted adresses
|
||||||
|
if cleanup:
|
||||||
for address in self.sites.keys():
|
for address in self.sites.keys():
|
||||||
if address not in address_found:
|
if address not in address_found:
|
||||||
del(self.sites[address])
|
del(self.sites[address])
|
||||||
|
|
Loading…
Reference in a new issue