diff --git a/addons/website/static/src/css/snippets.css b/addons/website/static/src/css/snippets.css
index 65a6e714f97..2cbf2fb16ba 100644
--- a/addons/website/static/src/css/snippets.css
+++ b/addons/website/static/src/css/snippets.css
@@ -42,14 +42,12 @@
.oe_snippet_editor{
position: fixed;
z-index: 1000;
- bottom: 0px;
- left: 0px;
- right: 0px;
+ bottom: 0;
+ left: 0;
+ right: 0;
height: 214px;
background: rgb(160,160,160);
- box-shadow: 0px 1px 3px rgb(100,100,100) inset;
- overflow-y: hidden;
- overflow-x: scroll;
+ box-shadow: 0 1px 3px rgb(100,100,100) inset;
}
.oe_snippet_list{
@@ -64,14 +62,12 @@
height: 160px;
border-radius: 3px;
background: white;
- margin: 20px;
- margin-left: 0px;
+ margin: 20px 20px 20px 0;
cursor: pointer;
border: 2px solid transparent;
- box-shadow: 0px 1px 3px rgb(100,100,100);
+ box-shadow: 0 1px 3px rgb(100,100,100);
position: relative;
- top: 0px;
- -webkit-transition: all 150ms linear;
+ top: 0;
overflow: hidden;
vertical-align: top;
user-select: none;
@@ -161,6 +157,14 @@
line-height: 160px;
padding: 0px;
}
+
+.oe_snippet_drop {
+ border: 1px dashed black;
+ min-height: 25px;
+}
+.oe_snippet_drop.oe_accepting {
+ border: 1px dashed #24ff0f;
+}
/*
[class*="span"]{
margin-left: 0px !important;
diff --git a/addons/website/static/src/js/website.js b/addons/website/static/src/js/website.js
index 2cd647a44c0..9a274c6b99d 100644
--- a/addons/website/static/src/js/website.js
+++ b/addons/website/static/src/js/website.js
@@ -43,7 +43,10 @@ instance.website.EditorBar = instance.web.Widget.extend({
.parent().show();
// TODO: span edition changing edition state (save button)
var $editables = $('[data-oe-model]')
- .not('link, script').prop('contentEditable', true)
+ .not('link, script')
+ // FIXME: propagation should make "meta" blocks non-editable in the first place...
+ .not('.oe_snippet_editor')
+ .prop('contentEditable', true)
.addClass('oe_editable');
var $rte_ables = $editables.filter('div, p, li, section, header, footer').not('[data-oe-type]');
var $raw_editables = $editables.not($rte_ables);
@@ -101,27 +104,31 @@ instance.website.EditorBar = instance.web.Widget.extend({
cancel: function () {
window.location.reload();
},
- snippet_start: function () {
+ setup_droppable: function () {
var self = this;
- $('.oe_snippet').click(function(ev) {
+ $('.oe_snippet_drop').remove();
+ var droppable = '
';
+ var $zone = $('section.container');
+ $zone.before(droppable).after(droppable);
+
+ $(".oe_snippet_drop").droppable({
+ hoverClass: 'oe_accepting',
+ drop: function( event, ui ) {
+ console.log(event, ui, "DROP");
+
+ $(event.target).replaceWith($(ui.draggable).html());
+ $('.oe_selected').remove();
+ self.setup_droppable();
+ }
+ }).hide();
+ },
+ snippet_start: function () {
+ this.setup_droppable();
+
+ $('.oe_snippet').draggable().click(function(ev) {
+ $(".oe_snippet_drop").show();
$('.oe_selected').removeClass('oe_selected');
- var $snippet = $(ev.currentTarget);
- $snippet.addClass('oe_selected');
- $snippet.draggable();
- var selector = $snippet.data("selector");
- var $zone = $(".oe_website_body " + selector);
- var droppable = '.
.
.
.
.
';
- $zone.before(droppable);
- $zone.after(droppable);
- $(".oe_snippet_drop").droppable({
- drop: function( event, ui ) {
- console.log(event, ui, "DROP");
- var $target = $(event.target);
- $target.before($snippet.html());
- $('.oe_selected').remove();
- $('.oe_snippet_drop').remove();
- }
- });
+ $(ev.currentTarget).addClass('oe_selected');
});
},
@@ -327,6 +334,8 @@ instance.website.RTE = instance.web.Widget.extend({
customConfig: '',
// Disable ACF
allowedContent: true,
+ // Don't insert paragraphs around content in e.g.
+ autoParagraph: false,
};
},
// TODO clean
@@ -471,4 +480,9 @@ instance.web.ActionRedirect = function(parent, action) {
};
instance.web.client_actions.add("redirect", "instance.web.ActionRedirect");
+instance.web.GoToWebsite = function(parent, action) {
+ window.location.href = window.location.href.replace(/[?#].*/, '').replace(/\/admin[\/]?$/, '');
+};
+instance.web.client_actions.add("website.gotowebsite", "instance.web.GoToWebsite");
+
};
diff --git a/addons/website/views/views.xml b/addons/website/views/views.xml
index 38582837ad2..7028fcdf820 100644
--- a/addons/website/views/views.xml
+++ b/addons/website/views/views.xml
@@ -99,7 +99,7 @@
-
+
-
+
-
+
-
+
diff --git a/addons/website/website_data.xml b/addons/website/website_data.xml
index 6356ab52816..c7fe2a771d1 100644
--- a/addons/website/website_data.xml
+++ b/addons/website/website_data.xml
@@ -16,5 +16,20 @@
+
+
+ Website
+ website.gotowebsite
+ website
+
+
+
+
+ Go to Website
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/website_mail/static/src/css/blog.css b/addons/website_mail/static/src/css/blog.css
index b61dbde7e0d..8edea7d3306 100644
--- a/addons/website_mail/static/src/css/blog.css
+++ b/addons/website_mail/static/src/css/blog.css
@@ -1,36 +1,15 @@
-.css_website_mail .media {
- position: relative;
- clear: both;
-}
-.css_website_mail .media .css_button_publish {
- position: absolute;
- right: 5px;
- top: 5px;
-}
-.css_website_mail .media .css_button_publish .css_publish {
- color: green;
+.css_website_mail .media .label-success {
display: none;
- background: none;
}
-.css_website_mail .media .css_button_publish .css_unpublish {
- color: red;
- background: none;
-}
-.css_website_mail .media .css_published .css_publish {
- display: block;
-}
-.css_website_mail .media .css_published .css_unpublish {
+.css_website_mail .css_published .label-important {
display: none;
}
+.css_website_mail .css_published .label-success {
+ display: inline-block;
+}
.css_website_mail .has-error {
border-color: red;
}
-.css_website_mail .css_older {
- float: right;
-}
-.css_website_mail .css_newer {
- float: left;
-}
.css_website_mail .css_nav_month {
display: none;
}
diff --git a/addons/website_mail/static/src/css/blog.sass b/addons/website_mail/static/src/css/blog.sass
index e49cf9cb168..e0e8828d9f2 100644
--- a/addons/website_mail/static/src/css/blog.sass
+++ b/addons/website_mail/static/src/css/blog.sass
@@ -2,30 +2,15 @@
.css_website_mail
.media
- position: relative
- clear: both
- .css_button_publish
- position: absolute
- right: 5px
- top: 5px
- .css_publish
- color: green
- display: none
- background: none
- .css_unpublish
- color: red
- background: none
- .css_published
- .css_publish
- display: block
- .css_unpublish
- display: none
+ .label-success
+ display: none
+ .css_published
+ .label-important
+ display: none
+ .label-success
+ display: inline-block
.has-error
border-color: red
- .css_older
- float: right
- .css_newer
- float: left
.css_nav_month
display: none
&:first-of-type
diff --git a/addons/website_mail/views/website_mail.xml b/addons/website_mail/views/website_mail.xml
index e7957ca8bf0..f352a1e0c39 100644
--- a/addons/website_mail/views/website_mail.xml
+++ b/addons/website_mail/views/website_mail.xml
@@ -69,12 +69,12 @@