Personal tools
Skip to content. | Skip to navigation
collective.cover is a package that allows the creation of elaborate covers for website homepages, especially for news portals, government sites and intranets that require more resources than a simple page or collection can offer. However, despite offering rich resources to build a cover, collective.cover also provides a very easy mechanism for managing its contents, built around a drag-and-drop interface. collective.cover is based on Blocks and Tiles, like Deco, the new layout composition system for Plone. Use cases Suppose you are running The Planet, a news site that has a bunch of editors focused on getting news on different topics, like Economy, Health or Sports. If you are the main publisher of the site, you may want to delegate the construction of the cover page of the Economy section to the people working on that section content, but you might not want them messing around the Sports section as well. Also, suppose you have the final game of the World Cup and the match is going to be defined on penalties: you may want to prepare a couple of cover pages and publish the right one focused on the team that won in the end. These are the kind of issues we want to solve with this package; we are still far from it, but that is the idea.
This library is an utility that helps developers to integrate vocabulary done using ATVocabularyManager to be imported using Generic Setup Python handlers and CSV sources. It also support LinguaPlone (if present). How to use Just import the createVocabulary function and use it: >>> portal_vocabularies = getToolByName(portal, 'portal_vocabularies') >>> from collective.csv2atvocabularymanager.csv_import import createVocabulary >>> createVocabulary(portal_vocabularies, fs_path, 'my.vocabulary.id', ... "My vocabulary", description='A vocabulary for...') Where: portal_vocabularies is the ATVocabularyManager tool created after installing it fs_path is a filesystem path of a folder, where you must put you CSV sources. If the code is called from a setuphandlers.py script, you can call something like: >>> os.path.join(os.path.dirname( __file__ ), 'vocabularies') This way the code will look for a "vocabularies" folder inside you project vid is the vocabulary id that will be created and a file with that name and ".csv" extension will be searched inside the fs_path folder. title is the title of the vocabulary description is the description of the vocabulary Also, you have other optional additional parameters: type_name If the portal_type name of the vocabulary created (default is "SimpleVocabulary") sortMethod is the sort method of the vocabulary null_values is a list of possible values that must be used as "null" (can be useful is your CSV is taken from a raw export from SQL database, and strings like "NULL" can be found inside the source). change_master_with_language_id is a boolean flag used to change the generated vocabulary term id, adding to it the language code suffix. CSV format examples A CSV file named "foo.bar.vocabulary.csv" in that format: "id","en" "item-1","Item one" "item-2","Item two" ... Will create a vocabulary entry with id "foo.bar.vocabulary", with vocabulary terms ids "item-1" and "item-2", ... and titles "Item one", "Item two", ... The header row is required. While the id column's name is not used, that language column name is used to specify the vocabulary term language code (so: normally use the portal default language). You can also import item in different languages: "id","en","it" "item-1","Item one","Elemento 1" "item-2","Item two","Elemento 2" ... In that way you will create same terms as in previous example, and additional vocabulary terms with ids "item-1-it", "item-2-it", ... and titles "Elemento 1", "Elemento 2", ... You can provide additional languages addim more columns. Just remember to keep the fist language column as the one with portal default language. The real power of language columns will be used if you also install LinguaPlone. In that way you will create translations of vocabulary terms. Final notes Please, keep in mind that ATVocabularyManager already support Generic Setup integration for creating vocabularies at install time. However you are foced to use the "IMS VDEX Vocabulary File". Please note also that vocabulary implementation from ATVM already provides a importCSV method.
Provides local configuration for collective.dancing, thus allowing for news letter channels to be context-based. This is done by registering local utilities for channel lookup. UI-wise this is done by having a additional boolean field in the settings schemata injected by archetypes.schemaextender.
Singing & Dancing is the next generation newsletter Product for Plone. It's an out of the box solution that works without modification for most of your use cases. And should you find something that Singing & Dancing can't do, it's built to be easily extended via plug-ins using the Zope 3 Component Architecture. Features Modern and extensible Singing & Dancing builds on the latest and greatest efforts in the Zope and Plone world. It makes heavy use of the excellent z3c.form library and the Zope 3 Component Architecture. This allows you to easily plug in and extend Singing & Dancing to fit your needs. Well tested An extensive suite of automated tests make Singing & Dancing exceptionally stable and reliable. We currently have 200+ tests. Singing & Dancing is not gonna leave you in the lurch! Fully managable through the Plone interface Singing & Dancing is fully usable out of the box. An extensive set of forms reachable through the configuration panel let you as the user configure many details of your newsletters, like when they're sent (periodically or manually), what is sent (through the use of the Smart Folder interface, or manually), and to whom. Subscriptions Singing & Dancing uses confirmed subscription, i.e. subscribers receive an e-mail to confirm their subscription. Users can subscribe via a standard subscription form that lists all available newsletters in the site, or through individual subscription forms, e.g. in portlets.
This product patches the elements that shouldn't been show in newsletter with Singing and Dancing. It add content-history id and DocumentByLine class to the list.
Additional columns for Plone and DataGridField
collective.dexteritytextindexer provides a dynamic SearchableText indexer for dexterity content types. It makes it possible to index fields of multiple behaviors as SearchableText.
This package extends the standard theming middleware of Diazo to add the ability to read the location of a rules XML file from the WSGI environment. This means, amongst being able to read a rules location from the environment for the local user, that an upstream service (such as a web server, reverse proxy, caching proxy, etc) is able to control the theme the middleware is using – and change this for any given request. This contrasts with the configuration-based approach taken by Diazo’s standard middleware, which requires a fixed path to be specified for the middleware. So, this means with the right WSGI configuration, you could conceivably have one Diazo instance serving any number of themes without needing to explicitly configure paths, urlmaps or the like. If you combine this with a suitable front-facing tool (such as a configurable web server like Apache, Nginx, Cherokee, or any other), then you can have this one Diazo instance theming any number of applications, and theming differently based upon any condition your web server supports – such as incoming host name, HTTP vs HTTPS, specific URLs or regex, headers, IP addresses, and more. To achieve this, all you need to do is set the right HTTP header – which is the path to your rules file – and ensure this is sent to your middleware based upon your various conditions.
This package integrates documentcloud's viewer and pdf processing into plone. Example viewer: https://www.documentcloud.org/documents/19864-goldman-sachs-internal-emails Features * very nice document viewer * OCR * Searchable on OCR text * works with many different document types * plone.app.async integration with task monitor * lots of configuration options * PDF Album view for display groups of PDFs Works with Besides displaying PDFs, it will also display: * Word * Excel * Powerpoint * HTML * RTF Install requirements * docsplit: http://documentcloud.github.com/docsplit/ * graphicsmagick * ghostscript * poppler * tesseract * pdftk * openoffice(for doc, excel, ppt, etc types) * md5 or md5sum command line tool Async Integration It it highly recommended to install and configure plone.app.async in combination with this package. Doing so will manage all pdf conversions processes asynchronously so the user isn't delayed so much when saving files.
collective.doormat