X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FUI%2FWeb.pm;h=2d00d2c146337fad4604f1585342a04a3162dbcc;hb=1702ffad58949ebe9e4769afeb9fe9c93249cf69;hp=821b1916a77e13ead172b3dad6e3ba52c02009e7;hpb=2ab068f449eb97a10e18d20e9dab5ab9faa017e7;p=freeside.git diff --git a/FS/FS/UI/Web.pm b/FS/FS/UI/Web.pm index 821b1916a..2d00d2c14 100644 --- a/FS/FS/UI/Web.pm +++ b/FS/FS/UI/Web.pm @@ -494,6 +494,7 @@ use JSON; use FS::UID qw(getotaker); use FS::Record qw(qsearchs); use FS::queue; +use FS::CGI qw(rooturl); $DEBUG = 0; @@ -565,6 +566,7 @@ sub start_job { } } $param{CurrentUser} = getotaker(); + $param{RootURL} = rooturl($self->{cgi}->self_url); warn "FS::UI::Web::start_job\n". join('', map { if ( ref($param{$_}) ) { @@ -620,13 +622,15 @@ sub job_status { } my @return; - if ( $job && $job->status ne 'failed' ) { + if ( $job && $job->status ne 'failed' && $job->status ne 'done' ) { my ($progress, $action) = split ',', $job->statustext, 2; $action ||= 'Server processing job'; @return = ( 'progress', $progress, $action ); } elsif ( !$job ) { #handle job gone case : job successful # so close popup, redirect parent window... @return = ( 'complete' ); + } elsif ( $job->status eq 'done' ) { + @return = ( 'done', $job->statustext, '' ); } else { @return = ( 'error', $job ? $job->statustext : $jobnum ); }