You are here: Home

Modified items

All recently modified items, latest first.
RPMPackage collective.z3cform.widgets-1.0b11-1.lbn25.noarch
A widget package for Dexterity projects.
RPMPackage collective.z3cform.select2-1.3.4-2.lbn25.noarch
Features select2 multivalued facetednavigation widget for 2-level vocabulary created with collective.taxonomy. Select “Select2” criteria in facetednavigation and select a taxonomy. select2 multivalued z3c.form widget that works nice with 2-level vocabulary created with collective.taxonomy Upon installation, the default zc3form widget for List/Set of Choice will be select2 based. If you don’t want this behavior, you can exclude collective.z3cform.select2.widget adapters.zcml with z3c.unconfigure. Theming The widget was developped initially for a bootstrap 3 theme and fontawesome. There is a search button icon left to the select that upon click open the select. If your site doesn’t have a bootstrap based theme, you may want to add this css rule to your project to hide the tiny button: button[data-select2-open] { display: none; } The z3cform widget in display mode uses the badge class, without a comma separator so it may be confusing when you don’t have style for the badge class. You can revert to a comma separated display by including minimal.zcml instead of configure.zcml, see Installation below.
RPMPackage collective.z3cform.quantitywidget-1.0-1.lbn25.noarch
numberwidget, HTML5 input type number implementation. It is called Quantity Widget because you can specify a quantity unit. Properties added to the widget: step : increment min_value max_value unit : the quantity unit (as text) unit_display : unit position (hidden, before, after)
RPMPackage collective.z3cform.mapwidget-2.1-1.lbn25.noarch
Map widget for z3c.form based on collective.geo.mapwidget. For more information about collective.geo, see the Coactivative home page.
RPMPackage collective.z3cform.html5widgets-0.1-1.lbn25.noarch
HTML5 widgets for Plone
RPMPackage collective.z3cform.datetimewidget-1.2.8-1.lbn25.noarch
z3c.form date and datetime widgets
RPMPackage collective.z3cform.datetimewidget-1.2.7-1.lbn25.noarch
z3c.form date and datetime widgets
RPMPackage collective.z3cform.datagridfield-demo-0.5-2.lbn25.noarch
This package provides the demo views for collective.z3cform.datagridfield. Examples of configurations are in the demo folder. Once you install this package, the demo views will be visible on your site. * http://localhost:8080/Plone/@@demo-collective.z3cform.datagrid
RPMPackage collective.z3cform.datagridfield-1.2-1.lbn25.noarch
This module provides a z3c.form version of the Products.DataGridField . This product was developed for use with Plone4/5 and Dexterity.
RPMPackage collective.z3cform.colorpicker-1.4-1.lbn25.noarch
collective.z3cform.colorpicker provides two different jQuery based widgets: Farbtastic, a simple color picker. jPicker, a jQuery Color Picker Plugin supporting transparency.
RPMPackage collective.z3cform.chosen-1.2.1-1.lbn25.noarch
chosen widget for z3cform (both chosen & ajax version)
RPMPackage collective.transmogrifier-1.5.1-2.lbn25.noarch
A "transmogrifier pipeline" refers to a description of a set of pipe sections, slotted together in a set order. The stated goal is for these sections to transform data and ultimately add content to a Plone site based on this data. Sections deal with tasks such as sourcing the data (from textfiles, databases, etc.) and characterset conversion, through to determining portal type, location and workflow state. Note that a transmogrifier pipeline can be used to process any number of things, and is not specific to Plone content import. However, it's original intent is to provide a pluggable way to import legacy content.
RPMPackage collective.taxonomy-1.5.0.dev0-2.lbn25.noarch
This add-on provides support for hierarchical taxonomies in multiple languages, letting users easily associate existing content with terms from one or more taxonomies. Taxonomy is the “discipline of defining groups […] on the basis of shared characteristics and giving names to those groups. Each group is given a rank and groups of a given rank can be aggregated to form a super group of higher rank and thus create a hierarchical classification”. Here’s an example of the “taxonomic kingdoms of life”: Living Organisms Living Organisms -> Eukaryotic Living Organisms -> Eukaryotic -> Simple multicells or unicells Living Organisms -> Eukaryotic -> Multicellular Living Organisms -> Eukaryotic -> Multicellular -> Autotrophic Living Organisms -> Eukaryotic -> Multicellular -> ... Living Organisms -> Prokaryotic Living Organisms -> Prokaryotic -> Archaebacteria Living Organisms -> Prokaryotic -> Eubacteria Living Organisms -> Prokaryotic -> Eubacteria -> ... Taxonomies can be quite large, sometimes in the tens of thousands (10,000+). And in sites with multiple languages, each title – or caption – must appear in translation. Note that the selection of a term in the hierarchy implies the selection of all its parents. In the example above this means that if “Eubacteria” is selected, then also “Prokaryotic” and “Living Organisms” will be. Overview The implementation tries to meet the following requirements: Support many (10,000+) terms. Terms can be organized in a hierarchical classification. Easily import and export in a common format (VDEX). Taxonomies will provide vocabularies that are translateable. Use behaviors to provide a choice field for each taxonomy. Manage taxonomies and assign to content types “through-the-web”. In the description below, we touch on each of these requirements. Data structure In order to limit both the memory and computation requirements, the term data is contained in exactly one persistent index per language, a mapping from the materialized term path to its term identifier. The term: Living Organisms -> Eukaryotic -> Simple multicells or unicells will be indexed under this path: "Living Organisms/Eukaryotic/Simple multicells or unicells" The index allows us to provide an iterator over the sorted vocabulary terms, virtually without cost (as well as containment queries). At the same time, while the hierarchy is encoded, we can quickly look up terms in a subtree. Note: As collective.taxonomy uses slash as separator, you have to monkey patch the PATH_SEPARATOR constant if you want to use ‘/’ in your terms. Data exchange While collective.taxonomy (this package) does make it possible to create, manage and edit taxonomies from a browser-based interface, the primary focus is to support the exchange of terms in the VDEX format: The IMS Vocabulary Definition Exchange (VDEX) specification defines a grammar for the exchange of value lists of various classes: collections often denoted “vocabulary”. This exchange is integrated with GenericSetup which manages imports and exports using setup profiles. It is also possible to use the controlpanel for importing and exporting VDEX files. The package comes with integration for the Dexterity content type framework: for each taxonomy, a behavior is available that adds a choice field which pulls its vocabulary from the taxonomy. The behavior is configurable in terms of field name, title and whether it allows the selection of one or more multiple terms. You should first install dexterity and then collective.taxonomy, otherwise the behaviors for the existing taxonomies will be missing. How does it work? The main objective during this project has been to get a high rate of through-the-Web administration. Therefore the use of the product will not require any Python programming nor configure.zcml directives. In the controlpanel (/@@taxonomy-settings), the user can: Import taxonomies from VDEX files. Export taxonomies existing to VDEX files. Delete taxonomies Add and delete behaviours for taxonomies When a new behavior is created for a taxonomy, it can easily be added to the desired content types using the content type control panel, provided by Dexterity. After this is done, the taxonomy is available on add and edit forms, and it is also available for collections, if plone.app.collection is used on the site. An index is also created, so the taxonomies can easily be used for catalog queries.
RPMPackage collective.monkeypatcher-1.1.2-1.lbn25.noarch
Sometimes, a monkey patch is a necessary evil. This package makes it easier to apply a monkey patch during Zope startup. It uses the ZCML configuration machinery to ensure that patches are loaded "late" in the startup cycle, so that the original code has had time to be fully initialised and configured. This is similar to using the `initialize()` method in a product's __init__.py, except it does not require that the package be a full-blown Zope 2 product with a persistent Control_Panel entry. Applying a monkey patch ======================= Here's an example:: <configure xmlns="http://namespaces.zope.org/zope" xmlns:monkey="http://namespaces.plone.org/monkey" i18n_domain="collective.monkeypatcher"> <include package="collective.monkeypatcher" /> <monkey:patch description="This works around issue http://some.tracker.tld/ticket/123" class="Products.CMFPlone.CatalogTool.CatalogTool" original="searchResults" replacement=".catalog.patchedSearchResults" /> </configure> In this example, we patch Plone's CatalogTool's searchResults() function, replacing it with our own version in catalog.py. To patch a module level function, you can use `module` instead of `class`. The original class and function/method name and the replacement symbol will be checked to ensure that they actually exist. If patching happens too soon (or too late), use the `order` attribute to specify a higher (later) or lower (earlier) number. The default is 1000. By default, `DocFinderTab <http://pypi.python.org/pypi/Products.DocFinderTab>`_ and other TTW API browsers will emphasize the monkey patched methods/functions, appending the docstring with "Monkey patched with 'my.monkeypatched.function'". If you don't want this, you could set the `docstringWarning` attribute to `false`. If you want to do more than just replace one function with another, you can provide your own patcher function via the `handler` attribute. This should be a callable like:: def apply_patch(scope, original, replacement): ... Here, `scope` is the class/module that was specified. `original` is the string name of the function to replace, and `replacement` is the replacement function. Full list of options: - ``class`` The class being patched - ``module`` The module being patched - ``handler`` A function to perform the patching. Must take three parameters: class/module, original (string), and replacement - ``original`` Method or function to replace - ``replacement`` Method to function to replace with - ``preservedoc`` Preserve docstrings? - ``preserveOriginal`` Preserve the original function so that it is reachable view prefix _old_. Only works for default handler - ``preconditions`` Preconditions (multiple, separated by space) to be satisified before applying this patch. Example: Products.LinguaPlone-=1.4.3 or Products.TextIndexNG3+=3.3.0 - ``preserveOriginal`` Preserve the original function so that it is reachable view prefix _old_. Only works for default handler - ``preconditions`` Preconditions (multiple, separated by space) to be satisified before applying this patch. Example: Products.LinguaPlone-=1.4.3 or Products.TextIndexNG3+=3.3.0 - ``ignoreOriginal`` Ignore if the orginal function isn't present on the class/module being patched - ``docstringWarning`` Add monkey patch warning in docstring - ``description`` Some comments about your monkey patch - ``order`` Execution order Handling monkey patches events ============================== Applying a monkey patch fires an event. See the `interfaces.py` module. If you to handle such event add this ZCML bunch:: ... <subscriber for="collective.monkeypatcher.interfaces.IMonkeyPatchEvent" handler="my.component.events.myHandler" /> ... And add such Python:: def myHandler(event): """see collective.monkeypatcher.interfaces.IMonkeyPatchEvent""" ...
RPMPackage collective.iconifiedcategory-0.23-1.lbn25.noarch
A dexterity behavior can be enabled and will add a field “content category” that will list available categories defined in a configuration. So you first have to define the categories by adding a ContentCategoryConfiguration somewhere. Then add a CategoryGroup on which some extra features may be activated : is content confidential? is content an element to print? is content an element to sign? If activated, these fields will be available on the content using the behavior. Then into a CategoryGroup, you will be able to add ContentCategory that are characterized by a title and an icon. These ContentCategory elements will be the terms of a vocabulary used to select a category on a content using the behavior. This package is widely overridable and is made to manage many usecases of iconified categories. A element that contains categorized content will display a special widget where categorized content are grouped by ContentCategory behind an icon. A table view is also available listing categorized contents with more details.
RPMPackage collective.hootsuite-1.1.2-2.lbn25.noarch
Plone module to subscribe content creation to a hootsuite account in order to publish a notification on hootsuite social networks every time a content is published schedulled with the publication date. Installation Just add the egg to the buildout configuration. Configuration At the hootsuite configuration panel (on plone control panel): You need a Hootsuite client_id and secret_key that needs to aproved by hootsuite app directory After saving the Hootsuite keys you should press connect link on the configuration panel to get the authorization code (alert it expires so you need to connect again after one year) When you have the token field you should press the refresh button in order to get the available services. After loading them you can choose at what services you want to push the notification. Finally you need to choose which content types you want to use When you have configured the content types and social networks the system will push a notification every time one content of this type is published (depends on workflow published). If the content has a effective date (publication date) it will schedule the notification to that moment.
RPMPackage collective.googleanalytics-1.5.0-4.lbn25.noarch
collective.googleanalytics is a product that integrates Plone with Google Analytics. It includes both tracking and reporting functionality. The product enables easy tracking of the standard Google statistics as well as external links, e-mail address clicks and file downloads. It also defines Analytics reports that are used to query Google and display the results using Google Visualizations. Reports are Zope objects that can be imported and exported using GenericSetup XML and modified on a site-by-site basis. The product currently provides a portlet that can display results of reports as well as a control panel for authorizing your site and configuring settings.
RPMPackage collective.glossary-1.0b1-1.lbn25.noarch
******************************.. contents:: Table of ContentsLife, the Universe, and Everything A Dexterity-based content type to define a glossary and its terms.This package is inspired in PloneGlossary_... _PloneGlossary: Harmless :target:
RPMPackage collective.elephantvocabulary-0.2.5-1.lbn25.noarch
Like elephants don't forget anything, so does not collective.elephantvocabulary. It provides a wrapper around for existing zope.schema vocabularies and make them not forget anything. Example usecase would be a vocabulary (source) of users which from certain point in time wants to hide / deactivate some users for form or listing. But at the same time you want keep old references to user term working. This is where collective.elephantvocabulary comes into the picture. With it you wrap existing vocabulary of users and provide set of hidden list of users (term values).
RPMPackage collective.deletepermission-1.4.0-2.lbn25.noarch
The default Plone permission for deleting content does not allow to delete content from a folder without being able to delete the folder itself. The collective.deletepermission package introduces an additional permission Delete portal content. By seperating the permission Delete portal content (I can delete this content object) from the permission Delete objects (I can delete something IN this folder), we now can allow a Contributor to delete content he created (Owner role) without letting him delete folders and objects belonging to other users - even in a nested environment.