Revision 67e51032
Von Tamino Steinert vor mehr als 1 Jahr hinzugefügt
SL/IMAPClient.pm | ||
---|---|---|
use File::MimeInfo::Magic;
|
||
use Encode qw(encode decode);
|
||
use Encode::IMAPUTF7;
|
||
use SL::Locale;
|
||
|
||
use SL::SessionFile;
|
||
use SL::Locale::String qw(t8);
|
||
... | ... | |
|
||
use SL::DB::Order;
|
||
|
||
my %RECORD_TYPE_TO_FOLDER = (
|
||
sales_quotation => t8('Sales Quotations'),
|
||
sales_order => t8('Sales Orders'),
|
||
);
|
||
my %RECORD_FOLDER_TO_TYPE = reverse %RECORD_TYPE_TO_FOLDER;
|
||
|
||
sub new {
|
||
my ($class, %params) = @_;
|
||
my $config = $::lx_office_conf{imap_client} || {};
|
||
my $server_locale = Locale->new($::lx_office_conf{server}->{language});
|
||
my %record_type_to_folder = (
|
||
sales_quotation => $server_locale->text('Sales Quotations'),
|
||
sales_order => $server_locale->text('Sales Orders'),
|
||
);
|
||
my %record_folder_to_type = reverse %record_type_to_folder;
|
||
my $self = bless {
|
||
enabled => $config->{enabled},
|
||
hostname => $config->{hostname},
|
||
... | ... | |
username => $config->{username},
|
||
password => $config->{password},
|
||
base_folder => $config->{base_folder} || 'INBOX',
|
||
record_type_to_folder => \%record_type_to_folder,
|
||
record_folder_to_type => \%record_folder_to_type,
|
||
%params,
|
||
}, $class;
|
||
return unless $self->{enabled};
|
||
... | ... | |
$ilike_record_number
|
||
) = $ilike_folder_path =~ m|^(.+)/([^\s]+) (.+)/(.+)/(.+)|;
|
||
|
||
my $record_type = $RECORD_FOLDER_TO_TYPE{$record_folder};
|
||
my $record_type = $self->{record_folder_to_type}->{$record_folder};
|
||
next unless $record_type;
|
||
|
||
# TODO make it generic for all records
|
||
... | ... | |
my $record_folder_path =
|
||
$self->{base_folder} . '/' .
|
||
$string_parts{cv_number} . ' ' . $string_parts{cv_name} . '/' .
|
||
$RECORD_TYPE_TO_FOLDER{$record->type} . '/' .
|
||
$self->{record_type_to_folder}->{$record->type} . '/' .
|
||
$string_parts{record_number};
|
||
my $folder_string = $self->get_folder_string_from_path($record_folder_path);
|
||
return $folder_string;
|
||
... | ... | |
|
||
=over 2
|
||
|
||
=item C<%RECORD_TYPE_TO_FOLDER>
|
||
=item C<%$self->{record_type_to_folder}>
|
||
|
||
Due to the lack of a single global mapping for $record->type,
|
||
type is mapped to the corresponding translation. All types which
|
||
use this module are currently mapped and should be mapped.
|
||
|
||
=item C<%RECORD_FOLDER_TO_TYPE>
|
||
=item C<%$self->record_folder_to_type>
|
||
|
||
The reverse mapping of %RECORD_TYPE_TO_FOLDER.
|
||
The reverse mapping of C<%$self->{record_type_to_folder}>.
|
||
|
||
=back
|
||
|
Auch abrufbar als: Unified diff
IMAPClient: FIX: Nutze Serversprache für Übersetzungen zur Laufzeit