Faster site settings load

This commit is contained in:
shortcutme 2016-09-04 17:51:55 +02:00
parent 3724e0f376
commit a614545467
2 changed files with 4 additions and 5 deletions

View file

@ -32,7 +32,7 @@ import SiteManager
@PluginManager.acceptPlugins @PluginManager.acceptPlugins
class Site(object): class Site(object):
def __init__(self, address, allow_create=True): def __init__(self, address, allow_create=True, settings=None):
self.address = re.sub("[^A-Za-z0-9]", "", address) # Make sure its correct address self.address = re.sub("[^A-Za-z0-9]", "", address) # Make sure its correct address
self.address_short = "%s..%s" % (self.address[:6], self.address[-4:]) # Short address for logging self.address_short = "%s..%s" % (self.address[:6], self.address[-4:]) # Short address for logging
self.log = logging.getLogger("Site:%s" % self.address_short) self.log = logging.getLogger("Site:%s" % self.address_short)
@ -50,8 +50,7 @@ class Site(object):
self.page_requested = False # Page viewed in browser self.page_requested = False # Page viewed in browser
self.storage = SiteStorage(self, allow_create=allow_create) # Save and load site files self.storage = SiteStorage(self, allow_create=allow_create) # Save and load site files
self.loadSettings() # Load settings from sites.json self.loadSettings(settings) # Load settings from sites.json
self.content_manager = ContentManager(self) # Load contents
self.content_manager = ContentManager(self) self.content_manager = ContentManager(self)
self.content_manager.loadContents() # Load content.json files self.content_manager.loadContents() # Load content.json files
self.connection_server = None self.connection_server = None

View file

@ -31,10 +31,10 @@ class SiteManager(object):
address_found = [] address_found = []
added = 0 added = 0
# Load new adresses # Load new adresses
for address in json.load(open("%s/sites.json" % config.data_dir)): for address, settings in json.load(open("%s/sites.json" % config.data_dir)).iteritems():
if address not in self.sites and os.path.isfile("%s/%s/content.json" % (config.data_dir, address)): if address not in self.sites and os.path.isfile("%s/%s/content.json" % (config.data_dir, address)):
s = time.time() s = time.time()
self.sites[address] = Site(address) self.sites[address] = Site(address, settings=settings)
self.log.debug("Loaded site %s in %.3fs" % (address, time.time() - s)) self.log.debug("Loaded site %s in %.3fs" % (address, time.time() - s))
added += 1 added += 1
address_found.append(address) address_found.append(address)