Skip to main content

Booking product for Plone

Project description

A booking product for Plone which allows to reserve time slots throughout the week.

Installation

Add rg.prenotazioni to the egg section of your instance:

[instance]
eggs=
    ...
    rg.prenotazioni

Introduction

This product introduces two new content types to your Plone site:

  • Booking

  • Booking Folder

Booking content

Booking is a content type used to store information about reservation.

The product interface provides a way to add new booking elements, by clicking on one of the plus signs available in the slots calendar as shown below:

The view of Booking Folder

Each booking element once created is storerd into its own Booking Folder.

Booking Folder content

Booking Folder is a folderish content type which store your Booking objects.

Using rg.prenotazioni

Creating a new Booking Folder

If the product is correctly installed the Booking Folder entry is available on the add new action menu. Click on it to add a new booking folder content.

The view of Booking Folder

Saving the form a new booking folder will be created.

Here below the edit page:

The edit form for a Booking Folder

Since version 2.1 new functionalities has been added to the folder configuration:

  • more then one gate can be handled

  • booking vacations supports also bookings with no gate assigned

Since version 3.0 the agenda has: - a new user interface - allows custom duration for booking types

Creating a new booking content

Anonymous and authenticated users are allowed to add new booking content by clicking on the plus signs on the default booking folder view.

Link to create new entry

After its creation the slot will be displayed as “busy” for anonymous user and the slot won’t be available anymore.

Back-end users can see and manage the reservation according to the assigned Plone roles.

Here below a screenshot of the edit page:

The view of Booking Folder

Since version 2.1: - captcha has been added for anonymous users. - booking content can be added only from the view folder links. - booking can’t be added in the past anymore.

Backend view

The backend view is quite different from the anonimous user view.

The view of Booking Folder

Workflow

The product comes with its own workflow “prenotazioni_workflow”.

Since versione 2.1 a new states has been added. Here below a list of all the states available:

Private: booking object initial state:

  • submit (Automatic transition to pending)

Pending

Transaction available:

  • publish (to published)

  • refuse (to refused)

Published

Transaction available:

  • refuse (to refused)

Refused

Transaction available:

  • restore (to pending)

Managers can confirm a Booking using workflow transitions. The workflow transition triggers an email to be sent to the booker (see below).

Content Rules (mail notifications)

There are additional content rules that can be used to notify booking owner when his booking has been accepted or re-scheduled.

Rules are not automatically as of version 3.x. They are imported by a separate generic setup profile.

There’s also a rule that can warn the Booking Folder responsible when new booking are created, but you need to manually enable it on folders.

Vacations

You can specify days when the Booking Folder will not accept bookings. Those days are called “Vacation days”. Vacation days can be specified compiling the “Vacation days” field in the Booking Folder edit form. Values are allowed in the format DD/MM/YYYY. Instead of the year you can put an asterisk, in this case every here the day DD of month MM will be considered a vacation day.

It is also possible to specify a vacation period for a single gate using the vacation booking form.

The view of Booking Folder

Searching

Using the prenotazioni_search view it is possible to search bookings within a given time interval. You can also filter the results specifying a searchable text, a gate or a review state.

The view of Booking Folder

Notes

rg.prenotazioni 3.x has been tested with Plone 4.2 and Plone 4.3 and works with Python 2.7.

rg.prenotazioni 2.x has been tested with Plone 4.2 and works with Python 2.6 and 2.7.

rg.prenotazioni 1.x has been tested with Plone 3 and works with Python 2.4.

TODO

  • i18n support is uncomplete

  • Switch use of session to cookies (done)

  • Tests!

Credits

Developed with the support of:

All of them supports the PloneGov initiative.

Authors

This product was developed by RedTurtle Technology team.

RedTurtle Technology Site

Changelog

3.5.3 (2014-09-29)

  • Fix encoding problem in prenotazione_print view [ale-rt]

3.5.2 (2014-09-12)

  • Fix prenotazione_move view broken after 3.5.1 release [ale-rt]

3.5.1 (2014-09-11)

  • Look for permission in context_state view [ale-rt]

3.5.0 (2014-09-10)

  • Added methods to prenotazioni_context_state, some of them moved from conflict manager.

  • Fix default not set in AT Prenotazione schema

  • Moved some properties from week view to the most accurate prenotazioni_context_state

  • Restored the capability to exclude Prenotazioni folder from navigation [ale-rt]

3.4.1 (2014-06-23)

  • Fix encoding problem. [ale-rt]

3.4.0 (2014-06-17)

  • jslinting

  • Fix unquoted parenthesis in searchable text searchs

  • Added staff_notes field in prenotazione

  • Prenotazione view also displays mobile number [ale-rt]

3.3.0 (2014-06-04)

  • Added view rg.prenotazioni.dateinput.conf.js

  • BUGFIX: slot comparison was not taking into account the context

  • Use calendar popup when booking vacations

  • Search bookings by review state and on gate

  • Use calendar popup from jquery tools for inputs with class rg-dateinput

  • Upgrade step to reindex Subject index

  • Added rg.prenotazioni.booking_review_states vocabulary

  • Booking Subject field is now filled with the gate

  • Added portal state view for prenotazioni

  • Added an attribute on the week view to control who can access prenotazioni_search view (by default the user who can edit the prenotazioni folder)

  • Use wildcars to identify holidays

  • Get_day_intervals returns also the break as a slot

  • Fix booking allowed during the lunch break

  • Add a title with an indication of the booking time for anonymous booking links [ale-rt]

3.2.1 (2014-05-12)

  • Don’t check for roles if user is anonymous [ale-rt]

3.2.0 (2014-05-12)

  • If a user can edit the Prenotazioni folder has the rights to manage the agenda

  • If a user has the “Reader” role has the rights to inspect Prenotazione objects [ale-rt]

3.1.1 (2014-05-12)

  • Method user_can_manage was called on view instead of week_view [ale-rt]

3.1.0 (2014-05-06)

  • Handle the reader role in prenotazioni_week_view. [ale-rt]

3.0.0 (2014-05-05)

Features:

  • Completely redesigned UI: now we have completely different experiences for backend and frontend users

  • Support booking types with different duration

  • Search view for Bookings inside a Booking Folder

Commits:

  • Fix unicode issue in upgrade_tipologia [alert]

  • Fix redirect after exception message in prenotazioni_move [nicolasenno]

  • Fix check conflicts on prenotazione_move [nicolasenno]

  • Added legend to prenotazione_folder [nicolasenno]

  • Fix redirect in prenotazioni_move [nicolasenno]

  • Fix some i18n translations [nicolasenno]

  • Added search pagination [nicolasenno]

  • Added upgrade step for “tipologia” field in prenotazioni_folder [nicolasenno]

  • Added upgrade step for “settimana_tipo” in prenotazioni_folder [nicolasenno]

  • Modified settimana_tipo colunms in prenotazioni_folder [nicolasenno]

  • Added expiration field to IPrenotazione content type and created the upgrade step for its value [nicolasenno]

  • Adding new portal types PrenotazioniWeek, PrenotazioniYear, PrenotazioniDay

  • Added the concept of slots

  • Adding a new week view for booking managers

  • Depends on plone.api, pyinter, [alert]

2.1 (2013-09-12)

  • Fix cancel action on new booking [nicolasenno]

  • Fix booking visualization issue on PM time [nicolasenno]

  • Fix check booking not available [nicolasenno]

  • Fix slot visualization for both anonymous and logged [nicolasenno]

  • View for booking vacations supports also gateless bookings [alert]

  • Implemented view for booking vacations [alert]

  • Slot calculation made in prenotazioni state view [alert]

  • Added parameter force_gate in booking creation [alert]

  • Added utility time2timedelta [alert]

  • Fix CSS table prenotazioni [nicolasenno]

  • Hide refused review_state slots for anonymous users [alert]

  • Fix review_state refused permissions [alert]

  • Correctly take into account futureDays parameter [alert]

  • Temporarily enabled actions menu [nicolasenno]

  • Don’t check overbooking in Prenotazione post_validate [alert]

  • Fix the review_state after copy [alert]

  • Added new workflow transition and its upgrade step [nicolasenno]

  • Added fields validation (email, phone) for prenotazioni form [nicolasenno]

  • Modified contentrules [nicolasenno]

  • Modified workflow to add refused state [nicolasenno]

  • We can add prenotazioni only through the calendar links [alert]

  • Anonymous users can book again [alert]

  • Autoinclude dependencies zcml [alert]

  • Use captchas for anonymous users [alert]

  • Upgrade step for installing quintagroup.formlib.captcha [alert]

  • Removed customized createObject view [alert]

  • We can now handle more than one gate [alert]

  • Overbooking validation handled through an adapter [alert]

  • Do not allow users to add stuff in the past [alert]

2.0 (2013-05-03)

  • Plone 4 support added [cekk]

  • Added Site Administrator role in rolemap and workflows [cekk]

  • Fixed translation for month in folder view [cekk]

  • Fixed mailhost send method (removed securesend) [cekk]

  • Created new event raised when a booking is rescheduled [cekk]

  • Added new contentrule that notify an user when his booking has re-scheduled [cekk]

  • Added locales support [cekk]

  • Fixed layout styles and accessibility [keul]

  • Do not show reservation object in navigation [keul]

  • Removed useless portal_skins elements [keul]

  • Removed bad ploneCustom.css css, moved to a dedicated CSS [keul]

  • Content types are now in english and translated [keul]

  • PrenotazioniFolder end date is not required anymore (folder can now never expire) [keul]

  • Can’t booking in past slots anymore [keul]

  • Addable types filtered [keul]

  • Removed use of the SESSION object for saving booking date [keul]

  • Removed workflow for PrenotazioniFolder; use default ones [keul]

  • removed hard-coded content rules, now we have a dependency on collective.contentrules.mailfromfield [keul]

  • Removed the need of an additional date index: now we use Date [keul]

  • Removed totally useless viewlets [keul]

  • On Plone 3, switched to LargePloneFolder. Warning: this change will totally brake old 1.x installation on Plone 3.

  • Added futureDays field and feature [keul]

  • Changes to prenotazioni_workflow: removed useless permissions [keul]

1.0.2 (2012/09/07)

  • Minor fixes for public release

1.0.1 (2012/01/24)

  • Fix overbooking (#127)

1.0 (2011-11-30)

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rg.prenotazioni-3.5.3.zip (132.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page