summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--addons/website/static/src/js/website.editor.js37
-rw-r--r--addons/website_links/models/website_links.py2
2 files changed, 16 insertions, 23 deletions
diff --git a/addons/website/static/src/js/website.editor.js b/addons/website/static/src/js/website.editor.js
index e89266d6cf3..409ec0b3850 100644
--- a/addons/website/static/src/js/website.editor.js
+++ b/addons/website/static/src/js/website.editor.js
@@ -1657,29 +1657,22 @@ define(['summernote/summernote'], function () {
});
}
- var match, $control;
- if (href && (match = /mailto:(.+)/.exec(href))) {
- this.$('input.email-address').val(match[1]).change();
- }
- if (href && !$control) {
- this.page_exists(href).then(function (exist) {
- if (exist) {
- self.$('#link-page').select2('data', {'id': href, 'text': href});
- } else {
- self.$('input.url').val(href).change();
- self.$('input.window-new').closest("div").show();
- }
- });
- }
-
- this.page_exists(href).then(function (exist) {
- if (exist) {
- self.$('#link-page').select2('data', {'id': href, 'text': href});
- } else {
- self.$('input.url').val(href).change();
- self.$('input.window-new').closest("div").show();
+ var match;
+ if(href){
+ if (match = /mailto:(.+)/.exec(href)) {
+ this.$('input.email-address').val(match[1]).change();
}
- });
+ else {
+ this.page_exists(href).then(function (exist) {
+ if (exist) {
+ self.$('#link-page').select2('data', {'id': href, 'text': href});
+ } else {
+ self.$('input.url').val(href).change();
+ self.$('input.window-new').closest("div").show();
+ }
+ });
+ }
+ }
this.preview();
},
diff --git a/addons/website_links/models/website_links.py b/addons/website_links/models/website_links.py
index 99148d1ae71..b691970d907 100644
--- a/addons/website_links/models/website_links.py
+++ b/addons/website_links/models/website_links.py
@@ -12,7 +12,7 @@ from urlparse import urlparse
from openerp import models, fields, api, _
-URL_REGEX = r'(\bhref=[\'"]([^\'"]+)[\'"])'
+URL_REGEX = r'(\bhref=[\'"](?!mailto:)([^\'"]+)[\'"])'
def VALIDATE_URL(url):
if urlparse(url).scheme not in ('http', 'https', 'ftp', 'ftps'):