Mercurial > libervia-backend
comparison frontends/src/tools/strings.py @ 842:429c6a0ef73d
frontends (tools): addURLToImage makes an image clickable
author | souliane <souliane@mailoo.org> |
---|---|
date | Thu, 13 Feb 2014 15:35:21 +0100 |
parents | 1fe00f0c9a91 |
children | 069ad98b360d |
comparison
equal
deleted
inserted
replaced
841:831f208b4ea3 | 842:429c6a0ef73d |
---|---|
52 if not re.match(r"""[a-z]{3,}://|mailto:|xmpp:""", url): | 52 if not re.match(r"""[a-z]{3,}://|mailto:|xmpp:""", url): |
53 url = "http://" + url | 53 url = "http://" + url |
54 return '<a href="%s" target="_blank" class="url">%s</a>' % (url, match.group(0)) | 54 return '<a href="%s" target="_blank" class="url">%s</a>' % (url, match.group(0)) |
55 pattern = r"""(?i)\b((?:[a-z]{3,}://|(www|ftp)\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/|mailto:|xmpp:)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?]))""" | 55 pattern = r"""(?i)\b((?:[a-z]{3,}://|(www|ftp)\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/|mailto:|xmpp:)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?]))""" |
56 return re.sub(pattern, repl, string) | 56 return re.sub(pattern, repl, string) |
57 | |
58 | |
59 def addURLToImage(string): | |
60 """Check a XHTML text for what looks like an imageURL and make it clickable""" | |
61 def repl(match): | |
62 url = match.group(1) | |
63 return '<a href="%s" target="_blank">%s</a>' % (url, match.group(0)) | |
64 pattern = r"""<img[^>]* src="([^"]+)"[^>]*>""" | |
65 return re.sub(pattern, repl, string) |