Skip to main content

A LinesWidget-like for Plone, used for selecting dates

Project description

Introduction

rt.calendarinandout provides an archetype widget that allows to add and remove dates using the fancy jquery.ui.datepicker plugin

Usage

The widget stores the information in to a LinesField archetype field. To use it just add a field like this in your archetype schema:

from Products.Archetypes.atapi import LinesField
from rt.calendarinandout.widget import CalendarInAndOutWidget

LinesField(
    'dates',
     widget = CalendarInAndOutWidget(
        label=u"Dates",
        description=u"Enter the dates in the form yyyy-mm-dd.",
        ),
)

Then you can start enjoyng this widget!

Configuration

You can use following additional widget options:

auto_add

Instead of showing an “add date” button/icon, automatically add the date when selected on the calendar. Default is false.

allow_duplicate

Allow the selection of the same date more and more times. Default is false.

Screenshots

  • The widget when no date is selected

    The widget when no date is selected
  • Data can be entered manually or clicking. If you click the calendar a nice datepicker will popup

    Data can be entered manually or clicking. If you click the calendar a nice datepicker will popup
  • Clicking the plus the date will be added to the selected values, the red cross will remove the date

    Clicking the plus the date will be added to the selected values, the red cross will remove the date

    You can also set the auto_add option for not displaying any “plus” icon, and add the date to the list when a date is selected.

  • Add and remove all the dates you want

    Add and remove all the dates you want
  • With JavaScript disabled the widget is still fully functional, falling back to a normal textarea where you can insert dates manually

    With JavaScript disabled the widget is still fully functional
  • In view the dates are rendered as an unordered list

    In view the dates are rendered as an unordered list

Add this egg to your buildout

Direct installation

You can easily include rt.calendarinandout in your buildout by adding it in both in the eggs and zcml sections:

eggs=...
     rt.calendarinandout
     ...

Triggering the installation from your own egg

If you are developing your own egg you can make it depend on rt.calendarinandout by following those three steps:

  • add rt.calendarinandout it in the install_requires section of the setup.py of your egg:

    install_requires=[...
                      'rt.calendarinandout'
                      ...]
  • add the dependency in your egg profiles/default/metadata.xml file:

    <?xml version="1.0"?>
    <metadata>
      <version>...</version>
      <dependencies>
        <dependency>profile-rt.calendarinandout:default</dependency>
      </dependencies>
    </metadata>
  • add the dependency in the configure.zcml at the root of your package, including this line:

    <include package="rt.calendarinandout" />

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

TODO

  • Complete internazionalization

  • Add an option to trigger the client side validation of the added date format

  • Gives to developer a way to control date format used

  • Some artwork will be a nice plus :)

Changelog

1.1.0 (2013-10-30)

  • removed any deprecated reference to jq [keul]

  • do not pollute global namespace anymore [keul]

  • fixed disabled option allow_duplicate [keul]

  • when auto_add option is used, automatically clear the new date field [keul]

  • code cleanup

1.0.3 (2012-05-02)

  • Egg changes as we moved to github [keul]

  • Enabled adding a date also with “enter” key [cekk]

1.0.2 (2012-02-23)

  • Fix problem with widget activation on IE [lucabel]

1.0.1 (2011-10-04)

  • fix the problem with duplicate widgets in one schema [amleczko]

1.0.0 (2011-02-07)

  • No more fix the the collective.js.jqueryui version; leave this to buildouts [keul]

  • removed “strip” non-standard method, replaced with a custom “.trim” method [keul]

  • added the “auto_add” option, for automatically add dates to the field when they are selected [keul]

1.0.0-rc3 (2010-11-19)

  • In view dates are rendered in an unordered list

  • Added documentation

1.0.0-rc2 (2010-09-15)

  • Fixed Javascript docstrings [keul]

  • Removed unused locales directory [keul]

  • Removed unused widget parameter “dateformat” [keul]

  • Some relative URL are now absolute, not breaking browser cache [keul]

1.0.0-rc1 (Unreleased)

  • 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

rt.calendarinandout-1.1.0.zip (25.9 kB view details)

Uploaded Source

File details

Details for the file rt.calendarinandout-1.1.0.zip.

File metadata

File hashes

Hashes for rt.calendarinandout-1.1.0.zip
Algorithm Hash digest
SHA256 cf84c27485f780b23b59d2420d09c0c9be05d22e2b4f4fa468ebab863dee15b6
MD5 37fa9aa245734f0bd2aac75949655dd5
BLAKE2b-256 e74fb774051cdc4f2d95a734c3b34d0d22439b5896392c9954c33a6605913aba

See more details on using hashes here.

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