X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/34c9285ef29074d0c13cea81fbb05e93eb369b4a..1a42d792d1124f110fd7eaad8ac4da0289cdd5df:/src/editor/plugins/core/links/linkElement.js diff --git a/src/editor/plugins/core/links/linkElement.js b/src/editor/plugins/core/links/linkElement.js index 0600733..8a9edd7 100644 --- a/src/editor/plugins/core/links/linkElement.js +++ b/src/editor/plugins/core/links/linkElement.js @@ -17,8 +17,8 @@ _.extend(linkElement, { genericElement.init.call(this); _.bindAll(this, 'changeLink', 'deleteLink'); - var linkText = this.wlxmlNode.getAttr('href'), - linkUrl = this.wlxmlNode.document.getUrlForLink(linkText); + var linkText = this.wlxmlNode.getAttr('href') || '', + linkUrl = this.getUrl(linkText); this.box = $(_.template(boxTemplate)({text: linkText, url: linkUrl})); this.box.find('.change').on('click', this.changeLink); @@ -33,7 +33,7 @@ _.extend(linkElement, { if(event.meta.attr === 'href') { var link = this.box.find('[link]'); link.text(event.meta.newVal); - link.attr('href', this.wlxmlNode.document.getUrlForLink(event.meta.newVal)); + link.attr('href', this.getUrl(event.meta.newVal)); } }, @@ -72,6 +72,14 @@ _.extend(linkElement, { description: gettext('Remove link') } }); + }, + + getUrl: function(link) { + var pattern = /^[a-z]*:\/\//g; + if(!pattern.test(link)) { + link = 'http://' + link; + } + return this.wlxmlNode.document.getUrlForLink(link); } });