Changeset 1262

Show
Ignore:
Timestamp:
04/17/08 13:28:29 (8 months ago)
Author:
sgillies
Message:

Move published entity folder structure over from PleiadesEntity product

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • pleiades.policy/trunk/pleiades/policy/profiles/default/workflows/pleiades_entity_workflow/definition.xml

    r1261 r1262  
    22<dc-workflow xmlns:i18n="http://xml.zope.org/namespaces/i18n" 
    33             i18n:domain="plone" 
    4              workflow_id="intranet_workflow" 
    5              title="Intranet/Extranet Workflow" 
    6              description=" 
    7 - An intranet workflow where content is only accessible if you are logged in. 
    8 - Basic states are: Internal Draft, Pending Review, Internally Published and Private. 
    9 - Also has an Externally Published state, so you can make selected content available to people outside the intranet." 
     4             workflow_id="pleiades_entity_workflow" 
     5             title="Pleiades Entity Workflow" 
     6             description="Pleiades workflow, based on Plone intranet workflow" 
    107             state_variable="review_state" 
    11              initial_state="internal
     8             initial_state="drafting
    129             i18n:attributes="title; description"> 
    1310 
     
    1714 <permission>View</permission> 
    1815 
    19  <state state_id="internal" title="Internal draft" i18n:attributes="title"> 
     16 <state state_id="drafting" title="Drafting" i18n:attributes="title"> 
    2017  <description i18n:translate=""> 
    2118    Visible to all intranet users, editable by the owner. 
    2219  </description> 
    23   <exit-transition transition_id="hide"/> 
    24   <exit-transition transition_id="publish_internally"/> 
    2520  <exit-transition transition_id="submit"/> 
    2621  <permission-map name="Access contents information" 
     
    5449  </permission-map> 
    5550 </state> 
    56  <state state_id="internally_published" title="Internally published" i18n:attributes="title"> 
    57   <description i18n:translate=""> 
    58     Published and visible to intranet users, not editable by the owner. 
    59   </description> 
    60   <exit-transition transition_id="reject"/> 
    61   <exit-transition transition_id="retract"/> 
    62   <exit-transition transition_id="publish_externally"/> 
    63   <permission-map name="Access contents information" 
    64                   acquired="False"> 
    65    <permission-role>Manager</permission-role> 
    66    <permission-role>Owner</permission-role> 
    67    <permission-role>Editor</permission-role> 
    68    <permission-role>Reader</permission-role> 
    69    <permission-role>Contributor</permission-role> 
    70    <permission-role>Member</permission-role> 
    71   </permission-map> 
    72   <permission-map name="Change portal events" 
    73                   acquired="False"> 
    74    <permission-role>Manager</permission-role> 
    75   </permission-map> 
    76   <permission-map name="Modify portal content" 
    77                   acquired="False"> 
    78    <permission-role>Manager</permission-role> 
    79   </permission-map> 
    80   <permission-map name="View" acquired="False"> 
    81    <permission-role>Manager</permission-role> 
    82    <permission-role>Owner</permission-role> 
    83    <permission-role>Editor</permission-role> 
    84    <permission-role>Reader</permission-role> 
    85    <permission-role>Contributor</permission-role> 
    86    <permission-role>Member</permission-role> 
    87   </permission-map> 
    88  </state> 
    8951 <state state_id="pending" title="Pending review" i18n:attributes="title"> 
    9052  <description i18n:translate=""> 
    9153    Waiting to be reviewed, not editable by the owner. 
    9254  </description> 
    93   <exit-transition transition_id="publish_internally"/> 
    94   <exit-transition transition_id="publish_externally"/> 
     55  <exit-transition transition_id="publish"/> 
    9556  <exit-transition transition_id="reject"/> 
    9657  <exit-transition transition_id="retract"/> 
     
    12586  </permission-map> 
    12687 </state> 
    127  <state state_id="private" title="Private" i18n:attributes="title"> 
    128   <description i18n:translate=""> 
    129     Can only be seen and edited by the owner. 
    130   </description> 
    131   <exit-transition transition_id="show_internally"/> 
    132   <permission-map name="Access contents information" 
    133                   acquired="False"> 
    134    <permission-role>Manager</permission-role> 
    135    <permission-role>Owner</permission-role> 
    136    <permission-role>Editor</permission-role> 
    137    <permission-role>Reader</permission-role> 
    138    <permission-role>Contributor</permission-role>    
    139   </permission-map> 
    140   <permission-map name="Change portal events" 
    141                   acquired="False"> 
    142    <permission-role>Manager</permission-role> 
    143    <permission-role>Owner</permission-role> 
    144    <permission-role>Editor</permission-role> 
    145   </permission-map> 
    146   <permission-map name="Modify portal content" 
    147                   acquired="False"> 
    148    <permission-role>Manager</permission-role> 
    149    <permission-role>Owner</permission-role> 
    150    <permission-role>Editor</permission-role> 
    151   </permission-map> 
    152   <permission-map name="View" acquired="False"> 
    153    <permission-role>Manager</permission-role> 
    154    <permission-role>Owner</permission-role> 
    155    <permission-role>Editor</permission-role> 
    156    <permission-role>Reader</permission-role> 
    157    <permission-role>Contributor</permission-role> 
    158   </permission-map> 
    159  </state> 
    160  <state state_id="external" title="Externally visible" i18n:attributes="title"> 
     88 <state state_id="published" title="Published" i18n:attributes="title"> 
    16189  <description i18n:translate=""> 
    16290    Visible to people outside the intranet, not editable by the owner. 
     
    184112 </state> 
    185113 
    186  <transition transition_id="hide"    new_state="private" 
    187              title="Member makes content private" 
    188              trigger="USER" 
    189              before_script="" after_script="" 
    190              i18n:attributes="title"> 
    191   <description i18n:translate=""> 
    192     Making an item private means that it will not be visible to anyone but the owner and the site administrator. 
    193   </description> 
    194   <action url="%(content_url)s/content_status_modify?workflow_action=hide" 
    195           category="workflow" 
    196           i18n:translate="">Make private</action> 
    197   <guard> 
    198    <guard-permission>Modify portal content</guard-permission> 
    199   </guard> 
    200  </transition> 
    201  <transition transition_id="publish_internally" new_state="internally_published" 
    202              title="Reviewer publishes content to internal users" 
     114 <transition transition_id="publish" new_state="published" 
     115             title="Reviewer makes content available externally" 
    203116             trigger="USER" 
    204117             before_script="" after_script="" 
     
    207120    Publishing the item makes it visible to other users. 
    208121  </description> 
    209   <action url="%(content_url)s/content_status_modify?workflow_action=publish_internally" 
    210           category="workflow" 
    211           i18n:translate="">Publish internally</action> 
    212   <guard> 
    213    <guard-permission>Review portal content</guard-permission> 
    214   </guard> 
    215  </transition> 
    216  <transition transition_id="publish_externally" new_state="external" 
    217              title="Reviewer makes content available externally" 
    218              trigger="USER" 
    219              before_script="" after_script="" 
    220              i18n:attributes="title"> 
    221   <description i18n:translate=""> 
    222     Publishing the item makes it visible to other users. 
    223   </description> 
    224   <action url="%(content_url)s/content_status_modify?workflow_action=publish_externally" 
     122  <action url="%(content_url)s/content_status_modify?workflow_action=publish" 
    225123          category="workflow" 
    226124          i18n:translate="">Publish externally</action> 
     
    229127  </guard> 
    230128 </transition> 
    231  <transition transition_id="reject"  new_state="internal
     129 <transition transition_id="reject"  new_state="drafting
    232130             title="Send back" 
    233131             trigger="USER" 
     
    244142  </guard> 
    245143 </transition> 
    246  <transition transition_id="retract" new_state="internal
     144 <transition transition_id="retract" new_state="drafting
    247145             title="Member retracts submission" 
    248146             trigger="USER" 
     
    257155  <guard> 
    258156   <guard-permission>Request review</guard-permission> 
    259   </guard> 
    260  </transition> 
    261  <transition transition_id="show_internally"    new_state="internal" 
    262              title="Member promotes content to internal draft" 
    263              trigger="USER" 
    264              before_script="" after_script="" 
    265              i18n:attributes="title"> 
    266   <description i18n:translate=""> 
    267     Promotes your private item to an internal draft. 
    268   </description> 
    269   <action url="%(content_url)s/content_status_modify?workflow_action=show_internally" 
    270           category="workflow" 
    271           i18n:translate="">Show internally</action> 
    272   <guard> 
    273    <guard-permission>Modify portal content</guard-permission> 
    274157  </guard> 
    275158 </transition> 
  • pleiades.policy/trunk/pleiades/policy/tests/test_setup.py

    r1261 r1262  
    11import unittest 
    22from pleiades.policy.tests.base import PleiadesPolicyTestCase 
     3from Products.CMFCore.utils import getToolByName 
     4 
    35 
    46class TestSetup(PleiadesPolicyTestCase): 
     7 
     8    def afterSetUp(self): 
     9        self.workflow = getToolByName(self.portal, 'portal_workflow') 
     10        self.acl_users = getToolByName(self.portal, 'acl_users') 
     11        self.types = getToolByName(self.portal, 'portal_types') 
    512     
    613    def test_portal_title(self): 
     
    1017        self.assertEquals("This is the beta portal for the Pleiades Project.", self.portal.getProperty('description')) 
    1118 
     19    def test_workflow_installed(self): 
     20        self.failUnless('pleiades_entity_workflow' in self.workflow.objectIds()) 
     21         
     22    def test_workflows_mapped(self): 
     23        self.assertEquals(('pleiades_entity_workflow',), self.workflow.getDefaultChain()) 
     24        for portal_type, chain in self.workflow.listChainOverrides(): 
     25            if portal_type in ('File', 'Image',): 
     26                self.assertEquals(('pleiades_entity_workflow',), chain) 
     27         
     28    def test_view_permisison_for_staffmember(self): 
     29        # The API of the permissionsOfRole() function sucks - it is bound too 
     30        # closely up in the permission management screen's user interface 
     31        self.failUnless('View' in [r['name'] for r in  
     32                                self.portal.permissionsOfRole('Reader') if r['selected']]) 
     33 
     34 
    1235def test_suite(): 
    1336    suite = unittest.TestSuite()