8.3.11. Upload module

Figure 8-30. Upload module.

image

Upload module.



The PHP-Nuke Upload module facilitates upload functionality for PHP-Nuke and has the following features:

  • Upload to virtual folders

  • Download the files from these folders

  • List files in these folders

  • Possibly add a comment to each file

  • Use the same filename several times in one folder

  • Each file is owned by one registered user.

  • Each directory is owned by one registered user.

  • Only the adminstrator can create new folders and assign them to a registered user

  • The adminstrator can change the ownership a existing file or folder

  • The owner of a file can change the permissions on the file

  • When uploading to a folder, the uploader (only registered users are allowed to upload files) may choose the initial permissions on the new file.

  • The following permissions exist for owner and registered users: no permission, read permission, read/write permission. Also a flag is available, that allows direct download access for anonymous users (but nothing more)

  • Full group membership access: Each registered user can be a member of multiple groups, and each file can belong to one group, which allows no/read/read write access (configurable for each file)

  • Multiple Language support

  • Most links may also include images, to give the module a pretty layout.

  • Size display for each file

  • Download counter for each file

  • Quota support based on group, user and folder quotas.

  • Optional thumbnail support for .jpg and .gif files based on the original files (so this is only a pseudo thumbnail at the moment).

Important PHP-Nuke versions greater than 6.5 and the Upload module
 

If you are using a version of PHP-Nuke greater than 6.5, you must do a minimal, but crucial, change in the index.php file of the Upload file. Otherwise, the SQL queries will use the wrong field (uid, instead of user_id) for the user in the nuke_users table, leading to errors. Find the line

if ($Version_Num == "6.5") {

and change it to:

if ($Version_Num >= "6.5") {

This will make sure that the right field names are used for all versions greater or equal to 6.5, not only for the 6.5 version. image