msgid ""
msgstr ""
"Project-Id-Version: 2.0 beta 1\n"
-"POT-Creation-Date: Mon Dec 15 15:35:05 2014\n"
-"PO-Revision-Date: 2014-12-15 15:41+0100\n"
+"POT-Creation-Date: Sat Feb 21 01:11:05 2015\n"
+"PO-Revision-Date: 2015-02-21 00:35+0100\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Zope 3 Developers <zope-dev@zope.org>\n"
"Language: \n"
msgstr " Change and View "
#: n/skins/content/folder_factories.pt:18
-#: n/skins/custom_generic/folder_contents.py:103
+#: n/skins/custom_generic/folder_contents.py:104
#: n/skins/custom_generic/personalize_form.pt:27
#: n/skins/generic/gruf_macros.pt:256 n/skins/generic/gruf_macros.pt:378
#: n/skins/generic/last_member_logs.pt:23
msgid "%d item moved up.%d items moved up."
msgstr "%d item moved up.%d items moved up."
-#: n/skins/custom_generic/folder_contents.py:99
+#: n/skins/custom_generic/folder_contents.py:100
#: n/skins/photo_theme/search_results_macros.pt:14
msgid "Type"
msgstr "Type"
-#: n/skins/custom_generic/folder_contents.py:107
+#: n/skins/custom_generic/folder_contents.py:108
msgid "Last Modified"
msgstr "Last Modified"
-#: n/skins/custom_generic/folder_contents.py:117
+#: n/skins/custom_generic/folder_contents.py:112
+msgid "State"
+msgstr "State"
+
+#: n/skins/custom_generic/folder_contents.py:122
msgid "Set Sorting as Default"
msgstr "Set Sorting as Default"
msgid "byline"
msgstr "modified on ${date} at ${time} – creator: ${creator}"
-#: n/skins/generic/content_depublish_form.pt:8
-msgid "Depublish: \"${docTitle}\""
-msgstr "Depublish: \"${docTitle}\""
-
-#: n/skins/generic/content_depublish_form.pt:10
-msgid "depublish_transition_explanations"
-msgstr ""
-
-#: n/skins/generic/content_depublish_form.pt:15
-msgid "Select the destination state"
-msgstr "Select the destination state"
-
-#: n/skins/generic/content_depublish_form.pt:18
-msgid "Private"
-msgstr "Private"
-
-#: n/skins/generic/content_depublish_form.pt:22
-msgid "Shared"
-msgstr "Shared"
-
-#: n/skins/generic/content_depublish_form.pt:26
-msgid "Depublish"
-msgstr "Depublish"
-
#: n/skins/generic/content_make_private_form.pt:10
msgid "Make private: \"${docTitle}\""
msgstr "Make private: \"${docTitle}\""
msgstr ""
#: n/skins/generic/content_make_private_form.pt:16
+#: n/skins/generic/content_reject_form.pt:25
msgid "Make private"
msgstr "Make private"
msgstr "Publish"
#: n/skins/generic/content_reject_form.pt:8
-msgid "Reject: \"${objectid}\""
-msgstr "Reject: \"${objectid}\""
+msgid "Make private: \"${objectid}\""
+msgstr "Make private: \"${objectid}\""
#: n/skins/generic/content_reject_form.pt:9
-msgid "reject_transition_explanations"
+msgid "Make this item private to disable public access"
msgstr ""
-#: n/skins/generic/content_reject_form.pt:25
-#: n/skins/generic/pending_members.pt:30
-msgid "Reject"
-msgstr "Reject"
-
#: n/skins/generic/content_retract_form.pt:8
msgid "Retract: \"${objectid}\""
msgstr "Retract: \"${objectid}\""
msgid "Email"
msgstr "Email"
+#: n/skins/generic/pending_members.pt:30
+msgid "Reject"
+msgstr "Reject"
+
#: n/skins/generic/pending_members.pt:35
msgid "Register"
msgstr "Register"
msgid "This item has not had any status changes."
msgstr "This item has not had any status changes."
+#: n/skins/generic/wf_redirect.py:12
+msgid "You are not allowed to change this content state."
+msgstr "You are not allowed to change this content state."
+
#: n/skins/generic/widgets.pt:32 n/skins/generic/widgets.pt:33
msgid "Edit metadata"
msgstr "Edit metadata"
msgid "Configure portal"
msgstr "Configure portal"
+#~ msgid "Depublish: \"${docTitle}\""
+#~ msgstr "Depublish: \"${docTitle}\""
+
+#~ msgid "Select the destination state"
+#~ msgstr "Select the destination state"
+
+#~ msgid "Private"
+#~ msgstr "Private"
+
+#~ msgid "Shared"
+#~ msgstr "Shared"
+
+#~ msgid "Depublish"
+#~ msgstr "Depublish"
+
+#~ msgid "Reject: \"${objectid}\""
+#~ msgstr "Reject: \"${objectid}\""
+
#~ msgid "Configure Solr delegated indexes"
#~ msgstr "Configure Solr delegated indexes"
msgstr " Changer et voir "
#: n/skins/content/folder_factories.pt:18
-#: n/skins/custom_generic/folder_contents.py:103
+#: n/skins/custom_generic/folder_contents.py:104
#: n/skins/custom_generic/personalize_form.pt:27
#: n/skins/generic/gruf_macros.pt:256 n/skins/generic/gruf_macros.pt:378
#: n/skins/generic/last_member_logs.pt:23
msgid "%d item moved up.%d items moved up."
msgstr "%d élément déplacé vers le haut.%d éléments déplacés vers le haut."
-#: n/skins/custom_generic/folder_contents.py:99
+#: n/skins/custom_generic/folder_contents.py:100
#: n/skins/photo_theme/search_results_macros.pt:14
msgid "Type"
msgstr "Type"
-#: n/skins/custom_generic/folder_contents.py:107
+#: n/skins/custom_generic/folder_contents.py:108
msgid "Last Modified"
msgstr "Modifié le"
-#: n/skins/custom_generic/folder_contents.py:117
+#: n/skins/custom_generic/folder_contents.py:112
+msgid "State"
+msgstr "État"
+
+#: n/skins/custom_generic/folder_contents.py:122
msgid "Set Sorting as Default"
msgstr "Définir comme tri par défaut"
msgid "byline"
msgstr "modifié le ${date} à ${time} – créateur : ${creator}"
-#: n/skins/generic/content_depublish_form.pt:8
-msgid "Depublish: \"${docTitle}\""
-msgstr "Dépublier : « ${docTitle} »"
-
-#: n/skins/generic/content_depublish_form.pt:10
-msgid "depublish_transition_explanations"
-msgstr ""
-"La dépublication de ce document annulera son partage entre tout les membres "
-"du site et permettra à son créateur de le modifier à nouveau. Vous devez "
-"choisir quel sera l'état de destination pour effectuer l'opération."
-
-#: n/skins/generic/content_depublish_form.pt:15
-msgid "Select the destination state"
-msgstr "Sélectionnez l'état de destination"
-
-#: n/skins/generic/content_depublish_form.pt:18
-msgid "Private"
-msgstr "Privé"
-
-#: n/skins/generic/content_depublish_form.pt:22
-msgid "Shared"
-msgstr "Partagé"
-
-#: n/skins/generic/content_depublish_form.pt:26
-msgid "Depublish"
-msgstr "Dépublier"
-
#: n/skins/generic/content_make_private_form.pt:10
msgid "Make private: \"${docTitle}\""
msgstr "Rendre privé : « ${docTitle} »"
"même ainsi que les coordonnateurs."
#: n/skins/generic/content_make_private_form.pt:16
+#: n/skins/generic/content_reject_form.pt:25
msgid "Make private"
msgstr "Rendre privé"
msgstr "Publier"
#: n/skins/generic/content_reject_form.pt:8
-msgid "Reject: \"${objectid}\""
-msgstr "Rejeter : « ${objectid} »"
+msgid "Make private: \"${objectid}\""
+msgstr "Rendre privé : « ${objectid} »"
#: n/skins/generic/content_reject_form.pt:9
-msgid "reject_transition_explanations"
-msgstr ""
-"Rejeter la publication de ce document pour que son propriétaire puisse "
-"continuer à travailler."
-
-#: n/skins/generic/content_reject_form.pt:25
-#: n/skins/generic/pending_members.pt:30
-msgid "Reject"
-msgstr "Rejeter"
+msgid "Make this item private to disable public access"
+msgstr "Rendre cet élément privé pour désactiver l'accès public."
#: n/skins/generic/content_retract_form.pt:8
msgid "Retract: \"${objectid}\""
msgid "Email"
msgstr "E-mail"
+#: n/skins/generic/pending_members.pt:30
+msgid "Reject"
+msgstr "Rejeter"
+
#: n/skins/generic/pending_members.pt:35
msgid "Register"
msgstr "Inscrire"
msgid "This item has not had any status changes."
msgstr "Cet élément n'a pas encore eu de changement d'état."
+#: n/skins/generic/wf_redirect.py:12
+msgid "You are not allowed to change this content state."
+msgstr "Vous n'êtes pas autorisé à changer l'état de ce contenu."
+
#: n/skins/generic/widgets.pt:32 n/skins/generic/widgets.pt:33
msgid "Edit metadata"
msgstr "Éditer les métadonnées"
msgid "Configure portal"
msgstr "Configurer portail"
+#~ msgid "Depublish: \"${docTitle}\""
+#~ msgstr "Dépublier : « ${docTitle} »"
+
+#~ msgid "depublish_transition_explanations"
+#~ msgstr ""
+#~ "La dépublication de ce document annulera son partage entre tout les "
+#~ "membres du site et permettra à son créateur de le modifier à nouveau. "
+#~ "Vous devez choisir quel sera l'état de destination pour effectuer "
+#~ "l'opération."
+
+#~ msgid "Select the destination state"
+#~ msgstr "Sélectionnez l'état de destination"
+
+#~ msgid "Private"
+#~ msgstr "Privé"
+
+#~ msgid "Shared"
+#~ msgstr "Partagé"
+
+#~ msgid "Depublish"
+#~ msgstr "Dépublier"
+
+#~ msgid "Reject: \"${objectid}\""
+#~ msgstr "Rejeter : « ${objectid} »"
+
+#~ msgid "reject_transition_explanations"
+#~ msgstr ""
+#~ "Rejeter la publication de ce document pour que son propriétaire puisse "
+#~ "continuer à travailler."
+
#~ msgid "Configure Solr delegated indexes"
#~ msgstr "Configurer les index délégués à Solr"
msgid ""
msgstr ""
"Project-Id-Version: 2.0 beta 1\n"
-"POT-Creation-Date: Mon Dec 15 15:39:47 2014\n"
+"POT-Creation-Date: Sat Feb 21 01:11:05 2015\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Zope 3 Developers <zope-dev@zope.org>\n"
msgstr ""
#: n/skins/content/folder_factories.pt:18
-#: n/skins/custom_generic/folder_contents.py:103
+#: n/skins/custom_generic/folder_contents.py:104
#: n/skins/custom_generic/personalize_form.pt:27
#: n/skins/generic/gruf_macros.pt:256
#: n/skins/generic/gruf_macros.pt:378
msgid "%d item moved up.%d items moved up."
msgstr ""
-#: n/skins/custom_generic/folder_contents.py:99
+#: n/skins/custom_generic/folder_contents.py:100
#: n/skins/photo_theme/search_results_macros.pt:14
msgid "Type"
msgstr ""
-#: n/skins/custom_generic/folder_contents.py:107
+#: n/skins/custom_generic/folder_contents.py:108
msgid "Last Modified"
msgstr ""
-#: n/skins/custom_generic/folder_contents.py:117
+#: n/skins/custom_generic/folder_contents.py:112
+msgid "State"
+msgstr ""
+
+#: n/skins/custom_generic/folder_contents.py:122
msgid "Set Sorting as Default"
msgstr ""
msgid "byline"
msgstr ""
-#: n/skins/generic/content_depublish_form.pt:8
-msgid "Depublish: \"${docTitle}\""
-msgstr ""
-
-#: n/skins/generic/content_depublish_form.pt:10
-msgid "depublish_transition_explanations"
-msgstr ""
-
-#: n/skins/generic/content_depublish_form.pt:15
-msgid "Select the destination state"
-msgstr ""
-
-#: n/skins/generic/content_depublish_form.pt:18
-msgid "Private"
-msgstr ""
-
-#: n/skins/generic/content_depublish_form.pt:22
-msgid "Shared"
-msgstr ""
-
-#: n/skins/generic/content_depublish_form.pt:26
-msgid "Depublish"
-msgstr ""
-
#: n/skins/generic/content_make_private_form.pt:10
msgid "Make private: \"${docTitle}\""
msgstr ""
msgstr ""
#: n/skins/generic/content_make_private_form.pt:16
+#: n/skins/generic/content_reject_form.pt:25
msgid "Make private"
msgstr ""
msgstr ""
#: n/skins/generic/content_reject_form.pt:8
-msgid "Reject: \"${objectid}\""
+msgid "Make private: \"${objectid}\""
msgstr ""
#: n/skins/generic/content_reject_form.pt:9
-msgid "reject_transition_explanations"
-msgstr ""
-
-#: n/skins/generic/content_reject_form.pt:25
-#: n/skins/generic/pending_members.pt:30
-msgid "Reject"
+msgid "Make this item private to disable public access"
msgstr ""
#: n/skins/generic/content_retract_form.pt:8
msgid "Email"
msgstr ""
+#: n/skins/generic/pending_members.pt:30
+msgid "Reject"
+msgstr ""
+
#: n/skins/generic/pending_members.pt:35
msgid "Register"
msgstr ""
msgid "This item has not had any status changes."
msgstr ""
+#: n/skins/generic/wf_redirect.py:12
+msgid "You are not allowed to change this content state."
+msgstr ""
+
#: n/skins/generic/widgets.pt:32
#: n/skins/generic/widgets.pt:33
msgid "Edit metadata"
kw.update(REQUEST.form)
try :
- target = context.getActionInfo('object/history')['url']
+ target = context.getParentNode().getActionInfo('object/view')['url']
except ValueError :
target = context.getActionInfo('object/view')['url']
from Products.CMFDefault.permissions import ManageProperties
from Products.CMFDefault.permissions import ViewManagementScreens
from Products.CMFDefault.permissions import ModifyPortalContent
-from Products.CMFDefault.utils import html_marshal, Message as _
+from Products.CMFDefault.utils import html_marshal#, Message as _
+from Products.Plinn.utils import Message as _
mtool = getToolByName(script, 'portal_membership')
checkPermission = mtool.checkPermission
'title': _('Last Modified'),
'width': None,
'colspan': None}
+ , {'key': 'review_state',
+ 'title': _('State'),
+ 'width': None,
+ 'colspan': None}
)
for column in columns:
'modified': item.modified.strftime(locale_date_fmt),
'title_or_id': item.Title or item_id,
'type': item.Type or None,
+ 'state': item.review_state,
'url': item_url } )
options['batch'] = { 'listColumnInfos': tuple(columns),
<legend i18n:translate="">Notify by e-mail</legend>
<div tal:repeat="member creators" tal:omit-tag="">
<label>
- <input type="checkbox" name="recipients:list" value="membre" tal:attributes="value member/id" checked="checked" />
+ <input type="checkbox" name="recipients:list" value="membre" tal:attributes="value member/id"/>
<span tal:replace="member/getMemberFullName">membre</span>
</label><br/>
</div>
<body>
<div metal:fill-slot="main" i18n:domain="plinn">
-<h2 i18n:translate="">Reject: "<span tal:replace="here/title_or_id" i18n:name="objectid">Item</span>"</h2>
- <div i18n:translate="reject_transition_explanations">reject_transition_explanations</div>
+<h2 i18n:translate="">Make private: "<span tal:replace="here/title_or_id" i18n:name="objectid">Item</span>"</h2>
+ <div i18n:translate="">Make this item private to disable public access</div>
</div>
<form action="dummy">
<legend i18n:translate="">Notify by e-mail</legend>
<div tal:repeat="member python:here.getAllMembersInRole('Owner')" tal:omit-tag="">
<label>
- <input type="checkbox" name="recipients:list" value="membre" tal:attributes="value member/id" checked="checked" />
+ <input type="checkbox" name="recipients:list" value="membre" tal:attributes="value member/id" />
<span tal:replace="member/getMemberFullName">Membre full name</span>
</label><br/>
</div>
</fieldset>
<input type="hidden" name="workflow_action" value="reject" />
- <input type="submit" value="Reject" i18n:attributes="value" />
+ <input type="submit" value="Make private" i18n:attributes="value" />
</div>
</form>
</body>
<td>
<span tal:replace="item_info/modified">2001</span>
</td>
+ <td>
+ <a tal:attributes="href string:${item_info/url}/wf_redirect"
+ tal:content="item_info/state"i18n:translate="">pending</a>
+ </td>
</tr>
</tbody>
</tbody>
##parameters=ob
from Products.CMFCore.utils import getUtilityByInterfaceName
utool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IURLTool')
+wftool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IWorkflowTool')
locale_date_fmt = context.locale_date_fmt()
infos = {'checkbox' : True,
'url' : ob.absolute_url(),
'position' : context.getObjectPosition(ob.getId()),
'type' : ob.Type() or None,
'id' : ob.getId(),
- 'icon': '%s/%s' % (utool(), ob.getIcon())}
+ 'icon': '%s/%s' % (utool(), ob.getIcon()),
+ 'state' : wftool.getInfoFor(ob, 'review_state')}
return context.folder_jsupload_snippet_template(listItemInfos=[infos])
\ No newline at end of file
--- /dev/null
+##parameters=
+from Products.Plinn.utils import listWorkflowActions
+
+actions = listWorkflowActions(context)
+redirect = context.REQUEST.RESPONSE.redirect
+if actions :
+ return redirect(actions[0]['url'])
+else :
+ from ZTUtils import make_query as mq
+ from Products.Plinn.utils import transtlate as _
+ return redirect('%s?%s' % (actions[0]['url'],
+ mq(portal_status_message = _('You are not allowed to change this content state.'))))
\ No newline at end of file
#! /bin/sh
-i18nextract --path . --site_zcml ../../etc/site.zcml --domain plinn -o locales
+i18nextract --path . --site_zcml /export/zope_instances/jma/etc/site.zcml --domain plinn -o locales
cat locales/plinn.pot locales/plinn-manual.pot > locales/plinn-all.pot
mv locales/plinn-all.pot locales/plinn.pot
except BadRequest :
return False
-security.declarePublic('listActionProviders_')
-def listActionProviders_(context) :
- atool = getToolByName(context, 'portal_actions')
- return atool.listActionProviders()
+security.declarePublic('listWorkflowActions')
+def listWorkflowActions(context) :
+ wftool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IWorkflowTool')
+ return wftool.listActions(object=context)
def capitalizeCompoundGivenName(givenName) :
givenName = givenName.strip()