Added url detection
bzr revid: nicolas.vanhoren@openerp.com-20130903135940-3miafvmwtiiuc769
This commit is contained in:
parent
6c6169da1b
commit
0c03661b56
|
@ -443,8 +443,8 @@ function declare($, _, openerp) {
|
|||
return new Array(size - str.length + 1).join('0') + str;
|
||||
};
|
||||
date = "" + zpad(date.getHours(), 2) + ":" + zpad(date.getMinutes(), 2);
|
||||
|
||||
this.last_bubble = $(openerp.qweb.render("im_common.conversation_bubble", {"items": items, "user": user, "time": date}));
|
||||
var to_show = _.map(items, im_common.escape_keep_url);
|
||||
this.last_bubble = $(openerp.qweb.render("im_common.conversation_bubble", {"items": to_show, "user": user, "time": date}));
|
||||
$(this.$(".oe_im_chatview_content").children()[0]).append(this.last_bubble);
|
||||
this._go_bottom();
|
||||
},
|
||||
|
@ -484,6 +484,24 @@ function declare($, _, openerp) {
|
|||
});
|
||||
};
|
||||
|
||||
var url_regex = /(http|https|ftp|ftps)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*)?/gi;
|
||||
|
||||
im_common.escape_keep_url = function(str) {
|
||||
var last = 0;
|
||||
var txt = "";
|
||||
while (true) {
|
||||
var result = url_regex.exec(str);
|
||||
if (! result)
|
||||
break;
|
||||
txt += _.escape(str.slice(last, result.index));
|
||||
last = url_regex.lastIndex;
|
||||
var url = _.escape(result[0]);
|
||||
txt += '<a href="' + url + '">' + url + '</a>';
|
||||
}
|
||||
txt += str.slice(last, str.length);
|
||||
return txt;
|
||||
};
|
||||
|
||||
return im_common;
|
||||
}
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<div class="oe_im_chatview_from"><t t-esc="user.get('name')"/></div>
|
||||
<div class="oe_im_chatview_bubble_list">
|
||||
<t t-foreach="items" t-as="item">
|
||||
<div class="oe_im_chatview_bubble_item"><t t-esc="item"/></div>
|
||||
<div class="oe_im_chatview_bubble_item"><t t-raw="item"/></div>
|
||||
</t>
|
||||
</div>
|
||||
<div class="oe_im_chatview_time"><t t-esc="time"/></div>
|
||||
|
|
Loading…
Reference in New Issue