Rev1416, Remove merger permission from merged sites
This commit is contained in:
parent
e9009c5c75
commit
8cd7a63490
2 changed files with 14 additions and 7 deletions
|
@ -245,6 +245,8 @@ class SitePlugin(object):
|
|||
virtual_path = "merged-%s/%s/%s" % (merged_type, self.address, inner_path)
|
||||
|
||||
for merger_site in merged_to_merger.get(self.address, []):
|
||||
if merger_site.address == self.address:
|
||||
continue
|
||||
merger_site.fileDone(virtual_path)
|
||||
|
||||
def fileFailed(self, inner_path):
|
||||
|
@ -254,6 +256,8 @@ class SitePlugin(object):
|
|||
virtual_path = "merged-%s/%s/%s" % (merged_type, self.address, inner_path)
|
||||
|
||||
for merger_site in merged_to_merger.get(self.address, []):
|
||||
if merger_site.address == self.address:
|
||||
continue
|
||||
merger_site.fileFailed(virtual_path)
|
||||
|
||||
|
||||
|
@ -268,21 +272,25 @@ class SiteManagerPlugin(object):
|
|||
merged_to_merger = {}
|
||||
site_manager = self
|
||||
for site in self.sites.itervalues():
|
||||
# Update merged sites
|
||||
merged_type = site.content_manager.contents.get("content.json", {}).get("merged_type")
|
||||
if merged_type:
|
||||
merged_db[site.address] = merged_type
|
||||
|
||||
# Update merger sites
|
||||
for permission in site.settings["permissions"]:
|
||||
if not permission.startswith("Merger:"):
|
||||
continue
|
||||
if merged_type:
|
||||
self.log.error("Removing permission %s from %s: Merger and merged at the same time." % (permission, site.address))
|
||||
site.settings["permissions"].remove(permission)
|
||||
continue
|
||||
merger_type = permission.replace("Merger:", "")
|
||||
if site.address not in merger_db:
|
||||
merger_db[site.address] = []
|
||||
merger_db[site.address].append(merger_type)
|
||||
site_manager.sites[site.address] = site
|
||||
|
||||
# Update merged sites
|
||||
merged_type = site.content_manager.contents.get("content.json", {}).get("merged_type")
|
||||
if merged_type:
|
||||
merged_db[site.address] = merged_type
|
||||
|
||||
# Update merged to merger
|
||||
if merged_type:
|
||||
for merger_site in self.sites.itervalues():
|
||||
|
@ -292,7 +300,6 @@ class SiteManagerPlugin(object):
|
|||
merged_to_merger[site.address].append(merger_site)
|
||||
self.log.debug("Updated merger sites in %.3fs" % (time.time() - s))
|
||||
|
||||
|
||||
def load(self, *args, **kwags):
|
||||
super(SiteManagerPlugin, self).load(*args, **kwags)
|
||||
self.updateMergerSites()
|
||||
|
|
|
@ -8,7 +8,7 @@ class Config(object):
|
|||
|
||||
def __init__(self, argv):
|
||||
self.version = "0.4.0"
|
||||
self.rev = 1413
|
||||
self.rev = 1416
|
||||
self.argv = argv
|
||||
self.action = None
|
||||
self.config_file = "zeronet.conf"
|
||||
|
|
Loading…
Reference in a new issue