summaryrefslogtreecommitdiff
path: root/httemplate
diff options
context:
space:
mode:
Diffstat (limited to 'httemplate')
-rw-r--r--httemplate/docs/install.html1
-rw-r--r--httemplate/docs/upgrade10.html3
-rw-r--r--httemplate/edit/cust_main/select-country.html6
-rw-r--r--httemplate/edit/cust_main/select-county.html6
-rwxr-xr-xhttemplate/edit/process/part_svc.cgi5
-rwxr-xr-xhttemplate/edit/process/rate.cgi5
-rw-r--r--httemplate/elements/jsrsServer.html5
-rw-r--r--httemplate/elements/progress-init.html12
-rw-r--r--httemplate/elements/progress-popup.html22
-rw-r--r--httemplate/elements/xmlhttp.html22
10 files changed, 60 insertions, 27 deletions
diff --git a/httemplate/docs/install.html b/httemplate/docs/install.html
index 72b1214ec..d89ea3f04 100644
--- a/httemplate/docs/install.html
+++ b/httemplate/docs/install.html
@@ -61,7 +61,6 @@ Before installing, you need:
<li><a href="http://search.cpan.org/dist/Chart">Chart</a>
<li><a href="http://search.cpan.org/dist/Crypt-PasswdMD5">Crypt::PasswdMD5</a>
<li><a href="http://search.cpan.org/dist/Locale-SubCountry">Locale::SubCountry</a>
- <li><a href="http://search.cpan.org/dist/JavaScript-RPC">JavaScript::RPC (JavaScript::RPC::Server::CGI)</a>
<li><a href="http://search.cpan.org/dist/Frontier-RPC">Frontier::RPC</a>
<li><a href="http://search.cpan.org/dist/Text-CSV_XS">Text::CSV_XS</a>
<li><a href="http://search.cpan.org/dist/Spreadsheet-WriteExcel">Spreadsheet::WriteExcel</a>
diff --git a/httemplate/docs/upgrade10.html b/httemplate/docs/upgrade10.html
index 98a457ae6..fb51bfb8e 100644
--- a/httemplate/docs/upgrade10.html
+++ b/httemplate/docs/upgrade10.html
@@ -18,8 +18,7 @@ install HTML::Widgets::SelectLayers 0.05
- In httpd.conf, change &lt;Files ~ \.cgi&gt; to &lt;Files ~ (\.cgi|\.html)&gt;
- In httpd.conf, change <b>AddHandler perl-script .cgi</b> or <b>SetHandler perl-script</b> to <b>AddHandler perl-script .cgi .html</b>
-install NetAddr::IP, Chart::Base, Locale::SubCountry,
-JavaScript::RPC (JavaScript::RPC::Server::CGI), Text::CSV_XS,
+install NetAddr::IP, Chart::Base, Locale::SubCountry, Text::CSV_XS,
Spreadsheet::WriteExcel, IO-stringy (IO::Scalar), Frontier::RPC
(Frontier::RPC2), MIME::Entity (MIME-tools) and IPC::Run3
<!-- and Crypt::YAPassGen-->
diff --git a/httemplate/edit/cust_main/select-country.html b/httemplate/edit/cust_main/select-country.html
index 44f4f0a55..014effd66 100644
--- a/httemplate/edit/cust_main/select-country.html
+++ b/httemplate/edit/cust_main/select-country.html
@@ -10,7 +10,11 @@
%>
-<%= include('/elements/xmlhttp.html', $p.'misc/states.cgi', $opt{'prefix'}. 'get_states') %>
+<%= include('/elements/xmlhttp.html',
+ 'url' => $p.'misc/states.cgi',
+ 'subs' => [ $opt{'prefix'}. 'get_states' ],
+ )
+%>
<SCRIPT TYPE="text/javascript">
diff --git a/httemplate/edit/cust_main/select-county.html b/httemplate/edit/cust_main/select-county.html
index 70a8f9477..3de380b31 100644
--- a/httemplate/edit/cust_main/select-county.html
+++ b/httemplate/edit/cust_main/select-county.html
@@ -15,7 +15,11 @@
<% if ( $countyflag ) { %>
- <%= include('/elements/xmlhttp.html', $p.'misc/counties.cgi', $opt{'prefix'}. 'get_counties' ) %>
+ <%= include('/elements/xmlhttp.html',
+ 'url' => $p.'misc/counties.cgi',
+ 'subs' => [ $opt{'prefix'}. 'get_counties' ],
+ )
+%>
<SCRIPT TYPE="text/javascript">
diff --git a/httemplate/edit/process/part_svc.cgi b/httemplate/edit/process/part_svc.cgi
index 664e5212a..b92b62739 100755
--- a/httemplate/edit/process/part_svc.cgi
+++ b/httemplate/edit/process/part_svc.cgi
@@ -1,4 +1,3 @@
<%
-my $server = new FS::UI::Web::JSRPC 'FS::part_svc::process';
-$server->process;
-%>
+ my $server = new FS::UI::Web::JSRPC 'FS::part_svc::process', $cgi;
+%><%= $server->process %>
diff --git a/httemplate/edit/process/rate.cgi b/httemplate/edit/process/rate.cgi
index 005caf90a..0030b5754 100755
--- a/httemplate/edit/process/rate.cgi
+++ b/httemplate/edit/process/rate.cgi
@@ -1,4 +1,3 @@
<%
-my $server = new FS::UI::Web::JSRPC 'FS::rate::process';
-$server->process;
-%>
+ my $server = new FS::UI::Web::JSRPC 'FS::rate::process';
+%><%= $server->process %>
diff --git a/httemplate/elements/jsrsServer.html b/httemplate/elements/jsrsServer.html
index d6d537070..fd6dc5465 100644
--- a/httemplate/elements/jsrsServer.html
+++ b/httemplate/elements/jsrsServer.html
@@ -1,4 +1,3 @@
<%
-my $server = new FS::UI::Web::JSRPC;
-$server->process;
-%>
+ my $server = new FS::UI::Web::JSRPC '', $cgi;
+%><%= $server->process %>
diff --git a/httemplate/elements/progress-init.html b/httemplate/elements/progress-init.html
index 472a1725f..fb408400a 100644
--- a/httemplate/elements/progress-init.html
+++ b/httemplate/elements/progress-init.html
@@ -11,7 +11,11 @@
}
%>
-<SCRIPT TYPE="text/javascript" SRC="../elements/jsrsClient.js"></SCRIPT>
+<%= include('/elements/xmlhttp.html',
+ 'url' => $action,
+ 'subs' => [ 'start_job' ],
+ )
+%>
<SCRIPT TYPE="text/javascript" SRC="../elements/overlibmws.js"></SCRIPT>
<SCRIPT TYPE="text/javascript" SRC="../elements/overlibmws_iframe.js"></SCRIPT>
<SCRIPT TYPE="text/javascript">
@@ -54,8 +58,10 @@ function <%=$key%>process () {
}
}
- jsrsPOST = true;
- jsrsExecute( '<%= $action %>', <%=$key%>myCallback, 'start_job', Hash );
+ // jsrsPOST = true;
+ // jsrsExecute( '<%= $action %>', <%=$key%>myCallback, 'start_job', Hash );
+
+ start_job( Hash, <%=$key%>myCallback );
}
diff --git a/httemplate/elements/progress-popup.html b/httemplate/elements/progress-popup.html
index 20bb5fc5a..200f97d9b 100644
--- a/httemplate/elements/progress-popup.html
+++ b/httemplate/elements/progress-popup.html
@@ -10,25 +10,35 @@
</HEAD>
<BODY BGCOLOR="#ccccff" onLoad="refreshStatus()">
-<SCRIPT TYPE="text/javascript" SRC="../elements/jsrsClient.js"></SCRIPT>
+<%= include('/elements/xmlhttp.html',
+ 'url' => $p.'elements/jsrsServer.html',
+ 'subs' => [ 'job_status' ],
+ )
+%>
<SCRIPT TYPE="text/javascript" src="../elements/qlib/control.js"></SCRIPT>
<SCRIPT TYPE="text/javascript" src="../elements/qlib/imagelist.js"></SCRIPT>
<SCRIPT TYPE="text/javascript" src="../elements/qlib/progress.js"></SCRIPT>
<SCRIPT TYPE="text/javascript">
function refreshStatus () {
- jsrsExecute( '<%=$p%>elements/jsrsServer.html', updateStatus, 'job_status', '<%= $jobnum %>' );
+ //jsrsExecute( '<%=$p%>elements/jsrsServer.html', updateStatus, 'job_status', '<%= $jobnum %>' );
+
+ job_status( '<%= $jobnum %>', updateStatus );
}
function updateStatus( status_statustext ) {
- var Array = status_statustext.split("\n");
- var status = Array[0];
- var statustext = Array[1];
+
+ //var Array = status_statustext.split("\n");
+ var statusArray = eval('(' + status_statustext + ')');
+ var status = statusArray[0];
+ var statustext = statusArray[1];
+
//if ( status == 'progress' ) {
//IE workaround, no i have no idea why
if ( status.indexOf('progress') > -1 ) {
document.getElementById("progress_percent").innerHTML = statustext + '%';
bar1.set(statustext);
bar1.update;
- jsrsExecute( '<%=$p%>elements/jsrsServer.html', updateStatus, 'job_status', '<%= $jobnum %>' );
+ //jsrsExecute( '<%=$p%>elements/jsrsServer.html', updateStatus, 'job_status', '<%= $jobnum %>' );
+ job_status( '<%= $jobnum %>', updateStatus );
} else if ( status.indexOf('complete') > -1 ) {
<% if ( $message ) { %>
document.getElementById("progress_message").innerHTML = "<%= $message %>";
diff --git a/httemplate/elements/xmlhttp.html b/httemplate/elements/xmlhttp.html
index 425e28e3d..41965ace2 100644
--- a/httemplate/elements/xmlhttp.html
+++ b/httemplate/elements/xmlhttp.html
@@ -1,5 +1,9 @@
<%
- my ( $url, @subs ) = @_;
+ my ( %opt ) = @_;
+
+ my $url = $opt{'url'};
+ #my $action = exists $opt{'action'} ? $opt{'action'} : 'GET';
+ #my @subs = @{ $opt{'subs'};
$url .= ( ($url =~ /\?/) ? '&' : '?' ).
'sub=';
@@ -27,7 +31,7 @@
}
- <% foreach my $func (@subs) {
+ <% foreach my $func ( @{$opt{'subs'}} ) {
my $furl = $url . uri_escape($func);
$furl =~ s/\"/\\\\\"/; #javascript escape
@@ -38,11 +42,21 @@
// count args; build URL
var url = "<%=$furl%>";
var a = <%=$func%>.arguments;
- for (var i = 0; i < a.length-1; i++)
- url = url + "&arg=" + escape(a[i]);
+ var args;
+ var len;
+ if ( a && typeof a == 'object' && a[0].constructor == Array ) {
+ args = a[0];
+ len = args.length
+ } else {
+ args = a;
+ len = args.length - 1;
+ }
+ for (var i = 0; i < len; i++)
+ url = url + "&arg=" + escape(args[i]);
url = url.replace( /[+]/g, '%2B'); // fix the unescaped plus signs
var xmlhttp = rs_init_object();
xmlhttp.open("GET", url, true);
+ xmlhttp.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState != 4)
return;