# $Id$ OGoForms ======== This libraries provides some common facilities for OpenGroupware.org forms. The binding of forms to the project module is located in the SkyP4Forms directory. Right now OGoForms use (like Publisher) the NGObjDOM rendering system - in the future that should be changed to WOX based templates. NGObjWeb extensions =================== WOComponent(Forms) - adds: - (id)formWithName:componentClass:content: - creates a SkyComponentDefinition, loads the content - instantiates the definition using WOApp resource-manager - (id)formWithName:content: - (id)formWithName:url: (retrieve source using NSURLHandle) WOComponent(Compability41) - just adds: -isScriptedComponent (NO) WOComponent(SkyJSSupport) - adds JS: - formatNumber(), parseNumber(), formatDate(), parseDate() - SendMail() (returns a new SkyJSSendMail object) - alert() (sets SKYRiX error string) WOSession(JSLog) - adds some methods for supporting the JavaScript log - adds: -addJavaScriptLog:, -javaScriptLog, -clearJavaScriptLog OGoResourceManager(LookupXML) - not sure whether this is still required, states: this category can be used to support XML Form files as SKYRiX WO components - but nobody wants to use forms as components ? SkyEmbedForm (subclass of WOComponent) - ivars: formURL, formName, formClassName, componentDefinitionClass, formData - caches: formComponent, template - what does it do ? who uses SkyEmbedForm ? - I think this class can be removed, see SkyProject4/ChangeLog 2001-02-21 SkyFormComponent (subclass of LSWComponent) - SkyProject4 uses subclass SkyP4ViewerFormComponent - has a shadow, a template and remembers whether it was evaluated - overrides - templateWithName: (just calls -template) - template (assumes a set template !) - setTemplate: (probably invoked by SkyComponentDefinition during init) - syncSleep, syncAwake (calls JS awake() and sleep() if available) - overrides (just for wrapping exception handler) - (void)takeValuesFromRequest:inContext: - (id)invokeActionForRequest:inContext: - (void)appendToResponse:inContext: all call _handleException:inContext: on exception - adds: - _handleException:inContext: (sets SKYRiX error string) - addJavaScriptLog: - jsMapContext (returns session's jsMapContext) - _evaluateTemplateJSInContext: - _evaluateServerSideJavaScriptsOnDOM: (collect