forked from rc/aircox
work on archiver
This commit is contained in:
@ -1,10 +1,50 @@
|
||||
# Code inspired from rest_framework of course.
|
||||
import os
|
||||
import stat
|
||||
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
#class BaseSettings:
|
||||
# def __init__(self, user_conf):
|
||||
# if user_conf:
|
||||
# for key, value in user_conf.items():
|
||||
# setattr(self, key, value)
|
||||
#
|
||||
#class Settings(BaseSettings):
|
||||
# default_user_groups = {
|
||||
#
|
||||
# }
|
||||
#
|
||||
# programs_dir = os.path.join(settings.MEDIA_ROOT, 'programs'),
|
||||
# """ Programs data directory. """
|
||||
# episode_title = '{program.title} - {date}'
|
||||
# """ Default episodes title. """
|
||||
# episode_title_date_format = '%-d %B %Y'
|
||||
# """ Date format used in episode title. """
|
||||
#
|
||||
# logs_archives_dir = os.path.join(settings.PROJECT_ROOT, 'logs/archives')
|
||||
# """ Directory where logs are saved once archived """
|
||||
# logs_archive_age = 30
|
||||
# """ Default age of log before being archived """
|
||||
#
|
||||
# sounds_default_dir = os.path.join(settings.MEDIA_ROOT, 'programs/defaults')
|
||||
# sound_archive_dir = 'archives'
|
||||
# sound_excerpt_dir = 'excerpts'
|
||||
# sound_auto_chmod = True
|
||||
# sound_chmod_flags = (stat.S_IRWXU, stat.S_IRWXU | stat.S_IRWXG | stat.S_IROTH)
|
||||
# sound_quality = {
|
||||
# 'attribute': 'RMS lev dB',
|
||||
# 'range': (-18.0, -8.0),
|
||||
# 'sample_length': 120,
|
||||
# }
|
||||
# sound_ext = ('.ogg', '.flac', '.wav', '.mp3', '.opus')
|
||||
#
|
||||
# # TODO: move into aircox_streamer
|
||||
# streamer_working_dir = '/tmp/aircox'
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
def ensure(key, default):
|
||||
globals()[key] = getattr(settings, key, default)
|
||||
|
||||
@ -16,12 +56,22 @@ def ensure(key, default):
|
||||
# to add to each group.
|
||||
ensure('AIRCOX_DEFAULT_USER_GROUPS', {
|
||||
'radio hosts': (
|
||||
# TODO include content_type in order to avoid clash with potential
|
||||
# extra applications
|
||||
|
||||
# aircox
|
||||
'change_program', 'change_episode', 'change_diffusion',
|
||||
'add_comment', 'change_comment', 'delete_comment',
|
||||
'add_article', 'change_article', 'delete_article',
|
||||
'change_sound',
|
||||
'add_track', 'change_track', 'delete_track',
|
||||
|
||||
# taggit
|
||||
'add_tag', 'change_tag', 'delete_tag',
|
||||
|
||||
# filer
|
||||
'add_folder', 'change_folder', 'delete_folder', 'can_use_directory_listing',
|
||||
'add_image', 'change_image', 'delete_image',
|
||||
),
|
||||
})
|
||||
|
||||
@ -29,10 +79,6 @@ ensure('AIRCOX_DEFAULT_USER_GROUPS', {
|
||||
ensure('AIRCOX_PROGRAMS_DIR',
|
||||
os.path.join(settings.MEDIA_ROOT, 'programs'))
|
||||
|
||||
# Directory for working data
|
||||
ensure('AIRCOX_DATA_DIR',
|
||||
os.path.join(settings.PROJECT_ROOT, 'data'))
|
||||
|
||||
|
||||
########################################################################
|
||||
# Programs & Episodes
|
||||
@ -46,9 +92,7 @@ ensure('AIRCOX_EPISODE_TITLE_DATE_FORMAT', '%-d %B %Y')
|
||||
# Logs & Archives
|
||||
########################################################################
|
||||
# Directory where to save logs' archives
|
||||
ensure('AIRCOX_LOGS_ARCHIVES_DIR',
|
||||
os.path.join(AIRCOX_DATA_DIR, 'episodes')
|
||||
)
|
||||
ensure('AIRCOX_LOGS_ARCHIVES_DIR', os.path.join(settings.PROJECT_ROOT, 'logs/archives'))
|
||||
# In days, minimal age of a log before it is archived
|
||||
ensure('AIRCOX_LOGS_ARCHIVES_AGE', 60)
|
||||
|
||||
|
Reference in New Issue
Block a user