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.
Auto Assign Role
The Auto Assign Role serves three primary purposes. The first is to provide an automatic assignment of roles when a new account is created. The second is to allow the end user the option of choosing their own role or roles when they create their account. The third is to provide paths that will trigger a specific role when an account is created. The administrator has full control over these functions and can have them working together or independently of each other. Auto Assign Role is integrated with the Content Profile module so that you can have content types serving as registration pages. You can even replace the default user/register page with a customized version of your own design.
Drupal 7
I'm starting d7 development so if you have an interest in participating at this stage you can begin by writing use cases for what the module should or should not do. Here are the ones that will need to be completed to reach a beta:
Menu token
Menu Token module provides tokens, that could be used in title or in path of menu items (links). For example, if you create a menu item with path: "user/[current-user:uid]", the url will be changed "on fly" to: "user/1" (assuming you are user 1).
Tokens are provided by Token module. Menu Token allows to use both global tokens and entity ones: node, user, term, etc. Entity tokens have several methods of substitution: from context, random and user defined.
Menu token Resources
Menu token functionality can be extended gracefully. Following some examples:
- Menu token module implements Ctools plugin system and allows to plug in new token handlers.
- Use Extended path aliases to automatically translate paths like 'users/admin/mycontent' to 'user/1/mycontent'. Just need to create a 'root' path alias: 'users/admin'. See #1320842: Work with the Path Auto module.
- Superfish integrates jQuery Superfish plugin with your Drupal menus. Use Superfish 1.9-beta5 or greater.
- Menu item visibility exposes configurable and extendable visibility settings for menu links. You'll need to set module weights so that Devel node access > Menu item visibility > Menu token.
Menu Admin per Menu
By default, Drupal allows only users with "administrer menu permission" to add, modify or delete menu items.
In case you want for instance to let certain users manage primary links or secondary links but not navigation menu, this module provides this functionality.
Content Management Filter
This module adds an easier way for administrators to filter the content on a Drupal site for administration purposes.
CMF is an alternative to the Administer >> Content management >> Content tool with these additional options:
- Show nodes, comments or both
- Filter by author (select from drop-down list)
- Filter by author (enter username in AJAX search field)
- Filter by user role (shows nodes authored by any user in the selected role)
- Filter by user status (active or blocked)
- Filter by title or body substring
- Filter by node created date (before/after)
- Filter by node language
- Displays a column in the content list with node creation time
- Sort content list by any column: Title, Type, Author, Status, Time
CMF also optionally adds a User Content tab to the My Account page that brings up CMF with a list of nodes authored by the current user.
Significant improvements sponsored by MomsTeam.
geoPHP
Provides integration with the geoPHP library: https://github.com/phayes/geoPHP
This module does not provide any direct functionality to end-users or site-administrators. Install it only if another module requires it.
GeoPHP is a open-source native PHP library for doing geometry operations. It is written entirely in PHP and can therefore run on shared hosts. It can read and write a wide variety of formats (WKT, WKB, GeoJSON, KML, GPX, GeoRSS). It works with all Simple-Feature geometries (Point, LineString, Polygon, GeometryCollection etc.) and can be used to get centroids, bounding-boxes, area, and a wide variety of other useful information.
geoPHP also helpfully wraps the GEOS php extension so that applications can get a transparent performance increase when GEOS is installed on the server. When GEOS is installed, geoPHP also becomes fully compliant with the OpenGIS® Implementation Standard for Geographic information. With GEOS you get the full-set of openGIS functions in PHP like Union, IsWithin, Touches etc. This means that applications get a useful "core-set" of geometry operations that work in all environments, and an "extended-set"of operations for environments that have GEOS installed.
Read the API Reference at: https://github.com/phayes/geoPHP/wiki/API-Reference
Learn about GEOS integration at: https://github.com/phayes/geoPHP/wiki/GEOS
Credit
HTML Purifier
7.x-1.0 Released! Now is the time to provide input into the next version #1831196: 7.x-2.x Roadmap
HTML Purifier is a standards-compliant HTML filter library. HTML Purifier will not only remove all malicious code (better known as XSS) with a thoroughly audited, secure yet permissive whitelist, it will also make sure your documents are standards compliant, something only achievable with a comprehensive knowledge of W3C's specifications.
HTML Purifier is very tasty when combined with WYSIWYG editors and is more comprehensive, standards-compliant, permissive and extensive than Drupal's built-in filtered HTML option, which uses a derivative of kses. You can read more about it at this comparison page. Want custom fonts, tables, inline styling, images, and more? Want just a restricted tag set but bullet-proof standards-compliant output? HTML Purifier is for you!
The HTML Purifier module is licensed under GPL v2 or later, however, the HTML Purifier library itself is licensed under LGPL v2.1 or later.
Modal Frame API
This module provides an API to render an iframe within a modal dialog based on the jQuery UI Dialog plugin. You should not install this module unless another module requires you to, or you wish to use it for your own custom modules.
It is an alternative to Popups API (Ajax Dialogs) which implements its own library and API to manage popup dialogs. On the other hand, the Modal Frame API is based on the jQuery UI Dialog plugin and it is specially built to deal with iframe elements with very little effort (and no particular AJAX requirements).
For themers, this module provides a default template for rendering child pages within modal frames (modalframe-page.tpl.php) that can be copied to the theme directory and customized to suit the particular needs of the site. It is also pretty easy to adapt the provided stylesheets to match the look of the site.
Requirements related to jQuery UI: jQuery UI version 1.7.x (1.8.x. not yet supported) Note that you also need jQuery 1.3.x, currently provided by jQuery Update 6.x-2.x.
Highly recommended: onBeforeUnload API (enhances synchronization of parent/child windows). See reference: #669436: In search for alternatives to the unload event.
Builtin support for: Dirty Forms.
Modules using Modal Frame API: Modal Frame Contrib Package (includes mini-modules that implement the Modal Frame API to enhance the usability of a few day to day tasks in every Drupal site), Node Relationships, Modal Frame CCK Editor, Modal Frames from Menu Items, Subnodes by Taxonomy.
Modal Frame API is pretty simple, but powerful at the same time.
Forward
Adds a "forward this page" link to each node. This module allows users to forward a link to a specific node on your site to a friend. You can customize the default form field values and even view a running count of the emails sent so far using the forward module.
Mass Contact
About Mass Contact
The Mass Contact module allows anyone with the proper permission to send a single message to multiple users of a site. There are currently two ways to select users: roles and taxonomy. The Chaos tools suite (ctools) Plugin tool is used to expand the selection capability.
Menu Settings per Content Type
D7 not needed, it's in the core.
#1605982: Seeking new maintainer(s)
This module allow to set the Menu Settings with certain Menus for content editing by Content Type.
From version 2 of the module you have to be not logged in as user #1.
Utility
example1 : I want that the menu-settings just show up on content-type "page" and not on other content-types. so that users wont be confused to have these settings where they dont make sense.
example2 : for the "Images" content Type I want to have only "Images" Menu available for "images" content.
Once installed the Menu Settings will not available in Node Edit Form until you set the Menus we want in the Content Type Settings (Administer > Content management > Content types > TheContentType edit)
Initial development sponsored by REALPRO
Commerce Addressbook
Commerce Addressbook is a module that allows authenticated customers to reuse
previously entered addresses during checkout.
They can manage all entered addresses in their user panel (user/%user/addressbook).
Note that for data consistency reasons editing a previously entered address
won't change it on previously made orders.
IMCE Crop
Adds image cropping functionality to IMCE through its UI.
CONFIGURING AND USING
---------------------
1. Go to admin/settings/imce Assuming you have already created a IMCE profile. Under section 'Configuration profiles' click on approprate 'Edit' link.
2. On the next page find section 'Directories'. Set appropriate permission using the check box 'Crop'.
3. Click on 'Save configuration' button.
4. To test use IMCE. A new 'Crop' tab button will be display. Follow instructions on screen.
Prepopulate
The Prepopulate module allows fields in most forms to be pre-populated from the $_REQUEST variable.
For example, the following URL,
http://www.example.com/node/add/blog?edit[title]=this is the titlewill automatically fill the Title field on a new blog post with the words "this is the title". Any field can be prepopulated this way, including taxonomy and CCK fields. You can prepopulate more than one field at a time as well. Prepopulate is excellent for creating bookmarklets. For examples on usage for all of these cases, please read the USAGE.txt file that comes with the module or you can read the online handbook page.
Notes on the 6.x-2.x versions
If you are having trouble please try the latest -dev version before reporting bugs.
The syntax for several prepopulate fields has changed and is not yet updated in the documentation. Please see #883980: New field formats are necessary in Prepopulate 6.x-2.x for several examples of items that have changed.
Nodeaccess
Nodeaccess is a Drupal access control module which provides view, edit and delete access to nodes. Users with the 'grant node permissions' permission will have a grant tab on node pages which allows them to grant access to that node by user or role. Administrators can set default access controls per content type, and also define which roles are available to grant permissions to on the node grants tab.
The upshot is, this module allows you to do things like 'node 123 can be viewed by authenticated users and edited by admin users and joeuser'. As an added bonus, update and delete permissions are separated, so you can make sure users with edit permissions cannot accidentally delete pages.
7.x version
The previous maintainer (chadcf) had released a dev version of nodeaccess for D7. Over the following months a number of bugs/issues were reported and as of May 7th, 2013, all bug reports in the issue queue have been addressed (where possible) and with that, version 7.x-1.0 has been released as a stable/recommended release for Drupal 7.
Future Roadmap
Feeds XPath Parser
Feeds XPath Parser is a Feeds plugin for parsing XML and HTML documents. It enables site builders to leverage the power of Feeds to easily import data from complex, external data sources. Each element you wish to extract is setup using configurable mapping queries, saving time for developers who would otherwise have to code complex, specific-use modules. It also enables end-users to build web scrapers and other useful tools within Drupal.
Ubercart Views
This module provides a collection of standard views (http://drupal.org/project/views) for the Ubercart webshop module (http://drupal.org/project/ubercart).
It also describes some of the Ubercart data tables to views, so you can create your own views, based on these data using the views_ui.
If you have some killer views, not included in this module, please don't be shy - share them with us :-)
Current views
- new_products: Block view displaying the most recently added products
- popular_products: Block view displaying the products which has sold the highest quantity
- product_pairs_block: Block view providing 'Users who bought the selected product also bought these' list
- user_products: Block view displaying a list of the products which the user most often end up buying.
- uc_order: Page listing all orders.
- Order management view for bulk operations on uc_orders
The module will install a number of database views, which is needed for some of the default views
that ships with this module. If that is a problem for you, you should keep theese disabled, and remove the database views after installation (the sql to remove the views are found in the .install file).
Installing Ubercart Views
Place the content of this directory in sites/all/modules/uc_views
Flowplayer API
An API module to provide integration with the GPL licensed Flowplayer for Flash video playback.
Features
- Easily adds Flowplayer support to other systems
- Takes advantage of Drupal JavaScript Behaviors
- Applying any configuration option is simple
- jQ module support
- Stripped down to just the API to provide an integration point for other modules
- Global custom styling options to change how it looks
Features Extra
Features Extra provides faux exportables (via Features) of several site-building components.
Taxonomy
Drupal 6: Supports exporting taxonomy vocabularies. To export a vocabulary, install FE taxonomy, go to vocabulary edit page, assign it a "machine name," then export it with Features as usual. As a bonus, this allows you to edit the "module" property of a vocabulary. Views support (by machine name) is also provided.
Drupal 7: Exporting vocabularies is supported natively by Features in Drupal 7 so it has been removed from this module. If you need to export taxonomy terms in addition to the vocabularies, you can do this with the UUID Features Integration module.
Nodequeue
Only nodequeue definitions are supported. To export a queue, install FE Nodequeue, edit your nodequeue, assign it a "machine name," then export it with Features.
Block
To export a block, install FE Block, edit your block, give it a "machine name," export it with Features. You can export block settings (region settings, visibility settings, ...) of any block, and the content of blocks created with the Block module from Drupal core.
Message
Message module is Drupal 7's answer to activity-streams and a flexible Messaging & Notifications system.
Distributions using Message
- Commerce kickstart 2.x
- Drupal Commons 3.x
- OpenScholar
- OpenIdeal
Subscribe & Notify (a.k.a the Message Stack)
- Message notify is the complimenting module that can be used to send regular or multi-lingual emails (or any other delivery mode) that can also be saved for "email log"
- Message subscribe is a subscription system based on Flag module
Documentation
- The Message Stack webinar
- DrupalCamp Montreal Keynote - has some overview on Message
- Enable "Message example" to see how it works.
- Message overview and new features
- Log Site Activity with Message and Rules tutorial
Compatibilty
ChecklistAPI
Checklist API Provides a simple interface for modules to create fillable, persistent checklists that track progress with completion times and users. You don't need this unless you're a module developer or you want to use a module that calls for it.
Event
This is a simple module to keep track of events and show them to users in various calendar displays. It also provides an event API to allow other modules to store and work with date data.
PHPMailer
Adds SMTP support for sending e-mails using the PHPMailer library. Comes with detailed configuration instructions for how to use Google Mail as mail server.
The main differences to the SMTP module are:
- Integration with Mime Mail module
- Improved bulk-mail performance through SMTP keep-alive connections (if supported by the mail server)
- Built-in e-mail rerouting option (useful during site building and development)
Content Analysis
The Content Analysis module is an API designed to help modules that need to analyze content. The module enables a suite of content analyzers to provide multiple views into the content on your Drupal site or on any website. The current list of available analyzers are:
- Quick SEO: Provides a quick and easy analysis of content to help your site rank better in the search engines for a specific keyword.
- Scribe SEO: Provides advanced analysis of content to help your site rank better in the search engines. Also provides keyword extraction and guidance.
- Readability: Grades content based on five popular automated readability tests for content
- W3C Analyzer: Test content for W3C validation
- Keyword Research: Provides an array of tools for analyzing and discovering keyword phrases. Also helps with tagging nodes with keywords.
Workbench
Workbench provides overall improvements for managing content that Drupal does not provide out of the box. Workbench gives us three important solutions:
- a unified and simplified user interface for users who ONLY have to work with content. This decreases training and support time.
- the ability to control who has access to edit any content based on an organization's structure not the web site structure
- a customizable editorial workflow that integrates with the access control feature described above or works independently on its own
These features benefit the end users as well as Drupal Site Administrators and Technical Support.
For Drupal Developers and Site Builders, Workbench provides several additional benefits:
- a modular architecture: only install and enable the modules you want
- extensibility: we would love to see more integration with other Drupal modules (in fact we have our eyes on Scheduler and Workflow modules and improvements for Asset Management)
Related Modules
Video Embed Field
Video Embed field creates a simple field type called Video Embed that allows you to embed videos from YouTube and Vimeo or show their thumbnail previews simply by entering the video's url.
Configuration
There are multiple options to configure the way that the embedded video will act, based on the provider of the video. This is configured by setting up Video Styles which can then be applied as a formatter setting. You can access these settings in your site at admin/config/media/vef_video_styles.
The module also provides support for retrieving and displaying thumbnails for each video via a field formatter. This way you can configure your detail page to show the video, while any listings simply show the thumbnail. This is setup via field formatter, so it will work through display modes and views equally well. The thumbnail is retrieved automatically based on the video's url.
For Developers
This module provides a hook system should you need to add other providers. See the video_embed_field.api.php file for more information. Video Embed Styles are ctools exportables for your convenience.










