code: def get_icon(brain_or_object, html_tag=True):
      
      # Manual approach, because `plone.app.layout.getIcon` does not reliable
      # work for Bika Contents coming from other catalogs than the
      # `portal_catalog`
      portal_types = get_tool("portal_types")
      fti = portal_types.getTypeInfo(brain_or_object.portal_type)
      icon = fti.getIcon()
      if not icon:
          return ""
      url = "%s/%s" % (get_url(get_portal()), icon)
      if not html_tag:
          return url
      tag = '<img width="16" height="16" src="{url}" title="{title}" />'.format(
          url=url, title=get_title(brain_or_object))
      return tag
docs: Get the icon of the content object
  
      :param brain_or_object: A single catalog brain or content object
      :type brain_or_object: ATContentType/DexterityContentType/CatalogBrain
      :param html_tag: A value of 'True' returns the HTML tag, else the image url
      :type html_tag: bool
      :returns: HTML '<img>' tag if 'html_tag' is True else the image url
      :rtype: string