Retrieves information about the requested SSL certificate. Returns a
    dictionary of information about the SSL certificate with two keys:

    - **ssl** - Contains the metadata information
    - **certificate** - Contains the details for the certificate such as the
      CSR, Approver, and certificate data

    certificate_id
        Unique ID of the SSL certificate

    returncertificate : False
        Set to ``True`` to ask for the certificate in response

    returntype
        Optional type for the returned certificate. Can be either "Individual"
        (for X.509 format) or "PKCS7"

        .. note::
            Required if ``returncertificate`` is ``True``

    CLI Example:

    .. code-block:: bash

        salt 'my-minion' namecheap_ssl.get_info my-cert-id

def get_info(certificate_id, returncertificate=False, returntype=None):
    '''
    Retrieves information about the requested SSL certificate. Returns a
    dictionary of information about the SSL certificate with two keys:

    - **ssl** - Contains the metadata information
    - **certificate** - Contains the details for the certificate such as the
      CSR, Approver, and certificate data

    certificate_id
        Unique ID of the SSL certificate

    returncertificate : False
        Set to ``True`` to ask for the certificate in response

    returntype
        Optional type for the returned certificate. Can be either "Individual"
        (for X.509 format) or "PKCS7"

        .. note::
            Required if ``returncertificate`` is ``True``

    CLI Example:

    .. code-block:: bash

        salt 'my-minion' namecheap_ssl.get_info my-cert-id
    '''
    opts = salt.utils.namecheap.get_opts('namecheap.ssl.getinfo')
    opts['certificateID'] = certificate_id

    if returncertificate:
        opts['returncertificate'] = "true"
        if returntype is None:
            log.error('returntype must be specified when returncertificate is set to True')
            raise Exception('returntype must be specified when returncertificate is set to True')
        if returntype not in ["Individual", "PKCS7"]:
            log.error('returntype must be specified as Individual or PKCS7, not %s', returntype)
            raise Exception('returntype must be specified as Individual or PKCS7, not ' + returntype)
        opts['returntype'] = returntype

    response_xml = salt.utils.namecheap.get_request(opts)

    if response_xml is None:
        return {}

    sslinforesult = response_xml.getElementsByTagName('SSLGetInfoResult')[0]

    return salt.utils.namecheap.xml_to_dict(sslinforesult)