Drag and Drop files to upload attachments

Before a few days, I wrote a plugin for the opensource webmail, roundcube. I consider roundcube api very well documented and it gives you the opportunity to extend its features. I wanted to upgrade roundcube webmail from version 0.4.2 to 0.8.0 and after this process I wonder what kind of plugins I could add to this fantastic webmail? I went to the repository of the roundcube plugins and I saw with surprise a plugin Drag Upload. I consider this feature very useful. I tried to install this plugin but it was not compatible with roundcubemail 0.8.0.

I thought that I have the source code from this plugin and the documentation of the roundcubemail, why not to try to create a plugin with this feature for the new api of the roundcubemail. I gave it a try and I created the dragndrop_attachments plugin that you can find at github: https://github.com/strimpak/dragndrop_attachments

or at the roundcube plugin repository: http://trac.roundcube.net/wiki/Plugin_Repository


This plugin uses the file api of the html 5 that gives you a lot of space to create beautiful things!

You can send me bugs or advices using the contact form or comments to this post.

PEAR Net_SMTP class

If you have enabled the smtp server at horde mailer settings then you have to install the Net_SMTP package from pear.

You can check your conf.php file under config folder

One way to do this is to cat this file and grep mailer

cat conf.php | grep mailer
$conf['mailer']['params']['host'] = 'mail.example.com';
$conf['mailer']['params']['port'] = 25;
$conf['mailer']['params']['auth'] = true;
$conf['mailer']['type'] = 'smtp';

I was not able to send mail from the webmail, and I check the logs from apache. I saw these logs:

tail -f apache_error.log
[error]  PHP Fatal error: Class 'Net_SMTP' not found in .../php5/lib/php/Horde/Mail/Transport/Smtp.php on line 271, referer: http://webmail.example.com/imp/compose-dimp.php?type=new&ajaxui=1&uniq=13123591417264

So I checked the Smtp.php file and I saw that the Net_SMTP class is required

 * SMTP implementation.
 * Requires the Net_SMTP class.

To install the Net_SMTP with PEAR you have to

pear install Net_SMTP

After this procedure I was able to send mail through my smtp server.