home *** CD-ROM | disk | FTP | other *** search
- #!/usr/bin/perl
-
- $TEMP = "/tmp/pchelp$$";
-
- $DEST = 'pctech@technics.pyro.edu';
-
- $login = $ENV{'USER'} || getlogin;
- $gcos = (getpwnam($login))[6];
- ($name, $loc, $ext) = split(/,/, $gcos);
-
- $EDITOR = $ENV{"VISUAL"} || $ENV{"EDITOR"} || "vi";
- $PAGER = $ENV{"PAGER"} || "more";
-
- open(FORM, ">$TEMP") || die "Can't create temp form: $!\n";
-
- system 'clear';
- chop($prompt = <<'EOP');
-
- What do you want to do?
-
- a) PC problem report
- b) Software order request
- c) Hardware order request
- q) Quit
-
- Select an option [q]:
- EOP
-
- print $prompt;
- ($ans = substr(<STDIN>,0,1)) =~ y/A-Z/a-z/;
-
- {
- goto problem if $ans eq 'a';
- goto software if $ans eq 'b';
- goto hardware if $ans eq 'c';
- goto end;
- }
-
- whatnow: {
-
- print "\nWhat now? ";
-
- ($ans = substr(<STDIN>,0,1)) =~ y/A-Z/a-z;
-
- goto mail if $ans eq 's';
- goto edit if $ans eq 'e';
- goto end if $ans eq 'a';
- goto end if $ans eq 'q';
- goto list if $ans eq 'l';
- goto help;
- }
-
-
- help: {
- print "Options are:\n";
- print " abort\n";
- print " edit\n";
- print " list\n";
- print " send\n";
-
- goto whatnow;
- }
-
- problem: {
-
- print FORM <<EOF;
-
- Name: $name
- Badge #:
- Location: $loc
- Phone: $ext
- Machine type:
- Serial #:
- Property #:
-
- Description of problem:
-
- EOF
-
- goto edit;
-
- } # end problem
-
- software: {
-
- print FORM <<EOF;
-
- Name: $name
- Badge #:
- Location: $loc
- Phone: $ext
- Machine type:
- Serial #:
- Property #:
- Account #:
-
- Software requested:
-
-
- Comments:
-
- EOF
-
- goto edit;
-
- } # end software
-
- hardware: {
-
- print FORM <<EOF;
-
- Name: $name
- Badge #:
- Location: $loc
- Phone: $ext
- Account #:
- Supervisor:
-
- Description of hardware desired (be specific):
-
- EOF
-
- goto edit;
-
- } # end hardware
-
- edit: {
- close FORM;
- print "\nInvoking editor, $EDITOR...\n";
- sleep (1);
- system $EDITOR, $TEMP;
- goto whatnow;
- }
-
-
- mail: {
- print "\nMailing to $DEST...\n";
- system "/bin/mail $DEST </tmp/pchelp$$";
- goto end;
- }
-
-
- list: {
- system $PAGER, "/tmp/pchelp$$";
- goto whatnow;
- }
-
-
- end: {
- unlink $TEMP;
- }
-