summaryrefslogtreecommitdiff
path: root/FS/FS/Report
diff options
context:
space:
mode:
authorjeff <jeff>2010-05-22 19:57:53 +0000
committerjeff <jeff>2010-05-22 19:57:53 +0000
commit4ef5b3b917b7802a136551ad567dc9d649700f53 (patch)
tree2d55887d28f88922e5a61eeb802bb1a0fe627437 /FS/FS/Report
parent6c08340010e68fa7ca0989f4902761c8d0db941f (diff)
improved fcc 477 report #7783
Diffstat (limited to 'FS/FS/Report')
-rw-r--r--FS/FS/Report/FCC_477.pm90
1 files changed, 90 insertions, 0 deletions
diff --git a/FS/FS/Report/FCC_477.pm b/FS/FS/Report/FCC_477.pm
new file mode 100644
index 0000000..518b9f0
--- /dev/null
+++ b/FS/FS/Report/FCC_477.pm
@@ -0,0 +1,90 @@
+package FS::Report::FCC_477;
+
+use strict;
+use vars qw( @ISA @upload @download @technology @part2aoption @part2boption );
+use FS::Report;
+
+@ISA = qw( FS::Report );
+
+=head1 NAME
+
+FS::Report::FCC_477 - Routines for FCC Form 477 reports
+
+=head1 SYNOPSIS
+
+=head1 BUGS
+
+Documentation.
+
+=head1 SEE ALSO
+
+=cut
+
+@upload = qw(
+ <200kpbs
+ 200-768kpbs
+ 768kbps-1.5mbps
+ 1.5-3mpbs
+ 3-6mbps
+ 6-10mbps
+ 10-25mbps
+ 25-100mbps
+ >100bmps
+);
+
+@download = qw(
+ 200-768kpbs
+ 768kbps-1.5mbps
+ 1.5-3mpbs
+ 3-6mbps
+ 6-10mbps
+ 10-25mbps
+ 25-100mbps
+ >100bmps
+);
+
+@technology = (
+ 'Asymetric xDSL',
+ 'Symetric xDSL',
+ 'Other Wireline',
+ 'Cable Modem',
+ 'Optical Carrier',
+ 'Satellite',
+ 'Terrestrial Fixed Wireless',
+ 'Terrestrial Mobile Wireless',
+ 'Electric Power Line',
+ 'Other Technology',
+);
+
+@part2aoption = (
+ 'LD carrier',
+ 'owned loops',
+ 'unswitched UNE loops',
+ 'UNE-P',
+ 'UNE-P replacement',
+ 'FTTP',
+ 'coax',
+ 'wireless',
+);
+
+@part2boption = (
+ 'nomadic',
+ 'copper',
+ 'FTTP',
+ 'coax',
+ 'wireless',
+ 'other broadband',
+);
+
+sub parse_technology_option {
+ my $cgi = shift;
+ my @result = ();
+ my $i = 0;
+ for (my $i = 0; $i < scalar(@technology); $i++) {
+ my $value = $cgi->param("part1_technology_option_$i"); #lame
+ push @result, $value =~ /^\d+$/ ? $value : 0;
+ }
+ return (@result);
+}
+
+1;