code: def folderitem(self, obj, item, index):
          
          # ensure we have an object and not a brain
          obj = api.get_object(obj)
          uid = api.get_uid(obj)
          url = api.get_url(obj)
          title = api.get_title(obj)
  
          # get the category
          if self.show_categories_enabled():
              category = obj.getCategoryTitle()
              if category not in self.categories:
                  self.categories.append(category)
              item["category"] = category
  
          item["replace"]["Title"] = get_link(url, value=title)
          item["selected"] = False
          item["selected"] = uid in self.selected_services_uids
  
          # Add methods
          methods = obj.getMethods()
          if methods:
              links = map(
                  lambda m: get_link(
                      m.absolute_url(), value=m.Title(), css_class="link"),
                  methods)
              item["replace"]["Methods"] = ", ".join(links)
          else:
              item["methods"] = ""
  
          calculation = obj.getCalculation()
          if calculation:
              title = calculation.Title()
              url = calculation.absolute_url()
              item["Calculation"] = title
              item["replace"]["Calculation"] = get_link(url, value=title)
          else:
              item["Calculation"] = ""
  
          # Icons
          after_icons = ""
          if obj.getAccredited():
              after_icons += get_image(
                  "accredited.png", title=_("Accredited"))
          if obj.getAttachmentOption() == "r":
              after_icons += get_image(
                  "attach_reqd.png", title=_("Attachment required"))
          if obj.getAttachmentOption() == "n":
              after_icons += get_image(
                  "attach_no.png", title=_("Attachment not permitted"))
          if after_icons:
              item["after"]["Title"] = after_icons
  
          return item
docs: Service triggered each time an item is iterated in folderitems.
  
          The use of this service prevents the extra-loops in child objects.
  
          :obj: the instance of the class to be foldered
          :item: dict containing the properties of the object to be used by
              the template
          :index: current index of the item