Added WITH_FUTURE_DATES settings, which if true treats future dated content as drafts.

This commit is contained in:
Jökull Sólberg Auðunsson 2011-11-26 23:23:19 +00:00
commit dc22d2b131
2 changed files with 6 additions and 3 deletions

View file

@ -2,6 +2,7 @@
from pelican.utils import slugify, truncate_html_words
from pelican.log import *
from pelican.settings import _DEFAULT_CONFIG
from datetime import datetime
from os import getenv
from sys import platform, stdin
@ -23,8 +24,6 @@ class Page(object):
self._content = content
self.translations = []
self.status = "published" # default value
local_metadata = dict(settings.get('DEFAULT_METADATA', ()))
local_metadata.update(metadata)
@ -87,7 +86,10 @@ class Page(object):
# manage status
if not hasattr(self, 'status'):
self.status = settings['DEFAULT_STATUS']
if not settings['WITH_FUTURE_DATES']:
if hasattr(self, 'date') and self.date > datetime.now():
self.status = 'draft'
# set summary
if not hasattr(self, 'summary'):
self.summary = truncate_html_words(self.content, 50)

View file

@ -21,6 +21,7 @@ _DEFAULT_CONFIG = {'PATH': None,
'PDF_GENERATOR': False,
'DEFAULT_CATEGORY': 'misc',
'FALLBACK_ON_FS_DATE': True,
'WITH_FUTURE_DATES': True,
'CSS_FILE': 'main.css',
'REVERSE_ARCHIVE_ORDER': False,
'REVERSE_CATEGORY_ORDER': False,