Menu Content

Newsflashes

VM Invoice Documentation

Abstract

User documentation for VM Invoices & Book it! Invoice Joomla component. Installation and usage instructions.


Chapter 1. Introduction

Table of Contents

1.1. What is VM Invoices

1.1. What is VM Invoices

VM Invoices is a component for Joomla CMS / VirtueMart e-store, that generates PDF invoices for VirtueMart purchases. VM invoices offers a list of orders, where you can generate PDF invoice by one click and download it or send by client by email. Invoices can be sent automatically to shopper emails. An integration with VirtueMart frontend is also possible, so users can download the invoices using the frontend order list.

Core VM Invoices features include:

  • Automatically generates PDF invoices and delivery notes for VirtueMart customers

  • Can send invoices and delivery notes to customers' emails

  • Manual or fully automated operation

  • Configurable invoice numbering with prefixes.

  • Configurable order status, when invoice is generated and sent.

  • Adjustable invoice appearance with custom fields and whole templates.

  • Editing and creating new orders.

Chapter 2. Installing VM Invoices

You can obtain VirtueMart Invoices Generator by purchasing and downloading from ARTIO webpage www.artio.net. Instalation is simple and easy.

2.1. Prerequisites

To continue following this instalation tutorial, first make sure that:

  • you have a running and functional Joomla site

  • you have installed and functional VirtueMart extension.

  • check the write permissions on Joomla directories, see Help ’ System Info ’ Directory permissions

2.2. Installing VirtueMart Invoices Generator

  • log-in to your Joomla! backend with Super Administrator privileges

  • go to Extensions ’ Install/Uninstall

  • select downloaded zip file and confirm button upload&install

  • follow the installer instructions and check for any error

2.2.1. Installation

VirtueMart Invoices Generator installation is fully automated in most cases. It will install:

  • the main VM Invoices component (in components/com_vminvoice and administrator/components/com_vminvoice)

  • language files (in languages)

  • database tables (#__vminvoice_config, #__vminvoice_mailsended, #__vminvoice_additional_field)

  • VM Invoice Autorun system plugin - this sends e-mails in Automatic Mode.

After uninstall, component database (configuratiom, invoice numbers) is kept. You can uninstall and install component without losing that information. Howerver, if you want clear install, remove database tables prefixed with [JoomlaPrefix]_vminvoice_.

Chapter 3. Basic Usage and Configuration

To manage VM Invoices, you need to be loged in Joomla's backend (adminstration). Then navigate to Components ’ ARTIO VM Invoices ’ Control panel

There are 9 tabs available. First one named Control panel is overview with shorcuts to component functions. Next three Global configuration, Invoice configuration and Delivery note configuration are used for various component settings.Fields is for set yours bank and company details, PDF header, PDF footer. Invoice/Order management is main page with orders and invoices list, where you can send and print invoices and edit orders. Create New Order is shortcut for creating new order. Upgrade section provides informaton about new component version and allows you to automatically or manually upgrade component. Support provies shortcuts for sources of help and support for component.

3.1. Global Configuration

This tab does include several options that control how the VM Invoices works as well as buttons to initiate related actions. Any change should be saved by clicking the Save Configuration button located in the right-top corner of the page.

3.1.1. General Config

3.1.1.1. General Config

Operation Mode

You can choose between automatic and manualy sending option.

If you choose the manual option, no emails will be sent or invoices generated unless you launch the particular action.

Note that in autimatic mode, sent are only e-mails for orders modified in last 24 hours.

If you use automatic option, you need to do some more configuration - please read Chaper 4 - 1.

Required Order Status

(only applies to automatic mode)

The order status, that causes PDF invoice to be generated and sent to client. You can select more statuses by clicking with CTRL.

Also, it affects own invocie numbers assigning (New invoice number will be assigned only if order is in desired status)

Mailing Interval

(only applies to automatic mode)

This option allows you to set time interval, when emails with newly generated invoices are being sent. (If using cron, this interval should be same or longer than the one configured in your cron script. See more in Chapter 4 - 1.1.)

Change Currency Sign

If your currency does not generate properly (e.g. when using ¬ sign) you can use this substituon.

Syntax is: original currency string 1 | new currency string 1[, original currency string 2 | new currency string 2, ...]

As a separator between character and name use "|" (pipe) and separator between whole sub.word use "," (comma)

Example : ¬|EUR,$|USD

Date Pattern

Date pattern format for date in invoice can be e.g. (m-d-Y or d.m.Y); use the PHP syntax for date() function. Also you can use syntax of PHP strftime() function. This syntax gives date ability to be translated based on invoice language. However, be sure you check result is valid for all languages your invocies are avilable in, because behavior of function can vary on different servers. If date your language is not supported, ask your server provider to install new "locale" for your specific language. Also be aware that certian characters (like %e) are not available on Windows servers or behave differently.

3.1.1.2. Technical Config

Cache PDF

Invoice PDFs are stored in Joomla! tmp folder in subfolder called "VM Invoice" (in your language) and subfolders divided by year and month. If order was not changed and also was not changed any PDF appearance config, used is previously generated PDF instead of creating new one. If you disable this feature, invoices are created newly every time they are needed. Enabling this feature speeds up performance and also enables you to pre-generate multiple invoices in batch screen.

Use HTML Tidy (if available)

PHP Tidy library is used to fix and sanitise HTML code before using by PDF generating library.

Image Paths

Controls how image paths are generated on invoice HTML. Since there are many various server settings, this feature enables more settings to work on your server.

  • Absolute: http://www.example.com/joomla_site/...path_to_image

  • Relative to domain root: joomla_site/...path_to_image

  • Relative to Joomla! root: ...path_to_image

  • Server path: var/www/html/joomla_site/...path_to_image or c:/wamp/www/joomla_site/...path_to_image

Debug Mode

When switched on, no PDF will be created, you will only see raw HTML output that is used to create PDF. You can also see any PHP warnings. If you are having issues with creating PDF, try enabling this feature.

3.1.1.3. Customer Info Extra Fields

Show Extra Fields Label

Wheater display label before extra fields.

Extra Field 1,2

Here you can define extra fields defined from VirtueMart, which will be displayed under user's address.

3.1.2. Order Editing

Default Vendor

Default vendor for newly created orders from VM Invoice.

Default Currency

Default currency for newly created orders from VM Invoice.

3.1.3. Page Appearance

3.1.3.1. Page Appearance

Use Customer Language

If you specify yes, invoice will be generated in customer's default site language. If user have no language specified or selected No, invoices are generated in site default language.

PDF Font

List of fonts available for PDF generation.

Non-latin languages may use UTF-8 version of the font. The generated PDF however are bigger in size then.

You can upload new .ttf fonts (unicode). Fonts are uploaded into administrator/components/com_vminvoice/libraries/tcpdf/fonts. Program will try to install new *.ttf fonts for using in PDF generation. You will see message "Font was installed" after process. Alternatively, you can upload .php, .z and .ctg.z font files.

Font size

Here you can regulate overall PDF font size.

Margins

PDF margins in milimeters.

3.1.3.2. Header

Show Contact

Wheater show {contact} tag in template.

Show Logo

Wheater show {log} tag with vendor logo in template.

Logo Width

Is showing vendor logo, you can specify it's size in cm. Remember to also adjust template cell to fit bigger or smaller logo (because cells are not expanded automatically)

3.1.3.3. Footer

Show Signature

Wheater show {signature} tag with ARTIO signature.

Show Pagination

Wheater show {pagination} tag in template footer. If you place {pagination} tag into header, it will be shown on one page invoices even if you select 'When more pages'.

Information Fields Position

Where to display (or not) {extra_fields} tag on template. Content is defined in Fields configuration.

Fields Background Color

Background color of {extra_fields} tag

3.1.3.4. Background

Background Image

Background image source.

Image Position

Background image aligment.

Image Offset From Left

Optional left offset of image. Use cm. Page width is 210 cm.

Image Offset From Top

Optional top offset of image. Use cm. Page width is 270 cm.

Stretch to Page

If stretch background image to page.

3.1.4. Mailing Configuration

Use Mailer Info From

Here you can define sender E-mail source.

Send Mail To

Here you can configure recepient of invoice e-mail.

  • Shopper and shopkeeper - Invoice is sent to customer and as copy to e-mail defined in Use Mailer Info From.

  • Shopper only - Invoice is sent only to customer.

  • Shopkeeper only - Invoice is sent only to e-mail defined in Use Mailer Info From.

Sender Email

E-mail displayed as sender. Only used when Use Mailer Info From is set to VM Invoice Configuration.

Sender Name

Name of sender displayed in e-mail. Only iused when Use Mailer Info From is set to VM Invoice Configuration.

E-mail subject and body are defined in Invoice E-mail and Delivery Note E-mail configuration sections.

3.1.5. Registration

VM Invoice Download ID

Enter Download ID you obtained upon component purchase.

Version Checker

When enabled, component will check new version from ARTIO server.

3.2. Invoice Configuration

3.2.1. Invoice Numbering

Invoice Number

You can choose between order or own numbering.

  • If using order numbering, invoice number will be always same as order id created by VirtueMart. There is no need to wait before order enters required state to generate invoice. (However, state still applies for invoice sending).

  • If using own numbering, invoice numbers are created sequentially, independently on order id. New invoice numbers are automatically assigned if order enters Required Order Status defined in General Config. Also, configuration option Starting Order For Numbering applies to it.

Starting Order For Numbering

(only applies to own numbering) Minimal order id for autimatic invoice number assignation. If you are importing old database and don't want to create invoices for old orders, set starting order Id here. If you old orders have already numbers assigned, you can always delete their numbers by "delete created invoices" batch action.

Numbering prefix

(only applies to own numbering) Prefix before invoice number. Can be for example last two digits of year. Setting only affect newly created invoice numbers, for old invoice numbers edit prefix manually or delete invoices and create them again.

Start Invoice Number

(only applies to own numbering) Initial invoice number to start automatic numbering from.

Allow invoice number prefix editing

(only applies to own numbering) If yes, allows manual changing of invoice prefix.

3.2.2. Invoice Configuration

Address Shown

Whater show {billing_address} and {shipping_address} (or both) in template.

Show Address Label

Wheater prepend "Billing Address" and "Shipping Address" label to addresses.

Address Format

Specifies address formatting for {billing_address} and {shipping_address} tags.

Show Invoice Number

Whater show {invoice_number} tag in template.

Show Customer Number / ID

Whater show {customer_number} tag in template.

Show shopper group

Whater show {shopper_group} tag in template.

Show Date Label

Whater display {invoice_date_cpt} tag.

Default Invoice Date

Date that will be defaultly assigned as invoice date. Note that after invoice number is created, Invoice date can be changed only manually.

Show Taxable Payment Date

Whater show {taxable_payment_date} tag in template.

Taxable Payment Dat

Date used as Taxable Payment Date.

Show Maturity Date

Whater show {maturity_date} tag in template.

Maturity (days)

Day offset from Taxable Payment Date.

Show Shipping Date

Whater show {shipping_date} tag in template. Shipping date is last date of changing order status to "Shipped".

Show Payment Type

Whater show {payment_type} tag in template.

Show Variable Symbol

Whater show {variable_symbol} tag in template.

Variable Symbol

What number will be used as variable symbol.

Show Customer Note

Whater show {customer_note} tag in template.

Show Finnish index number

Whater show {finnish_index_number} tag (number used only in Finland) in template.

3.2.3. Invoice Items Configuration

3.2.3.1. Invoice Items Configuration

If is any column hidden in this config section, it is also hidden from invoice template. You don't need to delete that column directly in template.

Repeat Table Header

Whater repeat table header on every page. Note that for this setting work, {items} tag must be placed outside any HTML table.

Show Quantity Unit

Wheater show "pcs" after product quantity. Hides {qty_unit} tag.

Show Product SKU

Wheater show product SKU column. Hides {sku} tag and associated column.

Show Product Attributes

Wheater show product attributes. Hides {attributes} tag.

Show Price Excl. Tax

Wheater show column with products verall price before tax. It hides {price_notax} tag and associated column.

Show Tax Rate

Wheater show column with product % tax rate . It hides {tax_rate} tag and associated column.

Tax Rate Tolerance

Tax rate is not stored directly in orders table. Because of that, it must be "guessed" on invocies by difference between gross and net and using available tax rates in VirtueMart. That guess can be sometimes inaccurate, so this setting defines offset between computed and real tax rate to be properly assigned. Note that other calculations can be still little misfitting because of that, that is due to VirtueMart storing of prices.

Product Tax And Subtotal (only in VM 1.x.x)

VirtueMart 1.x.x stores ordered product prices only as net and gross. Due to Tax Rate Tolerance can be assigned tax misfitting on some point.

  • Taken from VirtueMart (default): Product gross price is taken from order table and tax amount is simply difference between gross and net.

  • Calculated from base and VAT: Product tax amount and gross price will be calculated from net * assigned tax rate. This override gross price stored in order. NOTE: This affect only ordered products subtotals, NOT order total. Order total stays always the same.

Show Tax Value

Wheater show column with products tax amount . It hides {tax_price} tag and associated column.

Show Discount (only in VM 2.x.x)

Wheater show column with products discount. It hides {discount} tag and associated column.

Always Show Currency Unit

By default, currency is shown only at subtotal column. When you enable it, currency is shown at all prices.

Show Shipping Details

If enabled, at shipping row is shown also shipping carrier and rate description. It is inserted on place of {attributes} tag.

Prices Rounding

Manner of prices rounding on invoices.

3.2.3.2. Invoice Totals

Show Tax Summary

Show overview with tax rates and theor amounts. Requied in EU countries.

Show Tax Summary Label

Show "Tax summary" label before tax summary.

Show Subtotal

Show subtotal line. Subtotal line constists of net, tax and gross amounts summed up. Shipping costs are counted in. In VM 2.x.x is counted in also payment costs.

Extended Coupon Discount

If enabled, coupon discount is splitted to row similat to tax summary. You should specify Coupon VAT also. If disabled, coupon discount is displayed as single value.

Coupon VAT (%)

Is using Extended Coupon Discount, specify VAT applied on copon. Note that coupon value is considered as with tax, so coupon tax is substracted from it.

Extended Total Line

If enabled, total line contains also overall net price, overall tax, tax rate (only if order uses single tax for all items), and overall . If disabled, total line contains only overall order price.

3.2.4. Invoice E-mail

Mail Subject

Subject of e-mail with invoice.

Mail Body

Body of e-mail with invoice. You can use special replacable fields in it:

  • [%orderId%] - order Id.

  • [%invoiceId%] - invoice number. Can be different than Order id if using Own numbering.

  • [%firstName%] - customer billing address first name

  • [%secondName%] or [%lastName%] - customer billing address last name

3.2.5. Invoice Template

3.2.5.1. Overview

From version 1.7 you can define exact layout of invoices and delivery notes. Layout is defined as HTML document. It is divided into Header, Body and Footer separated by pagebreak lines. Header and Footer are displayd on top and bottom of every page. You can always turn your template to default by clicking on Restore template back to original button.

Templates uses {xxx} aliases/tags, which are replaced by proper entity.

Fields:

  • You can see list of available tags by clicking on Possible replacement fields link at bottom.

  • { * _cpt} are captions and are usually replaced by some text contants.

  • Configuration options still applies for certain tags. For example, when you set "Show Shopper Group" to "No", tags {shopper_group_cpt} and {shopper_group} are not displayed.

General tips:

  • When you copy & paste something, Joomla! editor (at least TinyMCE) usually copies also format. Usually it wraps content to with specified font and size. Switch to HTML view and clean content or paste directly in HTML mode.

  • When you save template, switch back to WYSIWIG mode. In some editors (tested with TinyMCE), Joomla doesn't save changed content when is in HTML mode.

  • Always use % units. Especially font sizes and table widths. It is because PDF paper has different unit measures. Also, it allows you to globaly change font size using Font Size config setting.

  • TCPDF cannot handle all HTML code and special CSS. Use only basic.

3.2.5.2. Products table

{items} tag s replaced by table of ordered products. Table has always 100% width. (If you want to make it smaller, wrap it to another element with smaller width).

Table header and product row are defined separately at Table Header and Table Row fields. Each fields must have equal number of columns; but "colspan" property is taken into account.

Column widths. If you want to redefine column widths:

  • ALWAYS use percent widths.

  • Edit widths only in Table Header. Widths defined in Table row are not taken into account.

  • You don't have to define width at all columns, but it is recomanded.

  • Overall sum don't have to make 100%. If fields sum make 90% or 120%, they are recomputed afterwards to do 100%.

Table footer rows (shipping, payment, subtotal, tax summary, total) fields are made dynamically from item row by replacing tags by apripriate values.

3.2.5.3. apripSpecial cases

Some adjustments are done to HTML code before making template:

3.2.5.3.1. Emty tags removed with preceding BR and following ":"

If some tag is empty (due to configuration or customer leaves it blank, like for example {billing_address_2}), it is removed also with preceding
and following ":". This is useful for removing blank lines and blank captions: values pairs.

3.2.5.3.2. Columns removed in products table

If some column is removed due to Invoice Items configuration (for example Tax Rate) and column does not contain any other content, whole column is removed from table. Other columns widths are adjusted to fill empty space.

3.2.5.3.3. Labels: values converted to HTML table

If some text in template before follows this pattern "something: something" and it is repeated more times with
s between them, it is converted into

with 100% width and first column of 60% and second in 40%. This is done for better readability. Typically with {field_cpt}: {field} in default template.

3.2.5.3.4. Translations strings

If some text is wrapped inside square brackets, Joomla! JText::_ function is used for translation it's content. By this you can define language dependent strings. Bracket content can be also in format [com_component:Language_String]. In that case will be loaded also com_component language (from frontend, backend and component /language folders)

3.3. Delivery Note Configuration

3.3.1. Delivery Note Configuration

Delivery Notes Enabled

If yes, delivery notes functionality is enabled.

Show Quantity Unit

Wheater show "pcs" after product quantity. Hides {qty_unit} tag.

Show Product SKU

Wheater show product SKU column. Hides {sku} tag and associated column.

Address Shown

Whater show {billing_address} and {shipping_address} (or both) in template.

Show Date Label

Whater display {invoice_date_cpt} tag in template.

Show Customer Note

Whater show {customer_note_cpt} and {customer_note} tags in template.

3.3.2. Delivery Note E-mail

Send With Invoice

If enabled, delivery note is attached with invoice. If disabled, delivery notes have to be sent separately.

Mail Subject

Subject of e-mail with delivery note.

Mail Body

Body of e-mail with invoice. You can use special replacable fields like in Invoice Mail Body.

3.3.3. Delivery Note Template

Here you can define delivery note HTML template. See Invoice tenmplate for more info. Note that {items} table at delivery note is generated without prices footer.

3.4. Fields

Fields is special table replacing on {extra_fields} tag. It is also directed by Information Fields Position config option.

3.4.1. Bank Details

You can include the bank payment details on the invoice. You can enter the following information:

  • Bank name

  • Account number

  • Bank code number

  • BIC / Swift

  • IBAN

Next to each field, you will find an radio button to switch, whether the information is shown or not at the invoice.

3.4.2. Company details

Information about your company that you want to be shown in the invoice.

  • Tax Number

  • VAT ID

  • Registration Court

  • Phone

  • Mail

  • Web Url

PDF Header and PDF footer

Is for your own header and footer in generated pdf file. You can put signature into the footer for example. Also you can use HTML tags. They are placed instead of {start_note} and {end_note} tags.

3.5. Invoices / Order Management

Invoices view provides the list of orders in the system, where you can manage the invoices.

You will see the status, if the invoice has been already sent to client ot not and you have option to (re)sent the invoice to the user manually (via email) or download it as a file.

3.5.1. Filter list

You can use filtering options to quickly locate a specific client or order or tighten conditins for batch action.

3.5.2. Batch actions

Batch actions panel allows you to do actions with multiple orders at once.

Select what orders you would like to process. You have 2 options:

  • Orders checked in list (default) - select orders by selecting them in check box on left side

  • Orders matching filter - processed are all orders matching current filter on left side

Select batch action:

  • Downoad - open invoices or delivery notes all in one PDF. Useful for printing multiple invoices.

  • Send e-mail - sends invoice, delivery note or both (if set "send with invoice" config option) emails. You can select "Also already sent" to force sending even if file was already sent. Otherwise, only unsent files will be sent.

  • Create invoice numbers - (if using own numbering) - forces creating of new invoice numbers, even if orders are not in desired state yet or orders ale below "Starting Order For Numbering" condition.

  • Pre-generate PDFs - generates PDFs to cache. Opening that PDFs after will be much faster.

  • Change status - changes status at multiple orders. You can select if send VirtueMart notify e-mail to customers about state change.

  • Delete created invoices - deletes PDF and order record from VM Invoice. DOES NOT DELETE ORDER (that can be done only in VirtueMart). If using own numbering, this can be used for deleting invoice numbers. But if order is in desired state and not below config setting "Starting Order For Numbering", new invoice number is created right afterwards.

3.5.3. Orders table

Table contains these columns:

  • ID

  • Select box for batch action

  • Order ID

  • Invoice number - by clicking you can change invoice number, if using Own numbering.

  • Edit - here you can edit the order directly

  • Client name

  • Company

  • E-mail

  • Status - here you can update status of order

  • Created

  • Modified

  • Total

  • Invoice sent - information if invoice was sent

  • Delivery note sent (if delivery note us enabled) - information if delivery note was sent

  • Send invoice manually - by clicking you send invoice to client. If is enabled delivery note and selected "Send with invoice", sent is also delivery note.

  • Send delivery note manually (if delivery note us enabled) - by clicking you send delivery note to client

  • Invoice PDF - open invoice PDF. If having green background on mouse over, that means PDF is stored in cache.

  • Delivery note PDF (if delivery note us enabled) - open delivery nore PDF.

3.6. Order editing / New order

VM Invoice allows you to edit current orders as well creating new ones, for example when creating orders by phone.

Click on Edit button in invoices list or select Create New Order from VM Invoice menu.

Design of product edit page can be slightly different when using VirtueMart 1.x or 2.x.

3.6.1. Coupon discount

You can enter Copon Code for order. VirtueMart will be searched for that copon code. If coupon is found, you can click on button to apply coupon discount for order (or you can write coupon discout manually). If coupon is gift-only, you can select of delete that coupon after order saving.

3.6.2. Products list

VirtueMart 2.x has Discount column that defines discount applied on product after tax. Note that discount has to be writed in negative format (with minus on start) and fee in positive format.

VirtueMart product stock is adjusted automatically based on ordered product state.

3.6.3. Adding products

You can new product by typing it's name or SKU to Name field. Select order from AJAX list. You can also add "own" product that is not presented in VirtueMart. Just type it's name and click on + button (do not select product in list).

3.6.4. Product taxes

Product, shipping and payment (in VM2) tax information constsis of two elements.

First is Tax rate select box. Available taxes are taken from VirtueMart and "guessed" based on information stored at order (using Tax rate tolerance defined in config). If no available tax rate match stored tax amount, it is selected "-other-" option. That can happen for example if item uses discount (VM1) or multiple taxes are applied to product (VM2). In that case, Tax amount value is not calculated after clicking "Recompute".

Second is real tax amount. That is value stored in database in VM2 or simply computed by deduction of net price from gross in VM1. If list is recalculated, tax amount is computed from product Net price multiplied by selected Tax rate (if is not selected "-other-").

3.6.5. Customer info

Here you can select customer of this order. You can search for available customer by typing part of customer name, company, city, e-mail or address nickname. List is populated with matched customers and their various shipping addresses in brackets (if they have some). You can select any billing + shipping address that user provides or select "pure" user to set shipping address same as billing.

Order information is filled with clicked user default info. If you select New customer, order will be assigned to new customer that will be created after save.

Note that Order billing and shipping user information is not the same as Default user billing and shipping. If you change some address information and save order, you are prompted if you want to change values also in default user info. If you select yes, default user billing and selected shipping address will updated also. That can be useful if was changed some permanent information (for example when user change his billing address). If changed information is only temporarily for current order, click Storno.

Customer Additional fields (but only these, that have set "Show in shipping form") are presented also.

Chapter 4. Advanced Configuration

4.1. Setting-up Automated Sending of PDF Invoices

To enable automated sending of PDF invoices to customers, you need to add call of a VM Invoices script to a system task lisk. On Linux/Unix systems, this would be mostly cron or crontab, on Windows systems it would be Task Manager.

This is the most effective way, as the new invoices are checked and generated only once in time.

You can however also solve this by installing "VM Invoices plugin", that will make the check for configured invoice generation period on each page hit. This is easier to setup (just by installing the plugin), however less efective, as it needs to make the check with every Joomla load.

4.1.1. Configuring VM Invoices using Cron

4.1.1.1. What is cron?

Cron is a time-based job scheduler in Unix-like computer operating systems. Cron enables users to schedule jobs (commands or shell scripts) to run periodically at certain times or dates. It is commonly used to automate system maintenance or administration etc.

4.1.1.2. Where do I find cron?

Cron is driven by a crontab, a configuration file that specifies shell commands to run periodically on a given schedule. The crontab files are stored where the lists of jobs and other instructions to the cron daemon are kept. Users can have their own individual crontab files and often there is a system wide crontab file (usually in /etc or a subdirectory of /etc) which only system administrators can edit.

4.1.1.3. Set a Cron script

Structure of the cron script line.

4.1.1.4. Example of Cron for VM Invoices

The following example will ensure, that the newly confirmed orders will be checked and invoices generated and sent every 20 minutes:

For VM Invoice 2:
*/20 * * * * wget -q -O /dev/null "http://www.yoursite.name/?option=com_vminvoice&task=cronMail&view=vminvoice"

For VM Invoice 3:
*/20 * * * * wget -q -O /dev/null "http://www.yoursite.name/?option=com_vminvoice3&task=cronMail"

4.1.2. Using VM Invoices Plugin

If you cannot use the cron planner (or task manager), you can use the VM Invoices autorun plugin. It is installed by default with VM Invoice component.

You only need to enable it. Go to Extensions ’ Plugin Manager, find VMInvoice Autorun system plugin and publish it.

Plugin will check and automatically send invoices based on Mailing Interval option.

4.2. VirtueMart Frontend integration

4.2.1. Integration with VirtueMart 1.x.x Frontend

If you want to provide your users with possibility to download their PDF invoices from VirtueMart frontend (VM 1.x.x), at the Order list, do the following steps:

  1. locate the file components/com_virtuemart/classes/ps_order.php

  2. Around line 664 (VirtueMart v1.1.4), line 705 (VirtueMart v1.1.5 & v1.1.6), modify the code:

    to

    You may also use your editor's Search function to find the correct line; note it may differ in case you have different VirtueMart version or are using other add-on that modify the original source code.

  3. After line 682 (VirtueMart v1.1.4) or line 723 (VirtueMart v1.1.5 & v1.1.6), add following lines:

    Please note that the line number may differ with different version or when using other add-ons modyfing the VirtueMart source code. The lines preceeding the inserted block should look like:

    so you may use Search function to locate the correct line at your site.

    Modify the 'C' value (line 2) to other order status if you want to show invoice for other than confirmed statuses (this is not done checkted automatically toward VM Invoices setting to keep the VirtueMart integration as simple as possible).

    To use another than PDF icon, modify the image path at the added line 2.

4.2.2. Integration with VirtueMart 2.x.x Frontend (VM Invoice 2)

If you want to provide your users with possibility to download their PDF invoices from VirtueMart frontend (VM 2.x.x) at the Order list, do the following steps:

  1. Locate the file components/com_virtuemart/views/orders/tmpl/list.php

    IMPORTANT: If your template overrides default VirturMart HTML code, you must edit also file located in Joomla root/templates/TEMPLATE_NAME/html/com_virtuemart/views/orders/tmpl/list.php.

    Line numers may differ in that case. Also, adjust HTML code, CSS classess and tags to match template style.

  2. On start of file (right after "defined('_JEXEC') or die('Restricted access');", around line 24) add following code

  3. Line 72 (after previous step is probably around 80) (VirtueMart v2.0.10), add the code. Code must be inserted before "" tag:

    Please note that the line number may differ with different version or when using other add-ons modyfing the VirtueMart source code.

    To use another than PDF icon, modify the image path at the added line 4.

  4. You may also want to add table header around line 55 (before tag)

  5. To add link also for delivery note, add block of code described in step 3 again. Only difference will be link inside

    If integration was not successfull, invoices are not showing (even if they should), and you don't see even new column header, you are probably using template override. In that case, see note at point 1. If you do see header, but not PDF icon, it can be because invoice number is not generated yet (using own numbering and order is not in specified state).

4.2.3. Integration with VirtueMart 2.6.x and 3.0.x Frontend (VM Invoice 3)

If you want to provide your users with possibility to download their PDF invoices from VirtueMart frontend (VM 2.6.x and 3.0.x) at the Order list, do the following steps:

  1. Locate the file components/com_virtuemart/views/orders/tmpl/list.php

    IMPORTANT: If your template overrides default VirturMart HTML code, you must edit also file located in Joomla root/templates/TEMPLATE_NAME/html/com_virtuemart/views/orders/tmpl/list.php.

    Line numers may differ in that case. Also, adjust HTML code, CSS classess and tags to match template style.

  2. On start of file (right after "defined('_JEXEC') or die('Restricted access');", around line 24) add following code

  3. Line 75 (after previous step is probably around 80), add the code. Code must be inserted before "" tag:

    Please note that the line number may differ with different version or when using other add-ons modyfing the VirtueMart source code.

    To use another than PDF icon, modify the image path at the added line 4.

  4. You may also want to add table header around line 52 (before tag)

  5. To add link also for delivery note, add block of code described in step 3 again. Only difference will be link inside

    If integration was not successfull, invoices are not showing (even if they should), and you don't see even new column header, you are probably using template override. In that case, see note at point 1. If you do see header, but not PDF icon, it can be because invoice number is not generated yet (using own numbering and order is not in specified state).

Chapter 5. Book it! Invoice

ARTIO Book it! Invoice is special branch of VM Invoice, that can be used along with ARTIO Book-it. It is separate component with separated database tables.

Settings and possibilities are much the same as at VM Invoice with following differences:

  • No order/reservation editing.

  • No delivery notes.

  • Different default templates.

  • Third setting for Operation Mode. Except first two operation modes (Manual and Automatic, which works much the same as in VM Invoice), here is possibility to Attach to reservation e-mails. With this option, invoices are attached automatically to reservation e-mails sent from Book it!. Important tips to make this functional are:

    • Make sure you have enabled all reservation and status change e-mails in Book it! and filled all recepient e-mails.

    • Enable Booking - Book it! Invoice send plugin, that is installed with Book-it invoice. This plugin is needed to connect Book it! Invoice and Book it! to attach invoices to automatic e-mails.

    • Check Requied Payment Status setting. Invoices will be attached only in if reservation payment meets selected state. You can select more states with holding CTRL.

      For example, if you want to attach invoice to first reservation e-mail, select Unpaid. If you want to attach invoice to e-mail notify after reservation was paid, select Paid and Deposit . (both, because user can skip deposit payment and pay price and deposit at once)

      Note: Invoices will be attached only once. After it, invoice is marked as sent and can be re-sent only manually from invoices list.

    • Check Send Mail To setting. In Attach to reservation e-mails mode, this define if attach invoice to e-mail to customer, admin or both. But it depends on Book it! setting, which e-mail will be really sent.

    • Other e-mail settings (subject, body, recepient) are not taken into account.

  • New config option for Date pattern in Invoice items configuration. This setting modifies displaying of {time}, {time_from} and {time_to} tags representing object reservation time. See config options tooltips.

VM e-Tickets Documentation

Petr Dudek

Michal Unzeitig

ARTIO s.r.o.

Abstract

User documentation for ARTIO VM e-Tickets Component. Installation and usage instructions.


Chapter 1. Introduction

Table of Contents

1.1. Technical Requirements
1.2. Browser Compatibility

ARTIO VM e-Tickets is a Joomla component for online electronic ticket creating, sales and validation. It allows creating and designing tickets, online generation, direct downloads and on-site validation. All using just web browser on desktop PC or mobile device.

This extension allows definition and sales of electronic tickets. These can be optionally limited by capacity (e.g. for concerts, conferences), binded to a specific place or seat (theatres, cinemas) or just open (ZOOs, exhibitions, fairs, fun parks, etc.)

The component allows to set different pricing options (adults, children, seniors), different prices for special areas (seat- or sector- based), multi-day actions, etc. It also allows to design own PDF ticket appearance.

Tickets may include EAN bar-codes, so the ticket validity can be easily confirmed using any device - static or mobile - that is able to read barcodes. The validation is also handled by the component. The component also allows administration part for at-counter ticket sales and reserved tickets pick-up.

Nothing else than this component and device with web browser (e.g. mobile phone, smart phone or PC with bar code reader attached) is needed for the whole system to run.

1.1. Technical Requirements

This component is fully compatible and tested with Joomla! Version 1.5.x. Apache 2.x or newer, PHP 5.1.x or newer, MySQL 5.0.x or newer. Before the component installation it requires Joomla 1.5x with VirtueMart 1.1.x pre-installed.

1.2. Browser Compatibility

Tested on Internet Explorer 7 & 8, Opera 10.61, Mozilla Firefox 3.6.8. The frontend part requires Java Script enabled.

Chapter 2. Installation

Table of Contents

2.1. Prerequisities
2.2. Installation

2.1. Prerequisities

Before installing ARTIO VM e-Ticket, you need to have:

  1. Joomla 1.5.x installed

  2. VirtueMart 1.1.x installed

Joomla installer will announce errors and component will not be installed, until VirtueMart is installed properly.

Also make sure that all the needed directories (as requested by Joomla) incl. VirtueMart files are writeable.

2.2. Installation

The component is installed through Joomla standard installer in backend: ExtensionsInstall/Uninstall

The nstallation package contains all needed support libraries so the size of installation pack is about 2 MB. Some hostings maybe have the size of uploaded files limited, so it may be be necessary to increase this limit or upload the files using FTP.

Installation package contains automatic installation script, which will modify VirtueMart configuration, copy all files and create new database tables.

Please, watch for any error messages generated during installation. If any error appears, the installation might not have been completed correctly.

Chapter 3. Administration (Back-end)

3.1. Settings

The first step to do after installation is to check and modify the component settings.

You can set here the default values, such as length of EAN code on your tickets or set names of attributes. This attribute names are used for special attributes, which are used for checking ticket validity. This incluude e.g. number of admissions (customer can use this ticket more times) or duration (ticket is valid for specific time – 1 week, 2 days, …).

3.1.1. Component Registration

At the registration tab, please register your component by entering your VM E-Ticket Download ID received when purchasing the component.

3.2. Organisations and Front-end Permissions

Organisation is an object, that has similar functionality as group of users. It is used to define and assign permissions to operate with individual tickets, such as to sell them using the front-end application interface.

There is no limit, you can create as much organisations, as you wish.

The logics behind is following: Each ticket has an owner. Owner is an organisation, which has full permissions to work with the ticket. It means the organization can use the front-end to sell and check tickets by EAN code, display and modify related orders (orders where the ticket is included). More details about the mentioned activities may be found in Front-end Functionality chapter.

Additionaly to an owner, you can set additional permissions for other organisations. These permissions can be se individually for different activity types. There are defined four permission types:

  • none: users in organisation can't see informations about this ticket

  • sell: allow users to sell tickets on cash desk

  • update: users can update the order status wherein the ticket is included

  • storno: users can remove the ticket from orders wherein the ticket is included

Please note: Assigning any of these permissions does not allow user to access Joomla administration (back-end).

3.3. Plugins (Seating Maps)

Plugins are used to display a dialog that allows users a seat selection (seating map). This is an optional feature for events, where tickets must be mapped to a specific seat. Typically this applies to objects with limited capacity, such as theatres, cinemas, etc.

More plugins with different settings may be defined. Settings are stored in XML file.

You can use different seat selection dialogues. Each dialogue is defined in a separate PHP file. You can use basic dialogue created using HTML, or custom-made Flash dialogues that allow nicer design and advanced user interactivity.

The default dialogue only defines two parameters: number of seats in a row and number of rows. This way, you can easily create layouts for different hall sizes of rectangular shape.

3.4. Objects (Places)

An object does represent an individual hall or event place.

For an object, you can assign a plugin that will be used for seats selection. This is optional and applies only to objects that have limited seating capacity and where a ticket must be assigned a seat.

You can also define seat sections.

3.4.1. Seat Sections

Seats sections are used for defining seat groups with different prices. (e.g. VIP sections, balconies, etc.)

You can create as many sections as you need, and assign seats into these sections. Seats numbers belonging to a section are specified in text form, separated by comma. If you have many seats in a section, you can save your time by specifying the seats using a range format (5-95). After saving, such range format will be automatically translated into the default format.

3.5. Orders

This view displays all VirtueMart orders, where any tickets are included.

At this page, you can change order status, print PDF file with tickets and EAN codes or edit and delete orders. The order detail page will redirect you to a default VirtueMart order detail page.

3.6. Tickets (Products)

This view displays a list of all VirtueMart products, that are of "ticket" type. This type is defined in VirtueMart and it allows you to sell common products (non-tickets) and tickets in the same shop at the same time.

3.6.1. Product Flypage Selection

However, for correct functionality, you need to assign the ticket-type products into different VirtueMart category that the other products (if you have any). For the ticket products you have to select “VmeTicketFlyPage.tpl” as a flypage. This flypage adds a speicific functionality to VirtueMart that will ensude, that all ticket attributes and selections will work fine.

3.6.2. Category Browse Page Selection

For a category including the ticket products, you should set the browse page value to “VMeTicketBrowsePage”. Tickets in such category will be displayed using a special template, that is specifically designed for tickets. The functionality allows e.g. filtering and sorting the tickets name, price or event date.

3.6.3. Creating Tickets

Tickets create and editing page is divided in four tabs.

3.6.3.1. Product Tab

Products tab contains basic attributes about product. This form is redundant to VirtueMart product detail in administration.

Here you can set:

  • ticket (product) name

  • ticket (product) basic price and VAT rate; note: price modifications are set at Attributes tab

  • categories (one or more) where the ticket will be shown in

  • short and detailed decscription

  • whether the ticket is published or not

  • stock status (where applies)

3.6.3.2. Attributes Tab

At this tab you can further specify detailed properties of a single ticket. These properties may be selected by customer when purchasing the ticket.

3.6.3.2.1. Ticket Parameters

Here you can set additional parameters related to ticket validity, durations and addmissions.

Giftbox

This option defines, whether customer can choose to have the tickets send by a classic post. If it is enabled, a shipping method selection will be offered at checkout. Otherwise the ticket is always just a virtual product, that can be downloaded as PDF file and printed at home.

Variable Start

This requires the Ticket Validity Start and End values to be entered and saved. When checked then the intervals between the selected days will be automatically generated and you can specify different prices for each event happening.

This can be e.g. used when an event is happening at multiple times per day or repeatingly in more days. For example, if you play a movie for one week, 3-times a day at 15:00, 17:00 and 20:00. Then these times and dates can be specified at this field. (2011-02-11 15:00). You can specify as many occurences as needed.

Ticket Validity Start and Ticket Validity End

Ticket validity start and end fields are contain dates. Between these dates the ticket is valid and can be used.

Durations

Specifies a duration of ticket validity. For example, if a festival takes a week, you can sell tickets for one, two, three or more days. This attribute requires also specific data format. First is a number, then space and next letter defines time unit (d – day, w – week, m – month, min – minute and h – hour). Next letters are variable (1 day, 2 days, 1 week, ...).

Admissions

Defines a number, how many times a ticket can be used. This allows you to create e.g. seasonal tickets with more admissions (10, 20, ...). This attribute requires integer value.

3.6.3.2.2. Variable Attributes

Here you can create custom attributes with custom names and values. The principle is the same as in VirtueMart, so you can use this e.g. to define ticket modifications for differnt visitor types (children / adults / seniors) or similar adjustments.

Each attribute has a field for price modification. This also works same as in VirtueMart. First, use a price modification sign (+, - or =), followed with a number value.

  • + increases the original prices

  • - decreases the original price

  • = overrides the original price

3.6.3.2.3. Object Settings

Object Settings are related to seats selection. At this tab, you can select an existing object and define prices and colors for seat sections.

3.6.3.3. Ticket Template

For every ticket you can create you own layout and design using a WYSIWYG editor. The template created here is used for generation of the PDF tickets.

In the template, you can use following predefined fields:

  • [%name%] - ticket name

  • [%price%] - ticket price

  • [%order_date%] - the date of order creation

  • [%url%] - ticket URL

  • [%user_name%] - name of user, who created the order

  • [%ean%] - inserts image with unique and random EAN code

You can also insert your custom attributes or ticket parameters.

3.6.3.4. Ticket Permissions

At this tab, you can specify ticket-owner organisation and assign permissions for other organisations.

Defined Permissions field contains all existing organisations so you can assign permission for each of them individually. This definition is however used only when Ticket Sell Permission attribute is set to Defined.

The All option means, that all organisations have full permissions for this ticket.

The Owner options means, that all organisations except of owner do not have any permission for the ticket.

Chapter 4. Front-end Functionality

4.1. Browsing and Purchasing Tickets Online

Tickets are mapped on VirtueMart products, so there is no difference between buying tickets and other products.

Ticket detail page is based on VirtueMart fly page, but it is customized to display seats selection or some specific attributes. You can also use VmeTicketBrowsePage for your ticket category. On this page you can filter and sort tickets by their special attributes, such as validity date or event name.

4.2. Cash Desk (Counter) Sales

The component can be also used for counter (cash desk) sales. A special front-end view is available for this purpose. It is useful, when you want to sell tickets on cash desk, but you do not want to allow administration access for the sales employees.

4.2.1. Configuration

At the Tickets view you can select ticket types and currences, that may be sold at the cash desk. Only such tickets will be accepted.

4.2.2. Ticket Sales

At Sell Ticket view you can sell and print tickets at the cash desk.

4.2.3. Order Management

Orders view displays all orders that include tickets you are allowed to manage (this depends on ownership and permissions settings).

Depending on the permissions granted you may be able to edit orders. You can also print the tickets ordered (you can sell tickets by reservation method and print it on cash desk).

4.2.4. Reports

Order Management can also display a total price for all filtered orders. The price is calculated only from order items, where you (user) are the seller and it means that you have received the money for the tickets.

This is useful to check, if the amount of money collected at the cash desk matches with the sales of the day. The list of the tickets sold can be also printed out.

4.3. Ticket Validation

To validate tickets at an event, VMeTicket view is used. Using this view, the ticket validity is checked using the EAN code on the ticket (EAN code reader attached to a PC, mobile or special reading device can be used or the EAN code may be typed in manually).

Ticket validity is checked automatically based on an event you are checking, date and time, as well as whether it has been already used or not. The view then displays a result, whether the ticket is valid or not. If you confirm the entrance, number of allowances is reduced by one.

Chapter 5. Troubleshooting

If you encounter problems or have questions, check for the answers or post your question at our support forums at http://www.artio.net/support-forums/e-tickets.

ARTIO Booking & Reservations Documentation

Booking and Reservations Documentation


Abstract

User documentation for ARTIO Booking & Reservations (Book-it!) component for CMS Joomla!. This document describes the component requirements, installation and usage. All main component parts are described in more details, including illustration images and examples. It specifies server and browser requirements and information about environment constraints. The documentation is helpful for both web developers and website administrators / owners.

You can also PDF file download Booking documentation as pdf.


List of Figures

2.1. Extension Manager: Install
3.1. Control Panel
3.2. Template List
3.3. Booking Calendars
3.4. Template Edit Page
3.5. Dialog to Select Property Type
3.6. Dialog to Edit Template Property
3.7. The objects backend filtered list
3.8. The items backend editing page
3.9. Example of setting Quantity and Occupancy
3.10. Example of Show Quantity Information (frontend)
3.11. Example of setting Maximum Reservation Limit
3.12. Example of Hotel Room Reservation (backend)
3.13. Example of Hotel Room Reservation (frontend)
3.14. Example of booking of room for whole week (backend)
3.15. Example of booking of room for whole week (frontend)
3.16. Example of Squash Court Prices (backend)
3.17. Example of Squash Court Prices (frontend)
3.18. Example of setting deposit
3.19. Example of setting "Show prices without tax" (backend - configuration)
3.20. Example of setting "Show Prices with Tax" (frontend)
3.21. Example of setting "Show Prices without Tax" (frontend)
3.22. Example of two reservation types with different lengths (backend object reservation types)
3.23. Example of two reservation types with different lengths (backend object prices)
3.24. Example of two reservation types with different lengths (frontend)
3.25. Example of Fixed Schedule (backend object reservation types)
3.26. Example of Fixed Schedule (backend object prices)
3.27. Example of Fixed Schedule (frontend)
3.28. Example of setting Overlay Prices (backend)
3.29. Example of setting Overlay Prices (backend)
3.30. Example of Overlay Prices (frontend)
3.31. Create new google calendar
3.32. Create new project
3.33. Calendar API
3.34. Register APP
3.35. Entering Client ID and Client Secret
3.36. Default Google Calender
3.37. Closing Days List
3.38. Example of setting closing days for Squash Court (backend)
3.39. Example of setting Google Maps (backend)
3.40. Example of room supplements (backend)
3.41. Example of squash courts supplements (backend)
3.42. Example of squash courts supplements (frontend)
3.43. Backend booking administrators setting
3.44. Reservations backend list.
3.45. Reservations Status.
3.46. Payment Methods List - Plug in Manager
3.47. Payment Methods Manager
3.48. Edit Payment Methods
3.49. Show customers of reservations
3.50. The captcha for unregistered users.
3.51. First week day is sunday
3.52. Display quick navigator
3.53. Filter over the objects list from fltered template properties
3.54. SMS/Email Templates
3.55. Edit Email and SMS Template
3.56. Edit Email/SMS Notification
4.1. The page visitor isn't logged. Component offers him login or registering.
4.2. The page visitor is logged. Component offers him to become customer.
4.3. Customer registration page. With customer account is also created new Joomla! user account.
4.4. Become customer page. To existing Joomla! user account is created customer account.
4.5. Config registration/reservation fields page.
4.6. The customers backend list

Chapter 1. Introduction

Booking and Reservations (Book-it!) is an universal Joomla! component for online reservations. No matter what kind of service you are running or what you want to book. You can create any object with any number of parameters and manage its reservations schedule and prices. All using user-friendly environment of the Joomla backend. Objects can be organized into hierarchy, so you can even manage multiple facilities consisting of many bookable units. E.g. you can manage several hotels with multiple rooms, multiple bowling, squash or other sport facility centers with several grounds. The system also offers object capacities, variable-lenght reservations, combination of different reservations, bookable extras and many more.

1.1. Technical Requirements

1.1.1. Server Requirements

There are two versions of booking component: Book it!, Book it! 2

The component is compatible and has been tested with:

  • Book it! is compatible with Joomla 1.5, Book it! 2 is compatible with Joomla 2.5.6+ and 3.x

  • webserver (Apache2 or IIS) running PHP 5.1 or newer

  • MySQL 5.0 or newer

Please note: Proper functionality may not be guaranteed with PHP 4. The component does not work with Joomla! 1.0.

If your Joomla! includes custom core patches or 3rd party extensions modifying the default Joomla functionality, proper functionality may not be guaranteed as well.

1.1.2. JavaScript Framework Requirements

Book-it! uses Mootools JavaScript framework. With Joomla! 1.5, Mootools 1.12 is required; with Joomla! 2.5.6 and newer Mootools 1.3 is required. When using different versions of Mootools framework, proper functionality may not be guaranteed. Booking 1.3 automatically update MooTools to 1.2 with Joomla 1.5.

Please note, that you can not use JQuery and Mootools JavaScript frameworks at the same time without special adjustment. There may exist a conflict between these frameworks that needs to be resolved. JQuery should run in non-conflict mode.

Joomla 3.x contains two JavaScript frameworks: Mootools and jQuery in non-conflict mode. Some new features in Book it! 2.1.0+ can need also jQuery for right functionality. But there can be still problem with 3rd party extensions which do not use Joomla functions, but loads own jQuery script. You can try to use JQuery Easy plugin for Joomla 2.5 and 3.0, which should solve problems with conflict and also with duplicity of JavaScript frameworks.

Also note, the JavaScripts as well as CSS (Cascading Style Sheets) are usually cached by web browsers. When developing the component make sure to clean browser cache as it may keep outdated versions of JS and CSS files. In most browsers you can use CTRL+F5 shortcut to force the full reload.

1.1.3. Database Requirements

Important: When running Book-it!, the database user used by Joomla must have permission to create tables/views and add and modify table columns. Book-it creates new database table each time a new object template is created (not only on installation).

1.2. Browser Compatibility

The component has been tested on Internet Explorer 9, 8 and 7, Google Chrome, Opera, Mozilla Firefox. Compatibility with Internet Explorer 6 or older is not supported.

Chapter 2. Installation

2.1. Prerequisities

Before installing ARTIO Booking, you need to have:

  1. Joomla 1.5.x or 2.5.6+ or 3.x installed

Make sure that all the needed directories (as requested by Joomla!) are writable.

2.2. Installation

The component is installed through Joomla standard installer in backend: ExtensionsInstall/Uninstall(Joomla 1.5) or ExtensionsManage Extensions(Joomla 2.5.6+ and Joomla 3.x)

Figure 2.1. Extension Manager: Install

Extension Manager: Install


The installation package contains all needed support libraries, so the size of installation pack is about 2 MB or more. Some hostings maybe have the size of uploaded files limited, In such case it may be necessary to increase this limit or upload the files using FTP.

Please, watch for any error messages generated during installation. If any error appears, the installation might not have been completed correctly.

Please note that after uninstall, component database is not deleted. So, if you install sample data again, they are duplicated. If you want really clean reinstall, delete all database tables starting with (JoomlaPrefix)_booking_.

Chapter 3. Administration (backend)

3.1. Control Panel

All component parts are fully accessible from Joomla backend. Control panel is interface where you can open all main component parts. Every main part is described in detail in following sections.

Figure 3.1. Control Panel

Control Panel


3.2. Templates

The basic template in which you set the attributes, depending on what object you will create. That can be basic attributes such as name, but also properties that are characteristic for certain type of object (field size, number of beds, bathroom, car specification, ...) The types of properties are standard, as you know it from web forms (Text box, Text area, Select box, Radio button and Check box). In addition to the name and the type you can still assign a style icon to the property and choose, if it can be used for searching and filtering. The last thing you can set to the template is, what kinds of calendars to be displayed to customer and which one is the default.

Templates settings is available in component administration on bookmark templates.

Figure 3.2. Template List

Template List

For templates are available basic tools new/edit/copy/trash. This tools are available in main toolbar. On clicking new/edit or click on template name you open editing page. On template editing page you set template name, calendars and properties.

The calendar is a dialogue, through which your customers will determine the time of reservation. There are three basic types, which differ both displayable time interval, as well as graphical form. Day calendar lists possible reservation times for every day separately, and as all calendars shows occupied terms. Week calendar´s appearance and functionality is very similar to the previous. Shows all days from today (or from first day of the week - check Configurationtab Calendarsoption Show Full Weekly Calendar) until the end of the week. The last, month calendar shows all days of the month after a weeks. In contrast to previous two calendars, shows only full day reservations, no hourly. For every calendar you set if it is available or not. One of them you have to set as default. Default calendar is displayed when customer opens object page for the first time. Calendars are choosed according to object character. If you create objects as hotel room or car which are booked for full days you need only month calendar. For objects as tennis court or sport hall which are booked for hours you use day or week calendar. There are also another types of calendar: Week Multi Calendar which display available reservations in specific week. It is useful for hourly and daily reservation type and Periodic Calendar that can be used when you want to reserve an object regularly for the certain time in certain day of the week.

Figure 3.3. Booking Calendars

Booking Calendars


Properties are attributes that belong to the certain template. You can take advantage if you have several objects of the same type (for example: tennis courts). This objects have the same attributes, but their values are different. For example, the hotel will have a number of rooms, in each you will specify the same attributes (number, floor, where is the view, number of beds,...). When you will then create the objects of individual rooms, you can use this template and fill in simply the necessary information. You can have as many templates as you want, so there is not problem to have other for a room and other for an apartment. For each to indicate other information.

Figure 3.4. Template Edit Page

Template Edit Page

You can set template properties by click on tool new (for new property) or click on tool config (for existing property). During creating new one you have to set property type.

Figure 3.5. Dialog to Select Property Type

Dialog to Select Property Type

Every property has title. If you use multiple properties, select box/radio button. You must set minimally two options. Every option must be on a single row. You can optionally choose an icon (you can set path to your own icons in: Configurationtab Imagesoption Template Icon Path) and searchable/filterable mark. Searchable properties will be possible to find via module. Filterable properties can be filtered in the component view.

Figure 3.6. Dialog to Edit Template Property

Dialog to Edit Template Property

3.3. Bookable Items

This is the subject of your business. Bookable item could be anything you want to allow your customers to book. Whether that are hotel rooms, cars, tennis courts etc. Items can form a tree structure, which you can adapt according to your wishes. Of course there is a gallery and descriptive text, which you can also enrich with pictures, graphs and other elements. There is a possibility to set the values of your properties, which you created in the template. Furthermore there are also reservation types and prices, which is main part of items settings. For more information, read information below.

Objects settings are available in component administration on bookable items.

Figure 3.7. The objects backend filtered list

The objects backend filtered list

Items tree structure is important if you want order items into categories according to their character. Parent items are not bookable. They are meant to creating objects categories. Bookable are only last childs of tree structure.

Figure 3.8. The items backend editing page

The items backend editing page

The simple example details setting for hotel room

Booking of this room is available from 2013-10-08 (see option Start Publishing) to 2013-12-31 (option Finish Publishing). Room is permanent published (see option published) and is displayed to all page visitors (access is public). In items hiearchy is room added into category Accomodation.


Bookable items must have title. Alias is used for creating SEF urls. If you let alias field empty then alias is during item saving generated automatically. If itemt is published you should not change it because SEF url is already indexed by Google. Fields meta keywords and meta description are also used for SEO and you should fill them.

Every item has assigned one template. You are able to edit template from item editing page. All changes in template what you do by edit item are show in others items and template too. You can set for item standard Joomla! options as publish status and dates, user access and items ordering.

When the quantity is set and bigger than 1, customer can select booking capacity. There is also option to "Show Quantity Information" which display in calendar available capacity. You have also option to set the Occupancy, for example number of normal beds in the room.

Figure 3.9. Example of setting Quantity and Occupancy

Example of setting Quantity and Occupancy


Figure 3.10. Example of Show Quantity Information (frontend)

Example of Show Quantity Information (frontend)


You can upload images to the gallery and set which one will be default by selecting it and then click on icon "Default". Another part is File Attachements. You can upload and attach files to an object. That can be for example user manuals. You can specify to every file if it will be available in item detail and if it will be sent along with reservation e-mail to customer.

3.4. Reservation Types

Now we come to the most important part. And this is very flexible reservation system through which everybody create a timetable which is required. Through Reservation Settings you choose the way how customer can book the certain item. The main parameter is type of reservation: daily or hourly. Daily means that the customer has to book the certain item at least for the full day, hourly then enables the shorter time intervals. The following two parameters apply to the hourly reservation types. It is time unit, alias time interval of reservation. It indicates that customer can book the items for example after 30 minutes. Gap time is a time lag between individual reservations for example used for cleaning. You can set limit restrictions: minimum and maximum length, fixed length and restrictions for week day from which can customer makes reservation.

You can set "Enable Maximum Reservation Limit" and to Allow Maximum of Reservation within determined time. It means that customer can make certain number of reservations within certain days.

Figure 3.11. Example of setting Maximum Reservation Limit

Example of setting Maximum Reservation Limit


Figure 3.12. Example of Hotel Room Reservation (backend)

Example of Hotel Room Reservation (backend)


Figure 3.13. Example of Hotel Room Reservation (frontend)

Example of Hotel Room Reservation (frontend)


Figure 3.14. Example of booking of room for whole week (backend)

Example of booking of room for whole week (backend)


Figure 3.15. Example of booking of room for whole week (frontend)

Example of booking of room for whole week (frontend)


3.5. Prices

The most important item settings is Prices. It is necessary part of any item and together with Reservation types it creates every schedule which has to be included in any reservation system. For definition you have to specify the following parameters. The actual price, deposit, which will be returned to the customer, reservation type, that we selected in the previous flag and dates from when to when is price valid. You can specify other parameters for hourly reservation type. Of course there are the times between which the item can be booked. The reservation units are calculated among this time, according to the time unit and the gap time. You can also modify in which days of the week is the price up to date. You can create a whole series of reservation units with different type of reservations. The choice of the date is enabled through the calendar dialogue and hour can be set on the dial for user-friendliness.

The Multiply capacity parameter is used if item has bigger capacity than one. It specifies, wheter multiply reservation price and deposit by reserved capacity. For example, if you reserve cars or rooms, setting should be checked (more -> more price). If you reserve something where price stays constant no matter of reserved capacity, setting should be unchecked.

You can also have an option to select interval only in one price by clicking on "Allow Booking Over Different Pricing Periods". In this case you can make a reservation over more prices but with same reservation type.

Below you can see an example of Squash Courts available every day from Monday to Sunday (Day Availability) from 07:00 am to 11:00 pm (Time Range) but the prices are different. From 07:00 am to 6:00 pm is price 5 EUR, from 6:00 am to 11 pm is 8 EUR.

Figure 3.16. Example of Squash Court Prices (backend)

Example of Squash Court Prices (backend)


Figure 3.17. Example of Squash Court Prices (frontend)

Example of Squash Court Prices (frontend)


You can also set a deposit that will be returned back to the customer. In this case is necessary to set Reservation Expiration. There are these following types: „Online Payment Only“, „After Reservation“ and „Before Booking“. If you set „Online Payment Only“ customer can pay only with online methods. If payment will not be done immediate after the reservation, reservation will be cancelled. „After reservation“ means that order has to be paid specified number of hours after reservation was created. If not, reservation will be cancelled. „Before Booking“ is same like previous type. But it will check reservation payment status before event start. Deposit multiply parameter specifies, wheter multiple deposit by reserved time units. If not checked, deposit is the same no matter of reserved time.

Here is an example how to set a deposit when customer have to pay it after reservation. Determined time is 2 hours, it means that customer has to pay it within 2 hours, if not then reservation will be cancelled. Deposit value is 10 EUR.

Figure 3.18. Example of setting deposit

Example of setting deposit


All prices include tax with default settings but you have also the option to change it that prices will not include a tax. This can be set in Configurationtab Pricesoption Show prices without tax. In tab Prices is also possible to add "new tax" and its values.

Figure 3.19. Example of setting "Show prices without tax" (backend - configuration)

Example of setting


Figure 3.20. Example of setting "Show Prices with Tax" (frontend)

Example of setting


Figure 3.21. Example of setting "Show Prices without Tax" (frontend)

Example of setting


You can also provide a discount, if customer reserve more than one time unit.

3.6. Reservation Types - Extended Settings

If you have more then one reservation types and each reservation type has different length, you can use optional minimum interval. With only one reservation type this option is not used.

In following example we have a squash court where customer can book 60 or 120 minutes. We need to display 60 minutes boxes in calendar. For this reason we have to set minimum interval length for 60 minutes. When customer wants 60 minutes, then chooses one box. When customer wants 120 minutes, in calendar are highlighted always two following boxes for one click. Now in weekly calendar, in colored price box are displayed currently available capacities. See examples below.

Figure 3.22. Example of two reservation types with different lengths (backend object reservation types)

Example of two reservation types with different lengths (backend object reservation types)


Figure 3.23. Example of two reservation types with different lengths (backend object prices)

Example of two reservation types with different lengths (backend object prices)


Figure 3.24. Example of two reservation types with different lengths (frontend)

Example of two reservation types with different lengths (frontend)


The fixed shedule you can use, for example, if you use more prices with different time ranges and in calendar every day has different shedule length. And you want every day calendar to have specified length, even if there is no available reservations through whole time. See examples bellow. You have to set minimal interval length and fixed shedule from-to properties. Fixed shedule interval from-to must be wide enough to match all prices time ranges.

Figure 3.25. Example of Fixed Schedule (backend object reservation types)

Example of Fixed Schedule (backend object reservation types)


Figure 3.26. Example of Fixed Schedule (backend object prices)

Example of Fixed Schedule (backend object prices)


Figure 3.27. Example of Fixed Schedule (frontend)

Example of Fixed Schedule (frontend)


The another situation can be when you are providing for example Castle Tour or Road. Every Tour takes 2 hours but starts every hour. In this case is necessary to set "Overlay Prices". As you can see below there is a Tour Castle which is possible to reserve every day from 1:00 PM to 5:00 PM and starst every hour.

Figure 3.28. Example of setting Overlay Prices (backend)

Example of setting Overlay Prices (backend)


Figure 3.29. Example of setting Overlay Prices (backend)

Example of setting Overlay Prices (backend)


Figure 3.30. Example of Overlay Prices (frontend)

Example of Overlay Prices (frontend)


3.7. Google Calendar

Synchronization your reservation with your Google Calendar. You have to have own Google account where you want to synchronize reservation.

3.7.1. Google Settings

Create google calendar in your google account, than go at https://cloud.google.com and create the project by clicking on CREATE PROJECT. Enter Project name and Project ID.

Figure 3.31. Create new google calendar

Create new google calendar

Figure 3.32. Create new project

Create new project

Turn on Calendar API at the APIs & auth/APIs.

Create connection to Joomla by using REGISTE APP at the APIs & auth/Registered Apps

Figure 3.33. Calendar API

Calendar API

Figure 3.34. Register APP

Register APP

Choose any Name and create Web Application

Choose OAuth 2.0 Client ID

Redirect URL - enter name of your domain http://yourdomain/administrator"index.php?option=com_booking&task=google.authenticate

By clicking on GENERATE you receive Client ID and Client Secret

3.7.2. Booking Settings

Go to Global Configuration - Google and enter Client ID and Client Secret - Save

Figure 3.35. Entering Client ID and Client Secret

Entering Client ID and Client Secret

Run Load Calendars on the Control Panel/Google - this function loads calendars created in your google account

Now you can choice Default Calendar in Global Configuration

Figure 3.36. Default Google Calender

Default Google Calender

To finish synchronization by using Control Panel - Google - Synchronize Events. The reservation will be synchronized into your google calendar.

3.8. Closing Days

Closing days enable you to set a days, hours when the item is not available for any reason. If you want to create closing days, you have to fill Title, Date up and Date down, Time up and Time down, then select the existing items for which you want to set closing day.

Figure 3.37. Closing Days List

Closing Days List


Below you can see Squash court Nr.1 which is not available on Wednesday from 11:00 am to 02:00 pm.

Figure 3.38. Example of setting closing days for Squash Court (backend)

Example of setting closing days for Squash Court (backend)


3.9. Google Maps

Google Maps allow you to give customers information about place where they can find you or bookable item. You can insert Google Map into the object detail page by two different ways. The first is when you select Address for Type option. Address should contain street, city and country. Then set a widht, height (in pixels) and zoom (higher value means higher zoom). The second way is to find a map at http://maps.google.com/ and then insert code from this page into the last field.

Figure 3.39. Example of setting Google Maps (backend)

Example of setting Google Maps (backend)


3.10. Supplements

Supplements is next bookable item settings. For example: you run the hotel accomodation and customers can reserve beside room also breakfast, phone, internet or another services. Another example can be for squash courts where you can provide also rackets for players. See examples below.

Supplements have two forms. Supplement "Option yes/no" is realized on frontend by checkbox form field and have price (option "One price") or is free (option "Free"). Supplement "Select from list" has more values and is realized by drop down list form field. Each value has own price (option "More prices") or all values have one price (option "One price") or supplement is free (option "Free"). For supplement "Select from list" you can set property "Use empty option". It means that customer doesn't have to choose this supplement value (in drop down list is option without value). Property "Use empty option" is unavailable for supplement "Option yes/no". Supplements prices are automatically added to full reservation price.

Supplement capacity setting allows you to set behavior of supplement capacity. No capacity means supplement will be always one and price will be constant. Default is multiply by object capacity - number of supplements will be same as reserved object capacity (if object has capacity) and price will be multiplied as well. Option "Select Capacity Manually" allows customer to specify number of supplements manually and supplement price will be multiplied by selected number of supplements. You can set maximum number of supplements for this setting. This can be used for example for additional cathering or sporting equipement.

Figure 3.40. Example of room supplements (backend)

Example of room supplements (backend)


Figure 3.41. Example of squash courts supplements (backend)

Example of squash courts supplements (backend)


Figure 3.42. Example of squash courts supplements (frontend)

Example of squash courts supplements (frontend)


3.11. Booking Administrators

For using Booking is important to have frontend administrators. Frontend administrators manage reservations from frontend interface (not backend). Administrators are selected from existing Joomla! users. This users cannot be used in customers acounts. On following image is backend dialog of administrators setting. There is filtered list of existing users. In column "Is admin" you can see mark if user is/isn't administrator or is customer (cannot be administrator). You can assign more users as administrators by tools from main toolbar.

Figure 3.43. Backend booking administrators setting

Backend booking administrators setting

3.12. Reservation

If you have published items, customers can book them and make reservations. One reservation can have multiple booked items (optionally with supplements), their time ranges, computed prices and customer personal data. Customers create reservations from frontend item detail page with calendar. According to item settings, calendars display available intervals with specific color. Customers choose available intervals and items supplements. After click on button Book it!, lightbox window is opened, where customer can select item and supplements capacity (if available) and choose between going to checkout or continue and reserve different object. On checkout page, customer can manage his reservation, fill his personal data and send reservation to Book it! system.

Reservations can have a following status: Prereserved, Reserved, Trashed, Cancelled and Conflicted. There is also Payment Status: Unpaid, Deposit Paid, Paid in Full.

Figure 3.44. Reservations backend list.

Reservations backend list.


Figure 3.45. Reservations Status.

Reservations Status.


3.13. Payment Methods

Payment Methods List is available in "Extensions-Plug in Manager-bookingpayment". Here you can set if is it enabled to pay by a certain payment method. Then you have to go back to configuration "Payment Methods" and you can edit existing method and set who can pay pay it or no.

Figure 3.46. Payment Methods List - Plug in Manager

Payment Methods List - Plug in Manager


Figure 3.47. Payment Methods Manager

Payment Methods Manager


Figure 3.48. Edit Payment Methods

Edit Payment Methods


3.14. Global Configuration

General, User Group Assigned to New Customers

User group, where are assigned newly created customers. We recommend to use registered group.

Customer has to Login or Register Before Reserving

If you select No customer is prompted to login or register during reservation. If guest user group can reserve then customer can reserve without login or registration.

Enable to New Reservation

Temporary blocking of new customers registering

Show customer names

Show customer ś name which already made reservation in reserved interval (only for front-end)

Figure 3.49. Show customers of reservations

Show customers of reservations


Show User Note in Calendar

Show customer´s note (note during checkout) in calendar, if day/hour is booked.

Use captcha

Only for unregistered customers. Before customer save reservation he has to fill captcha image. It's security to robots.

Figure 3.50. The captcha for unregistered users.

The captcha for unregistered users.

Enable More Reservation

User can add more booked object during reservations. It is something like "cart".

Confirm Reservation

If you set "Yes" manager has to confirm created reservation first.

Redirection after Reservation

Target where customer is redirect after reservation has been done. Customer can be redirect to "Thank you page", "Bookable Items List" etc.

Redirection after Reservation Menu

When you select in option Redirection after Reservation value Menu Item then select here some item.

Redirection after Reservation URL

When you select in option Redirection after Reservation value Custom URL then add here some URL.

Redirection back from Reservation

Target where customer i redirect when click on button back at reservation detail

Enable Responsive

Responsive design is modified for mobile devices. It will also detect whether customer us tablet or mobile, otherwise it will show standard design.

Enable jQuery

jQuery is necessary part of responsive design. If you already use jQuery on your site (loaded by any other extension) then please, do not enable this option.

Require Accepting

You can set if customer has to accept Terms of Contract and Terms of Privacy before reservation.

Date Format

Date formatting is used in frontend and backend. There is possible to use a predefined format or custom format. If you choice a custom format you can set: Long Date Format (containing date and time, it means date/month/year/hour/minutes), Standard Date Format (contains only date, day/month/year), Day/Week Calendar Format (this format is used in daily/weekly calendar as caption of day, should contain a short value of day and month without year), Month Calendar Format (format is used in monthly calendar as caption of day, should contain as in previous format). There is also possible to show "Time Format" which is used for displaying time, for example in daily or weekly calendar. Should contain only hours or minutes.

Images, Popup Type

Select popup type you want to use on your website. If you use Responsive design, we recommend you to use shadowbox.

Image Path

The directory path where are saved objects images. It's relative path from Joomla! root. For example: your Joomla! is installed in directory /var/www and you want to save images in directory /var/www/images/objects. You have to set this options as images/objects. Template icons path is path where are saved templates icons. The rules are similar like image path. There is also possible to set JPG quality of thumbnails. You can choice between 75 and 100. 75 is maximum compression but lowest quality and 100 is maximum quality but biggest file size. PNF quality is possible to set between 0 and 9, when 0 is without compression and 9 is maximum.

Prices, Using Prices

Settings of using prices - Prices with Deposit, Prices without Deposit or without Prices.

Currency

Your currency display with prices.

Display Last Zero

You can display last zeros in prices. If you choice this option, the value will be displayed as 12.50.

Decimals and decimals point

Here is possible to set number of decimal and separator for decimals (comma or point)

Thousands Separator

Here you can select how will be thousands separated, the options are following: None, Space, Comma, Point or there is also possible to select Custom Separator.

Price Format

Price can have different formats, you can select position of currency (in front of value or behind value) and if separates value and currency with space.

Default Reservation Cancellation Time

Here you can set how long after reservation has to be deposit paid

Show Prices without Tax and Tax Rates

You can choice if the price will displayed with or without tax and also add new tax rates.

Show Total Price

Show row with total price in reservation summarty or reservation list.

Show Payment Status

Show row with payment status in reservation summary or reservation list.

Show Item Price

Show row with item price in reservation summary.

Show Deposit Price

Show row with deposit price in reservation summary or reservation list.

Show Price ex. Tax

Show row with price excluding tax in reservation summary.

Show Tax

Show row with tax value in reservation summary.

Calendars, Week Starts on

You can set first week day as Monday or Sunday.

Figure 3.51. First week day is sunday

First week day is sunday


Enable reservation after x days

You can set if you want to enable to book object after x days, hours. Use format 1d, 2h, 50m to enable book after 1 day, 2 hours and 50 minutes. If it is set to 7d and today is 6.12., user will be able to book objects from 13.12.

Show Quick Navigator

Calendar has quick navigator realized as drop down list with num months/weeks/days to future according to used calendar. This option is related to next options "Future months to show"/"Future weeks to show"/"Future days to show". For example if you set 5 months to future in quick navigator is offer quick jump to next five months after current month.

Figure 3.52. Display quick navigator

Display quick navigator


Setting of color

'You can set color of field in calendar, which is reserved (reservation color), which can be booked (vacancy color), which is unavailable (unavailable color) and also Pricesbox Color for Reserverd Fields.

Allow Current Day Booking

You can allow to book only current day, this is used for daily reservation type.

Hide Days in which does not Begin Fixed Limit

If the daily booking type using fixed limit, which does not start on all days of the week so this option can hide these days.

Label Style for Night Booking

Style of nights labels in monthly calendar if night booking is used (e.g. for hotel reservation). You can use Mon/Tue - they are both days which night cover or Mon - it is day when night starts.

Google, Client ID

You need it for Gioogle Calendar synchronize. Setup project with service Calendar API at https://code.google.com/apis.console. This item you find at API Access.

Client secret

You need it for Gioogle Calendar synchronize. Setup project with service Calendar API at https://code.google.com/apis.console. This item you find at API Access.

Default Calendar

If calendar list is empty or out of date then go to control panel/google and click button load calendars

Event Summary

Select item which you want to use as summary of Google Calendar Event. Summary is text in event box in calendar.

Item List Defaults
Show Flag is Featured

Show near of item title flag that item is featured

Show Item Thumbnails

In objects list display thumbnails of objects main images if available. This option is related to next options Thumbnail width and Thumbnail height. You should set one or both of them. If you set only one then second is automatically computed. If you set both then thumbnail is realized as cutout.

Show introtext

If object has introtext then is used in objects list. If set, defines length to what an introtext will be croped.

Show filter

There are used template properties which are set as filterable.

Figure 3.53. Filter over the objects list from fltered template properties

Filter over the objects list from fltered template properties


Pagination

It's standard pagination bottom filtered list. In option Default pagination is available setting of default listing value. If switched on, object list displays pagination with select limit box. If objects total is less then minimum limit box option, limit box is not displayed. If switched off, all objects are displayed on one page without pagination.

Show Book it button

This button opened object detail page to make reservation.

Show Month Calendar

Displays list of small monthly calendars for each object. Start month and number of list you can set in next field. Reserved days are showed in gray. It is quick information for customer which days are free. This is related to Month Calendar Style.

First Shown Month Offset

Value to shift of first month in calendar from current. If there is 0, then first is current month. If there is 1, then first month is next month. For example: now is March and start is 3, then is first month.

Number of Months Shown

Number of months in list from first. For example: now is March, calendar start is 2, months number is 3. In calendar will be May, June and July.

Show Week Calendar

Weekly calendar for each object in the list. Engaged days are highlighted. You can also set number of days should be shown.

Item Detail Defaults

 

Multiple Reservations

You can allow to select more than one reservation in calendar.

Show Cart in Popup

Popup window will display after clicking on book it button where customer selects go to checkout or save reservation and continue.

Show Capacity

Show capacity selector near of book it button if total capacity is higher then 1.

Show Primary Image

You can show object main image at detail page. If you can choice this option, you can also set Primary Image Width and Height. If it is not set, it will be computed automatically.

Show Image Gallery

Display photo gallery with objects images. You can also choice the position of image gallery, how should photo gallery look, image and thumbnail width, height in pixels (if not, width and height will be computed automatically)

Show Properties Style

Here is an option how to show object properties. You can show as Table, Icon List, Text List (this is defined in template parameters)

Show Back Link

Display back link to parent object (if exists)

Description Position

You can set Below Primary Image or Below Properties.

Prices Layout

You can set a style of section with prices, deposit and discounts. The option is: Detailed List, Brief Legeng or there is also a choice to hid it.

SMS/E-mail

There you can turn off or set sending emails for manager, customers or for both. Here you can set what email/SMS will be sent to a customer after reservation, which one will be sent to the manager after customer registration, what will be sent to a customer after reservation, what will be sent to the manager after customer reservation. You can also inform a customer after change reservation status. More information you can find in Chapter 14: Sending Emails/SMS.

Customer Fields

Fields which customer has to fill during registration or objects reservation you can set here. You can disable (option hiden) or enable (option optional or required) fields. Is recomended to set customer e-mail as compulsory if using reservation e-mails. Customers accounts are accessible from component backend. Customer can be disabled by blocking his Joomla! user account. In backend you can edit or delete customers.

Registration

ARTIO Download ID - Here you have to enter your ID received during purchase our product.

Permission

Here is possible to manage the permission settings for the user groups. Please note, if you change the setting, it will apply to this and all child group, components and content.

3.15. Sending E-mails and SMS

Component can send e-mails and SMS to administrators and customers. Setting of sending e-mails and SMS is available in global configuration. There you can turn off this service or set if is available only for administrators, customers or for both. For sending e-mails and sms, component uses setting from Joomla! global configuration.

In component configuration you can set sender e-mail, telephone, sender name, subject for customer and administrator, format of e-mail (HTML or plain text) and e-mail and SMS body. Other settings as mailer (php mail/smtp/sendmail), username, password, security etc. are used from Joomla! global configuration. In e-mail body you use transcription marks which are replaced by reservation or registration data. There are data as customer name, reservation date, object name etc.. Special transcription mark is pair of marks {OBJECTS} and {/OBJECTS}, which defines part, which will be repeated for each reserved object. Available transcription marks you can see in component global configuration above the e-mail body field.

Figure 3.54. SMS/Email Templates

SMS/Email Templates

Figure 3.55. Edit Email and SMS Template

Edit Email and SMS Template

3.15.1. SMS and E-mail Notification

You can let your customer know about their order status change or send SMS messages on different events. Or send single or bulk messages to customers from your customer database. It is very important to set when the notification has to be send to customer.

Figure 3.56. Edit Email/SMS Notification

Edit Email/SMS Notification


Chapter 4. Usage (frontend)

Table of Contents

4.1. Booking Customers

4.1. Booking Customers

Customers are page visitors who can make reservation in Booking component. You can allow page visitors reservation without registration or with registration and Joomla! user account to login. If visitor hasn't Joomla! user account, component offers him to create new customer registration with new Joomla! user account. For logged users component offers to become customer.

Fields which customer has to fill during registration or objects reservation you can set in component global configuration (bookmark Registration/reservation fields). You can disable (option hide) or enable (option show) fields. Enabled fields can be compulsory or optional. Is recomended to set customer e-mail as compulsory if using reservation e-mails.

Customers accounts are accessible from component backend. Customer can be disabled by blocking his Joomla! user account. In backend you can edit or delete customers.

Figure 4.1. The page visitor isn't logged. Component offers him login or registering.

The page visitor isn't logged. Component offers him login or registering.


Figure 4.2. The page visitor is logged. Component offers him to become customer.

The page visitor is logged. Component offers him to become customer.


Figure 4.3. Customer registration page. With customer account is also created new Joomla! user account.

Customer registration page. With customer account is also created new Joomla! user account.


Figure 4.4. Become customer page. To existing Joomla! user account is created customer account.

Become customer page. To existing Joomla! user account is created customer account.


Figure 4.5. Config registration/reservation fields page.

Config registration/reservation fields page.


Figure 4.6. The customers backend list

The customers backend list


Chapter 5. Troubleshooting

If you encounter problems or have questions, check for the answers or post your question at our support forums at http://www.artio.net/support-forums/book-it.

You can also check FAQ http://www.artio.net/faqs/booking.

ARTIO FusionCharts has a database connector

Ostrava, 8.10.2010 - We have just released new version of ARTIO FusionCharts for Joomla. Lastest version enables to import from CSV file and online connect chart with the external databse source.

VM Reports 1.0.0 released

Ostrava, 7.10.2010 - We have just released new component VM Reports for CMS Joomla and VirtueMart. VM Reports offers a wide range of the statistical information from your e-shop in a graphic form using Flash charts.

MTurbo 1.1.0 just released

Ostrava, 1.10.2010 - We have just released new version of MTurbo accelerator for Magento. Version 1.1.0. enables to choose from the several methods how to caching content.

VMR1

Screenshots

Below is list of images of VM Reports component. Component has just backed part. Check online demo of VM Reports.

VMR2 VMR3

VMR6 VMR4 VMR5

thumb_ordersdf

Reports types

Orders

The basic statistic type that may not be missing in any E-shop. Graph includes two quantity - number of orders and yield. The graph can be separate between two dates, which you can select from calendar dialogs. You can also choose after what time intervals will be orders calculate (hours, days, weeks,...). Chart is combinated, the number of orders are displayed as columns, yields as polylines. For clarify you can see just one of them. The yield is calculated according to order status. In a tab setting you can choose which status are included in yields. For speeding and dulcification your work you can choose pre-set values for select the time interval for the last 24 hours, week, 30 days, 90 days or one year. The pre-set also include the optimal time interval for data grouping. You can change it according to your wishes.

Order Statuses

Statistics that are displayed as two pie charts. One pie chart for thumb_orders_status_product_seleabilitythe number of orders and the second one for total sum. You must select the start and end data. Also exists pre-set time (see paragraph Orders). Thanks to use FusionCharts component are the graphs transparent and interactive. After clicking on the chart section this part pull out. The graph you can also rotate in the 3D view or 2D view to better understanding of the proportion of each sector. Each sector is supplemented by a legend with percentage rate. After mouse displacement on the specific part it shown the absolute value of this sector.

User Groups

This is a user groups, their number of orders and yields in thumb_user_groupsa given period. Also there are two pie charts (number of orders and yields) in this component. Control and functionallity is similar as a order status.


Products Saleability

thumb_product_seleability_dsdThe statistics allow comparison products saleability over the time or comparison of the two products. This statistic is important for decide if sell of not. The functionality is similar as a order statistics. In addition it contains a dialog products selection. This dialog allows selection an unlimited number of products, which are then displayed in the chart. Goods list can be very long therefore the dialogue contains a filter. By the help of filtr you can filter products names.

Payment Methods

thumb_payment_methodsIs important to know what payment methods are used the most for adapt to your customers. There are two pie charts that show the orders number and the yields. The functionality you can see in the Order status.

 


Category Saleability

The statistics allow select a few of categories and create the selling thumb_top_productsgraph. You can locate which goods are the most marketed and focus on them. The functionality corresponds to the orders statistics. In addition it is extended to selectbox. It allows select multiple number of categories under the tree stucture what you can see in our store.

 

Saleability Chart

The above statistics allow monitor the saleability time process. thumb_top_categoriesmBut how determinate which one is the best? The saleability charts for the products, user and categories are here for this purpose. On the basis of two variables (number and yield) you can locate which product was the best selling in the specific period. The charts you can sort by two variables and change its time interval. Pre-set time interval is 5, 10 and 20 best selling products. The number and the yields are displayed in the simple graph as a multicolored columns.

Country Orders

If you have clients from different countries you´ll certainly thumb_top_countryappreciate the country chart ranking according to their saleability. It´s column chart in the horizontal orientation. In this chart is marked yield in each country for a specific period. Also you can regulate chart lenght (5, 10 or 20 notes).

thumb_animace

VM Reports Features

VM Reports extension for VirtueMart was created with view to simple operation and transparent display of basic business statistics throught animated and interactived flash charts using ARTIO FusionCharts.

Animated Charts

All types of graphs include animation. Column and line chart gradually rising, pie charts rotating or you can pull out individual pieces for better clarify. The animation is started in every time when the graphs are loading.

Intuitive User Interface

thumb_rozhranThe statistics are section to transparent menu by the area of interest.It making easy to search. Page itself is transparent with sufficiently large graphs (you can choose randon size of the graph).

User Setting

thumb_uivatelsk_nastavenEach statistic contains a form that lets you choose which data wantyou to display. Not only a time range but also the time intervals (hour, day, week, etc.), display multiple values in the single graph (eg. number, yield) or reduce the statement size eg. the best selling products. Furthermore, is possible to display the charts of several entities into a single chart (eg. selling various types of goods).

AJAX dialogues

thumb_ajaxAJAX technology allows to change some of the website without having to load it all again. For example: Dialog selection of products in the statistics is solution in this way and you can ever filtering the list. Chart setting is the matter of the few mouse clicks.

VM Reports component setting

thumb_vm_reports_component_settingParameters setting is very simple. For example: you can choose graphsize or number of columns on the page. The important feature is possibility to select which orders are included in the calculation of profit.




Interactive help

thumb_npovda All types of graphs include interactive help. Whenever you moveyour mouse on the data in the chart display you detail information about displayed data. The overall impression is then much transparent.


Several statistic quatities in a simple chart

thumb_prmr_sCharts allow to view several features for each entity at the same time (number, yield). Each feature has its own axis. You will see axises in the resonable level from which you can much better subtracted information.


Pre-set features

thumb_pre-set_features Statistic setting can change at will. You have a possibility to use apre-set, which speed up your work. There are several pre-sent time period in which you can searching data. Every pre-sent time period has pre-sent time interval for data grouping (hour, day, week, etc.), for the most transparent graph form. You have also possibility to change this value.

Quick and easy installation by VirtueMart

thumb_instalaceDue to distribution through installation package is run VM Reports on your E-shop very easy. Simply select the file, one mouse click and you can already use the full functionality of this useful extension.

 

thumb_WMReports

VirtueMart Business Reports

Visualizes your VirtueMart e-store sales and customer statistics and produces business reports in a form of attractive and lucid Flash charts.

Page 22 of 41

Aktuelles

VM Invoice 3.1.17 right now!

05.04.2019

New release of VirtueMart PDF Invoice generator - VM Invoice 3.1.17 is now available. This new version introduces fix reported by our users and new feature.

New JoomSEF 4.7.6 is here!

05.04.2019

JoomSEF 4.7.6 is now available for download or upgrade. This release include some new improvement, improvement and also the known bug fix. Read more about the new features.

VM Invoice 3.1.16 is available

05.02.2019

New release of VirtueMart PDF Invoice generator - VM Invoice 3.1.16 is now available. This new version introduces fix reported by our users.

VM Invoice 3.1.15 is here

06.12.2018

New release of VirtueMart PDF Invoice generator - VM Invoice 3.1.15 is now available. This new version introduces some new features and improvements as well as fixes reported by our users.

New JoomSEF 4.7.0 compatible with Joomla 3.7

01.08.2017

JoomSEF 4.7.0 is now available for download or upgrade. This release include some new features, improvement and also the known bug fixes. Read more about the new features.

User Login Empty