X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=etc%2Fmegapop.pl;fp=etc%2Fmegapop.pl;h=0000000000000000000000000000000000000000;hp=e2930fb550ac30f217304dba51aaa3f1405b6cc8;hb=154b0303d425ad2d670dd3ae74fd78d1bbff7f14;hpb=b808053966fd3c43edefa1b7c4b93cbeb7cf546e diff --git a/etc/megapop.pl b/etc/megapop.pl deleted file mode 100755 index e2930fb55..000000000 --- a/etc/megapop.pl +++ /dev/null @@ -1,114 +0,0 @@ -#!/usr/bin/perl -Tw -# -# this will break when megapop changes the URL or format of their listing page. -# that's stupid. perhaps they can provide a machine-readable listing? - -use strict; -use LWP::UserAgent; -use FS::UID qw(adminsuidsetup); -use FS::svc_acct_pop; - -my $url = "http://www.megapop.com/location.htm"; - -my $user = shift or die &usage; -adminsuidsetup($user); - -my %state2usps = &state2usps; -$state2usps{'WASHINGTON STATE'} = 'WA'; #megapop's on crack -$state2usps{'CANADA'} = 'CANADA'; #freeside's on crack - -my $ua = new LWP::UserAgent; -my $request = new HTTP::Request('GET', $url); -my $response = $ua->request($request); -die $response->error_as_HTML unless $response->is_success; -my $line; -my $usps = ''; -foreach $line ( split("\n", $response->content) ) { - if ( $line =~ /\W(\w[\w\s]*\w)\s+LOCATIONS/i ) { - $usps = $state2usps{uc($1)} - or warn "warning: unknown state $1\n"; - } elsif ( $line =~ /(\d{3})\-(\d{3})\-(\d{4})\s+(\w[\w\s]*\w)/ ) { - print "$1 $2 $3 $4 $usps\n"; - my $svc_acct_pop = new FS::svc_acct_pop ( { - 'city' => $4, - 'state' => $usps, - 'ac' => $1, - 'exch' => $2, - } ); - my $error = $svc_acct_pop->insert; - die $error if $error; - } -} - -sub usage { - die "Usage:\n $0 user\n"; -} - -sub state2usps{ ( - 'ALABAMA' => 'AL', - 'ALASKA' => 'AK', - 'AMERICAN SAMOA' => 'AS', - 'ARIZONA' => 'AZ', - 'ARKANSAS' => 'AR', - 'CALIFORNIA' => 'CA', - 'COLORADO' => 'CO', - 'CONNECTICUT' => 'CT', - 'DELAWARE' => 'DE', - 'DISTRICT OF COLUMBIA' => 'DC', - 'FEDERATED STATES OF MICRONESIA' => 'FM', - 'FLORIDA' => 'FL', - 'GEORGIA' => 'GA', - 'GUAM' => 'GU', - 'HAWAII' => 'HI', - 'IDAHO' => 'ID', - 'ILLINOIS' => 'IL', - 'INDIANA' => 'IN', - 'IOWA' => 'IA', - 'KANSAS' => 'KS', - 'KENTUCKY' => 'KY', - 'LOUISIANA' => 'LA', - 'MAINE' => 'ME', - 'MARSHALL ISLANDS' => 'MH', - 'MARYLAND' => 'MD', - 'MASSACHUSETTS' => 'MA', - 'MICHIGAN' => 'MI', - 'MINNESOTA' => 'MN', - 'MISSISSIPPI' => 'MS', - 'MISSOURI' => 'MO', - 'MONTANA' => 'MT', - 'NEBRASKA' => 'NE', - 'NEVADA' => 'NV', - 'NEW HAMPSHIRE' => 'NH', - 'NEW JERSEY' => 'NJ', - 'NEW MEXICO' => 'NM', - 'NEW YORK' => 'NY', - 'NORTH CAROLINA' => 'NC', - 'NORTH DAKOTA' => 'ND', - 'NORTHERN MARIANA ISLANDS' => 'MP', - 'OHIO' => 'OH', - 'OKLAHOMA' => 'OK', - 'OREGON' => 'OR', - 'PALAU' => 'PW', - 'PENNSYLVANIA' => 'PA', - 'PUERTO RICO' => 'PR', - 'RHODE ISLAND' => 'RI', - 'SOUTH CAROLINA' => 'SC', - 'SOUTH DAKOTA' => 'SD', - 'TENNESSEE' => 'TN', - 'TEXAS' => 'TX', - 'UTAH' => 'UT', - 'VERMONT' => 'VT', - 'VIRGIN ISLANDS' => 'VI', - 'VIRGINIA' => 'VA', - 'WASHINGTON' => 'WA', - 'WEST VIRGINIA' => 'WV', - 'WISCONSIN' => 'WI', - 'WYOMING' => 'WY', - 'ARMED FORCES AFRICA' => 'AE', - 'ARMED FORCES AMERICAS' => 'AA', - 'ARMED FORCES CANADA' => 'AE', - 'ARMED FORCES EUROPE' => 'AE', - 'ARMED FORCES MIDDLE EAST' => 'AE', - 'ARMED FORCES PACIFIC' => 'AP', -) } -