[ADD] theme 12.0

This commit is contained in:
Design
2021-05-11 15:56:19 +02:00
committed by Jeremy Kersten
commit bddf1b03c5
3057 changed files with 69185 additions and 0 deletions
@@ -0,0 +1,130 @@
odoo.define('theme_avantgarde.editor', function (require) {
'use strict';
var Editor = require('web_editor.snippet.editor').Editor;
var s_options = require('web_editor.snippets.options');
// Typography
s_options.registry.typo_style = s_options.Class.extend({
});
// Simple Accordition
s_options.registry.avant_simpleAccordition = s_options.Class.extend({
start: function () {
this.$target.find(".panel-collapse ").css("height","").addClass("in");
},
cleanForSave: function () {
this.$target.find(".panel-collapse ").css("height","0").removeClass("in");
},
onClone: function () {
var Mrand = Math.floor((Math.random() * 9999999) + 1);
this.$target.find("div.panel-group").attr("id",Mrand);
this.$target.find(".bar").each(function () {
var bar = $(this);
var rand = Math.floor((Math.random() * 9999999) + 1);
bar.find("a.panel-heading").attr("data-parent","#"+Mrand);
bar.find("div.panel-collapse.collapse").attr("id",rand);
});
},
});
s_options.registry.avant_simpleAccordition_bar = s_options.Class.extend({
start: function () {
this.$target.parent().parent().find(".panel-collapse ").css("height","").addClass("in");
},
onFocus: function () {
this.$target.fadeTo(100,0).fadeTo(200,1);
},
onClone: function () {
var rand = Math.floor((Math.random() * 9999999) + 1);
this.$target.find("div.panel-collapse.collapse").attr("id",rand);
},
});
s_options.registry.avant_simpleAccordition_link = s_options.Class.extend({
start: function () {
this.$target.parent().parent().parent().find(".panel-collapse ")
.css("height","")
.addClass("in");
},
onFocus: function () {
this.$target.fadeTo(100,0).fadeTo(200,1);
},
});
Editor.include({
_onDragAndDropStart: function () {
this._super();
this.$target.addClass("oe_snippet_body");
return this._super.apply(this, arguments);
},
_onDragAndDropStop: function () {
this._super();
this.$target.removeClass("oe_snippet_body");
return this._super.apply(this, arguments);
},
});
// Top Banner Options
s_options.registry.avantgarde_top_banner_options = s_options.Class.extend({
//----------------------------------------------------------------------
// Public
//----------------------------------------------------------------------
/**
* @override
*/
onFocus: function () {
this.$overlay.find('.oe_snippet_clone, .oe_snippet_move')
.toggleClass('d-none', this.$target.hasClass('move_to_top'));
},
/**
* @override
*/
onRemove: function () {
this.$target.removeClass('move_to_top');
this._toggleTransparentMenu(false);
},
//----------------------------------------------------------------------
// Options
//----------------------------------------------------------------------
/**
* @override
*/
selectClass: function (previewMode, value, $li) {
this._super(previewMode, value, $li);
$('.move_to_top').not(this.$target).removeClass('move_to_top');
this._toggleTransparentMenu(value === 'move_to_top');
},
//----------------------------------------------------------------------
// Private
//----------------------------------------------------------------------
/**
* @override
*/
_toggleTransparentMenu: function (enable) {
var self = this;
this.trigger_up('action_demand', {
actionName: 'toggle_page_option',
params: [{name: 'header_overlay', value: enable}],
onSuccess: function () {
self.trigger_up('action_demand', {
actionName: 'toggle_page_option',
params: [{name: 'header_color', value: ''}],
});
if (self.$target.hasClass('s_media_block')) {
$(window).trigger('resize');
}
self._refreshAnimations();
$('html, body').animate({scrollTop: enable ? 0 : (self.$target.offset.top + 100)}, 1000);
self.onFocus();
},
});
},
});
});
@@ -0,0 +1,13 @@
odoo.define('theme_avantgarde.ext.editor', function (require) {
'use strict';
var ajax = require('web.ajax');
var core = require('web.core');
var s_options = require('web_editor.snippets.options');
ajax.loadXML('/theme_avantgarde/static/src/xml/s_media_block_modal_ext.xml', core.qweb);
s_options.registry.s_css_slider_slide.include({
newSlideUrl: "/theme_avantgarde/static/src/img/theme_samples/sample_2.jpg",
});
});
@@ -0,0 +1,31 @@
odoo.define('theme_avantgarde.ext.frontend', function (require) {
'use strict';
var sAnimation = require('website.content.snippets.animation');
require('theme_common.s_google_map_frontend');
sAnimation.registry.s_google_map.include({
lightMonoMap : [{"featureType":"administrative.locality","elementType":"all","stylers":[{"hue":"#2c2e33"},{"saturation":7},{"lightness":19},{"visibility":"on"}]},{"featureType":"landscape","elementType":"all","stylers":[{"hue":"#ffffff"},{"saturation":-100},{"lightness":100},{"visibility":"simplified"}]},{"featureType":"poi","elementType":"all","stylers":[{"hue":"#ffffff"},{"saturation":-100},{"lightness":100},{"visibility":"off"}]},{"featureType":"road","elementType":"geometry","stylers":[{"hue":"#bbc0c4"},{"saturation":-93},{"lightness":31},{"visibility":"simplified"}]},{"featureType":"road","elementType":"labels","stylers":[{"hue":"#bbc0c4"},{"saturation":-93},{"lightness":31},{"visibility":"on"}]},{"featureType":"road.arterial","elementType":"labels","stylers":[{"hue":"#bbc0c4"},{"saturation":-93},{"lightness":-2},{"visibility":"simplified"}]},{"featureType":"road.local","elementType":"geometry","stylers":[{"hue":"#e9ebed"},{"saturation":-90},{"lightness":-8},{"visibility":"simplified"}]},{"featureType":"transit","elementType":"all","stylers":[{"hue":"#e9ebed"},{"saturation":10},{"lightness":69},{"visibility":"on"}]},{"featureType":"water","elementType":"all","stylers":[{"hue":"#e9ebed"},{"saturation":-78},{"lightness":67},{"visibility":"simplified"}]}],
lillaMap : [{elementType: "labels", stylers: [{saturation: -20 }] }, {featureType: "poi", elementType: "labels", stylers: [{visibility: "off"}] }, {featureType: 'road.highway', elementType: 'labels', stylers: [{visibility: "off"}] }, {featureType: "road.local", elementType: "labels.icon", stylers: [{visibility: "off"}] }, {featureType: "road.arterial", elementType: "labels.icon", stylers: [{visibility: "off"}] }, {featureType: "road", elementType: "geometry.stroke", stylers: [{visibility: "off"}] }, {featureType: "transit", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "poi", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "poi.government", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "poi.sport_complex", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "poi.attraction", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "poi.business", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "transit", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "transit.station", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "landscape", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "road", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "road.highway", elementType: "geometry.fill", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }, {featureType: "water", elementType: "geometry", stylers: [{hue: '#2d313f' }, {visibility: "on"}, {lightness: 5 }, {saturation: -20 }] }],
blueMap : [{stylers: [{ hue: "#00ffe6" }, { saturation: -20 } ] },{featureType: "road", elementType: "geometry", stylers: [{ lightness: 100 }, { visibility: "simplified" } ] },{featureType: "road", elementType: "labels", stylers: [{ visibility: "off" } ] } ],
retroMap : [{"featureType":"administrative","elementType":"all","stylers":[{"visibility":"on"},{"lightness":33}]},{"featureType":"landscape","elementType":"all","stylers":[{"color":"#f2e5d4"}]},{"featureType":"poi.park","elementType":"geometry","stylers":[{"color":"#c5dac6"}]},{"featureType":"poi.park","elementType":"labels","stylers":[{"visibility":"on"},{"lightness":20}]},{"featureType":"road","elementType":"all","stylers":[{"lightness":20}]},{"featureType":"road.highway","elementType":"geometry","stylers":[{"color":"#c5c6c6"}]},{"featureType":"road.arterial","elementType":"geometry","stylers":[{"color":"#e4d7c6"}]},{"featureType":"road.local","elementType":"geometry","stylers":[{"color":"#fbfaf7"}]},{"featureType":"water","elementType":"all","stylers":[{"visibility":"on"},{"color":"#acbcc9"}]}],
flatMap : [{"stylers":[{"visibility":"off"}]},{"featureType":"road","stylers":[{"visibility":"on"},{"color":"#ffffff"}]},{"featureType":"road.arterial","stylers":[{"visibility":"on"},{"color":"#fee379"}]},{"featureType":"road.highway","stylers":[{"visibility":"on"},{"color":"#fee379"}]},{"featureType":"landscape","stylers":[{"visibility":"on"},{"color":"#f3f4f4"}]},{"featureType":"water","stylers":[{"visibility":"on"},{"color":"#7fc8ed"}]},{},{"featureType":"road","elementType":"labels","stylers":[{"visibility":"on"}]},{"featureType":"poi.park","elementType":"geometry.fill","stylers":[{"visibility":"on"},{"color":"#83cead"}]},{"elementType":"labels","stylers":[{"visibility":"on"}]},{"featureType":"landscape.man_made","elementType":"geometry","stylers":[{"weight":0.9},{"visibility":"off"}]}],
cobaltMap : [{"featureType":"all","elementType":"all","stylers":[{"invert_lightness":true},{"saturation":10},{"lightness":30},{"gamma":0.5},{"hue":"#435158"}]}],
cupertinoMap : [{"featureType":"water","elementType":"geometry","stylers":[{"color":"#a2daf2"}]},{"featureType":"landscape.man_made","elementType":"geometry","stylers":[{"color":"#f7f1df"}]},{"featureType":"landscape.natural","elementType":"geometry","stylers":[{"color":"#d0e3b4"}]},{"featureType":"landscape.natural.terrain","elementType":"geometry","stylers":[{"visibility":"off"}]},{"featureType":"poi.park","elementType":"geometry","stylers":[{"color":"#bde6ab"}]},{"featureType":"poi","elementType":"labels","stylers":[{"visibility":"off"}]},{"featureType":"poi.medical","elementType":"geometry","stylers":[{"color":"#fbd3da"}]},{"featureType":"poi.business","stylers":[{"visibility":"off"}]},{"featureType":"road","elementType":"geometry.stroke","stylers":[{"visibility":"off"}]},{"featureType":"road","elementType":"labels","stylers":[{"visibility":"off"}]},{"featureType":"road.highway","elementType":"geometry.fill","stylers":[{"color":"#ffe15f"}]},{"featureType":"road.highway","elementType":"geometry.stroke","stylers":[{"color":"#efd151"}]},{"featureType":"road.arterial","elementType":"geometry.fill","stylers":[{"color":"#ffffff"}]},{"featureType":"road.local","elementType":"geometry.fill","stylers":[{"color":"black"}]},{"featureType":"transit.station.airport","elementType":"geometry.fill","stylers":[{"color":"#cfb2db"}]}],
carMap : [{"featureType":"administrative","stylers":[{"visibility":"off"}]},{"featureType":"poi","stylers":[{"visibility":"simplified"}]},{"featureType":"road","stylers":[{"visibility":"simplified"}]},{"featureType":"water","stylers":[{"visibility":"simplified"}]},{"featureType":"transit","stylers":[{"visibility":"simplified"}]},{"featureType":"landscape","stylers":[{"visibility":"simplified"}]},{"featureType":"road.highway","stylers":[{"visibility":"off"}]},{"featureType":"road.local","stylers":[{"visibility":"on"}]},{"featureType":"road.highway","elementType":"geometry","stylers":[{"visibility":"on"}]},{"featureType":"water","stylers":[{"color":"#84afa3"},{"lightness":52}]},{"stylers":[{"saturation":-77}]},{"featureType":"road"}],
bwMap : [{stylers: [{ hue: "#00ffe6" }, { saturation: -100 } ] },{featureType: "road", elementType: "geometry", stylers: [{ lightness: 100 }, { visibility: "simplified" } ] },{featureType: "road", elementType: "labels", stylers: [{ visibility: "off" } ] } ],
});
sAnimation.registry.s_media_block.include({
selector: ".s_media_block",
create_youtube_video: function () {
return this.YTPlayer_video.apply(this, arguments);
},
stop_video: function () {
this._super.apply(this, arguments);
this.$target.find('.yt_video_container').remove();
},
});
});
@@ -0,0 +1,106 @@
odoo.define('theme_avantgarde.frontend', function (require) {
'use strict';
var base = require('web_editor.base');
var sAnimation = require('website.content.snippets.animation');
base.ready().then(function () {
var $wrapwrap = $("#wrapwrap");
$wrapwrap.find('.o_header_affix').removeAttr('id');
// Clean vertical align
$(".v-align").filter(function () {
return $(this).parent().is(":not(.slide)");
}).addClass("preserve3d");
});
/**
* Avantgarde has an extended version of the moveToTop option: it can work
* on dynamic website pages (/shop, /blog, ...). It is also automatic for
* "full" blog covers. The style is also different as the top content is
* full width and goes below the #wrap element (even if that one is not fw).
*/
sAnimation.registry.move_to_top = sAnimation.Class.extend({
selector: '.move_to_top, #title.blog_header > .cover.cover_full',
/**
* @override
*/
start: function () {
var self = this;
var def = this._super.apply(this, arguments);
$('#wrapwrap').addClass('o_header_overlay');
$(window).on('resize.move_to_top', _.debounce(function () {
if (self.isDestroyed()) {
// May happen since this is debounced
return;
}
self._adaptWrap();
}, 250));
setTimeout(function () {
self._adaptWrap();
}, 250);
return def;
},
/**
* @override
*/
destroy: function () {
this._super.apply(this, arguments);
$('#wrapwrap').removeClass('o_header_overlay');
$(window).off('.move_to_top');
$('#wrap').css('margin-top', '');
},
//----------------------------------------------------------------------
// Private
//----------------------------------------------------------------------
/**
* @private
*/
_adaptWrap: function () {
$('#wrap').css('margin-top', this.$target.outerHeight());
},
});
// Ripple animation
sAnimation.registry.avant_links = sAnimation.Class.extend({
selector: ".btn, .dropdown-item",
start: function () {
var btn = this.$target;
btn
.css({ position: 'relative', overflow: 'hidden'})
.bind('mousedown', function (e) {
var ripple;
if (btn.find('.avant-ripple').length === 0) {
ripple = $('<span class="avant-ripple"/>');
btn.prepend(ripple);
} else {
ripple = btn.find('.avant-ripple');
}
ripple.removeClass('avant-ripple-animated');
if (!ripple.height() && !ripple.width()) {
var diameter = Math.max(btn.outerWidth(), btn.outerHeight());
ripple.css({ height: diameter, width: diameter });
}
var x = e.pageX - btn.offset().left - ripple.width() / 2;
var y = e.pageY - btn.offset().top - ripple.height() / 2;
ripple
.css({ top: y + 'px',left: x + 'px'})
.addClass('avant-ripple-animated');
setTimeout(function () {
ripple.removeClass('avant-ripple-animated');
}, 351);
});
return this._super.apply(this, arguments);
},
});
});