well... if a pdf needs to be viewed within a browser, there is always flex. Although, Flex it self will not support PDF (because the reader and the flash layer live separately), there are workarounds with either flex-iframe (http://code.google.com/p/flex-iframe/) or flexpaper (http://flexpaper.devaldi.com/) which seem to have done a very good job where Adobe has clearly failed.
AIR is a good alternative if you don't mind having the pdf open in a desktop version of flex. Here's an example of a very basic pdfViewer with AIR. if(HTMLLoader.pdfCapability == HTMLPDFCapability.STATUS_OK){ var htmlLoader:HTMLLoader = new HTMLLoader(); var url:URLRequest = new URLRequest(pathUrl); //URL to the file htmlLoader.width = windowWidth; htmlLoader.height = windowHeight; htmlLoader.load(url); //UIComponent var pdfViewer:UIComponent = new UIComponent(); holder.addChild(htmlLoader); addChild(pdfViewer); } Mart :) On Dec 14, 11:57 am, Bruno Rocha <rochacbr...@gmail.com> wrote: > For security reasons, web2py does not expose the 'uploads' folder to the > user, this folder can be accessed only by the 'download' function. > > You can do that: > > change the upload folder with 'uploadfolder' parameter. > > <model> > db.define_table('pdfs', > > Field('file','upload',uploadfolder=request.folder+'static/pdfs') > ) > </model> > > Create a viewer function wich redirects the user direct to the file, then, > if the user has adobe acrobat plugin to view the file in browser, this file > will be shown in the browser, else, will be downloaded. > > <controller> > def viewer(): > row = db(db.pdfs.id==request.args(0)).select(db.pdfs.file).first() > redirect(URL('static','pdfs',args=row.file)) > </controller> > > Now you can call this as: > > http://127.0.0.1:8000/pdfs/default/viewer/3#record id > > which redirects the user > to:http://127.0.0.1:8000/pdfs/static/pdfs/pdfs.file.aaf5d3f7779841d0.6e6... > > -- > > Bruno Rochahttp://about.me/rochacbruno/bio > > 2010/12/14 azarkowsky <azarkow...@gmail.com> > > > In my web2py application I'm allowing users to upload PDF documents > > (via an upload field) and then on another page I provide a download > > link, however, I think because of the file renaming security feature > > these PDF documents are truly being downloaded again (saved locally to > > each user's desktop) instead of just displayed in a new browser window > > as is the case with most other PDFs I encounter on other websites. Is > > there any way to provide a link directly to a file that was uploaded > > so the browser can display it without having to download the file > > again? > > > Thanks, > > Adam > >