so Search.tsf and Search.rdf work
[freeside.git] / htetc / global.asa
index bb94b92..3781f94 100644 (file)
@@ -10,22 +10,34 @@ use CGI 2.47;
 use Date::Format;
 use Date::Parse;
 use Time::Local;
+use Time::Duration;
 use Tie::IxHash;
 use HTML::Entities;
 use IO::Handle;
 use IO::File;
+use IO::Scalar;
+use Net::Whois::Raw qw(whois);
+if ( $] < 5.006 ) {
+  eval "use Net::Whois::Raw 0.32 qw(whois)";
+  die $@ if $@;
+}
+use Text::CSV_XS;
+use Spreadsheet::WriteExcel;
 use Business::CreditCard;
 use String::Approx qw(amatch);
 use Chart::LinesPoints;
 use HTML::Widgets::SelectLayers 0.03;
+use FS;
 use FS::UID qw(cgisuidsetup dbh getotaker datasrc driver_name);
 use FS::Record qw(qsearch qsearchs fields dbdef);
 use FS::Conf;
 use FS::CGI qw(header menubar popurl table itable ntable idiot eidiot
                small_custview myexit http_header);
+use FS::UI::Web;
 use FS::Msgcat qw(gettext geterror);
 use FS::Misc qw( send_email );
 use FS::Report::Table::Monthly;
+use FS::TicketSystem;
 
 use FS::agent;
 use FS::agent_type;
@@ -66,9 +78,11 @@ use FS::part_export;
 use FS::part_export_option;
 use FS::export_svc;
 use FS::msgcat;
+use FS::rate;
+use FS::rate_region;
+use FS::rate_prefix;
 
 sub Script_OnStart {
-  $Response->AddHeader('Pragma' => 'no-cache');
   $Response->AddHeader('Cache-control' => 'no-cache');
 #  $Response->AddHeader('Expires' => 0);
   $Response->{Expires} = -36288000;
@@ -197,7 +211,17 @@ sub sprintAutoProfile {
 }
 
 sub include {
-  $Response->Include(@_);
+  my $file = shift;
+  my $shift = 0;
+  if ( $file =~ m(^([^/].*)/[^/]+) ) {
+    unshift @{$Response->{asp}{includes_dir}}, "./$1";
+    $shift = 1;
+  }
+  $file =~ s(^/)(%%%FREESIDE_DOCUMENT_ROOT%%%/);
+  #broken in 5.005# ${$Response->TrapInclude($file, @_)};
+  my $ref = $Response->TrapInclude($file, @_);
+  shift @{$Response->{asp}{includes_dir}} if $shift;
+  $$ref;
 }
 
 if ( defined(@DBIx::Profile::ISA) ) {