[MERGE] from upstream
bzr revid: fva@openerp.com-20130731151230-vyg6y8362khlu0ry
This commit is contained in:
@@ -18,8 +18,9 @@ import werkzeug.wrappers
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
def template_values():
|
||||
script = "\n".join(['<script type="text/javascript" src="%s"></script>' % i for i in manifest_list('js', db=request.db)])
|
||||
css = "\n".join('<link rel="stylesheet" href="%s">' % i for i in manifest_list('css', db=request.db))
|
||||
debug = 'debug' in request.params
|
||||
script = "\n".join(['<script type="text/javascript" src="%s"></script>' % i for i in manifest_list('js', db=request.db, debug=debug)])
|
||||
css = "\n".join('<link rel="stylesheet" href="%s">' % i for i in manifest_list('css', db=request.db, debug=debug))
|
||||
try:
|
||||
request.session.check_security()
|
||||
loggued = True
|
||||
|
||||
@@ -177,5 +177,10 @@
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
.carousel > .css_carousel_options {
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
white-space: nowrap;
|
||||
z-index: 1;
|
||||
display: none;
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
openerp.website = function(instance) {
|
||||
var _lt = instance.web._lt;
|
||||
var QWeb = instance.web.qweb;
|
||||
instance.website.EditorBar = instance.web.Widget.extend({
|
||||
template: 'Website.EditorBar',
|
||||
events: {
|
||||
@@ -116,7 +117,7 @@ instance.website.EditorBar = instance.web.Widget.extend({
|
||||
var self = this;
|
||||
$('.oe_snippet_drop').remove();
|
||||
var droppable = '<div class="oe_snippet_drop"></div>';
|
||||
var $zone = $('*:not(.oe_snippet) > .container');
|
||||
var $zone = $(':not(.oe_snippet) > .container');
|
||||
$zone.before(droppable).after(droppable);
|
||||
|
||||
$(".oe_snippet_drop").droppable({
|
||||
@@ -338,11 +339,18 @@ instance.website.RTE = instance.web.Widget.extend({
|
||||
this.toggle(!!CKEDITOR.currentInstance);
|
||||
},
|
||||
_config: function () {
|
||||
var removed_plugins = [
|
||||
// remove toolbar entirely
|
||||
'toolbar,elementspath,resize',
|
||||
// remove custom context menu
|
||||
'contextmenu,tabletools,liststyle',
|
||||
// magicline captures mousein/mouseout => draggable does not work
|
||||
'magicline'
|
||||
];
|
||||
return {
|
||||
// Don't load ckeditor's style rules
|
||||
stylesSet: [],
|
||||
// Remove toolbar entirely, also custom context menu
|
||||
removePlugins: 'toolbar,elementspath,resize,contextmenu,tabletools,liststyle',
|
||||
removePlugins: removed_plugins.join(','),
|
||||
uiColor: '',
|
||||
// Ensure no config file is loaded
|
||||
customConfig: '',
|
||||
@@ -356,60 +364,24 @@ instance.website.RTE = instance.web.Widget.extend({
|
||||
// TODO clean
|
||||
snippet_carousel: function () {
|
||||
var self = this;
|
||||
$carousels = $("<div/>");
|
||||
$carousels.css({'position': 'absolute', 'top': 0, 'white-space': 'nowrap'});
|
||||
$carousels.insertAfter(self.$el);
|
||||
$('.carousel .js_carousel_options .label').on('click', function (e) {
|
||||
e.preventDefault();
|
||||
var $button = $(e.currentTarget)
|
||||
var $c = $button.parents(".carousel:first");
|
||||
|
||||
$(".carousel").each(function() {
|
||||
var $carousel = new instance.website.snippet.carousel(self, this);
|
||||
$carousel.appendTo($carousels);
|
||||
if($button.hasClass("js_add")) {
|
||||
var cycle = $c.find(".carousel-inner .item").size();
|
||||
$c.find(".carousel-inner").append(QWeb.render("Website.Snipped.carousel"));
|
||||
$c.carousel(cycle);
|
||||
}
|
||||
else {
|
||||
var cycle = $c.find(".carousel-inner .item.active").remove();
|
||||
$c.find(".carousel-inner .item:first").addClass("active");
|
||||
$c.carousel(0);
|
||||
self.trigger('change', self, null);
|
||||
}
|
||||
});
|
||||
$(document).on("scroll", function () {
|
||||
$carousels.css("top", (-self.$el.offset().top+2) + 'px');
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
instance.website.snippet = {};
|
||||
instance.website.snippet.carousel = instance.web.Widget.extend({
|
||||
template: 'Website.Snipped.carousel',
|
||||
events: {
|
||||
'click .add': 'add_page',
|
||||
'click .remove': 'remove_page',
|
||||
},
|
||||
instances: [],
|
||||
init: function (parent, carousel) {
|
||||
this._super(parent);
|
||||
this.parent = parent;
|
||||
var index = instance.website.snippet.carousel.index || 0;
|
||||
instance.website.snippet.carousel.index = index++;
|
||||
this.index = index;
|
||||
$(carousel).addClass("carousel-index-"+index);
|
||||
this.offset = $(carousel).offset();
|
||||
},
|
||||
start: function () {
|
||||
var self = this;
|
||||
this.$el.css({position: 'absolute', top: this.offset.top+'px', left: this.offset.left+'px'});
|
||||
},
|
||||
destroy: function () {
|
||||
return this._super();
|
||||
},
|
||||
get_carousel: function() {
|
||||
return $(".carousel.carousel-index-"+this.index);
|
||||
},
|
||||
add_page: function() {
|
||||
var $c = this.get_carousel();
|
||||
var cycle = $c.find(".carousel-inner .item").size();
|
||||
$c.find(".carousel-inner").append(this.$(".item").clone());
|
||||
$c.carousel(cycle);
|
||||
},
|
||||
remove_page: function() {
|
||||
var $c = this.get_carousel();
|
||||
var cycle = $c.find(".carousel-inner .item.active").remove();
|
||||
$c.find(".carousel-inner .item:first").addClass("active");
|
||||
$c.carousel(0);
|
||||
this.parent.trigger('change', this.parent, null);
|
||||
$('.carousel .js_carousel_options').show();
|
||||
}
|
||||
});
|
||||
|
||||
@@ -490,10 +462,8 @@ $(function(){
|
||||
}
|
||||
event.preventDefault();
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
instance.web.ActionRedirect = function(parent, action) {
|
||||
var url = $.deparam(window.location.href).url;
|
||||
if (url) {
|
||||
|
||||
@@ -19,16 +19,10 @@
|
||||
</div>
|
||||
</t>
|
||||
<t t-name="Website.Snipped.carousel">
|
||||
<div style="position: absolute; top: -4px;">
|
||||
<span class="label" style="cursor:pointer"><i class="add icon-plus-sign"></i></span>
|
||||
<span class="label" style="cursor:pointer"><i class="remove icon-minus-sign"></i></span>
|
||||
<div style="display: none;">
|
||||
<div class="item" style="background-image: url(/website/static/src/img/china.jpg); background-size: cover; background-position: bottom;" >
|
||||
<div class='container'>
|
||||
<h1 class='mt64'>Your New Banner Slide</h1>
|
||||
<h2>With another convincing subtitle</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item" style="background-image: url(/website/static/src/img/china.jpg); background-size: cover; background-position: bottom;" >
|
||||
<div class='container'>
|
||||
<h1 class='mt64'>Your New Banner Slide</h1>
|
||||
<h2>With another convincing subtitle</h2>
|
||||
</div>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
@@ -204,6 +204,11 @@
|
||||
|
||||
<section>
|
||||
<div id="myCarousel" class="carousel slide" data-interval='1000000'>
|
||||
<div class="css_carousel_options js_carousel_options" t-ignore="1">
|
||||
<span class="label js_add"><i class="icon-plus-sign"></i></span>
|
||||
<span class="label js_remove"><i class="icon-minus-sign"></i></span>
|
||||
</div>
|
||||
<!-- Carousel items -->
|
||||
<div class="carousel-inner">
|
||||
<div class="item active" style="background-image: url(/website/static/src/img/greenfields.jpg); background-size: cover;" >
|
||||
<div class='container'>
|
||||
|
||||
Reference in New Issue
Block a user