Configuration moved to config.py, Sort option by name added
This commit is contained in:
parent
983fa59231
commit
9da7e60a13
24
__init__.py
24
__init__.py
@ -25,34 +25,28 @@ DATA_TYPE_ITEM = 'item'
|
||||
DATA_TYPE_SEARCH = 'search'
|
||||
|
||||
|
||||
def __get_settings__():
|
||||
from .models import Setting
|
||||
try:
|
||||
s = Setting.objects.get(id=1)
|
||||
except Setting.DoesNotExist:
|
||||
s = Setting(id=1)
|
||||
s.save()
|
||||
return s
|
||||
|
||||
|
||||
def suspend_public():
|
||||
return __get_settings__().suspend_puplic
|
||||
return settings.SUSPEND_PUBLIC
|
||||
|
||||
|
||||
def show_image():
|
||||
return __get_settings__().show_image
|
||||
return settings.SHOW_IMAGE
|
||||
|
||||
|
||||
def show_video():
|
||||
return __get_settings__().show_video
|
||||
return settings.SHOW_VIDEO
|
||||
|
||||
|
||||
def show_audio():
|
||||
return __get_settings__().show_audio
|
||||
return settings.SHOW_AUDIO
|
||||
|
||||
|
||||
def show_other():
|
||||
return __get_settings__().show_other
|
||||
return settings.SHOW_OTHER
|
||||
|
||||
|
||||
def sort_by_date():
|
||||
return settings.SORT_BY_DATE
|
||||
|
||||
|
||||
def dict2args(d):
|
||||
|
3
admin.py
3
admin.py
@ -1,5 +1,5 @@
|
||||
from django.contrib import admin
|
||||
from .models import Item, Tag, Setting, TYPE_AUDIO, TYPE_FOLDER, TYPE_IMAGE, TYPE_VIDEO
|
||||
from .models import Item, Tag, TYPE_AUDIO, TYPE_FOLDER, TYPE_IMAGE, TYPE_VIDEO
|
||||
|
||||
|
||||
class ItemAdmin(admin.ModelAdmin):
|
||||
@ -106,4 +106,3 @@ class TagAdmin(admin.ModelAdmin):
|
||||
|
||||
admin.site.register(Item, ItemAdmin)
|
||||
admin.site.register(Tag, TagAdmin)
|
||||
admin.site.register(Setting)
|
||||
|
16
migrations/0004_delete_setting.py
Normal file
16
migrations/0004_delete_setting.py
Normal file
@ -0,0 +1,16 @@
|
||||
# Generated by Django 2.2.9 on 2020-01-31 09:37
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('pygal', '0003_auto_20200130_2203'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.DeleteModel(
|
||||
name='Setting',
|
||||
),
|
||||
]
|
16
models.py
16
models.py
@ -9,7 +9,6 @@ import logging
|
||||
import media
|
||||
import os
|
||||
import pygal
|
||||
import subprocess
|
||||
import time
|
||||
|
||||
DEBUG = False
|
||||
@ -306,11 +305,14 @@ class Item(models.Model):
|
||||
return user in parent.modify_access.all()
|
||||
|
||||
def sort_string(self):
|
||||
if pygal.sort_by_date():
|
||||
try:
|
||||
tm = int(self.item_data.datetime.strftime('%s'))
|
||||
except AttributeError:
|
||||
raise AttributeError('Unable to create a sortstring for %s. Used datetime was: %s' % (str(self), repr(self.item_data.datetime)))
|
||||
return '%012d_%s' % (tm, os.path.basename(self.rel_path))
|
||||
else:
|
||||
return self.rel_path
|
||||
|
||||
def sorted_itemlist(self):
|
||||
if self.type == TYPE_FOLDER:
|
||||
@ -357,7 +359,7 @@ class Item(models.Model):
|
||||
|
||||
def current_settings(self):
|
||||
if self.__current_settings__ is None:
|
||||
self.__current_settings__ = pygal.show_audio() * 1 + pygal.show_image() * 2 + pygal.show_other() * 3 + pygal.show_video() * 4
|
||||
self.__current_settings__ = pygal.show_audio() * 1 + pygal.show_image() * 2 + pygal.show_other() * 4 + pygal.show_video() * 8 + pygal.sort_by_date() * 16
|
||||
return self.__current_settings__
|
||||
|
||||
def __cache_update_needed__(self):
|
||||
@ -413,7 +415,7 @@ class Item(models.Model):
|
||||
self.num_videos_c += 1
|
||||
# sorted item list
|
||||
sil.append(sub_item)
|
||||
sil.sort(key=lambda entry: entry.sort_string(), reverse=True)
|
||||
sil.sort(key=lambda entry: entry.sort_string(), reverse=pygal.sort_by_date())
|
||||
self.sil_c = json.dumps([i.rel_path for i in sil], indent=4)
|
||||
# datetime
|
||||
if len(sil) > 0:
|
||||
@ -466,11 +468,3 @@ class Tag(models.Model):
|
||||
"""the url to the Django admin interface for the model instance"""
|
||||
info = (self._meta.app_label, self._meta.model_name)
|
||||
return reverse('admin:%s_%s_change' % info, args=(self.pk,))
|
||||
|
||||
|
||||
class Setting(models.Model):
|
||||
suspend_puplic = models.BooleanField(default=True)
|
||||
show_image = models.BooleanField(default=True)
|
||||
show_video = models.BooleanField(default=True)
|
||||
show_audio = models.BooleanField(default=False)
|
||||
show_other = models.BooleanField(default=False)
|
||||
|
Loading…
x
Reference in New Issue
Block a user