Package: seantis.people
Municiaplities for which we contribute toOneGovoften require a public list
of contacts. For the customers and us this package needs to scratch the
following itches:The directory must not force a set of fields on the user. Each customer
should have the option to create its own set of fields. At the same time
there should be at least one reasonable standard.Some fields should only be visible with certain permissions.It must be possible to put people into various organizations and show the
membership of those organizations.Warning! There is currently an issue (https://github.com/seantis/seantis.people/issues/41)
which results in that publishing and expiration date of people are not working.DesignThis is how it is done:We give the user the possibility to define a list of people. Each list
consists of a number of dexterity objects with IPerson behavior. Within
one list only one dexterity type is allowed.This list of people is the same for all lists of people - it’s just that
the contained people must all have the same type.Through the schema of the dexterity type we define the fields, their
required read and write permissions, the fields shown in the list, the order
of those fields, the fields available for filtering in the list, and the
fields shown in the detail view.These dexterity types may be installed by any package or they may be included
in seantis.people, available through separate profiles. (It’s technically
even possible to create them through the web, but we don’t recommend this
approach for various reasons.)Any folderish type can be an organization. For people to be members of an
organization, a membership type can be added to such a folderish type. This
membership type links to the actual person object.We identify the organization solely by url and title. This makes
organizations very flexible. For example, withseantis.cover.peoplewe implemented organizations using collective.cover.Installation & UsageTo see what it’s all about install seantis.people using buildout (we assume
you know how to do that) and activate the add-on using the controlpanel.Note that we don’t provide any styling for seantis.people. We build onplonetheme.onegovand try to keep our HTML as simple as possible.Having installed seantis.people be sure to open the seantis.people controlpanel
found on the Plone controlpanel (under “Add-on Configuration”).There you can select the Person type you would like to use. Currently this
will without a doubt be “Seantis People - Standard”. To use it, click
“Install”:Having done that, go to the front-page or to wherever you want to place a list
of people and add them:On the people’s list you can now add people. You can only add people of the
same type together on the same list:Going back to the list you will notice that this person does not belong to
an organization. To add a person to an organization you can simply create
a folder with the name of the organization as its title:Finally, add the person to the organization by creating a membership and
referencing the person:Your list of people should now look something like this:StatusSeantis.people is used in production already. Though it’s one of our newer
modules so it hasn’t been as battle tested as some of our other offerings.Once we feel perfectly confident about this you’ll see a 1.0 release.AlternativesClose to our requirements (but no cigar):https://github.com/collective/collective.contact.coreRequirementsPython 2.7Plone 4.3+Linux / Posix (Windows may or may not work)Build StatusCoverageLatest PyPI ReleaseLicenseseantis.people is released under GPL v2ContributorsDenis Krienbühl [href]Marc Sommerhalder [msom]Jonas Baumann [jone]Changelog1.1 (2015-12-02)Move people specific styles from plonetheme.onegov to this package.
[lknoepfel]1.0.0 (2015-11-13)Add an additional organisation unit for PHZ.
[msom]0.32 (2015-10-08)Update the catalog after renaming a person #45.
[msom]0.31 (2015-05-03)Fix an error in ZodbMembershipSource #44.
[msom]0.30 (2015-04-09)Fix the temporary fix. Updates #41.
[msom]0.29 (2015-03-18)Enable referenceablebehavior on lists and memberships.
[jone]Update memberships if the parent folder has changed. Fixes #43
[msom]Provide a temporary fix for #41.
[msom]0.28 (2015-03-02)Check permissions in constrain types. Fixes #38.
[msom]0.27 (2015-02-05)Make sure “False” values are rendered and not omitted.
[href]Adds a renderer for choices.
[msom]Import/export translated titles of vocabularies instead of values. Closes #36.
[msom]Use unicode for selectable fields. Fixes #29.
[msom]Fix unicode error in import.
[msom]0.26 (2015-01-21)Fix metadata being out of sync. Fixes #34.
[href]0.25 (2015-01-19)Removed autofilter in XLSX files. This lead to problems with Excel.
[href]0.24 (2015-01-09)People types are now globally allowed - without hackery. Fixes #32.
[href]Fixes unicode decode error when searching for organizations with non-ASCII
characters in their title.
[href]0.23 (2014-12-18)Adds a custom catalog to manage generated indexes and metadata.WARNING!This change will leave the new catalog empty as we didn’t find a way to
setup the new catalog and reindex it at the upgrade stage. To fix this
go into the ZMI->seantis_portal_catalog->Advanced->Clean & Rebuild!Closes #23.[href]Adds a mechanism to define “export variants”. Export variants can adjust
the dataset of any people type. It’s used to add specific exports that build
on the standard people export.
[href]Adds the ability to exluce inactive people from the export.
[href]Adds the ability to export by workflow state.
[href]Exported XLSX files now automatically have the autofilter columns set.
[href]Adds localized date/datetime rendering.
[href]0.22 (2014-12-12)Fixes error when deleting a person with at least one membership. See #27.
[href]0.21 (2014-10-24)Adds a renderer for decimal numbers.
[href]Add a type css body class to the list view that contains the used type of
the list (if any).
[href]List fields can now be rendered using ‘comma-separated’ (default) or ‘ul’,
the latter creates a ul in html.
[href]Adds the ability to define render options on the list and detail view.
[href]Adds support for Set Choices and List Textlines in the import.
[href]Adds renderer for Bool field type.
[href]0.20 (2014-10-09)Adds a permanent work-around for the long standing issue #10.
[href]Makes sure that the persons are only available on the list of people.
[href]0.19 (2014-06-24)Adds a navigation bar to the person detail view. Fixes #17.
[href]The export now also works with richtext fields. Fixes #18.
[href]0.18 (2014-05-08)Adds the ability to do an unrestricted search on the people’s list.
[href]0.17 (2014-03-31)Adds support for url, date and datetime fields to the import.
[href]Adds the ability to export people to csv, xls, xlsx or json.
[href]Adds ‘is_active_person’ property which if present and False hides the given
person from the person list for anonymous users.
[href]Removes start/end on memberships. This module will no longer deal with
memberships over time. Where this is required, external modules like
seantis.kantonsrat have to do this themselves.
[href]Images on the people’s list are rendered smaller and in the detail view they
are rendered larger. Renderes now have custom options for this case.
[href]Adds the ability to define custom titles on the person. Currently the custom
title is only relevant for the detail view. To use add a custom_titles
dictionary to the person object with the key being the field anme and the
value being the title that should be used in the detail view.
[href]Adds a new LinkList type which may be used returned by person attributes.
The link list will be rendered using ul > li > a.
[href]Organization memberships are now queried by interface in the ZODB, rather
than by portal_type to support inheritance.Changes membership id/title to include the role as well as the name of
the referenced person. Closes #13.
[href]Fixes a crash when viewing a public directory with private organisations.
Closes #12.
[href]Adds a note field to the membership.
[href]Adds the ability to define the years_range for plone.formwidget.datetime
widgets used in the schemas. Fixes #11.
[href]0.16 (2013-12-31)Fixes a number of issues with zodb membership source.
[href]Adds the ability to define custom membership functions on the detail view.
[href]Adds the ability to define custom compound columns in other packages.
[href]Adds missing profile dependencies for membership type.
[href]Hides start/end on memberships, until it is properly implemented.
[href]0.15Adds very basic json export people list.
[href]0.14Adds the ability to import images through urls.
[href]Organizations defined through memberships are now clickable in the list
view. This is the default in the standard type.
[href]Adds a standard profile which is more or less compatible with
egov.contactdirectory. Fixes #6.
[href]Rename responsive-table to responsive to be compatible with latest
plonetheme.onegov release.
[href]Adds custom event to signal changes in memberships.
[href]Updates German translation.
[href]0.13Adds the ability to install and upgrade profiles with custom people types.
This can be done using the new seantis people controlpanel.
[href]Removes import action from PHZ type.
[href]Renames PHZ to PH Zug.
[href]Ensures that imported strings are stripped of their whitespace in front and
at the end.
[href]Redirect to person list after succesful import.
[href]Fixes required fields error not showing up on import.
[href]0.12PHZ portrait should be optional.
[href]0.11Supports new responsive-table helper in plonetheme.onegov.
[href]Hides first-/lastname on PHZ detail view.
[href]Adds link to a detailed portrait of the employee for the PHZ.
[href]0.10Changes German translation of “Organisation Unit 2” for PHZ.
[href]0.9Adds membership rendering to detail view.
[href]0.8Adds collective.cover support as an extra
[href]Memberships can now be defined dynamically through the MembershipSource
adapter.
[href]0.7Hide label of images in the detail view.
[href]Adds rendering support for these field types: Text, RichText, Lists.
[href]Adds custom type for Pädagogische Hochschule Zug.
[href]Adds ability to filter attributes returning lists in the table.
[href]Adds ability to use custom titles on columns.
[href]0.6Adds detail view with configurable positioning through schema attributes.
[href]Fixes not showing the selected filter after a refresh.
[href]0.5Supports supermodel security permissions in the people’s list (giving the
ability to hide certain fields in the table depending on the user).
[href]Fixes filter.js being unable to filter for empty values.
[href]0.4Ensures that the title is updated when the object is modified.
[href]The first letters are now taken from the sorted title.
[href]The title attributes order is now independent of the field order.
[href]Fixes a number of unicode issues.
[href]0.3(skipped by accident)0.2People are now sorted by unicode collation.
[href]The people can be filtered by the first litter of the title.
[href]0.1Initial release.
[href]