--- lib/A3C.pod 2008/06/19 21:24:26 208 +++ lib/A3C.pod 2008/06/20 12:27:13 210 @@ -6,8 +6,8 @@ This page describes general idea about A3C application and current status of implementation. -Oppinions should be attributed to Dobrica Pavlinusic, and not other developers :-) -It's surposed to convey a story which is coherent enough for new developer +Opinions should be attributed to Dobrica Pavlinusic, and not other developers :-) +It's supposed to convey a story which is coherent enough for new developer to join into project. Most of other documentation is more useful when developing and looking into code usage (if it's not documented and tested, it doesn't exist) but this part is delivered as pure POD for reading pleasure. @@ -27,7 +27,7 @@ This method is not perfect, and shouldn't be used instead of Jifty models just to write SQL because it doesn't do any permission checking. However, -it's a huge help for compex C and C queries which are hard +it's a huge help for complex C and C queries which are hard to express using L. If we needed to generate those queries from within program (from user data, @@ -35,26 +35,26 @@ =head1 LDAP -Implement LDAP entry and edit interface (insteresting problem since most +Implement LDAP entry and edit interface (interesting problem since most entries can have multiple values which doesn't map nicely to relational schema). +This task can be broken down into following parts: + =head2 Multiple values -When creating records with ARRAY values C +When creating records with ARRAY values L joins values with magic marker between them to make rest of Jifty happy. Plan is to use full-text search engine to search over data anyway, so this is not serious limitation. If needed, something like bitmap indexes could be -used at database level to expose thouse values for filtering. For joins we +used at database level to expose those values for filtering. For joins we would probably need separate materialized many-many tables which could be created more-or-less automatically in L. -This can in turn be broken down into following tasks: - =head2 Import data from existing LDAP server -C has embedded documentation and uses +C has embedded documentation and uses L L is user interface to L and L @@ -69,16 +69,16 @@ =head2 Create new entries and edit existing ones -We are in the middle of migaration from (generic) L and +We are in the middle of migration from (generic) L and L to our custom L and L -Most views I guess, will be implemented by subclassing L. +Most views I guess, will be implemented by sub-classing L. Right now L is such implementation. Planned C will implement another such view, and I hope to see some kind of code reuse there (which should probably move to -C. +C). =head2 Virtual LDAP server to publish data @@ -98,7 +98,7 @@ Configuration files in PHP is only place in which part of portal configuration is specified. To handle it in A3C, we use -L which agregates all instance data. Parser is +L which aggregates all instance data. Parser is implemented by L =head2 Connect to remote database @@ -114,7 +114,7 @@ C (which doesn't link well from on-line documentation so you will have to take a look in C) implements pure DBI code (ported from php) to access data directly. Keep in mind that this data have to be -cached for any resonable performance. On the other hand, data can be +cached for any reasonable performance. On the other hand, data can be structured usefully, for example trees are structured in useful way for direct output to JSON. @@ -122,7 +122,7 @@ errors in data using same CSS class in views. This might be useful convention. I prefer to keep this file documented up to level that make it's usage from Jifty and -C makes sanse, but not more than that. +C makes sense, but not more than that. =head1 HTML @@ -154,6 +154,6 @@ =head1 BUGS Many probably, documented in C which is also useful for quick overview -what changed between versions if svn commit log is too detailed allthough +what changed between versions if svn commit log is too detailed although first line of commit message might be good summary of each individual change.