diff options
| author | Russell Keith-Magee <russell@keith-magee.com> | 2008-06-19 12:05:39 +0000 |
|---|---|---|
| committer | Russell Keith-Magee <russell@keith-magee.com> | 2008-06-19 12:05:39 +0000 |
| commit | 5da67a084ad6a814c867c3c374f7e869dffac29e (patch) | |
| tree | 1681ae04d49f0c92bdee89e72be786bf393cb608 | |
| parent | d943c19428624a14f9d1b5103d8a4541ede2a8af (diff) | |
Fixed #7355 -- Modified urlize utility to handle https:// addresses. Thanks for the report and patch, clint.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7701 bcc190cf-cafb-0310-a4f2-bffc1f526a37
| -rw-r--r-- | django/utils/html.py | 2 | ||||
| -rw-r--r-- | tests/regressiontests/defaultfilters/tests.py | 21 |
2 files changed, 22 insertions, 1 deletions
diff --git a/django/utils/html.py b/django/utils/html.py index 17ff78a2b5..07e4f0d3f4 100644 --- a/django/utils/html.py +++ b/django/utils/html.py @@ -99,7 +99,7 @@ def urlize(text, trim_url_limit=None, nofollow=False, autoescape=False): lead, middle, trail = match.groups() if safe_input: middle = mark_safe(middle) - if middle.startswith('www.') or ('@' not in middle and not middle.startswith('http://') and \ + if middle.startswith('www.') or ('@' not in middle and not (middle.startswith('http://') or middle.startswith('https://')) and \ len(middle) > 0 and middle[0] in string.ascii_letters + string.digits and \ (middle.endswith('.org') or middle.endswith('.net') or middle.endswith('.com'))): middle = 'http://%s' % middle diff --git a/tests/regressiontests/defaultfilters/tests.py b/tests/regressiontests/defaultfilters/tests.py index 4a8b68a897..62403935d4 100644 --- a/tests/regressiontests/defaultfilters/tests.py +++ b/tests/regressiontests/defaultfilters/tests.py @@ -166,6 +166,27 @@ u'<a href="http://31characteruri.com/test/" rel="nofollow">http://31characteruri >>> urlizetrunc(uri, 2) u'<a href="http://31characteruri.com/test/" rel="nofollow">...</a>' +# Check normal urlize +>>> urlize('http://google.com') +u'<a href="http://google.com" rel="nofollow">http://google.com</a>' + +>>> urlize('http://google.com/') +u'<a href="http://google.com/" rel="nofollow">http://google.com/</a>' + +>>> urlize('www.google.com') +u'<a href="http://www.google.com" rel="nofollow">http://www.google.com</a>' + +>>> urlize('djangoproject.org') +u'<a href="http://djangoproject.org" rel="nofollow">http://djangoproject.org</a>' + +>>> urlize('info@djangoproject.org') +u'<a href="mailto:info@djangoproject.org">info@djangoproject.org</a>' + +# Check urlize with https addresses +>>> urlize('https://google.com') +u'<a href="https://google.com" rel="nofollow">https://google.com</a>' + + >>> wordcount('') 0 |
