Loading opds_catalog/management/commands/sopds.py→opds_catalog/management/commands/sopds_scanner.py +0 −0 File moved. View file opds_catalog/management/commands/sopds_server.py +16 −8 Original line number Diff line number Diff line Loading @@ -6,10 +6,11 @@ import errno from django.conf import settings from django.core.management.base import BaseCommand from django.core.handlers.wsgi import WSGIHandler from django.core.servers.basehttp import get_internal_wsgi_application, run from django.utils.encoding import force_text from opds_catalog.settings import SERVER_LOG class Command(BaseCommand): help = 'HTTP/OPDS built-in server' Loading Loading @@ -105,13 +106,20 @@ def daemonize(): if os.fork(): # launch child and... os._exit(0) # kill off parent again. os.umask(0) null = os.open("/dev/null", os.O_RDWR) for i in range(3): try: os.dup2(null, i) except OSError as e: if e.errno != errno.EBADF: raise std_in = open("/dev/null", 'r') std_out = open(SERVER_LOG, 'a+') os.dup2(std_in.fileno(), sys.stdin.fileno()) os.dup2(std_out.fileno(), sys.stdout.fileno()) os.dup2(std_out.fileno(), sys.stderr.fileno()) # null = os.open("/dev/null", os.O_RDWR) # for i in range(3): # try: # os.dup2(null, i) # except OSError as e: # if e.errno != errno.EBADF: # raise os.close(null) opds_catalog/management/commands/sopds_util.py 0 → 100644 +18 −0 Original line number Diff line number Diff line from django.core.management.base import BaseCommand from django.core.management import call_command from opds_catalog import opdsdb class Command(BaseCommand): help = 'Utils for SOPDS.' def add_arguments(self, parser): parser.add_argument('--clear',action='store_true', dest='clear', default=False, help='Clear opds database.') def handle(self, *args, **options): if options['clear']: self.stdout.write('Clear book database.') def clear(self,verbose=False): opdsdb.clear_all() call_command('loaddata', 'genre.json', app_label='opds_catalog') opds_catalog/settings.py +1 −0 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ ALPHABET_MENU = getattr(settings, "SOPDS_ALPHABET_MENU", True) BOOK_SHELF = getattr(settings, "SOPDS_BOOK_SHELF", True) NOCOVER_PATH = getattr(settings, "SOPDS_NOCOVER_PATH", os.path.join(settings.BASE_DIR,'static/images/nocover.jpg')) AUTH = getattr(settings, "SOPDS_AUTH", False) SERVER_LOG = getattr(settings, "SOPDS_SERVER_LOG", os.path.join(settings.BASE_DIR,'log/sopds_server.log')) TITLE = getattr(settings, "SOPDS_TITLE", "SimpleOPDS") SUBTITLE = getattr(settings, "SOPDS_SUBTITLE", "SimpleOPDS Catalog by www.sopds.ru. Version %s."%sopds_version) Loading Loading
opds_catalog/management/commands/sopds.py→opds_catalog/management/commands/sopds_scanner.py +0 −0 File moved. View file
opds_catalog/management/commands/sopds_server.py +16 −8 Original line number Diff line number Diff line Loading @@ -6,10 +6,11 @@ import errno from django.conf import settings from django.core.management.base import BaseCommand from django.core.handlers.wsgi import WSGIHandler from django.core.servers.basehttp import get_internal_wsgi_application, run from django.utils.encoding import force_text from opds_catalog.settings import SERVER_LOG class Command(BaseCommand): help = 'HTTP/OPDS built-in server' Loading Loading @@ -105,13 +106,20 @@ def daemonize(): if os.fork(): # launch child and... os._exit(0) # kill off parent again. os.umask(0) null = os.open("/dev/null", os.O_RDWR) for i in range(3): try: os.dup2(null, i) except OSError as e: if e.errno != errno.EBADF: raise std_in = open("/dev/null", 'r') std_out = open(SERVER_LOG, 'a+') os.dup2(std_in.fileno(), sys.stdin.fileno()) os.dup2(std_out.fileno(), sys.stdout.fileno()) os.dup2(std_out.fileno(), sys.stderr.fileno()) # null = os.open("/dev/null", os.O_RDWR) # for i in range(3): # try: # os.dup2(null, i) # except OSError as e: # if e.errno != errno.EBADF: # raise os.close(null)
opds_catalog/management/commands/sopds_util.py 0 → 100644 +18 −0 Original line number Diff line number Diff line from django.core.management.base import BaseCommand from django.core.management import call_command from opds_catalog import opdsdb class Command(BaseCommand): help = 'Utils for SOPDS.' def add_arguments(self, parser): parser.add_argument('--clear',action='store_true', dest='clear', default=False, help='Clear opds database.') def handle(self, *args, **options): if options['clear']: self.stdout.write('Clear book database.') def clear(self,verbose=False): opdsdb.clear_all() call_command('loaddata', 'genre.json', app_label='opds_catalog')
opds_catalog/settings.py +1 −0 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ ALPHABET_MENU = getattr(settings, "SOPDS_ALPHABET_MENU", True) BOOK_SHELF = getattr(settings, "SOPDS_BOOK_SHELF", True) NOCOVER_PATH = getattr(settings, "SOPDS_NOCOVER_PATH", os.path.join(settings.BASE_DIR,'static/images/nocover.jpg')) AUTH = getattr(settings, "SOPDS_AUTH", False) SERVER_LOG = getattr(settings, "SOPDS_SERVER_LOG", os.path.join(settings.BASE_DIR,'log/sopds_server.log')) TITLE = getattr(settings, "SOPDS_TITLE", "SimpleOPDS") SUBTITLE = getattr(settings, "SOPDS_SUBTITLE", "SimpleOPDS Catalog by www.sopds.ru. Version %s."%sopds_version) Loading