person component for the CubicWeb framework
person provides person informations :
If the addressbook cube is used, persons will also have phone and postal_address relations to store more contact information.
There is a special relation called ‘primary_email’. A person can be linked to multiple email addresses (using the ‘use_email’ relation). The primary email must be unique. At the creation of the first email, this relation is automatically added (though you can change it later, of course).
In addition of basic entity views, this cube provides :
(.. _VCard on wikipedia: http://en.wikipedia.org/wiki/VCard) .
This view creates a file called vcard.vcf which can be open in your addressbook application (Kmail, Thunderbird and so on). In order to generate this file, you have to access to a specific view using an url address with ?vid=vcard suffix.
How to personalize the person primary view in order to add a link for the vcard ?
class PersonalizedPersonPrimaryView(PersonPrimaryView): def render_entity_attributes(self, entity): super(PersonalizedPersonPrimaryView, self).render_entity_attributes(entity) self.w(u'<div><a href="%s">export contact as vcard</a></div>' % entity.absolute_url(vid='vcard')) This view will not be selected by default. You have to registered this view or add a selector. For more information, please refer to XXX in the doc.
a civility facet, this facet (XXX: ref to facet doc) will be shown if a view displays a result set of at least two Person entities with different civilities.