Added environment options - Fixed #56
parent
1c2ac2a308
commit
e58bbbeacf
|
|
@ -19,8 +19,10 @@ class ThemeAdmin(admin.ModelAdmin):
|
|||
(_('Environment'), {
|
||||
'classes': ('wide', ),
|
||||
'fields': (
|
||||
'env',
|
||||
'env_visible',
|
||||
'env_name',
|
||||
'env_color',
|
||||
'env_visible_in_header',
|
||||
'env_visible_in_favicon',
|
||||
)
|
||||
}),
|
||||
(_('Logo'), {
|
||||
|
|
|
|||
|
|
@ -0,0 +1,59 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import colorfield.fields
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('admin_interface', '0010_add_localization'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RenameField(
|
||||
model_name='theme',
|
||||
old_name='env',
|
||||
new_name='env_name',
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='theme',
|
||||
name='env_name',
|
||||
field=models.CharField(
|
||||
blank=True,
|
||||
max_length=50,
|
||||
verbose_name='name'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='theme',
|
||||
name='env_color',
|
||||
field=colorfield.fields.ColorField(
|
||||
blank=True,
|
||||
default='#E74C3C',
|
||||
help_text='(red: #E74C3C, orange: #E67E22, yellow: #F1C40F, green: #2ECC71, blue: #3498DB)',
|
||||
max_length=10,
|
||||
verbose_name='color'),
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='theme',
|
||||
old_name='env_visible',
|
||||
new_name='env_visible_in_header',
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='theme',
|
||||
name='env_visible_in_header',
|
||||
field=models.BooleanField(
|
||||
default=True,
|
||||
verbose_name='visible in header (marker and name)'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='theme',
|
||||
name='env_visible_in_favicon',
|
||||
field=models.BooleanField(
|
||||
default=True,
|
||||
verbose_name='visible in favicon (marker)'),
|
||||
),
|
||||
]
|
||||
|
|
@ -67,7 +67,7 @@ class Theme(models.Model):
|
|||
default='#F5DD5D',
|
||||
help_text='#F5DD5D',
|
||||
max_length=10,
|
||||
verbose_name=_('title color'))
|
||||
verbose_name=_('color'))
|
||||
title_visible = models.BooleanField(
|
||||
default=True,
|
||||
verbose_name=_('visible'))
|
||||
|
|
@ -82,7 +82,7 @@ class Theme(models.Model):
|
|||
default='#FFFFFF',
|
||||
help_text='#FFFFFF',
|
||||
max_length=10,
|
||||
verbose_name=_('logo color'))
|
||||
verbose_name=_('color'))
|
||||
logo_visible = models.BooleanField(
|
||||
default=True,
|
||||
verbose_name=_('visible'))
|
||||
|
|
@ -93,35 +93,22 @@ class Theme(models.Model):
|
|||
help_text=_('(.ico|.png|.gif - 16x16|32x32 px)'),
|
||||
verbose_name=_('favicon'))
|
||||
|
||||
envs = (
|
||||
'development',
|
||||
'testing',
|
||||
'staging',
|
||||
'production',
|
||||
)
|
||||
env_choices = (
|
||||
(envs[0], _('Development'), ),
|
||||
(envs[1], _('Testing'), ),
|
||||
(envs[2], _('Staging'), ),
|
||||
(envs[3], _('Production'), ),
|
||||
)
|
||||
env = models.CharField(
|
||||
env_name = models.CharField(
|
||||
blank=True,
|
||||
max_length=50,
|
||||
choices=env_choices,
|
||||
default=env_choices[0][0],
|
||||
verbose_name=_('environment'))
|
||||
env_visible = models.BooleanField(
|
||||
verbose_name=_('name'))
|
||||
env_color = ColorField(
|
||||
blank=True,
|
||||
default='#E74C3C',
|
||||
help_text=_('(red: #E74C3C, orange: #E67E22, yellow: #F1C40F, green: #2ECC71, blue: #3498DB)'),
|
||||
max_length=10,
|
||||
verbose_name=_('color'))
|
||||
env_visible_in_header = models.BooleanField(
|
||||
default=True,
|
||||
verbose_name=_('visible'))
|
||||
env_colors = {
|
||||
envs[0]: '#e74c3c',
|
||||
envs[1]: '#e67e22',
|
||||
envs[2]: '#f1c40f',
|
||||
envs[3]: '#2ecc71',
|
||||
}
|
||||
@property
|
||||
def env_color(self):
|
||||
return Theme.env_colors.get(self.env, '')
|
||||
verbose_name=_('visible in header (marker and name)'))
|
||||
env_visible_in_favicon = models.BooleanField(
|
||||
default=True,
|
||||
verbose_name=_('visible in favicon (marker)'))
|
||||
|
||||
css_header_background_color = ColorField(
|
||||
blank=True,
|
||||
|
|
|
|||
|
|
@ -64,5 +64,5 @@ https://github.com/fabiocaccamo/django-admin-interface
|
|||
|
||||
{% block welcome-msg %}
|
||||
{% get_admin_interface_theme as theme %}
|
||||
{% if theme.env_visible %}<span class="enviroment-label {{ theme.env }}"></span> - {% endif %}{{ block.super }}<br>
|
||||
{% if theme.env_visible_in_header %}<span class="enviroment-label {{ theme.env_name }}"></span> - {% endif %}{{ block.super }}<br>
|
||||
{% endblock %}
|
||||
|
|
@ -11,7 +11,7 @@
|
|||
display: inline-block;
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
background-color: #CCCCCC;
|
||||
background-color: {{ theme.env_color }};
|
||||
border-radius: 100%;
|
||||
margin-right: 6px;
|
||||
box-sizing: border-box;
|
||||
|
|
@ -19,44 +19,12 @@
|
|||
-webkit-box-sizing: border-box;
|
||||
}
|
||||
|
||||
.admin-interface .enviroment-label.development::before {
|
||||
background-color: {{ theme.env_colors.development }};
|
||||
}
|
||||
|
||||
.admin-interface .enviroment-label.testing::before {
|
||||
background-color: {{ theme.env_colors.testing }};
|
||||
}
|
||||
|
||||
.admin-interface .enviroment-label.staging::before {
|
||||
background-color: {{ theme.env_colors.staging }};
|
||||
}
|
||||
|
||||
.admin-interface .enviroment-label.production::before {
|
||||
background-color: {{ theme.env_colors.production }};
|
||||
}
|
||||
|
||||
.admin-interface .enviroment-label::after {
|
||||
content: "";
|
||||
}
|
||||
|
||||
.admin-interface .enviroment-label.development::after {
|
||||
content: "development";
|
||||
}
|
||||
|
||||
.admin-interface .enviroment-label.testing::after {
|
||||
content: "testing";
|
||||
}
|
||||
|
||||
.admin-interface .enviroment-label.staging::after {
|
||||
content: "staging";
|
||||
}
|
||||
|
||||
.admin-interface .enviroment-label.production::after {
|
||||
content: "production";
|
||||
content: "{{ theme.env_name }}";
|
||||
}
|
||||
|
||||
.admin-interface #branding h1 {
|
||||
color:{{ theme.title_color }};
|
||||
color: {{ theme.title_color }};
|
||||
}
|
||||
|
||||
.admin-interface #branding h1 .logo.default {
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
{% if theme.favicon %}
|
||||
<link rel="icon" type="image/x-icon" href="{{ theme.favicon.url }}?v={{ version }}" />
|
||||
{% if theme.env_visible %}
|
||||
{% if theme.env_visible_in_favicon %}
|
||||
<script type="text/javascript" src="{% static 'admin_interface/favico/favico-0.3.10-patched.min.js' %}?v={{ version }}"></script>
|
||||
<script type="text/javascript">
|
||||
var favicon = new Favico({
|
||||
|
|
|
|||
Loading…
Reference in New Issue