Coding phase start is coming soon and Mostafa is working hard in preparing a prototype for extension views while discussing the strategy to solve certain issues regarding his project. I am talking particularly about his extension dependency on new powerful Joomla 1.6 ACL implementation. Workflows are compounded of stations or steps. A station has a particular position in the workflow, has a set of “fields” attached to it (e.g. rating, comment, file attachment) and is associated to an ACL group, responsible of providing values for those fields in order to move to the next station. However, Joomla 1.5 ACL implementation is quite simple, in our opinion, for users to enjoy its power in a full way as we have a limited set of groups with hard-coded privileges, usually non-configurables by the user.
Mostafa's solution is to write a kind of ACL wrapper, bridge or interface which encapsulates ACL implementation within his workflow extension. Joomla 1.6 is quite unstable to rely exclusively on it and the idea is to provide bridges for 1.5 and 1.6, both implementing this common interface. 1.6 bridge will be implemented when sure it is stable enough to trust it. If that does not happen before mid-term evaluation, 1.5 bridge will be implemented for this GSoC.
Other solution that we discussed was the use of an ACL extension to circumvent 1.5's lack of flexibility. We have considered JUGA and JACL plugin but Mostafa does not like the idea of relying on a 3rd party extension. JUGA is a commercial extension (even though JED says it is GPL licensed) and JACL plugin hacks Joomla! core which is not elegant. I agree with Mostafa's decision, however we would really appreciate to know other member's opinion as I have always trusted the power of peer review for finding solutions. Please comment this entry, it is really valuable for us.