i18n_subsites: fix HIDE_UNTRANSLATED_CONTENT

1. was removing items of an active iterator -> only first worked
2. Article inherits Page, so first check if is Article
This commit is contained in:
Ondrej Grover 2014-02-04 14:14:43 +01:00
parent 0c172ba023
commit 72b5de1af6

View File

@ -118,12 +118,12 @@ def update_generator_contents(generator, *args):
contents = generator.pages if is_pages_gen else generator.articles contents = generator.pages if is_pages_gen else generator.articles
hidden_contents = generator.hidden_pages if is_pages_gen else generator.drafts hidden_contents = generator.hidden_pages if is_pages_gen else generator.drafts
default_lang = generator.settings['DEFAULT_LANG'] default_lang = generator.settings['DEFAULT_LANG']
for content_object in contents: for content_object in contents[:]: # loop over copy for removing
if content_object.lang != default_lang: if content_object.lang != default_lang:
if isinstance(content_object, Page): if isinstance(content_object, Article):
content_object.status = 'hidden'
elif isinstance(content_object, Article):
content_object.status = 'draft' content_object.status = 'draft'
elif isinstance(content_object, Page):
content_object.status = 'hidden'
contents.remove(content_object) contents.remove(content_object)
hidden_contents.append(content_object) hidden_contents.append(content_object)
if not is_pages_gen: # regenerate categories, tags, etc. for articles if not is_pages_gen: # regenerate categories, tags, etc. for articles