Projet

Général

Profil

0001-backoffice-adapt-sidebar-to-native-gadjo-sidebar-224.patch

Frédéric Péters, 06 avril 2018 11:38

Télécharger (5,45 ko)

Voir les différences:

Subject: [PATCH 1/8] backoffice: adapt sidebar to native gadjo sidebar
 (#22440)

 wcs/qommon/static/css/dc2/admin.css  | 38 +++++++++++++---------------
 wcs/qommon/static/js/qommon.admin.js | 23 ++++++++---------
 wcs/templates/wcs/backoffice.html    | 15 +++++------
 3 files changed, 35 insertions(+), 41 deletions(-)
wcs/qommon/static/css/dc2/admin.css
198 198
	margin-bottom: 2em;
199 199
}
200 200

  
201
div#sidebar div.news h3,
201
aside#sidebar div.news h3,
202 202
div#new-trigger h3,
203 203
div#new-field h3 {
204 204
	margin: 0;
......
208 208
	border-bottom: 1px solid #dcdcdc;
209 209
}
210 210

  
211
div#sidebar div.news h3 {
211
aside#sidebar div.news h3 {
212 212
	margin-top: 1em;
213 213
}
214 214

  
......
581 581
	border-color: white;
582 582
}
583 583

  
584
div#main-content.with-sidebar {
585
	width: 75%;
586
}
587

  
588
div#sidebar {
584
div#sticky-sidebar {
589 585
	position: absolute;
590
	right: 0;
591
	width: 21%;
592
	margin-right: 2%;
593
	color: #666;
594 586
	height: calc(100vh - 5em - 3em);
595 587
	overflow-y: auto;
596
	padding-left: 2px;
588
	width: 100%;
597 589
}
598 590

  
599
div#sidebar form#listing-settings div.StringWidget input,
600
div#sidebar select {
591
aside#sidebar form#listing-settings div.StringWidget input,
592
aside#sidebar select {
601 593
	width: 100%;
602 594
	margin: 1px 0;
603 595
}
......
628 620
	text-overflow: ellipsis;
629 621
}
630 622

  
631
div#sidebar input.inline-input {
623
aside#sidebar input.inline-input {
632 624
	margin-right: 1em;
633 625
}
634 626

  
635
div#sidebar input.side-button {
627
aside#sidebar input.side-button {
636 628
	margin-top: 0;
637 629
}
638 630

  
639
div#sidebar div.bo-block {
631
aside#sidebar div.bo-block {
640 632
	margin-left: 0;
641 633
	margin-right: 0;
642 634
}
......
1020 1012
}
1021 1013

  
1022 1014
#sidebar-toggle {
1023
	float: left;
1015
	display: block;
1016
	text-align: center;
1017
	z-index: 10;
1018
	top: 0;
1019
	left: -1rem;
1024 1020
	position: absolute;
1025 1021
	height: 50px;
1026 1022
	line-height: 50px;
......
1183 1179
		padding: 1em 6px 0 6px;
1184 1180
	}
1185 1181

  
1186
	div#sidebar {
1182
	aside#sidebar {
1187 1183
		float: none;
1188 1184
		width: auto;
1189 1185
		margin: 2%;
......
1363 1359
}
1364 1360

  
1365 1361
@media print {
1366
	div#sidebar {
1362
	aside#sidebar {
1367 1363
		display: none;
1368 1364
	}
1369 1365
	div#main-content {
......
1580 1576
	padding-right: 1ex;
1581 1577
}
1582 1578

  
1583
div#sidebar div.MapWidget {
1579
aside#sidebar div.MapWidget {
1584 1580
	margin: 0 1px;
1585 1581
	border: 1px solid #888;
1586 1582
}
wcs/qommon/static/js/qommon.admin.js
130 130

  
131 131
    /* possibility to toggle the sidebar */
132 132
    if ($('#sidebar').length) {
133
      $('#main-content').after($('<span id="sidebar-toggle">&#8286;</span>'));
134 133
      $('#sidebar-toggle').click(function() {
135
        if ($('#sidebar').css('display') === 'none') {
136
          $('#main-content').animate({width: '75%'}, 400,
137
              function() {$('#sidebar').show()});
134
        if ($('#sticky-sidebar').css('display') === 'none') {
135
          $('#sidebar').animate({'max-width': '30rem'}, 400,
136
              function() {$('#sticky-sidebar').show()});
138 137
        } else {
139
          $('#sidebar').hide();
140
          $('#main-content').animate({width: '99%'});
138
          $('#sticky-sidebar').hide();
139
          $('#sidebar').animate({'max-width': '0rem'});
141 140
        }
142 141
      });
143 142
    }
......
148 147
    });
149 148

  
150 149
    /* keep sidebar sticky */
151
    if ($('#sidebar').length) {
150
    if ($('#sticky-sidebar').length) {
152 151
      var $window = $(window);
153
      var sidebar_fixed_from = $('#sidebar').offset().top;
154
      var sidebar_top = $('#sidebar').position().top;
152
      var sidebar_fixed_from = $('#sticky-sidebar').offset().top;
153
      var sidebar_top = $('#sticky-sidebar').position().top;
155 154
      $window.bind('scroll', function() {
156 155
        var pos = $window.scrollTop();
157 156
        var minus = 0;
158 157
        if (pos >= sidebar_fixed_from) {
159
          $('#sidebar').css('top', pos - (sidebar_fixed_from - sidebar_top));
158
          $('#sticky-sidebar').css('top', pos - (sidebar_fixed_from - sidebar_top));
160 159
        } else {
161
          $('#sidebar').css('top', 'auto');
160
          $('#sticky-sidebar').css('top', 'auto');
162 161
          minus = sidebar_fixed_from - pos;
163 162
        }
164
        $('#sidebar').css('height', 'calc(100vh - 5px - ' + minus + 'px)');
163
        $('#sticky-sidebar').css('height', 'calc(100vh - 5px - ' + minus + 'px)');
165 164
      });
166 165
      $window.trigger('scroll');
167 166
    }
wcs/templates/wcs/backoffice.html
29 29
</div>
30 30
{% endblock %}
31 31

  
32
{% block main-content-attributes %}
33
{% if sidebar %}class="with-sidebar"{% endif %}
34
{% endblock %}
35

  
36 32
{% block main-content %}
37 33
{{ body|safe }}
38 34
{% endblock %}
39 35

  
40
{% block after-main-content %}
36
{% block sidebar %}
41 37
{% if sidebar %}
42
<div id="sidebar">
43
{{ sidebar|safe }}
44
</div>
38
<aside id="sidebar">
39
  <span id="sidebar-toggle">&#8286;</span>
40
  <div id="sticky-sidebar">
41
    {{ sidebar|safe }}
42
  </div>
43
</aside>
45 44
{% endif %}
46 45
{% endblock %}
47
-