X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fmisc%2Fprocess%2Fcust_main-import.cgi;h=2568d1c7bf7ab2fcc21c0b13ce456e69fc354deb;hb=ec5603ae351d4ed8e4873dcd20bf71f8a4d549bb;hp=9e1adce54b9e548cb6c501037760b205131ea1db;hpb=eb9668a6f3181ee02cb335272c5ee4616e61fd09;p=freeside.git diff --git a/httemplate/misc/process/cust_main-import.cgi b/httemplate/misc/process/cust_main-import.cgi index 9e1adce54..2568d1c7b 100644 --- a/httemplate/misc/process/cust_main-import.cgi +++ b/httemplate/misc/process/cust_main-import.cgi @@ -1,30 +1,42 @@ -<% +% if ( $error ) { +% errorpage($error); +% } else { + <% include('/elements/header.html','Import successful') %> + <% include('/elements/footer.html') %> +% } +<%init> - my $fh = $cgi->upload('csvfile'); - #warn $cgi; - #warn $fh; +die "access denied" + unless $FS::CurrentUser::CurrentUser->access_right('Import'); - my $error = defined($fh) - ? FS::cust_main::batch_import( { - filehandle => $fh, - agentnum => scalar($cgi->param('agentnum')), - refnum => scalar($cgi->param('refnum')), - pkgpart => scalar($cgi->param('pkgpart')), - 'fields' => [qw( cust_pkg.setup dayphone first last address1 address2 - city state zip comments )], - } ) - : 'No file'; +my $fh = $cgi->upload('file'); +my $error = ''; +if ( defined($fh) ) { - if ( $error ) { - %> - - <% - eidiot($error); -# $cgi->param('error', $error); -# print $cgi->redirect( "${p}cust_main-import.cgi + my $type; + if ( $cgi->param('file') =~ /\.(\w+)$/i ) { + $type = lc($1); } else { - %> - - <%= header('Import sucessful') %> <% + #or error out??? + warn "can't parse file type from filename ". $cgi->param('file'). + '; defaulting to CSV'; + $type = 'csv'; } -%> + + $error = + FS::cust_main::batch_import( { + filehandle => $fh, + type => $type, + agentnum => scalar($cgi->param('agentnum')), + refnum => scalar($cgi->param('refnum')), + pkgpart => scalar($cgi->param('pkgpart')), + #'fields' => [qw( cust_pkg.setup dayphone first last address1 address2 + # city state zip comments )], + 'format' => scalar($cgi->param('format')), + } ); + +} else { + $error = 'No file'; +} + +