+ Приведены все функции приложения в рабочий вид

+ Наведен порядок в файлах проекта
+ Наведен порядок в документации
+ Настроены скрипты установки, развертки и так далее, расширен MakeFile
This commit is contained in:
2025-11-02 06:09:55 +09:00
parent 367e1c932e
commit 2e535513b5
6103 changed files with 7040 additions and 1027861 deletions

View File

@@ -25,6 +25,41 @@ class DesignSettings(models.Model):
blank=True,
help_text='Фоновое изображение'
)
# Новые поля для дашборда
dashboard_layout = models.CharField(
max_length=20,
choices=[
('sidebar', 'Боковая панель'),
('grid', 'Сетка'),
('list', 'Список'),
('cards', 'Карточки'),
('compact', 'Компактный'),
('masonry', 'Кладка'),
('timeline', 'Временная линия'),
('magazine', 'Журнальный'),
],
default='list',
help_text='Стиль отображения дашборда'
)
groups_default_expanded = models.BooleanField(
default=True,
help_text='Развернуты ли группы по умолчанию'
)
show_group_icons = models.BooleanField(
default=True,
help_text='Показывать иконки групп'
)
show_link_icons = models.BooleanField(
default=True,
help_text='Показывать иконки ссылок'
)
dashboard_background_color = models.CharField(
max_length=7,
default='#f8f9fa',
help_text='Цвет фона дашборда (hex)'
)
font_family = models.CharField(
max_length=100,
default='sans-serif',
@@ -34,6 +69,39 @@ class DesignSettings(models.Model):
blank=True,
help_text='Дополнительный CSS'
)
# Новые поля для цветов текста
header_text_color = models.CharField(
max_length=7,
default='#000000',
help_text='Цвет заголовков (hex)'
)
group_text_color = models.CharField(
max_length=7,
default='#333333',
help_text='Цвет названий групп (hex)'
)
link_text_color = models.CharField(
max_length=7,
default='#666666',
help_text='Цвет названий ссылок (hex)'
)
# Поля для настройки обложки
cover_overlay_enabled = models.BooleanField(
default=False,
help_text='Включить цветовое перекрытие обложки'
)
cover_overlay_color = models.CharField(
max_length=7,
default='#000000',
help_text='Цвет перекрытия обложки (hex)'
)
cover_overlay_opacity = models.FloatField(
default=0.5,
help_text='Прозрачность перекрытия (0.0 - 1.0)'
)
updated_at = models.DateTimeField(
auto_now=True,
help_text='Дата и время последнего изменения'
@@ -84,7 +152,7 @@ class DesignSettings(models.Model):
"""
if self.background_image:
self.background_image.delete(save=False)
super().delete(*args, **kwargs)
return super().delete(*args, **kwargs)
# Вспомогательные методы для доступа к данным пользователя