This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
glasnost/shared/common/ArticlesCommon.py

143 lines
4.6 KiB
Python

# -*- coding: iso-8859-15 -*-
# Glasnost
# By: Odile Bénassy <obenassy@entrouvert.com>
# Romain Chantereau <rchantereau@entrouvert.com>
# Nicolas Clapiès <nclapies@easter-eggs.org>
# Pierre-Antoine Dejace <padejace@entrouvert.be>
# Thierry Dulieu <tdulieu@easter-eggs.com>
# Florent Monnier <monnier@codelutin.com>
# Cédric Musso <cmusso@easter-eggs.org>
# Frédéric Péters <fpeters@entrouvert.be>
# Benjamin Poussin <poussin@codelutin.com>
# Emmanuel Raviart <eraviart@entrouvert.com>
# Sébastien Régnier <regnier@codelutin.com>
# Emmanuel Saracco <esaracco@easter-eggs.com>
#
# Copyright (C) 2000, 2001 Easter-eggs & Emmanuel Raviart
# Copyright (C) 2002 Odile Bénassy, Code Lutin, Thierry Dulieu, Easter-eggs,
# Entr'ouvert, Frédéric Péters, Benjamin Poussin, Emmanuel Raviart,
# Emmanuel Saracco & Théridion
# Copyright (C) 2003 Odile Bénassy, Romain Chantereau, Nicolas Clapiès,
# Code Lutin, Pierre-Antoine Dejace, Thierry Dulieu, Easter-eggs,
# Entr'ouvert, Florent Monnier, Cédric Musso, Ouvaton, Frédéric Péters,
# Benjamin Poussin, Rodolphe Quiédeville, Emmanuel Raviart, Sébastien
# Régnier, Emmanuel Saracco, Théridion & Vecam
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
__doc__ = """Glasnost Articles Common Models"""
__version__ = '$Revision$'[11:-2]
from ObjectsCommon import AdminCommon, ObjectCommon, ObjectsCommonMixin
class AdminArticlesCommon(AdminCommon):
serverRole = 'articles'
class ArticleCommon(ObjectCommon):
authorsSet = None
authorsSet_kind_balloonHelp = N_('Select the author(s) of the document.')
authorsSet_kindName = 'AuthorsSet'
body = None
body_kind_balloonHelp = N_('Enter the text of the document.')
body_kind_isRequired = 1
body_kind_useCustomStorage = 1
body_kindName = 'String'
creationTime = None
creationTime_kindName = 'CreationTime'
editionTime = None
editionTime_kind_formatString = '%Y-%m-%d %H:%M'
editionTime_kind_importExport = 'from-server-only'
editionTime_kindName = 'Time'
format = 'spip'
format_kind_balloonHelp = N_(
"Select which format you want to type the contents of this "\
"document in. If you are unsure of which format to use, "\
"just select SPIP and type the document as you usually do.")
format_kind_isRequired = 1
format_kind_values = [
'docbook',
'html',
'spip',
'text',
'rst',
]
format_kindName = 'Choice'
lastEditorId = None
lastEditorId_kind_importExport = 'from-server-only'
lastEditorId_kind_serverRoles = ['people']
lastEditorId_kindName = 'Id'
modificationTime = None
modificationTime_kindName = 'ModificationTime'
readersSet = None
readersSet_kindName = 'ReadersSet'
serverRole = 'articles'
title = None
title_kind_balloonHelp = N_('Enter the title of the document.')
title_kind_isRequired = 1
title_kindName = 'String'
writersSet = None
writersSet_kindName = 'WritersSet'
def getBody(self):
return self.body
def getLabel(self):
label = self.getTitle()
if label is None:
return ''
return label
def getOrderedLayoutSlotNames(self, parentSlot = None):
slotNames = ObjectCommon.getOrderedLayoutSlotNames(
self, parentSlot = parentSlot)
slotNames += [
'title', 'format', 'body', 'creationTime', 'lastEditorId',
'editionTime', 'modificationTime', 'authorsSet', 'writersSet',
'readersSet']
return slotNames
def getTitle(self):
return self.title
class ArticlesCommonMixin(ObjectsCommonMixin):
adminClassName = 'AdminArticles'
newObjectNameCapitalized = N_('New Article')
objectClassName = 'Article'
objectName = N_('article')
objectNameCapitalized = N_('Article')
objectsName = N_('articles')
objectsNameCapitalized = N_('Articles')
serverRole = 'articles'