Extend and customize Drupal functionality with contributed modules. If a module doesn't quite do what you want it to do, if you find a bug or have a suggestion, then join forces and help the module maintainer. Or, share your own by starting a new module.
Type User Nids
This module allows you to consecutively number nodes of a particular type authored by a single user.
Generally used with the Token module (required) and the Pathauto module it's most common use is to create URL's for nodes without having Drupal's standard nid as part of the URL.
For example:
Assume you've created a form for users to fill out for each of their support requests. This 'request' form is a new Drupal node type. If a user named userfoo has 2 requests then the URLs for these could be consecutively numbered similar to the following:
www.example.com/request/userfoo/1
www.example.com/request/userfoo/2
and if userbar has 9 requests then the URLs for these could be consecutively numbered similar to the following:
www.example.com/request/userbar/1
www.example.com/request/userbar/2
... to
www.example.com/request/userbar/9
The numbers 1 to 2 for userfoo and 1 to 9 for userbar are created by this module. The above assumes that Pathauto is used to create an alias for all request node types similar to the following:
request/[author-name]/[unid]
pclzip_zipfolder
PclZip_zipfolder allows you to create a zip archive from a folder located in your files folder.
This module needs the pclzip module.
Save to FTP
The Save to FTP module allows for saving a node as a .html file on a FTP Server.
After a node has been saved, and a path is given, if the user has been given the "Save to FTP" permission a form is added on the node edit page which is activated by selecting the "Publish to FTP" button.
How SaveToFTP compares to other Contributed Modules
SaveToFTP has one main purpose, export nodes as .html files to a FTP Server. In my use case, the FTP Server is also a web server, so I use this module to export static .html to a web server that doesn't have PHP on it. This way I have a static version of the site without the overhead of PHP/Drupal, but can still use Drupal for the content management.
[Server with Drupal] ----> [FTP/Web Server]
Please see the Import / Export wiki page for a full comparison of import/export modules similar to this one.
7.x-1.x release
This is the initial release of the 7.x. branch. It has been used on a clean install of Drupal 7 and found to work.
To Dos: Add tests and features
Seeking sponsorship to create a Save to S3 option
6.x-2.x releases
The module automatically handles all html, css, and js.
5.x releases
5.x is deprecated. If you still want a 5.x. release you can find it here: http://drupal.org/node/433922/release
CameraField
CameraField provides an camera field type for CCK. This new CCK field is for capturing images from webcam. Captured images are displayed as thumbnails linked to original image. This module is based on Mugshot module.
Dependencies
- CameraField 6.x depends on the CCK module
Installation
1. Copy camerafield folder to your sites/all/modules directory. Make sure you have installed CCK.
2. Enable Camerafield module in admin/build/modules.
3. Configure settings in admin/settings/camera_field
3. Choose any Content type and go to Edit -> Manage fields.
4. Add new field, select Camera as fieldtype and Camera Field as widget.
5. Save.
6. Create new content and start taking images.
Credits
Developed by Tamer Zoubi and Sponsored by Totally Techy
Media: SchoolTube
Provides support for the SchoolTube video provider for Embedded Media Field.
Important
This module only works with the 6.x-2.x branch of Embedded Media Field.
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.
Scald: PDF
PDF viewer inside Scald.
To test it quickly:drush en -y scald_pdf scald_dnd_library atom_reference
then add a new Atom reference field.
If you have File Entity, you can configure File view mode per context. However, PDF module itself does not fully support it.
This module is the first step forward to a generic Scald provider for any File entity.
Sponsored by Open Web Solutions.
Webform Private File Gateway
Webform Private File Gateway provides umbrella functionality for controlling access to private files through the use of a webform. Users are forced to fill out a webform before they are granted access to the private file they are requesting. Developers can optionally specify whether or not to send an email the the user with a link to the file download and/or enable cookies for remembering the user.
The difference between this module and Webform Protected Downloads is that Webform Private File Gateway controls access to ALL private files whereas Webform Protected Downloads requires separate webforms to be created for different files.
Installation
- Download module and copy webform_file_gateway folder to sites/all/modules
- Enable Webform Private File Gateway module.
- Visit admin/config/media/file-system page to configure module settings.
Features
- Configurable email validation message
- Cookies for remembering user and tracking
- Webform submission and file download tracking in the database
Known Issues
The "webform email component" dropdown on the administration screen properly changes when webform dropdown is changed. However, this field will cause errors when trying to save.
Http Headers
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.
Excluded
Allows user with the proper permission to list the files, CSS and/or JavaScript, that they do not want showing on the site.
This module came out of my jQuery Mobile module and will be a dependency in the final version.
Image optimize effect
This module will optimize the file size of the generated images and can be used in 2 ways
- As an image effect, but this can slow down the generation of the image style
- [prefered way] As a drush command
drush image-optimize-effect-all, this will optimize all image styles that aren't optimized yet.
Warnings (when used as image effect)
- Only tested on Ubuntu 12.04 LTS
- Converting an image can take some seconds to complete
This module adds 3 new image effects:
- pngquant to optimize png files.
- imgmin to optimize all image files, but it works best for jpg files.
- save an image as interlaces.
Dependencies
More info
http://calendar.perfplanet.com/2012/giving-your-images-an-extra-squeeze
http://calendar.perfplanet.com/2012/progressive-jpegs-a-new-best-practice
Credit
Code re-used from imagemagick
Attachment Expiration
The module provides a simple administrative interface. Choose whether the module should be on or off, select the content types the module should apply to, then select the length of time for the attachments to expire. Depending on how often you have cron set to run, attachments of the appropriate nodes will automatically delete themselves after that amount of time has expired.
WARNING: This module will remove files from your server. Be sure you know what you're doing and always remember to make backups.
User List Export
User List Export allows you to automatically manage access to Samba shares and semi-automatically manage access to SVN repositories based on Drupal user roles by writing simple access list files.
CCK Download Dropdown
Looking for co-maintainer. See message in issue queue.
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.
*************************************************************************************
Evernote
Here's a brief description of Evernote from the source:
"Use Evernote to save your ideas, things you see, and things you like. Then find them all on any computer, phone or device you use. For free."
Evernote is a note-taking, idea-saving application that has been adopted by over 3 million people. It syncs up your notes with a remote server, so accessing your latest notes on multiple devices is automatic. When you upload images, Evernote will OCR them to make them searchable. You can embed files as well, though only PDFs, .txt and images with the free version. The premium service enables a few additional features such as embedding any kind of files and increasing the amount of bandwidth allotted to you per month.
The idea behind the Evernote module is twofold. The first goal is to leverage the Evernote API to make it a blogging platform. Because Evernote is a great way to gather ideas and information, the next logical step is to make sharable information accessible on the web. See here for more background. The result of bringing Evernote and Drupal together is a rapid blogging tool that will integrate into many people's workflow.
Here's what a typical workflow would be for setting up a feed:
SharePoint
This module let's you integrate with Microsoft SharePoint.
Project Goals
The intention of this project is to create a collaborated effort for SharePoint integration and create a good and stable solution that works for most SharePoint projects.
Integration Approach
This module integrates with SharePoint through the SharePoint SOAP Web Services. It's using the SOAP services since that is the most widely supported and most powerful way to integrate SharePoint with Services. If you are planning to integrate SharePoint with CMIS, please have a look at the CMIS module.
Functionality
The SharePoint Module currently supports:
* Consuming SharePoint data in lists with the Feeds module.
* Consuming SharePoint data in lists with the Views module.
* Use SharePoint Search within your Drupal Site.
There are lot's of interesting plans for future development of this module. Have a look in the Issue Queue to get an idea of what's in store.
The functionality is not yet ready for production, but it serves as a good starting point for creating a working integration. If you're testing this module and find something that isn't working please post an issue in the queue!
Development status
Recline
This module creates an integration with Recline.js to visualize user-submitted data.
Initial work will create a field in which a user can upload data files and view them through Recline.
The is part of a large effort to integrate much of the functionality of CKAN with Drupal.
Status
Currently this module creates a file field that allows you to upload a CSV file. It should at this point correctly upload the file and display it in any of the selected view modes. There are a couple of bugs currently open for this basic functionality:
#1773990: Fix file field implementation
#1774008: Add timeline 'view'
Roadmap
Here are some features we plan on adding in the near future. Assistance is more than welcome:
#1774004: Add rdf and json endpoints for uploaded files
#1774000: Add datastore integration
#1773992: Add Media module integration (ie support uploading of more file types)
Fast Private Downloads
This module provides fast private downloads via Node.js.
The Node.js server process hands authentication off to Drupal, but handles the slow file-serving part.
Media Manager
This module is now in beta testing phase.
This was updated on March 27, 2008.
Media Manager is designed for easily managing the incoming media from a variety of sources. It provides for media simply as files, or, by using the media_nodes module, allows media to have the full benefits of nodes. Media can be attached to nodes, providing the ability for playlists or slideshows, and display of images, audio and video within a node.
There are quite a few features planned to be added, however, the first deployable version will be rather limited.
Requires Media API.
Protected Download (downld)
This module makes it possible for public and private download to co-exists on Apache web servers.
Incident report
This module allows users to submit incident reports from a Drupal site. It was designed with the emergency services / public safety workforces in mind, although it can easily be modified to accommodate whichever industry might be in need of such a content type.
Hash wrapper
This is a simple wrapper for Drupal 7 implementing a 'hash://' schema to help with storing a couple (ten) million files. Instead of storing CHANGELOG.txt it will store the file under its MD5'd name, hashed into two levels of directories: a0/49/a0493e27f48b50e18312b9f4508fc29d.txt
Select 'Hashed files' under Upload destination when adding a File field to use it.
FeedAPI Grabber
This module is FeedAPI addon that adds ability to grab attached files from feeds. Grabber files are saved as node attachment using core Upload module. Module is plug and play and it has no settings or configuration page.
Dependencies
FeedAPI Grabber 6.x depends on the
- FeedAPI
- Upload module (Core optional)
Installation
1. Copy FeedAPI Grabber folder to your sites/all/modules directory. Make sure you have enabled Upload, FeedAPI and FeedAPI Node modules.
2. Enable FeedAPI Grabber module in admin/build/modules.
3. Create new Feed from source which has attached files and they will be downloaded and saved as local attachments
Credits
Developed by Tamer Zoubi and Sponsored by Prosite
Imagecache Subdomain
Introduction
This module is a extension for imagecache module to use subdomain to serve image generated by imagecache. You can define multiple subdomain and serve image from that (using specific subdomain for image).
Why use it
Using imagecache_subdomain you can improve your front end loading performance. Each browser can download only 2 different file from each subdomain together; if you use different subdomain for images your browser can dowload much file together and complete page loading faster then only one domain.
You can find more info on:
S3 Auto Pushing
Module helps pushing static files to S3 bucket automatically. Required CDN module installed.





