X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=tools%2Fupload-file-progress.pl;h=a441a5a0d5add3a9a88f5a9b10a24be77748db6c;hb=653d9b7284fdecd60f3e8d3661c027062ce74229;hp=dd2479b70788fc4e1d49080e45f6a81aaed76729;hpb=2e1b9fd29550b71011184066c9364d293248d7c1;p=koha.git diff --git a/tools/upload-file-progress.pl b/tools/upload-file-progress.pl index dd2479b707..a441a5a0d5 100755 --- a/tools/upload-file-progress.pl +++ b/tools/upload-file-progress.pl @@ -1,4 +1,4 @@ -#!/usr/bin/perl -w +#!/usr/bin/perl # Copyright (C) 2007 LibLime # @@ -24,34 +24,21 @@ use IO::File; use CGI; use CGI::Session; use C4::Context; +use C4::Auth qw/check_cookie_auth/; +use C4::UploadedFile; use CGI::Cookie; # need to check cookies before # having CGI parse the POST request -use Digest::MD5; my %cookies = fetch CGI::Cookie; -my $sessionID = $cookies{'CGISESSID'}->value; - -my $dbh = C4::Context->dbh; -# FIXME get correct session -- not just mysql -my $session = new CGI::Session("driver:MySQL", $sessionID, {Handle=>$dbh}); - -# FIXME - add authentication based on cookie - -my $query = CGI->new; -my $fileid = $session->param('current_upload'); - -my $reported_progress = 0; -if (defined $fileid and $fileid ne "") { - my $progress = $session->param("$fileid.uploadprogress"); - if (defined $progress) { - if ($progress eq "done") { - $reported_progress = 100; - } else { - $reported_progress = $progress; - } - } +my ($auth_status, $sessionID) = check_cookie_auth($cookies{'CGISESSID'}->value, { tools => '*' }); +if ($auth_status ne "ok") { + my $reply = CGI->new(""); + print $reply->header(-type => 'text/html'); + print "{ progress: 0 }"; + exit 0; } +my $reported_progress = C4::UploadedFile->upload_progress($sessionID); my $reply = CGI->new(""); print $reply->header(-type => 'text/html');