#!/usr/bin/perl # ECAI submission summary sheet - new or revise # by Werner Horn, 29-Dec-1999 # requires perl 5.005 (or higher) ### ----------- no changes needed below ------------------------------- # load configuration require "config.pl"; # determine my Web-address use File::Basename; $scriptwww = "$scriptwwwbase/" . basename($0); require "$datadir/lib/ecailib.pl"; require "$datadir/lib/sendfile.pl"; # definitions of files used $authfile = "$ecaidir/auth"; # stores authorization data $lockfile = "$ecaidir/lock"; # lock file (during creation of new sheet $logfile = "$ecaidir/log"; # file for transaction log $systemislocked = 0; # flag for locking $Maxcode = 0; # the current max sheet number # packages required use CGI; # requires at least version 2.56 use CGI::Pretty; $| = 1; # unbuffered output my $q = new CGI; print $q->header(-type=>'text/html'); my $error = ""; my $paper_nr = 0; unless ($q->param) { # no parameters = intro page &send_file("$datadir/config/submit.html"); exit; } my $action = $q->param('ecai_form'); if ($action eq "New Summary") { $new_form = 1; $show_form = 1; if ($deadlinereached) { &after_deadline($q); &log(0,"$action - too late"); exit; } } elsif ($action eq "Revise Summary") { $new_form = 0; $show_form = 1; &read_auth; $paper_nr = &check_auth($q); } elsif ($action eq "Store Summary") { $new_form = 1; $show_form = 0; $store_form = 1; } elsif ($action eq "Update Summary") { $new_form = 0; $show_form = 0; $store_form = 1; &read_auth; $paper_nr = &check_auth($q); } else { $error = "Illegal submission format. Please use the original $conference form.\n"; &log("","ERROR Illegal action"); # &error_mail($error); &error_html($error); exit; } # # show the form # if ($show_form) { if ($paper_nr) { $q = &read_paper($paper_nr); } &show_form($new_form,$q); &log($paper_nr,$action); exit; } # # store received data # if ($store_form) { &check_form($q); if ($new_form) { &lock_update; $paper_nr = &read_auth + 1; $auth = &write_auth($paper_nr); &unlock_update; $q->param('UTN',sprintf("%s%04d",$confcode,$paper_nr)); $q->param('AUTH',$auth); } $q->delete('ecai_form'); &write_paper($new_form,$q); &show_paper($new_form,$q); &submit_email($new_form,$q); &log($paper_nr,$action); }