exclude resources from tracking stats if there are only part of a concept (like with blogposts)
git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3844 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
		
							parent
							
								
									2e9f1bdfc9
								
							
						
					
					
						commit
						7742c2e4c0
					
				
					 2 changed files with 17 additions and 0 deletions
				
			
		|  | @ -248,6 +248,10 @@ class BaseView(GenericView, I18NView): | |||
|     def defaultPredicate(self): | ||||
|         return self.conceptManager.getDefaultPredicate() | ||||
| 
 | ||||
|     @Lazy | ||||
|     def isPartOfPredicate(self): | ||||
|         return self.conceptManager.get('ispartof') | ||||
| 
 | ||||
|     @Lazy | ||||
|     def url(self): | ||||
|         return absoluteURL(self.context, self.request) | ||||
|  | @ -417,6 +421,17 @@ class BaseView(GenericView, I18NView): | |||
|                         + self.listTypesForSearch(('resource',), | ||||
|                                                   ('system', 'hidden',),)) | ||||
| 
 | ||||
|     def isPartOnlyResource(self, obj): | ||||
|         if not IResource.providedBy(obj): | ||||
|             return False | ||||
|         isPart = False | ||||
|         for r in obj.getConceptRelations(): | ||||
|             if r.predicate == self.isPartOfPredicate: | ||||
|                 isPart = True | ||||
|             elif r.predicate != self.typePredicate: | ||||
|                 return False | ||||
|         return isPart | ||||
| 
 | ||||
|     # options/settings | ||||
| 
 | ||||
|     @Lazy | ||||
|  |  | |||
|  | @ -106,6 +106,8 @@ class TrackingStats(BaseView): | |||
|     def checkType(self, obj): | ||||
|         if not IResource.providedBy(obj) and not IConcept.providedBy(obj): | ||||
|             return False | ||||
|         if self.isPartOnlyResource(obj): | ||||
|             return False | ||||
|         for t in self.typeObjects: | ||||
|             if isinstance(t, InterfaceClass): | ||||
|                 if t.providedBy(obj): | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 helmutm
						helmutm