Fixes the language code as follows:
    
    If there is only one language used in the site, it strips the language code.
    If there are more languages used, it will make sure that the url has the current
    language as a prefix.
    
    >>> # multiple languages defined
    >>> settings.LANGUAGES = (('en-us','English'),('de','German'),('nl-be','Belgium dutch'),('fr-be','Belgium french'),)
    >>> settings.USE_SHORT_LANGUAGE_CODES = False
    >>> activate('en-us')
    >>> fix_language_code('/de/example.html', 'en-us')
    '/en-us/example.html'
    >>> settings.USE_SHORT_LANGUAGE_CODES = True
    >>> fix_language_code('/de/example.html', 'en-us')
    '/en/example.html'
    >>> fix_language_code('/en/example.html', 'en-us')
    '/example.html'
    >>> # only one language defined
    >>> settings.LANGUAGES = (('en-us', 'English'), )
    >>> fix_language_code('/en-us/example.html', 'en-us')
    '/example.html'
    
    :param url: The (absolute) url to be fixed eg. '/hi/how/is/it'.
    :param current_language: A language code defined in ``settings.LANGUAGES``.
    :rtype: The fixed url.

def fix_language_code(url, current_language):
    """
    Fixes the language code as follows:
    
    If there is only one language used in the site, it strips the language code.
    If there are more languages used, it will make sure that the url has the current
    language as a prefix.
    
    >>> # multiple languages defined
    >>> settings.LANGUAGES = (('en-us','English'),('de','German'),('nl-be','Belgium dutch'),('fr-be','Belgium french'),)
    >>> settings.USE_SHORT_LANGUAGE_CODES = False
    >>> activate('en-us')
    >>> fix_language_code('/de/example.html', 'en-us')
    '/en-us/example.html'
    >>> settings.USE_SHORT_LANGUAGE_CODES = True
    >>> fix_language_code('/de/example.html', 'en-us')
    '/en/example.html'
    >>> fix_language_code('/en/example.html', 'en-us')
    '/example.html'
    >>> # only one language defined
    >>> settings.LANGUAGES = (('en-us', 'English'), )
    >>> fix_language_code('/en-us/example.html', 'en-us')
    '/example.html'
    
    :param url: The (absolute) url to be fixed eg. '/hi/how/is/it'.
    :param current_language: A language code defined in ``settings.LANGUAGES``.
    :rtype: The fixed url.
    """
    stripped_url = strip_language_code(url)
    if not getattr(settings, 'MASTER_SITE', False) and len(settings.LANGUAGES) == 1:
        # no MASTER_SITE and only one language, do not add language code to url
        return stripped_url
    
    # add the language code to the url        
    return u"/%s%s" % (get_shorthand_from_language_code(current_language), stripped_url)