acorea

random thoughts and little goodies

Donnerstag, Juni 18, 2009

SVN trunk is not for production use!

I just added a README file concerning production use to the root of tine20 trunk:
Do not use the Tine 2.0 SVN trunk version on a production server:
The trunk should be seen as a development code and *not* suitable for production use.

Production servers should only run the official Tine 2.0 releases from http://www.tine20.org/download.

The Tine 2.0 SVN trunk
- will contain new features that have only undergone limited testing and may corrupt data and/or return incorrect results.
- may create database formats/tables that are not upgradable to future releases of Tine 2.0. Databases created by official Tine 2.0 releases will be upgradable to future versions.
- may not supply update scripts for database or other changes. It might be necessary to uninstall and reinstall applications for the changes to take effect.

Nevertheless we highly appreciate testing of the SVN trunk and user feedback and/or bugreports:
You can send bugreports via
- the build in bugreporting tool.
- the forum (http://www.tine20.org/forum).
- the bugtracker (http://www.tine20.org/bugtracker/index.php).

We also like to have your feedback to new features and suggestions for improvements. You may put these in our forum at http://www.tine20.org/forum as well.

Now go and have fun with Tine 2.0 ... :)
We are going to the LinuxTag in Berlin in the next week. Come and meet us there at our booth if you like ... :)


Labels: , ,

Mittwoch, Mai 06, 2009

tine 2.0 email client


I have been working on the tine 2.0 email client for the last few days and I am making fast progress.

The new Felamimail IMAP client is at the moment able to fetch and cache mails and folders, get the message contents and show the mail flags (unread -> bold row, answered -> icon, forwarded -> icon, flagged -> row in red font color).

As next steps I am going to implement the 'write new mail' and 'reply'/'forward' functions and the handling of file attachments.

Lars is working on the ActiveSync support for emails. When this is finished, we are able to push emails to mobile clients!

Labels: , , ,

Dienstag, November 04, 2008

major (php-)refactoring and documentation updates

I have been refactoring our backend, application structure and bootstrapping in the last few weeks.

In the backends, we extend the abstract sql backend class which contains all the standard functions like create, update, delete, etc. and is able to handle the different records and database tables.

Our application structure also changed a little bit. I updated the documentation in the wiki.

The bootstrapping process has been revamped as well. We splitted the Tinebase_Controller and created a new Tinebase_Core class which now does all the initialization work and can be used to get data from the registry (like the database adapter, current user, ...).

More new wiki articles cover the Exceptions concept and a HowTo for building a Tine 2.0 application (still work in progress).

Labels: , ,

Dienstag, September 16, 2008

fonts in pdf export

We are using the Zend_Pdf module from Zend Framework to create the PDFs for the contact and lead export functionality.

Sadly, the build-in type1 fonts of Zend_Pdf don't support unicode characters. But we have added the possiblity to include your own fonts (in truetype or opentype format) to display more exotic characters. I got some good results with the DejaVu font that came with OpenOffice on my Ubuntu system. This feature is part of the upcoming beta1 release.

To include your fonts, you have to add the following lines to the config.inc.php in the tine root dir and adjust the paths and embed setting:

'pdfexport' => array(
'fontpath' => '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf',
'fontpathbold' => '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf',
'fontembed' => true
)

Does anybody know a (tt or ot) font that has full unicode support?

Labels: , , , ,

Dienstag, September 02, 2008

tine 2.0 roadmap updated

we just updated the tine 2.0 roadmap and added more milestones and issues/features to it.

we plan to release the tine 2.0 beta1 (feature freeze) and beta2 (bugfixing, translations and missing unittests) in september.

there is already an outlook on future features (see section "on the horizon").

Labels: , , , ,

Donnerstag, Juli 17, 2008

profiling with xdebug and KCacheGrind

One of my last tasks was to rewrite the functions for searching for contacts in the Addressbook application. At one point, I wondered why it took so long to fetch some contacts from the database and display them in the addressbook.

To analyze the control flow of the searchContacts() function, I used xdebug to create a profiling log and KCacheGrind to visualize the the function calls, the execution time and the control flow of tine 2.0.

After I got accustomed to this kind of visualisation, I quickly found the function that was responsible for the long execution times and was able to improve it and make it faster.

We plan to implement caching of data in the next milestone to improve the performance even more.

If you want to know more about profiling with xdebug read this article.

Labels: , , ,

Montag, Juli 14, 2008

eclipse, mylyn and mantis

I just installed the Mylyn plugin for Eclipse and connected it to our mantis bugtracker. Mylyn is an integrated task management system for eclipse that allows you to keep track of all tasks of your project. It manages task contexts (such as important files for that task), task schedules, task lists, svn change sets and more. Sadly, the PHP bridge is not available in Eclipse PDT at the moment, but it is scheduled for PDT 1.1.

Read this article about Mylyn if you want to know more.

Labels: , , ,

Donnerstag, Mai 15, 2008

roles and rights management

the new role based rights management is now working and will replace the old user/group based rights management. i added a new dialog to the admin application where the administrator can define new roles, add members (users and groups) and define the rights for the roles.

the setup creates two roles: the user role (which has only the right to run all applications except the Admin application) and the admin role (has all rights).

more rights will be added to the applications soon.

Labels: , , , ,

Montag, April 21, 2008

Application rights management

another crucial function has been implemented in tine 2.0: the application rights management. you can set these rights in the admin/application dialog by double clicking on an application or pressing the 'settings' button. in this dialog, you can search for groups and users and add or change their rights for this application.

at the moment we just have the 'admin' and 'run' rights, but more rights (for example the right to create shared folders) will follow soon.

if you update an existing installation you have to create new database tables and rerun the setup.php. but dont't despair, we'll add an update function for the setup very soon.

Labels: , , , ,

Montag, April 07, 2008

groups management

i extended the admin application with some new functions. it is now possible to create and edit groups. i also added javascript controls for adding and removing users to a group in the group edit dialog. that was another step for our accounts and groups management.

while implementing these new features i learned the basics of the mighty extjs framework and gained some more experience programming javascript.

i think we'll publish a new demo version soon. then you can at last try out the new features of tine 2.0 we have been talking about in the tine blog for the last few weeks.

Labels: ,

Mittwoch, März 26, 2008

pdf export

i just added another new feature to the tine groupware:

it is now possible to export a contact from the addressbook in pdf format. to do that you have to select a contact from the address list and then click the "export contact" button.

i will soon implement the export for multiple contacts and the possibility to export leads from the CRM.

Labels: ,

Montag, März 17, 2008

user registration

i just finished the implementation of a new feature: the user registration.

to activate it, you have to add a new section in the config.ini file with the option "active = 1". when it is active, you'll get a "register"-button in the login dialog. the user is then able to register with his name and email address and he'll get an email with username, password and an activation link. if the user activates his account, the expiry date (another configuration option) will be reset.

visit this wiki page for more information: link

Labels: ,

Dienstag, März 11, 2008

revision 1000!

i just committed the revision 1000 to the tine 2.0 svn repository ... :)

i'm working at the moment on the user registration functions (self registration and invitations) and i'll anounce it here when it's finished.

Labels: ,

Freitag, März 07, 2008

tine 2.0 phpdoc update

i'm the new guy in the tine 2.0 (a brand new opensource groupware application and a refactoring of eGroupware) development team. i'll keep you up to date with my work on this ambitious project.

my first task was to update the phpdoc comments for the api documentation of tine.

i'm looking forward to do some real programming soon ... ;)

Labels: , ,