def isItemAllowed(self, obj): """ Checks if the passed in Analysis must be displayed in the list. If the 'filtering by department' option is enabled in Bika Setup, this function checks if the Analysis Service associated to the Analysis is assigned to any of the currently selected departments (information stored in a cookie). In addition, the function checks if the Analysis matches with the filtering criterias set in the advanced filter bar. If no criteria in the advanced filter bar has been set and the option 'filtering by department' is disblaed, returns True. :param obj: A single Analysis brain :type obj: CatalogBrain :returns: True if the item can be added to the list. Otherwise, False :rtype: bool """ # The isItemAllowed function from the base class AnalysesView already # takes into account filtering by department allowed = AnalysesView.isItemAllowed(self, obj) if not allowed: return False if self.filter_bar_enabled: # Advanced filter bar is enabled. Check if the Analysis matches # with the filtering criterias. return self.filter_bar_check_item(obj) # By default, display the analysis return True
def isItemAllowed(self, obj): """Returns true if the current analysis to be rendered has a slot assigned for the current layout. :param obj: analysis to be rendered as a row in the list :type obj: ATContentType/DexterityContentType :return: True if the obj has an slot assigned. Otherwise, False. :rtype: bool """ uid = api.get_uid(obj) if not self.get_item_slot(uid): logger.warning("Slot not assigned to item %s" % uid) return False return BaseView.isItemAllowed(self, obj)