X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_export%2Fcyrus.pm;h=246d5b3dcea6913d17f4f9a00012120d5dc2fe7d;hb=674cb2d9d7105f4cc2871539b2e9f7088cdaa750;hp=110ff198f2fd8179f5075303a94f6a498ccd1b12;hpb=9bf26ed4b065b12826fc2980ff277a2f3be25c1d;p=freeside.git diff --git a/FS/FS/part_export/cyrus.pm b/FS/FS/part_export/cyrus.pm index 110ff198f..246d5b3dc 100644 --- a/FS/FS/part_export/cyrus.pm +++ b/FS/FS/part_export/cyrus.pm @@ -1,10 +1,33 @@ package FS::part_export::cyrus; -use vars qw(@ISA); +use vars qw(@ISA %info); +use Tie::IxHash; use FS::part_export; @ISA = qw(FS::part_export); +tie my %options, 'Tie::IxHash', + 'server' => { label=>'IMAP server' }, + 'username' => { label=>'Admin username' }, + 'password' => { label=>'Admin password' }, +; + +%info = ( + 'svc' => 'svc_acct', + 'desc' => 'Real-time export to Cyrus IMAP server', + 'options' => \%options, + 'nodomain' => 'Y', + 'no_machine' => 1, #de facto... but "server" option should move to it + 'default_svc_class' => 'Email', + 'notes' => <<'END' +Integration with +Cyrus IMAP Server. +Cyrus::IMAP::Admin should be installed locally and the connection to the +server secured. svc_acct.quota, if available, is used to set the +Cyrus quota. +END +); + sub rebless { shift; } sub _export_insert { @@ -95,4 +118,5 @@ sub cyrus_connect { #sub cyrus_replace { #subroutine, not method #} +1;