summaryrefslogtreecommitdiff
path: root/public/assets
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2015-09-07 02:17:51 -0400
committerJules Laplace <jules@okfoc.us>2015-09-07 02:17:51 -0400
commit694dbdf6ff3eef3e33fcbe95ebd676eea3353dcc (patch)
tree91b2cf8a9310005e9bd6d1ff443ef7d593086271 /public/assets
parentf5cd692caf98cfeddc61df6442d401619d264aa7 (diff)
linking urls
Diffstat (limited to 'public/assets')
-rw-r--r--public/assets/js/lib/views/details/comments.js2
-rw-r--r--public/assets/js/lib/views/index/hootbox.js2
-rw-r--r--public/assets/js/util/format.js21
3 files changed, 23 insertions, 2 deletions
diff --git a/public/assets/js/lib/views/details/comments.js b/public/assets/js/lib/views/details/comments.js
index 168cc3f..399c90d 100644
--- a/public/assets/js/lib/views/details/comments.js
+++ b/public/assets/js/lib/views/details/comments.js
@@ -17,7 +17,7 @@ var CommentsView = FormView.extend({
parse: function(comment){
var datetime = verbose_date(comment.date, true)
var t = this.template.replace(/{{username}}/g, comment.username)
- .replace(/{{comment}}/g, comment.comment)
+ .replace(/{{comment}}/g, tidy_urls(comment.comment))
.replace(/{{date}}/g, datetime[0])
.replace(/{{time}}/g, datetime[1])
return t
diff --git a/public/assets/js/lib/views/index/hootbox.js b/public/assets/js/lib/views/index/hootbox.js
index 15de06b..9d1cc3d 100644
--- a/public/assets/js/lib/views/index/hootbox.js
+++ b/public/assets/js/lib/views/index/hootbox.js
@@ -17,7 +17,7 @@ var HootBox = FormView.extend({
parse: function(comment){
var t = this.template.replace(/{{username}}/g, comment.username)
- .replace(/{{comment}}/g, comment.comment)
+ .replace(/{{comment}}/g, tidy_urls(comment.comment, true))
return t
},
diff --git a/public/assets/js/util/format.js b/public/assets/js/util/format.js
index b789602..00cc94c 100644
--- a/public/assets/js/util/format.js
+++ b/public/assets/js/util/format.js
@@ -169,4 +169,25 @@ function get_age (t) {
if (age < 12) { return r(age) + "m" }
age /= 12
return r(age) + "y"
+}
+
+function tidy_urls (s, short_urls) {
+ var ret = s.split("\n").map(function(line){
+ if (line.indexOf("<") !== -1) {
+ return line
+ }
+ return line.replace(/https?:\/\/[^ ]+/g, function(str){
+ if (short_urls) {
+ return '<a href="' + str + '" target="_blank">[' + get_domain(str) + ']</a>'
+ }
+ else {
+ return '<a href="' + str + '" target="_blank">' + str + '</a>'
+ }
+ });
+
+ }).join("<br>\n")
+ return ret
+}
+function get_domain(url){
+ return url.replace(/https?:\/\//,"").replace(/\/.*/,"").replace(/www\./, "")
} \ No newline at end of file