code: def list_templates(call=None):
      '''
      Lists all templates available to the user and the user's groups.
  
      .. versionadded:: 2016.3.0
  
      CLI Example:
  
      .. code-block:: bash
  
          salt-cloud -f list_templates opennebula
      '''
      if call == 'action':
          raise SaltCloudSystemExit(
              'The list_templates function must be called with -f or --function.'
          )
  
      server, user, password = _get_xml_rpc()
      auth = ':'.join([user, password])
      template_pool = server.one.templatepool.info(auth, -2, -1, -1)[1]
  
      templates = {}
      for template in _get_xml(template_pool):
          templates[template.find('NAME').text] = _xml_to_dict(template)
  
      return templatef list_templates(call=None):
      '''
      Lists all templates available to the user and the user's groups.
  
      .. versionadded:: 2016.3.0
  
      CLI Example:
  
      .. code-block:: bash
  
          salt-cloud -f list_templates opennebula
      '''
      if call == 'action':
          raise SaltCloudSystemExit(
              'The list_templates function must be called with -f or --function.'
          )
  
      server, user, password = _get_xml_rpc()
      auth = ':'.join([user, password])
      template_pool = server.one.templatepool.info(auth, -2, -1, -1)[1]
  
      templates = {}
      for template in _get_xml(template_pool):
          templates[template.find('NAME').text] = _xml_to_dict(template)
  
      return templates
docs: Lists all templates available to the user and the user's groups.
  
      .. versionadded:: 2016.3.0
  
      CLI Example:
  
      .. code-block:: bash
  
          salt-cloud -f list_templates opennebula