From 0fee70eebaf43a8d58c0e8f2c65c3b8cf2c60eed Mon Sep 17 00:00:00 2001 From: Zed Date: Tue, 25 Jun 2019 03:48:57 +0200 Subject: [PATCH] Cleaner image code --- src/formatters.nim | 17 +++++++++-------- src/views/tweet.nimf | 6 +++--- src/views/user.nimf | 10 +++------- 3 files changed, 15 insertions(+), 18 deletions(-) diff --git a/src/formatters.nim b/src/formatters.nim index e4a2890..0026040 100644 --- a/src/formatters.nim +++ b/src/formatters.nim @@ -34,13 +34,11 @@ proc reEmailToLink*(m: RegexMatch; s: string): string = toLink("mailto://" & url, url) proc reUsernameToLink*(m: RegexMatch; s: string): string = - var - username = "" - pretext = "" + var username = "" + var pretext = "" - let - pre = m.group(0) - match = m.group(1) + let pre = m.group(0) + let match = m.group(1) username = s[match[0]] @@ -56,8 +54,8 @@ proc linkifyText*(text: string): string = result = result.replace(usernameRegex, reUsernameToLink) result = result.replace(emailRegex, reEmailToLink) result = result.replace(urlRegex, reUrlToLink) - result = result.replace(re"([A-z0-9\):.]) ([.,\)])", "$1") + result = result.replace(re"([A-z0-9\):;.])\s+([;.,\)])", "$1") proc stripTwitterUrls*(text: string): string = result = text @@ -72,6 +70,9 @@ proc getUserpic*(userpic: string; style=""): string = proc getUserpic*(profile: Profile; style=""): string = getUserPic(profile.userpic, style) +proc genImg*(url: string; class=""): string = + result = img(src = url.getSigUrl("pic"), class = class, alt = "Image") + proc linkUser*(profile: Profile; class=""): string = let username = "username" in class diff --git a/src/views/tweet.nimf b/src/views/tweet.nimf index 782e45d..14ee51f 100644 --- a/src/views/tweet.nimf +++ b/src/views/tweet.nimf @@ -15,7 +15,7 @@ #end if
- + ${genImg(tweet.profile.getUserpic("_bigger"), "avatar")}
${linkUser(tweet.profile, class="fullname")} ${linkUser(tweet.profile, class="username")} @@ -38,7 +38,7 @@
#if quote.thumb.isSome(): - + ${genImg(quote.thumb.get())} #if quote.badge.isSome():
${quote.badge.get()}
@@ -75,7 +75,7 @@ ##TODO: why doesn't this work?
- + ${genImg(photo)}
diff --git a/src/views/user.nimf b/src/views/user.nimf index 480e113..efb7e87 100644 --- a/src/views/user.nimf +++ b/src/views/user.nimf @@ -4,11 +4,9 @@ #include "tweet.nimf" # #proc renderProfileCard*(profile: Profile): string = -#let pic = profile.getUserpic().getSigUrl("pic") -#let smallPic = profile.getUserpic("_200x200").getSigUrl("pic")
- - + + ${genImg(profile.getUserpic("_200x200"))}
@@ -50,9 +48,7 @@
#else: #let url = getSigUrl(profile.banner, "pic") - - - +${genImg(profile.banner)} #end if #end proc #