> Message: 6
> Date: Thu, 31 Jul 2008 13:11:45 +0100
> From: Phil Weir <roundcube(a)tehinterweb.co.uk>
> Subject: Re: [RCD] Plugin-Architecture
> To: dev(a)lists.roundcube.net
> Message-ID: <619ca76367db5da740680a8de7b25c53(a)sitespider.co.uk>
> Content-Type: text/plain; charset="UTF-8"
>
> Hi,
Hi,
> I have made a couple of patches for changing user password and spam
> assassin settings stuff like that. I guess you have seen Alec?s sieve
> plugin (http://alec.pl/roundcube/managesieve/).
No, I havn't.
I just looked over the patch file and these are my conclusions:
The only relevant parts to this plugin-architecture is imho in index.php.
--------------------
+ if ($RCMAIL->action=='managesieve')
+ include('program/steps/settings/managesieve.inc');
--------------------
It declares a new "action" which is called from the frontend.
Although if there should be a more generic way to extend RC for more actions
this is currently not scope of this project. Same applies to plugins on the
client side.
Tell me if I missed something. Btw: I have no Idea how sieve works. I just
know what it should do.
Don't understand me wrong. It should be in scope in future - but not now. I
want to get up & running with a minimalistic Version very quick. But I will
keep these points in mind.
> There is a guy on the forum called rosali, he has been
> working on a plugin
> arc. I told him he should send what he has got to this list
> but I don?t
> think he has.
Hm... I was refered to A.L.E.C. for the plugin project which told me he is
to busy (and the project is stalled therefore). I havn't got any Mails from
rosali.
I'll try to implement it tomorrow evening if I find some free minutes ;-)
Anyhow ... if I get some Info until then I will have a look at it. Thx.
I hope I could provide a small patch on monday for testing. But I do not
promise as I am very busy.
_______________________________________________
List info: http://lists.roundcube.net/dev/
Patrick Nagel wrote:
> Plugin or not... always debatable, I guess.
>
> Take LDAP addressbook support, for example - isn't that something that
> could
> also be provided by a plugin? It also requires configuring a backend system
> (an LDAP directory).
Absolutely - if there is a flexible framework almost everything except
the framework itself can be a plugin - with some plugins required (see
Typo3 for a great sample of this!).
But unless this Plugin system is done its hard to implement something
like this without patching the sources.... so first job: plugin
architecture!
> On a side note: funny that we're currently all using Thunderbird as our
> mail client ;)
I'm sure mainly because a desktop client is always ways better and
better performing than any Web based application can be... and on your
own systems you usually can install applications...
Mike
--
Michael Baierl
<http://mbaierl.com/blog/>
- - - - - - - - - - - - - - - - -
Viele Lieder wurden nach dramatischen Ereignissen geschrieben, man
erinnere sich an "Candle in the wind" oder "Meine Oma fährt im
Hühnerstall Motorad". (german-bash.org)
_______________________________________________
List info: http://lists.roundcube.net/dev/
Hi Everybody,
I created a sieve plugin for RoundCube. It is based on Avelsieve and is
compatible with existing Avelsieve scripts. All functionality Avelsieve has
is implemented. I would like to upload my code and let other people have a
look at it, if people are interested in it of course. Are there plans to
make sieve a part of the basic distribution? If so, how do I continue from
here?
Kind regards,
Jeroen Koekkoek
_______________________________________________
List info: http://lists.roundcube.net/dev/
On Wed, 30 Jul 2008 00:25:52 +0200, Till Krüss <till(a)pralinenschachtel.de>
wrote:
> I would suggest a drop-down menu as default and a input box replacement
as
> setting.
> required keyboard usage is not a good choice.
I've submitted a new patch. It now uses a drop-down menu. It also adds a
configuration option ("pagejump_dropdown_threshold") which determines the
number of pages, over which the drop-down is replaced by a text box (it
defaults to 20).
If an installation wants to always use the text box, they can set the
value of pagejump_dropdown_threshold to zero. If they want to use only
drop-downs, they can set the value to something extremely high.
-kris
--
Kris Steinhoff
Web Application Developer
Web/DB Team, Information Technology Central Services
The University of Michigan
--- 8< --- detachments --- 8< ---
The following attachments have been detached and are available for viewing.
http://detached.gigo.com/rc/ra/bTM7Ja4d/UTF-8_27_27text_bo.pnghttp://detached.gigo.com/rc/ra/bTM7Ja4d/UTF-8_27_27drop-do.png
Only click these links if you trust the sender, as well as this message.
--- 8< --- detachments --- 8< ---
_______________________________________________
List info: http://lists.roundcube.net/dev/
>> If I understand A.L.E.C.'s Ideas right:
>> * Each plugin has an init.php which registers to events:
>> /myplugin/init.php:
>> init_plugin('init', 'functionname');
>> init_plugin('showmail', 'functionname');
>
> Yes, but I'd prefer an object-oriented approach:
> http://lists.roundcube.net/mail-archive/dev/2008-06/0000038.html
correct.
>> * the Controller does a loop over the plugin/subdirectories to get these
>> registries
> Right. This procedure could even be cached for performance reasons.
as log as we have only some plugins caching shouldn't be a topic.
>> I think it does not make sence to implement a full featured plugin
> monster
>> if we do not need it right now.
>> But we should be able to extend it to a monster if we need to do so
> later
>
> Exactly!
Isn't open source great ;-)
OK, I think we got a good idea of how it should be implemented.
I hope I could code a small prototype this weekend, but I do not guarantee.
I will ask the list to test it afterwards.
Thanks for your comments.
<br/>
<br/>
---------------------------------------------------------------<br/>
Webhosting
komplett mit Plone-CMS, Spam- und Virenfreies E-Mail<br/>
Hotspot-Systeme
(Internet für Ihre Gäste)<br/>
Netzwerkbetreuung, Fernwartung,
uvm.<br/>
Web: www.lagg.at - Mail: info(a)lagg.at<br/>
Florian Lagg, Juch 7,
6631 Lermoos,
Austria<br/>
---------------------------------------------------------------<br/>
_______________________________________________
List info: http://lists.roundcube.net/dev/
Hello. This is official translating file of OUR Technology, LLC for
RoundCube.
We like RoundCube. Please add to our “Azerbaijani” to the list of
Localizations.
Language: Azerbaijani
Translater: Orkhan Guliyev (OUR Technology, LLC.)
Best Regards,
Orkhan Guliyev.
________________________________________________________
Forex-AZ’la hər yerdə, hər an FƏRQDƏN QAZAN - FƏRQLİ QAZAN!
http://adrunner.forex-az.info/ab/2-3
--- 8< --- detachments --- 8< ---
The following attachments have been detached and are available for viewing.
http://detached.gigo.com/rc/DD/qWAGk5Ic/roundcube.rar
Only click these links if you trust the sender, as well as this message.
--- 8< --- detachments --- 8< ---
_______________________________________________
List info: http://lists.roundcube.net/dev/
Roundcube needs as every good mail client does a search feature.
The user should be able to search for user-specified criteria in
user-specified (sub)folders.
The request can take a few secounds, but if you have more than 1 folder,
it is annoying to select each folder one by one and re-type your search
string every time.
Cheers, Till
http://trac.roundcube.net/ticket/1485234
_______________________________________________
List info: http://lists.roundcube.net/dev/
I would suggest a drop-down menu as default and a input box replacement as
setting.
required keyboard usage is not a good choice.
_______________________________________________
List info: http://lists.roundcube.net/dev/
While I was trying to integrate and customize roundcube to our department's
system, I submitted some small patches to trac. I think they will be useful for
some setups, the forum and tracker has some requests for these features.
1. The first one presents the "edit identity" screen when the user is recorded
in roundcube database for the first time. In our system, the user's name was
not correctly pulled from ldap while auto creating, so I added this to send the
user to edit identity screen. If users are not auto created, the administrator
probably entered correct info in the first place, so depending on auto user
creation is reasonable.
http://trac.roundcube.net/ticket/1291605#comment:9
This patch is obsoleted by the following patch in our system but it can be
useful on other places. Having the user double check the name and email is
never bad, and can help catching typos or other errors in the system :)
2. Then for LDAP integration. I modified Gerald Schneider's old patches at the
following address.
http://www.gerald-online.de/misc/roundcube/
The patch adds a new configuration option, and searches LDAP for user's real
name and uses it as identity.
http://trac.roundcube.net/ticket/1485203
3. This third one is very site-specific IMO. But It has no side effects, so it
can be safely included. adds '@' + 'mail_domain' if the e-mail address from
LDAP does not include '@' sign. Our emails are of the form
"ldap_uid@mail_domain" and there is not a seperate field for e-mail in LDAP, so
they are autogenerated by this patch.
http://trac.roundcube.net/ticket/1485201
--
Gokdeniz Karadag
_______________________________________________
List info: http://lists.roundcube.net/dev/
Hello all,
thank you for roundcube. It is a great program. Still missing sieve, but
I'll be patient :-)
My girlfriend has around 20 email-adresses and she would like to see,
to which account the mail got sended. So I turned around the name
and email.
You see the email instead of the name. If you move the mouse over the
email you will see the name.
Maybe someone else is interested, thats why i publish it here.
1) Added a config-parameter (main.inc.php):
// Show email instead of the name in recipient and sender
$rcmail_config['show_email'] = TRUE;
2) Changed the source in program/steps/mail/func.inc:
@@ -876,13 +876,21 @@
$out .= sprintf('%s <%s>', Q($part['name']), $part['mailto']);
else if (preg_match($EMAIL_ADDRESS_PATTERN, $part['mailto']))
{
- $out .= sprintf('<a href="mailto:%s" onclick="return %s.command(\'compose\',\'%s\',this)" class="rcmContactAddress" title="%s">%s</a>',
+ if ($CONFIG['show_email'])
+ $out .= sprintf('<a href="mailto:%s" onclick="return %s.command(\'compose\',\'%s\',this)" class="rcmContactAddress" title="%s">%s</a>',
+ Q($part['mailto']),
+ JS_OBJECT_NAME,
+ JQ($part['mailto']),
+ Q($part['name']),
+ Q($part['mailto']));
+ else
+ $out .= sprintf('<a href="mailto:%s" onclick="return %s.command(\'compose\',\'%s\',this)" class="rcmContactAddress" title="%s">%s</a>',
Q($part['mailto']),
JS_OBJECT_NAME,
JQ($part['mailto']),
Q($part['mailto']),
Q($part['name']));
-
+
if ($addicon)
$out .= sprintf(' <a href="#add" onclick="return %s.command(\'add-contact\',\'%s\',this)" title="%s"><img src="%s%s" alt="add" border="0" /></a>',
JS_OBJECT_NAME,
@@ -1123,4 +1131,3 @@
));
?>
It would surely be better to do this by user, but this was too much trouble
for me right now.
Best wishes,
Michael
--
SysQuadrat Systeme mit Sicherheit
Michael Weinert Stuttgart Filderstadt-Plattenhardt
Tel.: 0711-9970288 Fax: 5360559 Mobil: 0170-4141273
http://www.linux-firewall.de weinert(a)sys2.de
KeyServer hkp://pgp.mit.edu
_______________________________________________
List info: http://lists.roundcube.net/dev/