1,770 Modules match your search

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.

Customer Profile Type UI

New widget's checkboxes appear at the top of the order edit page.

The big idea

This module provides a dynamic way to add new customer profile types for the Commerce module using a UI. So if you want another customer profile type other then the default billing pane that comes with Commerce, you can now easily add new ones using this module. Just as the billing profile type is fieldable and you control how fields are displayed, the same is true for any profile types you create using this module.

FillPDF

What does this module do?

Most PDF modules generate PDFs from scratch; FillPDF is not one of those modules. Instead, it lets you fill in existing editable PDFs with data from your Drupal site. Editable PDFs are those forms that let you type into them. Read more.

Ubercart Restrict Qty

Ubercart compatible module.

Ubercart Restrict Qty lets you add a very basic Restrict Qty. to a product in your Ubercart store to limit the quantity of that product in the shopping cart to 1. This is useful for single purchase products or for instances where it just doesn't make sense for a customer to purchase more than one and you want to prevent it from happening.

Content Injector (formerly AdSense Injector)

AdSense Content Injector screen shot

Insert advertisements(or any text/HTML/JavaScript content) into nodes without editing individual nodes or tweaking theme templates. Insert ads or other content in node body or teasers automatically.

*Content Injector was formerly known as AdSense Injector.

Major new features

Reliable in-content insertion using HTML DOM and XPath manipulation

Want to insert ads or other content inside node bodies?

The 6.x-3.x and 7.x-3.x versions for Drupal 6 and 7 now provide reliable in-line insertion into a node's body.

This version provides three body insertion points: top, in-line, and bottom.

The in-line insertion template uses the PHP DomDocument's XPath query feature to select an insertion point. This is powerful, allowing for any valid XPath expression to select the insertion point -- but this also requires that you know what you're doing with XPath if you want to override the default insertion point.

Per-node insertion blocking

There are undocumented features in the 6.x-3.x and 7.x-3.x branches. You can prevent insertion on a per-node basis by adding ai:noinject to the start of a node's body text. See issue #1333800: Document ai:noinject feature: prevent automatic injection in node body of selected nodes. for more info.

In addition, if the node contains any AdSense module [adsense:xxx] manual insertion tags, this module will not inject any ad templates -- so in effect, if you place any AdSense ads using the AdSense module's [adsense] tags, this module's features are disabled for the node in question.

Upgrading from a previous release

The 6.x-3.x and 7.x-3.x branches are fully functional but lack ability to migrate settings from previous versions, so you'll have to reset all your current settings (save copies of your ad templates first!) and re-configure the module.

Call for testers

I need help testing the 6.x-3.x and 7.x-3.x branches new features. Please test and create bug reports if you find any problems.

Module Overview

You can control the node types and word count that will trigger insertion. For example, you can insert content only on "Story" or "Book" (or both) node types, and only if they have more than 300 words. You can use CSS styles to control placement on the page to some extent.

This module allows you to inject content at the top, bottom, or inline in a node's body field when a node is rendered on a full-page view. You can inject content before or after the node's teaser in teaser views. You can inject any arbitrary content you like: text, HTML, JavaScript, whatever.

The AdSense module is required only for [adsense] tag support; if you aren't using [adsense] tags, there is no dependency on the AdSense module as of the 6.x-3.x and 7.x-3.x branches.

Commerce price by components

Commerce price components

Extension to Drupal commerce that provides a price formatter to enable/disable price components such as discounts or taxes when displaying prices. This gives the admin absolute control over which components should be displayed and which shouldn't.
It also provides two Views handlers to display/hide price components in cart totals and order totals.

Shareaholic | share buttons, related posts, social analytics & more

Shareaholic for Drupal

The easiest, most effective way to grow your website traffic, effectively engage your audience, monetize, and gain insights for free.

Shareaholic is an all-in-one content amplification and monetization platform, that includes related content recommendations, promoted content, social sharing, following, site monetization apps such as affiliate linking, and social analytics. This module makes it a snap for any website — big or small — to engage and grow their traffic, market their content, gain insights, and monetize their traffic, all from one powerful but easy-to-use dashboard.

This module is actively developed (GitHub), maintained and supported with much love by Shareaholic.

Recent Updates:

UC Recurring Payments and Subscriptions

Ubercart compatible module.

Ubercart has included the Recurring Fees module as a core module for some time now, allowing users to associate recurring fees with products that customers must pay for via credit card. Unfortunately, the module was never really there in terms of practical uses and extensibility. Due to its limitations and to its relatively minor importance to the Ubercart project as a whole, the development team decided to move it into contrib space where it could mature without limiting or being limited by the core Ubercart development cycle.

UC Recurring Fees 6.x-1.0 is a straight migration of the code from Ubercart as it stood at its latest point in the 2.x development cycle. It was removed between RC1 and RC2, as we forgot to nail down the issue prior to tagging the 6.x-2.0-rc1 release. Several community members have been developing code and ideas to greatly improve and maintain this module, and they will work on it through this contrib in the 6.x-2.x version and beyond.

Commerce Views Display

Provides a views style plugin to render a Commerce add to cart form with a product display for a view of Drupal Commerce Products.

Sponsored by Commerce Guys

Why use Commerce Views Display?

  • You want to free yourself from node displays for Commerce Products.
  • You want to group Commerce Products into an add to cart form and do not need any description for that grouping.
  • You want to display all Commerce Products of type X on a single add to cart form
  • You want to create dynamic Commerce Product displays, ie All products under $10
  • You want to create multiple dynamic Commerce Product displays in a single view.
    Examples:
    • All products under $10 grouped by category
    • All products for a single base model field

UC Variable Price

Ubercart compatible module.

The UC Variable Price product feature allows you to turn any product in your Ubercart store into a variable priced product. Instead of using a fixed price entered by an administrator, customers can specify their own price for a product on the add to cart form. This makes it a useful module for donation sites! The module will automatically take care of the product add to cart shopping cart forms to accommodate the variable price field. It affords you some measure of control over the titles of various fields and also lets you specify a minimum and maximum price for any given product. Extra integration with Ubercart's product classes interface allows you to set default Variable Price product features on every product created of any given product class.

Commerce Webform

This module extends both commerce and webform. It allows the site owner to create webforms with a new product field. The productfield allows the listing of one or more products which the site user would then select from. When the form is submitted the products are added to the users shopping cart. The webform results page shows the submitted forms and intiially marks products as unpaid. Later, when the user has paid for the products in their basket, the webform submission is updated and all products that made it to the checkout are then marked as having been paid for.

The main use cases is for creating complex product selection screens. Webform is very good at capturing choices and offering options. The products that get added to an order can then be based on the results of the submission. An example would be a single webform which would offer registration to an event. All user choices could be captured in the webform, and product choices add to the shopping basket. For example, the main delegate attendance product is marked as mandatory on the webform meaning it has to be added to the basket. The optional wifi product could then be added as a second product field to the webform but not made mandatory. Alongside this the webform submission could collect other data about the delegate such as meal choices, seminar preferences or special access requirements.

Commerce Ajax Cart

Commerce Ajax Cart

Commerce Ajax Cart should be the successor of UC Ajax Cart.

What is done till now:

  • Add custom ajax command for update cart block from everywhere
  • Add form ajax handling

Tested with commerce kickstart 7.29 .

What are the next steps

  • Better CSS
  • Add remove buttons to block cart preview
  • Testing with other commerce installations

Commerce Cart View Override

This module provides the ability to override the default cart page view for Drupal Commerce.

Sponsored by Commerce Guys

Reasons this module exists

  • The cart page view is not a view with a page display; therefore, you cannot just override the path.
  • The cart page uses a view (commerce_cart_form) that is hard coded in the menu callback for the path "cart"
  • The cart page view is not exportable since the default view is defined in Commerce Cart.

The Commerce Cart View Override module solves all of the problems and provides a way to select the view to display on the cart page.

Commerce Donate

Commerce Donate checkout pane

This module provides a donation line item type along with a donation product and product display. This is partially based on Randy Fay's excellent screencast at http://commerceguys.com/blog/using-custom-line-items-provide-donation-fe...

Commerce Repair

This module is designed to repair missing fields from various commerce entities. After installing, visit the menu item that does the repair, admin->store->config->Repair Commerce Fields (admin/commerce/config/repair). Once you've done that you can uninstall the module.

If you're using a Commerce dev release after 3 November 2011, you don't have to patch Commerce at all. Earlier versions of Commerce require this patch to Commerce, which is now incorporated in the code.

Commerce Bulk Product Creation

(Original code was the Google Summer of Code 2010 Project by Leighton Whiting)

This module facilitates the creation of groups of related products in bulk. Product administrators can select a number of options for various fields, and a product will be created for all possible combinations of these values. Out of the box, only list fields are supported for this, but an API exists to enable other types of fields for 'combination creation'.

The module also provides various ways to create display nodes for the newly-created products:

  • Redirect user to node creation form (with title and product reference filled in).
  • Silently create display node referencing all created products.
  • Silently create one display node for each created product.

This will greatly speed up the task of adding numerous products at once.

Installation / Getting Started

Besides installing and enabling as usual, before this module is of any use, you have to at least have one product type that has a 'combination creating' field (out of the box, this can only be list fields; but after enabling the included Taxonomy reference integration module, you can also use taxonomy reference fields). Once you have at least one of those, you can use the local task "Bulk add products" on the products page to create bulk products.

Booking and Availability Management API

The BAT API provides generalized API (REST) access to Booking and Availability Data.

If you are a Rooms 7-x-1.x user you will want the 7-x-1.x version while if you are a Rooms 7-x-2.x or BAT user you will want the 2.x version.

Commerce UPS

Provides UPS shipping estimates in conjunction with the Commerce Shipping and Commerce Physical modules.

This module requires an active UPS.com account in order to obtain estimated shipping rates.

Once installed, the merchant's UPS account settings (and other UPS shipping settings) must be configured at admin/commerce/config/shipping/methods/ups/edit. Please refer to the README.txt file for additional information about how this module works and how to get it up-and-running.

This module was designed to provide functionality that serves the majority of simple use cases. Advanced functionality involving multiple package sizes and types, void fills, and other custom-ish stuff will be considered once the simplest case is complete.

Installation and Configuration

Full details are available in the README.txt - be sure to read it before posting a new issue.

  1. Install and enable the module and all dependencies (be sure to use the latest version of everything). Add dimensions and weight fields (new field types via the Commerce Physical module) to all shippable product types. Populate dimensions and weight fields for all products.
  2. You MUST be using the commerce_shipping 2.x branch.

Opening hours

This module is intended to make it fairly easy to manage opening hours for a large number of locations.

The use case this was built for is a chain of public libraries that have rather different hours, but common closing days. Originally, we used the office hours module, but the architecture and scope of that module did not fit well to this advanced use case, where we want to provide precise information on what libraries are open at a certain time.

Ubercart Terms of Service

This module includes an Terms of Service text (aka terms and conditions) and a [x] I agree with the Terms of Service checkbox for the cart or the checkout page of the purchase using Ubercart.

Installation
Just enable the module, cart module and checkout module of ubercart are required.
The configuration of this module is merged into the Ubercart pane settings.
You can configure the options for checkout in panes' checkout configuration page (admin/store/settings/checkout/edit/panes) and for cart in panes' cart configuration page (admin/store/settings/cart/edit/panes).

Options available for configuration:

  • Whether the ToS is displayed or not in cart and/or checkout pages.
  • The weight of the pane.
  • The node you want for ToS page.
  • In case of checkout, if the ToS is required or not.
  • If ModalFrame API is present, you can also select if the ToS is displayed in a popup window and its height & width.
  • Using conditional actions you can decide in which product classes the Tos is displayed.

ToS in js popup
You can enable the ModalFrame API module in order to have the Terms of Service opened in a js popup window, you can accept the ToS from this window.

Commerce No Payment

This payment module adds a "No payment required" payment method (for free stuff).

This module has been replaced by the Basic payment method from Payment.

CRM Core

CRM Core

CRM Core is a set of modules for managing contacts, activities and relationships within your Drupal website. It is designed to provide a basic framework for managing these items and interacting with other components of Drupal.

Overview

CRM Core allows you to manage contacts, activities and relationships in your Drupal website. It provides extensive support for these entities, and includes a number of tools to make them easier to support in your Drupal website.

  • User Sync allows contacts to be paired with user accounts.
  • Match provides support for deduplication.
  • Reports provides a central repository for reports.
  • CRM Core Settings allows administrators to control the UI for managing contacts.

In addition to these basic features, CRM Core integrates with a number of other components within Drupal, including views, VBO, ctools, rules, solr, services, field api and search api.

Why use CRM Core?

An extensive discussion of why you would want to use CRM Core can be found in the handbook. This page details the design philosophy behind CRM Core and other things to consider when trying to make the case for why you would want (or not want) to use it.

Pay

This module can be used by other modules to collect and track payments. Through this API, any module can provide a payment form and payments can be handled and tracked centrally.

Payment forms

A payment form is the result of any business rules that include a request or recommendation of payment. Examples include shopping cart checkout pages, donation forms, event registration pages, user registration forms, or tip jars.

A module using this payment API can be very simple or very complex, implementing any amount of business rules that result in a payment request. From there, Pay collects payment information and submits it through a configured payment backend. All payment activities, no matter what they're for, are stored in one place for tracking and reporting purposes.

Modules that implement payment forms include:

If you develop a new payment form module, please let us know so that we can add it to this list.

Payment backends

A payment form can support one or more payment methods, using the functionality of a payment method handler. Support for the following backends are available for Pay:

    Commerce Reset

    While a site is in development or testing phase we create hundreds orders, transactions and customer profiles.
    This module allows you to reset commerce to a near blank slate.

    At the moment we only support commerce core.

    Features

    1. Delete orders and reset order number.
    2. Delete payment transactions.
    3. Delete customer profiles.
    4. Delete product variations.
    5. Delete history (commerce_message integration)
    6. Module is pluggable via API (in 1.3 release)

    Commerce coupon batch

    Mass generation of Commerce coupons that allows you to create automatically hundreds of coupons.

    Important notice: for Commerce Coupon 1.x, use the 1.x branch. For 2.x, use the 2.x branch.

    Commerce Services resources

    Commerce Services integrates Drupal Commerce with the Services module's REST server. This allows you to build an API that can list (index), create, read, update, and delete Commerce entities remotely, including Products, Customer profiles, Orders, Line items, and Payment transactions. It also supports pseudo-entities such as product displays and shopping carts to make it easier to render Add to Cart forms and manipulate cart contents remotely.

    Sponsored by Commerce Guys.

    Pages