cybertools/organize
2012-05-20 15:55:35 +02:00
..
browser bug fix: handle id of non-existing client correctly 2010-02-27 10:54:48 +00:00
locales add .po file metadata 2011-11-15 11:44:05 +01:00
__init__.py created 'cybertools.organize' package, removed 'cybertools.contact', moved imports (in testing code only) of the latter package to the former one. 2006-05-10 16:10:51 +00:00
configure.zcml work in progress: task management: creation of work items OK 2008-12-29 12:27:46 +00:00
formmanager.txt move doctests from cyberapps.tum to cybertools.organize 2011-01-15 16:13:48 +00:00
interfaces.py start work on complex services/events (e.g. conferences) 2011-01-16 14:46:43 +00:00
party.py allow hiding of controller macros, e.g. portlets 2008-10-17 09:38:41 +00:00
README.txt move doctests from cyberapps.tum to cybertools.organize 2011-01-15 16:13:48 +00:00
service.py start work on complex services/events (e.g. conferences) 2011-01-16 14:46:43 +00:00
servicemanager.txt start work on complex services/events (e.g. conferences) 2011-01-16 14:46:43 +00:00
task.py extend composer.schema for better support of customized schema factories 2008-02-12 11:40:12 +00:00
tests.py provide special dropdown field instance in order to correctly display vocabulary values; make field instance lookabe more tolerant: use default field instance if named adapter not found 2011-07-24 16:58:15 +02:00
work.py make subclassing of WorkItem easier by parameterizing type interface 2012-05-20 12:05:49 +02:00
work.txt allow editing/creation of work items by others (creator, admin), take party/userName from previous work item instead of current user 2011-08-12 08:51:05 +02:00

==================================================
Organizations: Persons, Institutions, Addresses...
==================================================

  ($Id$)

  >>> from zope import component


Persons and Addresses
=====================

Let's start with a Person:

  >>> from cybertools.organize.party import Person
  >>> john = Person(u'Smith')
  >>> john.lastName
  u'Smith'
  >>> john.firstName
  u''
  >>> john.birthDate is None
  True
  >>> john.addresses
  {}

A Person object knows the age of the person:

  >>> john.age is None
  True
  >>> from datetime import date
  >>> john.birthDate = date(1980, 3, 25)
  >>> now = date(2006, 5, 12)
  >>> john.ageAt(now)
  26
  >>> john.age >= 26
  True

  >>> john.firstName = u'John'
  >>> john.firstName
  u'John'

Addresses
---------

Let's create an address and assign it to a person:

  >>> from cybertools.organize.party import Address
  >>> addr = Address(u'New York', u'Broadway 1')
  >>> john.addresses['standard'] = addr
  >>> john.addresses['standard'].street
  u'Broadway 1'


Tasks
=====

  >>> from cybertools.organize.task import Task


Service and Form Management
===========================

See servicemanager.txt and formmanager.txt.