Beispiel #1
0
 def render_GET(self, request):
     manager = self.get_manager(request)
     dl = manager.get_download(self.id)
     store = request.application.get_store()
     user = self.get_user(request)
     libs = store.find(models.Library, models.Library.user_id == user.id)
     if dl.mime_type:
         template = 'downloads/detail_%s.html' % dl.mime_type.replace(
             '/', '_')
     else:
         template = 'downloads/detail.html'
     downloadClient = manager.get_download_client(dl.id, True)
     context = {
         'title': dl.description,
         'download': dl,
         'libraries': organizer.get_media_libraries(libs),
         'mediatypes': organizer.get_media_types(),
         'client': downloadClient,
         'statuscode': download.Status,
         'statusdesc': download.Status.descriptions
     }
     try:
         request.templateFactory.get_template(template)
         return self.render_template(template, request, context)
     except Exception:
         return self.render_template('downloads/detail.html', request,
                                     context)
Beispiel #2
0
 def render_GET(self, request):
     manager = self.get_manager(request)
     context = {
         'title': 'Edit Feed',
         'feed': self.feed,
         'mediatypes': organizer.get_media_types()
     }
     return self.render_template('feeds/form.html', request, context)
Beispiel #3
0
 def render_GET(self, request):
     manager = self.get_manager(request)
     context = {
         'title': 'Feed Subscriptions',
         'mediatypes': organizer.get_media_types(),
         'feeds': manager.get_feeds()
     }
     return self.render_template('feeds/index.html', request, context)
Beispiel #4
0
 def render_GET(self, request):
     manager = self.get_manager(request)
     feed = manager.get_feed(self.id)
     context = {
         'title': feed.name,
         'feed': feed,
         'mediatypes': organizer.get_media_types()
     }
     return self.render_template('feeds/detail.html', request, context)
Beispiel #5
0
 def render_GET(self, request):
     manager = self.get_manager(request)
     userlibs = manager.get_libraries()
     userdir = manager.get_library_directory()
     context = {
         'title': 'Media Locations',
         'basedir': userdir,
         'mediatypes': organizer.get_media_types(),
         'patterns': organizer.get_file_patterns(),
         'libraries': organizer.get_media_libraries(userlibs)
     }
     return self.render_template('libraries/index.html', request, context)
Beispiel #6
0
 def render_GET(self, request):
     manager = self.get_manager(request)
     userlibs = manager.get_libraries()
     userdir = manager.get_library_directory()
     context = {
         'title': 'Media Locations',
         'basedir': userdir,
         'mediatypes': organizer.get_media_types(),
         'patterns': organizer.get_file_patterns(),
         'libraries': organizer.get_media_libraries(userlibs)
     }
     return self.render_template('libraries/index.html', request, context)
Beispiel #7
0
    def render_GET(self, request):
        manager = self.get_manager(request)
        downloads = manager.get_downloads()

        sort = None
        sortdir = '+'
        if 'sort' in request.args:
            sort = request.args['sort'][0]
            cmp = None
            key = lambda x: getattr(x, sort)
            reverse = False
            if sort[0] == '-':
                sortdir = '-'
                sort = sort[1:]
                reverse = True
            if sort == 'timeleft':
                if reverse:
                    cmp = self.numcmp(True, True)
                    reverse = False
                else:
                    cmp = self.numcmp(True)
            downloads.sort(cmp, key, reverse)

        history = None
        user = self.get_user(request)
        if user.admin:
            history = manager.store.find(
                models.Download, models.Download.completed > 0).order_by(
                    expr.Desc(models.Download.completed))[:10]
        else:
            history = manager.store.find(
                models.Download, models.Download.completed > 0,
                models.Download.user == user).order_by(
                    expr.Desc(models.Download.completed))[:10]

        context = {
            'title': 'Downloads',
            'status': manager.get_status(),
            'downloads': downloads,
            'history': history,
            'mediatypes': organizer.get_media_types(),
            'sort': sort,
            'sortdir': sortdir,
            'clientFactory': lambda id: manager.get_download_client(id, True),
            'statuscode': download.Status,
            'statusdesc': download.Status.descriptions
        }
        return self.render_template('downloads/index.html', request, context)
Beispiel #8
0
    def render_GET(self, request):
        manager = self.get_manager(request)
        downloads = manager.get_downloads()

        sort = None
        sortdir = '+'
        if 'sort' in request.args:
            sort = request.args['sort'][0]
            cmp = None
            key = lambda x: getattr(x, sort)
            reverse = False
            if sort[0] == '-':
                sortdir = '-';
                sort = sort[1:]
                reverse = True
            if sort == 'timeleft':
                if reverse:
                    cmp = self.numcmp(True, True)
                    reverse = False
                else:
                    cmp = self.numcmp(True)
            downloads.sort(cmp, key, reverse)

        history = None
        user = self.get_user(request)
        if user.admin:
            history = manager.store.find(models.Download,
                models.Download.completed > 0
                ).order_by(expr.Desc(models.Download.completed))[:10]
        else:
            history = manager.store.find(models.Download,
                models.Download.completed > 0,
                models.Download.user == user
                ).order_by(expr.Desc(models.Download.completed))[:10]

        context = {'title': 'Downloads',
                   'status': manager.get_status(),
                   'downloads': downloads,
                   'history': history,
                   'mediatypes': organizer.get_media_types(),
                   'sort': sort,
                   'sortdir': sortdir,
                   'clientFactory': lambda id: manager.get_download_client(id, True),
                   'statuscode': download.Status,
                   'statusdesc': download.Status.descriptions
                   }
        return self.render_template('downloads/index.html', request, context)
Beispiel #9
0
    def render_GET(self, request):
        manager = self.get_manager(request)
        user = self.get_user(request)
        downloads = None
        if user.admin:
            downloads = manager.store.find(models.Download,
                models.Download.completed > 0
                ).order_by(expr.Desc(models.Download.completed))[:30]
        else:
            downloads = manager.store.find(models.Download,
                models.Download.completed > 0,
                models.Download.user == user
                ).order_by(expr.Desc(models.Download.completed))[:30]

        context = {'title': 'Last 30 Downloads',
                   'downloads': downloads,
                   'mediatypes': organizer.get_media_types()}
        return self.render_template('downloads/history.html', request, context)
Beispiel #10
0
    def render_GET(self, request):
        manager = self.get_manager(request)
        user = self.get_user(request)
        downloads = None
        if user.admin:
            downloads = manager.store.find(
                models.Download, models.Download.completed > 0).order_by(
                    expr.Desc(models.Download.completed))[:30]
        else:
            downloads = manager.store.find(
                models.Download, models.Download.completed > 0,
                models.Download.user == user).order_by(
                    expr.Desc(models.Download.completed))[:30]

        context = {
            'title': 'Last 30 Downloads',
            'downloads': downloads,
            'mediatypes': organizer.get_media_types()
        }
        return self.render_template('downloads/history.html', request, context)
Beispiel #11
0
    def render_GET(self, request):
        manager = self.get_manager(request)

        feed = {
            'active': True,
            'media_type': 'video/tv',
            'update_frequency': 15,
            'queue_size': 0,
            'save_priority': 0
        }

        if 'url' in request.args:
            feed['url'] = request.args['url'][0]
        if 'name' in request.args:
            feed['name'] = request.args['name'][0]

        context = {
            'title': 'Add Feed',
            'feed': feed,
            'mediatypes': organizer.get_media_types()
        }
        return self.render_template('feeds/form.html', request, context)
Beispiel #12
0
 def render_GET(self, request):
     manager = self.get_manager(request)
     dl = manager.get_download(self.id)
     store = request.application.get_store()
     user = self.get_user(request)
     libs = store.find(models.Library, models.Library.user_id == user.id)
     if dl.mime_type:
         template = 'downloads/detail_%s.html' % dl.mime_type.replace('/', '_')
     else:
         template = 'downloads/detail.html'
     downloadClient = manager.get_download_client(dl.id, True)
     context = {'title': dl.description,
                'download': dl,
                'libraries': organizer.get_media_libraries(libs),
                'mediatypes': organizer.get_media_types(),
                'client': downloadClient,
                'statuscode': download.Status,
                'statusdesc': download.Status.descriptions
                }
     try:
         request.templateFactory.get_template(template)
         return self.render_template(template, request, context)
     except Exception:
         return self.render_template('downloads/detail.html', request, context)