Longclaw

Longclaw

  • Docs
  • Demo
  • Help

›User Guide

Tutorial

  • Introduction
  • Setup
  • Adding Products
  • Shipping
  • Frontend
  • Payment

User Guide

  • Checkout
  • Integrations
  • Basket
  • API Client
  • Checkout API
  • Product Requests

Product Requests

This module allows customers to 'request' products which are otherwise out of stock. The request date and product variant are stored, with the customer email optionally being stored (The ProductRequest model contains a field for this, but template tags by default do not collect this information - it is up to you to store it.)

To install, add it to your INSTALLED_APPS after other longclaw modules:


    INSTALLED_APPS = (
      ...,
      "longclaw.contrib.productrequests"
    )

To show a 'request' button, you can use the following template tag on your product page:


    {% load productrequests_tags %}

    {% for variant in page.variants.all %}
    {% make_request_btn variant_id=variant.id %}
    {% endfor %}

You can also pass btn_class and btn_text to change the CSS class and text of the resulting button element. By default they are btn btn-default and Request Product.

This template tag will take care of making the AJAX call to register a request against the product variant. In order to collect further information - i.e the customer email, you will need to create the button and necessary javascript yourself. You can use the API client function requestList to post the collected data.

You can view all requests in the admin index page for your product collections. When hovering over a product, alongside the usual Edit, View Live and Add Child Page buttons is a new View Requests button. This will take you to a page showing all requests made for each variant of the product.

← Checkout API
Longclaw
Docs
Getting Started (or other categories)Guides (or other categories)API Reference (or other categories)
Community
User ShowcaseStack OverflowProject Chat
More
BlogGitHubStar
Copyright © 2019 James Ramm