summaryrefslogtreecommitdiff
path: root/addons/website/static/src/js/menu/seo.js
diff options
context:
space:
mode:
Diffstat (limited to 'addons/website/static/src/js/menu/seo.js')
-rw-r--r--addons/website/static/src/js/menu/seo.js17
1 files changed, 11 insertions, 6 deletions
diff --git a/addons/website/static/src/js/menu/seo.js b/addons/website/static/src/js/menu/seo.js
index 85d959cb3c6..332fde71a4f 100644
--- a/addons/website/static/src/js/menu/seo.js
+++ b/addons/website/static/src/js/menu/seo.js
@@ -220,6 +220,8 @@ var HtmlPage = Class.extend(mixins.PropertiesMixin, {
init: function () {
mixins.PropertiesMixin.init.call(this);
this.initTitle = this.title();
+ this.defaultTitle = $('meta[name="default_title"]').attr('content');
+ this.defaultDescription = $('meta[name="default_description"]').attr('content') || _t("The description will be generated by social media based on page content unless you specify one.");
this.initDescription = this.description();
},
url: function () {
@@ -230,7 +232,7 @@ var HtmlPage = Class.extend(mixins.PropertiesMixin, {
},
changeTitle: function (title) {
// TODO create tag if missing
- $('title').text(title.trim() || this.initTitle);
+ $('title').text(title.trim() || this.defaultTitle);
this.trigger('title-changed', title);
},
description: function () {
@@ -348,9 +350,12 @@ var MetaTitleDescription = Widget.extend({
if (!this.canEditDescription) {
this.$description.attr('disabled', true);
}
-
- this.$title.val(this.htmlPage.title());
- this.$description.val(this.htmlPage.description());
+ if (this.htmlPage.title().trim() !== this.htmlPage.defaultTitle.trim()) {
+ this.$title.val(this.htmlPage.title());
+ }
+ if (this.htmlPage.description().trim() !== this.htmlPage.defaultDescription.trim()) {
+ this.$description.val(this.htmlPage.description());
+ }
this._descriptionOnChange();
},
@@ -358,13 +363,13 @@ var MetaTitleDescription = Widget.extend({
* Get the current title
*/
getTitle: function () {
- return this.$title.val().trim() || this.htmlPage.initTitle;
+ return this.$title.val().trim() || this.htmlPage.defaultTitle;
},
/**
* Get the current description
*/
getDescription: function () {
- return this.$description.val();
+ return this.$description.val() || this.htmlPage.defaultDescription;
},
/**
* @private