Advanced django admin integration

This commit is contained in:
seroy
2017-03-17 06:22:31 +03:00
parent 3951266747
commit d07da55215
7 changed files with 236 additions and 42 deletions

View File

@@ -0,0 +1,49 @@
.localized-fields-widget {
margin-left: 160px;
}
.localized-fields-widget.tabs {
display: block;
margin: 0;
border-bottom: 1px solid #eee;
}
.localized-fields-widget.tabs .localized-fields-widget.tab {
display: inline-block;
margin-left: 5px;
border: 1px solid #79aec8;
border-bottom: none;
border-radius: 4px;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
background: #79aec8;
color: #fff;
font-weight: 400;
}
.localized-fields-widget.tabs .localized-fields-widget.tab:first-child {
margin-left: 0;
}
.localized-fields-widget.tabs .localized-fields-widget.tab:hover {
background: #417690;
border-color: #417690;
}
.localized-fields-widget.tabs .localized-fields-widget.tab a {
padding: 5px 10px;
display: inline-block;
text-decoration: none;
color: #fff;
}
.localized-fields-widget.tabs .localized-fields-widget.tab.active,
.localized-fields-widget.tabs .localized-fields-widget.tab.active:hover {
background: #fff;
border-color: #aaaaaa;
}
.localized-fields-widget.tabs .localized-fields-widget.tab.active a,
.localized-fields-widget.tabs .localized-fields-widget.tab.active:hover a{
color: #000;
}

View File

@@ -0,0 +1,35 @@
(function($) {
var syncTabs = function(lang) {
$('.localized-fields-widget.tab a:contains("'+lang+'")').each(function(){
$(this).parents('.localized-fields-widget[role="tabs"]').find('.localized-fields-widget.tab').removeClass('active');
$(this).parents('.localized-fields-widget.tab').addClass('active');
$(this).parents('.localized-fields-widget[role="tabs"]').children('.localized-fields-widget [role="tabpanel"]').hide();
$($(this).attr('href')).show();
});
}
$(function (){
$('.localized-fields-widget [role="tabpanel"]').hide();
// set first tab as active
$('.localized-fields-widget[role="tabs"]').each(function () {
$(this).find('.localized-fields-widget.tab:first').addClass('active');
$($(this).find('.localized-fields-widget.tab:first a').attr('href')).show();
});
// try set active last selected tab
if (window.sessionStorage) {
var lang = window.sessionStorage.getItem('localized-field-lang');
if (lang) {
syncTabs(lang);
}
}
$('.localized-fields-widget.tab a').click(function(event) {
event.preventDefault();
syncTabs(this.innerText);
if (window.sessionStorage) {
window.sessionStorage.setItem('localized-field-lang', this.innerText);
}
return false;
});
});
})(django.jQuery)