{ "info": { "author": "Martronic SA", "author_email": "martronic@martronic.ch", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Plone", "Framework :: Plone :: 4.0", "Framework :: Plone :: 4.1", "Framework :: Plone :: 4.2", "Framework :: Plone :: 4.3", "License :: OSI Approved :: GNU General Public License (GPL)", "Operating System :: OS Independent", "Programming Language :: JavaScript", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Solgema.fullcalendar Package Readme\n===================================\n\n.. image:: https://secure.travis-ci.org/collective/Solgema.fullcalendar.png?branch=master\n :target: http://travis-ci.org/collective/Solgema.fullcalendar\n\n.. image:: https://coveralls.io/repos/collective/Solgema.fullcalendar/badge.png?branch=master\n :target: https://coveralls.io/r/collective/Solgema.fullcalendar\n\nOverview\n--------\n\nSolgema.fullcalendar is a complete implementation of\n`Adam Shaw Fullcalendar `_ into Plone.\n\nThis calendar allows you to display events type objects in a powerful and fast\najax agenda. You will be also able to add, edit and more generally manage your\nevents throught the Calendar with a strong AJAX framework.\n\nThe calendar is a view you can choose on a Collection, on a Folder or on an\nEvent. The view is named ``solgemafullcalendar_view``. After that, a new object\naction permits you to set up the basics parameters for the calendar.\n\nOn a Collection, the calendar displays the events that are searched by the\nCollection and it's criteria.\n\nOn a Folder, the calendar displays the events that are contained in the Folder\nitself or in the sub-folders if they are selected in the calendar properties.\n\nIn addition to the calendar, there is a small query form you can display in the\nbottom of the calendar to choose which event you want to display. The fields in\nthis query form are taken from the Collection criterions or from the subfolders\nof the Folder.\n\nAs a developer, you can add event sources to the default one.\nYou just have to define named ``IEventSource`` adapters which provides each a\nlist of dictionaries needed by ``fullcalendar.js`` API.\nYou can also replace the default event source providing an unnamed\n``IEventSource`` adapter for your specific context or layer.\n\nInstallation Note for Plone < 4.3\n---------------------------------\n\nAdd this line in the versions section of your ``buildout.cfg``::\n\n [versions]\n ...\n collective.js.jqueryui = <1.9\n\nInstallation Note for Plone 3.x\n-------------------------------\n\nAdd this line in the eggs section of your ``buildout.cfg``::\n\n eggs=\n ...\n collective.js.jqueryui<1.8\n\nYou will also have to pin the versions for ``plone.app.z3cform``::\n\n [versions]\n z3c.form = 1.9.0\n zope.i18n = 3.4.0\n zope.testing = 3.4.0\n zope.component = 3.4.0\n zope.securitypolicy = 3.4.0\n zope.app.zcmlfiles = 3.4.3\n plone.app.z3cform = 0.4.6\n collective.js.jqueryui = 1.7.2.7\n\n\nCustomizing the skin\n--------------------\n\nYou can easily customize the calendar skin:\n\nGo to http://jqueryui.com and click on the Themes tab. There you can create or\nchoose an existing theme. After that, download it to your computer by selecting\nonly: All UI Core, all UI Interactions and Dialog in UI Widgets. Unzip and copy\nthe css file and all images in your ``portal_skins/custom folder``.\n\nYou can also try collective.jqueryuithememanager_\n\n.. _collective.jqueryuithememanager: http://plone.org/products/collective.jqueryuithememanager\n\n\nSource Code\n-----------\n\nSource code is under GNU General Public Licence (GPL, see docs/LICENSE.txt).\nIt is located at the\n`collective git repository at github `_\nand contributions are welcome.\n\n\nChangelog\n=========\n\n2.3.6 (2016-04-05)\n------------------\n\n- Fix missing import (from plone.app.querystring import queryparser)\n [bsuttor]\n\n\n2.3.5 (2016-03-04)\n------------------\n\n- Add new Dexterity folder view herited from FolderView (plone.app.contenttypes.browser.folder).\n [bsuttor]\n\n- Added generator type to check for iterable.\n [fsprenger]\n\n- Fixed converting DX query and subfolders\n [kroman0]\n\n2.3.4 (2014-08-08)\n------------------\n\n- Fix adding an editing events from plone.app.contenttypes items\n (tested in branch 1.1.x)\n [pbauer]\n\n- Fix to work with the newest p.a.contenttypes where collections are a behavior\n [pbauer]\n\n- On install do not assume the types to be archetypes and only extend existing types\n [pbauer]\n\n- Added robot framework. Added common keywords. Begun to test atfolder, collection.\n [sgeulette, anuyens]\n\n- solgemafullcalendar.js is got from portal_url, not from context url\n [thomasdesvenain]\n\n- More robust way to generate add event view.\n [thomasdesvenain]\n\n- Put back the previously deleted code. Target Folder has sense too on folder. Correct undefined self.portal.\n [sgeulette]\n\n- Fix issue #20 with empty values received from collections queries\n [laulaz]\n\n- Add layer for all browser views and viewlets for issue #31\n [laulaz]\n\n- Added createcoverage\n [sgeulette]\n\n- Improve jquery selectors to be more precise and fix issues #34 and #35\n [ferewuz]\n\n- Add support for Italian date format [cekk]\n\n\n2.3.3 (2014-02-05)\n------------------\n\n- i18n fix on light event view.\n [thomasdesvenain]\n\n- french translations.\n [thomasdesvenain]\n\n\n2.3.2 (2013-11-01)\n------------------\n\n- Added Brazilian Portuguese translation. [cleberjsantos]\n\n- Fix regression from 98af7649f04a74673ca83678073d56c8bb609243:\n ``zcml:condition`` condition for ``plone.app.contentypes`` was broken.\n Afaik zcml:condition does not match on class level, only on package level:\n it got no grip on class level. So imo its enough to match on\n ``plone.app.contenttypes`` if not, we need a different approach; here\n everythings working fine now.\n [jensens]\n\n\n2.3.1 (2013-08-23)\n------------------\n\n- Use ``plone.event.utils.pydt`` in\n ``Solgema.fullcalendar.browser.adapters.get_recurring_events``.\n ``IRecurrenceSupport.occurrences`` always expects ``datetime.datetime``.\n [rnix]\n\n- Define ``jq`` variable in JS for plone sites where ``jquery-integration.js``\n is not delivered.\n [rnix]\n\n- Fix fallback interfaces on import error. They must not be just ``Interface``.\n [rnix]\n\n\n2.3 (2013-07-09)\n----------------\n\n- Allow to have more that one type of item that can be added through the calendar right click.\n [fmoret]\n\n- Fixed zcml condition when plone.app.contenttypes is installed but not Dexterity.\n [fmoret]\n\n- Fix recurring event (using datetime not DateTime)\n [pbauer]\n\n- Fix selecting events based on criteria for Collections (AT and DX)\n [pbauer]\n\n- Add support for DX-Folders from plone.app.contenttypes.\n (This should be more generic to support all DX-based Folders)\n [pbauer]\n\n- Add support for DX-Collections (from plone.app.contenttypes)\n [pbauer]\n\n- Added specific form for Topic\n [fmoret]\n\n- Show the \"Calendar properties\" object tab not only when fullcalendar is the\n default view of an context but also if @@solgemafullcalendar_view is called\n on the context.\n [thet]\n\n- Check if the event can be adapted with IRecurrenceSupport in adapters.py\n [fmoret]\n\n\n2.2.1 (2013-05-22)\n------------------\n\n- Check-manifest support to help fixing broken release.\n [gotcha]\n\n\n2.2 (2013-04-11)\n----------------\n\n- Codebase cleanup.\n [thet]\n\n- 'month' url paramters are now passed with jan=1 and dec=12 instead of\n javascript notation.\n [thet]\n\n- Remove 'sfyear', 'sfmonth' and 'sfday' url parameters introduced within this\n development cycle and allow passing of 'year', 'month', 'day' and 'date'\n (which is an isoformat date) url parameters to Solgema views.\n [thet]\n\n- make labels of query sources clickable, too\n [fRiSi]\n\n- support for custom folder and event types.\n\n allow all objects implementing `Products.ATContentTypes.interfaces.folder.IATFolder`\n as subfolders\n\n configurable portal_type for events added via the calendar in calendar settings\n [fRiSi]\n\n- Fixed a bug, that no events have been shown on ``folder/subfolder-a/solgemafullcalendar_view``\n after a user has chosen which subfolders to display in the folderquery-form of\n ``folder/solgemafullcalendar_view`` (in case subfolder-a is in folder's availableSubFolders)\n [fRiSi]\n\n- Add formatting for nl language\n [smoussiaux]\n\n- Fixed error in javascript when trying to destroy a dialog box that has not been initialized.\n [fmoret]\n\n- Fixed problem with blocked scrollbar after validation error in add/edit\n form. Remark: the whole edit popup-thingy is very ugly this way.\n Refactoring needed.\n [thet, jensens]\n\n- Show current month by default instead of next month. In Javascript, the first\n month, January, starts with 0 and December is 11.\n [thet]\n\n- Fix events dict for ATContentType based ATEvent types, so that they are\n displayed again.\n [thet]\n\n- Trigger event after display form was loaded. thus it is possible to rebind\n events for loaded code.\n [jensens]\n\n- Rename IListBaseQueryTopicCriteria to more genric IListBaseQueryCriteria,\n includes BBB. This avoids confusion. Some PEP8fying.\n [jensens]\n\n- Enable ical export for new style collections\n [jensens]\n\n- portal_type works as topic criterion without issue in event sources.\n [seanupton]\n\n- Handle operator-only query strings accordingly.\n [thet]\n\n- Allow selection of initial view by request parameters.\n [rnix]\n\n- Fixed ajax called pages with json content (Diazo compatibility).\n [fmoret]\n\n- Fixed calendar navigation button toggle and add a transition.\n [thomasdesvenain]\n\n- Corrected output of plone.app.event iCalendar export to avoid nesting\n VCALENDAR blocks, rather wrapping 1..* VEVENT blocks inside one VCALENDAR.\n [seanupton]\n\n- Normalize ICS export line endings to match RFC 5545 requirements (consistent\n with what ATCT does, but using a function that could support possibly mixed\n or inconsistent line endings in source text).\n [seanupton]\n\n- Drag-and-drop supports dexterity-based plone.app.event type\n [seanupton]\n\n- plone.app.event Dexterity type compatibilty:\n * Conditional support overlay event display\n * iframe (quick) add form support\n * iframe edit support\n * drag-resize to change duration\n * indexer for full-day events uses IEventAccessor adapter\n * drag-and-drop support for discrete-time and all-day events.\n * Add menu support and event copy/paste compatibility.\n * Use get_uid() to support plone.uuid based UID.\n\n [seanupton]\n\n- getCopyObjectsUID() identically defined in two view modules, de-duplicated.\n [seanupton]\n\n- View adapters use UID getter (get_uid) indirection from browser.actions,\n supporting either accessor (AT) or property (dexterity) getting of\n start/end values on contexts, casting/normalizing all to DateTime\n (possibly from datetime.datetime for Dexterity-based contexts such as a\n type from plone.app.event). Added conditional adapter registration for\n plone.event.interfaces.IEvent to SolgemaFullcalendarEventDict.\n [seanupton]\n\n- Show object actions links in view popup, provide ability to link to event\n actions in new window/tab target without being forced to use context menu.\n [seanupton]\n\n- Fix form widget name in query string for dexterity-based plone.app.event\n type add form (minute input of each respective datetime field)\n [seanupton]\n\n- Conditional plone.uuid / plone.app.uuid support, with backward compatibility\n fallback. Use IUUID when available to lookup UID of item. Added utils.py.\n [seanupton]\n\n- When plone.app.event is both importable and installed as site product,\n display message indicating that browser adjusts events to local time.\n [seanupton]\n\n- SFDisplayAddMenu JSON outputs first portal_type found for a Type name in\n portal_types, will be necessary for plone.app.event+Dexterity support.\n [seanupton]\n\n- Replace search-based target folder selection widget with dependency on\n plone.formwidget.contenttree -- makes browing for a target folder more\n intuitive, also adds package and profile dependency.\n [seanupton]\n\n- Restored compatibility with plone.app.event and recurring events.\n [thet]\n\n- fixed bug when CriteriaItems is False\n [jensens, benniboy]\n\n- workaround for archetypes.querywidget bug see: https://dev.plone.org/ticket/13144\n [jensens, benniboy]\n\n- plone.app.collection compatibility added.\n [timo]\n\n\n2.1.2 (2012-08-22)\n------------------\n\n- Added adapters and view to be compatible with plone.app.collection.\n [fmoret]\n\n- Fixed bug with eventdropping in agenda\n [fmoret]\n\n2.1.1 (2012-06-06)\n------------------\n\n- Fixed some bugs in the adapters and actions (\"KeyError: Type\" when adding event and \"ComponentLookupError\"\n when workflow transition.)\n [fmoret]\n\n2.1.0 (2012-05-15)\n------------------\n\n- Added the fullcalendar_view for Folders. The view displays the events in the folder or use each subfolder as source.\n [fmoret]\n\n- Added the ability to add Google Calendar Sources to the fullcalendar in addition to Plone standard source.\n [fmoret]\n\n- Added Calendar widget to easily change the fullcalendar date.\n [fmoret]\n\n- Restored Plone 3.3.x compatibility\n [fmoret]\n\n- Added DaySplit View which shows the events in seperate columns regarding the selected collection criteria.\n [fmoret]\n\n- Use eventSources instead of events to get Events. Delegate the event's color attribution to fullcalendar.\n [fmoret]\n\n- Fix height of iframe in the popup for adding events in IE.\n [pbauer]\n\n- Created New 2.1.0 version as fullcalendar will no more be compatible with Plone under 4.x\n [fmoret]\n\n2.0.3 (2012-04-12)\n------------------\n\n- Fix infinite recursion error in SolgemaFullcalendarEventJS's __init__ method.\n [pbauer]\n\n- Fixed ical export on collection with plone.app.event installed.\n [vincentfretin]\n\n- Prevent that all pages become non-cacheable.\n SolgemaFullcalendarActionGuards wrongly inherited from BaseActionView which\n sets \"Pragma: no-cache\".\n [weberlar]\n\n- Many fixes on paste event feature.\n [thomasdesvenain]\n\n- Reccurence support uses adapter.\n [thomasdesvenain]\n\n- Added solgemafullcalendar_view for events also. (very useful with\n recurring events with a lot of occurrences)\n [fmoret]\n\n- Add z3c.autoinclude to target plone. No more need to include zcml in buildout\n [toutpt]\n\n- Check also for portal_type in the Topic query (not just 'Type').\n [jcbrand]\n\n- Hide the spinner after closing the add/edit event dialogs.\n [jcbrand]\n\n- Add a zcml browser:menuItem entry to give the dynamic view a human readable title.\n [jcbrand]\n\n- Add collective.js.fullcalendar as dependency in metadata.xml\n [jcbrand]\n\n- Add Italian translation\n [giacomos]\n\n- Add needed jqueryui plugins explicitly using registry.xml step\n [toutpt]\n\n- Add Nederlands translation\n [cirb]\n\n2.0.2 (2011-11-28)\n------------------\n\n- Fixed a bug on SFAllowedRolesAndUsersModify index\n that could make cut/paste actions fail on whole site.\n [thomasdesvenain]\n\n- Fixed ical export.\n [thomasdesvenain]\n\n- Calendar export works with plone.app.event future.\n [thomasdesvenain]\n\n2.0 (2011-10-18)\n----------------\n\n- Dependencies: Added collective.js.fullcalendar to product dependencies\n so that it installs automatically.\n [fmoret]\n\n- Fixed: Event adding/editing popupu is now resized on scroll to get the\n correct height.\n [fmoret]\n\n- Added: Extra css class added on events in calendar are now queries by\n adapters.\n [fmoret]\n\n- Fixed: Changed static CSS selectors (for undefined colors) so colors\n get applied correctly.\n [thomasdesvenain]\n\n- UI: a lock icon in displayed on private events.\n [thomasdesvenain]\n\n- ICal export of future events.\n [thomasdesvenain]\n\n- API: If event do not have a 'type-x' class,\n it is not displayed with a SF_x_light view in a popup,\n but a new window is open.\n [thomasdesvenain]\n\n- UI: query criterion labels are clickable.\n [thomasdesvenain]\n\n- Fixed: we needed 'Modify portal content' on calendar\n to change the transition of an event.\n Transition permission on event itself is enough.\n [thomasdesvenain]\n\n- Optimization: Huge optimization on calendar events getting.\n (More than 10 times faster)\n [thomasdesvenain]\n\n- API: Source of events are now adapters that can be customized.\n Provide an IEventSource adapter for a specific layer or context\n to get the list of events to display (or to export under ical).\n Adapter without a name will replace default source event.\n Adapter with a name will add a source event to default one.\n [thomasdesvenain]\n\n- API: Code cleanup to make color management easier to customize.\n - Cleanup component registration so that color filter is easier to customize.\n - Use an adapter to get event brain classes.\n [thomasdesvenain]\n\n- Refactor: remove ``solgemafullcalendar_`` prefix from most module names.\n [thomasdesvenain]\n\n- Refactor: Use collective.js.colorpicker and collective.js.fullcalendar package\n instead of embedding code.\n [thomasdesvenain]\n\n- Fixed: Fixed date formats in french.\n [thomasdesvenain]\n\n\n1.10 (2011-08-16)\n-----------------\n- Internationalization: Updated english translation Solgema.fullcalendar.po\n [fmoret]\n\n- Fixed: Changed generated CSS selectors for events on fullcalendar so colors\n get applied correctly.\n [davidjb]\n\n- Fixed: Avoid CSS generation throwing an error if colors haven't been\n specified yet and we have a non-existing colors dict.\n [davidjb]\n\n- Fixed: Allow add menu to display even if the current context (doesn't have\n a query specified yet.\n [davidjb]\n\n- Internationalization: Allow calendar properties form buttons to have a\n default English translation.\n [davidjb]\n\n- Internationalization: Fixing some French messages in the English translation.\n [davidjb]\n\n\n1.9 (2011-06-16)\n----------------\n\n- The ui-lightness skin for jqueryui has been removed. You can add your own\n jqueryui skin if you want to.\n [fmoret]\n\n- Added the possibility to choose short day name format\n (short: 2 characters or abbreviated: 3 characters).\n [fmoret]\n\n- Fixed: week-view didn't translate saturday.\n [pbauer]\n\n- Upgrade to fullcalendar-1.5.1. Remove unused js-files/\n [pbauer]\n\n- Add german translation and german date-formats\n [pbauer]\n\n- Show reccurring events if plone.event is available.\n [vincentfretin]\n\n- Security: use 'Change portal topics' permission\n to manage access to Calendar properties.\n [thomasdesvenain]\n\n- Security: check 'Add portal content' permission on target folder\n instead of 'Modify portal' content on calendar\n to allow adding an event on the calendar.\n [thomasdesvenain]\n\n- Fixed: disallow caching ajax action views,\n to avoid issues behind cache proxies.\n [thomasdesvenain]\n\n- Fixed: event popup is translated.\n [thomasdesvenain]\n\n- Fixed: adding 'all day' event add an event from 00:00 to 23:55.\n [fmoret]\n\n- Fixed: remove duplicated scroll in popup.\n [thomasdesvenain]\n\n- Fixed: closing popups after an event has been added works.\n [fmoret]\n\n- Internationalization: translation files generation with i18ndude.\n [thomasdesvenain]\n\n- Internationalization: fixed event popup translation.\n [thomasdesvenain]\n\n- Internationalization: calendar parameters tab\n and calendar display layout are internationalized and french translated.\n [thomasdesvenain]\n\n- Infrastructure : timezones forward compatibility.\n [vincentfretin, thomasdesvenain]\n\n- Infrastructure : plone.app.event forward compatibility :\n event view uses event_view macros by default,\n never use direct access to startDate and endDate attributes for timezones compatibility.\n [vincentfretin]\n\n- Infrastucture: use Generic setup to install some dependencies.\n [thomasdesvenain]\n\n- Infrastucture: hide upgrade profiles on Plone site creation form.\n Upgrade profiles don't appear in root profiles.\n [thomasdesvenain]\n\n- Pep8 & pyflakes.\n [thomasdesvenain]\n\n- Plone 4.1 compatibility.\n [thomasdesvenain]\n\n- Imported Solgema.fullcalendar in collective.\n [fmoret, thomasdesvenain]\n\n\n1.8\n---\n\n- Clicking on an event always asks for SFLight_event_view.pt. Allows the use of xdv theming\n (thanks to Sylvain Boureliou)\n\n- Comes with ui lightness 1.8.9 theme\n\n1.7\n---\n\n- Removed own jqueryui and added collective.js.jqueryui (Thanks to Thomas Desvenain)\n\n- Fixed views and javascript files (fix issue #17 and #20, Thanks to Christian Lederman!)\n\n- Fixed dependencies declarations (Thanks to Olav Peeters)\n\n- Added a small workaround to solve a conflict between base jqueryui css and custom jqueryui lightness css.\n\n- Based on fullcalendar 1.4.10 (Thanks to Adam Arshaw)\n\n1.6\n---\n\n- Fixed wrong call to getUrl method and completed with here/absolute_url\n\n- Fixed bad condition expression in actions (Thanks to Thomas Desvanain)\n\n- Added some steps to be sure (as sure as possible) that solgemafullcalendar_view remains in topic views\n\n1.5\n---\n\n- Fixed adapting content that is not attribute annotable.\n (changed indexer in catalog.py ) that fixes bug with plone.app.discussion.\n\n- Fixed cancel button and dialog close when editing. The edited event remained locked when closing dialog.\n\n- Fixed content type for solgemafullcalendar_vars.js\n\n\n1.4\n---\n\n- Now based on Fullcalendar v 1.4.8\n\n- Fixed IE7 bug (thanks to Kyle Homstead)\n\n- Added the subtopics display in solgemafullcalendar_view (thanks to Christian Ledermann)\n\n- Added a