After having participated in Google Summer of Code (GSoC) the second time we are looking back at a truely successful summer where five students worked on projects for TYPO3 4.x, FLOW3, and TYPO3 5.0. After GSoC came to an end we would like to give you an overview of the achievements made this summer.
Enhanced Usability for the List Module
Nuwan's proposal for the project included ideas to introduce collapsing and expanding tables in the list module by using AJAX, introducing modal dialogs for detail information instead of the currently used pop-up windows, in place editing, drag & drop sorting, and a quick search feature. At the end of the summer Nuwan completed all the tasks except of the quick search, but added dynamic selection of columns to display on top of the planned feature set.
Being completely new to TYPO3 Nuwan first struggled with current documentation, missing tutorials, and getting into TYPO3 development in general. Thanks to the help by his mentors, Thomas and Tobias, he then got into the right direction.
Nuwan is looking forward to finish the missing features and providing more extensions for the core.
Generic i18n and l10n strategy for FLOW3 and TYPO3 v5
Karol reports that GSoC was a great experience, made him learn many new things and improved his programming skills. Looking back to his inital proposal he completed most of the tasks. Some details changed during implementation while others became harder than expected and again other tasks turned out to be easier. For more details you can take a look at <link http: flow3.gusak.eu category google-summer-of-code>Karol's weekly reports. As it looks now Karol will also stay around with the FLOW3 project, taking further care of his project.
Enhanced Media Content Element
Not all of the goals for the enhanced media content element have been reached but those which are finished are quite nice. So it's now possible to use a video's page URL like YouTube to embed the video on a page, before that you needed to know the exact URL of the video itself. For such videos the media content element will now also fetch preview thumbnails, though it'll need a little more work to display them on a page.
Modular Community System
Pascal managed to create a community extension based on extbase and fluid. As he had experience with the new way of extension development he found it quite easy. Most of the basic features for a community system are implemented. However, to eventually make everything work we need to wait for two issues in extbase to be fixed.
Private Resource Handling for FLOW3 / TYPO3 5.0
As resources in FLOW3 are represented by persisted “Resource” objects it seemed reasonable to implement a solution for content security in general. While discussing the concepts Andreas and Robert came to the conclusion to first implement a solution for generic security policies for persistable objects.
Andreas found a solution to automatically rewrite queries by using FLOW3's AOP mechanism so that now there is no need to explicitly write security constraints for queries to the persistence layer anymore.
To eventually protect private resources from unauthorized access the publishing process is also intercepted using AOP and their publishing path is being extended by a secret component.
The publishing feature still needs some more work, bur Andreas is going to finish that for the next FLOW3 release at T3CON10 in Frankfurt.
Summary
Looking back at what has been achieved by the students and having won new contributors for the TYPO3 project we can see this year's GSoC as a huge success for TYPO3 and its community. All the students passed the final evaluation, congrats to all of you! Thanks also to the mentors who helped the students to find their way into TYPO3 and offering a guiding hand. We are already looking forward to participating in next year's Google Summer of Code again.
If you want to be a mentor yourself, don't hesitate to contact <link>Ingo. Mentoring is a constant process and is not limited to theperiod of Google Summer of Code only. We'Re constantly looking for people who want to help new contributors to find their way into the community.
Come for the code, stay for the fun and the community.