Skip to content

Commit 27f96b5

Browse files
committed
make collapsable more usable and switch to left
1 parent ee7f616 commit 27f96b5

File tree

5 files changed

+33
-29
lines changed

5 files changed

+33
-29
lines changed

cms/static/cms/css/plugins/cms.placeholders.css

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
190 Bytes
Loading

cms/static/cms/js/plugins/cms.placeholders.js

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -46,23 +46,16 @@ $(document).ready(function () {
4646
this._collapsables(placeholders.find('.cms_draggable'));
4747

4848
// add global collapsable events
49-
placeholders.find('.cms_expandmenu').bind('click', function () {
50-
var el = $(this);
51-
if(el.hasClass('cms_expandmenu-collapsed')) {
52-
that._collapseAll(el.closest('.cms_placeholder'));
53-
el.removeClass('cms_expandmenu-collapsed');
54-
} else {
55-
that._expandAll(el.closest('.cms_placeholder'));
56-
el.addClass('cms_expandmenu-collapsed');
57-
}
49+
placeholders.find('.cms_placeholder-title').bind('click', function () {
50+
($(this).hasClass('cms_placeholder-title-expanded')) ? that._collapseAll($(this)) : that._expandAll($(this));
5851
});
5952

6053
// check which button should be shown for collapsemenu
6154
placeholders.each(function (index, item) {
6255
var els = $(item).find('.cms_dragitem-collapsable');
6356
var open = els.filter('.cms_dragitem-expanded');
6457
if(els.length === open.length && (els.length + open.length !== 0)) {
65-
$(item).find('.cms_expandmenu').addClass('cms_expandmenu-collapsed');
58+
$(item).find('.cms_placeholder-title').addClass('cms_placeholder-title-expanded');
6659
}
6760
});
6861
},
@@ -369,18 +362,24 @@ $(document).ready(function () {
369362
});
370363
},
371364

372-
_expandAll: function (placeholder) {
373-
var items = placeholder.find('.cms_dragitem-collapsable');
374-
items.each(function () {
375-
if(!$(this).hasClass('cms_dragitem-expanded')) $(this).trigger('click');
376-
});
365+
_expandAll: function (el) {
366+
var items = el.closest('.cms_placeholder').find('.cms_dragitem-collapsable');
367+
// cancel if there are no items
368+
if(!items.length) return false;
369+
items.each(function () {
370+
if(!$(this).hasClass('cms_dragitem-expanded')) $(this).trigger('click');
371+
});
372+
373+
el.addClass('cms_placeholder-title-expanded');
377374
},
378375

379-
_collapseAll: function (placeholder) {
380-
var items = placeholder.find('.cms_dragitem-collapsable');
381-
items.each(function () {
382-
if($(this).hasClass('cms_dragitem-expanded')) $(this).trigger('click');
383-
});
376+
_collapseAll: function (el) {
377+
var items = el.closest('.cms_placeholder').find('.cms_dragitem-collapsable');
378+
items.each(function () {
379+
if($(this).hasClass('cms_dragitem-expanded')) $(this).trigger('click');
380+
});
381+
382+
el.removeClass('cms_placeholder-title-expanded');
384383
},
385384

386385
_preventEvents: function () {

cms/static/cms/sass/plugins/cms.placeholders.scss

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,21 @@
2323
@include border-radius(3px); background:$color-grey-70;
2424

2525
.cms_placeholder-title { font-size:12px; line-height:16px; text-transform:uppercase;
26-
font-weight:500; padding:0 0 0 2px; height:20px;
27-
color:white; @include text-shadow(0px 1px 0px black); }
26+
font-weight:500; padding:0 0 0 15px; height:20px; cursor:pointer;
27+
color:white; @include text-shadow(0px 1px 0px black);
2828

29-
.cms_expandmenu { float:right; width:20px; height:20px; cursor:pointer;
30-
background:url('../../img/toolbar/sprite_toolbar.png') no-repeat -80px -113px;
31-
&:hover { background-position:-100px -113px; }
29+
&:before { content:" "; position:absolute; left:0; top:0; width:15px; height:20px;
30+
background:url('../../img/toolbar/sprite_toolbar.png') no-repeat -85px -113px;
31+
}
32+
&:hover {
33+
&:before { background-position:-105px -113px; }
34+
}
3235
}
33-
.cms_expandmenu-collapsed { background-position:-120px -113px;
34-
&:hover { background-position:-140px -113px; }
36+
.cms_placeholder-title-expanded {
37+
&:before { background-position:-124px -114px; }
38+
&:hover {
39+
&:before { background-position:-144px -114px !important; }
40+
}
3541
}
3642
}
3743

cms/templates/cms/toolbar/placeholder_bar.html

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
{% include "cms/toolbar/draggable_menu.html" with plugin_classes=installed_plugins %}
1515
</div>
1616
</div>
17-
<div class="cms_expandmenu" title="{% trans "Expand / Collapse" %}"></div>
1817
{% endlanguage %}
1918

2019
<div class="cms_placeholder-title">{{ placeholder_label }}</div>

0 commit comments

Comments
 (0)