Changeset 1097


Ignore:
Timestamp:
12.07.2010 21:23:08 (19 months ago)
Author:
zmsdev
Message:

Applied fix for references to parent-objects, except for embedded objects (requested by uni-be).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ZMS/trunk/zmslinkelement.py

    r956 r1097  
    245245    # -------------------------------------------------------------------------- 
    246246    def getEmbedType(self): 
    247       rtn = self.getObjAttrValue( self.getObjAttr( 'attr_type'), self.REQUEST) 
    248       return rtn 
     247      embed_type = self.getObjAttrValue( self.getObjAttr( 'attr_type'), self.REQUEST) 
     248      if embed_type in [ 'embed', 'recursive', 'remote']: 
     249        ref_obj = self.getRefObj() 
     250        if ref_obj is not None and ref_obj.isAnchestor( self): 
     251          embed_type = 'cyclic' # Error! 
     252      return embed_type 
    249253 
    250254 
     
    286290          ##### Object State #### 
    287291          self.setObjStateModified(REQUEST) 
    288            
    289           ##### Constraints #### 
    290           ref_obj = self.getLinkObj( REQUEST.get( 'attr_ref', ''), REQUEST) 
    291           if ref_obj is not None and \ 
    292              ref_obj.isAnchestor( self): 
    293             raise ConstraintViolation( 'Invalid url "%s" - cyclic recursion!'%REQUEST.get( 'attr_ref', '')) 
    294292           
    295293          ##### Properties #### 
Note: See TracChangeset for help on using the changeset viewer.