Skip to content
Sales Igniter
Sales Igniter
  • Features
    • Features
    • Reviews ⭐⭐⭐⭐⭐
    • Demo
      • Live Stores
      • Live Demo
    • Screenshots
      • Magento 2 / Adobe Commerce
      • WooCommerce / WordPress
  • Pricing
    • Magento 2 / Adobe Commerce
    • WooCommerce / WordPress
    • Magento 1.9.x / OpenMage
    • Web Hosting
  • Help
    • Documentation
      • Magento 2
      • WooCommerce / WordPress
    • Screencast
    • FAQ
    • Blog
  • Account
    • My Account
    • My Account (Alternate)
  • Contact
    • Contact Sales Igniter
    • Custom Project Quote Request
Search
Sales Igniter
Sales Igniter
Search
  • Features
    • Features
    • Reviews ⭐⭐⭐⭐⭐
    • Demo
      • Live Stores
      • Live Demo
    • Screenshots
      • Magento 2 / Adobe Commerce
      • WooCommerce / WordPress
  • Pricing
    • Magento 2 / Adobe Commerce
    • WooCommerce / WordPress
    • Magento 1.9.x / OpenMage
    • Web Hosting
  • Help
    • Documentation
      • Magento 2
      • WooCommerce / WordPress
    • Screencast
    • FAQ
    • Blog
  • Account
    • My Account
    • My Account (Alternate)
  • Contact
    • Contact Sales Igniter
    • Custom Project Quote Request

General

7
  • Turnover Time and Padding Days
  • Calendar Style (Color/Theme) Setup
  • Default – Calendar On Product Page
  • Default – Calendar on Product Page With Time of Day (hourly)
  • Global Calendar – Calendar On Side Bar
  • Global Dates – Calendar On Shopping Cart
  • Quick Getting Started Guide

Turnover Time

1
  • Turnover Time and Padding Days

Calendar Display Options

5
  • Calendar Style (Color/Theme) Setup
  • Default – Calendar On Product Page
  • Default – Calendar on Product Page With Time of Day (hourly)
  • Global Calendar – Calendar On Side Bar
  • Global Dates – Calendar On Shopping Cart

Adding Products

6
  • For Sale Products
  • Adding Reservation & Rental Queue Products
  • Adding Rental Membership Products
  • Adding Bundled / Kit Products
  • Configurable Products (Select Size/Color/Attribute)
  • Sell & Rent The Same Product

Rental Pricing

2
  • Rental Pricing Basics
  • Special Pricing for Dates, Weekends, Times, Holidays

Managing & Processing Orders

8
  • Settings
  • General Usage
  • Editing The Rental Contract Template
  • Extending Rental Orders & Late Fees
  • Processing Deposits
  • Processing Rental Reservation Orders
  • How Does Magento Handle Order Editing?
  • Adding Orders Via The Admin Panel

Deposits

1
  • Processing Deposits

Rental Contracts

3
  • Settings
  • General Usage
  • Editing The Rental Contract Template

How Do I?

16
  • Install A Magento Extension from Magento Connect
  • Export To Google Calendar (ical exports)
  • Convert Simple Products To Reservation Products?
  • Manually Reserve Inventory or Edit Rental Dates?
  • Manage Multi-Store or Store Views?
  • Import/Export Products Via Spreadsheet
  • Improve My SEO?
  • Adjust Sort Order Of Products In Categories?
  • Adjust Order Status or Add Custom Order Statuses?
  • Set Store Language (German, Spanish, Korean, etc.)?
  • Set Up Paypal
  • Edit Email Templates?
  • Edit The Top Navigation Menu?
  • Change Site Text?
  • Edit Default Elements Like Remove Dog Graphic, Back To School Banner?
  • Edit The Top Navigation Menu?

Edit Content

4
  • Edit Email Templates?
  • Change Site Text?
  • Edit Default Elements Like Remove Dog Graphic, Back To School Banner?
  • Edit The Top Navigation Menu?

Product Maintenance

1
  • Product Maintenance Usage

Magento Resources

1
  • Useful Magento Resources – Guides, Extensions & Templates / Themes

Troubleshooting Guide

9
  • Aheadworks reward points extension or another extension that calls a Cart observer is not working
  • Dates are automatically being added to the start and end dates for pay per rental pricing causing price lookups to fail, why?
  • It is not booking out inventory for orders
  • I am using a custom template and the rental pricing isn’t showing up
  • My products are not showing up on searches
  • I have a huge bundle / kit and I can’t save it when I add lots of products to it what is the issue?
  • Paypal Express is giving error 10002 what should I do?
  • When I try and add products to a bundle they don’t show up
  • Why aren’t any payment methods shown when trying to buy a rental membership?

Bundles

3
  • My products are not showing up on searches
  • I have a huge bundle / kit and I can’t save it when I add lots of products to it what is the issue?
  • When I try and add products to a bundle they don’t show up

Payment

2
  • Paypal Express is giving error 10002 what should I do?
  • Why aren’t any payment methods shown when trying to buy a rental membership?

Programming Guides

5
  • Basic Rental Module Flow (Version 1.4+)
  • Theme Customization
  • Inventory Calculations (Version 1.3+)
  • Rental Programming Guide Basics
  • Basic Rental Module Flow (Version 1.3 and earlier)

Version Release Notes & History

7
  • Version 1.4.2020
  • Version 1.4
  • Version 1.3.1
  • Version 1.3
  • Version 1.2
  • Version 1.1 – 1.1.1
  • Version .1 – 1.01 Release Notes

Future Version Roadmap

1
  • Feature request list
View Categories
  • Home
  • Doc
  • Rental System
  • Programming Guide
  • Basic Rental Module Flow (Version 1.3 and earlier)

Basic Rental Module Flow (Version 1.3 and earlier)

1 min read

// Basic flow
1. Extra templates are added to the product page using the layout xml file app/design/frontend/base/default/layout/payperrentals.xml note the line <block type=”payperrentals/catalog_product_view_rental” name=”product.info.payperrentals” as=”product-rental” template=”payperrentals/catalog/product/view_rental.phtml”> and <block type=”payperrentals/catalog_product_view_price” name=”product.info.payperrentals.price” as=”product-price” template=”catalog/product/price.phtml”/> this adds the calendar and pricing templates

 

2. Notice in app/design/frontend/base/default/template/payperrentals/catalog/product/view_rental.phtml the load order. First the php_initialisations.phtml is called. app/design/frontend/base/default/template/payperrentals/calendar/php_initialisations.phtml loads all variables so they are ready for the rental calendar and page like: product id, disabled dates, calendar settings, and time options. These are loaded using our helpers.

 

Further down in the view_rental.phtml template you will see where it shows the min/max periods, Deposit, and price using ITwebexperts_Payperrentals_Helper_Price::getPriceListHtml($_product);

 

The calendar itself is loaded with require($templateGlobalCalendar); which is the file app/design/frontend/base/default/template/payperrentals/calendar/global_calendar.phtml within this file you will see the calendar form fields like  <input type=”text” name=”read_start_date”/> and <input type=”text” name=”read_end_date” class=”readEndDate” <?php if ($_autoSelectEndDate) echo ‘readonly=”readonly”‘; ?> />

2B. Disabled dates use AJAX to update the calendar. This is done with the function updateBookedDates in app/design/frontend/base/default/template/payperrentals/calendar/frontend_functions.phtml notice the ajax in this function using this line: url: ‘‘,
data: selfObj.closest(‘form’).find(‘*’).serialize() + ‘&qty=’ + $jppr(‘#qty’).val(),
So here we are referencing app/code/community/ITwebexperts/Payperrentals/controllers/AjaxController.php the ajax controller and passing in an array of product ids and quantities. This ajax controller returns an html array of booked dates using our main function ITwebexperts_Payperrentals_Helper_Data::getBookedQtyForProducts to get booked dates array.

3. The create calendar function and mouse down listener (to show calendar when mouse clicks on start and end field) is in  app/design/frontend/base/default/template/payperrentals/calendar/global_calendar_functions.phtml
 listener for mousedown
$jppr(‘<?php echo $_jsContainerPrefix ?> .readStartDate, <?php echo $_jsContainerPrefix ?> .readEndDate’).mousedown(function (event) {
within that listener, createCalendar<?php echo $_jsFunctionPrefix ?>($jppr(‘<?php echo $_jsContainerPrefix ?> .datePicker’)); is called to attach the date picker.

 

4. Dates are added to cart using Magento custom options. app/code/community/ITwebexperts/Payperrentals/Helper/Rendercart.php the prepareForCartAdvanced function.

 

5. After order is placed an observer is called sales_order_place_after (defined in the app/code/community/ITwebexperts/Payperrentals/etc/config.xml file) which calls the observer’s reserveInventory function. This in turn references the helper function which reserves inventory.

What are your Feelings

  • Happy
  • Normal
  • Sad

Share This Article :

  • Facebook
  • X
  • LinkedIn
  • Pinterest
Rental Programming Guide BasicsInventory Calculations (Version 1.3+)

Rental Newsletter

Learn about the latest rental industry news, features added to our rental system, and receive special offers. Subscribe now.

loader

OVERVIEW
Home
Features
Pricing
Live Stores
FAQs
Blog
Contact Us
INDUSTRIES SERVED
Audio Video, Computer, Electronics
Baby Equipment Rental System
Car Reservation Software
Clothing, Dress, Purse Rental
Heavy Equipment, Construction
Hotel, Property & Vacation Rentals
Inflatable Bounce House
Movies, Video Games, Board Games
Party & Event Rental Software
Sporting Equipment
Watches and Jewelry Rental
LATEST UPDATES
How to Start An Equipment Rental Business
Rental Pricing: How Much Should I Charge To Make The Most Profit?
How to add Bookings and a Rental Calendar to a Magento 2 website?
10 Brilliant Rental Software Apps You’ll Love
ADDITIONAL LINKS
Terms & Conditions
Free Rental Contract Agreements
Free Rental Pricing Calculator
Awesome Rental Business Resources List
Affiliate Program
Social Media

Copyright © 2026 Sales Igniter. All Rights Reserved

Loading...

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.