Manual Bicyclerent - Frontend Booking

Frontend booking process

The reservation of a bicycle is done via content plugin:

Open any existing Joomla! content article or create a new and place the following plugin tag where you want the booking form to appear:


You can add more parameters: 

{bicyclerent:booking region=(.*) station=(.*) type=(.*)} 

... where you simply replace the (.*) with the integer id of the respective item (region, station or type) which you can find in the backend in the list or single item views.

The Plugin does not allow for the region to be omitted and only the station to be placed or only a type to be provided - you must go "from the top to the bottom", in the above shown ordering so if you for example want to preselect a station with the id 2 you would have to get the according id of the region this station belongs to from the backend, say this would be 1 and write: {bicyclerentbooking:booking region=1 station=2} . You can omit or also provide a type, so the customer can only choose from Region 1, Station 2 and Type whatever you have put here.

You can also use URL Parameters instead if you are linking to your booking page from elsewhere, the url needs to look like the following, then: 


where the your-booking-url-here could then for example be something like The last parameter is an operator ID (the one freely chosen in this case, not the database primary key as for station and region). The easiest is to direct your browser to the article you are using for the booking plugin and copy the url to use in such a link. You can do this with an "external link" menu type, too which is offered by Joomla! when you are choosing the menu type to link to your article with different parameters if you would like to use the same article in different ways for say different stations preselected.

The Plugin tag will be replaced by something like the following, depending on if a region, station etc. was provided or not (here simply {bicyclerent:booking} was written, as preselected values will be changed into hidden form fields and thus not be visible yet deliver their values: 

 When the user selects a Region, an Info button will appear, 

on hover the respective description will be shown (this is true for Station, Type and Extras as well - all of the descriptions are set in the backend with an editor-type field): As you can see a google static map appears which can be placed there with a plugin-tag-like syntax. More later about this in detail.

After successfully entering all necessary data of the first booking screen (here all shown fields need to be filled out by your customers) and pressing the Lookup Availabillity Button the user will be forwarded to the next screen in case a bicycle is available with the chosen specifications: 

Extras available at the station requested will be shown with their price, respectively and can be checked. The checked ones will be added to the total price in the next step.

The Opening hours will be - depending on the respective choice in the requested station's settings - textual "only" with 24hrs of pickup and dropoff times in 30min steps possible or parsed from your comma-separated input in the respective opening hour field in the station view into the select list of possible options. You will find a more detailed explanation under "station" in this manual.

In case there are any incorrect inputs (currently all fields except phone are required - next version will feature custom fields and the possibiliy to set required to yes or no from the backend) or no bicycle is available according to the choices, error messages will be shown as a modal overlay using lightface:

A meaningful message is shown in the same manner if the second formpage can't be shown because a) the opening hours of the requested station do not allow so (first or last day of rentals lies on a non-working day of the station) or b) there is no bicycle available according to the customer's specifications or c) any error on the server side occured.

In case everything is correct in the second booking screen then (the customer data from the form is with the exception of group and phone number obligatory), terms & conditions are checked also (which appear as a link showing the station specific terms & conditions in a pop-up) the last booking screen is going to be shown after the customer cllicks the booking button. All transitions between the 3 major reservation steps are being done via Javascript / Ajax mechanism so that no page reload is necessary. (Below - some dummy prices have been used, you will briefly see where to put real ones per bicycle type and how to choose between different pricing models).

If you have offline payments enabled under options the combination mentioned under options - offline payments - of .ini language file contents and bank details from the options screen will be shown in this last reservation step as well.

You can freely change all texts shown by changing the included .ini language files (English, German, Spanish included) or creating your own for any other available Joomla! language.

The PayPal button appears or not depending on your options choice for this.

Underneath latest versions will show a PayPal explanation link in the shape of a "secure payment" picture that opens PayPals own recommended link in this respect.

You can change the Button's Locale under Options -> PayPal. If you want to add a PayPal button to the automatically send confirmation email instead or additionally, you can do so by adding a tag to the email templates, later more on this.