Changeset 3128

Show
Ignore:
Timestamp:
01/22/08 14:05:18 (1 year ago)
Author:
peca
Message:

Some bug fixes according to Brett from ticket #2455 (thanks!) - in saving data into sessions and serving file to download (changed to req.send_file()) in Trac 0.11 version.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • tracdownloaderplugin/0.10/tracdownloader/model.py

    r2895 r3128  
    10081008             
    10091009        for item in label_list: 
     1010            if (item[0] not in self.attr): 
     1011                 continue 
    10101012            if strip(self.attr[item[0]]) != '': 
    10111013                items.append([item[1], self.attr[item[0]]]) 
     
    10781080            elif item['type'] == 'text': 
    10791081                req.session[prefix + item['name']] = item['value'] 
     1082        req.session.save() 
    10801083             
    10811084    def load_from_session(self): 
  • tracdownloaderplugin/0.11/tracdownloader/model.py

    r3099 r3128  
    636636        """Find, open, find mime type and serve file to user.""" 
    637637         
     638        """ Old way for serving file to user. 
    638639        try: 
    639640            file_obj = file(self.file, "rb") 
    640641        except IOError: 
    641642            raise TracError, 'Sorry. Error reading the file ' + self.file + '.' 
    642          
     643        """ 
    643644        mime = MimeTypes(self.env).dict 
    644645        mime_type = 'application/octet-stream' 
     
    651652                mime_type = mime[ext] 
    652653         
     654        """ Old way for serving file to user. 
    653655        req.send_response(200) 
    654656        req.send_header('Content-Type', mime_type) 
    655657        req.end_headers() 
    656  
     658         
    657659        # Serve file kilobyte by kilobyte 
    658660        while True: 
     
    663665             
    664666        file_obj.close() 
     667        """ 
     668        # Serve file to user 
     669        req.send_file(self.file, mime_type) 
    665670     
    666671    def delete(self): 
     
    786791        id = self.db.get_last_id(cursor, 'downloader_downloaded') 
    787792        self.db.commit() 
     793         
     794        self.env.log.warning("Inserted: %d" % id) 
    788795         
    789796        for item in self.schema: 
     
    10081015             
    10091016        for item in label_list: 
     1017            if (item[0] not in self.attr): 
     1018                 continue 
    10101019            if strip(self.attr[item[0]]) != '': 
    10111020                items.append([item[1], self.attr[item[0]]]) 
     
    10781087            elif item['type'] == 'text': 
    10791088                req.session[prefix + item['name']] = item['value'] 
     1089        req.session.save() 
    10801090             
    10811091    def load_from_session(self): 
  • tracdownloaderplugin/0.11/tracdownloader/web_ui.py

    r3099 r3128  
    446446        if not req.session.get('downloader_files'): 
    447447            req.session['downloader_files'] = '' 
     448            req.session.save() 
    448449        #self.env.log.info("Files: " + req.session.get('downloader_files')) 
    449450         
     
    484485            # Test if session works 
    485486            req.session['downloader_test'] = 'test' 
     487            req.session.save() 
    486488         
    487489        render_downloads_table(self.env, req, filter=filter, f_id=f_id) 
     
    560562        """ 
    561563        Serve to hdf set variables for final download link. 
    562         Returns False if file has not to be server directly. 
     564        Returns False if file has not to be served directly. 
    563565        """ 
    564566        # Cannot serve link to people without session 
     
    597599                return True 
    598600         
    599         # Check if file number is input list 
     601        # Check if the file number is in list 
    600602        files = split(files, ',') 
    601603        if str(id) in files: 
  • tracdownloaderplugin/0.9/tracdownloader/model.py

    r2895 r3128  
    10081008             
    10091009        for item in label_list: 
     1010            if (item[0] not in self.attr): 
     1011                 continue 
    10101012            if strip(self.attr[item[0]]) != '': 
    10111013                items.append([item[1], self.attr[item[0]]]) 
     
    10781080            elif item['type'] == 'text': 
    10791081                req.session[prefix + item['name']] = item['value'] 
     1082        req.session.save() 
    10801083             
    10811084    def load_from_session(self):