Modules: File management

Filter by Drupal Core compatibility:
Login or register to modify the filter.

Contributed (contrib) modules are plugins for Drupal that extend, build or enhance Drupal core functionality. Use matching versions (modules released for Drupal 5.x will not work for Drupal 6.x). Contributed modules are not part of Drupal core releases and may or may not have optimized code/functionality. If a module solves your needs please consider joining forces and helping the maintainer.

Asset

The asset module provides an intuitive method of managing any type of media or even generic files. An asset is any type of file that has been uploaded in the asset wizard: images, audio, youtube videos, flash movies, text documents, pdfs,... Permissions can be set to both assets and directories, making them publicly available to anyone, to specific roles or just to yourself.

VersionDateLinksStatus
5.x-1.0-beta32008-Apr-29Recommended for 5.xThis is currently the recommended release for 5.x.

Asset API

The asset API has for goal to provide some kind of abstraction layer for the file management.

It is not yet ready for production use

(but I'm working hard on it and try to do may best)

It is composed of a main module and some sub-modules (implementing handling of some file types like images, pdf, flv video, swf files, openoffice documents and archives).

The main module provides (limited) block and filter features and an asset browser too.
There's also some views integration and some other useful things (like an asset importer and a module managing the conversion of video files into flv - using FFMPEG but extensible).

Every asset is in fact a node (which allows some nice CCK extensibility).

This version of the module is for Drupal 5.x but an other version for Drupal 6 is already started.
By the way, some files of the project are missing because I'm not sure to be allowed to redistribute them under GPL license (if somebody could help me to figure out what I'm allowed to redistribute, I'll be really happy).

I already knows that the project is missing documentation and some integration with TinyMCE or other WYSIWYG editors (for example, because one of the goal is to provide some really user friendly tools too and replace IMCE).

The development of this project was started just after the DrupalCon 2007 in Barcelona.

VersionDateLinksStatus
5.x-0.12008-Mar-08Recommended for 5.xThis is currently the recommended release for 5.x.

Asset Manager

The Asset Manager is a module to allow administrators to manage CCK nodereference assets via taxonomy. There are two parts to AM, a tinymce plugin and a popup for assigning node reference assets to nodes on the fly.

VersionDateLinksStatus
5.x-1.x-dev2008-Mar-19Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

Attachment

This module is an alternative to Drupal's included upload module. It uses the filemanager module to allow a unique namespace per node and support large number of files. In addition this module allows you to give each attachment a title and description.

VersionDateLinksStatus
5.x-1.x-dev2007-Sep-09Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.
4.7.x-1.x-dev2007-Dec-01Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

Audit Files

Audit files is designed to perform audits of your {files} table and upload directory. It will cross check that all files in the {files} table have a corresponding physical file, or it will check that all files in the upload directory have a corresponding entry in the {files} table.

This module can be helpful in identifying orphan files that have not been deleted when their corresponding node was removed.

The audit report will ignore .htaccess, directories, and the contents of the color directory.

Files that do not have a parent entry can be deleted from the report, but be sure you really want to delete the file before using this option. Files that have been uploaded via a method that do not create entries in the {files} table will be identified as an orphan. This most commonly applies to uploaded logos for themes.

VersionDateLinksStatus
5.x-2.02007-Dec-05Recommended for 5.xThis is currently the recommended release for 5.x.

Bitcache

Bitcache is a distributed content-addressable storage (CAS) system. It provides repository storage for bitstreams (colloquially known as blobs) of any length, each uniquely identified and addressed by a digital fingerprint derived through a secure cryptographic hash algorithm.

This is a module that provides a Bitcache-compatible data storage repository for Drupal and implements the Bitcache REST API for interoperability with the standalone Bitcache command-line and synchronization tools.

VersionDateLinksStatus
6.x-1.0-alpha12008-May-09Recommended for 6.xThis is currently the recommended release for 6.x.

BitTorrent

This module provides two items:
- A Torrent node type
- A BitTorrent tracker

VersionDateLinksStatus
5.x-2.0-beta32008-Feb-04Recommended for 5.xThis is currently the recommended release for 5.x.

CCK Download Dropdown

This module adds the ability to place a single drop down selector and download button on a node. The drop down list is populated by links to attachments from a node that you specify. Selecting an attachment and pressing the download button will initiate a download of the selected file. Although multiple drop downs in a single field are not supported, you can add multiple fields, each with a drop down populated by different files. In this way you can link to as many nodes' files as you wish without taking up a lot of screen space.

USE CASE EXAMPLE: If you have categories of files and want to show them all on one page without a huge list like you get with the standard upload module, you can create a node for each category, use the upload module to attach those files, then use this module to create a field for each node you have created.

*************************************************************************************
IMPORTANT!!! - You need to supply an icon, call it disk.png, and place it in this
module's folder. The one I use wasn't GPL-compatible so could not be included in this
release. The one I use looks like a floopy disk, but you could use anything.
*************************************************************************************

VersionDateLinksStatus
5.x-1.02007-Dec-14Recommended for 5.xThis is currently the recommended release for 5.x.

CDN integration

This is the result.

Disclaimer

This module is not yet production ready. It works fine on smaller sites, but it doesn't scale yet (yes, that's pretty ironic since the exact goal is better scalability of Drupal sites). If you want to make this ready for production use sooner rather than later, please contact me to sponsor the development.

Description

The aim of this module to provide easy Content Delivery Network integration for Drupal sites. Obviously it has to patch Drupal core to rewrite the URLs, not only to serve them from another domain, but also to make the filenames unique.

It has synchronization plugins, so it allows you to use any protocol or algorithm to synchronize your files. Currently however, only one plugin is available: FTP. Since proper usage of a CDN demands unique filenames for each version of a file, we can optimize a lot: to validate a file on the CDN while synchronizing, we must only know if it 1) exists and 2) has the correct size.

Which files and directories should be synchronized can be configured very precisely. Consult the README for details about that.

The FTP synchronization plugin allows you to use a $15 per month CDN (thus making CDNs accessible to a lot Drupal users) with no effort after the
installation!

VersionDateLinksStatus
5.x-1.0-rc22008-Jan-29Recommended for 5.xThis is currently the recommended release for 5.x.

Creative Commons

The Creative Commons module allows users to select and assign a Creative Commons license to a node and any attached content. Additionally, the site admin can select a license to assign to the entire site.

VersionDateLinksStatus
4.7.x-1.x-dev2007-Mar-02Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

Creative Commons Lite

The Creative Commons Lite module simplifies the functionality creativecommons http://drupal.org/project/creativecommons . This module allows users to add creativecommons license to any type of drupal node. License is shown as block on node view page.

VersionDateLinksStatus
5.x-1.x-dev2007-Jun-19Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.
4.7.x-1.x-dev2007-May-18Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

DataBase File Manager

Database File Manager

DBFM is, in much the same way as WebFM (the origin of DBFM), a file manager based on a hierarchical directory structure and uses AJAX to allow administrators to arrange files in the database in the same way they do with file managers on their personal systems.

Unlike WebFM, DBFM stores its files in a database as opposed to the filesystem. This change was made to enable advanced manipulation of the uploaded information. Keywords, notes and other meta-data can be added to uploaded documents, document revision management is now possible. Future revisions of DBFM will include extensive searching of this meta-data.

This allows site administrators, or even site users to arrange massive collections of documentation and images on their sites.

Additionally, DBFM has been prepared for Multi-site replication - allowing site administrators to run multiple drupal sites containing the same documentation.

A plugin is also included for the TinyMCE WYSIWYG editor, enabling you to embed/attach images on your pages and resize them to suit your requirements.

Features

  • Application-like look and feel via AJAX
  • Drag and drop move of files and directories
  • Attachment of files to nodes
  • Embedding of images in the virtual filesystem to nodes
  • Single file upload
  • Image preview pane
  • File delete/rename/view/download-file/attach/embed/acls
VersionDateLinksStatus
5.x-3.12008-Apr-16Recommended for 5.xThis is currently the recommended release for 5.x.

DAV

Provides a WebDAV API and file system-backed reference server implementation for Drupal 6.x.

VersionDateLinksStatus
6.x-1.0-alpha12008-May-08Recommended for 6.xThis is currently the recommended release for 6.x.

Disk Node

DiskNode adds a new nodetype called DiskNode. The main purpose for this node is to serve as download module. Each disknode links to a single file stored within the file storage. These files are already in this directory. File management tools are provided with the disknode. It will allow you to upload a local file or a file already stored on an other webserver.
Downloads of the files are counted.

VersionDateLinksStatus
5.x-1.x-dev2007-Nov-19Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.
4.7.x-1.x-dev2007-Nov-12Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

Docs

Docs is a simple document/file manager. It provides a directory browser with integrated file and folder creation.

It's goals are to be simple, sometimes over-simplistic, have dependencies only on core - currently taxonomy and upload.

VersionDateLinksStatus
5.x-1.0-alpha32007-Jun-07Recommended for 5.xThis is currently the recommended release for 5.x.

download_count

Download counter page screen capture

This module increments a download counter each time an attached file is successfully downloaded. Each file has its counter. Note : the module only works when Drupal's download method is set to private.

The module also logs a descriptive message to admin » logs, under type 'download', when a file is either successfully downloaded or when someone (usually a robot) attempts to download a file but is denied access to that file ('file x has been downloaded', 'Failed to download file x'). Browsing through the logs, the administrator can see who downloaded what file and from which 'referal' page.

A page can be accessed where a table lists all downloaded files with their download count. The table provides this information:

  1. filename
  2. download count
  3. last time the file was downloaded in the form 'x days y min ago'
  4. a link to view the node where the file is attached

Download statistics can be viewed in the node as well.

VersionDateLinksStatus
6.x-1.12008-May-05Recommended for 6.xThis is currently the recommended release for 6.x.
5.x-1.02008-Mar-22Recommended for 5.xThis is currently the recommended release for 5.x.
4.7.x-1.02008-Mar-22Recommended for 4.7.xThis is currently the recommended release for 4.7.x.

Drupal FTP

This is just an engine right now, and an FTP browser. Not sure where I'm going with this, but there wasn't anything giving an FTP interface in Drupal that I could find, so here's a start. Currently, it hard-codes the ftp u/p info, and defaults to ftp.drupal.org, just to give you the point. After installing, go to /admin/settings/drupal_ftp, and possibly change access rules at /admin/user/access.

This is an extensive remodification of the my_ftp class (though no longer a class) at http://www.devarticles.com/c/a/PHP/My-FTP-Wrapper-Class-for-PHP/

Possible uses:

  • ftp browsing
  • automatic module/theme installation
  • inline file modification

I made a custom module using this as an API that will copy Image files (during upload) to an ftp server, so they may be served from off-server. But it's a fairly specific use, and doubtful there's much use for that sort of application. However, I'd be happy to contribute it if there's a need for it.

Direct any questions or suggestions to winborn (at) advomatic (dot) com

Aaron Winborn

VersionDateLinksStatus
5.x-1.x-dev2007-Jun-29Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

File Defer

File Defer is a module which searches for missing files at a remote location.

The primary use is for stage or development versions of a website. If you have a development version and a live version of the same drupal site, you can set up the dev site to look for missing files on the live sever negating the need to hand transfer those files while testing.

VersionDateLinksStatus
5.x-1.x-dev2008-May-10Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

File Framework

File framework is a collection of modules which allows uploading and displaying different media type files. It uses a distributed content-addressable storage (CAS) system Bitcache for a file storage.

A metadata of the uploaded files is extracted using EXIF, GetID3, pdfinfo and saved in the Resource Description Framework (RDF) storage.

A node of type file is created for each uploaded file. This gives a revision control and will integrate with the views.

Each file is converted to number of other MIME formats using available open source converters. For example a MS Word file can be automatically converted to PDF, OpenDocument Text (using OpenOffice daemon + JODConverter), Plain text (using catdoc), Flash video (using SWFTools), JPEG (using GhostScript) and Zip (using gzip). Converted (derived) files are saved in the Bitcache and their metadata is extracted and saved in the RDF along with the relation to the original file. All derived files are listed and can be downloaded.

If a file is a plain text or has a plain text derivative, it is indexed and can be searched based on content.

Framework provides number of viewers. A file can be previewed in various MIME types using derived files. Viewers are triggered via AHAH calls without page reloads.

VersionDateLinksStatus
6.x-1.x-dev2008-Apr-25Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

File Upload Progress Monitor

upload.png

This module adds support to drupal to display the upload progress as a file is being uploaded. This will display on top of the current ajax uploadbar the message including %uploaded, upload speed and estimated time to upload.

If you are upgrading from an earlier release as of 22 feb - you can undo the patch to upload.js - the new release longer depends on the patch.

the new release will also display progress information when the form is submitted at the bottom of the form if the form has file attachments.

VersionDateLinksStatus
5.x-1.x-dev2008-Feb-23Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

Filebrowser

Allows site administrators to expose a particular file system folder and all of its subfolders with a fancy FTP-like interface to site visitors. File metainformation (via descript.ion and files.bss) is supported. The module also allows these metafiles to store special content, which can be parsed with a callback. If no callback is specified in the file, only the description will be fetched.

VersionDateLinksStatus
6.x-1.1-beta12008-Jan-18Recommended for 6.xThis is currently the recommended release for 6.x.
5.x-1.02008-Jan-18Recommended for 5.xThis is currently the recommended release for 5.x.

Filebrowser Extensions

A rewrite of the filebrowser.module (which provides FTP-like Browsing functionality).
It's now totally stand-alone

This extensions package adds:

  • in-page file listings
  • Ajax dynamic file browsing trees
  • autocomplete
  • pop-up widgets
  • list (not table) rendering
  • and custom info columns
VersionDateLinksStatus
4.7.x-1.x-dev2006-Nov-13Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

FileField

FileField provides a generic file upload field for content.module (CCK). It's supposed to be an alternative to upload.module in Drupal core, and provides a CCK field called "File" that you can use in your content types. Versions 5.x-2.3 or later (including all 2.3 release candidates) depend on the MimeDetect module for determining the MIME type of uploaded files.

You can use the Transliteration module to get correctly transliterated filenames, CCK Field Permissions for fine-grained control over user access, and Download Count for (you guessed it) counting your file downoads. Note that enabling the Devel module will probably break AJAX uploads (see this for more information).

VersionDateLinksStatus
5.x-2.3-rc32008-Mar-09Recommended for 5.xThis is currently the recommended release for 5.x.
4.7.x-1.x-dev2007-Feb-01Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

Filemanager

This module adds a full featured file management API for your modules to use. This API is module development and does not directly add functionality to your site. This module is required for the attachment module which is an alternative to Drupal's included upload module.

VersionDateLinksStatus
5.x-1.x-dev2007-Sep-10Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.
4.7.x-1.x-dev2006-Dec-11Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

FileRequest

Drupal has an aweful way of handling file requests through the private method. This module fixes that, it implements most of the HTTP features. Things likecaching and resuming are supported.

This module also as a anti-leech feature which should prevent stealing of files on remote sites. So this module can also be an addition when using the public method. The user will be redirected to the node to which the file was associated. Currently the anti-leech only checks the referer to be within the configured range. Empty referers are currently still allowed, but this might change in a future release.

A special mode has been added for in case of images (only JPEG, PNG and GIF). Either a watermark can be added or the image can be subsituted with an other image. In case of watermarking the watermark images has to be a PNG, it's best to make use of the PNG alpha channels for a nicer result.

Be sure to read the README.TXT file concerning a performance increase by using rewrite rules.

Note: if you had a filerequest module installed from before march 26, 2006 you will need to update the throttle.config.php if you were using this feature.

VersionDateLinksStatus
4.7.x-1.x-dev2006-Nov-13Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

Fileview

This module allows uploaded files to be viewed online.

A list of file extensions can be specified and for each file extension a renderer. In conjunction with the upload module, the links in the attachement table can be replaced by links to view the files online.

There are three renderers: using a 'pre' tag, using an 'img' tag and using a Drupal Input format. With the input format renderer, one can for example highlight source code files using any code filter supported by Drupal.

VersionDateLinksStatus
5.x-1.x-dev2007-Jan-30Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.

Http Headers

Content type page

Aimed at web sites for developing countries, it makes use of the http protocol's Last-Modified and Expires headers so that browsers and caches can better decide whether to re-request a page.

For each contentType the admin can define how the Last-Modified and Expires headers will be dated in relation to the date the page was generated.

Expires header can be set to
- now, the moment the page was requested
- a week, a month, a year from now
Last-Modified Header can be set to
- now
- the last modified date of the node
- the last comment date of the node

If this module is used innappropriately, it could lead to users being shown out of date content.

VersionDateLinksStatus
5.x-1.02008-Apr-24Recommended for 5.xThis is currently the recommended release for 5.x.

ImageField

ImageField provides image uploads for CCK.

You should check out these cool ImageField related projects.
ImageCache - Derivative Generation for Imagefield
ImageField Crop - An AJAX crop on upload tool for ImageField.
ImageField Gallery - ImageField based Galleries.

VersionDateLinksStatus
5.x-1.2-rc12007-Dec-17Recommended for 5.xThis is currently the recommended release for 5.x.
4.7.x-1.12007-Feb-23Recommended for 4.7.xThis is currently the recommended release for 4.7.x.

IMCE

IMCE 6.x screenshot

IMCE is an image/file uploader and browser that supports personal directories and quota.

Since its first release, IMCE has been used as a file browser in many popular rich text editors such as FCKEditor, TinyMCE, WYMEditor, Whizzywig etc.

It has been also used for inline image/file insertion into textareas. This is a built-in feature that can be used stand-alone or with a text editor such as BUEditor.

VersionDateLinksStatus
6.x-1.02008-May-04Recommended for 6.xThis is currently the recommended release for 6.x.
5.x-1.22008-Mar-31Recommended for 5.xThis is currently the recommended release for 5.x.
4.7.x-2.02007-May-15Recommended for 4.7.xThis is currently the recommended release for 4.7.x.

Imce CCK Image

Imce CCK Image

Create a CCK image field that you can attach images to using the IMCE module.
6.x version sponsored in part by Per Arne

I am unable to support the 5.x version here - please do not log any issues against it.

You can find a 5.x version here http://www.hyrme.com/files/imceimage-beta.zip. The file needs to be cleaned up a bit and the code is quite different from the 6.x version. If you wish to get the 5.x version module published here let me know and I will provide you developer access to the module for you to upload the files and tag them as the 5.x branch.

VersionDateLinksStatus
6.x-1.x-dev2008-May-08Development snapshotDevelopment snapshots are automatically regenerated and their contents can frequently change, so they are not recommended for production use.
 
 

Drupal is a registered trademark of Dries Buytaert.