From c3d25404773f76a46ff59633ff03d4762f99adf8 Mon Sep 17 00:00:00 2001 From: Christophe Matthieu Date: Tue, 19 Aug 2014 18:26:12 +0200 Subject: [FIX] website.editor: must display link information in linkdialox box. Remove /page/ and /page/website. from the needle to search page and apply real url as filter after the search --- addons/website/static/src/js/website.editor.js | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'addons/website/static/src/js/website.editor.js') diff --git a/addons/website/static/src/js/website.editor.js b/addons/website/static/src/js/website.editor.js index 60076b9664b..0bf62a0df59 100644 --- a/addons/website/static/src/js/website.editor.js +++ b/addons/website/static/src/js/website.editor.js @@ -1046,6 +1046,7 @@ make_link: function (url, new_window, label, classes) { }, bind_data: function () { + var self = this; var href = this.element && (this.element.data( 'cke-saved-href') || this.element.getAttribute('href')); var new_window = this.element @@ -1053,8 +1054,13 @@ : false; var text = this.element ? this.element.getText() : ''; if (!text.length) { - var selection = this.editor.getSelection(); - text = selection.getSelectedText(); + if (this.editor) { + text = this.editor.getSelection().getSelectedText(); + } else { + text = this.data.name; + href = this.data.url; + new_window = this.data.new_window; + } } this.$('input#link-text').val(text); @@ -1075,8 +1081,14 @@ this.$('input.email-address').val(match[1]).change(); } if (href && !$control) { - this.$('input.url').val(href).change(); - this.$('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(); + } + }); } this.preview(); }, -- cgit v1.2.3