Products.MightyCal.EventCatalog.EventSnapshot (version 1.5)
index
/home/zope/lib/python/Products/MightyCal/EventCatalog/EventSnapshot.py

EventSnapshot Class:  The purpose of this class is to provide a single location where
*all* interesting information about an Event can be collected in one place when needed.
For instance, the Event object is deliberately designed to carry only the most minimal
information: i.e. a bunch of Zope Properties corresponding to the IDs of the FieldSpecs
of its EventType, filled with appropriate values.  The Englishy names of the various
attributes of an Event, such as the titles of the various fields, are not contained within
the Event, nor are definitions for the default values or allowable values of the fields.
All of this information is to be found in the EventType object that, at it were, 'controls'
the Event.
 
The EventSnapshot, then, provides a place where, when needed, the information contained in
the Event itself can be combined with the information found in the EventType.  The intention
is to promote encapsulation, so that parts of the MightyCal that need to work with Events,
don't need to know how to talk to the Event object and the EventTypes (or their subsidiary
FieldSpecs, DataTypes and DataRangeProviders, etc.).
 
The EventSnapshot also provides the base class for DataEntryTransaction; the EventSnapshot
is more or less a read-only class, that acts as a carrier container for information about
Events.  The DataEntryTransaction class adds additional validation features, as well as
ZODB persistence.

 
Modules
            
Products.MightyCal.EventType.DataTypes
Dumper

 
Classes
            
EventSnapshot
TransactionField

 
class EventSnapshot
      A class that holds the field structure of a user-defined EventSnapshot type
 
  
__init__(self, eventType, eventId=None)
EventSnapshot constructor
addField(self, fieldId, rawValue, stringValue, possibleValues, fieldTitle, publicVisibility, fieldPropertyType, recommendedWidget, fieldDataType)
Used during the initial creation process of a EventSnapshot to add a slot for storing a field value, along with a validity status and error message.
describe(self)
getDataType(self, fieldId)
Retrieves the MightyCal DataType's name for the specified field.
getFieldIds(self)
Returns all of the FieldIds currently in this EventSnapshot
getFieldValue(self, fieldId)
Fetches a field value from this EventSnapshot
getFieldValueAsString(self, fieldId)
Returns the string value of the field, rather than the native Python value
getTitle(self, fieldId)
Retrieves the field title for the specified field.
getValidDataPoints(self, fieldId)
Retrieves the valid data points (aka possible values) for the specified field
isFieldPublic(self, fieldId)
Should the field be visible to non-administrative users?
setFieldStringValue(self, fieldId, value)
Sets a field string value.
setFieldValue(self, fieldId, value)
Sets a field value.

 
class TransactionField
       
  
__init__(self, rawValue, stringValue, possibleValues, fieldTitle, public, fieldPropertyType, recommendedWidget, fieldDataType)

 
Data
             APPROVED = 'approved'

BOOLEAN_PROPERTY_TYPE = 'int'

DATE_PROPERTY_TYPE = 'date'

EDIT_URL = 'editURL'

EVENT_SNAPSHOT = 'EventSnapshot'

EVENT_TITLE = 'eventTitle'

EVENT_TYPE = 'eventType'

EVENT_TYPE_COLUMN = 'eventType'

EVENT_TYPE_OWNER = 'eventTypeOwner'

FALSE = 0

FIELD_INDEX = 'FieldIndex'

ICON = 'icon'

INFO = 0

INTEGER_PROPERTY_TYPE = 'int'

KEYWORD_INDEX = 'KeywordIndex'

LIST_PROPERTY_TYPE = 'lines'

MEMO_PROPERTY_TYPE = 'text'

MODIFICATION_TIME = 'modificationTime'

OBJECT_MODIFICATION_TIME_INDEX_NAME = 'bobobase_modification_time'

OBJECT_TYPE = 'object_type'

STRING_PROPERTY_TYPE = 'string'

TEXT_INDEX = 'TextIndex'

TRUE = 1

USELESS_VALUE = 'abracadabra'

__file__ = '/home/zope/lib/python/Products/MightyCal/EventCatalog/EventSnapshot.pyc'

__name__ = 'Products.MightyCal.EventCatalog.EventSnapshot'

__version__ = '$Revision: 1.5 $'