Ejemplo n.º 1
0
    def make_download_index(self, local_index):
        download_index = FileList()

        for file in self.remote_index:
            local_file = local_index.get(file.path)
            if not local_file or local_file.md5 != file.md5:
                download_index.add(file)

        return download_index
Ejemplo n.º 2
0
    def local_index(self) -> FileList:
        if self._local_index:
            return self._local_index

        if os.path.exists(index_local):
            local_index = FileList.from_file(index_local)
        else:
            local_index = FileList()

        self._local_index = local_index

        return local_index
Ejemplo n.º 3
0
    def validate_index(self, index):
        log = logging.getLogger('CHECK_INDEX')
        new_index = FileList(index)

        for i in index:
            GLib.idle_add(self.parent.status_label, 'Check: ' + i.path)
            log.info(i.path)
            if not i.check(self.kill_event):
                log.warning(f'Not valid md5: {i.path}')
                new_index.remove(i)

        return new_index
Ejemplo n.º 4
0
Archivo: admin.py Proyecto: tenwx/gaed
    def post(self):
        bf=self.request.get("file")
        if not bf:
            return self.redirect('/admin/upload/')

        name=unicode(self.request.body_file.vars['file'].filename,'utf-8')
        mime = self.request.body_file.vars['file'].headers['content-type']
        
        #handle file than 10M 
        if len(bf)>10*1000*1000:
            self.redirect('/admin/upload/')
            
        FileList.add(name, mime, bf)
        self.redirect('/admin/')
Ejemplo n.º 5
0
    def post(self):
        bf = self.request.get("file")
        if not bf:
            return self.redirect('/admin/upload/')

        name = unicode(self.request.body_file.vars['file'].filename, 'utf-8')
        mime = self.request.body_file.vars['file'].headers['content-type']

        #handle file than 10M
        if len(bf) > 10 * 1000 * 1000:
            self.redirect('/admin/upload/')

        FileList.add(name, mime, bf)
        self.redirect('/admin/')
Ejemplo n.º 6
0
 def get(self, key):
     filelist = FileList.get(key)
     folders = Folder.all().order('count')
     self.render('views/admin/fileedit.html', {
         'filelist': filelist,
         'folders': folders
     })
Ejemplo n.º 7
0
    def __init__(self, parent, index):
        self.parent = parent

        self.kill_event = Event()

        self.local_index = index
        self.local_index.prefix = CURRDIR + '/Downloaded/Public'

        self.remote_index = FileList.from_url(index_url, self.kill_event)
        self.remote_index.prefix = domain
Ejemplo n.º 8
0
Archivo: admin.py Proyecto: tenwx/gaed
    def get(self):
        PAGESIZE = 20
        next=None
        prev=None
        
        page = self.request.get('page')
        page = int(page) if page else 1
        
        filelists=FileList.all().order('-created_at').fetch(PAGESIZE+1, PAGESIZE*(page-1))
        
        if page>1:
            prev=page-1
        
        if len(filelists)==PAGESIZE+1:
            next=page+1

        filelists=filelists[0:PAGESIZE]
        template_value={"filelists":filelists,'prev':prev,'next':next}
        self.render('views/admin/file.html', template_value)
Ejemplo n.º 9
0
    def get(self):
        PAGESIZE = 20
        next = None
        prev = None

        page = self.request.get('page')
        page = int(page) if page else 1

        filelists = FileList.all().order('-created_at').fetch(
            PAGESIZE + 1, PAGESIZE * (page - 1))

        if page > 1:
            prev = page - 1

        if len(filelists) == PAGESIZE + 1:
            next = page + 1

        filelists = filelists[0:PAGESIZE]
        template_value = {"filelists": filelists, 'prev': prev, 'next': next}
        self.render('views/admin/file.html', template_value)
Ejemplo n.º 10
0
 def post(self, key):
     slug = self.request.get("slug")
     path_key = self.request.get("path")
     FileList.modify(key, slug, path_key)
     self.redirect('/admin/', '304')
Ejemplo n.º 11
0
 def get(self, key):
     filelist = FileList.get(key)
     filelist.delete()
     self.redirect('/admin/')
Ejemplo n.º 12
0
Archivo: main.py Proyecto: tenwx/gaed
 def get(self,id):
     id=int(id)
     filelist = FileList.get_by_id(id)
     if filelist:
         self.response.headers['Content-Type'] = str(filelist.mime)            
         self.response.out.write(filelist.bf)
Ejemplo n.º 13
0
Archivo: main.py Proyecto: tenwx/gaed
 def get(self):
     folders = Folder.all().order('-slug')
     filelists = FileList.getnone()
     template_value={"folders":folders,'filelists':filelists,'path':'/'}
     self.render('views/index.html', template_value)
Ejemplo n.º 14
0
Archivo: admin.py Proyecto: tenwx/gaed
 def get(self,key):
     filelist=FileList.get(key)
     filelist.delete()
     self.redirect('/admin/')
Ejemplo n.º 15
0
Archivo: admin.py Proyecto: tenwx/gaed
 def get(self,key):
     filelist=FileList.get(key)
     folders=Folder.all().order('count')
     self.render('views/admin/fileedit.html', {'filelist':filelist,'folders':folders})
Ejemplo n.º 16
0
 def get(self,id):
     id=int(id)
     filelist = FileList.get_by_id(id)
     if filelist:
         self.response.headers['Content-Type'] = str(filelist.mime)            
         self.response.out.write(filelist.bf)
Ejemplo n.º 17
0
 def get(self):
     folders = Folder.all().order('-slug')
     filelists = FileList.getnone()
     template_value={"folders":folders,'filelists':filelists,'path':'/'}
     self.render('views/index.html', template_value)
Ejemplo n.º 18
0
def insert_filename_to_DB(file_name):
    with app.app_context():
        new_file = FileList(file_name)
        db.session.add(new_file)
        db.session.commit()
Ejemplo n.º 19
0
Archivo: admin.py Proyecto: tenwx/gaed
 def post(self,key):
     slug=self.request.get("slug")
     path_key = self.request.get("path")
     FileList.modify(key, slug, path_key)
     self.redirect('/admin/', '304')