Ignore:
Timestamp:
23.07.2010 23:00:24 (22 months ago)
Author:
zmsdev
Message:

Added support for access-nodes to actions.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ZMS/trunk/_metacmdmanager.py

    r898 r1123  
    3737# ------------- 
    3838 
    39 dtmlMethodExampleCode = \ 
     39dtmlMethodWithExecExampleCode = \ 
    4040  '<dtml-comment>\n' + \ 
    4141  '# Example code:\n' + \ 
     
    4444  '<dtml-call expr="REQUEST.set(\'message\',\'This is %s\'%meta_type)">\n' + \ 
    4545  '<dtml-return message>\n' + \ 
     46  '' 
     47 
     48dtmlMethodWithoutExecExampleCode = \ 
     49  '<dtml-comment>\n' + \ 
     50  '# Example code:\n' + \ 
     51  '</dtml-comment>\n' + \ 
     52  '\n' + \ 
     53  '<dtml-var manage_page_header>\n' + \ 
     54  '<head>\n' + \ 
     55  ' <title>$$NAME$$</title>\n' + \ 
     56  '</head>\n' + \ 
     57  '<dtml-var "manage_tabs(_,_,my_manage_options=[{\'label\':\'$$NAME$$\',\'action\':\'\'}])">\n' + \ 
     58  '<dtml-var f_bo_area>\n' + \ 
     59  '<dtml-var f_bo_area>\n' + \ 
     60  '<dtml-var manage_page_header>\n' + \ 
    4661  '' 
    4762 
     
    107122    newMetaTypes = item['meta_types'] 
    108123    newRoles = item['roles'] 
     124    newNodes = item.get('nodes','{$}') 
    109125    newData = item['data'] 
    110126 
    111127    # Return with new id. 
    112     return setMetacmd(self, None, newId, newAcquired, newName, newMethod, newData, newExec, newDescription, \ 
    113                newMetaTypes, newRoles, zms_system) 
     128    return setMetacmd(self, None, newId, newAcquired, newName, newMethod, \ 
     129      newData, newExec, newDescription, newMetaTypes, newRoles, newNodes, \ 
     130      zms_system) 
    114131 
    115132 
     
    159176def setMetacmd(self, id, newId, newAcquired, newName='', newMethod=None, \ 
    160177      newData=None, newExec=0, newDescription='', newMetaTypes=[], \ 
    161       newRoles=['ZMSAdministrator'], zms_system=0): 
     178      newRoles=['ZMSAdministrator'], newNodes='{$}', zms_system=0): 
    162179  obs = copy.deepcopy(getRawMetacmds(self)) 
    163180 
     
    175192  new['meta_types'] = newMetaTypes 
    176193  new['roles'] = newRoles 
     194  new['nodes'] = newNodes 
    177195  new['exec'] = newExec 
    178196  new['zms_system'] = zms_system 
     
    190208    if newMethod == 'DTML Method': 
    191209      self.manage_addDTMLMethod(newId,'*** DO NOT DELETE OR MODIFY ***') 
    192       if newData is None: newData = dtmlMethodExampleCode 
     210      if newData is None: 
     211        if newExec: 
     212          newData = dtmlMethodWithExecExampleCode 
     213        else: 
     214          newData = dtmlMethodWithoutExecExampleCode 
     215        newData = newData.replace('$$NAME$$',newName) 
    193216    elif newMethod == 'DTML Document': 
    194217      self.manage_addDTMLDocument(newId,'*** DO NOT DELETE OR MODIFY ***') 
     
    349372          newMetaTypes = REQUEST.get('el_meta_types',[]) 
    350373          newRoles = REQUEST.get('el_roles',[]) 
     374          newNodes = REQUEST.get('el_nodes','') 
    351375          id = setMetacmd(self, id, newId, newAcquired, newName, newMethod, newData, newExec, newDescription, \ 
    352             newMetaTypes, newRoles) 
     376            newMetaTypes, newRoles, newNodes) 
    353377          message = self.getZMILangStr('MSG_CHANGED') 
    354378         
Note: See TracChangeset for help on using the changeset viewer.