wiki:TracDownloaderPlugin

Version 33 (modified by peca, 7 years ago) (diff)

--

Trac Downloader plug-in

Description

Project release downloader plugin for Trac system with optional questionnaire before download of file, Captcha antirobot check, stats module and easy to use administration in Trac WebAdmin plug-in.

Screenshots:

Bugs/Feature Requests

Plug-in was tested on Python 2.3 - Trac 0.9.6 and Trac 0.10.4, first successful tests were made on Trac 0.11b1!

Existing bugs and feature requests for TracDownloaderPlugin are here.

If you have any issues, create a new ticket.

Download

If you don't like Subversion you can download egg or full source here:
TracDownloader-0.1-trac-0.11.egg
TracDownloader-0.1-trac-0.11.zip
TracDownloader-0.1-trac-0.10.egg
TracDownloader-0.1-trac-0.10.zip
TracDownloader-0.1-trac-0.9.egg
TracDownloader-0.1-trac-0.9.zip

Here are some screenshots too.

Download the zipped source for Trac 0.9, Trac 0.10, Trac 0.11 or just everything.

Source

You can check out TracDownloaderPlugin from here using Subversion, or browse the source with Trac.

Installation

EGG
The easiest way to start using Downloader plug-in is to get downloaded python egg into plugin directory of project environment (egg is most probably python version independent, just rename it, but who knows, there's still source package...), after that you must turn both modules of Downloader on in WebAdmin/plugins (Downloader is dependent on WebAdmin plug-in). And finally there is need to get some permissions of Downloader to some users... In this case if you like to use PyCaptcha, you must take care of installing it by yourself, PyCaptcha is dependent on PIL so you must download it too.

SOURCE (for those who have problems with dependencies)

easy_install --find-links http://www.pythonware.com/products/pil/ Imaging
easy_install http://trac-hacks.org/svn/tracdownloaderplugin/0.10/

Second and maybe better way is to download and unpack somewhere source zip package and then just run "setup.py install". Setup should take care of all dependences (PyCaptcha and PIL but it could get some errors while dowloading them so if automatic dependency resolution doesn't work use code above) and prepare plugin to be turned on in WebAdmin/plugins. Then you must assign some permissions of downloader to someone and you can start trying Downloader plug-in...

After steps above and clicking to any part of Downloader you should be asked about location of directory to store uploaded files. When it is set up, you must Submit that form two times and there can occur exception "DatabaseError: database schema has changed". If this exception is thrown, it's best to restart your http server.

Downloader keeps using ClearSilver as templating system so you have to have it installed (version for new templating system Genshe will be written soon). Version for Trac 0.11 wasn't too much tested so if you find errors, please write me a ticket as soon as possible.

If you had problems installing Downloader, please write me a ticket or write solution of your installation problems here.

Permissions

Downloader plug-in defines three permissions:

DOWNLOADER_DOWNLOAD - lets user to download things from main part of plug-in, if you like to let all users download from donwloader, just get this permission to user anonymous.
DOWNLOADER_STATS - lets user to browse part of statistics in the main module of Downloader (user will be able to see links to statistics in the right top corner of the page).
DOWNLOADER_ADMIN - lets user to upload files, manage files, releases and categories, browse fill up's of questionnaire, delete fill up's of questionnaire and manage settings of Downloader plug-in. Note that this permission should never be given to user anonymous!

Wiki syntax

Downloader plug-in provides three types of wiki syntax for referencing of standalone files, whole releases or categories. Each syntax have two possible forms. If syntax is enclosed by [] you can easily write your own title for item (file, release, category). If the syntax is separated just by spaces, there will be automatically created link with name of referenced item (file, release, category).

Syntaxes:

downloader:5 - Creates link to file with id 5 with it's name
[downloader:5 click here] - Creates 'click here' link to file with id 5

downloaderrel:23 - Creates link to release with id 23 with it's name
[downloaderrel:23 click here] - Creates 'click here' link to release with id 23

downloadercat:43 - Creates link to category with id 43 with it's name
[downloadercat:43 click here] - Creates 'click here' link to category with id 43


If item of that id doesn't exist, there's diplayed only link to nowhere with title "id not found". If file was deleted, it still displays it's correct name, but link is to nowhere.

Special features

This features are availible only if you have Downloader installed in unzipped form (doesn't work in egg or zip file).

MIME list In tracdownloader directroy there is a file mime_list.txt which contains list of known MIME types for downloader, you can easily add new ones or delete unneeded, if there is no record found for particular file extension in this list, Downloader uses MIME of application/octet-stream.

EDIT QUESTIONNAIRE The file form_data.py contains structure used to generate questionnaire before download of file. You can easily edit this to get from users the data you exactly want. There is big decription inside of this file.

Recent Changes

[12139] by rjollos on 2012-10-10 03:54:13
Fixed incorrect source code encoding (http://www.python.org/dev/peps/pep-0263/).
[11235] by rjollos on 2012-02-02 23:12:33
Refs #4299: Fixed setup.py syntax error for the 0.10 branch. The 0.10 branch won't be supported. This fix is untested.
[11234] by rjollos on 2012-02-02 22:14:57
Fixes #5540: Fixed encoding error in defining the navigation item for the INavigationContributor interface.

Author/Contributors

Author: Petr Škoda
Contributors:

Attachments (8)

Download all attachments as: .zip