29050 Fix dates
[freeside.git] / FS / FS / cdr / orcon.pm
1 package FS::cdr::orcon;
2
3 use strict;
4 use vars qw( @ISA %info);
5 use FS::cdr;
6 use Date::Parse;
7
8 @ISA = qw(FS::cdr);
9
10 %info = (
11   'name'          => 'Orcon',
12   'weight'        => 120,
13   'header'        => 1,
14   'import_fields' => [
15
16         skip(2),        #id
17                         #billing period
18         'accountcode',  #account number
19         skip(2),        #username
20                         #service id
21         sub { my ($cdr, $calldate) = @_;
22                 $cdr->set('calldate', $calldate);
23
24                 $calldate =~ /^(\d{4})-(\d{2})-(\d{2})\s*(\d{2}):(\d{2}):(\d{2})$/
25                                or die "unparseable date: $calldate";
26                 my $tmp_date = "$2/$1/$3 $4:$5:$6";
27
28                 $tmp_date = str2time($tmp_date);
29                 $cdr->set('startdate', $tmp_date);
30                   },    #date
31         skip(1),        #tariff region
32         'src',          #originating number
33         'dst',          #terminating number
34         'duration',      #duration actual
35         'billsec',      #duration billed
36         skip(1),        #discount
37         'upstream_price',#charge
38
39   ],
40 );
41
42 sub skip { map {''} (1..$_[0]) }
43
44 1;
45