finish adding a feature to easily list all email addresses for an agent & send them...
[freeside.git] / htetc / handler.pl
index caa266d..be6f2f7 100644 (file)
@@ -91,7 +91,7 @@ sub handler
       use strict;
       use vars qw( $cgi $p $fsurl);
       use vars qw( %session );
-      use CGI 2.47 qw(-private_tempfiles);
+      use CGI 3.29 qw(-private_tempfiles); #3.29 to fix RT attachment problems
       #use CGI::Carp qw(fatalsToBrowser);
       use CGI::Cookie;
       use List::Util qw( max min );
@@ -104,8 +104,11 @@ sub handler
       use DateTime::Format::Strptime;
       use Lingua::EN::Inflect qw(PL);
       use Tie::IxHash;
+      use URI::URL;
       use URI::Escape;
       use HTML::Entities;
+      use HTML::TreeBuilder;
+      use HTML::FormatText;
       use JSON;
       use MIME::Base64;
       use IO::Handle;
@@ -125,15 +128,20 @@ sub handler
       use Chart::LinesPoints;
       use Chart::Mountain;
       use Color::Scheme;
-      use HTML::Widgets::SelectLayers 0.07;
+      use HTML::Widgets::SelectLayers 0.07; #should go away in favor of
+                                            #selectlayers.html
       use Locale::Country;
+      use Business::US::USPS::WebTools::AddressStandardization;
       use FS;
-      use FS::UID qw(cgisuidsetup dbh getotaker datasrc driver_name);
+      use FS::UID qw( adminsuidsetup cgisuidsetup getotaker
+                      dbh datasrc driver_name
+                    );
       use FS::Record qw(qsearch qsearchs fields dbdef str2time_sql);
       use FS::Conf;
       use FS::CGI qw(header menubar popurl rooturl table itable ntable idiot
-                     eidiot small_custview myexit http_header);
+                     eidiot myexit http_header);
       use FS::UI::Web qw(svc_url);
+      use FS::UI::Web::small_custview qw(small_custview);
       use FS::UI::bytecount;
       use FS::Msgcat qw(gettext geterror);
       use FS::Misc qw( send_email send_fax states_hash counties state_label );
@@ -149,11 +157,13 @@ sub handler
       use FS::cust_credit_bill;
       use FS::cust_main qw(smart_search);
       use FS::cust_main_county;
-      use FS::part_pkg_taxclass;
       use FS::cust_pay;
       use FS::cust_pkg;
+      use FS::part_pkg_taxclass;
       use FS::cust_pkg_reason;
       use FS::cust_refund;
+      use FS::cust_credit_refund;
+      use FS::cust_pay_refund;
       use FS::cust_svc;
       use FS::nas;
       use FS::part_bill_event;
@@ -207,6 +217,12 @@ sub handler
       use FS::reason_type;
       use FS::reason;
       use FS::cust_main_note;
+      use FS::tax_class;
+      use FS::cust_tax_location;
+      use FS::part_pkg_taxproduct;
+      use FS::part_pkg_taxoverride;
+      use FS::part_pkg_taxrate;
+      use FS::tax_rate;
 
       if ( %%%RT_ENABLED%%% ) {
         eval '
@@ -233,6 +249,11 @@ sub handler
           use Time::HiRes;
           use HTML::Scrubber;
 
+          #blah.  not even in RT::Interface::Web::Handler, just in 
+          #html/NoAuth/css/dhandler and rt-test-dependencies.  ask for it here
+          #to throw a real error instead of just a mysterious unstyled RT
+          use CSS::Squish 0.06;
+
           #slow, unreliable, segfaults and is optional
           #see rt/html/Ticket/Elements/ShowTransactionAttachments
           #use Text::Quoted;
@@ -281,12 +302,23 @@ sub handler
 
       };
       
-      unless ( $HTML::Mason::r->filename =~ /\/rt\/.*NoAuth/ ) { #RT
+      if ( $HTML::Mason::r->filename !~ /\/rt\/.*NoAuth/ ) { #not RT images/JS
+
         $cgi = new CGI;
         &cgisuidsetup($cgi);
         #&cgisuidsetup($r);
         $p = popurl(2);
         $fsurl = rooturl();
+
+      } elsif ( $HTML::Mason::r->filename =~ /\/rt\/REST\/.*NoAuth/ ) {
+
+        #need to log somebody in for the mail gw
+
+        ##old installs w/fs_selfs or selfserv??
+        #&adminsuidsetup('fs_selfservice');
+
+        &adminsuidsetup('fs_queue');
+
       }
 
       sub include {