[OGo-Discuss] OGo and asterisk, SUMMARY

Adam Tauno Williams discuss@opengroupware.org
Tue, 28 Nov 2006 07:42:50 -0500


> > - possibility to tag and move/copy/link the voice message to a project
> One of the techniques used on another project that I follow zope/plone is the 
> use of keywords as tags. This allows both searching, sorting and indexing via 
> keywords and is very useful for managing any form of content, as it can be 
> sorted by any of the associated metadata attached to the particular file: 
> author, date, release date, contact etc etc.

I think this is, at least in the backend, already supported.

> Keywords are managed in terms of permissions assigned to individual users 
> and/or groups. OGo already has this structure. How difficult it would be to 
> create a mechanism to add tags (ie: keywords) to OGo content is not known to 
> me but could possible be one method to address asterisk and blog/journal 
> requirements (at least in terms of input).

Should be very simple,  OGo provides "propertyManager", easily usable
like this - 
properties = [[[self getCTX] propertyManager] propertiesForGlobalID:eo];
propertyList = [[NSMutableArray alloc] initWithCapacity:6];
enumerator = [properties keyEnumerator];
while ((key = [enumerator nextObject]) != nil) {
  [propertyList addObject:[NSDictionary dictionaryWithObjectsAndKeys:
     key, @"property",
     [self _takeNamespaceFromProperty:key], @"namespace",
     [self _takeAttributeFromProperty:key] , @"attribute",
     [self NIL:[properties valueForKey:key]], @"value",
     @"objectProperty", @"entityName",
     nil]];
 }
- The WebUI already provides a [really primitive]
SkyObjectPropertyEditor in the document view.

To be useful though I think the interface would have to be smart enough
to provide different properties (for creation) based upon the type of
file.  That makes it a bit more complicated.  It seems like it would
have to be configurable somewhat like extended attributes are
configurable.

But if you are automatically importing some content then setting a set
of properties is pretty straight forward.